Расчет минимального значения косинусного сходства - PullRequest
0 голосов
/ 01 мая 2018

Я пытаюсь получить пару документов с максимальным и минимальным значениями косинусного сходства в корпусе. Это мой код для максимальной оценки сходства:

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

Может кто-нибудь помочь мне определить ошибку? Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...