Ce cours a pour objectif de fournir aux étudiants les bases de l’algorithmique, afin de pouvoir découper un problème issu des SHS en suite d’instructions programmables. Le cours commencera par une révision des notions de variables, de types, de structures de contrôle et de structures de données. Il présentera ensuite les algorithmes fondamentaux (tri, recherche, récursivité), ainsi que l’analyse de leur complexité. Le reste du cours sera dédié à l’application de ces notions à des cas propres aux données issues des sciences humaines et sociales (SHS) : analyse de chaînes de caractères, parcours de graphes et manipulation de séries temporelles. L’ensemble des cas vus en cours seront ensuite implémentés en Python lors des séances de travaux pratiques.


Ce cours vise à aborder les bases de l'algorithmique et d'apprendre à manipuler les structures de données classiques pour concevoir des programmes structurés en langage Python. 

L'objectif de ce cours est de faire découvrir aux étudiants les bases de l'ingénierie des langues (ou ingénierie linguistique). Il consistera en une immersion progressive dans les différents niveaux et types d'analyse des langues par ordinateur. Les notions théoriques présentées seront illustrées par l'utilisation de différents outils de traitement de données textuelles.

 Tout d'abord de linguistique de corpus et de textométrie (statistique textuelle et concordance), puis de traitement automatique des langues (TAL). Les étudiants seront ainsi amenés au cours du semestre à réaliser un projet d'analyse linguistique automatique, depuis sa formalisation jusqu'à sa mise en œuvre.

 L'objectif de ce cours est de permettre aux étudiants d'appréhender la plus-value que les outils d'analyse automatique de textes offrent à la linguistique et inversement la plus-value que la connaissance linguistique offre à l'utilisation des outils d'analyse automatique.