【CS224n】(lecture2~3)Word Vectors, Word Senses, and Neural Classifiers

简介: 上次对word2vec开了个头,也说了为了优化训练速度,可以用SGD,即Stochastic gradient descent 随机梯度下降。迭代地在每个滑动窗口为SGD取梯度;由于每个窗口只有 2m+1 个单词,所以该向量会很稀疏:

一、回顾

1.1 模型思想

image.png

上次对word2vec开了个头,也说了为了优化训练速度,可以用SGD,即Stochastic gradient descent 随机梯度下降。迭代地在每个滑动窗口为SGD取梯度;由于每个窗口只有 2m+1 个单词,所以该向量会很稀疏:

image.png

关于word2vec有两种模型:skip-gram和CBOW。


二、梯度下降进行优化

Stochastic gradients with word vectors!


1.2 负采样(skip-gram)

在CBOW模型中,通过对w t w_tw

t

进行负采样,同样能获得对应于正样本( C t , w t ) (C_t,w_t)(C

t

,w

t

)的负样本集合,下面则是基于Skip-gram讲解负样本。

归一化的训练计算代价很高,所以可以使用负采样(HW2有这个任务)。


主要思想:基于一个true pair(中心词和上下文词)和几个noise pair(中心词和随机单词),训练一个二元逻辑回归模型。


提出负采样的论文:“Distributed Representations of Words and Phrases and their

Compositionality” (Mikolov et al. 2013)


最大化目标函数:

image.png

三、共现矩阵

3.1 一个栗子

这里有两种option:


window:类似word2vec,使用滑动窗口,捕获语法和语义信息。

word-document:会给出一般形式的主题,导致LSH(Latent Semantic Analysis,潜在语义分析)。

【栗子】

一个三句话的语料库:

• I like deep learning

• I like NLP

• I enjoy flying

image.png

上面矩阵的含义,比如I 和 like在第一二句话中都有出现,所以在共现矩阵的元素值为2。


3.2 降维操作

为了将高维向量转为低维的稠密向量。需要进行降维。


经典的方法:


(1)SVD方法

对共现矩阵,进行SVD分解,Singular Value Decomposition后的U和V矩阵都是正交矩阵(orthonormal)。

image.png


(2)改进SVD

论文:Hacks to X (several used in Rohde et al. 2005 in COALS)


使用倾斜的窗口能够计数靠近的单词,而非更远的单词。

使用pearson相关系数计数。

论文:COALS model from

Rohde et al. ms., 2005. An Improved Model of Semantic Similarity Based on Lexical Co-Occurrence


四、Glove

官方github:https://github.com/stanfordnlp/GloVe


Count based vs. direct prediction:



image.png

4.1 Encoding meaning components in vector differences

Glove模型目标:词的向量化表示,使得向量之间尽可能多蕴含语义和语法信息。

方法概述:首先基于语料库构建词的共现矩阵,然后基于共现矩阵和GloVe模型学习词向量。

开始 -> 统计共现矩阵 -> 训练词向量 -> 结束

栗子:比如有一个语料库:

i love you but you love him i am sad

现在窗口为5,即中心词左右两边有2个单词组成的统计窗口,窗口0、1长度小于5是因为中心词左侧内容少于2个,同理窗口8、9长度也小于5。窗口内容如下:

image.png

论文:Encoding meaning components in vector differences

[Pennington, Socher, and Manning, EMNLP 2014]


Encoding meaning in vector differences

[Pennington, Socher, and Manning, EMNLP 2014]

image.png

算出对应的比例数值:


image.png

一个问题:


image.png

4.2 预训练任务

4.3 参数估计

Glove通过优化以下加权损失函数进行学习:

image.png

五、 词向量的评估

(1)Intrinsic Evaluation内部任务评价方法:对词义相关性或类比推理性的表达能力进行评价。

(2)Extrinsic Evaluation外部任务评价方法:在实际任务中,根据下游任务的性能指标进行判断。


5.1 词义相关性

5.2 Glove可视化

比如比较级和最高级:


image.png

5.3 和其他算法的比较


image.png

六、解决一词多义问题

论文1:Improving Word Representations Via Global Context And

Multiple Word Prototypes (Huang et al. 2012)


