{"id":37955,"date":"2019-10-31T22:20:47","date_gmt":"2019-10-31T19:20:47","guid":{"rendered":"https:\/\/prohoster.info\/blog\/linejnaya-regressiya-i-metody-eyo-vosstanovleniya\/"},"modified":"2019-10-31T22:20:47","modified_gmt":"2019-10-31T19:20:47","slug":"linejnaya-regressiya-i-metody-eyo-vosstanovleniya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/linejnaya-regressiya-i-metody-eyo-vosstanovleniya","title":{"rendered":"Lineare Regression und Methoden ihrer Wiederherstellung","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/60ca67872405e9f15b151e958f04260d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Quelle: <noindex><a rel=\"nofollow\" href=\"https:\/\/xkcd.com\/1725\/\">xkcd<\/a><\/noindex><\/i><\/p>\n<p>Lineare Regression ist einer der grundlegenden Algorithmen f\u00fcr viele Bereiche der Datenanalyse. Der Grund daf\u00fcr ist offensichtlich. Es ist ein sehr einfacher und verst\u00e4ndlicher Algorithmus, der seit vielen Jahrzehnten, wenn nicht Jahrhunderten, weit verbreitet ist. Die Idee besteht darin, dass wir eine lineare Abh\u00e4ngigkeit einer Variablen von einer Menge anderer Variablen annehmen und dann versuchen, diese Abh\u00e4ngigkeit zu rekonstruieren.<\/p>\n<p>Aber dieser Artikel handelt nicht von der Anwendung der linearen Regression zur L\u00f6sung praktischer Probleme. Hier werden interessante Aspekte der Implementierung verteilter Algorithmen zu ihrer Rekonstruktion betrachtet, mit denen wir beim Schreiben des Moduls f\u00fcr maschinelles Lernen in <noindex><a rel=\"nofollow\" href=\"https:\/\/ignite.apache.org\/\">Apache Ignite<\/a><\/noindex>. Ein wenig Grundmathematik, die Grundlagen des maschinellen Lernens und der verteilten Berechnungen helfen zu verstehen, wie man die lineare Regression rekonstruiert, selbst wenn die Daten \u00fcber Tausende von Knoten verteilt sind.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Worum geht es?<\/h3>\n<p>\nVor uns steht die Aufgabe, eine lineare Abh\u00e4ngigkeit zu rekonstruieren. Als Eingabedaten wird eine Menge von Vektoren angeblicher unabh\u00e4ngiger Variablen bereitgestellt, von denen jeder einem bestimmten Wert der abh\u00e4ngigen Variablen zugeordnet wird. Diese Daten k\u00f6nnen in Form von zwei Matrizen dargestellt werden:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/2ffbdd09fdc5efaf287fbb4935033302.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nJetzt, da eine Abh\u00e4ngigkeit angenommen wird, und zudem eine lineare, dr\u00fccken wir unsere Annahme in Form eines Matrizenprodukts aus (zur Vereinfachung der Darstellung wird hier und im Folgenden angenommen, dass das konstante Glied der Gleichung verborgen ist hinter <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/21e90cb829e0bc2e12c836f7810c1b1a.png\" style=\"display:block;margin: 0 auto;\" \/>, und die letzte Spalte der Matrix <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/25c0af2e153ae371e71588efe3bc2ee2.png\" style=\"display:block;margin: 0 auto;\" \/> enth\u00e4lt Einsen):<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/b1c3c8d2332ae27eedeef675178dee4f.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nSieht sehr nach einem System linearer Gleichungen aus, nicht wahr? Es scheint so, aber f\u00fcr ein solches Gleichungssystem wird es wahrscheinlich keine L\u00f6sungen geben. Der Grund daf\u00fcr sind die St\u00f6rungen, die in praktisch allen realen Daten vorhanden sind. Auch das Fehlen einer linearen Abh\u00e4ngigkeit selbst k\u00f6nnte der Grund sein, gegen die man versuchen kann, durch Einf\u00fchrung zus\u00e4tzlicher Variablen vorzugehen, die nichtlinear von den Urspr\u00fcnglichen abh\u00e4ngen. Betrachten wir das folgende Beispiel:<br \/>\n<img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/d449b8f931e91cc7b33634ee8d4a4329.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Quelle: <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Linear_regression\">Wikipedia<\/a><\/noindex><\/i><\/p>\n<p>Dies ist ein einfaches Beispiel f\u00fcr lineare Regression, das die Abh\u00e4ngigkeit einer Variablen (auf der Achse <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/fdea97dff413fb13444d7fd8ab65ca0b.png\" style=\"display:block;margin: 0 auto;\" \/>) von einer anderen Variablen (auf der Achse <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/edf9cb265e4e4655cd84fb8739843952.png\" style=\"display:block;margin: 0 auto;\" \/>). Damit das dem Beispiel entsprechende System linearer Gleichungen eine L\u00f6sung hat, m\u00fcssen alle Punkte genau auf einer Linie liegen. Aber das ist nicht der Fall. Und sie liegen nicht auf einer Linie genau wegen des Rauschens (oder weil die Annahme einer linearen Abh\u00e4ngigkeit fehlerhaft war). Um also die lineare Abh\u00e4ngigkeit aus realen Daten wiederherzustellen, ist es normalerweise erforderlich, eine weitere Annahme einzuf\u00fchren: die Eingabedaten enthalten Rauschen, und dieses Rauschen hat <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Normal_distribution\">eine normale Verteilung<\/a><\/noindex>. Man kann auch Annahmen \u00fcber andere Arten von Rauschverteilungen treffen, aber in den \u00fcberwiegenden F\u00e4llen wird tats\u00e4chlich die normale Verteilung betrachtet, \u00fcber die wir im Folgenden sprechen werden.<\/p>\n<h3>Die Maximum-Likelihood-Methode<\/h3>\n<p>\nAlso haben wir das Vorhandensein von zuf\u00e4llig normalverteiltem Rauschen angenommen. Was tun wir in einer solchen Situation? F\u00fcr diesen Fall gibt es in der Mathematik ein weit verbreitetes Konzept. <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Maximum_likelihood_estimation\">Maximum-Likelihood-Verfahren<\/a><\/noindex>. Kurz gesagt, es besteht darin, <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Likelihood_function\">Likelihood-Funktion<\/a><\/noindex> und dann diese zu maximieren.<\/p>\n<p>Kehren wir zur Wiederherstellung der linearen Abh\u00e4ngigkeit bei Daten mit normalem Rauschen zur\u00fcck. Beachten wir, dass die angenommene lineare Abh\u00e4ngigkeit den mathematischen Erwartungswert <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/73cd24a6605bce1a4f38339ee8c61613.png\" style=\"display:block;margin: 0 auto;\" \/> der vorhandenen normalen Verteilung darstellt. Gleichzeitig ist die Wahrscheinlichkeit, dass <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/caaf32b1af58d748244acbab640bbab8.png\" style=\"display:block;margin: 0 auto;\" \/> einen bestimmten Wert annimmt, unter der Bedingung, dass beobachtbare <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/9cda87721bba4812b7cec96f204ff5f6.png\" style=\"display:block;margin: 0 auto;\" \/>, sieht folgenderma\u00dfen aus:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/7acbd6bff263d52773617904d3249a96.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nJetzt setzen wir anstelle von <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/d5a167a87fa416e938678b2a80b353dc.png\" style=\"display:block;margin: 0 auto;\" \/> und <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/330ad17be2629a5159b513ba95a96c72.png\" style=\"display:block;margin: 0 auto;\" \/> die ben\u00f6tigten Variablen ein:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/57531f93ee0d0050b1fbfc64419f44ad.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nEs bleibt nur noch, den Vektor <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/801ebcd43ae0bc0cf54bc0f68bdc21da.png\" style=\"display:block;margin: 0 auto;\" \/>zu finden, bei dem diese Wahrscheinlichkeit maximal ist. Um eine solche Funktion zu maximieren, ist es praktisch, sie zuerst zu logarithmieren (der Logarithmus der Funktion erreicht sein Maximum an derselben Stelle wie die Funktion selbst):<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/7485448a44f8ee201254fea4208deb54.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nWas wiederum auf die Minimierung der folgenden Funktion hinausl\u00e4uft:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/0957864e5dfbfc1147c24784df67af20.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n\u00dcbrigens wird dies als Methode <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Linear_least_squares\">der kleinsten Quadrate<\/a><\/noindex>bezeichnet. Oft werden alle vorangegangenen \u00dcberlegungen \u00fcbersprungen und es wird einfach diese Methode verwendet.<\/p>\n<h3>QR-Zerlegung<\/h3>\n<p>\nDas Minimum der oben genannten Funktion kann gefunden werden, wenn der Punkt gefunden wird, an dem der Gradient dieser Funktion gleich null ist. Der Gradient wird wie folgt dargestellt:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/1581c46f8fa625826ae2f76ec561dc3f.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/QR_decomposition\">QR-Zerlegung<\/a><\/noindex> ist eine matrizenbasierte Methode zur L\u00f6sung von Minimierungsproblemen, die in der Methode der kleinsten Quadrate verwendet wird. In diesem Zusammenhang schreiben wir die Gleichung in matrixform um:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/4ee809a96550577df855fbd57049a41c.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nAlso zerlegen wir die Matrix <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/2fa2b32bef5246132da5b3b9bc713ab5.png\" style=\"display:block;margin: 0 auto;\" \/> in Matrizen <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/fd8c620c602ae49e8d6e39ef8b551d0b.png\" style=\"display:block;margin: 0 auto;\" \/> und <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/32804631a9a2f8bff35d0bcf7c29bfc6.png\" style=\"display:block;margin: 0 auto;\" \/> und f\u00fchren eine Reihe von Transformationen durch (der Algorithmus der QR-Zerlegung wird hier nicht betrachtet, sondern nur seine Anwendung f\u00fcr die gestellte Aufgabe):<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/56cfb4ed9126e632cba51940c0d9afe6.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nDie Matrix <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/106bb4d6704eb9f42078555c662a8b97.png\" style=\"display:block;margin: 0 auto;\" \/> ist orthogonal. Das erm\u00f6glicht es uns, das Produkt zu eliminieren <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/618077c012f7b81f23756b9c1e54eb73.png\" style=\"display:block;margin: 0 auto;\" \/>:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/1715fb2e77d8be75e68e4791997aaa44.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nWenn wir ersetzen <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/926c51120ec8608bf81dc8f36fcc3ef4.png\" style=\"display:block;margin: 0 auto;\" \/> auf <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/9e578153ea2dc36d0eb86be4eedf4899.png\" style=\"display:block;margin: 0 auto;\" \/>, ergibt sich <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/8cd914db7317c01dc5449c70b36dba73.png\" style=\"display:block;margin: 0 auto;\" \/>. Unter Ber\u00fccksichtigung, dass <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/88fa4e81fc2bedf16e41e90e320a5647.png\" style=\"display:block;margin: 0 auto;\" \/> eine obere Dreiecksmatrix ist, sieht das folgenderma\u00dfen aus:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/689eaaece2a497c5bd02582e3e672a41.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nDas kann durch das Ersatzverfahren gel\u00f6st werden. Das Element <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/e163597c97a539238731c31ca5ce011b.png\" style=\"display:block;margin: 0 auto;\" \/> wird gefunden als <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/211d86418c9a38f164f490b1a7b5fb71.png\" style=\"display:block;margin: 0 auto;\" \/>, das vorhergehende Element <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/ed3742b3a7cfb14bad801485a8cf01df.png\" style=\"display:block;margin: 0 auto;\" \/> wird gefunden als <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/b3e582f565e1060b47af4008a98c3524.png\" style=\"display:block;margin: 0 auto;\" \/> und so weiter.<\/p>\n<p>Hier sei darauf hingewiesen, dass die Komplexit\u00e4t des erhaltenen Algorithmus durch die Verwendung der QR-Zerlegung gleich ist <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/c5c20145b7b165120d9979c2e2ca4711.png\" style=\"display:block;margin: 0 auto;\" \/>. Obwohl die Matrixmultiplikation gut parallelisierbar ist, ist es nicht m\u00f6glich, eine effektive verteilte Version dieses Algorithmus zu schreiben.<\/p>\n<h3>Gradientenabstieg<\/h3>\n<p>\nWenn wir \u00fcber die Minimierung einer bestimmten Funktion sprechen, sollte man immer an die Methode (stochastischer) Gradientabstieg denken. Dies ist eine einfache und effektive Methode zur Minimierung, die auf der iterativen Berechnung des Gradienten der Funktion an einem Punkt und der anschlie\u00dfenden Verschiebung in die entgegengesetzte Richtung des Gradienten basiert. Jeder solche Schritt bringt die L\u00f6sung n\u00e4her an das Minimum. Der Gradient sieht dabei wie folgt aus:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/d195806787197323312be7c0b9d8b240.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Diese Methode l\u00e4sst sich ebenfalls gut parallelisieren und verteilen aufgrund der linearen Eigenschaften des Gradientenoperators. Beachten Sie, dass in der obigen Formel unter dem Summenzeichen unabh\u00e4ngige Summanden stehen. Mit anderen Worten, wir k\u00f6nnen den Gradient unabh\u00e4ngig f\u00fcr alle Indizes <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/0c10d574f70b318b6562fb444e460fa7.png\" style=\"display:block;margin: 0 auto;\" \/> von eins bis <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/c9b39d76c5f724af137b5db3053e1a60.png\" style=\"display:block;margin: 0 auto;\" \/>, parallel dazu den Gradient f\u00fcr Indizes von <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/1a9407fcb4ec67a171463d36dca30a80.png\" style=\"display:block;margin: 0 auto;\" \/> bis <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/f1e29c5b16d68d6377108f53803a9cd0.png\" style=\"display:block;margin: 0 auto;\" \/>berechnen. Dann summieren wir die erhaltenen Gradienten. Das Ergebnis dieser Summierung wird dasselbe sein, als h\u00e4tten wir sofort den Gradient f\u00fcr die Indizes von eins bis <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/c5ec5004c59a5343f22894ef676606e3.png\" style=\"display:block;margin: 0 auto;\" \/>berechnet. Somit, wenn die Daten auf mehrere Datenteile verteilt sind, kann der Gradient unabh\u00e4ngig auf jedem Teil berechnet werden, und die Ergebnisse dieser Berechnungen k\u00f6nnen dann zusammengefasst werden, um das endg\u00fcltige Ergebnis zu erhalten:<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/073ce5e3a6688e3a1ae7774aaff1a843.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Aus Implementierungssicht passt dies in das Paradigma <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/MapReduce\">MapReduce<\/a><\/noindex>. Bei jedem Schritt des Gradientabstiegs wird jedem Dataknoten eine Aufgabe zum Berechnen des Gradienten zugewiesen, dann werden die berechneten Gradienten gesammelt, und das Ergebnis ihrer Summierung wird verwendet, um das Ergebnis zu verbessern.<\/p>\n<p>Trotz der einfachen Implementierung und der M\u00f6glichkeit der Ausf\u00fchrung im MapReduce-Paradigma hat der Gradientensprung auch seine Nachteile. Insbesondere ist die Anzahl der Schritte, die zur Erreichung der Konvergenz erforderlich sind, im Vergleich zu anderen, spezialisierteren Methoden erheblich h\u00f6her.<\/p>\n<h3>LSQR<\/h3>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/web.stanford.edu\/group\/SOL\/software\/lsqr\/\">LSQR<\/a><\/noindex> ist eine weitere Methode zur L\u00f6sung der gestellten Aufgabe, die sowohl f\u00fcr die Wiederherstellung der linearen Regression als auch zur L\u00f6sung von linearen Gleichungssystemen geeignet ist. Ihr Hauptmerkmal besteht darin, dass sie die Vorteile von Matrixmethoden und iterativen Ans\u00e4tzen vereint. Implementierungen dieser Methode sind sowohl in Bibliotheken zu finden <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.scipy.org\/doc\/scipy-0.14.0\/reference\/generated\/scipy.sparse.linalg.lsqr.html\">SciPy<\/a><\/noindex>, als auch in <noindex><a rel=\"nofollow\" href=\"http:\/\/matlab.izmiran.ru\/help\/techdoc\/ref\/lsqr.html\">MATLAB<\/a><\/noindex>. Eine Beschreibung dieser Methode wird hier nicht gegeben (sie kann in dem Artikel gefunden werden <noindex><a rel=\"nofollow\" href=\"https:\/\/web.stanford.edu\/group\/SOL\/software\/lsqr\/lsqr-toms82a.pdf\">LSQR: An algorithm for sparse linear equations and sparse least squares<\/a><\/noindex>). Stattdessen wird ein Ansatz demonstriert, der es erm\u00f6glicht, LSQR an die Ausf\u00fchrung in einer verteilten Umgebung anzupassen.<\/p>\n<p>Die Grundlage der LSQR-Methode bildet <noindex><a rel=\"nofollow\" href=\"http:\/\/www.netlib.org\/utk\/people\/JackDongarra\/etemplates\/node198.html\">ein Bidiagonalierungsverfahren<\/a><\/noindex>. Dies ist ein iteratives Verfahren, bei dem jede Iteration aus den folgenden Schritten besteht:<br \/>\n<img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/3c2f7b5c6f57830e9b522023a8e72a48.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWenn man jedoch davon ausgeht, dass die Matrix <img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/e86c3c422629b78bc574f66db8a6139d.png\" style=\"display:block;margin: 0 auto;\" \/> horizontal partitioniert ist, kann jede Iteration als zwei MapReduce-Schritte dargestellt werden. Dadurch l\u00e4sst sich der Datenversand w\u00e4hrend jeder Iteration minimieren (nur Vektoren der L\u00e4nge, die der Anzahl der Unbekannten entspricht):<\/p>\n<p><img decoding=\"async\" alt=\"Lineare Regression und Methoden ihrer Wiederherstellung\" src=\"\/wp-content\/uploads\/2019\/09\/6b67654b29ed24283c4b04d66c05ea5c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nGenau dieser Ansatz wird bei der Implementierung der linearen Regression in <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/apache\/ignite\/blob\/master\/modules\/ml\/src\/main\/java\/org\/apache\/ignite\/ml\/math\/isolve\/lsqr\/AbstractLSQR.java\">Apache Ignite ML<\/a><\/noindex>.<\/p>\n<h3>Fazit<\/h3>\n<p>\nverwendet. Es gibt viele Algorithmen zur Wiederherstellung der linearen Regression, aber nicht alle k\u00f6nnen unter allen Bedingungen angewendet werden. So ist die QR-Zerlegung hervorragend f\u00fcr exakte L\u00f6sungen auf kleinen Datenmengen geeignet. Der Gradientensprung l\u00e4sst sich einfach umsetzen und erm\u00f6glicht es, schnell eine N\u00e4herungsl\u00f6sung zu finden. LSQR vereint die besten Eigenschaften der beiden vorherigen Algorithmen, da es verteilt werden kann, schneller konvergiert als der Gradientensprung und auch eine vorzeitige Beendigung des Algorithmus erm\u00f6glicht, im Gegensatz zur QR-Zerlegung zur Suche nach einer N\u00e4herungsl\u00f6sung.<br \/>\n<br \/>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/465743\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a: xkcd \u041b\u0438\u043d\u0435\u0439\u043d\u0430\u044f \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u0434\u043b\u044f \u043c\u043d\u043e\u0433\u0438\u0445 \u043e\u0431\u043b\u0430\u0441\u0442\u0435\u0439, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 \u0430\u043d\u0430\u043b\u0438\u0437\u043e\u043c \u0434\u0430\u043d\u043d\u044b\u0445. \u041f\u0440\u0438\u0447\u0438\u043d\u0430 \u044d\u0442\u043e\u043c\u0443 \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u0430. \u042d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438 \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u0447\u0442\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u0441\u0442\u0432\u0443\u0435\u0442 \u0435\u0433\u043e \u0448\u0438\u0440\u043e\u043a\u043e\u043c\u0443 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044e \u0443\u0436\u0435 \u043c\u043d\u043e\u0433\u0438\u0435 \u0434\u0435\u0441\u044f\u0442\u043a\u0438, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0441\u043e\u0442\u043d\u0438, \u043b\u0435\u0442. \u0418\u0434\u0435\u044f \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043c\u044b \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u043c \u043b\u0438\u043d\u0435\u0439\u043d\u0443\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0434\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043e\u0442 \u043d\u0430\u0431\u043e\u0440\u0430 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u0430 \u043f\u043e\u0442\u043e\u043c \u043f\u044b\u0442\u0430\u0435\u043c\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28483,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37955","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a:\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/linejnaya-regressiya-i-metody-eyo-vosstanovleniya\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041b\u0438\u043d\u0435\u0439\u043d\u0430\u044f \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f \u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u0435\u0451 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a:\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/linejnaya-regressiya-i-metody-eyo-vosstanovleniya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:20:47+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:20:47+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lineare Regression und Methoden zu ihrer Wiederherstellung | ProHoster","description":"Quelle:","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/linejnaya-regressiya-i-metody-eyo-vosstanovleniya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041b\u0438\u043d\u0435\u0439\u043d\u0430\u044f \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f \u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u0435\u0451 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f | ProHoster","og:description":"\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a:","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/linejnaya-regressiya-i-metody-eyo-vosstanovleniya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:20:47+00:00","article:modified_time":"2019-10-31T19:20:47+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37955","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 19:55:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:17:23","updated":"2026-01-23 19:55:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/37955","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=37955"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/37955\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/28483"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=37955"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=37955"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=37955"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}