request-free-img

大语言模型词向量的天才设计

2013年,谷歌公司的几位研究人员为了提升搜索引擎和语言处理工具的性能,想到:能不能让电脑通过分析海量文本,自动学会词的含义和关系?之后,在论文《Efficient Estimation of Word Representations in Vector Space》中,他们提出了一项划时代的技术——Word2Vec,并开源了代码。

Word2Vec 是一种把单词变成计算机能理解的词向量(Word Vectors)的方法,目标是让计算机知道单词之间的关系。比如,“狮子”和“老虎”存在关联,但“狮子”和“桌子”的区别就很大。

什么是词向量?

词向量(Word Vectors)是一种将单词表示为向量的技术。举个例子:

  • 北京位于北纬39°,东经116°,可以用向量表示为:[39°, 116°]
  • 天津的位置用向量表示为:[39°, 117°]
  • 重庆的位置用向量表示为:[29°, 106°]

从这些向量坐标可以看出,北京离天津很近,但北京离重庆较远。同样,词向量也采用了类似的向量表示方法,赋予每个词一个在向量空间中的位置,含义相近的单词在向量空间中靠得更近。例如,在词向量空间中,英语单词“cat”附近的单词可能是“dog”、“kitten”、“rabbit”。

词向量的复杂性与高维空间

人类语言中的文字非常复杂,不仅要表达单词是否相似,还要表达它们的颜色、品种、大小、行走方式等信息。因此,仅用二维空间坐标来表示远远不够。在大语言模型中,词向量往往需要成百上千维的向量空间。显然,人脑已无法想象如此高维的空间,而计算机却能轻松处理。

词向量的推理能力

词向量还有一个有趣的特性:可以通过向量运算来“推理”单词。例如,用“biggest”的向量减去“big”,再加上“small”,结果离得最接近的单词是“smallest”:

biggest – big + small ≈ smallest

通过简单的向量运算,词向量就能实现复杂的语义推理,这已经非常类似于人类的类比能力。

总结

是不是感到词向量真是一个天才的设计呢?它不仅让计算机理解了单词的含义和关系,还通过向量运算展现了惊人的语义推理能力,为现代自然语言处理技术奠定了基础。


更多问题探讨,请关注公众号:程序员角

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注