Capsule : Structuration des données

Syntaxe et sémantique

Les ordinateurs sont des automates capables de traiter des données représentées par des symboles qui respectent une certaine syntaxe.

Une grammaire décrit un ensemble de règles de syntaxe, c’est-à-dier un ensemble de règles de construction et d’agencement de symboles (des mots ou, plus généralement, des unités lexicales), en anglais tokens, en termes plus complexes, par exemple un programme.

Pour permettre à un ordinateur de traiter efficacement des données, on doit les présenter avec une syntaxe simple et non ambiguë. Les langues naturelles dont la syntaxe n’est ni simple ni non ambiguë ne sont pas adaptées. On peut noter qu’il ne s’agit pas uniquement d’une limitation techniques. En effet, le traitement automatique du langage, c’est-à-dire des langues naturelles, a fait de grands progrès grâce au « deep learning » et est aujourd’hui de plus en plus accessible. Toutefois, même lorsque l’on s’adresse à des humains, des langues artificielles telles que les notations mathématiques ou les notations musicales s’avèrent très utiles pour leur précision et leur concision.

La syntaxe concerne la structure du texte et ne s’occupe pas du sens. On peut agencer correctement un ensemble d’unité lexical du point de vue de la syntaxe, sans que cette construction ait de sens. Par exemple, la phrase « La neige de juillet attendait sans le savoir le joyeux balancier du lapin » est syntaxiquement correcte, mais n’a aucun sens. Le sens du texte est le domaine de la sémantique. En informatique, la sémantique est associée à des domaines tels que la fouille de texte (text mining) ou, plus généralement, à la fouille de données (data mining) pour l’extraction de connaissances, ou encore aux ontologies (web sémantique). Ces domaines sont le plus souvent liés de près ou de loin aux intelligences artificielles.

Dans le cadre de ce module, nous nous intéressons avant tout à la syntaxe.

Syntaxe, structure et métadonnées

Considérons le texte suivant :

Armelle Crevoisier habite à Lurtigen, au numéro 13 de la rue Fontenal. Doriane Chappuis quant à elle, vie à Ulmiz, non loin de Morat. Son domicile se trouve au numéro 22 de la rue du Bourg. Christine Charpié a choisi d’élire domicile, plus au sud, à Semsales, dans la jolie ruelle des Tailleurs, au numéro 11. Enfin, c’est au chemin de Beaulieu 10 à Onnens que se trouve la maison de Sophie Comman.

Même si ce n’est pas impossible, extraire les adresses de ce texte est difficile. Ces données seraient plus faciles à exploiter si elles étaient représentées de sous la forme d’une table dans laquelle chaque ligne contient les données d’une seule personne. Par exemple :

Prénom, Nom, Rue, NPA et localité, adresse de courriel
Armelle,Crevoisier,rue Fontenal 13,3215 Lurtigen,crevoisierc@zemail.com
Christine,Charpié,ruelle des Tailleurs 11,1623 Semsales,christine.charpie@zemail.com
Doriane,Chappuis,rue du Bourg 22,3214 Ulmiz,doriane222@privatemail.com
Sophie,Comman,chemin de Beaulieu 10,1756 Onnens,comman2716@courriaile.ch

On utilise toujours un fichier de texte et ce sont toujours les mêmes données, mais on leur a donné une structure en utilisant une certaine syntaxe. Cette syntaxe est relativement simple :

  • les données élémentaires (nom, prénom, etc.) sont séparées par des virgules,
  • les données élémentaires sont toujours saisies dans le même ordre.

Il n’est plus nécessaire de comprendre le sens du texte pour déterminer les relations entre les données d’une personne, celles-ci sont mises en relation par la syntaxe. De plus, dans cet exemple, la première ligne contient les noms de ces données élémentaires. Ces noms ne sont pas des données comme les autres. Ce sont des données à propos des données ou des métadonnées.

Plus on structure les données et plus on ajoute de métadonnées, plus les données sont faciles à exploiter de manière automatique. Des données faiblement structurées comme du texte (dans une langue naturelle) ou des images vidéo sont beaucoup plus difficiles à exploiter que des données fortement structurées comme les données d’une base de données relationnelles.