Cours-Gratuit
  • Accueil
  • Blog
  • Cours informatique
home icon Cours gratuits » Cours informatique » Cours programmation » Cours JAVA » Cours Framework JAVA

Cours pour débutant sur la bibliothèque JAVA OpenNLP

Cours pour débutant sur la bibliothèque JAVA OpenNLP
Participez au vote ☆☆☆☆☆★★★★★

Cours pour débutant sur la bibliothèque JAVA OpenNLP

...

OpenNLP

  • bibliothèque Java pour le traitement de texte en langage naturel

▫ Basé sur des outils d'apprentissage automatique

 entropie maximale, perceptron

Inclut des modèles prédéfinis pour certaines langues et des ressources de texte annotées

Est-ce que le travail est en cours ....

  • Tâches NLP prises en charge

▫ tokenisation

▫ segmentation de phrase

▫ marquage partiel

▫ extraction d'entité nommée

▫ chunking

▫ l'analyse

▫ résolution de coreference (expérimental)

Structure de la bibliothèque

  • La bibliothèque fournit des composants pour aborder des tâches spécifiques de la PNL.

Les composants peuvent être combinés pour créer un pipeline de traitement de PNL

Chaque interface de composant possède en général des méthodes pour

Exécuter la tâche de traitement NLP sur un flux de texte d'entrée donné

 former un modèle pour la tâche PNL à partir d'exemples

 évaluer un modèle sur des données de test

Functional Les fonctionnalités des composants sont accessibles via une API Java ou une interface de ligne de commande (CLI).

 lire le modèle à partir d'un fichier

 instancier le modèle

Exécuter la tâche de traitement

Tecnologie per l'elaborazione del linguaggio

SomeModel model = new SomeModel (new FileInputStream ("lang-model-name.bin"));

ToolName toolName = new ToolName (model);

String output [] = toolName.executeTask ("Ceci est un exemple de texte.");

Commande CLI

  • Le script opennlp permet d’exploiter les modules disponibles

OpenNLP 1.5.3. Utilisation: opennlp OUTIL où OUTIL est l’un des suivants:

 Doccat apprenable catégoriseur de documents

 Formateur DoccatTrainer pour le catégoriseur de documents pouvant être appris

 DoccatConverter convertit le format de données leipzig au format natif OpenNLP

 DictionaryBuilder construit un nouveau dictionnaire

 Générateur de jetons de classe de caractères SimpleTokenizer

 TokenizerME tokenizer apprenable

 TokenizerTrainer trainer pour le tokenizer apprenable

 Évaluateur TokenizerMEEvaluator pour le tokenizer à apprendre

 TokenizerCrossValidator validateur croisé en plis en K pour le tokenizer à apprendre

 ............

 ChunkerME apprenable chunker

 Formateur ChunkerTrainerME pour le chunker apprenable

 ......

 Coreferencer apprenable phrase nominale coreferencer

 CoreferencerTrainer

....

Détecteur de peine

  • La ponctuation est généralement utilisée pour définir les limites de la phrase.

Detector Le détecteur de phrases détecte si un caractère de ponctuation marque réellement la fin d'une phrase

Tous les caractères de ponctuation ne terminent pas une phrase. Le point final «.» Peut être utilisé dans les acronymes, les abréviations ou faire partie d’un jeton (adresses IP, URL Web).

  • La détection de phrase est en général effectuée avant la tokénisation
  • Les phrases sont définies par l’utilisation de caractères de ponctuation et non par leur contenu ou leur présentation graphique.

▫ les titres et les en-têtes de section peuvent ne pas être séparés correctement du corps

Pierre Vinken, âgé de 61 ans, rejoindra le conseil en tant qu'administrateur non exécutif le 29 novembre. M. Vinken est président du conseil de Elsevier N.V., groupe d'édition néerlandais.

1 - Pierre Vinken, 61 ans, rejoindra le conseil en tant qu'administrateur non exécutif le 29 novembre.

2 - M. Vinken est président du groupe d'édition néerlandais Elsevier N.V.

Détection de frontière

  • La détection de la limite de phrase est abordée comme une tâche de classification

Une occurrence de ".", "?" Et "!" Est une limite de phrase valide?

Une liste de signes de ponctuation ne suffit pas

 Le point-plein «.» A de nombreuses utilisations différentes (point décimal, points de suspension, abréviations, adresses de courrier électronique et Internet,…)

 La ponctuation peut être présente dans une citation incorporée

 “!” Et “?” Sont moins ambigus mais peuvent apparaître sous des noms propres (Yahoo!) ou peuvent être répétés pour en souligner le sens (sortir !!!)

Les règles de classification peuvent être apprises à partir d'exemples

 L'élaboration manuelle des règles de classification peut être une tâche coûteuse et sujette aux erreurs

Rules Règles et listes d'exceptions à base lexicale pour la désambiguïsation

 Les règles de débogage peuvent être difficiles en raison de la présence d'interactions entre elles (par exemple, les propriétés d'absorption: «Le président vit à Washington D.C.» et non «D.C ..»).

