Andrew Ng: Sechs Kernalgorithmen des maschinellen Lernens

王林
Freigeben: 2023-04-08 14:01:08
nach vorne
1027 Leute haben es durchsucht

Andrew Ng: Sechs Kernalgorithmen des maschinellen Lernens

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:

  • Algorithmen: lineare und logistische Regression, Entscheidungsbäume usw.
  • Konzepte: Regularisierung, Optimierungsverlustfunktion, Bias/Varianz, usw.

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.

1 Lineare Regression: Straight & Narrow

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).

Andrew Ng: Sechs Kernalgorithmen des maschinellen Lernens

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.

  • Die Beziehung zwischen dem Kraftstoffverbrauch y eines Autos und seinem Gewicht x hängt von der Steigung w der Geraden (wie stark der Kraftstoffverbrauch mit dem Gewicht zunimmt) und dem Bias-Term b (Kraftstoffverbrauch bei Nullgewicht) ab: y=w* x+b.
  • Während des Trainings sagt der Algorithmus den voraussichtlichen Kraftstoffverbrauch anhand des Fahrzeuggewichts voraus. Es vergleicht den erwarteten und den tatsächlichen Kraftstoffverbrauch. Anschließend wird die Differenz der Quadrate minimiert, typischerweise durch gewöhnliche Techniken der kleinsten Quadrate, und die Werte von w und b verfeinert.
  • Die Berücksichtigung des Luftwiderstands des Autos kann zu genaueren Vorhersagen führen. Zusätzliche Variablen verlängern die Linie zur Ebene. Auf diese Weise kann die lineare Regression eine beliebige Anzahl von Variablen/Dimensionen berücksichtigen.

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.

2 Logistische Regression: Der Kurve folgen

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).

