NLP发展

1、Word Embedding

1.Word2Vec(2013)

分布式假设:假设两个词上下文类似,则它们的语义也类似。算法

 

2.GloVe

(1)词向量学习算法有两个主要的模型族:

  基于全局矩阵分解的方法,如:latent semantic analysis:LSA 。机器学习

    优势:可以有效的利用全局的统计信息。分布式

    缺点:在单词类比任务(如:国王 vs 王后 类比于男人 vs 女人)中表现相对较差。ide

  基于局部上下文窗口的方法,如:word2vec。学习

    优势:在单词类比任务中表现较好。翻译

    缺点:由于word2vec 在独立的局部上下文窗口上训练,所以难以利用单词的全局统计信息。3d

  Global Vectors for Word Representation:GloVe 结合了LSA 算法和Word2Vec 算法的优势,既考虑了全局统计信息,又利用了局部上下文。orm

  Cbow/Skip-Gram 是一个local context window的方法,缺少了总体的词和词的关系,负样本采用sample的方式会缺失词的关系信息。
另外,直接训练Skip-Gram类型的算法,很容易使得高曝光词汇获得过多的权重blog

  Global Vector融合了矩阵分解Latent Semantic Analysis (LSA)的全局统计信息和local context window优点。融入全局的先验统计信息,能够加快模型的训练速度,又能够控制词的相对权重。ip

(2)原理

 

 

 

2、RNN改进和扩展

问题:词向量不考虑上下文,没法解决“一词多义”

解决方案:RNN具备“记忆”能力

1.RNN

 

RNN的问题:顺序依赖,没法并行。(单向信息流)

2.LSTM/GRU

2.1 LSTM

2.2 GRU

3.Seq2Seq

可用于翻译、摘要、问答和对话系统

 

问题:定长的context向量

 

4.Attention/Self Attention

5.Transformer结构

解决:RNN单向数据流的问题

3、Contextual Word Embedding

问题:监督数据量不足,难以学到复杂的上下文表示;

解决方案:无监督的contextual word embedding:ELMo、OpenAI GPT、BERT

1.ELMo

2.OpenAI GPT

 

3.BERT

Masked LM:masked language model

 

举例:意图分类

问题:给定一个句子,判断其意图分类,几万训练数据,几百个类别,数据不平衡

结果:BERT分类器比BaseLine分类器F1值得分提升3%

 

 

 

 

 

 

 

 

 

参考文献:

【1】60分钟带你掌握NLP BERT理论与实战_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

【2】详解Transformer (Attention Is All You Need) - 知乎

【3】李宏毅机器学习2019(国语)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

相关文章
相关标签/搜索