欢迎光临散文网 会员登陆 & 注册

小象学院自然语言项目实战

2023-04-08 14:02 作者:清卫怡  | 我要投稿

1. word2vec

在自然语言中,词是最基本的单元。为了让计算机理解并处理自然语言,我们首先就要对词进行编码。由于自然语言中词的数量是有限的,那就可以对每个词指定一个唯一序号,比如:英文单词word的序号可以是1156。而为了方便计算,通常会将序号转换成统一的向量。简单做法是对单词序号进行one-hot编码,每个单词都对应一个长度为N(单词总数)的向量(一维数组),向量中只有该单词序号对应位置的元素值为1,其它都为0。

虽然使用one-hot编码构造词向量十分容易,但并不是一个较好的方法。主要原因是无法很好地表示词的语义,比如苹果和橘子是相似单词(都是水果),但one-hot向量就无法体现这种相似关系。

为了解决上述问题,Google的Mikolov等人于2013年发表了两篇与word2vec相关的原始论文[1][2]。word2vec将词表示成一个定长的向量,并通过上下文学习词的语义信息,使得这些向量能表达词特征、词之间关系等语义信息。word2vec包含两个模型:跳字模型(Skip-gram)[1] 和连续词袋模型(continuous bag of words,CB


 

小象学院自然语言项目实战的评论 (共 条)

分享到微博请遵守国家法律