「AI 怎么看出两句话像不像?余弦相似度这把尺」

先给结论:它量的是"方向"不是"字数"
两句话像不像,人一眼能瞅出来。可机器看文字是瞎的,得先把文字变成一串数字(也就是向量),再比这串数字。余弦相似度干的就是这个"比"的活:它不算两段文字重合了几个词,而是算它们对应的向量"指向"是不是同一个方向。
米岸AI 打个比方:一篇写"猫爱吃鱼"、一篇写"喵星人就好这口腥的",字面没几个字一样,但意思一个样,余弦相似度就高。它比的是"神似",不是"字同",这点比数重合词高明。
向量是啥,先掰扯明白
机器没法直接吃汉字,得把每个词、每句话压成一串数字,这串数字就是向量。意思相近的词,压出来的数字"方向"也近。比如"高兴"和"开心"的向量,挨得就比"高兴"和"扳手"近得多。
这一步叫"嵌入",是后面所有比对的地基,余弦相似度要量也是量这串数字。地基打歪了,余弦相似度再准也白搭。同一句话换个写法,向量也差不离,这正是它能认近义词的底子。
余弦这把尺子咋量的
两个向量往坐标系里一放,连到原点,就成了两根带方向的箭头。余弦相似度量的是这两根箭头之间的夹角:夹角越小(越并肩),分数越接近 1,表示越像;夹角越大(背道而驰),分数越接近 0 甚至负数,表示越不沾边。
重点来了:它只看角度,不看长度。所以一段话写得很长、另一段很短,只要"意思走向"一致,余弦相似度照样高。这正是它比"数重合词"聪明的地方,长度不一样也照量不误。
它都藏在哪儿干活
你用搜索,输入"怎么治感冒",它给你蹦出"流行性感冒咋缓解"——背后就是余弦相似度在比 query 和文章的向量。你用查重,两篇论文换汤不换药,它也能闻出味儿来。还有推荐,"看过这个的人还看了那个",很多也是靠相似度配对。
说白了,只要活儿是"找相似的",基本都绕不开这把尺子。把这类活儿交给它,比人肉翻资料快得多,也稳得多,所以它才能躲在那么多产品背后。
它也有犯迷糊的时候
余弦相似度认向量不认人话。万一嵌入模型本身把两个不相干的东西学近了,它也就跟着错。还有反话——"这服务真棒"和"这服务真棒(反讽)",向量可能一样,意思却相反,它就分不出来了。
所以正经系统不会光靠它一根柱子,往往配上关键词、规则一起判。米岸AI 提醒一句:相似度高分,不等于真相关,别被一个漂亮数字带沟里。
常见问题
问:余弦相似度和"重合词数量"差在哪儿?
答:重合词数只看字面有几个字一样,容易被同义词骗;余弦相似度看语义方向,能认出"换了个说法但一个意思"。
问:分数为 1 就代表两句话一模一样吗?
答:代表语义方向非常接近,但不一定是逐字相同。它量的是"像",不是"等于"。
问:普通用户能直接用它吗?
答:你一般碰不到原始分数,但它躲在搜索、推荐、查重背后替你干活。看懂原理,就知道为啥有时搜出来"不太对味"。
问:米岸AI 说的向量从哪来?
答:来自"嵌入"模型,把文字压成数字串。向量质量直接决定余弦相似度靠不靠谱。
本文由米岸AI整理。








