词向量与语义理解
入门·10 分钟·面向零基础读者系统讲解「词向量与语义理解」:从概念定义、工作流程、通俗案例、常见误区到实践练习,帮助你真正理解 AI 基础知识。
词向量与语义理解
词向量是把词语、句子或文档转换成数字向量的方法。它让计算机可以用数学方式比较语义相似度,是搜索、推荐、RAG 和大语言模型应用中的基础概念。
为什么要把文字变成向量
计算机不能直接理解“猫”“狗”“汽车”这些词的意义。它需要数字。最简单的方法是给每个词一个编号,但编号没有语义:编号 12 和 13 并不表示两个词更相近。
词向量的目标是让语义相近的词在向量空间中距离更近。例如“医生”和“医院”通常比“医生”和“火山”更接近。
一个直观比喻
你可以把向量空间想象成地图。城市在地图上有坐标,距离近的城市地理上更接近。词语在语义地图上也有坐标,距离近的词语语义更相关。
当然,语义空间不是二维地图,而是几百甚至几千维的数字空间。
词向量能做什么
- 相似文本搜索:输入一个问题,找到语义相近的文档。
- 推荐系统:找到与用户兴趣相近的内容。
- 聚类分析:把相似文本自动分组。
- RAG 检索:先用向量找资料,再让大模型生成答案。
- 去重和匹配:发现表达不同但意思相近的内容。
余弦相似度是什么
比较两个向量常用余弦相似度。它关心两个向量方向是否接近,而不是长度是否一样。
如果两个句子的向量方向很接近,说明它们表达的语义可能相似。例如“如何申请退款”和“退款流程是什么”虽然字面不同,但语义很接近。
词向量不等于真正理解
词向量很有用,但不能神化。它可能把表面相似但事实不同的内容排在一起,也可能忽略否定词和细节差异。
例如“这个药适合儿童”和“这个药不适合儿童”只有一个“不”字不同,但含义完全相反。向量检索时必须配合重排、规则或人工审核。
在RAG中的位置
RAG 系统通常这样使用向量:
- 把文档切成小段。
- 把每段转换成向量。
- 用户提问时,也把问题转换成向量。
- 在向量数据库中找最相近的文档片段。
- 把这些片段交给大模型生成答案。
如果切分不好或向量模型不合适,后面的生成再强也可能答错。
学习建议
初学者可以先做一个小实验:准备 10 句意思相近和不相近的话,用 embedding 模型生成向量,再观察相似度排序。你会直观看到语义检索的优势和局限。
小结
词向量让文字可以被计算和比较,是现代 AI 应用的重要基础。但它解决的是“相似”问题,不保证“正确”问题。使用词向量时,必须结合场景、阈值、重排和事实校验。