2017-09-06 11 views
1

J'ai un mot, disons 'USA', et un document textuel. Je veux savoir si le document dans son ensemble concerne les «USA» ou non. Le mot «USA» pourrait être mentionné 100 ou 1000 fois dans le document, mais à la fin de la journée, le document pourrait parler de la Chine. J'ai parcouru les bibliothèques d'analyse de sentiments en Python, mais ces bibliothèques ne retourneront que si le doc a mentionné le mot d'une manière positive, négative ou neutre.Python fournit-il des bibliothèques pour les relations textuelles?

Je peux également compter combien de fois le mot mentionné, et la similitude entre le mot et chaque mot dans le document, mais ne sais toujours pas comment dire si le document dans son ensemble est sur le mot mentionné ou non.

Y a-t-il des bibliothèques dans python pour cela ou des API?

+0

vérifier la modélisation du sujet ici: https://textacy.readthedocs.io/en/latest/ – MedAli

+0

@MedAli Merci, je vais prendre un Regarde ça. – codeDojo

+0

Je pense que le code donné dans ce lien pourrait être utile. Utilisez ce code pour estivaliser un texte en une phrase qui a le plus de fréquence de mots. https://github.com/assafelovic/nlp_url_summarizer –

Répondre

1

Il n'y a pas vraiment de bonnes bibliothèques de solutions complètes pour cela. Vous voudrez probablement utiliser quelque chose comme NLTK pour le mot stemming et l'analyse (http://www.nltk.org). Stemming est la suivante: "Ferrari -> voiture de sport -> voiture -> transport", ce qui vous permet de voir le concept "base" d'un mot. Ensuite, vous voudrez probablement faire une sorte d'analyse TF/IDF pour déterminer exactement de quoi parle le document. Cela vous aidera à déterminer quels mots sont importants (http://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.TfidfVectorizer.html).

Un bon tutoriel sur TF/IDF peut être vu ici: http://stevenloria.com/finding-important-words-in-a-document-using-tf-idf/

+0

Merci beaucoup, je vais jeter un coup d'oeil! – codeDojo