word2vec: 理解nnlm, cbow, skip-gram

本文详细介绍了word2vec模型,包括word representation的一般概念,如one-hot编码和embedding,重点讨论了CBOW和Skip-gram模型,分析了它们的优缺点以及在大规模数据集上的效率。word embedding能够捕捉语义和语法规律,例如通过相似性计算,展示了其在多种自然语言处理任务中的应用潜力。
摘要由CSDN通过智能技术生成

word2vec 论文笔记

1 word rep

怎么表示词的意思?
传统的想法有查字典. 近义词,缺点:主观,费人力, 难记算相似性
one-hot 缺点:维度灾难,正交,无法计算similarity.
那么,通过借鉴近义词,学习将similarity编码到词向量中去.

1.1 one-hot

n-gram language model见我之前写的csdn Blog:
1. BOW
2. TF-IDF

BOW, TF-IDF这类n-gram表示,在文本分类还是挺有用的,利用统计学的优势.

其对词意的表示还是以one-hot encoding的形式,稀疏向量, 任意两向量都是正交的,点乘为0, 没有相似性的一个自然的表达.

key: A word’s meaning is given by the words that
frequently appear close-by

“You shall know a word by the company it keeps” (J. R. Firth 1957: 11)

为解决以上问题,可以借鉴查字典的方法去计算相似性,通过向量本身编码相似性.

1.2 embedding

why called embedding?

embedding 和 encoding 意思一样就是用一个dense vector 去表示词的特征.可以想象将这个词嵌入到高维空间的一个点. 本质上就是映射,将原空间的词映射到另一空间的高维向量, 这样的表示也叫word representation. 同理, image embedding也是这么理解的.

对一个corpus,假设有10k个词,词向量特征维度是300, embedding就是一个10k*300 的密集矩阵

why better than one-hot?
  1. 泛化性更强
  2. 在多种任务中效果更好, 如文本生成, 名词实体识别, sentiment analysis, text summarization, co-reference resolution, parsing等.
  3. 迁移学习
similarity:intuition

通过学习获得的word embedding可以捕捉语义和语法规律 Mikolov et al 2013. 可以帮助理解为什么word embedding有效果.

emanewomanekingequeen e m a n − e w o m a n ≈ e k i n g − e q u e e n
eappleeapplesecarecars e a p p l e − e a p p l e s ≈ e c a r − e c a r s

这种语义语法的相似性使word embedding具有很好的泛化性:

  • The cat is walking in the bedroom
  • A dog was running in a room
  • The cat is running in a room
  • A dog is walking in a bedroom
  • The dog was walking in the room

这种相似性也是检验word embedding是否有用的标准之一.(另一种是看各种任务效果的提升)

2 模型

实际上通过训练模型学习word embedding的方法非常悠久. 像众多问题一样,模型的演化是从复杂到简单,人们发现用一个看起来非常简单的模型,在corpus数据量巨大的情况下进行训练依然能得到效果非常不错的word embedding.

13年word2vec的目标其实是提出针对数据量达到特别大,十亿级的文本库,百万级的单词的corpus,高效的学习word embedding. 论文的核心也是围绕各种模型的复杂度进行比较的,衡量模型复杂度的是模型的参数数量.

key: A word’s meaning is given by the words that
frequently appear close-by

“You shall know a word by the company it keeps” (J. R. Firth 1957: 11)

这里再提一下一下模型的核心思想.

2.1 A Neural Probabilistic Language Model

03年Bengio提出的learning a distributed representation by words的模型.

2.1.1 Feedforward Neural Net Language Model

词数量 V V , 词向量维度 m , Embedding C C , shape ( V × m ) , 通过前 n1 n − 1 个词来预测第n个词的likelihood.

输入: { wtn1,...,wt2,wt1} { w t − n − 1 , . . . , w t − 2 , w t − 1 } , 以通过 C C 映射得到前 n 个词的词向量 { C(wtn+1),...,C(wt2),C(wt1)} { C ( w t − n + 1 ) , . . . , C ( w t − 2 ) , C ( w t − 1 ) } , 输入就是将这n个词向量合并的向量, 长度为 (n1)×m ( n − 1 ) × m . 这样理解,每个词以one-hot表示输入,经过Embedding layer,一个没有激活函数的隐藏层,得到特征向量.

经过只有一个隐藏层(#hidden units = h)的神经网络,隐藏层 W(h×(n1)m)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值