Régression linéaire et méthodes pour sa récupération

Régression linéaire et méthodes pour sa récupération
Source: xkcd

La rĂ©gression linĂ©aire est l'un des algorithmes de base pour de nombreux domaines liĂ©s Ă  l'analyse des donnĂ©es. La raison de ceci est Ă©vidente. Il s’agit d’un algorithme trĂšs simple et comprĂ©hensible, qui a contribuĂ© Ă  son utilisation gĂ©nĂ©ralisĂ©e depuis plusieurs dizaines, voire centaines d’annĂ©es. L’idĂ©e est de supposer une dĂ©pendance linĂ©aire d’une variable Ă  l’égard d’un ensemble d’autres variables, puis d’essayer de restaurer cette dĂ©pendance.

Mais cet article ne vise pas Ă  utiliser la rĂ©gression linĂ©aire pour rĂ©soudre des problĂšmes pratiques. Nous examinerons ici les fonctionnalitĂ©s intĂ©ressantes de la mise en Ɠuvre d'algorithmes distribuĂ©s pour sa rĂ©cupĂ©ration, que nous avons rencontrĂ©s lors de l'Ă©criture d'un module d'apprentissage automatique dans Apache Ignite. Un peu de mathĂ©matiques de base, d'apprentissage automatique et d'informatique distribuĂ©e peuvent vous aider Ă  comprendre comment effectuer une rĂ©gression linĂ©aire mĂȘme lorsque vos donnĂ©es sont rĂ©parties sur des milliers de nƓuds.

Qu'est-ce que c'est?

Nous sommes confrontĂ©s Ă  la tĂąche de restaurer la dĂ©pendance linĂ©aire. En tant que donnĂ©es d'entrĂ©e, un ensemble de vecteurs de variables supposĂ©es indĂ©pendantes est donnĂ©, dont chacun est associĂ© Ă  une certaine valeur de la variable dĂ©pendante. Ces donnĂ©es peuvent ĂȘtre reprĂ©sentĂ©es sous la forme de deux matrices :

Régression linéaire et méthodes pour sa récupération

Maintenant, puisque la dĂ©pendance est supposĂ©e, et de plus linĂ©aire, nous Ă©crirons notre hypothĂšse sous la forme d'un produit de matrices (pour simplifier l'enregistrement, ici et ci-dessous on suppose que le terme libre de l'Ă©quation est cachĂ© derriĂšre RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration, et la derniĂšre colonne de la matrice RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration contient des unitĂ©s) :

Régression linéaire et méthodes pour sa récupération

Cela ressemble beaucoup Ă  un systĂšme d’équations linĂ©aires, n’est-ce pas ? Il semble que, mais il n'y aura trĂšs probablement pas de solutions Ă  un tel systĂšme d'Ă©quations. La raison en est le bruit, prĂ©sent dans presque toutes les donnĂ©es rĂ©elles. Une autre raison peut ĂȘtre l'absence de dĂ©pendance linĂ©aire en tant que telle, qui peut ĂȘtre combattue en introduisant des variables supplĂ©mentaires qui dĂ©pendent de maniĂšre non linĂ©aire des variables d'origine. Prenons l'exemple suivant :
Régression linéaire et méthodes pour sa récupération
Source: Wikipédia

