SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
Natural Language
Processing en Python
Qui suis-je ?
Formation scientifique (biologie et
informatique fondamentale)
Machine learning (traitement du langage)
et développement (Python principalement)
Depuis janvier, chez Likeabird
Le traitement automatique du langage naturel est
une discipline à la frontière de la linguistique, de
l'informatique et de l'intelligence artificielle, qui
concerne l'application de programmes et
techniques informatiques à tous les aspects du
langage humain.
Génération automatique de texte
Traduction automatique
Classification de texte (ex: spam)
Natural Language Understanding
Applications
Application de techniques
d'apprentissage statistique pour
identifier de manière automatique des
patterns dans les données.
Introduction (très rapide)
au machine learning (1)
Différents types de tâches, notamment :
la régression, estimation d'une valeur numérique.
Exemple : quel serait le prix de vente d'une
maison, en fonction de sa superficie, de
l'emplacement, de la présence d'un garage,... ?
la classification, attribution d'un label à une
entité. Exemple : Est-ce que ce mail est un spam ?
(2 catégories, Spam et None).
Introduction (très rapide)
au machine learning (2)
Assez souvent, apprentissage supervisé :
l'algorithme apprend à partir de données taggées
qu'on lui fourni.
Introduction (très rapide)
au machine learning (3)
On part d'un ensemble de données qu'on a
manuellement classifié.
Généralement, on sépare ce jeu de données en deux:
un jeu d'entraînement, qui permettra à
l'algorithme d'apprendre à classifier à partir
d'exemple
un jeu de test, qui permet de mesurer la capacité
de généralisation du modèle : capacité à prédire la
classe d'un objet inconnu du modèle
Procédure standard
On extrait des features (un vecteur) associés à
chaque élément de notre jeu de donnée.
Quels critères de décision
pour le modèle ?
Modèle standard de
classification de texte : Bag of
Words
Idée : un texte peut être représenté par la
fréquence de chaque mot qui le compose.
Soit un vocabulaire V de taille n. On peut
représenter un document par un vecteur
où correspond à la fréquence du
mot d'index i dans le document.
x ∈Rn
xi
Démo
Word Embedding
Il est parfois souhaitable d'avoir une
représentation vectorielle d'un mot (word
embedding).
E.g: similarité sémantique (pomme et orange vs
pomme et mairie), ou comme input à un réseau
de neurones.
En 2013, Mikolov et al. présentent un ensembles de
modèles appelés Word2Vec qui permettent d'apprendre
de manière non supervisée la distribution vectorielle de
mots.
2 méthodes pour y arriver :
cbow (Continuous bag of words), prédiction du mot en
fonction de son contexte
skip-gram, prédiction du contexte en fonction du mot
Word2Vec
Contexte du mot
from Chris McCormick (http://mccormickml.com)
Réseau de neurones
from Chris McCormick (http://mccormickml.com)
Paris - France + Italy
= Rome
SpaCy
Une nouvelle bibliothèque Python de
traitement du langage :
rapide (!)
versatile
API de très bonne qualité
Support de l'anglais et de l'allemand pour le moment
Démo (2)
Conclusion
Un domaine qui évolue très vite
Nouvelles approches inspirées du deep
learning en reconnaissance d'image
(réseaux de neurone à attention,...)
Python est positionné comme un des
langages favoris en NLP et machine
learning

Contenu connexe

Similaire à Deck 11

PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.pptPROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
EddySHANGA
 
Content analytics slideshare aproged
Content analytics slideshare aprogedContent analytics slideshare aproged
Content analytics slideshare aproged
Aproged
 
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
JUSTINDAVONDAMBAT
 
Ppt exposé du 31 août 2021 - L'analyse du discours numérique - Facultad de de...
Ppt exposé du 31 août 2021 - L'analyse du discours numérique - Facultad de de...Ppt exposé du 31 août 2021 - L'analyse du discours numérique - Facultad de de...
Ppt exposé du 31 août 2021 - L'analyse du discours numérique - Facultad de de...
Pablo Luna
 

Similaire à Deck 11 (20)

le NLP à l'ére de l'IA
le NLP à l'ére de l'IAle NLP à l'ére de l'IA
le NLP à l'ére de l'IA
 
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.pptPROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
 
Who is watson?
Who is watson?Who is watson?
Who is watson?
 
Visite guidée au pays de la donnée - Traitement automatique des données
Visite guidée au pays de la donnée - Traitement automatique des donnéesVisite guidée au pays de la donnée - Traitement automatique des données
Visite guidée au pays de la donnée - Traitement automatique des données
 
GenAI dans les professional services - LLM vs RAG
GenAI dans les professional services - LLM vs RAGGenAI dans les professional services - LLM vs RAG
GenAI dans les professional services - LLM vs RAG
 
Programmation orientee aspect 201401 - Ensim
Programmation orientee aspect 201401 - EnsimProgrammation orientee aspect 201401 - Ensim
Programmation orientee aspect 201401 - Ensim
 
Les technologies TAL et le futur du SEO
Les technologies TAL et le futur du SEOLes technologies TAL et le futur du SEO
Les technologies TAL et le futur du SEO
 
Introduction à la fouille de textes et positionnement de l'offre logicielle
Introduction à la fouille de textes et positionnement de l'offre logicielleIntroduction à la fouille de textes et positionnement de l'offre logicielle
Introduction à la fouille de textes et positionnement de l'offre logicielle
 
Tutoriel java
Tutoriel javaTutoriel java
Tutoriel java
 
Deep learning
Deep learningDeep learning
Deep learning
 
Search Foresight - Word Embeddings - 2017 avril lyon
Search Foresight - Word Embeddings - 2017 avril lyonSearch Foresight - Word Embeddings - 2017 avril lyon
Search Foresight - Word Embeddings - 2017 avril lyon
 
Content analytics slideshare aproged
Content analytics slideshare aprogedContent analytics slideshare aproged
Content analytics slideshare aproged
 
Introduction text mining
Introduction text miningIntroduction text mining
Introduction text mining
 
Exploiter les données d'outils avancés pour optimiser ses textes pour le SEO
Exploiter les données d'outils avancés pour optimiser ses textes pour le SEOExploiter les données d'outils avancés pour optimiser ses textes pour le SEO
Exploiter les données d'outils avancés pour optimiser ses textes pour le SEO
 
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
 
Programmer canope rouen_2
Programmer canope rouen_2Programmer canope rouen_2
Programmer canope rouen_2
 
Fact Sheet : IA, Machine Learning, NLP
Fact Sheet : IA, Machine Learning, NLPFact Sheet : IA, Machine Learning, NLP
Fact Sheet : IA, Machine Learning, NLP
 
extraire, représenter et traiter la social data avec r. seconde partie: appli...
extraire, représenter et traiter la social data avec r. seconde partie: appli...extraire, représenter et traiter la social data avec r. seconde partie: appli...
extraire, représenter et traiter la social data avec r. seconde partie: appli...
 
Conf mapcolldoct24.05
Conf mapcolldoct24.05Conf mapcolldoct24.05
Conf mapcolldoct24.05
 
Ppt exposé du 31 août 2021 - L'analyse du discours numérique - Facultad de de...
Ppt exposé du 31 août 2021 - L'analyse du discours numérique - Facultad de de...Ppt exposé du 31 août 2021 - L'analyse du discours numérique - Facultad de de...
Ppt exposé du 31 août 2021 - L'analyse du discours numérique - Facultad de de...
 

Deck 11

  • 2. Qui suis-je ? Formation scientifique (biologie et informatique fondamentale) Machine learning (traitement du langage) et développement (Python principalement) Depuis janvier, chez Likeabird
  • 3. Le traitement automatique du langage naturel est une discipline à la frontière de la linguistique, de l'informatique et de l'intelligence artificielle, qui concerne l'application de programmes et techniques informatiques à tous les aspects du langage humain.
  • 4. Génération automatique de texte Traduction automatique Classification de texte (ex: spam) Natural Language Understanding Applications
  • 5.
  • 6.
  • 7.
  • 8. Application de techniques d'apprentissage statistique pour identifier de manière automatique des patterns dans les données. Introduction (très rapide) au machine learning (1)
  • 9. Différents types de tâches, notamment : la régression, estimation d'une valeur numérique. Exemple : quel serait le prix de vente d'une maison, en fonction de sa superficie, de l'emplacement, de la présence d'un garage,... ? la classification, attribution d'un label à une entité. Exemple : Est-ce que ce mail est un spam ? (2 catégories, Spam et None). Introduction (très rapide) au machine learning (2)
  • 10. Assez souvent, apprentissage supervisé : l'algorithme apprend à partir de données taggées qu'on lui fourni. Introduction (très rapide) au machine learning (3)
  • 11. On part d'un ensemble de données qu'on a manuellement classifié. Généralement, on sépare ce jeu de données en deux: un jeu d'entraînement, qui permettra à l'algorithme d'apprendre à classifier à partir d'exemple un jeu de test, qui permet de mesurer la capacité de généralisation du modèle : capacité à prédire la classe d'un objet inconnu du modèle Procédure standard
  • 12. On extrait des features (un vecteur) associés à chaque élément de notre jeu de donnée. Quels critères de décision pour le modèle ?
  • 13. Modèle standard de classification de texte : Bag of Words Idée : un texte peut être représenté par la fréquence de chaque mot qui le compose. Soit un vocabulaire V de taille n. On peut représenter un document par un vecteur où correspond à la fréquence du mot d'index i dans le document. x ∈Rn xi
  • 14. Démo
  • 15. Word Embedding Il est parfois souhaitable d'avoir une représentation vectorielle d'un mot (word embedding). E.g: similarité sémantique (pomme et orange vs pomme et mairie), ou comme input à un réseau de neurones.
  • 16. En 2013, Mikolov et al. présentent un ensembles de modèles appelés Word2Vec qui permettent d'apprendre de manière non supervisée la distribution vectorielle de mots. 2 méthodes pour y arriver : cbow (Continuous bag of words), prédiction du mot en fonction de son contexte skip-gram, prédiction du contexte en fonction du mot Word2Vec
  • 17. Contexte du mot from Chris McCormick (http://mccormickml.com)
  • 18. Réseau de neurones from Chris McCormick (http://mccormickml.com)
  • 19. Paris - France + Italy = Rome
  • 20. SpaCy Une nouvelle bibliothèque Python de traitement du langage : rapide (!) versatile API de très bonne qualité Support de l'anglais et de l'allemand pour le moment
  • 22. Conclusion Un domaine qui évolue très vite Nouvelles approches inspirées du deep learning en reconnaissance d'image (réseaux de neurone à attention,...) Python est positionné comme un des langages favoris en NLP et machine learning