词向量研究-GloVe词向量原理详解-通俗易懂

转载-原文:(十五)通俗易懂理解——Glove算法原理 - 知乎https://zhuanlan.zhihu.com/p/42073620

https://www.zhihu.com/question/292482891/answer/492247284https://www.zhihu.com/question/292482891/answer/492247284https://www.zhihu.com/question/292482891/answer/492247284

一、概述

GloVe:Global Vectors。

模型输入:语料库 corpus

模型输出:每个词的表示向量

论文链接:https://aclanthology.org/D14-1162.pdf

二、基本思想

要讲GloVe模型的思想方法,我们先介绍两个其他方法:

一个是基于奇异值分解(SVD)的LSA算法,该方法对term-document矩阵(矩阵的每个元素为tf-idf)进行奇异值分解,从而得到term的向量表示和document的向量表示。此处使用的tf-idf主要还是term的全局统计特征。

另一个方法是word2vec算法,该算法可以分为skip-gram 和 continuous bag-of-words(CBOW)两类,但都是基于局部滑动窗口计算的。即,该方法利用了局部的上下文特征(local context)

LSA和word2vec作为两大类方法的代表,一个是利用了全局特征的矩阵分解方法,一个是利用局部上下文的方法。

GloVe模型就是将这两中特征合并到一起的,即使用了语料库的全局统计(overall statistics)特征,也使用了局部的上下文特征(即滑动窗口)。为了做到这一点GloVe模型引入了Co-occurrence Probabilities Matrix。

首先引入word-word的共现矩阵XX,

讲到这里,没有一个例子来说明,那就真是一件很遗憾的事情了,所以必须来个实例,实例永远是帮助理解最好的方式。

(1)统计共现矩阵

(2)模型推导

以下内容看似公式很多,其实挺容易理解的,耐心看

三、Glove的缺点

(1)没有解决OOV的问题

(2)静态词向量,无法解决一词多义的问题

四、Glove的缺陷

glove模型的损失函数:

在glove模型中,对目标词向量和上下文向量做了区分,并且最后将两组词向量求和,得到最终的词向量。模型中最大的问题在于参数 也是可训练的参数,这会带来什么问题呢?

看下面的证明:

也就是说,对于glove训练处的词向量加上任意一个常数向量后,它还是这个损失函数的解!这就是很大的问题了,一旦在词向量上加上一个很大的常数向量,那么所有词向量之间就会非常接近,从而失去了词向量的意义。实践中可以发现,对于glove生成的词向量,停用词的模长远大于word2vec词向量的模长。如果下一步,你不过滤停用词,直接把几个词向量加起来求和用作其他任务时(如文本分类),停用词的词向量在求和词向量中占得比重还比较大,这明显很不合理。

可以看出glove这个模型,有借鉴推荐系统中的FM(Factorization Machines)的思想,在推荐系统中,参数 代表用户对特定商品的偏好,用一个偏移量来描述是合理的,但直接应用到词向量中,就不是很合理了。word2vec里是没有参数 ,所以大家会觉得word2vec效果好些,应用更加普及。

Reference

理解GloVe模型(Global vectors for word representation)_饺子醋的博客-CSDN博客_glove理解GloVe模型概述模型目标:进行词的向量化表示,使得向量之间尽可能多地蕴含语义和语法的信息。输入:语料库输出:词向量方法概述:首先基于语料库构建词的共现矩阵,然后基于共现矩阵和GloVe模型学习词向量。Created with Raphaël 2.1.0开始统计共现矩阵训练词向量结束统计共现矩阵设共现矩阵为XX,其元素为Xi,jX_{i,j}。 Xi,jX_{i,j}的意义为:在整个https://blog.csdn.net/coderTC/article/details/73864097

https://www.zhihu.com/question/292482891/answer/492247284https://www.zhihu.com/question/292482891/answer/492247284https://www.zhihu.com/question/292482891/answer/492247284

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值