自然语言理解中的词向量发展史
自然语言理解中的词向量发展史
自然语言理解(Natural Language Understanding,NLU)是人工智能领域的重要研究方向,旨在使计算机能够理解和处理人类语言。词向量(word embedding)作为NLU的核心技术之一,将词语转换为向量形式,为机器理解语义提供了桥梁。
早期探索:独热编码的局限性
词向量的概念可以追溯到上世纪50年代,当时人们采用独热编码(one-hot encoding)将词语表示为向量。每个词语对应一个唯一向量,向量维度等于词汇表大小,仅一个元素为1,其余元素为0。例如,词汇表包含10000个词,'apple'的向量长度为10000,仅第1000个元素为1。
然而,独热编码存在明显缺陷:
- 高维度:向量维度随词汇表增大而线性增长,导致计算成本高昂。- 语义鸿沟:向量之间无法体现词语语义相似度,'apple'和'orange'的向量与'apple'和'banana'的向量距离相同,但实际上前两者语义更接近。
神经网络时代:词向量的新突破
为了解决独热编码的局限性,研究者开始探索能够捕捉词语语义相似度的低维向量表示。2003年,Bengio等人提出的神经概率语言模型(neural probabilistic language model)标志着词向量新时代的到来。
该模型使用三层神经网络预测下一个单词:
- 输入层:接收前n个单词的词向量并求和。2. 隐藏层:将输入向量映射到低维空间,得到新的向量表示。3. 输出层:基于隐藏层输出预测下一个单词的概率。
通过反向传播算法,模型不断更新输入层和隐藏层之间的权重,从而学习到每个单词的词向量。
Word2vec:高效学习大规模语料库
神经概率语言模型的提出推动了词向量技术的快速发展。2013年,Mikolov等人提出了word2vec模型,能够高效地从大规模语料库中学习词向量。
Word2vec模型包含两种训练方式:
- 连续词袋模型(Continuous Bag of Words,CBOW):根据上下文单词预测当前单词。- Skip-gram模型:根据当前单词预测上下文单词。
两种模型都使用神经网络,并通过反向传播算法更新词向量。
其他词向量模型:GloVe和FastText
除了word2vec,GloVe和FastText等模型也展现出强大的能力。
- GloVe模型:利用全局词汇统计信息学习词向量,更好地处理稀有词汇和多义词。- FastText模型:将单词分解为子单词,并将子单词向量相加得到单词向量,有效处理未知词汇和拼写错误。
总结
词向量技术从早期的独热编码发展到如今的神经网络模型,经历了漫长的发展历程。Word2vec、GloVe和FastText等模型的出现,极大地推动了自然语言处理领域的发展。词向量作为自然语言处理的基础技术,为机器翻译、情感分析、文本分类等任务提供了强大的支持。
原文地址: https://www.cveoy.top/t/topic/f2CO 著作权归作者所有。请勿转载和采集!