В данный момент я использую spaCy для определения семантического сходства между двумя строками. Он работает хорошо и требует всего пару строк кода, а вся работа выполняется за кулисами:
>>> import spacy
>>> nlp = spacy.load('en')
>>> nlp('string').similarity(nlp('another string'))
0.796
Однако для этого требуется ~ 600 МБ данных модуля. Поскольку я размещаюсь на Heroku, это намного превышает доступный размер слагов. Я рассматриваю другие альтернативы хостингу, но есть ли другой фреймворк, который я мог бы использовать? Мне не нужна «промышленная сила» spacy, но другие фреймворки, похоже, работают не так хорошо/не так быстро реализуются.
python -m spacy.en.download glove
. Если это само по себе стоит вам 600 МБ, то я не уверен, есть ли для вас какая-либо альтернатива, поскольку большая часть этого хранилища занята векторами для почти 13 000 слов, хранящихся в spaCy, и любое меньшее количество данных приведет к худшей точности. - person spicypumpkin   schedule 16.03.2017