Traitement Automatique des Langues

INTRODUCTION
1. Linguistique Informatique

Elle se préoccupe de développer des outils logiciels pour le traitement du langage naturel par ordinateur. Il peut s’agir d’écrire des programmes de traitement dans des langages classiques (C, Java, Pascal, ...) ou spécialisés dans le traitement symbolique (LISP, Prolog, Self, ...). Elle a également pour tâche d’implémenter dans ces logiciels les théories et les descriptions linguistiques particulières.

La linguistique théorique doit fournir des descriptions entièrement explicites organisées dans des théories cohérentes du savoir linguistique.

L’informatique théorique permet d’optimiser les algorithmes et programmes de traitement.

L’étude mathématique des propriétés formelles des outils de traitement et des théories linguistique est fondamentale pour leur progrès.

Les recherches en sciences cognitives et en intelligence artificielle sur la représentation du savoir sont également très importantes, notamment pour les aspects sémantiques et textuels du TAL.

En résumé, l'objectif des traitements automatiques des langues est la conception de logiciels ou programmes, capables de traiter de façon automatique des données linguistiques, c’est-à-dire des données exprimées dans une langue (dite "naturelle").

Nous avons :

Un objet d'entrée un objet de sortie ( : désigne un traitement)

Analogiquement, on aura :
T : un texte T’ :

R(T) :
un texte paraphrasé, résumé ou traduit, ou bien :

une représentation de ce texte pour la recherche
ultérieure de l’information dans une base de données.
2. Langue

Langue ou langage, lequel est l'objet du traitement automatique ?

Le langage désigne la faculté, proprement humaine, de communiquer à l’aide d’un système de signes doublement articulé. La première articulation étant le niveau du morphème, la deuxième articulation étant le niveau du phonème. De même si l’on parle métaphoriquement du "langage" des abeilles ou de l’apprentissage du "langage" par les chimpanzés pour désigner des systèmes assez limités de communication.

Toutes les langues humaines sont ainsi structurées. Cette faculté de langage, innée, se développe avec l’enfant, lors de l’acquisition de la langue maternelle (puis des langues secondes), et peut se trouver (partiellement ou totalement) détruite accidentellement. Il est donc évident que la faculté de langage par elle-même ne peut constituer l’objet des traitements automatiques. Cette faculté n’est pas observable directement, elle s’actualise nécessairement à travers l’utilisation d’une langue donnée.

