Traitement du langage naturel

Faites en sorte que les programmes d'IA comprennent et génèrent le langage humain

Ce que vous apprendrez

  • Comprendre le traitement du langage naturel (NLP)
  • Connaître le cycle de vie d'un projet NLP
  • Préparer les données textuelles et supprimer la ponctuation
  • Appliquer la tokenisation et retirer les mots vides
  • Utiliser la racinisation et la lemmatisation
  • Transformer le texte en nombres avec la vectorisation
  • Extraire les caractéristiques utiles par l'ingénierie des caractéristiques
  • Choisir le bon modèle
  • Évaluer les performances du modèle

À propos du cours

Ce cours explique le traitement du langage naturel (NLP), la branche de l'intelligence artificielle qui permet à l'ordinateur de comprendre et d'analyser les textes humains. Vous commencez par une introduction au NLP et au cycle de vie d'un projet, puis vous préparez les données textuelles et supprimez la ponctuation. Ensuite, vous apprenez la tokenisation et la suppression des mots vides, puis la racinisation et la lemmatisation pour ramener les mots à leur forme de base. Vous passez ensuite à la vectorisation du texte, qui transforme les mots en nombres lisibles par la machine, et à l'ingénierie des caractéristiques pour extraire les informations utiles des données. Dans la dernière étape, vous apprenez à choisir le bon modèle, puis à évaluer ses performances sur plusieurs échantillons de données. Le cours convient à toute personne qui veut se lancer dans l'intelligence artificielle et l'apprentissage automatique, ou qui aime travailler sur les textes et l'analyse des sentiments. Des bases en programmation sont recommandées. À la fin, vous serez capable de mener un projet complet de traitement de texte, de la préparation des données à l'évaluation du modèle.

Résultats attendus

  • Capacité à mettre en œuvre un projet complet de traitement de texte.
  • Analyser des textes et extraire des caractéristiques en utilisant des techniques avancées.
  • Sélectionner et évaluer des modèles appropriés pour des performances optimales.
  • Améliorer les données textuelles pour répondre aux besoins de différents modèles.
  • Travailler efficacement sur des projets de NLP en utilisant des outils et des techniques modernes.

Avis des apprenants

