经典词嵌入与神经网络语言模型的对比研究

本文对比分析NNLM、C&W模型、RNNLM、CBOW和Skip-gram等经典神经网络语言模型,探讨其结构、特点和优化目标。研究发现,这些模型的核心是利用上下文进行预测,词嵌入的优化和训练时间的缩短是关键。
摘要由CSDN通过智能技术生成

经典词嵌入与神经网络语言模型的对比研究

标签(空格分隔): 深度学习 nlp


本文地址:http://blog.csdn.net/qq_31456593/article/details/77542071

摘要:本文将对NNLM,C&M,RNNLM,CBOW,Skip-gram等经典神经网络语言模型进行介绍,对比分析这些模型的结构和特点,并对神经网络语言模型的构造方法进行讨论。

1.相关背景

自然语言处理是实现人工智能的重要途径,从计算机被创造开始,自然语言处理就是计算机学家们的研究重点。语言模型是为了使计算机理解自然语言所构建的模型,常见的自然语言模型有N-gram等。Bengio成功地将神经网络引入到自然语言模型的构造中。Bengio在构建神经网络的同时得到了一个副产物-词嵌入,一种词语在向量空间的分布表示。后来,Collobert 和 Weston 将神经网络语言模型较好的运用到了词性标注、短语识别、命名实体识别、语义角色识别的任务中,为了减少运算复杂度,他将本来要预测的单词作为输入的一部分,输出层缩小到一个神经元,对输入的序列是否符合语言规则进行打分。与此同时Tomas Mikolov把RNN运用到了语言模型中,以代替原本的上下窗口,把历史上下文信息直接通过隐藏层传给下一个单词。后来,Tomas Mikolov提出了CBOM和Skip-gram模型,直接以训练词嵌入为目的,去掉了隐藏层,大大缩短了训练时间,获得了不错的训练效果,并发现了“king”-“man”+“women”=“queen”的语义规律,而其随后开源的word2vec包也使词嵌入这个概念为更多人所熟知。

2. 模型介绍

2.1. NNLM

该模型由Bengio在2001年提出,这是最经典的神经网络语言模型,后面的模型都是基于此进行改造的,该模型网络结构如下图所示:

整个网络分为两部分,第一部分是利用词特征矩阵C获得词的分布式表示(即词嵌入)。第二部分是将表示context的n个词的词嵌入拼接起来,通过一个隐藏层和一个输出层,最后通过softmax输出当前的p(wt|context)(当前上下文语义的概率分布,最大化要预测的那个词的概率,就可以训练此模型)。
第一部分词嵌入的获取如下图所示:

其中第i行对应的是one-hot表示中第i项为1的词向量的词嵌入。词向量与矩阵相乘后就可以得到自己的词嵌入了。由于C是神经网络的参数,所以词的词嵌入会随着模型的训练不断得到优化。

在网络的第二部分中,表示context的n个词嵌入通过隐藏层进行语义组合,最后经过输出层使用softmax输出预测的词向量,因为本模型是基于n-gram模型,所以只要最大化正确预测当前词即可。最后不但训练了一个用神经网络表示的语言模型,而且还获得了词语的词嵌入(存在矩阵C中)

从第二部分的输入到输出层有一个直连边,一般情况下该直连边的权重矩阵可以设为0,在最后的实验中,Bengio 发现直连边虽然不能提升模型效果,但是可以少一半的迭代次数。同时他也猜想如果没有直连边,可能可以生成更好的词向量。

该模型最终要最大化如下式子:

2.2. C&W模型

该模型设计了2个网络来完成词性标注 (POS)、短语识别(CHUNK)、命名实体识别(NER) 和语义角色标注 (SRL)这些nlp任务。其中一个模型叫window approach,另一个叫sentence approach。其中词嵌入的预训练用的是window approach,只是把输出层的神经原个数改成了1个,window approach网络结构见下图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值