Bert模型浅析

本文经过ppt和你们简单聊一下关于nlp模型bert的一些知识,网上不少关于bert的解读,翻来覆去都是那些论文里的翻译之类的,十我的有九个相同的东西。本文简单的摘录了一些大佬之言,仅供参考。web

一、Bert简介

先来聊一下nlp领域关于预训练的一个简单的发展历程。总所周知,图像领域的imagenet预训练对于图像处理有着至关大的意义,namenlp领域是否也存在这样的一个通用模型呢?
从word2vec开始,大佬们就开始不断地拓展新的模型。word2vec相应熟悉nlp领域的人都十分清晰它的好处,用它作词嵌入能够作出比较好的文本表征。它算是神经语言模型的一种变种,也是基于句子连个词先后的关系来捕捉句子里的特征。可是它的缺点很明显,对于同义词无能为力。
接下里,带你们认识一下transformer这个网路结构,它算是2017年nlp领域一个比较大的突破,摒弃了rnn这种序列结构,直接用上了attention机制来作,在神经翻译领域取得了很大的成就。
另外,Emlo这个模型使用了两层双向lstm模型来作词表征,词嵌入再也不是固定的向量,而是会根据上下文信息进行辩护啊,这样就能够解决了同义词的问题。可是从后期的一些模型出现表现来看这样的双向lstm表征能力不足。
GPT使用的是trandformer结构来作单向的下个词汇预测的一个预训练模型,而bert在此基础上介入了双向,并且预训练任务修改为了完形填空与上下句判断两个任务。这个下面会详细聊一下。
在这里插入图片描述
咱们能够看一下bert模型的而一些数据,一句话归纳“大力出奇迹”。数组

在这里插入图片描述

在这里插入图片描述

二、模型输入与输出

本节,咱们聊聊模型的一个输入输出问题。
第一步,数据生成过程。
原始数据以下,每行是一句话,用空格来分隔两篇文档。利用词汇表将数据转换成二维数组。
在这里插入图片描述svg

第二步,经过随机marked来生成知足第一个预训练任务的数据,此处会随机选取15%的数据用来作masked。其中10%保留原词,10%用其余词代替,80%用mask代替。其次就是计入下一句预测后的数据,用0-1标记。
在这里插入图片描述翻译

接来下,看一下模型训练的流程,有三个部分须要作词嵌入:分别用图中的三种方式作。
在这里插入图片描述3d

这里,简单看一下transfomer的结构。作完embedding后传入模型作多头attention,同时加入残差与layer-norm。屡次重复这样的过程,bert模型中会有8或12层transformer。
在这里插入图片描述
最后一步,根据本身的模型进行微调,只须要根据最后一次的输出来调整如何接入本身的模型便可。
在这里插入图片描述orm

三、相关实验

最后,这里咱们介绍一下论文中的相关实验结果,都达到了当前最优。
在这里插入图片描述xml

另外如何在本身的数据及上使用bert模型,咱们这里也简单的说一下。下载中文bert模型,根据本身的数据修改数据处理模块的代码,而后运行便可。
blog

在这里插入图片描述

最后,给出一些网上的常见资源。
在这里插入图片描述图片