heuristi c, чтобы найти пары в матрице корреляции выше границы - PullRequest
0 голосов
/ 11 февраля 2020

У меня есть N векторов v размера m . Я могу вычислить корреляцию между двумя векторами следующим образом:

d = correlation(v1,v2)

Я хотел бы найти для каждого вектора v1 вектор пары v2, где значение корреляции выше 0,9. Я не могу вычислить матрицу корреляции, потому что у меня огромное количество векторов (N> 3 миллиона).
Наивный алгоритм выглядит так:

for v1 in vectors: 
  for v2 in vectors:
     if correlation(v1,v2) > 0.9:
        yield (v1,v2)
        break

У вас есть лучший алгоритм, чтобы предложить? Я думаю, что я могу сделать это, используя алгоритм heuristi c, потому что я не хочу максимального значения корреляции, а просто одно из других, где корреляция находится среди порога.

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