首页 > 其他分享 >【论文系列】之 ---- BERT

【论文系列】之 ---- BERT

时间:2024-11-10 20:20:06浏览次数:1  
标签:BERT 论文 Mask dog ---- 单词 my 句子

BERT(Bidirectional Encoder Representation from Transformers)

机器阅读理解领域
从名字很好理解,主要使用的方法是Transformer的方法。。进行机器翻译等操作

省流:BERT用于文本识别,机器阅读理解。。跟GPT类似

image

(1)词嵌入Embedding

词嵌入又有三个部分组成:
image

Token Embedding

image

Segment Embedding

image

Posiiton Embedding

文本出现的位置,进行编码

(2)Transformer Encoder

使用了我们熟知的多头注意力机制
image

(3)预训练

BERT是一个多任务模型,它的预训练(Pre-training)任务是由两个自监督任务组成,即MLM和NSP

MLM

MLM是指在训练的时候随即从输入语料上mask掉一些单词,然后通过的上下文预测该单词,该任务非常像我们在中学时期经常做的完形填空。

在训练模型时,一个句子会被多次喂到模型中用于参数学习,但是Google并没有在每次都mask掉这些单词,而是在确定要Mask掉的单词之后,做以下处理。
80%的时候会直接替换为[Mask],将句子 "my dog is cute" 转换为句子 "my dog is [Mask]"。
10%的时候将其替换为其它任意单词,将单词 "cute" 替换成另一个随机词,例如 "apple"。将句子 "my dog is cute" 转换为句子 "my dog is apple"。
10%的时候会保留原始Token,例如保持句子为 "my dog is cute" 不变。
-----摘自知乎

NSP(Next Sentence Prediction)

判断句子B是否是句子A的下文。如果是的话输出’IsNext‘,否则输出’NotNext‘。

输入 = [CLS] 我 喜欢 玩 [Mask] 联盟 [SEP] 我 最 擅长 的 [Mask] 是 亚索 [SEP]

类别 = IsNext

输入 = [CLS] 我 喜欢 玩 [Mask] 联盟 [SEP] 今天 天气 很 [Mask] [SEP]

类别 = NotNext

(4)微调

模型微调
原文网址
这里按照自己的理解对该文做出总结

标签:BERT,论文,Mask,dog,----,单词,my,句子
From: https://www.cnblogs.com/myleaf/p/18538382

相关文章

  • 第六章-继承和多态
    一、单项选择题1.有如下的类及对象的定义: classparentclass[] classsubclasslextendsparentclass|} parentclassa=newparentclass();subclass1b=newsubclass1();当执行语句a=b;时,结果是                              ......
  • 【神经网络组件】Transformer Encoder
    【神经网络组件】TransformerEncoder目录【神经网络组件】TransformerEncoder1.seq2seq模型2.为什么只需要TransformerEncoder3.TransformerEncoder的结构1.seq2seq模型什么是sequence:sequence指由多个向量组成的序列。例如,有三个向量:\(\mathbf{a}=[1,0,0]^T,\math......
  • 每日一题之二叉树
    已知结点元素值为正整数且值不相同的一棵二叉树。该二叉树通过给出其先序遍历序列和中序遍历序列构造而成。输入一个整数x,针对此二叉树编写程序求出x的右子树中所有结点值的和(若x不在树上,输出-1)。 输入说明:第一行输入某二叉树的先序遍历序列第二行输入该二叉树的中序遍历......
  • 黑马PM- B端产品-B端基础知识
    什么是B端产品B端产品市场介绍B端产品常见分类B端与C端产品区别供应链简介......
  • 使用react+copy-to-clipboard封装双击复制组件
    前言:最近在公司研发后台系统,用户反馈在双击某些信息时希望可以进行复制的操作,多处使用进而封装为组件首先:安装copy-to-clipboardnpmi--savecopy-to-clipboard其次:封装组件importReact,{memo,useCallback}from'react';import{notification}from"antd";......
  • C++中string字符串的基础操作,学习
    string字符串常用函数substring()string.length()&&string.size()string.find()string.replace()string.substr()string初始化和声明#include<bits/stdc++.h>usingnamespacestd; intmain(){stringstr1;//空字符串stringstr2="hello,w......
  • windows C#-异常处理
    C#程序员使用try块来对可能受异常影响的代码进行分区。关联的catch块用于处理生成的任何异常。finally块包含无论try块中是否引发异常都会运行的代码,如发布try块中分配的资源。try块需要一个或多个关联的catch块或一个finally块,或两者皆之。下面的示例演示......
  • windows C#-多态性
    多态性常被视为自封装和继承之后,面向对象的编程的第三个支柱。Polymorphism(多态性)是一个希腊词,指“多种形态”,多态性具有两个截然不同的方面:在运行时,在方法参数和集合或数组等位置,派生类的对象可以作为基类的对象处理。在出现此多形性时,该对象的声明类型不再与运行时类型......
  • windows C#-继承
    继承(以及封装和多态性)是面向对象的编程的三个主要特征之一。通过继承,可以创建新类,以便重用、扩展和修改在其他类中定义的行为。其成员被继承的类称为“基类”,继承这些成员的类称为“派生类”。派生类只能有一个直接基类。但是,继承是可传递的。如果ClassC派生自ClassB......
  • windows C#-对象
    类或结构定义的作用类似于蓝图,指定该类型可以进行哪些操作。从本质上说,对象是按照此蓝图分配和配置的内存块。程序可以创建同一个类的多个对象。对象也称为实例,可以存储在命名变量中,也可以存储在数组或集合中。使用这些变量来调用对象方法及访问对象公共属性的代码称为客户......