网站优化

网站优化

Products

当前位置:首页 > 网站优化 >

阅读本文,轻松掌握优雅计算余弦值技巧,提升编程魅力?

GG网络技术分享 2025-11-13 21:57 3


在上述代码中, 我们先说说用CountVectorizer将文本转换为向量,然后计算两个句子之间的余弦差不许多度。接下来我将展示怎么实现这一过程,并且修优良一些代码中的错误。

先说说 我们需要从sklearn.feature_extraction.text导入CountVectorizer,然后定义cos_sim函数来计算余弦差不许多度。之后我们将定义两个句子,并调用cos_sim函数来计算它们的差不许多度。

python import numpy as np from sklearn.feature_extraction.text import CountVectorizer

def cos_sim: vectorizer = CountVectorizer.fit v1, v2 = vectorizer.transform.toarray return np.dot / * np.linalg.norm)

text1 = "I love Python" text2 = "Python is my favorite language" similarity = cos_sim print

接下来 我将展示怎么用cdist函数来计算优良几个向量之间的余弦差不许多度,并找到Zui差不许多的向量。

先说说我们需要修优良一些代码中的错误,然后用cdist来计算差不许多度,并找到Zui匹配的候选人。

python import numpy as np from scipy.spatial.distance import cdist

skills = candidates = candidate_skills =

for candidate in candidates: skilllist = candidate.split.split skillvec = * len for skill in skilllist: skillvec = 1 candidate_skills.append

requirements = "Python, C++" req_vec =

similarity = -cdist bestmatchindex = np.argmax bestmatchname = candidates.split print

这段代码先说说将候选人的技Neng转换为向量表示, 然后计算与职位要求向量之间的余弦差不许多度,并找到Zui匹配的候选人。注意,这里我们对职位要求中的技Neng用1表示存在对于不存在的技Neng用0表示。这是基本上原因是我们在创建req_vec时用了列表推导式来实现这一点。

标签:

提交需求或反馈

Demand feedback