Bert框架详解(下)

一、Bert模型网络结构

1、Add与Normalize

Add:将前面的数据传到后面层,残差网络同理。

Normalize :归一化,与batch normalize同理。

2、outputs(shifted right)

outputs(shifted right):指在解码器处理过程中,将之前的输出序列向右移动一位,并在最左侧添加一个新的起始符(如"<sos>"或目标序列开始的特殊token)作为新的输入。这样做的目的是让解码器在生成下一个词时,能够考虑到已经生成的词序列。 作用:通过"shifted right"操作,解码器能够在生成每个词时,都基于之前已经生成的词序列进行推断。这样,解码器就能够逐步构建出完整的输出序列。 示例说明:假设翻译任务,输入是"我爱中国",目标输出是"I love China"。在解码器的处理过程中: 在第一个步,解码器接收一个起始符(如"<sos>")作为输入,并预测输出序列的第一个词"I"。 在第二个步,解码器将之前的输出"I"和起始符一起作为新的输入(即"<sos> I"),并预测下一个词"love"。 以此类推,直到解码器生成完整的输出序列"I love China"。

3、训练数据

方法一:随机的将句子中的15%的词汇进行mask。让模型去预测mask的词汇。 注:一般选择字进行mask,词的可能性太多,例如今天,明天,后天,上午,下午,没有,再次等等。

方法二:预测两个句子是否应该连在一起。

CLS:分类标记(Classification Token)用于表示输入序列的开始。在输入序列中,CLS应放置在句子的开头。在训练过程中,CLS也当作一个词参与训练,得到对应与其他词汇关系的词向量。 SEP:分隔符标记(Separator Token)用于分隔两个句子或表示单个句子的结束。在处理多个句子时SEP应放置在每个句子的结尾。在训练过程中,SEP也当作一个词参与训练,得到对应与其他词汇关系的词向量。

相关推荐
风象南23 分钟前
我把大脑开源给了AI
人工智能·后端
Johny_Zhao2 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
飞哥数智坊3 小时前
我帮你读《一人公司(OPC)发展研究》
人工智能
冬奇Lab6 小时前
OpenClaw 源码精读(3):Agent 执行引擎——AI 如何「思考」并与真实世界交互?
人工智能·aigc
没事勤琢磨8 小时前
如何让 OpenClaw 控制使用浏览器:让 AI 像真人一样操控你的浏览器
人工智能
用户5191495848458 小时前
CrushFTP 认证绕过漏洞利用工具 (CVE-2024-4040)
人工智能·aigc
牛马摆渡人5288 小时前
OpenClaw实战--Day1: 本地化
人工智能
前端小豆8 小时前
玩转 OpenClaw:打造你的私有 AI 助手网关
人工智能
BugShare8 小时前
写一个你自己的Agent Skills
人工智能·程序员
机器之心9 小时前
英伟达护城河被AI攻破,字节清华CUDA Agent,让人人能搓CUDA内核
人工智能·openai