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