Effficient Estimation of Word Representations in Vector Space
Tomas Mokolov,Kai Chen,Greg Corrado,Jeffrey Dean
Abstract
我们提出了两种新的模型体系结构,用于计算来自非常大数据集的连续向量表示。这些表示的质量在一个词相似任务中被测量,并且这个结果与之前基于不同类型的神经网络的最佳表现技术进行比较。我们观察到,新模型能显著改善准确性以及降低计算成本。例如,它从16亿字数据集中学习到优质词向量只需要不到一天的时间。此外,我们展示了这些向量在测量句法和语义词相似度的测试集上具有最先进的性能。
Introduction
许多当前的NLP系统和技术将单词视为原子单位——在单词之间没有相似的概念,因为它们在词汇表中被表示为索引。这种选择有几个很好的理由:简单性、健壮性和观察到在大量数据上训练的简单模型胜过在较少数据上训练的复杂系统。一个例子是用于统计语言建模的流行的N-gram模型——今天,可以在几乎所有可用数据上训练N-gram(数以亿计的词汇)。
然而,在许多任务中,简单的技术都有局限。例如,用于自动语音识别的相关域内数据量是有限的——性能通常由高质量的转录语音数据(通常只有数百万个单词)的大小决定。在机器翻译中,许多语言的现有语料库只包含几十亿个单词或更少。因此,在某些情况下,基础技术的简单扩展不会导致任何重大进展,我们必须关注更高级的技术。
随着近年来机器学习技术的进步,在更大的数据集上训练更复杂的模型已经成为可能,而且它们通常比简单模型表现得更好。可能最成功的概念是使用分布式的表示词[10]。例如,基于神经网络的语言模型明显优于N-gram模型[1,27,17]。
Goal of the Paper
本文的主要目的是介绍一种技术,该技术可以用于从具有数十亿个单词的海量数据集中,以及词汇表中的数百万个单词中学习高质量的词向量。据我们所知,之前提出的架构中没有一个被成功训练到超过数亿个单词,而单词向量的维度在50 - 100之间。
我们使用最近提出的技术来测量结果向量表示的质量,期望的是不仅相似的词趋向于彼此接近,而且单词可以有多个相似度.这在之前的屈折变化语言中已经观察到——例如,名词可以有多个词尾,如果我们在原始向量空间的子空间中搜索相似的词,就有可能找到具有相似词尾的词。研究发现,词语表达的相似性超越了简单的句法规则.使用单词偏移技术,对单词向量进行简单的代数运算,例如,向量(“King”)-向量(“Man”)+向量(“Woman”)得到了一个与单词皇后的向量表示最接近的向量。在本文中,我们试图通过开发新的模型体系结构来保持单词之间的线性规则,从而使这些向量操作的准确性最大化。我们设计了一个新的综合测试集来测量句法和语义的规则,并证明了许多规则可以被高精度地学习。此外,我们还讨论了训练时间和准确率如何依赖于单词向量的维数和训练数据的数量。