Plusieurs algorithmes d'apprentissage automatique populaires tels que la régression logistique ou les réseaux de neurones nécessitent que ses entrées soient numériques.
Ce qui m'intéresse, c'est comment vous faites fonctionner ces algorithmes sur des entrées non numériques (telles que des chaînes courtes).
Par exemple, disons que nous construisons un système de classification des e-mails (spam / non spam), où l'une des fonctionnalités d'entrée est l'adresse de l'expéditeur.
Pour pouvoir utiliser un algorithme d'apprentissage, nous devons représenter l'adresse de l'expéditeur sous forme de nombre. Une façon consiste simplement à numéroter les expéditeurs 1..n. Notre ensemble d'entraînement pourrait alors ressembler à ceci:
Cela ne fonctionnera pas, cependant, car des algorithmes tels que la régression logistique ou les réseaux de neurones apprennent des modèles dans les données d'entrée, tandis que dans notre exemple, la sortie semble totalement aléatoire pour l'algorithme. En effet, une fois en classe universitaire, nous avons essayé de former un réseau neuronal sur un ensemble de données qui ressemblait à ceci et le réseau n'a pu rien apprendre (la courbe d'apprentissage était plate).
Pourriez-vous utiliser la régression logistique ou les réseaux de neurones dans cet exemple? Si oui, de quelle manière? Sinon, quelle serait une bonne façon de classer les e-mails en fonction de l'adresse de l'expéditeur?
Une réponse parfaite serait de discuter de l'exemple de classification des e-mails ainsi que de la gestion des chaînes courtes en ML en général.