site de Fabien Torre, université de Lille


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

Informations sur les cours que j'assure en Master LTTAC (et ouverts aux étudiants de Master EdNITL et de Master 2 LCE) pour l'année universitaire 2017-2018.

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),
  • à la deuxième année du Master LCE (Littératures et cultures européennes).

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 lundi 11 septembre 2017.

Algorithmique 1/3

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

Algorithmique 2/3

  • Exercices sur les tables de vérité,
  • exercices sur les boucles,
  • travaux pratiques avec le Robot.

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 8 décembre 2017.

Second semestre, interrogation :

  • commentaire d'un code perl existant,
  • débogage d'un code perl existant,
  • exercice de programmation perl.

Séances de cours

Perl et textes 1/12, vendredi 29 septembre 2017

Perl et textes 2/12, vendredi 6 octobre 2017

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

Perl et textes 3/12, vendredi 20 octobre 2017

  • Travaux pratiques sur la production automatique de textes.

Perl et textes 4/12, vendredi 27 octobre 2017

  • 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, vendredi 10 novembre 2017

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

Perl et textes 6/12, vendredi 17 novembre 2017

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

Perl et textes 7/12, vendredi 19 janvier 2018

  • 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, vendredi 26 janvier 2018

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

Perl et textes 9/12, vendredi 9 février 2018

Exercice de découpage/comptage : décryptage d'un texte mystère.

Perl et textes 10/12, vendredi 16 février 2018

Éléments de cours en Perl :

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

Applications pratiques :

Perl et textes 11/12, vendredi 9 mars 2018

Poursuite de la programmation d'un joueur de scrabble.

Perl et textes 12/12, vendredi 16 mars 2018

TP au choix :

Évaluation sur machine, vendredi .. mars 2018

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 8 décembre 2017.

Second semestre : devoir à la maison à rendre fin mars 2018.

Séances de cours

JavaScript 1/12, vendredi 29 septembre 2017

  • 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 6 octobre 2017

  • TP : poursuite des exercices mots & tableaux.

JavaScript 3/12, vendredi 20 octobre 2017

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

JavaScript 4/12, vendredi 27 octobre 2017

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

JavaScript 5/12, vendredi 10 novembre 2017

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

JavaScript 6/12, vendredi 17 novembre 2017

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

JavaScript 7/12, vendredi 19 janvier 2018

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

JavaScript 8/12, vendredi 26 janvier 2018

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

JavaScript 9/12, vendredi 9 février 2018

  • 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 16 février 2018

  • 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 9 février 2018

  • Cours : utilisation des dataset et web storage html5 en JavaScript.
  • TP : mise en œuvre des dataset et web storage html5 en JavaScript sur un corpus réel.

JavaScript 12/12, vendredi 16 mars 2018

Suivi de projet sur le corpus étudié.

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...


Une photo au hasard

CAp 2009 à Hammamet.

(le 25 mai 2009)

La cimetière et la mer à Hammamet.