HyperAIHyperAI

Command Palette

Search for a command to run...

向量空间中词表示的高效估计

Tomas Mikolov Greg Corrado Kai Chen Jeffrey Dean

摘要

我们提出两种新颖的模型架构,用于从超大规模数据集中计算词的连续向量表示。这些表示的质量通过词相似度任务进行衡量,并将结果与基于不同类型神经网络的前沿技术进行比较。我们观察到在显著降低计算成本的同时实现了准确率的大幅提升,即从16亿词的数据集中学习高质量词向量仅需不到一天时间。此外,我们证明这些向量在测量句法和语义词相似度的测试集上达到了最先进的性能。

一句话总结

两种新型模型架构能从海量文本语料中高效学习高质量的连续词表示,在不到一天的单机计算时间内完成 16 亿词数据集上的训练,显著提升了准确性并达到了句法和语义相似度任务的最先进水平,大幅降低了此前神经网络方法的计算成本。

核心贡献

  • 提出了两种模型架构,即连续词袋模型(Continuous Bag-of-Words)和跳字模型(Skip-gram),用于从大规模数据中学习连续词向量表示,计算成本比之前的神经网络方法大幅降低。
  • 设计了一套全面的测试集,用于评估句法和语义层面的词语相似度,为词向量质量提供了详细的基准。
  • 这些模型在所提出的测试集上达到了最先进的性能,可在一天内完成 16 亿词规模语料的训练,并且保留的线性规律使得通过简单的向量算术就能进行准确的类比推理。

引言

许多自然语言处理系统将词视作原子单元,并不包含词之间的相似性概念,当拥有大量训练数据时,这种简单而鲁棒的方法很有效。然而,在领域内文本稀缺的场景下,例如语音识别或低资源语言的机器翻译,这种依靠规模的策略便会失效。此前用于学习分布式词向量(词嵌入)的工作已显示出捕捉语义和句法规律的前景,但现有架构计算开销很大,无法扩展到数亿词或适中的向量维度之外。作者通过引入两种高效模型架构——CBOW 和 Skip-gram——来应对这些限制,大大降低了训练复杂度。他们的贡献在于提出了一种从包含数十亿词的语料中学习高质量词向量的方法,从而能够训练出保留线性关系(如类比)的高维嵌入,同时提供了一个包含句法和语义的综合测试集来评估这些表示。

方法

作者聚焦于通过神经网络学习词的分布式表示,目标是在最大化准确率的同时最小化计算复杂度。所评估模型的训练复杂度通常与 O=E×T×QO = E \times T \times QO=E×T×Q 成正比,其中 EEE 为训练轮数,TTT 为训练集中的词数,QQQ 为每个训练样本的复杂度。所有模型均使用随机梯度下降和反向传播进行训练。

首先,作者评估了前馈神经网络语言模型(NNLM)和循环神经网络语言模型(RNNLM)。NNLM 包含输入层、投影层、隐藏层和输出层,其复杂度主要由 H×VH \times VH×V 项决定,可通过使用基于 Huffman 二叉树的分层 softmax 加以缓解。RNNLM 通过一个将隐藏层连接至自身的循环矩阵形成短期记忆,克服了 NNLM 固定上下文长度的限制,其复杂度主要由 H×HH \times HH×H 项支配。为处理超大规模数据集,作者在 DistBelief 分布式框架上实现了这些模型,利用多个模型副本执行小批量异步梯度下降,并采用 Adagrad 自适应学习率过程。

为了进一步降低计算复杂度,作者提出了两种新的对数线性模型架构,它们去掉了非线性隐藏层,从而能在更大规模的数据集上高效训练。

第一种架构是连续词袋模型(CBOW)。类似于前馈 NNLM,该模型去掉了非线性隐藏层,并将投影层在所有词之间共享,实质上是将所有上下文词的向量平均到同一位置。历史中词的顺序不影响投影。模型作为一个对数线性分类器,使用过去和未来的上下文词来预测当前的中心词。其训练复杂度降至 Q=N×D+D×log2(V)Q = N \times D + D \times \log_2(V)Q=N×D+D×log2(V)

第二种架构是连续跳字模型。不同于从上下文预测当前词,该模型使用当前词作为输入,去预测同一句子中其前后一定范围内的词。作者发现增大这一范围能提升最终词向量的质量,但也会增加计算复杂度。为在两者间取得平衡,距离较远的词被采样的频率更低。此架构的训练复杂度正比于 Q=C×(D+D×log2(V))Q = C \times (D + D \times \log_2(V))Q=C×(D+D×log2(V)),其中 CCC 为词的最大距离。

如下图并列展示了这两种新的模型架构。

左侧的 CBOW 架构基于上下文词 w(t2),w(t1),w(t+1),w(t+2)w(t-2), w(t-1), w(t+1), w(t+2)w(t2),w(t1),w(t+1),w(t+2) 预测当前词 w(t)w(t)w(t),这些上下文词被投影并求和。右侧的 Skip-gram 架构以当前词 w(t)w(t)w(t) 作为输入,预测周围的上下文词。两种模型中,输入层与投影层之间的权重矩阵在所有词位置均为共享。

