Mise à jour: 08/06/2020 Auteur: Chris Carcaud Rubrique: Crawl-tools Publication: 08/06/2020

Comment extraire des données à partir d'un texte

Une quantité croissante d'information est conservée sous forme numérique dans des formats bien souvent non structurés. Le défi face à cette abondance de données est de trouver comment collecter, explorer et exploiter ces informations. Le text mining est le processus d'analyse de documents textuels pour en extraire les concepts sans pour autant à avoir besoin de connaître le sens précis de chaque terme. La fouille de texte permet donc de rechercher et de modéliser les données à partir de n'importe quelle source d'information.

Définir les informations à extraire

L'exploration de texte combine à la fois un logiciel d'extraction de données et un ensemble de source de données permettant d'étiqueter correctement les groupes de mots. L'application de text maning se charge d'extraire les informations utiles d'un texte par exemple pour regrouper les concepts en catégorie. Dans ce cas, le modèle d'extraction de données sera conçu autour de mots clés permettant de classer les textes selon leur contenu. Quel que soit l'usage du text mining, les algorithmes d'extraction et la phase d'analyse devront être rapides puisque le but est de parcourir un ensemble de textes ou un corpus de plusieurs milliers de mots.

La détection de groupes de mots et d'entité nommée se base également sur une base de données (lexique) qui sera utilisée en fonction de la langue du texte. Grâce aux patrons d'extraction et à un entrainement préalable, le logiciel de fouille de texte détecte aisément les groupes de mots importants dans la source de données non structurés. Placer une étiquette sur chaque entité détectée permet de donner un sens et de comprendre plus finement le contenu le corpus analysé.

Les étapes du traitement linguistique

Le prinpal défi de la compréhension d'un texte est qu'il n'existe pas de règles standard pour écrire un texte. La langue, et par conséquent le sens, varie pour chaque document, chaque texte voire même en fonction de l'auteur. La seule façon d'organiser avec précision ces données non structurées est d'analyser la langue et donc de découvrir le sens des mots utilisés. Le traitement naturel du langage, aussi appelé Natural Language Processing (NLP), est un ensemble de techniques permettant aux ordinateurs d'apprendre et de comprendre le langage humain grâce à l’intelligence artificielle.

Le langage humain est par nature complexe, ambigu et riche de sens qui est difficile à comprendre pour un ordinateur. Afin d'obtenir les meilleurs résultats lors de la fouille de texte, l'application analyse en premier lieu la syntaxe, la structure du texte et les entités nommées pour extraire la signification du contexte. Dans un second temps, l'approche statistique met en évidence le concept général du corpus et le contexte, à savoir les personnes, la localisation géographique, les quantités et les autres entités.

Normalisation du corpus

Au cours de la première étape, les données sources sont converties dans un format uniforme facilitant l'analyse du texte. Cette conversion (prétraitements des données) est effectuée en interne et ne modifie pas les données d'origine du corpus.

Identification de la structure des éléments de la phrase

Pour identifier les blocs de mots importants, les structures de la phrase sont analysées puis comparées à des dictionnaires linguistiques pour déterminer la fonction syntaxique de chaque élément. Le moteur d'extraction commence par identifier les locutions grammaticales (adverbiale, prépositive, conjonctive) puis identifie le verbe grâce à la lemmatisation et la forme canonique du mot. L'analyse lexicale a pour but de déterminer les pivots dans l'énoncé du contexte de la phrase.

Recherche du sens pour chaque syntagme nominal

Après avoir identifié les unités lexicales du corpus, le logiciel utilise un dictionnaire de normalisation et des ressources externes pour procéder à l'analyse des lexèmes. Le but est de regrouper les groupes de mots dans le cas de deux variantes d'une même forme canonique et de traiter les cooccurrences pour déterminer le sens du syntagme dans le contexte de la phrase.

Exploitation des résultats

L'analyse statistique des données textuelles permet de mettre en évidence les concepts clés du corpus en minimisant la présence du bruit. L'extraction et le regroupement des mots-clés en unités sémantiques constituent la base de la modélisation des concepts développés dans le corpus de départ. Le but est de fournir la liste de mots essentiels grâce à un étiquetage syntaxique pouvant être utilisé dans la catégorisation du document, dans le résumé du texte ou tout simplement dans le contrôle de la qualité des champs sémantiques.

 

Le traitement automatique du langage est un vaste champ d'études technologique qui devrait permettre à la machine de comprendre le sens d'un texte ou l'intention d'un utilisateur. L'emploi massif d'intelligence artificielle et des réseaux de neurones donneront aux ordinateurs la capacité technologique de l'apprentissage puis d'une lecture profonde d'un corpus.