Dieser Artikel wurde von Lei Feng.com reproduziert. Wenn Sie einen Nachdruck benötigen, besuchen Sie bitte die offizielle Website von Lei Feng.com, um eine Genehmigung zu beantragen.
Kürzlich hat Andrew Ng einen Blogbeitrag im von ihm gegründeten wöchentlichen Newsletter „The Batch“ für künstliche Intelligenz aktualisiert, in dem er die historischen Ursprünge mehrerer grundlegender Algorithmen im Bereich des maschinellen Lernens zusammenfasst. Zu Beginn des Artikels erinnerte sich Andrew Ng an eine Entscheidung, die er in seinem Forschungsprozess getroffen hatte: Vor vielen Jahren musste er sich in einem Projekt bei der Auswahl eines Algorithmus zwischen einem neuronalen Netzwerk und einem Entscheidungsbaum-Lernalgorithmus entscheiden. Angesichts des Rechenbudgets entschied er sich schließlich für neuronale Netze und verzichtete lange Zeit auf verstärkte Entscheidungsbäume. Das war eine falsche Entscheidung. „Zum Glück hat mein Team meine Entscheidung schnell geändert und das Projekt war erfolgreich“, sagte Ng. Er beklagte, dass es sehr wichtig sei, Grundkenntnisse kontinuierlich zu erlernen und zu aktualisieren. Wie andere technische Bereiche entwickelt sich auch der Bereich des maschinellen Lernens ständig weiter, da die Zahl der Forscher steigt und die Zahl der Forschungsergebnisse wächst. Aber die Beiträge einiger grundlegender Algorithmen und Kernideen können den Test der Zeit bestehen:
Nach Ansicht von Ng sind diese Algorithmen und Konzepte die Kernideen vieler Modelle für maschinelles Lernen, einschließlich Immobilienpreisvorhersagen, Text-Bild-Generatoren (wie DALL·E) usw. In diesem neuesten Artikel untersuchten Andrew Ng und sein Team die Ursprünge, Verwendungen, Entwicklung usw. von sechs grundlegenden Algorithmen und lieferten eine detailliertere Erklärung. Die sechs Algorithmen sind: lineare Regression, logistische Regression, Gradientenabstieg, neuronales Netzwerk, Entscheidungsbaum und K-Means-Clustering-Algorithmus.
Die lineare Regression ist eine wichtige statistische Methode beim maschinellen Lernen, aber sie gewinnt nicht kampflos. Es wurde von zwei herausragenden Mathematikern vorgeschlagen, aber 200 Jahre später ist das Problem immer noch ungelöst. Die langjährige Kontroverse zeigt nicht nur den bemerkenswerten Nutzen des Algorithmus, sondern auch seine wesentliche Einfachheit.
Wessen Algorithmus ist also die lineare Regression? Im Jahr 1805 veröffentlichte der französische Mathematiker Adrien-Marie Legendre eine Methode zur Anpassung einer Linie an eine Reihe von Punkten, während er versuchte, die Position von Kometen vorherzusagen (die Himmelsnavigation war damals die wertvollste wissenschaftliche Richtung im globalen Handel, ähnlich wie die künstliche Intelligenz heute). . schlau).
Bildunterschrift: Skizze von Adrien-Marie Legendre Vier Jahre später beharrte das 24-jährige deutsche Wunderkind Carl Friedrich Gauß darauf, dass er es seit 1795 benutzte, dachte aber, es sei zu trivial, um es zu schreiben um. Die Behauptungen von Gauß veranlassten Legendre dazu, anonym einen Artikel zu veröffentlichen, in dem es hieß, dass „ein sehr berühmter Geometer diese Methode ohne zu zögern übernommen hat“. . Beispielsweise hängt der Kraftstoffverbrauch eines Autos linear von seinem Gewicht ab.
Zwei Schritte zur Popularisierung: Der Algorithmus half Navigatoren sofort dabei, die Sterne zu verfolgen, und später auch Biologen (insbesondere Charles Darwins Cousin Francis Galton), vererbbare Merkmale bei Pflanzen und Tieren zu identifizieren. Diese beiden Weiterentwicklungen erschlossen das breite Potenzial der linearen Regression. Im Jahr 1922 zeigten die britischen Statistiker Ronald Fisher und Karl Pearson, wie die lineare Regression in den allgemeinen statistischen Rahmen von Korrelationen und Verteilungen passen könnte, wodurch sie in allen Wissenschaften nützlich wurde. Und fast ein Jahrhundert später lieferte das Aufkommen von Computern die Daten- und Rechenleistung, um diese in noch größerem Umfang nutzen zu können.
Umgang mit Mehrdeutigkeit: Natürlich werden Daten nie perfekt gemessen und einige Variablen sind wichtiger als andere. Diese Tatsachen des Lebens inspirieren zu komplexeren Variationen. Beispielsweise ermutigt die lineare Regression mit Regularisierung (auch als Ridge-Regression bekannt) lineare Regressionsmodelle dazu, sich nicht zu sehr auf eine einzelne Variable zu verlassen, oder vielmehr, sich gleichmäßig auf die wichtigste Variable zu verlassen. Der Einfachheit halber erzeugt eine andere Form der Regularisierung (L1 statt L2) ein Lasso (komprimierte Schätzung), das möglichst viele Koeffizienten auf Null setzt. Mit anderen Worten: Es lernt, Variablen mit hoher Vorhersagekraft auszuwählen und den Rest zu ignorieren. Elastische Netzwerke kombinieren diese beiden Arten der Regularisierung. Dies ist nützlich, wenn die Daten spärlich sind oder wenn Features miteinander in Zusammenhang zu stehen scheinen.
In jedem Neuron: Nun ist die einfache Version immer noch sehr nützlich. Der häufigste Neuronentyp in neuronalen Netzen sind lineare Regressionsmodelle, gefolgt von nichtlinearen Aktivierungsfunktionen, was die lineare Regression zu einem grundlegenden Bestandteil des Deep Learning macht.
Es gab eine Zeit, in der die logistische Regression nur zur Klassifizierung einer Sache verwendet wurde: Wenn man eine Flasche Gift trank, wurde man möglicherweise als „lebendig“ oder „lebendig“ bezeichnet. Was wäre mit „ sterben"? Die Zeiten haben sich geändert, und heute ist nicht nur das Anrufen von Notdiensten eine bessere Antwort auf diese Frage, sondern auch die logistische Regression ist das Herzstück des Deep Learning.
Giftkontrolle: Die logistische Funktion geht auf die 1830er Jahre zurück, als der belgische Statistiker P.F. Verhulst sie zur Beschreibung der Bevölkerungsdynamik erfand: Eine anfängliche Explosion des exponentiellen Wachstums im Laufe der Zeit, da sie die verfügbaren Ressourcen verbraucht charakteristische Logikkurve. Mehr als ein Jahrhundert später entwickelten der amerikanische Statistiker E. B. Wilson und seine Schülerin Jane Worcester die logistische Regression, um zu berechnen, wie viel eines bestimmten gefährlichen Stoffes tödlich war. Bildunterschrift: P.F. Verhulst ) (z. B. vorzeitiger Tod).
Das Training passt die Mittelposition der Kurve horizontal und die Mittelposition der Kurve vertikal an, um den Fehler zwischen der Funktionsausgabe und den Daten zu minimieren.Das Verschieben der Mitte nach rechts oder links bedeutet, dass mehr oder weniger Gift benötigt wird, um eine durchschnittliche Person zu töten. Der steile Anstieg impliziert Gewissheit: Vor der Halbzeit überleben die meisten Menschen; Sanfte Steigungen verzeihen mehr: Unterhalb der Kurvenmitte überlebt mehr als die Hälfte, darüber weniger als die Hälfte. Legen Sie einen Schwellenwert zwischen einem Ergebnis und einem anderen fest, beispielsweise 0,5, und die Kurve wird zu einem Klassifikator. Geben Sie einfach die Dosis in das Modell ein und schon wissen Sie, ob Sie eine Party oder eine Beerdigung planen sollten.
Illustration: David CoxMultifunktionskurve: Logistische Funktionen beschreiben ein breites Spektrum von Phänomenen mit beträchtlicher Genauigkeit, sodass die logistische Regression in vielen Situationen nützliche Basisvorhersagen liefert. In der Medizin schätzt es die Sterblichkeit und das Krankheitsrisiko. In der Politikwissenschaft sagt es Wahlsieger und -verlierer voraus. In der Wirtschaftswissenschaft prognostiziert es Geschäftsaussichten. Noch wichtiger ist, dass es eine Untergruppe von Neuronen in einer Vielzahl neuronaler Netzwerke antreibt (wobei die Nichtlinearität eine Sigmoidfunktion ist).
3 Gefälle: Alles geht bergab
Stellen Sie sich vor, Sie wandern in den Bergen nach Einbruch der Dunkelheit und stellen fest, dass Sie unter sich nichts sehen können. Und der Akku Ihres Telefons ist leer, sodass Sie Ihre GPS-App nicht verwenden können, um den Weg nach Hause zu finden. Den schnellsten Weg finden Sie möglicherweise über den Gefälleabstieg. Achten Sie darauf, nicht von der Klippe zu laufen. Sonne und Teppich: Der Abstieg mit Gefälle ist vorteilhafter als der Abstieg durch steiles Gelände. Im Jahr 1847 erfand der französische Mathematiker Augustin-Louis Cauchy einen Algorithmus zur Annäherung an Sternbahnen. Sechzig Jahre später entwickelte sein Landsmann Jacques Hadamard es unabhängig, um die Verformung dünner, flexibler Objekte wie Teppiche zu beschreiben, die das Wandern mit den Knien erleichtern könnten. Beim maschinellen Lernen wird es jedoch am häufigsten verwendet, um den niedrigsten Punkt der Verlustfunktion eines Lernalgorithmus zu finden.
Bildunterschrift: Augustin-Louis Cauchy Climb down: Ein trainiertes neuronales Netzwerk stellt eine Funktion bereit, die bei gegebener Eingabe eine gewünschte Ausgabe berechnet. Eine Möglichkeit, ein Netzwerk zu trainieren, besteht darin, den Verlust oder Fehler in der Ausgabe zu minimieren, indem die Differenz zwischen der tatsächlichen und der gewünschten Ausgabe iterativ berechnet und dann die Parameterwerte des Netzwerks geändert werden, um die Differenz zu verringern.
Der Gradientenabstieg verringert die Differenz und minimiert die Funktion, die den Verlust berechnet. Der Parameterwert des Netzwerks entspricht einer Position im Gelände und der Verlust ist die aktuelle Höhe. Wenn Sie nach unten gehen, können Sie die Fähigkeit des Netzwerks verbessern, etwas zu berechnen, das der gewünschten Ausgabe nahekommt. Die Sichtbarkeit ist eingeschränkt, da sich der Algorithmus in einer typischen überwachten Lernsituation nur auf die Parameterwerte des Netzwerks und die Steigung oder Steigung der Verlustfunktion verlässt – d. h. wo Sie sich auf dem Hügel befinden und die Steigung unter Ihnen.
Stuck in the Valley: Schade, dass der Akku Ihres Telefons leer ist, weil der Algorithmus Sie wahrscheinlich nicht bis zum Fuß des Berges geschoben hat. Sie können in einer nicht konvexen Landschaft stecken bleiben, die aus mehreren Tälern (lokalen Minima), Gipfeln (lokalen Maxima), Sattelpunkten (Sattelpunkten) und Plateaus besteht. Tatsächlich sind Aufgaben wie Bilderkennung, Texterzeugung und Spracherkennung alle nicht konvex, und es wurden viele Variationen des Gradientenabstiegs entwickelt, um diese Situation zu bewältigen.
Zum Beispiel kann der Algorithmus über eine Dynamik verfügen, die ihm hilft, kleine Höhen und Tiefen zu verstärken, wodurch es wahrscheinlicher wird, dass er den Tiefpunkt erreicht. Die Forscher entwickelten so viele Variationen, dass es schien, als gäbe es ebenso viele Optimierer wie lokale Minima. Glücklicherweise sind lokale Minima und globale Minima in der Regel ungefähr gleich.
Optimaler Optimierer: Der Gradientenabstieg ist die klare Wahl, um das Minimum einer Funktion zu finden. In Fällen, in denen die genaue Lösung direkt berechnet werden kann – beispielsweise bei linearen Regressionsaufgaben mit einer großen Anzahl von Variablen – kann sie einen Wert annähern und ist oft schneller und kostengünstiger. Bei komplexen nichtlinearen Aufgaben ist es jedoch nützlich. Mit einem steilen Abstieg und einem Sinn für Abenteuer schaffen Sie es wahrscheinlich rechtzeitig zum Abendessen aus den Bergen heraus.
Lassen Sie uns dies zunächst klären: Das Gehirn ist keine Ansammlung von Grafikverarbeitungseinheiten, Wenn es so wäre, würde es Software ausführen, die komplexer ist als eine typische künstliche neuronales Netzwerk viele. Neuronale Netze sind von der Struktur des Gehirns inspiriert: Schichten miteinander verbundener Neuronen, die jeweils ihren eigenen Output auf der Grundlage des Zustands ihrer Nachbarn berechnen. Die daraus resultierende Aktivitätskette bildet eine Idee – oder erkennt eine Idee.
Von biologisch zu künstlich: Die Idee, dass das Gehirn durch Interaktionen zwischen Neuronen lernt, geht auf das Jahr 1873 zurück, wurde jedoch erst 1943 von den amerikanischen Neurowissenschaftlern Warren McCulloch und Walter Pitts anhand einfacher biologischer neuronaler Regeln etabliert Netzwerkmodell. 1958 entwickelte der amerikanische Psychologe Frank Rosenblatt den Sensor, ein einschichtiges visuelles Netzwerk, das auf einem Lochkartengerät implementiert wurde, mit dem Ziel, eine Hardwareversion für die US-Marine zu bauen.
Bildunterschrift: Frank RosenblattJe größer desto besser: Rosenblatts Erfindung kann nur einzeilige Klassifizierungen erkennen. Später überwanden die ukrainischen Mathematiker Alexey Ivakhnenko und Valentin Lapa diese Einschränkung, indem sie Netzwerke von Neuronen in beliebig vielen Schichten stapelten.
1985 beschrieben die französischen Informatiker Yann LeCun, David Parker und der amerikanische Psychologe David Rumelhart und Kollegen unabhängig voneinander den Einsatz von Backpropagation, um solche Netzwerke effektiv zu trainieren.
Im ersten Jahrzehnt des neuen Jahrtausends haben Forscher wie Kumar Chellapilla, Dave Steinkraus und Rajat Raina (in Zusammenarbeit mit Andrew Ng) die Grenzen neuronaler Netze durch den Einsatz von Grafikverarbeitungseinheiten noch weiter verschoben, was Vietnam ermöglichte Immer größere neuronale Netze können aus den riesigen Datenmengen lernen, die das Internet generiert.
Fit für jede Aufgabe: Das Prinzip neuronaler Netze ist einfach: Für jede Aufgabe gibt es eine Funktion, die sie ausführt. Ein neuronales Netzwerk bildet eine trainierbare Funktion, indem es mehrere einfache Funktionen kombiniert, die jeweils von einem einzelnen Neuron ausgeführt werden. Die Funktion eines Neurons wird durch einstellbare Parameter, sogenannte „Gewichte“, bestimmt.
Anhand dieser Gewichtungen und Eingabebeispiele sowie Zufallswerte für ihre gewünschten Ausgaben können Sie die Gewichte iterativ ändern, bis Sie eine trainierbare Funktion haben, die die anstehende Aufgabe erledigt.
Black Box: Während ein gut trainiertes Netzwerk mit etwas Glück seine Arbeit erledigen kann, lesen Sie am Ende eine Funktion, die oft sehr komplex ist – sie enthält Tausende von Variablen und verschachtelte Aktivierungsfunktionen – so sehr, dass es einer Erklärung bedarf Wie es einem Netzwerk gelingt, seine Aufgaben zu erfüllen, ist äußerst schwierig. Darüber hinaus ist ein gut trainiertes Netzwerk nur so gut wie die Daten, aus denen es gelernt hat.
Wenn beispielsweise der Datensatz verzerrt ist, ist auch die Ausgabe des Netzwerks verzerrt. Wenn es nur hochauflösende Bilder von Katzen enthält, ist nicht bekannt, wie es auf Bilder mit niedriger Auflösung reagieren wird. Ein Stück gesunder Menschenverstand: Die New York Times ebnete den Weg für den KI-Hype, als sie über Rosenblatts Sensor von 1958 berichtete und feststellte, dass „die US-Marine eine Maschine will, die laufen, sprechen, sehen, schreiben und sich selbst reproduzieren kann.“ Prototyp eines elektronischen Computers, der sich seiner eigenen Existenz bewusst ist.“ Obwohl die damaligen Sensoren diese Anforderung nicht erfüllten, produzierten sie viele beeindruckende Modelle: Faltungs-Neuronale Netze für Bilder und wiederkehrende neuronale Netze für Bilder, Text, Sprache und Video, Proteinstruktur usw. Sie leisten bereits Erstaunliches, wie zum Beispiel beim Go-Spielen die Leistung eines Menschen zu übertreffen und sich bei praktischen Aufgaben wie der Diagnose von Röntgenbildern der Leistung eines Menschen zu nähern. Allerdings sind sie im Hinblick auf den gesunden Menschenverstand und das logische Denken immer noch schwieriger zu handhaben. Was für ein „Tier“ ist Aristoteles? Porphyrius, ein Anhänger des Philosophen, der im dritten Jahrhundert in Syrien lebte, fand eine logische Antwort auf diese Frage. Er kombinierte die von Aristoteles vorgeschlagenen „Kategorien der Existenz“ von allgemein zu spezifisch und ordnete Aristoteles der Reihe nach in jede Kategorie ein: Die Existenz von Aristoteles ist materiell und nicht sein Körper ist belebt, nicht seine Gedanken; eher rational als irrational. Daher ist seine Einstufung menschlich. Mittelalterliche Logiklehrer zeichneten diese Sequenz als vertikales Flussdiagramm: einen frühen Entscheidungsbaum. Unterschiede in Zahlen: Spulen wir zurück ins Jahr 1963, als der Soziologe John Sonquist von der University of Michigan und der Wirtschaftswissenschaftler James Morgan erstmals Entscheidungsbäume in Computern implementierten, als sie Umfrageteilnehmer gruppierten. Diese Art von Arbeit ist mit dem Aufkommen von Software, die Algorithmen automatisch trainiert, üblich geworden, und Entscheidungsbäume werden mittlerweile von verschiedenen Bibliotheken für maschinelles Lernen verwendet, darunter Scikit-Learn und andere. Der Code wurde über einen Zeitraum von zehn Jahren von vier Statistikern der Stanford University und der University of California, Berkeley, entwickelt. Mittlerweile ist das Schreiben eines Entscheidungsbaums von Grund auf zu einer Hausaufgabe für Machine Learning 101 geworden. Wurzeln in der Luft: Entscheidungsbäume können Klassifizierung oder Regression durchführen. Es wächst nach unten, von den Wurzeln bis zur Krone, und klassifiziert die Eingabebeispiele einer Entscheidungshierarchie in zwei (oder mehr). Da fällt mir das Thema des deutschen Mediziners und Anthropologen Johann Blumenbach ein: Um 1776 unterschied er erstmals Affen von Affen (davor wurden Affen und Menschenaffen zusammengefasst). Diese Einteilung hängt von verschiedenen Kriterien ab, z. B. ob ein Schwanz vorhanden ist, ob die Brust schmal oder breit ist, ob sie aufrecht oder geduckt ist und vom Grad der Intelligenz. Verwenden Sie einen trainierten Entscheidungsbaum, um solche Tiere zu kennzeichnen, wobei jedes Kriterium einzeln berücksichtigt wird, und trennen Sie letztendlich die beiden Tiergruppen. In die Top 10: Angesichts der Schlussfolgerung von Blumenbach (später von Charles Darwin aufgehoben), dass sich Menschen von Affen durch ein breites Becken, Hände und zusammengebissene Zähne unterscheiden, wenn wir den Entscheidungsbaum erweitern wollen, um nicht nur Affen zu klassifizieren und Affen, aber was ist mit Menschen? Der australische Informatiker John Ross Quinlan machte dies 1986 mit ID3 möglich, das Entscheidungsbäume erweiterte, um nicht-binäre Ergebnisse zu unterstützen. Im Jahr 2008 stand in der von der IEEE International Data Mining Conference geplanten Liste der zehn besten Data-Mining-Algorithmen ein erweiterter Verfeinerungsalgorithmus namens C4.5 an der Spitze. In einer Welt, in der Innovationen grassieren, ist das ein Durchhaltevermögen. Die Blätter abziehen: Entscheidungsbäume haben einige Nachteile. Sie können die Daten leicht überanpassen, indem sie mehrere Hierarchieebenen hinzufügen, sodass ein Blattknoten nur ein einziges Beispiel enthält. Was noch schlimmer ist, ist, dass sie anfällig für den Schmetterlingseffekt sind: Ändern Sie ein Beispiel und der Baum, der wächst, wird völlig anders sein. In den Wald: Der amerikanische Statistiker Leo Breiman und die neuseeländische Statistikerin Adele Cutler machten sich diese Funktion zunutze und entwickelten 2001 den Random Forest – eine Sammlung von Entscheidungsbäumen, die eine andere, sich überschneidende Auswahl von Beispielen verarbeitet und stimmt über das Endergebnis ab. Random Forest und sein Cousin XGBoost sind weniger anfällig für Überanpassung, was sie zu einem der beliebtesten Algorithmen für maschinelles Lernen macht. Es ist, als ob Aristoteles, Porphyrius, Blumenbach, Darwin, Jane Goodall, Dian Fossey und 1.000 andere Zoologen zusammen im Raum wären, um sicherzustellen, dass Ihre Klassifizierung so gut wie möglich ist. Wenn Sie auf einer Party nahe bei anderen Menschen stehen, ist die Wahrscheinlichkeit groß, dass Sie etwas gemeinsam haben. Dies ist die Idee, Datenpunkte mithilfe von K-Means-Clustering zu gruppieren. Unabhängig davon, ob Gruppen durch menschliches Handeln oder andere Kräfte gebildet wurden, dieser Algorithmus wird sie finden. Von Explosionen zum Wählton: Der amerikanische Physiker Stuart Lloyd, Absolvent der legendären Innovationsfabrik von Bell Labs und des Manhattan-Projekts, das die Atombombe erfunden hat, schlug 1957 erstmals K-Means-Clustering vor, um Informationen in digitalen Signalen zu verteilen, aber dies funktionierte wurde erst 1982 veröffentlicht: Papieradresse: https://cs.nyu.edu/~roweis/csc2515-2006/readings/lloyd57.pdfZur gleichen Zeit der amerikanische Statistiker Edward Forgy beschrieb 1965 eine ähnliche Methode, die zu ihrem alternativen Namen „Lloyd-Forgy-Algorithmus“ führte. Hubs finden: Erwägen Sie die Aufteilung von Clustern in gleichgesinnte Arbeitsgruppen. Unter Berücksichtigung der Position der Teilnehmer im Raum und der Anzahl der zu bildenden Gruppen kann das K-Means-Clustering die Teilnehmer in ungefähr gleich große Gruppen aufteilen, wobei jede Gruppe um einen zentralen Punkt oder Schwerpunkt gruppiert ist. Unterschiedliche Abstände: Natürlich muss der Abstand zwischen gruppierten Objekten nicht groß sein. Jede Metrik zwischen zwei Vektoren reicht aus. Anstatt Partygänger beispielsweise nach physischer Entfernung zu gruppieren, können sie durch K-Means-Clustering nach Kleidung, Beruf oder anderen Merkmalen aufgeteilt werden. Online-Shops nutzen es, um Kunden anhand ihrer Vorlieben oder ihres Verhaltens zu segmentieren, und Astronomen können auch Sterne desselben Typs gruppieren. Die Macht der Datenpunkte: Diese Idee führte zu einigen bemerkenswerten Veränderungen: n Dimensional Carnival: Dennoch ist der Algorithmus in seiner ursprünglichen Form immer noch weithin nützlich – insbesondere, weil er als unbeaufsichtigter Algorithmus nicht die Sammlung teurer, gekennzeichneter Daten erfordert. Es wird auch immer schneller genutzt. Beispielsweise profitierten Bibliotheken für maschinelles Lernen, darunter scikit-learn, von der Einführung von kd-trees im Jahr 2002, die hochdimensionale Daten sehr schnell partitionieren können. 5 Entscheidungsbaum: Von der Wurzel zum Blatt
6 K-Means-Clustering: Gruppendenken
Das obige ist der detaillierte Inhalt vonAndrew Ng: Sechs Kernalgorithmen des maschinellen Lernens. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!