cs224n Lecture 3: GloVe skipgram cbow lsa 等方法对比 / 词向量评估 /超参数调节 总结

生成词向量的方法

以前大致有两种方法:

①是Matrix Factorization Method,主要代表是SVD Based的LSA等方法,核心是对共现矩阵(co-occurence)进行SVD(奇异值)分解,得到词向量。

②是Iteration Based Method(Shallow window-based),主要代表是上节课讲到的Skip-GramCBOW。核心是概率,通过设置滑窗、中心词、找到语境词,对语料进行循环、迭代,使概率最大。

而最新的是:

GloVe模型(Global Vectors,全局向量),把上述两种方法结合了一下,克服了两者的弱点。


SVD Based

SVD Based的种类

是基于词库(Word document)的。这个词库,也就是不同的类别,比如有动物类别(dog/cat/pig等),细分一点,还可以分为哺乳动物、啮齿动物、鸟类等等。然后,把单词表的每一个单词,进行分类:比如"bank银行"、"bonds债务"、"stocks股份"、"money钱",它们很明显都会分到"finance金融"这个类,以此类推。最终形成了一个庞大矩阵(类别数量M*单词表数量V)。很明显,类别分得越细(M越大)、词量越大(V越大),效果越好,但带来的坏处是,矩阵将会十分十分庞大,而对其进行SVD分解,更耗费时间和计算机资源!显然需要改进。

除了用上述“分类”的方法来构建共现矩阵外,还可以使用类似Skip-Gram的“滑窗”来构建,这也就是基于滑窗的方法,看一个例子:

假设我们有一个很简单的语料,三个句子:

设置滑窗大小为1,那么出现的词对有(这里.作为终止符EOF也要统计进去):

I enjoy、enjoy flying、flying .、I like、like NLP、NLP .、I like、like deep、deep learning、learning .。

然后统计成一个表格,这个表格就是基于“滑窗”的共现矩阵:比如I在like的上文出现了2次,所以计数就是2。

接下来,对这个矩阵进行SVD分解,选择前k个最大的奇异值,找到其对应的向量作为词向量即可。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值