Description
Cette formation en traitement du langage naturel (NLP) vise à initier les participants aux concepts fondamentaux et aux applications pratiques du NLP, telles que les chatbots et l'analyse de sentiments. Elle couvre l'installation de Python et des bibliothèques NLP, la préparation des données textuelles, ainsi que la représentation vectorielle du langage. Les participants apprendront à classifier des textes, à réaliser des analyses de sentiments et à extraire des informations. Ce programme s'adresse aux professionnels et étudiants souhaitant acquérir des compétences en NLP, avec des projets pratiques pour renforcer l'apprentissage.
Récapitulatif
Public
Développeurs, data scientists et professionnels du domaine de l'intelligence artificielle intéressés par l'apprentissage des bases du traitement automatique du langage naturel (NLP) avec Python
Prérequis
Maitrise avancée de la programmation Python
Connaissance approfondie du machine learning
Connaissance de statistiques et d'algorithmique
Intérêt pour le traitement des données textuelles
Méthodes et modalités pédagogiques
Formation réalisée en Présentiel, Distanciel ou Dual-Learning selon la formule retenue.
Moyens et supports pédagogiques
Mise à disposition d'un poste de travail sur nos formations en Présentiel.
Mise à disposition de nos environnements de visio sur nos formations en Distanciel
Remise d'une documentation pédagogique numérique pendant la formation
La formation est constituée d'apports théoriques, d'exercices pratiques et de réflexions
Dans le cas d'une formation sur site Entreprise, le client s'engage à avoir toutes les ressources pédagogiques nécessaires (salle, équipements, accès internet, TV ou Paperboard...) au bon déroulement de l'action de formation conformément aux prérequis indiqués dans le programme de formation
Modalités de suivi et d'évaluations
Auto-positionnement des stagiaires avant la formation
Émargement des stagiaires et formateur par 1/2 journée
Exercices de mise en pratique ou quiz de connaissances tout au long de la formation permettant de mesurer la progression des stagiaires
Auto-évaluation des acquis de la formation par les stagiaires
Questionnaire de satisfaction à chaud et à froid à l'issue de la formation
Programme détaillé
Introduction au NLP et préparation des données
Présentation du NLP et de ses applications
- Définition et enjeux du NLP : Introduction aux concepts de base du traitement du langage naturel (NLP) et son importance dans diverses applications.
- Exemples d'applications : chatbots, analyse de sentiments... : Exploration de cas concrets où le NLP est utilisé, comme les chatbots et l'analyse de sentiments.
Prise en main de Python et de ses librairies pour le NLP
- Installation de Python, NLTK, SpaCy : Guide étape par étape pour installer Python et les principales bibliothèques NLP.
- Bases de la manipulation de texte en Python : Introduction aux manipulations de base de texte en utilisant Python.
Préparation des données textuelles
- Problématiques de format, d'encodage : Discussion sur les défis liés aux formats et à l'encodage des données textuelles.
- Segmentation en phrases et en mots : Techniques pour segmenter du texte en phrases et en mots.
- Nettoyage : suppression des stopwords, stemming, lemmatisation : Méthodes pour nettoyer le texte, y compris la suppression des stopwords, le stemming et la lemmatisation.
- Projet pratique : nettoyage et préparation d'un corpus de textes : Exercice pratique de nettoyage et de préparation de données textuelles.
Représentation vectorielle du langage
Limites des approches symboliques
- Sacs de mots et pondération TF-IDF : Introduction aux sacs de mots et à la pondération TF-IDF pour représenter le texte.
- Création de représentations vectorielles simples : Techniques pour créer des représentations vectorielles de base du texte.
- Mesure de la similarité entre documents : Méthodes pour mesurer la similarité entre documents textuels.
Représentations distribuées : Word2Vec
- Principe des plongements lexicaux (word embeddings) : Explication des plongements lexicaux et leur importance.
- Entraînement de word2vec sur un corpus : Guide pratique pour entraîner le modèle word2vec.
- Analogies et similarités entre mots : Exploration des analogies et des similarités générées par word2vec.
- Projet pratique : analyse de similarité dans des descriptions de films : Exercice pratique d'analyse de similarité en utilisant des descriptions de films.
Tâches de classification de textes
Classification de documents
- Représentation par sacs de mots : Utilisation des sacs de mots pour représenter des documents.
- Entraînement de classifieurs (Naive Bayes, régression logistique) : Entraînement de modèles de classification comme Naive Bayes et la régression logistique.
- Évaluation des performances : Techniques pour évaluer les performances des modèles de classification.
Analyse de sentiments
- Approches lexicales et par apprentissage : Introduction aux approches lexicales et basées sur l'apprentissage pour l'analyse de sentiments.
- Détection de la polarité et des émotions : Méthodes pour détecter la polarité et les émotions dans le texte.
- Projet pratique : classification de critiques de films positives/négatives : Exercice pratique de classification des critiques de films en positives ou négatives.
Extraction d'informations
Reconnaissance d'entités nommées
- Détection de personnes, lieux, organisations... : Techniques pour détecter les entités nommées dans le texte.
- Utilisation des librairies NLTK et SpaCy : Utilisation des bibliothèques NLTK et SpaCy pour la reconnaissance des entités nommées.
Extraction de relations entre entités
- Patrons syntaxiques simples : Utilisation de patrons syntaxiques pour extraire des relations entre entités.
- Visualisation de graphes de relations : Techniques pour visualiser les relations entre entités sous forme de graphes.
- Projet pratique : extraction d'informations à partir de descriptions de produits : Exercice pratique d'extraction d'informations à partir de descriptions de produits.
Projet final et introduction aux modèles avancés
Projet fil rouge : analyse de sentiments sur des tweets
- Collecte de données sur Twitter : Méthodes pour collecter des données sur Twitter.
- Préparation des données et extraction de features : Préparation des données et extraction des caractéristiques nécessaires.
- Entraînement de différents classifieurs : Entraînement de divers modèles de classification.
- Interprétation des résultats : Techniques pour interpréter les résultats obtenus.
Présentation des modèles avancés
- Réseaux de neurones récurrents (RNN, LSTM) : Introduction aux réseaux de neurones récurrents et aux LSTM.
- Transformers et modèles pré-entraînés (BERT) : Présentation des transformers et des modèles pré-entraînés comme BERT.
- Application au résumé automatique et au question-answering : Exploration des applications avancées telles que le résumé automatique et le question-answering.
Conclusion et perspectives
- Synthèse des concepts clés : Récapitulatif des principaux concepts couverts pendant la formation.
- Ressources pour aller plus loin : Suggestions de ressources pour approfondir les connaissances en NLP.