Méthodes de calcul

Normalement, l’analyseur syntaxique est défini par séparation. Pour séparer la phrase en une signification grammaticale ou des mots, des phrases, des chiffres. Dans certains systèmes de traduction automatique et de traitement du langage naturel, les textes écrits dans des langues humaines sont analysées par des programmes informatiques. Les phrases humaines ne sont pas facilement analysées par les programmes, car il y a une ambiguïté substantielle dans la structure du langage humain, dont l'utilisation est de transmettre le sens (ou la sémantique) parmi une gamme potentiellement illimitée de possibilités, mais seulement quelques-unes sont pertinentes au cas particulier. Ainsi, un énoncé « homme mord un chien» contre «Un chien mord un homme» est définie sur un détail, mais dans une autre langue pourrait apparaître comme « Homme chien mord» avec une dépendance à le contexte le plus large pour distinguer entre ces deux possibilités, de préoccupation. Il est difficile de préparer des règles formelles pour décrire le comportement informel même s'il est clair que certaines règles sont suivies.

Afin d'analyser les données du langage naturel, les chercheurs doivent d'abord s'entendre sur la grammaire à utiliser. Le choix de la syntaxe est affectée par les préoccupations linguistiques et informatiques; par exemple, certains systèmes d'analyser utilisent une grammaire fonctionnelle lexicale, mais en général, l'analyse des grammaires de ce type est connu comme NP-complète. La grammaire de la structure des phrases dirigées par la tête est un autre formalisme linguistique qui a été populaire dans la communauté de l'analyse syntaxique, mais d'autres efforts de recherche se sont concentrés sur des formalismes moins complexes tels que celui utilisé dans Penn Treebank. L'analyse peu profonde vise à ne trouver que les limites des constituants majeurs tels que les substantifs. Une autre stratégie populaire pour éviter la controverse linguistique est l'analyse grammaticale de la dépendance.

La plupart d'analyseurs syntaxique modernes sont au moins partiellement statistiques; C'est-à-dire qu'ils s'appuient sur un corpus de données d'entraînement qui a déjà été annoté (analysé à la main). Cette approche permet au système de recueillir des informations sur la fréquence avec laquelle diverses constructions se produisent dans des contextes spécifiques. Les approches qui ont été utilisées incluent les PCFG simples (grammaires probabilistes sans contexte), l'entropie maximale et les réseaux neuronaux. La plupart des systèmes les plus réussis utilisent des statistiques lexicales (c'est-à-dire qu'ils tiennent compte de l'identité des mots impliqués, ainsi que de leur partie de la parole). Toutefois, de tels systèmes sont vulnérables à plus et nécessitent une sorte de lissage pour être efficace. Les algorithmes d'analyser pour le langage naturel ne peuvent pas s'appuyer sur la grammaire ayant des propriétés « agréables » comme avec les grammaires conçues manuellement pour les langages de programmation. Tel que précédemment, certains formalismes grammaticaux sont très difficiles à analyser de façon informatisée; En général, même si la structure souhaitée n'est pas sans contexte, une sorte d'approximation sans contexte de la grammaire est utilisée pour effectuer une première passe. Les algorithmes qui utilisent des grammaires sans contexte s'appuient souvent sur une variante de l'algorithme CYK, habituellement avec une certaine heuristique pour éliminer les analyses improbables pour gagner du temps. Cependant, certains systèmes échangent leur vitesse de précision en utilisant, par exemple, des versions linéaires de l'algorithme de décalage-réduction.