更别致的词向量模型(一):simpler glove
By 苏剑林 | 2017-11-19 | 42643位读者 |如果问我哪个是最方便、最好用的词向量模型,我觉得应该是word2vec,但如果问我哪个是最漂亮的词向量模型,我不知道,我觉得各个模型总有一些不足的地方。且不说试验效果好不好(这不过是评测指标的问题),就单看理论也没有一个模型称得上漂亮的。
本文讨论了一些大家比较关心的词向量的问题,很多结论基本上都是实验发现的,缺乏合理的解释,包括:
如果去构造一个词向量模型?
为什么用余弦值来做近义词搜索?向量的内积又是什么含义?
词向量的模长有什么特殊的含义?
为什么词向量具有词类比性质?(国王-男人+女人=女王)
得到词向量后怎么构建句向量?词向量求和作为简单的句向量的依据是什么?
这些讨论既有其针对性,也有它的一般性,有些解释也许可以直接迁移到对glove模型和skip gram模型的词向量性质的诠释中,读者可以自行尝试。
围绕着这些问题的讨论,本文提出了一个新的类似glove的词向量模型,这里称之为simpler glove,并基于斯坦福的glove源码进行修改,给出了本文的实现,具体代码在Github上。
为什么要改进glove?可以肯定的是glove的思想是很有启发性的,然而尽管它号称媲美甚至超越word2vec,但它本身却是一个比较糟糕的模型(后面我们也会解释它为什么糟糕),因此就有了改进空间。
内容概览:
1 对语言进行建模
1.1 从条件概率到互信息
1.2 互信息的可加性
1.3 插播:番外篇2 描述相关的模型
2.1 几何词向量
2.2 机场-飞机+火车=火车站
2.3 模型的形式
2.4 忘记归一化3 模型的求解
3.1 损失函数
3.2 互信息估算
3.3 权重和降采样.
3.4 Adagrad4 有趣的结果
4.1 模长的含义
4.2 词类比实验
4.3 相关词排序
4.4 重新定义相似.
4.5 关键词提取
4.6 句子的相似度.
4.7 句向量
转载到请包括本文地址:https://kexue.fm/archives/4667
更详细的转载事宜请参考:《科学空间FAQ》
如果您还有什么疑惑或建议,欢迎在下方评论区继续讨论。
如果您觉得本文还不错,欢迎分享/打赏本文。打赏并非要从中获得收益,而是希望知道科学空间获得了多少读者的真心关注。当然,如果你无视它,也不会影响你的阅读。再次表示欢迎和感谢!
如果您需要引用本文,请参考:
苏剑林. (Nov. 19, 2017). 《更别致的词向量模型(一):simpler glove 》[Blog post]. Retrieved from https://kexue.fm/archives/4667
@online{kexuefm-4667,
title={更别致的词向量模型(一):simpler glove},
author={苏剑林},
year={2017},
month={Nov},
url={\url{https://kexue.fm/archives/4667}},
}
August 11th, 2021
博主后来有聊"glove本身是一个比较糟糕的模型"的问题吗?
找到了,原来这是一套博客,辛苦博主
August 11th, 2021
有的话,希望拜读一下。
最近想实验下glove的效果,所以想都看看正负面的文章。
另外崇拜下博主,您改了斯坦福C++版本的glove源码耶,C++你也会。。好强啊
C++也就只能瞎改一点,算不上“会”~
October 31st, 2022
你好。请问一下关于simpler glove的论文能在哪里找到?可以分享一下原论文呗。谢谢
你好,simpler glove是我自己提出的模型(从博客的文字描述应该也不难看出),就只发表在这里,暂时没有正式论文。