Метод most_similar()
может принимать векторы в качестве источника поиска, но вы должны явно указать их как один член списка, предоставленного для параметра positive
метода, чтобы его logi c для более простой обработки происхождение (например, строка или список строк) не путается.
В частности, это должно работать с вашим другим кодом:
model23v.most_similar(positive=[differenceArr,])
В более общем плане вы можете предоставить списки векторов ( или словарные ключи для поиска векторов) к параметрам positive
и negative
этого метода, и метод объединит их (в соответствии с точными logi c, которые вы можете увидеть в исходном коде). Так, например, выдающийся пример word2ve c ...
wv('king') - wv('man') + wv('woman') = ?
... может быть выполнен с помощью метода most_similar()
без выполнения ваших собственных других векторных арифметических операций c:
sims = modelw2v.most_similar(positive=['king', 'woman'], negative=['man'])