Python知识分享网 - 专业的Python学习网站 学Python,上Python222
人工智能bert模型详解 PDF 下载
匿名网友发布于:2026-02-02 09:15:25
(侵权举报)
(假如点击没反应,多刷新两次就OK!)

人工智能bert模型详解 PDF 下载 图1

 

 

资料内容:

 

Sentence-BERTSBERT,对预训练的BERT进行修改:使用孪生(Siamese)和三级(triplet)网络结构来获得语义上有意义的句子embedding,以此获得定长的sentence embedding,使用余弦相似度或Manhatten/Euclidean距离等进行比较找到语义相似的句子

 

其中左图是训练的模型,右图是训练好模型之后利用句向量计算2个句子之间的相似度。

uv分别表示输入的2个句子的向量表示,|u-v|表示取两个向量的绝对值,(u, v, |u-v|)表示将三个向量在-1维度进行拼接,因此得到的向量的维度为 3*dd表示隐层维度。

 

 

AMBERT(李航)

细粒度token不能像lexical unit表达完整,但是他们更容易学习。因为他们会产生更少的token类型,在训练集中更多出现。

粗粒度能像lexical unit完整表达,但它们更难学习。因为他们会产生更token类型,在训练集中也会较少出现。

AMBERT简单的采用两个encoder,一个encoder以细粒度作为输入,另一个encoder以粗粒度作为输入,这两个encoder在除了embedding部分共享了所有参数,最后能分别学到字粒度和词粒度的上下文表达。

AMBERT有两个Encoders, 一个用来处理细粒度token序列,另一个用来处理粗粒度token序列。每个encoder有着与BERT一样的结构。两个Encoder除了embedding层,其它层参数共享。细粒度编码器从细粒度token学习到上下文表达向量,同时,粗粒度编码器从粗粒度token学习到上下文表达向量。

 

 

ChineseBERT

汉字的最大特性有两个方面:一是字形,二是拼音。汉字是一种典型的意音文字,从其起源来看,它的字形本身就蕴含了一部分语义。比如,“江河湖泊”都有偏旁三点水,这表明它们都与水有关。

而从读音来看,汉字的拼音也能在一定程度上反映一个汉字的语义,起到区别词义的作用。比如,“乐”字有两个读音,yuè,前者表示“音乐”,是一个名词;后者表示“高兴”,是一个形容词。而对于一个多音字,单单输入一个“乐”,模型是无法得知它应该是代表“音乐”还是“快乐”,这时候就需要额外的读音信息进行去偏。

为此,本文提出ChineseBERT,从汉字本身的这两大特性出发,将汉字的字形与拼音信息融入到中文语料的预训练过程。一个汉字的字形向量由多个不同的字体形成,而拼音向量则由对应的罗马化的拼音字符序列得到。二者与字向量一起进行融合,得到最终的融合向量,作为预训练模型的输入。模型使用全词掩码(Whole Word Masking)和字掩码(Character Masking)两种策略训练,使模型更加综合地建立汉字、字形、读音与上下文之间的联系。

下图是ChineseBERT的整体模型框架,主要的改进点在底层的融合层(Fusion Layer)融合了除字嵌入(Char Embedding)之外的字形嵌入(Glyph Embedding)和拼音嵌入(Pinyin Embedding),得到融合嵌入(Fusion Embedding),再与位置嵌入相加,就形成模型的输入。