@kpatrick
2019-08-01T16:38:55.000000Z
字数 1362
阅读 51
nlp
笔记
未完成
阅读材料:
- 词表征 1:WordNet、0-1表征、共现矩阵、SVD
- 词表征 2:word2vec、CBoW、Skip-Gram、Negative Sampling、Hierarchical Softmax
- 词表征 3:GloVe、fastText、评价词向量、重新训练词向量
问题来了,我们该如何自动寻找到类似上面的关系,将One hot representation转变成Distributed representation。 我们事先并不明确目标是什么,所以这是一个无监督学习任务。
无监督学习中常用思想是:当得到数据后,我们又不知道目标(输出)时,
- 方向一:从各个输入之间的关系找目标, 如聚类。
- 方向二:并接上以目标输出作为新输入的另一个任务,同时我们知道的对应值。用数据训练得到,也就是,中间的表达则是我们真正想要的目标。如生成对抗网络。
Word embedding更偏向于方向二。 同样是学习一个,但训练后并不使用,而是只取前半部分的。
到这里,我们希望所寻找的既有标签,又可以让所转换得到的的表达具有Distributed representation中所演示的特点。
同时我们还知道单词意思需要放在特定的上下文中去理解。 那么具有相同上下文的单词,往往是有联系的。
实例
那这两个单词都狗的品种名,而上下文的内容已经暗指了该单词具有可爱,会舔人的特点。
- 这个可爱的 泰迪 舔了我的脸。
- 这个可爱的 金巴 舔了我的脸。
而从上面这个例子中我们就可以找到一个:预测上下文。
用输入单词作为中心单词去预测其他单词出现在其周边的可能性。
我们既知道对应的,同时该任务又可以让所转换得到的 的表达具有Distributed representation中所演示的特点。 因为我们让相似的单词(如泰迪和金巴)得到相同的输出(上下文),那么神经网络就会将泰迪的输入和金巴的输入经过神经网络得到的泰迪的输出和金巴的输出几乎相同。
用输入单词作为中心单词去预测周边单词的方式叫做:The Skip-Gram Model。
用输入单词作为周边单词去预测中心单词的方式叫做:Continuous Bag of Words (CBOW)。
Subsampling:在采样过程中以一定的概率丢弃一些常见的词,为了使构建出来的训练集分布均匀,防止被等这些词支配。
Negative Sampling
如果词典中的词汇很多,每次softmax都要计算一个很大的向量,Negative Sampling方法可以每次只训练1+k个classifiers,1个正样本,k个负样本