Я пытаюсь получить пару документов с максимальным и минимальным значениями косинусного сходства в корпусе.
Это мой код для максимальной оценки сходства:
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
Может кто-нибудь помочь мне определить ошибку? Заранее спасибо!