深度学习-词嵌入

2021/10/9 23:43:06

本文主要是介绍深度学习-词嵌入,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1、onehot 缺点:词之间没有关联,泛化性差

2、高维特征表示:每词由300维的特征表示,能够获取词之间的相似性关系。更好。

学习词嵌入,可以迁移学习,可以小样本 在训练集中找相似特征的进行归纳。

一般词嵌入,使用双向RNN 

词嵌入,找网上模型然后少量训练标记进行迁移学习,可以使用比1-hot更低维的进行表示。

3、词嵌入的特性:依据相似性可以匹配词,cos衡量相似性(余弦距离),

t_SNE 高维映射到二维可视化

 

 4、嵌入矩阵,实践中不会用1-hot矩阵乘法,因为维度太高,所以用其他矩阵来代替。

 

 

 5、学习词嵌入

可以任意选择窗口大小进行预测。

 

CBOW模型,周围词预测中间词。正负10距有很多单词,导致最终预测效果不是很好。

 

 

 

word2vec(词嵌入):计算高效,skip-gram中间词利用softmax 预测周围词(窗口大小为2)。

Fake Task,word2vec模型的最终目的并不是建模,而是通过训练数据来学习隐层的参数,而隐层的参数实际就是word vectors,就是说将中心词和上下文词成组输入,(input word, output word),然后最大化他们的概率,从而学习隐层参数,而隐层的参数就是最终要获取的词向量。

缺点:softmax耗费很大,因为有个求和操作。

 

 

 负采样:

 作用:减少softmax的复杂度。

步骤:

两词匹配,负采样就是在词典中随机一个词(有更好的做法),距离不正负10的距离内, 匹配标记为0;

K的选择,小数据5-20,大数据2-5;

利用logistic回归进行训练,每次训练集之训练k+1个样本,复杂度从大量的词典长度降低到k+1;

 

 

根据经验,英文3/4次方的分布对整体是比较好的。

 



这篇关于深度学习-词嵌入的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程