我正在尝试检索语料库中具有最大和最小余弦相似性分数的文档对。 这是我的最大相似度得分代码:
def get_high_sim(self):
""" Returns the maximum similarity score """
flag = -1
maximum = (flag, 0, 0)
for d1 in self.sim_matrix.keys():
for d2 in self.sim_matrix[d1].keys():
if d1 != d2: #ignoring similarity with itself
if self.active_clusters[d1] != -1 and self.active_clusters[d2] != -1: #checking if cluster is active
score = self.sim_matrix[d1][d2]
if score > flag and score != 1:
flag = score
maximum = (flag, d1, d2)
return maximum
这似乎工作得非常好。但我的最低相似度得分代码不起作用。
def get_lowest_sim(self):
""" Returns the minimum similarity score in the corpus"""
flag = -1
minimum = (flag, 0, 0)
for d1 in self.sim_matrix.keys():
for d2 in self.sim_matrix[d1].keys():
if d1 != d2: #ignoring similarity with itself
if self.active_clusters[d1] != -1 and self.active_clusters[d2] != -1: #checking if cluster is active
score = self.sim_matrix[d1][d2]
if score < flag:
flag = score
minimum = (flag, d1, d2)
return minimum
有人能帮我发现错误吗?提前谢谢!