Un modèle peut être formé sur un corpus annoté avec des limites de phrases

C J.C. Reynar, A. Ratnaparkhi «Une approche par entropie maximale pour identifier les limites d'une phrase» dans la 5e Conférence sur la PNL appliquée, 1997

Caractéristiques d'entrée du classificateur 1

  • Les limites de phrases potentielles sont des jetons contenant "!", "?", "."

▫ Entrées classificateur (pour les textes financiers anglais)

Informations sur le jeton contenant la limite potentielle (candidat)

 Préfixe et suffixe (parties précédant et suivant le signe de ponctuation)

Présence de caractères particuliers dans les préfixes et suffixes

Si le candidat est honorifique (M., Prof., Dr., ..)

 Si le candidat est un représentant de la société (Corp., Inc., S.p.A ,, ..)

Caractéristiques du mot à gauche (droite) du candidat (contextes gauche et droits)

Contex des contextes plus larges n'augmentent pas de manière significative la précision du classifieur

Pierre Vinken, 61 ans, rejoindra le conseil en tant qu'administrateur non exécutif le 29 novembre.

Vinken est président du groupe d'édition néerlandais Elsevier N.V. Suffixe du préfixe du candidat

Nov.

Caractéristiques d'entrée du classificateur 2

  • La liste des abréviations peut être construite à partir des données d'apprentissage

Une abréviation est un jeton contenant un «.» Qui n'est pas une limite de phrase dans le corpus d'apprentissage.

  • entrées de classificateur

▫ Le préfixe et le suffixe

Si le préfixe ou le suffixe figure dans la liste des abréviations extraites

Les mots à gauche et à droite du candidat

▫ Si les mots du contexte sont des abréviations extraites

Le président de ANLP Corp., le Dr Smith, a démissionné.

PreviousWord = ANLP PrefixFeature = InducedAbbreviation

Suite = président

Préfixe = Corp

Suffixe = NULL

Classificateur d'entropie maximum

  • L’utilisation d’un jeton de limite est modélisée par la probabilité conjointe p (b, c) de son rôle réel et de son contexte.

B dans {true, false} représente si le jeton est une limite

▫ c est le contexte du jeton

  • Estimation de p (b, c) à partir de données

Corpor Les corpus de texte contiennent des informations sur la cooccurrence de b et c, mais pas assez pour spécifier complètement p (b, c) pour toutes les paires (b, c).

Nous avons besoin d'une méthode pour exploiter une faible quantité de preuves sur (b, c) afin d'estimer de manière fiable le modèle de probabilité

  • principe d'entropie maximum

La distribution «correcte» p (b, c) maximise l'entropie (incertitude) sous réserve des contraintes qui constituent la preuve (faits connus)

Principe d'entropie maximum

  • Si B est l’ensemble des classes (frontière, pas une limite) et C l’ensemble des contextes, l’estimation p (b, c) devrait

▫ maximiser l'entropie

▫ rester cohérent avec la preuve

  • La représentation de la preuve détermine la forme de p (b, c)

Evidence La preuve est codée comme k caractéristiques

Caractéristiques

  • Une fonctionnalité est une fonction à valeur binaire sur les événements.
  • Les caractéristiques représentent généralement une relation de cooccurrence entre la classe prédite b et le contexte.

▫ pour la détection de limite de phrase une fonctionnalité utile est

Un point à la fin du mot «M.» est peu probable d'être une limite de phrase

Probability la probabilité aura tendance à être élevée si le préfixe est «M.»

Le modèle nécessite de définir quelles fonctionnalités doivent être utilisées et non comment les utiliser

Contraintes de fonctionnalités

  • Les contraintes sur les fonctionnalités ont la forme

▫ est l'attente modèle de

Est l'attente observée de

▫ est la probabilité de (b, c) estimée sur le corpus d'apprentissage

L'hypothèse selon laquelle les entités ont une valeur binaire réduit les contraintes pour la somme d'ensembles de probabilités (c'est-à-dire les probabilités des événements pour lesquels l'entité est présente).

p (b, c) pour MaxEnt

  • Expression optimale pour la distribution de probabilité conjointe

Est une constante de normalisation

Sont les paramètres du modèle, pesant chacun la fonction correspondante, estimés à partir des exemples

  • Étant donné le modèle, le classifieur donne à la classe la maximisation de la probabilité conditionnelle

Pour la tâche de détection de limite, un signe de ponctuation est une limite si

Solution MaxEnt

  • Il peut être prouvé que l’expression de p (b, c) est la solution unique au problème de MaxEnt étant donné les contraintes de fonctionnalité.

▫ Étant donné les deux ensembles de fonctions de probabilité

Le théorème MaxEnt dit que si alors.

De plus, c'est unique.

La solution en tant que modèle à entropie maximale ne suppose pas de faits autres que ceux des contraintes

On peut prouver que la même expression est la solution à la formulation du maximum de vraisemblance, c’est-à-dire la distribution qui correspond le mieux aux données

Estimation du paramètre 1

  • Les paramètres de la solution sont déterminés par la procédure de mise à l'échelle itérative généralisée.

