Le téléphone qui devine ton prochain mot
L'intelligence artificielle, ou IA, est un programme qui trouve des motifs dans des exemples et s'en sert pour deviner. Ton téléphone le fait quand il te propose le mot suivant d'un message.
L'IA est dans des applis que tu utilises tous les jours. Savoir ce qu'elle est, et ce qu'elle n'est pas, t'aide à bien t'en servir.
À la fin de cette leçon
Remarque
Je peux expliquer ce qu'est l'IA et ce qu'elle n'est pas.
Mots clés
| Mot | Ce que ça veut dire |
|---|---|
| IA | un programme qui devine à partir de motifs trouvés dans des exemples |
| Motif | une chose qui revient souvent |
| Exemple | une donnée dont le programme apprend |
| Entraînement | montrer beaucoup d'exemples à un programme |
| Supposition | une réponse qui peut être juste ou fausse |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
L'IA trouve des motifs et devine
Un programme ordinaire suit des règles écrites par une personne. Un programme d'IA, lui, reçoit des milliers d'exemples. C'est l'entraînement. Le programme trouve les motifs, puis s'en sert pour deviner.
Un filtre anti-spam en est un. Il a vu beaucoup de messages marqués spam ou pas spam. Il devine de quel côté est un nouveau message.
Un petit chercheur de motifs à lancer
Le programme ci-dessous a quatre messages déjà triés par une personne. Pour un nouveau message, il compte les mots en commun avec chaque message trié. Le côté qui a le plus de mots en commun gagne.
Appuie sur Run. Puis change le dernier message pour un message à toi et relance.
Devine : spam ou pas
# Des messages déjà triés par une personne.
exemples = [
["gagne un téléphone gratuit maintenant", "spam"],
["cadeau gratuit clique maintenant", "spam"],
["tu viens au foot ce soir", "ok"],
["on se voit au bus de huit heures", "ok"],
]
def devine(message):
spam = 0
ok = 0
for exemple in exemples:
for mot in message.split():
if mot in exemple[0].split():
if exemple[1] == "spam":
spam = spam + 1
else:
ok = ok + 1
if spam > ok:
return "spam"
if ok > spam:
return "ok"
return "pas sûr"
print(devine("téléphone gratuit"))
print(devine("foot ce soir"))
print(devine("bonjour tout le monde"))
Un nouvel exemple change la supposition
Un chercheur de motifs ne connaît que ses exemples. Donne-lui un exemple de plus et ses suppositions peuvent changer.
Ci-dessous, un message ok qui parle d'un téléphone a été ajouté. Appuie sur Run. Au premier Run, un message sur un téléphone était classé spam.
Ajoute un exemple
exemples = [
["gagne un téléphone gratuit maintenant", "spam"],
["cadeau gratuit clique maintenant", "spam"],
["tu viens au foot ce soir", "ok"],
["on se voit au bus de huit heures", "ok"],
# Le nouvel exemple.
["mon nouveau téléphone est super", "ok"],
]
def devine(message):
spam = 0
ok = 0
for exemple in exemples:
for mot in message.split():
if mot in exemple[0].split():
if exemple[1] == "spam":
spam = spam + 1
else:
ok = ok + 1
if spam > ok:
return "spam"
if ok > spam:
return "ok"
return "pas sûr"
print(devine("nouveau téléphone"))
Ce que l'IA n'est pas
L'IA n'est pas une personne. Elle n'a ni émotions, ni opinions, ni idée de ce qui est vrai. Elle ne comprend pas un message comme toi.
Elle vaut ce que valent ses exemples. Des exemples faux donnent des suppositions fausses. Des exemples d'un seul côté donnent des suppositions d'un seul côté.
Exemple : où tu croises l'IA
| Où | Ce qu'elle devine |
|---|---|
| Le clavier du téléphone | Le prochain mot que tu vas taper |
| Une appli de musique | Un morceau qui pourrait te plaire |
| Une appli de cartes | Le temps de trajet du bus |
| Un filtre anti-spam | Si un message est du spam |
| Un chatbot | Les mots d'une réponse |
| Le site d'une boutique | Ce que tu pourrais acheter ensuite |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Une erreur fréquente
Attention
Beaucoup croient que l'IA les comprend comme une personne. Ce n'est pas le cas. Elle relie des motifs tirés d'exemples, donc elle peut paraître très maligne et se tromper sur des choses simples.
Pour aller plus loin : des exemples d'un côté
Dans le Run, les deux exemples de spam parlent de cadeaux et de téléphones. Un vrai message sur un nouveau téléphone pourrait donc être classé spam.
Ajoute deux exemples à la liste, un spam et un ok. Quels nouveaux messages le programme devine-t-il mieux ?