Andrew Ng: Sechs Kernalgorithmen des maschinellen Lernens

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.

  • Weitere Ergebnisse
  • : Verhulsts Arbeit fand Wahrscheinlichkeiten für binäre Ergebnisse und ignorierte weitere Möglichkeiten, wie etwa die Seite des Jenseits, auf der ein Vergiftungsopfer landen könnte. Seine Nachfolger erweiterten den Algorithmus:
    • In den späten 1960er Jahren führten der britische Statistiker David Cox und der niederländische Statistiker Henri Theil unabhängig voneinander eine logistische Regression für Situationen mit mehr als zwei möglichen Ergebnissen durch.
    • Weitere Arbeiten führten zu einer geordneten logistischen Regression, bei der die Ergebnisse geordnete Werte sind.
    • Um spärliche oder hochdimensionale Daten zu verarbeiten, kann die logistische Regression dieselben Regularisierungstechniken nutzen wie die lineare Regression.

    Andrew Ng: Sechs Kernalgorithmen des maschinellen Lernens

    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.

    Andrew Ng: Sechs Kernalgorithmen des maschinellen Lernens

    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.

    • Die grundlegende Methode besteht darin, sich in Richtung des steilsten Gefälles des Geländes zu bewegen. Der Trick besteht darin, Ihre Schrittlänge zu kalibrieren. Machen Sie einen Schritt, der zu klein ist, und es dauert lange, bis Sie Fortschritte machen; machen Sie einen Schritt, der zu groß ist, und Sie werden in unbekanntes Terrain eintauchen und möglicherweise bergauf statt bergab gehen.
    • Anhand der aktuellen Position schätzt der Algorithmus die Richtung des schnellsten Abstiegs, indem er den Gradienten der Verlustfunktion berechnet. Da der Gradient bergauf zeigt, geht der Algorithmus in die entgegengesetzte Richtung und subtrahiert einen kleinen Teil des Gradienten. Ein als Lernrate bezeichneter Bruchteil α bestimmt die Schrittgröße, bevor der Gradient erneut gemessen wird.
    • Wiederholen Sie diese Schritte und hoffen Sie, dass Sie ein Tal erreichen. Glückwunsch!

    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.

    4 Neuronale Netze: Funktionen finden

    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.

    Andrew Ng: Sechs Kernalgorithmen des maschinellen Lernens

    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.

    • Ein Neuron nimmt verschiedene Eingaben entgegen (z. B. Zahlen, die Pixel oder Wörter darstellen, oder die Ausgabe der vorherigen Ebene), multipliziert sie mit Gewichten, summiert die Produkte und ergibt einen vom Entwickler gewählten Wert. Eine nichtlineare Summe Funktionen bzw. Aktivierungsfunktionen. Während dieses Zeitraums sollten Sie berücksichtigen, dass es sich um eine lineare Regression plus einer Aktivierungsfunktion handelt.
    • Training zur Gewichtsveränderung. Für jede Beispieleingabe berechnet das Netzwerk eine Ausgabe und vergleicht sie mit der erwarteten Ausgabe. Backpropagation ändert die Gewichte durch Gradientenabstieg, um den Unterschied zwischen der tatsächlichen und der erwarteten Ausgabe zu verringern. Wenn dieser Vorgang mit genügend (guten) Beispielen oft genug wiederholt wird, lernt das Netzwerk, die Aufgabe auszuführen.

    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.

    5 Entscheidungsbaum: Von der Wurzel zum Blatt

    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.

    • Der Baum beginnt am Wurzelknoten einer biologischen Datenbank, die alle Fälle enthält – Schimpansen, Gorillas und Orang-Utans sowie Kapuziner, Paviane und Krallenaffen. Die Wurzel ermöglicht die Auswahl zwischen zwei untergeordneten Knoten, unabhängig davon, ob sie ein bestimmtes Merkmal aufweisen. Dies führt dazu, dass die beiden untergeordneten Knoten Beispiele mit und ohne dieses Merkmal enthalten. Analog dazu endet dieser Prozess mit einer beliebigen Anzahl von Blattknoten, von denen jeder den größten Teil oder die gesamte Kategorie enthält.
    • Um zu wachsen, muss ein Baum seine Wurzeln finden. Um eine Wahl zu treffen, berücksichtigen Sie alle Merkmale und deren Wert – Hinteranhängsel, Fassbrust usw. – und wählen Sie dasjenige aus, das die Reinheit der Segmentierung maximiert. „Optimale Reinheit“ ist definiert als 100 % der Instanzen einer Kategorie, die in einen bestimmten untergeordneten Knoten und nicht in einen anderen Knoten gelangen. Gabeln sind selten nach nur einer Entscheidung zu 100 % rein und werden es wahrscheinlich auch nie sein. Während dieser Prozess weitergeht, wird eine Ebene nach der anderen von untergeordneten Knoten erzeugt, bis die Reinheit durch die Berücksichtigung weiterer Merkmale nicht mehr wesentlich zunimmt. Zu diesem Zeitpunkt ist der Baum vollständig trainiert.
    • Während der Inferenz durchläuft ein neues Beispiel den Entscheidungsbaum von oben nach unten und vervollständigt die Bewertung verschiedener Entscheidungen auf jeder Ebene. Es erhält die Datenbeschriftung, die im Blattknoten enthalten ist, in dem es sich befindet.

    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.

    6 K-Means-Clustering: Gruppendenken

    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:

    Andrew Ng: Sechs Kernalgorithmen des maschinellen Lernens

    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.

    • Während des Trainings legt der Algorithmus zunächst k Schwerpunkte fest, indem er k Personen zufällig auswählt. (K muss manuell ausgewählt werden, und manchmal ist es sehr wichtig, einen optimalen Wert zu finden.) Anschließend werden k Cluster vergrößert, indem jede Person dem nächstgelegenen Schwerpunkt zugeordnet wird.
    • Für jeden Cluster wird die durchschnittliche Position aller dieser Gruppe zugeordneten Personen berechnet und diese durchschnittliche Position als neuer Schwerpunkt zugewiesen. Jeder neue Massenschwerpunkt ist möglicherweise nicht von einer Person besetzt, aber was nun? Menschen versammeln sich gerne um Schokolade und Fondue.
    • Nach der Berechnung des neuen Schwerpunkts ordnet der Algorithmus die Personen ihrem nächstgelegenen Schwerpunkt zu. Anschließend werden neue Schwerpunkte berechnet, die Cluster angepasst usw., bis sich die Schwerpunkte (und die sie umgebenden Gruppen) nicht mehr bewegen. Anschließend ist es einfach, neue Mitglieder dem richtigen Cluster zuzuordnen. Positionieren Sie sie im Raum und suchen Sie nach dem nächstgelegenen Massenschwerpunkt.
    • Seien Sie gewarnt: Angesichts der anfänglichen zufälligen Schwerpunktzuweisung landen Sie möglicherweise nicht in derselben Gruppe wie die liebenswerten datenzentrierten KI-Experten, mit denen Sie gerne Zeit verbringen möchten. Der Algorithmus leistet gute Arbeit, es ist jedoch nicht garantiert, dass er die beste Lösung findet.

    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:

    • K-Medoide Verwenden Sie tatsächliche Datenpunkte als Schwerpunkte und nicht die durchschnittliche Position innerhalb eines bestimmten Clusters. Der Mittelpunkt ist der Punkt, der den Abstand zu allen Punkten im Cluster minimiert. Diese Änderung ist einfacher zu interpretieren, da der Schwerpunkt immer der Datenpunkt ist.
    • Fuzzy C-Means Clustering ermöglicht Datenpunkten die Teilnahme an mehreren Clustern in unterschiedlichem Ausmaß. Es ersetzt feste Clusterzuweisungen durch Clustergrade basierend auf der Entfernung vom Schwerpunkt.

    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.

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!

Verwandte Etiketten:
Quelle:51cto.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!