论文2:Linear Algebraic Structure of Word Senses, with

Applications to Polysemy (Arora, …, Ma, …, TACL 2018)


七、分类模型复习

7.1 Classification intuition

最简单的方法用线性decision boundary进行分类,如下图:


image.png

7.2 Softmax分类器

image.png

7.4 传统的ML优化过程

image.png


八、Neural Network Classifiers

用的是非线性的decision boundaries,所以能够更好的拟合数据。


image.png

8.1 不同点1:

image.png


8.2 不同点2:一个神经网络=同时进行多个LR


image.png

九、Named Entity Recognition (NER)

命名实体识别。


十、Lesson3:Neural net learning

10.1 正向传递

Forward pass: compute results of operations and save intermediate values,即计算结果并保存中间值。


image.png

10.2 反向传播

Backward pass: apply chain rule to compute gradients,即反向传播利用链式求导法则求梯度。

image.png


10.3 举栗子

现在以 f = x ⋅ ω f=x \cdot \omegaf=x⋅ω 为例:


(1)正向传递

image.png


(2)反向传播

image.png

注意虽然这里的

image.png

相关文章
|
7月前
|
机器学习/深度学习 自然语言处理 ice
[GloVe]论文实现:GloVe: Global Vectors for Word Representation*
[GloVe]论文实现:GloVe: Global Vectors for Word Representation*
57 2
[GloVe]论文实现:GloVe: Global Vectors for Word Representation*
|
7月前
|
机器学习/深度学习 自然语言处理 C++
[Dict2vec]论文实现:Dict2vec : Learning Word Embeddings using Lexical Dictionaries
[Dict2vec]论文实现:Dict2vec : Learning Word Embeddings using Lexical Dictionaries
42 2
[Dict2vec]论文实现:Dict2vec : Learning Word Embeddings using Lexical Dictionaries
|
7月前
|
算法 TensorFlow 算法框架/工具
[FastText in Word Representations]论文实现:Enriching Word Vectors with Subword Information*
[FastText in Word Representations]论文实现:Enriching Word Vectors with Subword Information*
45 2
|
7月前
|
机器学习/深度学习 自然语言处理 算法
[BPE]论文实现:Neural Machine Translation of Rare Words with Subword Units
[BPE]论文实现:Neural Machine Translation of Rare Words with Subword Units
53 0
|
7月前
|
机器学习/深度学习 数据挖掘 Python
[Bart]论文实现:Denoising Sequence-to-Sequence Pre-training for Natural Language Generation...
[Bart]论文实现:Denoising Sequence-to-Sequence Pre-training for Natural Language Generation...
58 0
|
7月前
|
自然语言处理 算法 Python
[SentencePiece]论文解读:SentencePiece: A simple and language independent subword tokenizer...
[SentencePiece]论文解读:SentencePiece: A simple and language independent subword tokenizer...
109 0
|
机器学习/深度学习 人工智能 自然语言处理
【论文精读】AAAI 2022 - Unified Named Entity Recognition as Word-Word Relation Classification
到目前为止,命名实体识别(NER)已经涉及三种主要类型,包括扁平、重叠(又名嵌套)和不连续NER,它们大多是单独研究的。
252 0
【论文精读】AAAI 2022 - Unified Named Entity Recognition as Word-Word Relation Classification
《WordRank embeddingcrownedis most similar to king,not word2vec'sCanute》电子版地址
WordRank embedding:"crowned"is most similar to "king",not word2vec's"Canute"
67 0
《WordRank embeddingcrownedis most similar to king,not word2vec'sCanute》电子版地址
《Investigation of Transformer based Spelling Correction Model for CTC-based End-to-End Mandarin Speech Recognition》电子版地址
Investigation of Transformer based Spelling Correction Model for CTC-based End-to-End Mandarin Speech Recognition
98 0
《Investigation of Transformer based Spelling Correction Model for CTC-based End-to-End Mandarin Speech Recognition》电子版地址
|
自然语言处理
Re13:读论文 Gender and Racial Stereotype Detection in Legal Opinion Word Embeddings
Re13:读论文 Gender and Racial Stereotype Detection in Legal Opinion Word Embeddings
Re13:读论文 Gender and Racial Stereotype Detection in Legal Opinion Word Embeddings