Распространение сродства с векторами слов, более быстрая реализация - PullRequest
0 голосов
/ 14 января 2019

У меня есть список векторов слов (названных tuple_vectors - длина ~ 60k), каждый из которых выглядит следующим образом:

  [-2.84658718e+00 -7.74899840e-01 -2.24296474e+00 -8.69364500e-01
  3.90927410e+00 -2.65316987e+00 -9.71897244e-01 -2.40408254e+00
  1.16272974e+00 -2.61649752e+00 -2.87350488e+00 -1.06603658e+00
  2.93374014e+00  1.07194626e+00 -1.86619771e+00  1.88549474e-01
 -1.31901133e+00  3.83382154e+00 -3.46174908e+00 -2.94792175e-01
 -2.77922183e-01 -7.64171720e-01 -2.99903727e+00 -2.41594386e+00 ...

Я пытаюсь выполнить аффинное распространение (AP), используя следующее (это верхняя часть документации AP https://scikit -learn.org / stable / auto_examples / cluster / plot_affinity_propagation.html ):

print(__doc__)

from sklearn.cluster import AffinityPropagation
from sklearn import metrics

# Compute Affinity Propagation
af = AffinityPropagation(preference=-50).fit(tuple_vectors)
cluster_centers_indices = af.cluster_centers_indices_
labels = af.labels_

n_clusters_ = len(cluster_centers_indices)

Процесс занимает очень много времени. Мой вопрос заключается в том, существует ли более быстрая реализация или возможно ли выполнить AP для векторов этой размерности.

...