Thématiques principales

mercredi 3 avril 2019

Math: Linéarité or not linéarité

Un petit aparté avant de traiter l’astuce du noyau et son utilisation dans les SVM pour parler de la linéarité et de la non linéarité.

Principe de la linéarité

Des données sont dites linéaires lorsqu'il est possible de construire un modèle de ces données en s’appuyant sur une équation linéaire. Pour rappel, une équation linéaire est une équation du type:
TODO Généralisable en dimension n sous la forme:
TODO Que l’on peut réécrire sous forme matricielle:
TODO Souvent c’est à partir de la que l’on va appliquer les algorithmes de machine learning afin de rechercher les paramètres W optimaux à partir d’un jeu de données (mais cela on l’a vu dans les articles précédents en minimisant la distance des points à la moyenne par exemple où avec l'équation normale).

Pourtant, si les SVM sont une approche de machine learning efficace pour la classification ou la régression sur des ensembles de données linéaires (ou linéairement séparable) cet outil n’est pas adapté à une utilisation sur des ensembles de données non linéaire ou du moins pas directement.

Mais qu’est ce que l’on appel des données non-linéaires ?

La non linéarité

La non linéarité du coup c’est le reste! Ok merci au revoir….

Non, bon ok, ça parait un peu facile dit comme ça mais en fait ça se limite vraiment à ça! Donc ca signifie que toute construction à base d’exponentielle, de logarithme, de passage à la puissance ou faisant intervenir une quelconque dérivée est non linéaire. il en existe bien d’autre forme, les pire étant les systèmes chaotique (mais nous n’irons pas ici jusqu'à la).

Mais cela parait assez vite logique lorsque l’on observe un peu ces fonctions car elles ont un profil typiquement non linéaire. Par exemple les fonctions exp, log et x à différents niveau de puissances



Mais du coup on en fait quoi de la non linéarité? Et bien c’est un sujet difficile qu’il faut appréhender un peu cas par cas car chaque non linéarité peut être issue de mécanisme varié.

Cependant en machine learning, il existe une approche efficace qui permet de ramener un problème non linéaire (pas chaotique) en un problème linéaire, c’est l’utilisation du kernel-trick! Rien que ça…. mais on en parlera dans le prochain article.

Aucun commentaire:

Enregistrer un commentaire