NLP | 自然语言处理经典seq2seq网络BERT详解及代码

在这里插入图片描述

2019论文:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding用于语言理解的深度双向变换器的预训练

论文地址:https://arxiv.org/abs/1810.04805

1. BERT概述

BERT,全称 “Bidirectional Encoder Representations from Transformers”,是由 Google AI Language 于 2018 年开发的深度学习模型。它在 NLP(自然语言处理)领域表现出色,成功解决了超过 11 项语言任务,包括 情感分析命名实体识别(NER) 等问题。

过去,计算机虽然能读取文本,但无法像人类一样理解上下文。为此,NLP 诞生了,旨在让机器能够 读取、分析、解释和提取语言中的含义。传统方法通常为每个任务训练独立模型,而 BERT 改变了这一现状。

BERT 是 深度双向、无监督的语言模型,通过大规模纯文本语料库进行预训练,能理解文本上下文中的深层含义。

2. BERT 能做什么?

BERT 是多功能的 NLP 工具,广泛应用于以下任务:

  • 情感分析:判断电影评论是积极还是消极。
  • 问题回答:帮助聊天机器人给出精准回答。
  • 文本预测:在 Gmail 等应用中预测下一句文本。
  • 文本生成:根据几句提示生成文章。
  • 长文总结:如快速总结法律合同。
  • 多义词解析:根据上下文区分“bank”(银行/河岸)等词的不同含义。

它还应用于 语音助手(如 Alexa 和 Siri)、聊天机器人Google 搜索语音导航 等多个领域。

3. BERT 的原理

BERT 基于 Transformer 架构。Transformer 是一种通过 自注意力机制 学习文本中单词之间关系的模型。它包括两个模块:编码器(处理输入文本)和 解码器(生成预测)。而 BERT 只需要编码器部分,因为它的目标是生成语言模型。

BERT 的核心思想是 将词汇转换为向量,使机器学习模型能在数字空间中处理语言。这些转换后的向量可以与其他类型的数据一起,用于进一步预测和分析。

在这里插入图片描述

训练策略

为了训练 BERT,采用了两种关键策略:

  1. Masked Language Model (MLM)

  2. Next Sentence Prediction (NSP)

4. Masked Language Model (MLM)

在输入 BERT 之前,随机替换每个句子中 15% 的单词为 [MASK] 标记。模型根据上下文预测被掩盖单词的原始值。

预测步骤:

  • 在编码器的输出上添加分类层。
  • 将输出向量与词嵌入矩阵相乘,转化为词汇表维度。
  • softmax 计算词汇表中每个单词的概率。

BERT 的损失函数只考虑掩盖词的预测,这种设计提高了模型的 上下文感知能力。尽管训练收敛速度较慢,但模型的最终表现显著优于定向语言模型。

在这里插入图片描述

注意:实际实现中,并非所有 15% 的词都被替换为 [MASK]。

5. Next Sentence Prediction (NSP)

在训练 BERT 时,模型会接收成对句子作为输入,并预测第二个句子是否为第一个句子的自然续句。

在这里插入图片描述

训练过程:

  • 50% 的句子对是连续的,另 50% 是随机组合的。
  • 在输入时,使用 [CLS] 作为句首标记,[SEP] 作为句尾标记。
  • 添加 句子嵌入位置嵌入,以帮助模型区分句子。

预测步骤:

  • 通过 Transformer 编码整个输入序列。
  • 用分类层将 [CLS] 标记的输出转化为 2x1 形状的向量。
  • softmax 计算续句的概率。

BERT 同时训练 MLM 和 NSP,通过最小化两者的组合损失来优化模型性能。

6. BERT 的输入表示

BERT 的输入表示由以下三种嵌入的总和组成:

  • Token 嵌入:使用词片嵌入,将常见词作为单个单元,稀有词拆解为更小的子词。
  • 段嵌入:通过掩码分割句子,区分不同段落。
  • 位置嵌入:编码每个词在句子中的位置,使模型能处理序列信息。

这些嵌入加在一起,作为 BERT 的输入向量。

7. BERT 的模型架构

BERT 提供两种架构:BERT-BaseBERT-Large,根据网络层数和隐藏层维度有所不同:

模型Transformer 层数 (L)隐藏层维度 (H)自注意力头数 (A)
BERT-Base1276812
BERT-Large24102416

BERT 有大小写敏感(case-sensitive)和非敏感(uncased)两种版本,可根据应用需求选择使用。

在这里插入图片描述

8. 如何使用 BERT?

环境安装

Win10 + PyCharm + PyTorch 环境中,安装 Transformer 库:

pip install transformers

示例代码

以下是一个简单的 BERT 应用示例,使用 BERT 模型预测掩盖单词:

在这里插入图片描述

9. 总结

BERT 是 Transformer 架构的代表作,为 NLP 领域带来了革命性进展。通过 MLMNSP 策略,BERT 实现了对语言上下文的深度理解,并成为 情感分析、文本生成、问答系统 等任务的强大工具。

如何学习AI大模型?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

想正式转到一些新兴的 AI 行业,不仅需要系统的学习AI大模型。同时也要跟已有的技能结合,辅助编程提效,或上手实操应用,增加自己的职场竞争力。

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高

那么我作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,希望可以帮助到更多学习大模型的人!至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

👉 福利来袭优快云大礼包:《2025最全AI大模型学习资源包》免费分享,安全可点 👈

全套AGI大模型学习大纲+路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

👉学会后的收获:👈
基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉 福利来袭优快云大礼包:《2025最全AI大模型学习资源包》免费分享,安全可点 👈

img

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值