词嵌入通过将词表示为连续的密集向量来工作,其中每个向量编码语义含义。与传统的one-hot编码 (仅使用单个非零元素创建稀疏向量) 不同,单词嵌入允许具有相似含义的单词具有相似的向量表示。这是通过在大型文本语料库上进行训练来实现的,其中模型学习预测句子中单词的上下文。
一种用于生成词嵌入的流行方法是Word2Vec,它使用浅层神经网络来预测给定目标词的周围词 (上下文)。Word2Vec中有两种方法: 连续单词袋 (CBOW) 和Skip-Gram。在CBOW中,该模型使用上下文单词来预测目标单词,而在Skip-Gram中,目标单词用于预测上下文。通过训练,模型调整神经网络中的权重,以创建表示单词语义属性的向量。
另一种广泛使用的方法是GloVe (单词表示的全局向量),它使用矩阵分解来基于语料库中单词的共现统计生成单词嵌入。Word2Vec和GloVe都会产生单词嵌入,将向量空间中的相似单词组合在一起,这使得它们在情感分析、语言翻译和信息检索等任务中非常有用。