Python - Interface WordNet

WordNet est un dictionnaire d'anglais, similaire à un thésaurus traditionnel NLTK comprend l'anglais WordNet. Nous pouvons l'utiliser comme référence pour obtenir le sens des mots, un exemple d'utilisation et une définition. Une collection de mots similaires est appelée lemmes. Les mots dans WordNet sont organisés et les nœuds et les bords où les nœuds représentent le mot texte et les bords représentent les relations entre les mots. ci-dessous, nous verrons comment nous pouvons utiliser le module WordNet.

Tous les lemmes

from nltk.corpus import wordnet as wn
res=wn.synset('locomotive.n.01').lemma_names()
print res

Lorsque nous exécutons le programme ci-dessus, nous obtenons la sortie suivante -

[u'locomotive', u'engine', u'locomotive_engine', u'railway_locomotive']

Définition de mot

La définition du dictionnaire d'un mot peut être obtenue en utilisant la fonction de définition. Il décrit le sens du mot tel que nous pouvons le trouver dans un dictionnaire normal.

from nltk.corpus import wordnet as wn
resdef = wn.synset('ocean.n.01').definition()
print resdef

Lorsque nous exécutons le programme ci-dessus, nous obtenons la sortie suivante -

a large body of water constituting a principal part of the hydrosphere

Exemples d'utilisation

Nous pouvons obtenir les phrases d'exemple montrant des exemples d'utilisation des mots en utilisant le exmaples() fonction.

from nltk.corpus import wordnet as wn
res_exm = wn.synset('good.n.01').examples()
print res_exm

Lorsque nous exécutons le programme ci-dessus, nous obtenons la sortie suivante -

['for your own good', "what's the good of worrying?"]

Mots opposés

Obtenez tous les mots opposés en utilisant la fonction antonyme.

from nltk.corpus import wordnet as wn
# get all the antonyms
res_a = wn.lemma('horizontal.a.01.horizontal').antonyms()
print res_a

Lorsque nous exécutons le programme ci-dessus, nous obtenons la sortie suivante -

[Lemma('inclined.a.02.inclined'), Lemma('vertical.a.01.vertical')]