A mon sens, il y a quelques confusions sur les definitions donnees en intro.
Pour etre sur de ne pas trop dire de betises, je me base sur The Elements ofStatistical Learning (gratuit en ligne) et Artificial Intelligence: A Modern Approach.
Le machine learning permet de trouver une solution a un problème à partir des données.
On distingue :
- l'apprentissage supervisé, qui consiste à analyser dans un premier temps des données contenant le classement attendu, puis a appliquer sur d'autres donnees dont le classement n'est pas connue
- l'apprentissage non supervisé, qui consiste à classer des données sans connaissances préalable
Pour reprendre l'exemple de Russel et Iving, si on prend comme exemple la detection de spams :
- une approche classique serait d'écrire des règles du type "si le mail contient plus de 50% de majuscules, c'est probablement un spam".
- une approche supervisée consiste à donner une liste de mails a l'algorithme, en indiquant les spams et non spams. L'algo en déduit des règles permettant de classer au mieux les spams et non spams. Puis on applique ces regles sur des emails sont l'algo ne sait pas si ce sont des spams ou non.
- une approche non-supervisée consiste à donner directement les mails à l'algo et celui-ci essaie de regrouper les mails les plus semblables ensembles et de séparer les emails les plus dissemblables. L'algo est dans ce cas incapable de séparer en spam/non spam, mais si on lui donne un mail, il pourra dire qu'il est plus proche de tel groupe de mails ou de tel autre groupe.
Tout simplement qu'au début, un algorithme de machine learning ne sait rien faire ; puis, au fur et à mesure qu'il s'entraîne sur des données, il est capable de répondre de plus en plus efficacement à la tâche qu'on lui demande de faire.
les algorithmes de machine learning classique, où l'ordinateur est capable d'effectuer un apprentissage à partir de données pré-traitées ;
Donc ca, c'est pas le machine learning, mais l'apprentissage supervisé.
et enfin le deep learning, où l'algorithme apprend lui-même à faire le pré-traitement, avant de passer à l'étape d'apprentissage.
Et ca, c'est du non supervisee.
Le deep learning, c'est autre chose. C'est l'application du learning pour des problématiques complexes, sur des grosses bases de donnees.
Mais avant toute chose, un SVM, c'est quoi ? C'est tout simplement un algorithme qui, étant donné une entrée, est capable d'assigner une catégorie à cette entrée. Par exemple, on peut entraîner un SVM de telle sorte que, quand on lui présente les caraactéristiques d'un fruit (taille, poids, diamètre…), il soit capable de dire si c'est une pêche, une poire, une fraise… Sans que l'on ait jamais dit au SVM ce qu'est une fraise ! Comme tous les algorithmes de machine learning, le SVM l'aura appris tout seul, à partir d'exemples d'entraînement.
Donc non. Lors de l'apprentissage, on presente un certain nombre de fruits à l'algo, en lui disant si c'est une fraise ou non. Et l'algo "apprend" quels sont les caractéristiques qui permettent de faire la différence entre une fraise ou non.
D'ailleurs, dans tes exemples ensuite, tu dis bien que l'on donne au SVM les labels des points lors de l'apprentissage.
plus particulièrement des SVM, qui sont un des outils de machine learning particulièrement efficaces pour la classification.
"efficace" est peut être trop subjectif. Il est populaire, assez ancien et bien connu, pas trop complexe à comprendre, mais c'est peut être gênant de parler d'efficacité en dehors de tout contexte.