Aide concernant NER en NLTK

12

Je travaille en NLTK depuis un certain temps en utilisant Python. Le problème auquel je suis confronté est qu'il n'y a aucune aide disponible sur la formation NER en NLTK avec mes données personnalisées. Ils ont utilisé MaxEnt et l'ont formé sur le corpus ACE. J'ai beaucoup cherché sur le Web, mais je n'ai trouvé aucun moyen de former le NER de NLTK.

Si quelqu'un peut me fournir un lien / article / blog, etc. qui peut me diriger vers le format de jeux de données de formation utilisé dans la formation du NER de NLTK, je peux donc préparer mes jeux de données sur ce format particulier. Et si je suis dirigé vers un lien / article / blog, etc. qui peut m'aider à former le NER de NLTK pour mes propres données.

C'est une question largement recherchée et la moins répondue. Pourrait être utile à quelqu'un à l'avenir dont le travail avec NER.

Sarmad
la source
Post
Franck Dernoncourt

Réponses:

4

La formation d'un modèle, lié à l' extraction d'informations , en général, et à la reconnaissance / résolution d'entités nommées (NER) , en particulier, est décrite en détail dans le chapitre 7 du livre NLTK , disponible en ligne à cette URL: http: //www.nltk .org / book / ch07.html .

De plus, je pense que vous pourriez trouver utile ma réponse connexe sur le site Cross Validated . Il contient de nombreuses références à des sources pertinentes sur le TNS et des sujets connexes ainsi qu'à divers outils logiciels connexes .

Aleksandr Blekh
la source
Ils ne mentionnent pas comment former le modèle NER sur des données personnalisées, pouvez-vous dire comment le faire?
Hima Varsha
1
@HimaVarsha Je ne suis pas un expert dans ce domaine. Cependant, ... Je pense que le modèle NLTK NER est pré-formé sur le corpus conll2000 , donc aucune information dans le livre NLTK. Vérifiez les ressources suivantes: 1. nltk-trainer.readthedocs.io (probablement ce dont vous avez besoin; probablement la section Training IOB Chunkers ). 2. sujitpal.blogspot.com/2012/11/11/… (pourrait également être utile). 3. nlp.stanford.edu/software/crf-faq.shtml#a (si vous utilisez ou déciderez d'utiliser le logiciel Stanford NER).
Aleksandr Blekh
Je pense que l'implémentation de stanfordcrf prend des données personnalisées, mais NTLK NER est juste pré-formé. Le Training IOB Chunkers est juste en train de découper, non? Ou fait-il même NER?
Hima Varsha
@HimaVarsha Veuillez prêter plus d'attention aux conseils que vous recevez. Si vous lisiez attentivement le message via le lien # 2 ci-dessus, vous verriez que le code y fait à la fois la formation et l'exécution du modèle NER. Je ne pense pas pouvoir vous aider au-delà des conseils ci-dessus.
Aleksandr Blekh
3

Cet article est-il assez bon? http://www.succeed-project.eu/wiki/index.php/NLTK#Input_format_for_training

Il y a une explication sur l'apparence du corpus.

Vos données doivent être au format IOB (mot tag chunktag) pour le faire fonctionner.
Eric NNP B-PERSON
est VB O
le
PDG d' AT B-NP NN I-NP
de IN O
Google NNP B-ORGANIZATION

MaticDiba
la source
1
Il serait idéal de publier un bref résumé de l'article dans cette réponse.
sheldonkreger
1

J'ai trouvé ce tutoriel très utile: Guide complet pour construire votre propre Named Entity Recognizer avec Python Il utilise le corpus Groningen Meaning Bank (GMB) pour former son morceau NER.

Après cela, vous pouvez consulter ce tutoriel de la même personne: Formation d'un système NER à l'aide d'un grand ensemble de données Où il utilise scikit learn pour améliorer les performances de son système.

Enfin, quelques tutoriels vraiment utiles peuvent être trouvés ici: Tutoriel NLTK Ce gars a une chaîne youtube avec beaucoup de tutoriels dans de nombreux sujets (ML, NLP, Python ...)

J'espère que cela aide.

Iraklis Moutidis
la source