site de Fabien Torre


Master Lexicographie, Terminographie et Traitement Automatique des Corpus (Master LTTAC)

Informations sur les cours que j'assure en Master LTTAC et en Master EdNITL pour l'année universitaire 2021-2022.

J'interviens dans des cours communs :

  • aux deux années du Master LTTAC (Lexicographie, Terminographie et Traitement Automatique des Corpus),
  • aux deux années du Master EdNITL (Éditions numériques et imprimées de textes littéraires),

L'année débute avec une semaine intensive de mise à niveau pour les nouveaux étudiants, en ce qui me concerne j'y assure une partie du cours d'algorithmique et un cours de HTML & CSS.

Mon cours principal s'intitule « programmation pour l'extraction d'informations » et le langage de programmation utilisé est Perl pour les M1 et JavaScript pour les M2.

Semaine intensive de mises à niveau

Cours donnés la semaine du 12 septembre 2022. Interrogation le mercredi 5 octobre 2022.

Algorithmique 1/3

  • Introduction à l'algorithmique, découpage fonctionnel, notions de complexité, langage de description,
  • procédures, variables et paramètres.

Algorithmique 2/3

Algorithmique 3/3

Structures de données et algorithmes :

  • type tableaux, tableaux d'entiers, tableaux de mots,
  • premiers algorithmes sur les tableaux : affichage, recherche d'un élément, etc.
  • notions de complexité.

HTML 1/3

Cours html.

  • internet et web,
  • encodages des couleurs et des caractères,
  • accessibilité et référencement,
  • structure arborescente.
  • etc.

HTML 2/3

Cours doctypes html et css.

  • sémantique versus mise en forme,
  • langages xml,
  • validité vis-à-vis des DTD du W3C,
  • adaptation aux média,
  • etc.

HTML 3/3

Séance de Travaux Pratiques html et css.

Programmation Perl en première année

Présentation du cours perl

Cet enseignement propose une découverte de la programmation avec le langage Perl et une introduction à la manipulation de corpus textuels.

Perl a été créé en 1987 par Larry Wall. Linguiste de formation, il visait dès l'origine un langage de programmation facilitant le traitement des données textuelles. Larry Wall a également voulu que Perl présente de nombreux points communs avec le langage naturel. Par la suite, et outre ces premières caractéristiques, Perl a été utilisé comme un langage glu, c'est-à-dire permettant des changements de formats et facilitant ainsi le dialogue entre des logiciels basés sur des dialectes différents.

Aujourd'hui, Perl est largement répandu et présent sur différentes plates-formes. Il a connu un regain d'intérêt avec l'apparition de nouvelles problématiques tels l'exploration du web caché, le big data et l'open data, et de nouveaux métiers comme data journalist.

