1. Hello les copains

Etes-vous confus devant une matrice de confusion ?

Vous n'arrivez pas à retenir ce que sont les indicateurs "precision", "recall", "accuracy" ?

Je pense que ce thread devrait vous aider.

🔽🔽 Thread

#datascience #MachineLearning #iA
2. Personnellement, ces notions autour de la matrice de confusion, j'ai mis un bon bout de temps avant de les retenir une fois pour toute.

Et pour retenir tout ça, j'ai un super moyen mnémotechnique que je vais vous donner.

Ready?
3. D'abord de quoi parle-t-on ?

On parle de résultats d'une classification faite par un modèle de Machine Learning (Regression logistique, SVM, RF, KNN, Réseau de neurones, Naive Bayes ... et j'en passe)
4. Une classification, cela donne a priori deux types de résultats.

> Un résultat "positif" (la classe 1 est prédite)

> ou un résultat "négatif" (la classe 1 n'a pas été prédite, et donc on classifie en classe 2)
5. IMPORTANT !

Il n'y a aucun jugement de valeur dans les termes positif et négatif.

Ils sont juste relatifs à la question posée :

> le patient est-il malade ?
> Peut-on prêter de l'argent à ce client ?
> Ce client va-t-il acheter ce produit ?
etc
6. Partant de tout cela, quand le modèle produit un résultat,

> soit il classifie bien
> soit il classifie mal

Pour l'instant vous devriez me suivre ...
7. Et quand il classifie bien, il y a deux cas :

> il peut bien classer les cas positifs (réponse oui à la question posée)

> et les cas négatifs (réponse non à la question posée)
8. Les positifs bien prédits par le modèle, on les appelle les "True Positive" ou "Vrais positifs".

Et les négatifs bien prédits, on les appelle les "True négative" ou "Vrais négatifs"
9. Maintenant quand le modèle fait une erreur, elle peut être de deux sortes
10. Soit c'est un Positif et le modèle l'a classifié en Négatif

On parle alors de "Faux Négatifs" ou "False Negative"
11. Soit c'est un Négatif et le modèle l'a classifié en Positif

On parle alors de "Faux positif" ou "False Positive"
12. Ces deux cas d'erreurs sont très différents l'un de l'autre, et il faut bien en avoir conscience.

Prenons des exemples bien concrets pour s'en rendre compte
13. Si la question est :

"Le patient a t-il une maladie grave ?".

Dans ce cas, un Faux positif, c'est quelqu'un qui n'a pas de maladie et on lui a prédit qu'il avait une maladie.

Et un faux négatif, c'est quelqu'un qui a une maladie Grave, et on l'a pas détecté
14. Si la question est

"Cet email est-il un spam ?"

un faux positif, c'est un email innocent qui s'est retrouvé dans la boîte de Spam

Et un faux négatif, c'est un Spam qui n'a pas été détecté et qui se retrouve dans la boîte de réception
15. Bref, vous avez compris que ces deux types d'erreurs traduisent des cas d'usage complètement différents, qui peuvent être d'importance inégale suivant la question posée
16. Par exemple

c'est surement plus embêtant d'avoir raté le diagnostic de quelqu'un qui a une maladie grave

que d'annoncer à quelqu'un qu'il a une maladie grave et de se tromper
17. De même pour un vendeur d'antispam

c'est peut être plus embêtant d'avoir un mail innocent dans la boîte de spams

que de laisser passer un vrai Spam dans la boîte de réception
18. Quand j'ai du apprendre toutes ces définitions, le truc qui m'a bien aidé, c'est de renommer "les False Positive" et les "False Negative"

pour leur donner plus de sens
19. Les "False Postive" je les ai renommés en INTRUS

et les "False Negative" en OUBLIES

Quand vous y regardez de plus près, c'est bien de cela dont il s'agit

False Positive = INTRUS
False Negative = OUBLIES
20. Revenons maintenant à notre matrice de confusion.

Il est d'usage de construire cette matrice en fonction des 4 quantités que l'on a vu précédemment

les TN, TP, FN et FP
21. Prenons l'exemple d'un modèle dont le boulot est de détecter les Spams dans un mail.

Une matrice de confusion pourrait ressembler à cela Image
22. Sur la diagonale, il y a ce qu'il a bien fait

> Les spams détectés en Spams (True Positive = TP)

> les non spams détectés en non Spams (True Negative = TN)
23. Et dans les 2 autres cas, ce qu'il a mal fait

> Les vrais spams non détectés (False Negative ou OUBLIES)

> les non spams détectés en spams (False Positive ou INTRUS)
24. Le premier indicateur qui peut être calculé c'est l'ACCURACY

Il calcule le ratio de ce qu'il a fait de bien, par rapport à tout ce qu'il a fait Image
25. Ensuite, on a l'indicateur PRECISION qui fait intervenir les INTRUS.

Cet indicateur va donner la proportion de ce qui a été correctement classifié parmi tout ce que le modèle a classifié comme Positif

on introduit les intrus dans cet indicateur Image
26. Puis vient l'indicateur RECALL qui fait intervenir les oubliés.

L'indicateur va donner tout ce qui a été correctement classifié parmi les vrais positifs (et donc introduire les Oubliés) Image
27. En synthèse -

Si vous avez du mal à retenir ces formules, essayez d'associer

> l'indicateur PRECISION aux INTRUS

> et l'indicateur RECALL aux OUBLIES.

Cela fera très certainement une différence !
28. Merci d'avoir lu jusqu'au bout. N'hésitez pas à liker et partager si cela vous a plu
29. A très vite !

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Objectif Data Science - avec Vincent

Objectif Data Science - avec Vincent Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @ObjectifDataSci

23 Apr
C'est le week-end !

Peut-être aurez vous le temps de lire mes dernières publications.

Au programme :
> Régression Logistique
> Matrice de confusion
> Binary tree : Gini vs Entropy
> Transformers et self Attention
> Les réseaux à convolution

Bonne lecture !

🔽🔽 Thread Image
[Régression Logistique]

Voir différemment cet algorithme et tout comprendre grâce à la géométrie

#datascience #machinelearning #ia

[Matrice de Confusion]

Plus jamais confus (!) par la matrice de confusion grâce à ce truc très simple à retenir

#datascience #machinelearning #iA

Read 6 tweets
23 Apr
1. Hello. Aujourd'hui, je m'attaque à un gros morceau

Les transformers

en particulier la partie self-attention qui en constitue la partie la plus intéressante

Après avoir lu ce thead, j'espère que vous aurez compris les mécanismes en jeu

Ready?

#MachineLearning #DataScience
2. Je vais détailler le fonctionnement des transformers dans le contexte du NLP, qui est le domaine où le premier papier a été publié en 2017 ("Attention is all you need")

A noter que les transformers s'attaquent désormais à d'autres domaines (Vision, Time Series, ...)
3. First things first

Rappelons que dans le NLP, les algorithmes ne comprennent pas "directement" les mots

Il faut que ces mots soient transformés en nombres.

C'est le boulot des algorithmes de "word embedding", qui donc transforment les mots en vecteurs de nombres
Read 37 tweets
21 Apr
1. Hello les copains.

Aujourd'hui on va parler de réseaux de neurones, et en particulier de réseaux de neurones à convolutions.

On va se concentrer surtout sur les filtres à convolutions qui constituent les paramètres d'un #CNN

🔽🔽Thread

#datascience #machinelearning #ia
2. Ce tweet sera l'occasion de revoir les grands principes qu'il y a derrière un tel réseau de neurones.

C'est important de comprendre les rouages qu'il y a derrière tout cela.
3. Pour commencer, on peut dire que "l'hiver de l'IA" s'est terminé grâce aux progrès spectaculaires de cette dernière décennie permis grâce aux CNN.

C'est grâce à leur performance que le monde s'est de nouveau intéressé à ces technologies
Read 39 tweets
20 Apr
Hello,

pour vous y retrouver plus facilement, j'ai rangé ici les Tweets qui donnent accès aux différents threads publiés.

Au programme : tout plein de choses sur le #MachineLearning, la #data, la #datascience, l'#IA et la programmation #Python.

Merci pour vos Like ou vos RT !
La régression Logistique : une autre façon de bien comprendre comment cela fonctionne.

Read 6 tweets
20 Apr
1. Salut les copains

Aujourd'hui on va parler d'un modèle tellement important dans le Machine Learning - Les arbres binaires !

On va voir comment ils sont construits et on va voir également une interprétation géométrique

#datascience #ia #MachineLearning
2. Pour commencer, les arbres binaires sont vieux comme le Machine Learning

C'est un type de modèle qui a constamment évolué, et qui est à la base de modèles phare du moment

Comme les #RandomForest, les #GradientBoosting comme #AdaBoost, #CatBoost, #XGBoost, ...
3. Promis, on verra chacun de ces modèles dans le détail dans des messages dédiés
Read 37 tweets
20 Apr
Salut les copains.

Aujourd'hui, on va parler de régression logistique. Un modèle de ML que tout le monde connait.

Mais je vais faire une approche assez originale.

Ready?

🔽🔽Thread

#datascience #ia #MachineLearning
1/ Petit rappel : la régression logistique permet de faire de la classification entre 2 catégories.

C'est un modèle performant et TRES TRES utilisé à travers le monde.
2/ Exemple de cas d'usage :

> une banque donne un prêt (ou pas)

> le médecin détecte cette maladie (ou pas)

> le site ecommerce propose ce produit au client (ou pas)

> le client se désabonne du service (ou pas)
Read 41 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!