语言思辨前沿

词向量:用数学表示词语

7 分钟

计算机怎么理解词的意思?词向量是现代 NLP 的基石--它把词语变成数字,让机器能「计算」语言。

为什么需要词向量

计算机只懂数字,不懂文字。要让计算机处理语言,第一步就是把文字变成数字。但简单的编码(如 a=1, b=2)没有意义--它不包含语义信息。

词向量的思路:用一串数字(向量)表示一个词的意思,意思相近的词数字也相近。

词向量的核心思想

语言学有一个假说:「上下文相似的词,意思也相似」。如果你看到「猫坐在沙发上」和「狗坐在沙发上」,猫和狗出现在相似的上下文中,说明它们意思相近。

词向量算法做的就是:统计每个词的上下文,用这些统计信息生成一个向量。

著名的词向量方法

  1. Word2Vec(2013,Google):用神经网络学习词向量。生成的向量可以做数学运算:

    • 国王 - 男人 + 女人 ≈ 女王
    • 巴黎 - 法国 + 中国 ≈ 北京
    • 这说明向量确实捕获了语义关系
  2. GloVe(2014,斯坦福):基于全局统计信息

  3. BERT 词向量(2018,Google):考虑上下文的动态向量。同一个词在不同句子里有不同的向量

词向量的应用

  • 机器翻译:不同语言的词向量可以对齐
  • 情感分析:好的词和坏的词向量方向相反
  • 推荐系统:用词向量推荐相似内容
  • 搜索引擎:理解查询的语义,不只匹配关键词

词向量的局限

  • 一词多义:旧方法一个词一个向量,但「苹果」可以指水果也可以指公司
  • 反义词可能被归为近义:因为反义词常出现在相似上下文中
  • 文化偏见:词向量会学习训练数据中的偏见(如「医生」更接近男性词)

练习:用 Word2Vec 的在线演示(如 TensorFlow Embedding Projector),搜索一个词,看它周围的词是什么。你能理解为什么这些词被归在一起吗?

小纸条

词向量是什么?它怎么表示词的意思?有什么应用和局限?

登录 后可看答案