lda2vec (2)

lda2vec分为两部分,一部分是利用skip-grams做词向量表示,另一部分是文档向量表示。

1.词向量表示——skip-gram——得到word vector

在扫描语料的时候,提取移动窗口内成对的枢轴词和目标词。每对中的枢轴词用来预测附近的目标词。

每个枢轴词由一个固定长度的稠密分布式向量表示。

如果这个枢轴词是German,被预测的相邻词就是French或Spanish。但是如果这个文档是关于航空的,我们就会创建一个与airline这个词语词向量相似的文档向量。然后我们不会再对单独预测German这类词,而是预测与German和airline两个词都相关的词语,比如Lufthansa, Condor, Flugdienst这类词。

2.文档向量表示——得到document vector

为语料库中的每个文档随机初始化一个潜在向量。文档的权重是通过softmax转化出来的权重,用来生成文档比例。

生成的结果是由概率组成的向量,表示这个文档的主题41%的概率是topic0,26%的概率是topic1, 34%的概率是topic3.

每一个主题有一个分布式的表示向量,与词向量在同一个空间。每个主题不一定都是从预料中抽取的词语,有可能是与其他词语语义相似。比如,一个主题向量可能类似于词语pitching, catcher, braves,但是其他的主题向量可能与Jesus,God, faith等词有关。

每一个文档向量都是主题向量的加权和。

计算负采样损失的目的是区分观察到的上下文目标对(German+document, airline)和负采样对(German + document, bear
)。

文档占比是同时初始化的。经过训练,Dirichlet似然函数损失值会变成稀疏矩阵。对于文档占比向量中的每个元素来说,损失值很容易计算。
在这里插入图片描述
3.context vector = word vector + document vector
context vector 上下文向量
4.Mixing LDA + word2vec = lda2vec
lda2vec结合了word2vec的强大功能和LDA的可解释性。他进行了三个改变:
(1)结合了全局文档主题与局部词语形式结合。(Combining global document themes with local word patterns)
(2)使词向量变得稠密,但使文档向量变得稀疏。(Dense word vectors but sparse document vectors)
(3)将两种模型混合,使可解释性更高。(Mixture models for interpretability)

参考文献:https://multithreaded.stitchfix.com/blog/2016/05/27/lda2vec/#topic=38&lambda=1&term=

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值