gensim返回的Similarity Score(相似度得分)具体代表什么含义?
Gensim相似度得分属性判断解答
你的判断基本正确,不同算法的返回值细节如下:
- 标准Cosine similarity:你通过Gensim拿到的similarity score确实是两个向量的余弦值。如果你用的是词袋、TF-IDF这类非负向量输入,返回值会落在[0,1]区间,1代表完全匹配,0代表完全不相关;如果输入是带负值的向量(比如未归一化的词嵌入向量),取值范围会扩展到[-1,1]。
- Soft cosine similarity:Gensim默认配置下返回的similarity score是加权后的余弦值。和标准余弦的区别是计算内积时引入了词对的语义相似度做加权,以此识别语义层面的相似性,默认开启向量归一化的前提下,取值范围和标准余弦完全一致。只有当你手动指定
normalize=False参数调用softcossim接口时,返回值才会是加权内积而非余弦值。 - 补充说明你提到的Mover measures:这类算法的返回值不属于余弦值范畴,是基于词移距离转换得到的语义相关性得分,取值逻辑和前两类算法不同。
你可以做简单验证:输入两个完全一致的文本,若返回得分等于1,即可确认你当前调用配置下拿到的是归一化后的余弦值。
内容的提问来源于stack exchange,提问作者Baran Seil Sepour
相关产品推荐
相关产品推荐