Ces avis proviennent d'apprenants qui ont acheté le contenu et en ont complété au moins 50% — il n'y a aucun avis de personnes n'ayant pas suivi le contenu.
4.4
★★★★☆
56 avis
5★
22
4★
32
3★
2
2★
0
1★
0

    Contenu du cours

    1

    Traitement du langage naturel NLP

    19 leçons
    1. Introduction au NLPIntroduit le traitement automatique du langage naturel (NLP), la différence entre données structurées et non structurées, son lien avec le machine learning et le deep learning, ses approches principales et ses applications comme le filtrage de spam et les systèmes de questions-réponses.15:08
    2. Cycle de Vie du ProjetPasse en revue le cycle de vie d'un projet NLP et les bibliothèques Python utilisées, comme NLTK et spaCy, des étapes de collecte des données jusqu'à la construction, l'évaluation et le déploiement du modèle, avec un exemple de classification de spam.11:57
    3. Préparation des donnéesExplique l'étape de préparation des données d'un projet NLP et ses phases : tokenization, suppression des stop words, lemmatization, stemming, vectorization et feature engineering, puis explore en Python un jeu de données de messages spam.9:51
    4. Supprimer la ponctuationMontre comment supprimer la ponctuation d'un texte en Python avec la bibliothèque string, une boucle for, une list comprehension et une fonction lambda sur un jeu de données, et pourquoi passer le texte en minuscules, Python étant sensible à la casse.6:36
    5. Tokenisation & Mots vides (Partie 1)Définit la tokenization, qui découpe une phrase en mots, et les stop words, mots courants peu utiles, en expliquant pourquoi on les supprime pour alléger les données et quand les conserver, par exemple en analyse de sentiments.7:17
    6. Tokenisation & Mots vides (Partie 2)Applique en code Python la tokenization et la suppression des stop words sur des textes anglais et arabes dans une seule fonction, et explique pourquoi garder les stop words pour l'analyse de sentiments.8:42
    7. Racinisation & Lemmatisation (Partie 1)Explique la différence entre stemming et lemmatization pour ramener un mot à sa racine, les problèmes d'over-stemming et d'under-stemming, le stemming étant plus rapide mais moins précis, la lemmatization s'appuyant sur un dictionnaire, plus précise mais plus lente.7:42
    8. Racinisation & Lemmatisation (Partie 2)Applique en Python le stemming et la lemmatization via des fonctions qui créent une nouvelle colonne dans les données, revoit les problèmes d'over-stemming et d'under-stemming et montre comment regrouper les étapes de prétraitement dans une seule fonction.7:12
    9. Vectorisation (Partie 1)Explique la vectorization, qui transforme le texte en nombres exploitables par un modèle, via une document term matrix, et ses types : Count Vectorizer, N-grams et TF-IDF, avec un exemple de comptage des occurrences de chaque mot dans les messages.14:11
    10. Vectorisation (Partie 2)Explique TF-IDF en détail : le TF est le nombre d'occurrences d'un mot dans un document divisé par son nombre de mots, l'IDF est le logarithme du nombre total de documents sur ceux qui contiennent le mot, et leur produit donne le poids du mot.5:42
    11. Vectorisation (Partie 3)Applique la vectorization en Python avec Count Vectorizer, N-grams et TF-IDF, explique la sparse matrix et son intérêt pour économiser de la mémoire, et pourquoi le texte doit devenir numérique avant l'entraînement du modèle.7:27
    12. Ingénierie des caractéristiques (Partie 1)Explique le feature engineering et son intérêt pour écarter les données inutiles et créer de nouvelles caractéristiques à partir des existantes, comme la longueur du message et la proportion de ponctuation pour repérer le spam, puis la mise à l'échelle des valeurs numériques.12:02
    13. Ingénierie des caractéristiques (Partie 2)Applique le feature engineering en Python en créant de nouvelles caractéristiques comme la longueur du message et la part de ponctuation et de majuscules avec des fonctions lambda, puis utilise le MinMaxScaler de scikit-learn pour remettre les valeurs à l'échelle.8:47
    14. Sélection de modèle (Partie 1)Explique comment choisir le bon algorithme lors de la construction du modèle selon le type de données et le problème, définit l'ensemble learning et l'algorithme Random Forest avec ses forces et faiblesses, et aborde la séparation des données en train et test.14:20
    15. Sélection de modèle (Partie 2)Applique en Python un Random Forest Classifier aux données de messages, en réunissant les caractéristiques finales dans un final data frame, en le séparant en train et test, puis en entraînant le modèle et en extrayant l'importance de chaque caractéristique.6:51
    16. Évaluation de modèle (Partie 1)Explique l'évaluation d'un modèle et la décision entre le déployer ou l'améliorer, l'écart entre données d'entraînement et données inconnues, l'équilibre entre biais et variance, les hyperparamètres et les méthodes de séparation des données comme train test et cross validation.11:53
    17. Évaluation de modèle (Partie 2)Applique en Python la séparation des données avec train_test_split puis la validation croisée k-fold avec un Random Forest, pour choisir la meilleure répartition des données en une seule ligne de code.3:16
    18. Évaluation de modèle (Partie 3)Explique les métriques d'évaluation d'un modèle, dont l'accuracy et ses limites avec des données déséquilibrées ou plusieurs classes, ainsi que la matrice de confusion avec les vrais positifs, faux positifs et valeurs associées, et ce qu'elles indiquent.14:23
    19. Évaluation de modèle (Partie 4)Applique en Python l'évaluation du modèle en calculant accuracy, precision, recall et la matrice de confusion sur les données de test, et explique comment lire les résultats et quoi revoir s'ils sont faibles : les données, le modèle ou les hyperparamètres.7:35
    2

    Pièces jointes

    1 pièces jointes
    1. Matrials

    Formateur

    Ing. Ziad Mahmoud

    Ing. Ziad Mahmoud

    Assistant d'enseignement à l'Université de Faros, Ziad a dispensé plus de 3000 heures de formation et de conseil à plus de 600 stagiaires.
    12.7K vues4 cours

    Cours similaires