Bootstrap

什么是词嵌入?Word2Vec、GloVe 与 FastText 的区别

自然语言处理(NLP)领域的核心问题之一,是如何将人类的语言转换成计算机可以理解的数值形式,而词嵌入(Word Embedding)正是为了解决这个问题的重要技术。本文将详细讲解词嵌入的概念及其经典模型(Word2Vec、GloVe 和 FastText)的原理与区别。

1. 什么是词嵌入(Word Embedding)?

定义

词嵌入是一种将单词表示为低维向量的方法,这种向量能够捕捉单词的语义和语法特性。通过词嵌入,单词之间的语义相似性可以用向量之间的距离来衡量。

为什么需要词嵌入?

  1. 传统方法的局限性

    • 词袋模型(Bag of Words, BoW)

      • 忽略单词顺序。

      • 向量维度高,稀疏性严重。

    • TF-IDF

      • 无法捕捉单词之间的语义关系。

  2. 词嵌入的优势

    • 通过训练,单词之间的语义关系被映射到向量空间。

    • 单词的语义相似性可以通过向量的距离衡量。

    • 能更高效地表示文本内容,适合用于深度学习模型。

一个通俗的例子

词嵌入让计算机理解:

  • "国王 - 男人 + 女人 = 女王"

  • "巴黎 - 法国 + 意大利 = 罗马"

这表示词嵌入不仅能捕捉单词之间的表面相似性,还能理解它们在语义上的逻辑关系。

2. 经典词嵌入模型

(1)Word2Vec

;