Ceci est un exemple simple de rĂ©gression linĂ©aire qui montre la relation entre une variable (le long de l'axe RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration) Ă  partir d'une autre variable (le long de l'axe RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration). Pour que le systĂšme d'Ă©quations linĂ©aires correspondant Ă  cet exemple ait une solution, tous les points doivent se trouver exactement sur la mĂȘme droite. Mais ce n'est pas vrai. Mais ils ne se situent pas sur la mĂȘme ligne droite prĂ©cisĂ©ment Ă  cause du bruit (ou parce que l’hypothĂšse d’une relation linĂ©aire Ă©tait erronĂ©e). Ainsi, afin de restaurer une relation linĂ©aire Ă  partir de donnĂ©es rĂ©elles, il est gĂ©nĂ©ralement nĂ©cessaire d'introduire une hypothĂšse supplĂ©mentaire : les donnĂ©es d'entrĂ©e contiennent du bruit et ce bruit a distribution normale. Vous pouvez faire des hypothĂšses sur d'autres types de distribution du bruit, mais dans la grande majoritĂ© des cas, c'est la distribution normale qui est prise en compte et qui sera discutĂ©e plus en dĂ©tail.

Méthode du maximum de vraisemblance

Nous avons donc supposĂ© la prĂ©sence d’un bruit alĂ©atoire normalement distribuĂ©. Que faire dans une telle situation ? Pour ce cas en mathĂ©matiques, il existe et est largement utilisĂ© mĂ©thode du maximum de vraisemblance. Bref, son essence rĂ©side dans le choix fonctions de vraisemblance et sa maximisation ultĂ©rieure.

Nous revenons Ă  la restauration d'une relation linĂ©aire Ă  partir de donnĂ©es avec un bruit normal. Notez que la relation linĂ©aire supposĂ©e est l'espĂ©rance mathĂ©matique RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration distribution normale existante. En mĂȘme temps, la probabilitĂ© que RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration prend une valeur ou une autre, sous rĂ©serve de la prĂ©sence d'observables RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration, ressemble Ă  ceci:

Régression linéaire et méthodes pour sa récupération

Remplaçons maintenant Ă  la place RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration Đž RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration Les variables dont nous avons besoin sont :

Régression linéaire et méthodes pour sa récupération

Il ne reste plus qu'Ă  trouver le vecteur RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration, auquel cette probabilitĂ© est maximale. Pour maximiser une telle fonction, il convient d'en prendre d'abord un logarithme (le logarithme de la fonction atteindra un maximum au mĂȘme point que la fonction elle-mĂȘme) :

Régression linéaire et méthodes pour sa récupération

Ce qui revient Ă  minimiser la fonction suivante :

Régression linéaire et méthodes pour sa récupération

D’ailleurs, cela s’appelle une mĂ©thode moindres carrĂ©s. Souvent, toutes les considĂ©rations ci-dessus sont omises et cette mĂ©thode est simplement utilisĂ©e.

Décomposition QR

Le minimum de la fonction ci-dessus peut ĂȘtre trouvĂ© en trouvant le point auquel le gradient de cette fonction est nul. Et le dĂ©gradĂ© s’écrira ainsi :

Régression linéaire et méthodes pour sa récupération

DĂ©composition QR est une mĂ©thode matricielle pour rĂ©soudre le problĂšme de minimisation utilisĂ©e dans la mĂ©thode des moindres carrĂ©s. À cet Ă©gard, nous réécrivons l'Ă©quation sous forme matricielle :

Régression linéaire et méthodes pour sa récupération

On dĂ©compose donc la matrice RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration aux matrices RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration Đž RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration et effectuer une sĂ©rie de transformations (l'algorithme de dĂ©composition QR lui-mĂȘme ne sera pas considĂ©rĂ© ici, seulement son utilisation en relation avec la tĂąche Ă  accomplir) :

Régression linéaire et méthodes pour sa récupération

Matrice Régression linéaire et méthodes pour sa récupération est orthogonal. Cela nous permet de nous débarrasser du travail Régression linéaire et méthodes pour sa récupération:

Régression linéaire et méthodes pour sa récupération

Et si tu remplaces RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration sur RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration, alors ça ira RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration... Étant donnĂ© que RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration est une matrice triangulaire supĂ©rieure, elle ressemble Ă  ceci :

Régression linéaire et méthodes pour sa récupération

Ce problĂšme peut ĂȘtre rĂ©solu en utilisant la mĂ©thode de substitution. ÉlĂ©ment RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration est situĂ© comme RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration, Ă©lĂ©ment prĂ©cĂ©dent RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration est situĂ© comme RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration et ainsi de suite.

Il convient de noter ici que la complexitĂ© de l'algorithme rĂ©sultant en raison de l'utilisation de la dĂ©composition QR est Ă©gale Ă  RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration. De plus, malgrĂ© le fait que l’opĂ©ration de multiplication matricielle soit bien parallĂ©lisĂ©e, il n’est pas possible d’écrire une version distribuĂ©e efficace de cet algorithme.

Descente graduelle

Lorsqu'on parle de minimiser une fonction, il convient toujours de rappeler la mĂ©thode de descente de gradient (stochastique). Il s'agit d'une mĂ©thode de minimisation simple et efficace basĂ©e sur le calcul itĂ©ratif du gradient d'une fonction en un point, puis sur son dĂ©placement dans la direction opposĂ©e au gradient. Chacune de ces Ă©tapes rapproche la solution du minimum. Le dĂ©gradĂ© est toujours le mĂȘme :

Régression linéaire et méthodes pour sa récupération

Cette mĂ©thode est Ă©galement bien parallĂ©lisĂ©e et distribuĂ©e en raison des propriĂ©tĂ©s linĂ©aires de l'opĂ©rateur gradient. Notez que dans la formule ci-dessus, sous le signe somme se trouvent des termes indĂ©pendants. En d’autres termes, nous pouvons calculer le gradient indĂ©pendamment pour tous les indices RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration du premier au RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration, en parallĂšle, calculez le gradient pour les indices avec RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration Ă  RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration. Ajoutez ensuite les dĂ©gradĂ©s obtenus. Le rĂ©sultat de l'addition sera le mĂȘme que si l'on calculait immĂ©diatement le gradient des indices du premier au RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration. Ainsi, si les donnĂ©es sont rĂ©parties sur plusieurs donnĂ©es, le gradient peut ĂȘtre calculĂ© indĂ©pendamment sur chaque piĂšce, puis les rĂ©sultats de ces calculs peuvent ĂȘtre additionnĂ©s pour obtenir le rĂ©sultat final :

Régression linéaire et méthodes pour sa récupération

Du point de vue de la mise en Ɠuvre, cela correspond au paradigme MapReduce. A chaque Ă©tape de descente de gradient, une tĂąche est envoyĂ©e Ă  chaque nƓud de donnĂ©es pour calculer le gradient, puis les gradients calculĂ©s sont rassemblĂ©s et le rĂ©sultat de leur somme est utilisĂ© pour amĂ©liorer le rĂ©sultat.

MalgrĂ© la facilitĂ© de mise en Ɠuvre et la capacitĂ© d'exĂ©cution dans le paradigme MapReduce, la descente de gradient prĂ©sente Ă©galement des inconvĂ©nients. En particulier, le nombre d’étapes nĂ©cessaires pour parvenir Ă  la convergence est nettement plus Ă©levĂ© que celui d’autres mĂ©thodes plus spĂ©cialisĂ©es.

LSQR

LSQR est une autre mĂ©thode de rĂ©solution du problĂšme, qui convient Ă  la fois pour restaurer la rĂ©gression linĂ©aire et pour rĂ©soudre des systĂšmes d'Ă©quations linĂ©aires. Sa principale caractĂ©ristique est de combiner les avantages des mĂ©thodes matricielles et d’une approche itĂ©rative. Des implĂ©mentations de cette mĂ©thode peuvent ĂȘtre trouvĂ©es dans les deux bibliothĂšques SciPyet MATLAB. Une description de cette mĂ©thode ne sera pas donnĂ©e ici (elle se trouve dans l'article LSQR : un algorithme pour les Ă©quations linĂ©aires clairsemĂ©es et les moindres carrĂ©s clairsemĂ©s). Au lieu de cela, une approche sera dĂ©montrĂ©e pour adapter LSQR Ă  l'exĂ©cution dans un environnement distribuĂ©.

La mĂ©thode LSQR est basĂ©e sur procĂ©dure de bidiagonalisation. Il s'agit d'une procĂ©dure itĂ©rative, chaque itĂ©ration comprenant les Ă©tapes suivantes :
Régression linéaire et méthodes pour sa récupération

Mais si l'on suppose que la matrice RĂ©gression linĂ©aire et mĂ©thodes pour sa rĂ©cupĂ©ration est partitionnĂ© horizontalement, alors chaque itĂ©ration peut ĂȘtre reprĂ©sentĂ©e comme deux Ă©tapes MapReduce. De cette maniĂšre, il est possible de minimiser les transferts de donnĂ©es lors de chaque itĂ©ration (uniquement des vecteurs de longueur Ă©gale au nombre d'inconnues) :

Régression linéaire et méthodes pour sa récupération

C'est cette approche qui est utilisĂ©e lors de la mise en Ɠuvre de la rĂ©gression linĂ©aire dans Apache Ignite ML.

Conclusion

Il existe de nombreux algorithmes de rĂ©cupĂ©ration par rĂ©gression linĂ©aire, mais tous ne peuvent pas ĂȘtre appliquĂ©s dans toutes les conditions. La dĂ©composition QR est donc excellente pour une solution prĂ©cise sur de petits ensembles de donnĂ©es. La descente de gradient est simple Ă  mettre en Ɠuvre et permet de trouver rapidement une solution approximative. Et LSQR combine les meilleures propriĂ©tĂ©s des deux algorithmes prĂ©cĂ©dents, car il peut ĂȘtre distribuĂ©, converge plus rapidement que la descente de gradient et permet Ă©galement un arrĂȘt prĂ©coce de l'algorithme, contrairement Ă  la dĂ©composition QR, pour trouver une solution approximative.

Source: habr.com

Achetez un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Achetez un hĂ©bergement web fiable avec protection DDoS, serveurs VPS et VDS | ProHoster