▫ Set

Ajouter une fonctionnalité de correction

Tel que

Estimation du paramètre 2

Tous les événements ont au moins une fonctionnalité active

La procédure suivante converge vers

▫ où

Estimation du paramètre 3

  • La moyenne observée pour chaque caractéristique est calculée par un compte normalisé sur le corpus de l'échantillon.
  • Le calcul de la moyenne estimée est insoluble dans un modèle avec k (chevauchement) des caractéristiques

Se compose de 2k événements distincts

Le calcul peut être approché en faisant la somme du contexte plutôt que de

PhraseDetector

  • invocation CLI
  • interface Java

Sentence Le PhraseDetectorTrainer peut être exploité pour former un nouveau modèle

Le fichier de formation contient une phrase par ligne

> opennlp SentenceDetector models / en-sent.bin

Chargement du modèle de détecteur de phrases ... terminé (0.22s)

Pierre Vinken, âgé de 61 ans, rejoindra le conseil en tant qu'administrateur non exécutif le 29 novembre. M. Vinken est président du conseil de Elsevier N.V., groupe d'édition néerlandais.

Pierre Vinken, 61 ans, rejoindra le conseil d’administration en tant que directeur non exécutif le 29 novembre.

  1. Vinken est président du groupe d'édition néerlandais Elsevier N.V.

Modèle SentenceModel = new PhraseModel (modelInputStream);

SentenceDetectorME phraseDetector = new SentenceDetectorME (modèle);

Phrases en chaîne [] = phraseDetector.sentDetect (textString);

Span phrases [] = sentenceDetector.sentPosDetect (textString);

Tokenizer

  • Le Tokenizer segmente une séquence de caractères d'entrée en jetons.

Mots, ponctuation, chiffres, ...

  • OpenNLP a plusieurs implémentations de Tokenizer

▫ Les séquences d'espaces non-blancs de Tokenizer sont identifiées comme des Tokens

▫ Tokenizer simple

Les séquences de la même classe de caractères sont des jetons.

Tok Tokenizer Approprié

Un tokenizer à entropie maximum; utilise un modèle de probabilité pour détecter les liens de jeton

> openNLP / bin / opennlp Modèles TokenizerME / en-token.bin

Chargement du modèle Tokenizer ... terminé (0.577s)

Pierre Vinken, 61 ans, rejoindra le conseil d’administration en tant que directeur non exécutif le 29 novembre.

Pierre Vinken, 61 ans, rejoindra le conseil d’administration en tant que directeur non exécutif le 29 novembre.

API Tokenizer

  • WhitespaceTokenizer et SimpleTokenizer peuvent être extraits du champ statique INSTANCE de la classe correspondante.
  • Pour installer TokenizerME, un modèle de jeton doit être créé.

Prob Les probabilités associées à chaque jeton peuvent être récupérées avec la méthode getTokenProbabilities ()

Le fichier de formation contient les jetons séparés par un espace ou par le

Balise <SPLIT> (une phrase par ligne)

Decouvrir ces documents

  • Formation d’apprentissage sur la bibliothèque Java Apache MAHOUT

    Formation d’apprentissage sur la bibliothèque Java Apache MAHOUT

  • Projet en JAVA sur gestion simplifié d'une bibliothèque

    Projet en JAVA sur gestion simplifié d'une bibliothèque

  • Cours général pour débutant sur le langage Java

    Cours général pour débutant sur le langage Java

  • Introduction complet au Framework JAVA BioJava

    Introduction complet au Framework JAVA BioJava

  • Support d’introduction à la Cryptographie avec Bouncy Castle

    Support d’introduction à la Cryptographie avec Bouncy Castle

  • Introduction à la bibliothèque JavaScript jQuery

    Introduction à la bibliothèque JavaScript jQuery

  • Cours détaillé avec exemples sur le Framework JAVA Apache Velocity pour débutant

    Cours détaillé avec exemples sur le Framework JAVA Apache Velocity pour débutant

  • Cours débutant en JavaScript

    Cours débutant en JavaScript

Articles connexes

  • Planning bibliothèque: meilleurs logiciels payants et gratuits
  • Exercice JAVA palindrôme - string
  • Cours de soutien scolaire bénévole - Informations et conseils
  • Exercices sur les commandes Unix de base pour débutant
  • Exercice UML : Etude de Cas Gestion Médiathèque Diagramme de Contexte
  • Exercice liste chainée générique JAVA - Structures de données abstraites
  • Java VS Python : Quel langage est le meilleur ?
  • Placement d'Or : Règles et astuces pour réussir son investissement
  • Contactez-nous
  • A propos de nous
  • On recrute
  • Rechercher dans le site
  • Politique de confidentialité
  • Droit d'auteur/Copyright
  • Conditions générales d'utilisation
  • Plan du site
  • Accueil
  • Blog
  • Finance et compta.
  • Formations Pro.
  • Logiciels & Apps
  • Organisation
  • Cours informatique
  • Aide à la rédaction
  • Etudes et Metiers
  • Science et Tech
  • Titans de la Tech
id 11354 02