词向量
词向量
一、为什么需要词向量
在自然语言处理中,文本最终需要交给模型进行计算,但模型只能处理数值,无法直接理解文字。因此,一个最基础的问题是:
如何把“词”转化为计算机可以处理的数值形式?
词向量正是为了解决这个问题而提出的。
它的目标是:
用向量来表示词,并尽量让向量之间的几何关系反映词与词之间的语义关系。
在学习 NLP 的过程中,我逐渐认识到,词向量并不是某一种具体算法,而是一整类文本表示思想的统称。
二、什么是词向量
词向量可以理解为:
为每一个词分配一个向量,用这个向量来表示该词在语言中的语义特征。
理想状态下,词向量应该满足以下直觉:
- 语义相近的词,向量距离更近
- 语义差异大的词,向量距离更远
- 向量之间可以进行计算和比较
这使得文本不再只是离散的符号,而是进入了一个可以进行数学运算的向量空间。
三、词向量的发展路线
在实际学习过程中,我接触到的词向量相关方法大致可以归纳为一条清晰的演进路线:
- One-Hot 编码
最简单、最直观的词表示方式 - Word2Vec
通过上下文学习词的语义表示 - FastText
在 Word2Vec 基础上引入子词信息 - Embedding
在神经网络中作为可训练参数存在的词向量表示
这些方法并不是相互替代关系,而是解决问题角度逐步深化的过程。
四、词向量解决了什么问题
在没有词向量之前,文本只能以离散符号的形式存在,这会带来几个严重问题:
- 词与词之间没有相似度概念
- 模型无法泛化到相似表达
- 语义关系无法被计算
词向量的引入,使得模型能够:
- 比较不同词的语义相似度
- 在向量空间中学习语言规律
- 为后续的序列模型和预训练模型提供基础表示
可以说,词向量是现代 NLP 的基础组件之一。
五、小结
词向量并不是某一个具体的模型,而是一种将语言映射到向量空间的核心思想。

浙公网安备 33010602011771号