词嵌入将词语转化为有意义的实数向量,使语义相近的词在空间中距离更近。它解决了独热编码稀疏且无法体现词间关系的缺陷,通过上下文学习获得语义。主流方法有Word2Vec、GloVe、FastText及BERT等上下文感知模型。使用时需注意领域适配、维度选择和中文分词。
什么是NLP词嵌入?新手入门必看教程
作者:技术拾光
时间:2026-06-03
浏览:279
文章目录
到底什么是词嵌入?
词嵌入,通俗来说,就是将词语转换为计算机能够处理的一组数字。但这并非简单的编号,而是一串具有实际意义的实数——例如 [-0.82, 1.34, 0.07, ……]——用来表示一个词。这组数字背后蕴含着深层规律:含义越相近的词语,它们的数字向量在空间中距离越近。这就像为每个词绘制了一幅“语义地图”,相似的概念会自动聚集在一起。

为什么不能直接使用文字?
计算机只能识别数字,无法直接处理“苹果”、“香蕉”这类字符串。早期采用独热编码方法,例如词汇表中第5个词是“猫”,就将其表示为 [0,0,0,0,1,0,……]。但这种方法存在明显缺陷:
- 向量极度稀疏,维度随词汇量爆炸式增长(1万个词就需要1万维向量)
- 所有词之间的距离完全相同,无法体现“猫”与“狗”比“猫”与“汽车”更相关
- 模型无法学习任何语义规律,只能进行简单的统计匹配
词向量如何“理解语义”?
词嵌入的工作原理是让模型在海量文本中“观察”一个词周围经常出现的词语,然后反复调整每个词的向量。上下文越相似的词,它们的最终向量也越相似。这种学习方式带来了几个直观表现:
- 语义相近的词,向量余弦相似度较高,例如“医生”与“护士”
- 语法角色一致的词,向量方向趋于一致,例如“跑”、“跳”、“游”都指向动作类
- 甚至可以进行类比运算,经典案例:“国王” “男人” + “女人” ≈ “王后”
常见的词嵌入方法有哪些?
在自然语言处理领域,词嵌入模型好比不同的厨艺流派,手法各异但目标一致:制作出低维(通常50-300维)、稠密、高质量的“词向量”。主流方法包括:
- Word2Vec:Google于2013年推出的明星模型,包含CBOW(用上下文预测中心词)和Skip-gram(用中心词预测上下文)两种训练方式。优点是速度快、效果稳定,适合大多数通用场景。
- GloVe:斯坦福团队研发。先统计全局词共现频次,再通过矩阵分解压缩信息,更强调词对在整体语料中的统计关系。
- FastText:Facebook开发,将词拆解为字符级别的n-gram(例如“apple”拆成“app”、“ppl”、“ple”)。这样做的好处是,即使遇到未见过的词或拼写变体,也能组合出它的向量。
- ELMo / BERT等上下文感知模型:更先进的思路。它们不再为每个词分配固定向量,而是根据词所在的句子动态生成。例如“苹果”在“吃苹果”和“苹果公司”两个语境中,向量完全不同。
实际使用时需要注意什么?
新手使用词嵌入时,有几个常见问题需要留意:
- 不要盲目信任预训练向量。如果领域差异较大,例如处理医疗或法律文本,直接使用通用领域的预训练向量效果会打折扣。最好用本领域语料进行微调,或者重新训练。
- 向量维度并非越高越好。100-200维通常能平衡效果与效率,超过300维收益有限,反而增加计算负担。
- 停用词是否需要过滤?取决于具体任务。进行情感分析时,语气词如“了”、“啊”可能包含情感信息;而进行关键词提取时,通常建议过滤掉。
- 中文必须进行分词。像“人工智能”这样的词,如果不先分词(例如使用jieba),直接作为整体输入,模型就无法学习“人工”和“智能”各自的语义,相当于丢失关键信息。
实用工具推荐
电子包浆
使用 ›绿化、压缩、噪点和虚拟水印,自由调节做旧程度。
图片压缩
使用 ›选择画质和输出格式,预览压缩前后的大小。
相关文章