En conclusion : l'objet linguistique que l'on cherche à traiter automatiquement n'est pas un langage, mais un ensemble de textes exprimés dans une langue particulière.
3. Données linguistiques (ou bases d'informations textuelles)

Ces données linguistiques peuvent être des textes écrits, qui sont des suites de phrases constituant un tout informatif cohérent (ex. : une notice d’entretien, la description d’un appareil, ...), ou bien des dialogues écrits ou oraux, ou encore des unités linguistiques de taille inférieure à ce que l’on appelle habituellement des textes (ex. : des phrases, des énoncés, des groupes de mots ou simplement des mots isolés).

Par abus de langage, on emploie désormais le terme de texte pour désigner l’un de ces types de données linguistiques, qui est l’objet des traitements automatiques.

Un texte doit donc pouvoir être écrit comme un ensemble de formes (ou de correspondances entre formes et sens) régi par des règles explicables : les règles de la langue.
4. Automatique

Est dit automatique, un traitement qui opère par des moyens "mécaniques" (du grec mêkhanê : machine), par opposition à un traitement manuel ou instrumental opéré par l’humain.

La machine qui est utilisée dans le domaine du TAL, est un ordinateur c'est-à-dire une machine conçue pour effectuer des calculs : cela suppose donc que l’on soit capable de ramener les manipulations sur les données linguistiques à des calculs.

Un traitement automatique est une suite d’actions ou calculs à faire effectuer par la machine dans un certain ordre chronologique, c'est-à-dire un programme.

L'automatisation du traitement peut être totale ou partielle :

Automatisation totale = entièrement automatique.
Automatisation partielle = assistée par ordinateur, l’homme intervient.

Contraintes : Traiter un objet linguistique de façon automatique, implique un certain nombre de contraintes dans la description même de cet objet : il faut pouvoir arriver à formuler de façon totalement explicite et cohérente des ensembles de règles caractérisant le fonctionnement du texte.

Il faut donc savoir observer l’objet pour en dégager des régularités généralisables, et savoir exprimer ces régularités en éliminant le flou, l'implicite et le non-dit. Cela impose aux descriptions linguistiques, des exigences de rigueur, de systématicité et de cohérence tout à fait salutaires.

En conclusion : Les progrès en matière de traitements automatiques des langues viendront de nos capacités à décrire les mécanismes de la langue de façon plus fine.
6. Traitement

Traiter un objet en TAL évoque l’idée d’agir sur lui, en le manipulant, en le transformant, voire en le créant. Il faut donc disposer d’outils et de techniques de traitement, en matière de TAL qui sont de trois ordres : linguistiques, formels et informatiques. En toute rigueur théorique, il convient de distinguer la description des connaissances (notamment linguistiques), l’expression de ces connaissances dans un formalisme et l’élaboration de techniques et de stratégies informatiques de traitement effectif.
7. En résumé

Le traitement automatique des langues (TAL) a pour objectif de traiter des données linguistiques (textes) exprimées dans une langue dite "naturelle".

Pour pouvoir traiter automatiquement ces données, il faut être capable d’expliciter les règles de la langue, de les représenter dans des formalismes opératoires et calculables, et les implémenter à l’aide de programmes.

L’élaboration de systèmes plus performants passe donc par le détour de recherches fondamentales, en matière notamment de compréhension de texte et de génération de texte. Dans ces deux perspectives, le traitement de la langue porte non seulement sur les formes, mais aussi sur le contenu ; il doit mettre en oeuvre des connaissances linguistiques très complètes (relevant des niveaux de la morphologie, de la syntaxe, de la sémantique et de la pragmatique), ainsi que des connaissances d’univers. De telles recherches revêtent nécessairement un caractère pluridisciplinaire, et doivent associer étroitement linguistes et informaticiens.
LES NIVEAUX DE TRAITEMENT 

Il existe une étude ancienne à vocation formelle au niveau de la morphologie et de la syntaxe, et une étude plus récente au niveau de la sémantique et de la pragmatique linguistique.
1. Analyse morphologique

Consiste à segmenter un texte en unités élémentaires auxquelles sont attachées des connaissances dans le système : une fois cette segmentation effectuée, ce n'est plus le texte qui est manipulé, mais une liste ordonnée de telles unités.

Pour le traitement d'un texte écrit : on part d’une chaîne de caractères typographiques, et on essaie de la découper de façon à ce que chaque segment corresponde à une unité répertoriée dans le système.

Ex. : soit la chaîne de caractères Jean a mangé des pommes.

La segmentation se fera de la manière suivante : U1 = Jean, U2 = a mangé, U3 = des, U4 = pommes, U5 = . (point)

Maintenant, on pourra associer toutes sortes d'informations aux Ui (i = 1, 2, 3, ...), comme par exemple :

U1 = Jean :

Informations morpho-syntaxiques : nom propre, masculin, singulier.
Informations sémantiques : animé humain, prénom ...

U2 = a mangé :

Forme lemmatisée : manger
Informations morpho-syntaxiques : verbe, passé composé, indicatif, 3ème personne, singulier, constructions : transitif, ...

Idem pour U3, U4, ...

Remarque : il y a des phénomènes (concernant le choix et le statut des unités) qui sont répertoriés de longue date par les linguistes : qui conduisent à s’interroger sur la notion de mot : élision, amalgames, flexions, dérivations, composition, ...
2. Analyse syntaxique

C'est une partie de la grammaire qui traite la manière dont les mots peuvent se combiner pour former des propositions et de l’enchaînement des propositions entre-elles.

Cela consiste a associer, à la chaîne découpée en unités, une représentation des groupements structurels entre ces unités ainsi que des relations fonctionnelles qui unissent les groupes d’unités.

Reprenons l'exemple précédant : Jean a mangé des pommes, et sa représentation morphologique : U1 = Jean, U2 = a mangé, U3 = des, U4 = pommes

Le résultat de l'analyse syntaxique pourra être par exemple l'arbre suivant :
P
GN GV
N = U1 V = U2 GN
D = U3 N = U4

P = Phrase = Jean a mangé des pommes

GN = Groupe Nominal = Jean

GV = Groupe Verbal = a mangé des pommes

GN = Groupe Nominal = des pommes

N = Nom = Jean

V = Verbe = a mangé

D = Déterminant = des

N = Nom = pommes

Voir aussi phrase et coordination.
3. Analyse sémantique

Le niveau sémantique est encore beaucoup plus complexe à décrire et à formaliser que les niveaux de traitements précédents, par conséquent les réalisations qui sont opérationnelles sont peu nombreuses, et elles concernent des applications très limitées où l'analyse sémantique se réduit à un domaine parfaitement circonscrit ; par contre, on est encore loin de savoir construire en grandeur réelle des analyseurs sémantiques généraux qui couvriraient la totalité de la langue et seraient indépendants d'un domaine d'application particulier.

Le traitement sémantique prend comme unité d'analyse la phrase, et conduit à représenter sa partie significative. Ces phrases, dont l'analyseur sémantique doit décrire le sens, se composent d'un certain nombre de mots identifiés par l'analyse morphologique, et regroupés en structures par l'analyse syntaxique. Ces mots et ces structures constituent autant d'indices pour le calcul du sens : on pourrait dire, que le sens résulte de la double donnée du sens des mots et du sens des relations entre mots.
4. Analyse pragmatique

L'analyse sémantique de la phrase isolée, traitée hors contexte, ne conduit à représenter que la partie de la signification des mots dans cette phrase, elle n'épuise donc pas ce que l'on peut appeler la signification complète d'un texte, telle que l'humain l'appréhende lors d'un processus de compréhension. C'est la raison pour laquelle une analyse pragmatique est nécessaire, et qui consiste à trouver la signification "réelle" des phrases liées aux conditions situationnelles et contextuelles d’utilisation des mots.
5. Les domaines du TAL
Traitement de la parole

Dès la fin des années 1970, du fait des limites des systèmes développés, le décodage acoustico-phonétique, considéré comme le problème majeur de la reconnaissance, est à nouveau l'axe prioritaire des recherches en reconnaissance. Trois approches sont envisagées : la première est fondée sur le traitement du signal et la reconnaissance de formes ; la seconde se fonde sur une approche de type intelligence artificielle (développement de systèmes experts en lecture de spectrogrammes) ;

la dernière, toujours très fructueuse aujourd'hui, est axée sur une approche probabiliste du décodage acoustico-phonétique (modélisation markovienne).

Traduction automatique

Prenons comme exemple, l'approche par pivot qui se compose de deux modules seulement : un module d'analyse, qui produit une représentation du texte d'entrée en langage-source dans un langage-pivot postulé indépendant de toute langue, et un module de génération, qui construit à partir de cette même représentation un texte de sortie en langue-cible.

Compréhension automatique des textes

Comprendre un texte, c'est en effet, par-delà le simple décodage du contenu littéral de ce qui est dit phrase après phrase, être capable de relier les phrases entre elles de façon à reconstruire un tout signifiant et cohérent, et être capable d'interpréter le message reçu par rapport à la situation et aux conditions d'énonciation.

L'élaboration de systèmes de compréhension automatique de textes écrits se heurte à deux problèmes liés, d'une part aux relations inter-phrastiques, et d'autre part au contexte, mais cela n'empêche pas, qu'aujourd'hui on est capable de traiter des aspects limités du sens d'un texte quelconque, de manière à pouvoir par exemple l'indexer correctement dans une base de données. Par ailleurs, on peut aller plus loin pour obtenir une compréhension plus profonde, mais cela serait relatif à un domaine très précis.

Génération automatique de textes

Ce n'est qu'au début des années 80 que le problème de génération de textes, dans un acte de communication donné, est abordé. Dans ce cadre, le texte généré par la machine doit satisfaire des exigences : d'une part indiquer à l'utilisateur les informations qu'il désire, et d'autre part offrir une formulation de ces informations dans une langue correcte.

Il s'en suit que le processus de génération comporte deux composants : le premier (système expert de raisonnement) traite la question "quoi dire ?" (détermination du contenu informatif), le second (module de génération linguistique) traite la question "comment le dire ?" (formulation du contenu informatif dans une langue correcte).

Dialogue homme-machine

C'est une interaction avec la machine par le biais du langage ; un système de dialogue homme-machine comporte, outre un module d'analyse et un module de génération , un module de raisonnement spécifique. Raisonner, en l'occurrence, suppose la capacité d'accéder à une base de connaissances quelconque (horaire des trains ou des avions, pages jaunes de l'annuaire, catalogue de vente par correspondance ...) de façon, à être capable de gérer un dialogue, c'est-à-dire une séquence indéterminée d'échanges, ce qui revient à être capable de mémoriser, de changer de sujet, de s'adapter à son interlocuteur ...

Gestion électronique de l’information et des documents existants (GEIDE)

Son but est de fluidifier la circulation de l’information au sein d’une entreprise et d’éviter les redondances abusives.

En effet, les archives qui constituent le patrimoine dormant de l’entreprise, doivent donc réintégrer le circuit vivant de l’information. Il faut pour cela qu’une logique de flux se substitue à une logique de stocks ; c’est le rôle de la GED. Pour fluidifier la circulation de l’information à travers l’organisation de l’entreprise, elle définit la succession des opérations dans la chaîne de traitement des documents, dans un environnement où plusieurs intervenants travaillent sur un même document. Ces circuits traversent sans difficulté les grandes fonctions verticales classiques de l’entreprise (compatibilité, achats commercial, informatique, etc.), ce qui permet de les respecter tout en modifiant les processus de travail.

La GEIDE englobe quatre technologies clés :

le workflow modélise, optimise et traite les flux d’information ;
la GED (Gestion Électronique des Documents) dématérialise les documents pour en faciliter l’exploitation ;
l’archivage stocke de façon organisée l’information de masse sur des disques optiques numériques ;
la recherche de documents accède à des informations multimédias pertinentes.

CONCLUSION 

Généralement, les modèles linguistiques existants se limitent à la description des aspects lexicaux et syntaxiques du langage, mais ce niveau de représentation est insuffisant dans la reconnaissance et la compréhension du langage, même quand il s'agit de phrases très simples. Il est devenu plus intéressant, du point de vue de la représentation des connaissances, de s'orienter vers les modèles sémantiques et pragmatiques qui font actuellement l'objet de recherches très prometteuses. L'approche par attributs sémantiques, pour lever les ambiguïtés non résolues aux niveaux morpho-lexical et syntaxique s'avère trop limitée. Des systèmes s'appuyant sur une formalisation lexicale poussée, telle l'approche de Melcuk, semblent plus prometteurs.

Si certains systèmes informatiques en matière de TAL semblent actuellement satisfaisants pour des langues européennes, la représentation, la saisie, l’édition et le traitement des langues extra-européennes restent largement inexplorés. En outre, la plupart des modèles élaborés pour la formalisation de sous-ensembles du langage naturel, au niveau morpho-syntaxique et sémantique, ne sont pas paramétrables ; souvent dédiés à des langues indo-européennes, ils sont difficilement adaptables aux autres familles de langues (ex. langues sémitiques). Par ailleurs, le contexte économique international actuel conduit à un besoin de plus en plus croissant en outils de traitement multilingue, d’entrées/sorties et de traduction de documentations techniques et scientifiques ...
Sources: http://ldelafosse.pagesperso-orange.fr/Glossaire/Tal.htm

*****************************************************************

Perl est un langage de programmation créé par Larry Wall en 1987 et reprenant des fonctionnalités du langage C et des langages de scripts sedawk et shell (sh).
C'est un langage interprété, polyvalent, et particulièrement adapté au traitement et à la manipulation de fichiers texte, notamment du fait de l'intégration des expressions régulières dans la syntaxe même du langage.
L'association en charge du développement et de la promotion de Perl est The Perl Foundation. En France, les Mongueurs de Perl promeuvent ce langage, notamment via les Journées Perl.


Syntaxe et sémantique

Perl est un langage impératif dont la syntaxe est dérivée du langage C et des shells UNIX. Comme en shell, le caractère dièse (#) introduit un commentaire. La syntaxe de Perl est riche ce qui permet d'exprimer de manière concise des expressions qui, dans d'autres langages, nécessiteraient l'usage d'appels à des fonctions de bibliothèques. Mais on peut se restreindre initialement à un sous-ensemble du langage.
On décrit Perl généralement comme un langage typé dynamiquement. Cette caractérisation est incomplète car Perl est aussi typé statiquement mais comporte peu de types. En effet le premier caractère des identificateurs de variable est un caractère non alphanumérique appelé sigil. Comme pour les shells Unix, le sigil dollar ($) dénote une variable scalaire, le sigil arobase (@) désigne une variable tableau et le sigil pourcent (%) un tableau associatif, aussi appelé hashage ou hash. Les tableaux peuvent être utilisés comme des piles ou des files.
Perl supporte des déclarateurs qui désignent la portée des variables déclarées :
my $s  = 'toto' ;        # variable scalaire à portée lexicale
local $level += 1;       # variable scalaire avec une valeur à portée dynamique
our @s = (1, $s, 3.14);  # variable tableau globale au module courant
Les sigils permettent de reconnaître les noms de variables dans des chaînes de caractères et d'interpréter ces variables.
print "la variable toto vaut $toto";
Perl permet de construire facilement des structures complexes et composites. Là encore, beaucoup d'autres langages imposeraient l'appel explicite de constructeurs d'instances.
my %a = ( clef1 => [1, 2], clef2 => [ 3, 4] );
Le module XML::Literal disponible sur le CPAN permet de supporter des littéraux de type XML de manière similaire à l'extension normalisée E4X d'ECMAScript.
Le langage Perl est en constante évolution mais avec un soin tout particulier au maintien de la compatibilité descendante.


Le mécanisme

Perl5 est un langage dont la nature hautement dynamique rend assez floue la distinction entre les phases de compilation et d'exécution. De plus, la phase de compilation ne génère pas un bytecode comme c'est le cas de beaucoup d'autres langages interprétés, mais un arbre syntaxique (AST, Abstract Syntax Tree).
En pratique, Perl commence par traduire le code source, instruction par instruction, en AST, qui est par la suite optimisé. Si des instructions sont situées dans un bloc spécial comme BEGIN ou CHECK, elles sont exécutées dès leur compilation (et donc avant que le reste du code source soit compilé). C'est le cas en particulier des modules chargés par l'instruction use. L'AST en lui-même est un peu plus élaboré qu'un AST usuel car il contient déjà les chemins d'exécution. Lors de la phase d'exécution, l'interpréteur suit donc les chemins présents dans l'AST et exécute les instructions restantes.
Pour plus de détails sur ces blocs et leur ordre exact d'exécution, consulter la section BEGIN, CHECK, INIT and END de perlmod.
Contrairement à ce que certains peuvent croire, Perl5 n'utilise donc à aucun moment de bytecode. Le projet de compilation en bytecode commencé lors de Perl 5.005 par Malcom Beattie n'a jamais totalement abouti, n'a jamais été vraiment fonctionnel, et sera donc probablement retiré de Perl 5.10. Ce n'est toutefois pas une grande perte car l'arrivée de Parrot offre une solution qui, si elle n'est pas encore fonctionnelle, sera clairement plus stable et plus pérenne.
La compilation de Perl6 passe par le moteur de règles (l'équivalent plus avancé des expressions rationnelles actuelles), qui produit un AST classique. Celui-ci est ensuite transcrit dans un autre langage, par défaut le bytecode Parrot. Le compilateur expérimental Pugs permet de transcrire l'AST dans des langages aussi variés que Perl 5, Parrot, JavaScriptHaskell. Dans le cas du bytecode Parrot, celui-ci est exécuté par la machine virtuelle du même nom, qui dispose de plusieurs modes de fonctionnement internes, dont un système de compilation à la volée pour offrir les performances maximales sur chaque architecture hôte.


Aspects communautaires

Perl a une base d'utilisateurs vaste et diversifiée. Pour plusieurs types d'utilisateurs du langage, c'est d'ailleurs leur seul point commun. Les administrateurs système en sont friands, les développeurs en apprécient la concision et la puissance, des linguistes et des biologistes - habituellement peu enclins à se pencher sur le code - l'utilisent comme langage de référence dans leurs applications métiers. Perl est particulièrement apprécié en bio-informatique où les programmes font l'objet de remaniements constants.
La base CPAN regroupe et met gratuitement à la disposition des utilisateurs de Perl du monde entier 15,4 millions de lignes de code (juillet 2004) sous forme de modules Perl et de synopsis montrant comment les mettre en œuvre. L'effet boule de neige est indiscutable.


Logiciels écrits en Perl



Bibliographie

Généralités
  • Larry Wall, Tom Christiansen et Jon Orwant, Programmation en Perl, 2001 ISBN 2-84177-140-7
Applications
  • James Tisdall, Introduction à Perl pour la bioinformatique, O'Reilly, ISBN 2-84177-206-3


Linux 

Les commandes fondamentales de Linux:


CommandeDescriptionéquivalent DOS
lsliste le contenu d'un répertoiredir
cdchange de répertoirecd
cd ..répertoire parentcd..
mkdircrée un nouveau répertoiremd
rmdirsupprime un répertoiredeltree
cpcopie de fichiercopy, xcopy
mvdéplacement de fichiermove
rmsupprime le fichierdel
passwdchange le mot de passe de l'utilisateur
cataffiche le contenu du fichiertype
moreaffiche le contenu du fichier avec des pausestype |more
man
apropos
aide sur la commande demandéehelp
lprimprime le fichier demandéprint
chmodchange l'attribut d'un fichier
chmod XXX fichier
XXX= Utilisateur|Groupe|Autres où X représente un entier 1<X<7

Lecture=4, Ecriture=2, Exécution=1
X=Lecture+Ecriture+Exécution
0 signifie aucun droit
1 signifie droit d'exécution
2 signifie droit en écriture
3 signifie droit en écriture et en exécution
4 signifie droit en lecture
5 signifie droit en lecture et en exécution
6 signifie droit en lecture et droit en écriture
7 signifie tous les droits
chfnchange les informations personnelles vues avec finger
chshchange le shell : chsh user emplacement_du_shell
fingerliste des utilisateurs en ligne
traceroutetrace le chemin entre la machine locale et la machine visée
ftp [machine] [port]
get
put
quit
transfert de fichier entre la machine locale et la machine cible
récupère un fichier
envoie un fichier
quitte la session FTP
telnet [machine]effectue un telnet
talkpermet de parler à un utilisateur connecté
talk user
mesgautorise ou non la commande talk
mesg n : Empeche la reception de messages talk
mesg y : Permet la reception de messages talk
logoutdéconnexion

******************************************************

Installing and Updating Cygwin

Run setup.exe any time you want to update or install a Cygwin package. The signature for setup.exe can be used to verify the validity of this binary usingthis public key.

When installing packages for the first time, setup.exe does not install every package. Only the minimal base packages from the Cygwin distribution are installed by default. Clicking on categories and packages in the setup.exe package installation screen will provide you with the ability to control what is installed or updated. Clicking on the "Default" field next to the "All" category will provide you with the opportunity to install every Cygwin package. Be advised that this will download and install hundreds of megabytes to your computer. The best plan is probably to click on individual categories and install either entire categories or packages from the categories themselves.
The latest net releases of the Cygwin DLL are numbered 1.n.x, where "n" is currently "7" (e.g., 1.7.5). The 1.n.x version numbering refers only to the Cygwin DLL. Individual packages like bashgccless, etc. are released independently of the DLL. The setup.exe utility tracks the versions of all installed components and provides the mechanism for installing or updating everything available from this site for Cygwin.
Once you've installed your desired subset of the Cygwin distribution, setup.exe will remember what you selected so rerunning the program will update your system with any new package releases.
******************************************************

La linguistique désigne l'étude du langage humain. Elle se distingue en cela de la grammaire, laquelle est la description du fonctionnement d'une langue donnée. La linguistique envisage d'aller par-delà la grammaire ; elle est apparue au XVIIe siècle et est due à un rejet de l'idée de l'époque selon laquelle la grammaire latine était la science du langage par excellence. Le linguiste étudie  les mécanismes du langage d'une façon très générale. Au sens large, la linguistique englobe toutes les sciences du langage. Dans un sens plus restreint, la linguistique s'oppose à la grammaire dite traditionnelle, en ce sens que celle-ci est normative (ou prescriptive) tandis que celle-là est descriptive. Alors que la grammaire juge les énoncés en termes d'adéquation à une norme donnée, la linguistique se contente de décrire. Le travail descriptif peut se faire selon trois axes principaux :
  • études en synchronie et diachronie : l'étude synchronique d'une langue s'intéresse seulement à cette langue à un moment donné de son histoire, à un seul de ses états. Par opposition, étudier une langue — ou une famille de langues — en diachronie revient à s'intéresser à son histoire et aux changements structurels qu'elle a subis dans le temps ;
  • études théoriques et appliquées : la linguistique théorique étudie  la création de structures permettant la description individuelle de langues ainsi que les théories tentant de cerner leurs constantes universelles ;
  • études contextuelles et indépendantes : bien que les termes désignant cette dichotomie ne soient pas clairement fixés, on peut la décrire comme suit : l'étude contextuelle s'intéresse aux interactions entre le langage et le monde, tandis que l'étude indépendante considère le langage pour lui-même, indépendamment de ses conditions extérieures.

Domaines de la linguistique théorique

La linguistique théorique est souvent divisée en domaines séparés et plus ou moins indépendants :


Domaines de recherches de la linguistique

Phonétiquephonologiediglossiesyntaxesémantiquepragmatiqueétymologielexicologielexicographielinguistique théoriquelinguistique comparéedialectologielinguistique descriptivepsycholinguistiquetypologie des langueslinguistique computationnellesémiotiqueécriture, Cohérence du langage naturel, etc., sont parmi les domaines les plus courants.

Sources: Wikipédia
******************************************************