Question

Je souhaiterais en savoir plus sur le traitement du langage naturel (PNL) et suis curieux de savoir si existe-t-il actuellement des stratégies de reconnaissance des noms propres dans un texte qui ne sont pas basées sur la reconnaissance de dictionnaire? Aussi, est-ce que quelqu'un pourrait expliquer ou créer un lien vers des ressources expliquant les méthodes actuelles basées sur les dictionnaires? Qui sont les experts faisant autorité en PNL ou quelles sont les ressources définitives sur le sujet?

Était-ce utile?

La solution

La tâche consistant à déterminer la partie exacte du discours d'un mot dans un texte s'appelle Partie de l'identification vocale . Le marqueur Brill , par exemple, utilise un mélange de mots du dictionnaire (vocabulaire) et de règles contextuelles. Je crois que certains des mots du dictionnaire initiaux importants pour cette tâche sont les mots vides. Une fois que vous avez (généralement correct) des parties du discours pour vos mots, vous pouvez commencer à construire des structures plus grandes. Ce livre destiné à l'industrie distingue la reconnaissance de phrases nominales (NP) et la reconnaissance d'entités nommées. À propos des manuels scolaires: Comprendre le langage naturel d'Allen est un bon livre, mais un peu daté . Fondements du traitement statistique du langage naturel est une belle introduction à la PNL statistique. Le Traitement de la parole et du langage est un peu plus rigoureux et peut-être plus autoritaire. L'Association pour la linguistique computationnelle est une communauté scientifique de premier plan dans le domaine de la linguistique informatique.

Autres conseils

Outre l'approche basée sur le dictionnaire, deux autres me viennent à l'esprit:

  • Approches basées sur des modèles (sous une forme simple: tout ce qui est en majuscule est un nom propre)
  • Approches d'apprentissage automatique (marquer les noms propres dans un corpus de formation et former un classificateur)

Le champ est principalement appelé extraction d'entité nommée et souvent considéré comme un sous-champ d'extraction d'informations . Le chapitre correspondant du Oxford Handbook of Linguistics Computational constitue un bon point de départ pour les différents domaines de la PNL. :

 Oxford manuel sur la linguistique informatique
(source: oup.com )

Essayez de rechercher "reconnaissance d’entité nommée" - c’est le terme utilisé dans la littérature sur la PNL pour désigner ce type de chose.

Cela dépend de ce que vous entendez par dictionnaire.

Par exemple, une stratégie consisterait à prendre des choses que ne sont pas dans un dictionnaire et à essayer de partir de l’hypothèse qu’elles sont des noms propres. Si cela conduit à une analyse sensible, considérez l’hypothèse provisoirement validée et continuez, sinon concluez qu’elles ne le sont pas.

Autres idées:

  • En tant que sujet, tout sujet simple sans déterminant est un bon candidat.
  • Idem dans les phrases prépositionnelles
  • Dans n'importe quelle position, la base d'un déterminant possessif (par exemple, Bob dans "la soeur de Bob") est un bon candidat

- MarkusQ

Quelques trousses à outils suggérées: 1. Opennlp: il existe un composant de reconnaissance d'entité nommée pour votre tâche 2. LingPipe: également un composant NER pour cela 3. Paquet de PNL de Stanford: excellent paquet pour un usage académique, peut-être pas commercial amical. 4. nltk: un paquet NLP Python

si vous avez une phrase telle que "qui est la porte de la facture" Et si vous y appliquez une partie du tagueur de parole. Il va répondre comme

"qui / WP est / VBZ facture / NN portes / NNS? /. "

Vous pouvez essayer ceci en ligne sur http://cst.dk/online/pos_tagger/uk/

Vous obtenez donc quels sont tous les noms dans cette phrase. Maintenant, vous pouvez facilement extraire ces noms avec un algorithme. Je suggère d'utiliser python si vous utilisez le traitement du langage naturel. Il contient la boîte à outils NLTK (langage naturel) avec laquelle vous pouvez travailler.

Si vous êtes intéressé par la mise en œuvre du traitement du langage naturel et que python est votre langage de programmation, cette ressource peut être très informative: http://www.youtube.com/watch?v=kKe4M4iSclc

Bien que ce soit pour la langue bengali, mais il peut dessiner une procédure commune identifiée nom propre. J'espère donc que cela vous sera utile. Veuillez vérifier le lien suivant: http://www.mecs-press.org/ijmecs /ijmecs-v6-n8/v6n8-1.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top