实验

评估采用一套语义-句法类比测试集以及微软句子补全挑战赛来考察词向量质量。实验表明,在大规模语料上训练的高维词嵌入上进行的简单向量算术能够捕捉多种语言关系,其中 Skip-gram 架构在语义任务中表现突出,而 CBOW 在句法任务中更优。同时增加训练数据量和向量维度对达到最优准确率是必要的,将 Skip-gram 模型与循环神经网络语言模型相结合,在句子补全基准上取得了新的最先进水平。

为评估词向量,作者创建了一个大型类比测试集,包含五种语义关系类型(如首都、货币)和九种句法类型(如形容词-副词转换、反义词),总计 8869 个语义问题和 10675 个句法问题。每个问题通过连接两个来自人工整理列表的词对构成,正确答案要求精确词语匹配,由于模型缺乏形态学信息,做到 100% 准确不太可能。语义问题涵盖常见的首都城市、所有首都城市、货币、城市所在州以及男女类比等五类。句法问题覆盖九个子类别,包括形容词到副词的转换和反义关系,总计 10675 个问题。

在限定为前 3 万个词的语义-句法测试上,CBOW 词向量的准确率随着训练数据规模和向量维度的增长而提高。然而,仅增加一个因素会带来收益递减,因此数据和维度的平衡扩展是必要的。最强结果(600 维,7.83 亿训练词)达到 50.4% 的准确率。仅使用 2400 万训练词时,将向量维度从 50 提升到 600,准确率仅从 13.4% 增加到 24.0%。对于 600 维向量,将训练数据从 1.96 亿词翻倍至 3.91 亿词,准确率提升 5.8 个百分点,而再翻倍至 7.83 亿词时仅提升 3.8 个百分点,这展现了收益递减现象。

Skip-gram 取得了最高的语义准确率,超过次优模型一倍以上,而 CBOW 在句法准确率和 MSR 词相关性测试中表现最佳。前馈 NNLM 相比 RNNLM 有大幅提升,CBOW 在句法和相关性任务上超越了 NNLM,并在语义准确率上与之持平。Skip-gram 达到 55% 的语义准确率,在语义-句法词语关系测试集上远超其他架构。CBOW 取得了最高句法准确率(64%)和 MSR 相关性得分(61%),在词相似度和类比任务上展现出强劲性能。

在公开可用的词向量中,基于 6.6 亿词训练的 Collobert-Weston NNLM 在语义-句法测试集上获得了最高的总准确率,而一个循环架构(Mikolov RNNLM)取得了最强的句法性能。更大的训练语料和更高的向量维度倾向于提升准确率,但模型类型的影响远超过数据规模本身。在使用 50 维向量和 6.6 亿训练词的条件下,Collobert-Weston NNLM 获得了所有列出公开模型中最好的总准确率(11.0%)。采用 80 维向量和 3.2 亿词的 Mikolov RNNLM 获得了最高的句法准确率(18.4%)以及次高的总准确率(12.7%),在句法关系上超越了所有 NNLM 变体。将 Mnih NNLM 的维度从 50 提升至 100 并保持 3700 万训练词,语义准确率翻倍,句法准确率从 9.1% 提高到 13.2%,但总体性能仍低于 RNNLM。Turian 的 NNLM 无论使用 50 维还是 200 维向量,语义准确率都极低(1.4%),表明仅靠增大维度无法弥补 3700 万词小训练集的不足。

下表在语义-句法测试集上评估了 CBOW 和 Skip-gram 词向量,比较了训练三轮和训练一轮的配置。三轮训练下的 Skip-gram 获得了最高的总准确率,主要得益于其大大领先的语义性能,而 CBOW 模型在句法任务上更具竞争力。用更多数据或增加维度仅进行单轮训练,其准确率就能基本持平或略微超过在小数据集上训练三轮的水平,同时显著缩短训练时间。三轮训练的 Skip-gram 达到 50.0% 的语义准确率,远高于三轮训练的 CBOW 的 15.5%,并由此获得 53.3% 的总得分。在 16 亿词上训练一轮的 CBOW,其总准确率与在 7.83 亿词上训练三轮的 CBOW(36.1%)持平,而训练时间仅需 0.6 天,而非 1 天。

一个涵盖语义和句法关系的大型类比测试集被用于评估词向量,需要进行精确词语匹配。实验揭示出,Skip-gram 在语义任务上表现优异,而 CBOW 在句法和相关性测试上做得更好;并表明由于只增加单一因素会带来收益递减,数据和维度的平衡扩展十分必要。模型架构对准确率的影响远大于语料规模本身,同时,在更大数据上进行单轮训练就能匹配在较小数据上进行多轮训练的精度,并大幅节省时间。


用 AI 构建 AI

从创意到上线——通过免费 AI 协同编码、开箱即用的环境和最优惠的 GPU 价格,加速您的 AI 开发。

AI 协同编码
开箱即用的 GPU
最优定价

HyperAI Newsletters

订阅我们的最新资讯
我们会在北京时间 每周一的上午九点 向您的邮箱投递本周内的最新更新
邮件发送服务由 MailChimp 提供