Dans le cadre de ce cours nous privilégierons le travail sous Linux, sans que cela soit obligatoire. Tous les supports (notes de cours, feuilles d'exercices, etc.) seront disponibles en ligne et donc accessibles à distance.

Le cours commencera par une mise à niveau sur le système d'exploitation Linux, puis passera en revue les sujets suivants :

  • codages des caractères et formats de documents,
  • mise en œuvre en Perl du cours d'algorithmique et production automatique de textes,
  • expressions régulières en perl et extractions automatiques à partir de textes.

Des réalisations concrètes accompagneront le cours :

  • cryptage et décryptage de messages,
  • découverte d'anagrammes et jeu de scrabble,
  • corrections orthographiques et aide à l'écriture,
  • calcul de co-occurrences et concordancier,
  • constitution automatique de corpus à partir du web,
  • classification automatique de textes, etc.

Cette liste pourra être modifiée et enrichie à l'initiative des étudiants.

Références bibliographiques

Tanguy L., Hathout N. (2007), Perl pour les linguistes,
Programmes en Perl pour l'exploitation des données langagières,
Science Publications, Éditions Hermès.
Christiansen T., Foy B., Wall L., Orwant J. (2012), Programming Perl:
Unmatched power for text processing and scripting,
O'Reilly.

Éléments abordés dans le cours perl

  • Systèmes d'exploitation Linux.
  • Expressions régulières.
  • Algorithmique.
  • Langage Perl.

Évaluations dans le cadre du cours perl

Premier semestre : QCM+discussion sur table le vendredi 9 décembre 2022.

Second semestre : Devoir sur machine le vendredi 24 mars 2023.

Séances de cours

Perl et textes 1/12, 29+30 septembre 2022

Perl et textes 2/12, 6+7 octobre 2022

  • Suite du TP sur linux.
  • Introduction au langage perl.
  • Premier exercice.

Perl et textes 3/12, 20+21 octobre 2022

  • Travaux pratiques sur la production automatique de textes.

Perl et textes 4/12, 27+28 octobre 2022

  • Compléments au cours sur Perl : booléens, notion de fonction, écriture dans un fichier, etc.
  • Poursuite du TP Perl.

Perl et textes 5/12, 17+18 novembre 2022

  • Éléments de théorie des langages.
  • Perl et expressions régulières.

Perl et textes 6/12, 24+25 novembre 2022

Poursuite du TP sur Perl et les expressions régulières.

Production de pages HTML et d'un document epub.

Perl et textes 7/12, 12+13 janvier 2023

  • Introduction au second semestre.
  • Cours sur les tableaux associatifs en perl.
  • Retour sur les exercices du premier semestre, avec des tableaux associatifs.

Perl et textes 8/12, 19+20 janvier 2023

Exercice de découpage/comptage : comptage des mots d'un corpus.

Perl et textes 9/12, 2+3 février 2023

Création d'un concordancier.

Perl et textes 10/12, 9+10 février 2023

Améliorations du concordancier.

Perl et textes 11/12, 2+3 mars 2023

Éléments de cours en Perl :

  • passage de paramètres et références,
  • tableaux de tableaux.

Applications pratiques :

Perl et textes 12/12, 9+10 mars 2023

Passage de Perl vers Python.

Programmation JavaScript en deuxième année

Présentation du cours Javascript

Cet enseignement propose une découverte de la programmation avec le langage JavaScript et une introduction à la manipulation automatique de documents semi-structurés.

JavaScript est un langage intrinsèquement lié aux documents (x)html (c'est-à-dire en particulier la grande majorité des documents présents sur le web), a priori documents statiques que JavaScript permet de rendre dynamiques. JavaScript se différencie des autres langages de programmation car la programmation se fait dans le document lui-même et l'exécution du programme se fait côté client, c'est-à-dire par le navigateur de l'utilisateur. Ces caractéristiques autorisent l'utilisateur à interagir avec le document dans son navigateur, sans aller-retour avec le serveur web.

JavaScript a récemment connu un regain d'intérêt avec :

  • le soutien déclaré en 2009 du W3C au web multimédia avec html5 et au détriment de xhtml,
  • le refus par Apple en 2010 d'utiliser Flash sur ses appareils, le couple html5-JavaScript apparaît alors comme la seule alternative,
  • la volonté des éditeurs traditionnels de proposer leurs livres sous forme d'e-books (dont les formats majeurs comme epub ou kindle sont basés sur html), en profitant du passage papier-numérique pour les rendre dynamiques ou interactifs.

Le cours commencera par une mise à niveau sur html, puis passera en revue les sujets suivants :

  • mise en œuvre en JavaScript du cours d'algorithmique,
  • interaction entre JavaScript et l'objet graphique canvas de html5,
  • modification des documents html à travers l'API DOM de JavaScript.

Des réalisations concrètes illustreront le cours et seront demandées aux étudiants : productions automatiques de phrases, jeux graphiques et ludiques, manipulation de textes, aide à l'étiquetage de textes, extraction et visualisation automatique d'informations, etc.

Cet enseignement pourra servir de bases à d'éventuels apprentissages dans le cursus des étudiants ou dans leur future carrière professionnelle :

  • l'algorithmique et la découverte du langage JavaScript faciliteront l'apprentissage de tout autre langage de programmation,
  • la modification de documents à travers l'API DOM pourra être mise en œuvre avec un autre langage de programmation que JavaScript, et pour des documents xml non nécessairement html.

Les compétences acquises pendant ce cours sont également reconnues dans le monde professionnel, en particulier avec l'utilisation de html5/JavaScript dans les formats e-book.

Les supports de cours et exercices seront disponibles en ligne.

Éléments abordés dans le cours JavaScript

  • Mise en œuvre en JavaScript du cours d'algorithmique,
  • interaction entre JavaScript et l'objet graphique canvas de html5,
  • modification des documents html à travers l'API DOM de JavaScript.

Évaluations dans le cadre du cours JavaScript

Premier semestre : QCM+discussion sur table le vendredi 9 décembre 2022.

Second semestre : Devoir sur machine le vendredi 24 mars 2023.

Séances des cours

JavaScript 1/12, vendredi 30 septembre 2022

  • Cours javascript : généralités, syntaxe, variables, structures de contrôle, tableaux.
  • TP : exercices de prise en main de JavaScript.
  • TP : premier exercice sur les mots et les tableaux.

JavaScript 2/12, vendredi 7 octobre 2022

  • TP : poursuite des exercices mots & tableaux.

JavaScript 3/12, vendredi 21 octobre 2022

  • Cours javascript : capture des événements du navigateur et modification du DOM.
  • TP : premières captures d'événements.

JavaScript 4/12, vendredi 28 octobre 2022

  • Poursuite des travaux pratiques sur les événements.
  • TP : exercices sur la modification du DOM par JavaScript.

JavaScript 5/12, vendredi 18 novembre 2022

  • Cours JavaScript : manipulation de l'objet html5 canvas.
  • TP : premiers exercices avec le canvas.

JavaScript 6/12, vendredi 25 novembre 2022

  • TP : fin des exercices sur le canvas.
  • Révisions.

JavaScript 7/12, vendredi 13 janvier 2023

  • Cours : introduction à l'extraction d'informations et rappels sur les manipulations DOM en JavaScript.
  • TP : extractions à partir de documents html5.

JavaScript 8/12, vendredi 20 janvier 2023

  • Cours : parcours d'arbres, récursivité, version itérative avec pile.
  • TP : poursuite des exercices sur les arbres DOM.

JavaScript 9/12, vendredi 3 février 2023

  • Cours : rappels JavaScript sur la manipulation de chaînes de caractères et sur la gestion de l'arbre DOM.
  • TP : implémentation d'un moteur de recherche simple en JavaScript.

JavaScript 10/12, vendredi 10 février 2023

  • Cours : théorie des langages et expressions régulières.
  • Cours : expressions régulières en JavaScript.
  • TP : pratique des expressions régulières.
  • TP : améliorations du moteur de recherche à l'aide d'expressions régulières.

JavaScript 11/12, vendredi 3 mars 2023

Implémentation d'outils JavaScript pour animer et exploiter des documents TEI (transformés en fichiers html par xslt, mis en forme avec css).

JavaScript 12/12, vendredi 10 mars 2023

Production d'un ePub mêlant (x)html5, css et JavaScript.


Fabien Torre Valid HTML5! Valid CSS!
Accueil > Enseignement > Formations > Master LTTAC
(contenu mis à jour )
site de Fabien Torre, université de Lille

Description

Survoler un lien de navigation pour lire sa description ici...