Неспособность построить индекс с большими наборами данных, по-видимому, занимает бесконечное время

#python #annoy

#python-раздражает

Вопрос:

Я использовал annoy для создания индекса для 2 миллионов векторов размером 1024. Вот код, который я использовал.

 f = 1024
t = AnnoyIndex(f, 'euclidean')
t.on_disk_build('test.ann')

'''code for adding 2 million vectors'''

t.build(25)
 

После добавления векторов t.build(25) выполняется вечно. (Я позволяю ему работать около шести часов, и он не завершается)
Тем не менее, код отлично работает с 1 миллионом векторов.

Комментарии:

1. Я нахожусь в аналогичном положении, и мне нужно использовать раздражение для большого набора данных (~ 1 миллион векторов). не могли бы вы поделиться со мной своим опытом и сообщить, сколько памяти он использует для такого большого набора данных и сколько времени требуется для создания индекса?

2. github.com/spotify/annoy/issues/526