शब्दों की शब्दार्थ समानता का पता लगाने का सबसे अच्छा तरीका क्या है? Word2Vec ठीक है, लेकिन आदर्श नहीं:
# Using the 840B word Common Crawl GloVe vectors with gensim:
# 'hot' is closer to 'cold' than 'warm'
In [7]: model.similarity('hot', 'cold')
Out[7]: 0.59720456121072973
In [8]: model.similarity('hot', 'warm')
Out[8]: 0.56784095376659627
# Cold is much closer to 'hot' than 'popular'
In [9]: model.similarity('hot', 'popular')
Out[9]: 0.33708479049537632
NLTK के वर्डनेट तरीके सिर्फ देने के लिए दिखाई देते हैं:
In [25]: print wn.synset('hot.a.01').path_similarity(wn.synset('warm.a.01'))
None
अन्य विकल्प क्या हैं?