Was sind Algorithmen für maschinelles Lernen

Autor

Dave Bergmann

Senior Staff Writer, AI Models

IBM Think

Was sind Algorithmen für maschinelles Lernen?

Ein Algorithmus für maschinelles Lernen ist das Verfahren und die mathematische Logik, durch die eine „Maschine“ – ein System künstlicher Intelligenz (KI) – lernt, Muster in Trainingsdaten zu erkennen und diese Mustererkennung anzuwenden, um genaue Vorhersagen für neue Daten zu treffen. Algorithmen fürmaschinelles Lernen sind die grundlegenden Bausteine der modernen KI und Data Science, von einfachen linearen Regressionsmodellen bis hin zu modernsten Deep Learning Techniken.

Die Begriffe „Algorithmus“ und „Modell“ werden oft synonym verwendet, stehen aber für unterschiedliche (wenn auch verwandte) Konzepte. Algorithmus ist ein Oberbegriff für einen Schritt-für-Schritt-Prozess, der normalerweise in mathematischer Sprache oder Pseudocode beschrieben wird, um eine Funktion oder einen Zweck auszuführen. Im Kontext der künstlichen Intelligenz ist ein KI-Modell jedes Programm, das Eingabe empfängt und eine Vorhersage oder Entscheidung ohne weiteres menschliches Eingreifen ausgibt.

Ein Algorithmus für maschinelles Lernen ist eine definierte Reihe von Schritten, die verwendet werden, um ein maschinelles Lernmodell zu schulen, damit es in seinem realen Anwendungsfall nützliche Vorhersagen treffen kann. Es umfasst nicht nur die Art und Weise, wie das Modell einen Eingabedatenpunkt der entsprechenden Ausgabe zuordnet, sondern auch den Prozess der Optimierung der Vorhersagen des Modells, um einen Trainingsdatensatz mit relevanten Beispielen „anzupassen“. Es handelt sich um einen Algorithmus , der es einer Maschine ermöglicht, aus Daten zu lernen.

Einfach ausgedrückt ist das Ergebnis der Anwendung eines maschinellen Lernalgorithmus auf einen Datensatz ein trainiertes Modell. „Training“ kann als ein iterativer Prozess verstanden werden, bei dem die Parameter des Modells – die anpassbaren Aspekte der mathematischen Logik, die das Modell verwendet, um Vorhersagen oder Entscheidungen über die Eingabe zu treffen – auf eine Weise aktualisiert werden, die nützlichere Ausgaben liefert.

Obwohl es Algorithmen für maschinelles Lernen (ML) gibt, die explizit für das Training von Modellen entwickelt wurden, um eine einzelne Aufgabe auszuführen, ist dies eher eine Ausnahme als eine Regel. Im Allgemeinen verfügt jeder ML-Algorithmus über bestimmte mathematische oder praktische Eigenschaften, die für bestimmte Arten von Aufgaben (oder bestimmte Arten oder Mengen von Daten) nützlich sind. In vielen Fällen kann dieselbe Technik des maschinellen Lernens verwendet werden, um Modelle für mehrere (wenn auch ähnliche) Aufgaben zu schulen. Umgekehrt gibt es fast immer mehrere ML-Algorithmen, die sich gut eignen, um ein Modell für eine bestimmte Aufgabe zu trainieren.

Der zentrale Vorteil von ML-Algorithmen besteht darin, dass sie KI-Modelle in die Lage versetzen, implizit aus Erfahrung zu lernen. Dies steht im Gegensatz zu „klassischen“ oder „regelbasierten“ KI-Techniken, bei denen ein Data Scientist, Experte oder ML-Ingenieur die Entscheidungsfindung des Modells manuell und explizit programmieren muss. In den letzten Jahrzehnten haben sich maschinelle Lernsysteme als die vorherrschende Methode der künstlichen Intelligenz und Datenanalyse gegenüber der regelbasierten KI herauskristallisiert, weil das implizite datengesteuerte maschinelle Lernen von Natur aus flexibler, skalierbarer und zugänglicher ist.

Allerdings ist es wichtig zu beachten, dass die Anpassung eines Modells an seine Trainingsdaten nur ein Mittel zum Zweck ist. Die grundlegende Prämisse des maschinellen Lernens ist, dass, wenn Sie die Leistung eines Modells anhand von Beispielaufgaben optimieren, die den realen Problemen, für die es verwendet werden soll, angemessen ähneln, das trainierte Modell auch bei neuen Daten, die es beim Training nicht gesehen hat, gut abschneidet. Das ultimative Ziel des maschinellen Lernens ist die Generalisierung, die Übersetzung der Leistung von Trainingsdaten in neue, unbekannte Daten. Ein kurzsichtiger Fokus auf das Training an sich birgt die Gefahr einer Überanpassung, ein Phänomen, bei dem das Wissen eines Modells so gründlich auf Muster in seinen Trainingsdaten zugeschnitten ist, dass es nicht verallgemeinern kann, was zu einem Modell führt, das sich im Training auszeichnet, aber in realen Szenarien versagt.

Das Training eines nützlichen maschinellen Lernmodells umfasst daher nicht nur die Auswahl und Konfiguration eines geeigneten Typs von ML-Algorithmus, sondern auch die richtige Pflege von Trainingsdaten und eine sorgfältige Validierung der Leistung.

Die neuesten KI-Trends, präsentiert von Experten

Erhalten Sie kuratierte Einblicke in die wichtigsten – und faszinierendsten – KI-Neuheiten. Abonnieren Sie unseren wöchentlichen Think-Newsletter. Weitere Informationen in der IBM Datenschutzerklärung.

Vielen Dank! Sie haben ein Abonnement abgeschlossen.

Ihr Abonnement wird auf Englisch geliefert. In jedem Newsletter finden Sie einen Abmeldelink. Hier können Sie Ihre Abonnements verwalten oder sich abmelden. Weitere Informationen finden Sie in unserer IBM Datenschutzerklärung.

Arten von Algorithmen für maschinelles Lernen

Algorithmen für maschinelles Lernen können in drei grundlegende Kategorien eingeteilt werden: überwachtes Lernen, unüberwachtes Lernen oder verstärkendes Lernen. Jedes dieser Lernparadigmen unterscheidet sich hauptsächlich durch seine unterschiedlichen Ziele, die Art der Trainingsaufgaben, die diese Ziele mit sich bringen, und die Techniken, die zur Optimierung der Leistung bei diesen Aufgaben verwendet werden.

  • Überwachtes Lernen-Algorithmen trainieren ein Modell, die „richtige“ Ausgabe für eine bestimmte Eingabe vorherzusagen: mit anderen Worten, um die Beziehung zwischen unabhängigen Variablen (den Funktionen der Eingabe) und abhängigen Variablen (der Ausgabe oder dem „Ziel“) zu lernen. Sie werden verwendet, um Modelle für Aufgaben zu trainieren, die ein gewisses Maß an Genauigkeit in Bezug auf eine bekannte „grundlegende Wahrheit“ erfordern, wie beispielsweise Klassifizierung oder Regression. Diese Wahrheit liegt in der Regel (aber nicht immer) in Form von gelabelten Daten vor: Daten, die mit Anmerkungen versehen wurden, um dem Modell Kontext zu liefern – zum Beispiel ein Datensatz mit gelabelten Daten [input, output] Paarungen.

  • Unüberwachte Lernalgorithmen trainieren ein Modell, um intrinsische Muster, Abhängigkeiten und Korrelationen in nicht gelabelten Datensätzen zu erkennen. Im Gegensatz zum überwachten Lernen wird beim unüberwachten Lernen nicht davon ausgegangen, dass es eine externe Grundwahrheit gibt, mit der die Ergebnisse verglichen werden sollten.

  • Reinforcement Learning (RL)-Algorithmen trainieren ein Modell durch Versuch und Irrtum, um seine Umgebung zu bewerten und die Aktion auszuführen, die die größte Belohnung bringt. Reinforcement Learning eignet sich gut für Szenarien, die nicht die Existenz einer singulären Ground Truth beinhalten, sondern die „guten“ Handlungen (die belohnt werden sollen) und „schlechte“ Handlungen (die bestraft werden sollen). Während das Ziel von überwachten Lernalgorithmen darin besteht, die Parameter so zu optimieren, dass Fehler minimiert werden, besteht das Ziel von RL-Algorithmen darin, die Modellparameter so zu optimieren, dass die Belohnung maximiert wird.

Obwohl es keine ML-Algorithmen gibt, die zu keinem dieser drei Paradigmen passen, gibt es einige Lernmethoden, deren Kategorisierung relativ mehrdeutig ist. Halbüberwachtes Lernen kombiniert beispielsweise überwachtes und unüberwachtes Lernen. Beim selbstüberwachten Lernen werden Eingabedaten manipuliert und die Trainingsaufgaben so gestaltet, dass überwachtes Lernen mit nicht gekennzeichneten Daten ermöglicht wird.

Ein Modell kann mit mehr als einer Art von Algorithmus für maschinelles Lernen trainiert werden. Beispielsweise durchlaufen große Sprachmodelle (Large Language Models, LLMs) in der Regel ihr anfängliches Training ( „Vortraining“) durch selbstüberwachtes Lernen, werden dann aber sowohl durch konventionelle überwachte Lernalgorithmen als auch durch Reinforcement-Learning-Algorithmen feinabgestimmt. Ebenso beinhalten Ensemble-Lernalgorithmen die Aggregation mehrerer Modelle zu einem einzigen „endgültigen“ Modell.

Algorithmen für maschinelles Lernen sind keine Einheitslösungen: Jeder Algorithmus verfügt über verschiedene Hyperparameter, die so konfiguriert werden müssen, dass ein Modell am besten zu dem spezifischen Szenario und Datensatz passt, mit dem es arbeiten soll. Nehmen wir als Analogie die Pizza: Ein grundlegender „Algorithmus“ für die Zubereitung von Pizza könnte so definiert werden, dass man Tomatensoße auf einen runden Teig schöpft, Mozzarella-Käse darauf legt und die Pizza im Ofen backt. Aber es gibt eine fast unendliche Anzahl von Möglichkeiten, wie dieser „Algorithmus“ spezifisch konfiguriert werden kann, um bestimmte Geschmäcker, Zutaten, Budgets oder Einschränkungen zu berücksichtigen.

Mixture of Experts | 28. August, Folge 70

KI entschlüsseln: Wöchentlicher Nachrichtenüberblick

Schließen Sie sich unserer erstklassigen Expertenrunde aus Ingenieuren, Forschern, Produktführern und anderen an, die sich durch das KI-Rauschen kämpfen, um Ihnen die neuesten KI-Nachrichten und Erkenntnisse zu liefern.

Überwachte Lernalgorithmen

Das formale Ziel jedes überwachten maschinellen Lernalgorithmus besteht darin,die Modellparameter so zu optimieren, dass die Ausgabe einer Verlustfunktion minimiert wird, welche die Divergenz („Verlust“) zwischen der vorhergesagten Ausgabe eines Modells für jede Eingabe und der Grundwahrheitsausgabe für jede dieser Eingaben misst.

Beim herkömmlichen überwachten Lernen wird diese Grundwahrheit durch gekennzeichnete Datenpaare bereitgestellt. So erfordert das Training eines Modells, das Spam-E-Mails erkennt, in der Regel, dass ein menschlicher Annotator einen Korpus von Beispiel-E-Mails manuell überprüft und jede E-Mail als „SPAM“ oder „KEIN SPAM“ kennzeichnet. Das Ziel des Modelltrainings besteht darin, die Modellparameter anzupassen, bis die Ausgabevorhersagen des Modells für eine bestimmte E-Mail durchgängig mit der Bewertung dieser E-Mail durch den Menschen übereinstimmen. Da diese Methode eine direkte menschliche Aufsicht über das, was die Maschine lernt, beinhaltet, wird sie „überwachtes“ Lernen genannt. Überwachtes Lernen wiederum wird oft einfach als maschinelles Lernen definiert,das gekennzeichnete Daten verwendet.

Einige Fälle – insbesondere im modernen Deep Learning – erfordern jedoch so große Datensätze und so komplexe Datenpunkte, dass die Beschaffung einer ausreichenden Anzahl gekennzeichneter Trainingsdaten unerschwinglich zeit- und arbeitsintensiv wird. Beim selbstüberwachten Lernen, das vor allem für solche Szenarien entwickelt wurde, werden Trainingsaufgaben so konzipiert, dass ein Label (oder „Pseudo-Label“) aus nicht gelabelten Daten abgeleitet werden kann. Dies belastet die herkömmliche Definition von überwachtem Lernen, die gekennzeichnete Daten erfordert. Überwachte Lernalgorithmen werden daher besser und weiter gefasst als maschinelles Lernen definiert, die eine gewisse Grundwahrheit (oder ein „Überwachungssignal“) zur Optimierung und eine Verlustfunktion enthalten, die die Ausgaben mit der Grundwahrheit vergleicht.

Überwachte Lernalgorithmen werden verwendet, um ein Modell für Klassifizierungsaufgaben, Regressionsaufgaben oder beides zu schulen.

  • Klassifizierung beinhaltet diskrete Vorhersagen, wie etwa die spezifische Kategorie, zu der ein Datenpunkt gehört. Klassifizierungsaufgaben sind entweder binär – „Ja“ oder „nein“, „genehmigen“ oder „ablehnen“ , „Spam“ oder „Kein Spam“oder umfassen mehrere Klassen. Einige Klassifizierungsalgorithmen sind nur für die binäre Klassifizierung geeignet, aber jeder Klassifikator mit mehreren Klassen kann eine binäre Klassifizierung durchführen.

  •  Die Regression dient der Vorhersage kontinuierlicher Werte wie Mengen, Preise, Dauer oder Temperatur. Sie werden unter anderem bei Zeitreihenanalysen, Prognosen, Preisgestaltungen und Wahrscheinlichkeitsvorhersagen eingesetzt.

Viele überwachte Lernalgorithmen können zum Trainieren von Regressions- oder Klassifizierungsmodellen verwendet werden. Ein Modell könnte beispielsweise mithilfe der Regression die Wahrscheinlichkeit vorhersagen, dass ein bestimmter Datenpunkt zu jeder potenziellen Kategorie gehört, und dann die Kategorie mit der höchsten Wahrscheinlichkeit ausgeben.

Allgemeine Regressionsalgorithmen

  • Die lineare Regression gehört zu den grundlegenden und weit verbreiteten Algorithmen des maschinellen Lernens. Lineare Regressionsalgorithmen berechnen eine Ausgabe (abhängige Variable) als gewichtete Kombination einer oder mehrerer Eingabevariablen (unabhängige Variablen). Indem der Algorithmus die optimale Gewichtung für jede Eingabevariable lernt, ergibt er die Ausgleichsgerade für die im Training gesehenen Datenpunkte. Es gibt eine Vielzahl von Varianten und Erweiterungen der linearen Regression, die eine ähnliche Logik verwenden, um mathematisch variiertere Beziehungen zwischen abhängigen und unabhängigen Variablen zu modellieren, wie z. B. die polynomiale Regression (die nichtlineare, gekrümmte Beziehungen modelliert) oder die Quantilsregression (die Beziehungen an bestimmten Punkten in der Verteilung eines Datensatzes modelliert).

  • Entscheidungsbaum-Algorithmen erreichen endgültige Ausgabevorhersagen durch eine verzweigte Abfolge von Wenn-Dann-Entscheidungen, die als baumartiges Diagramm visualisiert werden können. Sie können sowohl für die Regression als auch für die Klassifizierung verwendet werden. Anders als bei den meisten überwachten Lernalgorithmen besteht das Ziel des Algorithmus nicht in der Optimierung seiner Ausgaben durch Minimierung einer einzelnen, globalen Verlustfunktion, sondern in der Optimierung der Vorhersagekraft für jeden einzelnen Knoten des Baums.

  • Zustandsraummodelle (SSMs) modellieren dynamische Systeme und sequenzielle Daten durch zwei miteinander verbundene Daten. Die eine, die Zustandsgleichung, beschreibt die interne Dynamik („Zustand“) eines Systems, die nicht direkt beobachtbar ist. Die andere, die Ausgabegleichung, beschreibt, wie diese interne Dynamik mit den beobachtbaren Ergebnissen zusammenhängt, also mit den Ausgaben des Systems. Sie werden in verschiedenen Bereichen eingesetzt, von der Elektrotechnik über Finanzprognosen bis hin zur Verarbeitung natürlicher Sprache (NLP).

Allgemeine Klassifizierungsalgorithmen

  • Naive Bayes-Klassifikatoren wenden die Logik des Bayes'schen Theorems an, das im Wesentlichen eine mathematische Formulierung der Idee ist, dass Informationen aus späteren Ereignissen (z. B. ein Ergebnis) verwendet werden können, um das Verständnis früherer Ereignisse (z. B. Eingaben) zu aktualisieren. Mit anderen Worten: Das Modell lernt die relative Bedeutung einer bestimmten Eingabevariablen anhand der Höhe der Korrelation mit bestimmten Ergebnissen. Ihre namensgebende „naive“ Annahme ist, dass alle Funktionen, die zu einer Klassifizierung beitragen, unabhängig voneinander sind. Diese Vereinfachung macht den Algorithmus für einfache Aufgaben wie die Spam-Erkennung schnell und effektiv.

  • Die logistische Regression passt den linearen Regressionsalgorithmus an, um binäre Klassifizierungsprobleme zu lösen, indem die gewichtete Summe der Eingabemerkmale in eine Sigmoidfunktion eingespeist wird, die jede Eingabe in einen Wert zwischen 0 und 1 komprimiert. Der resultierende Wert kann als Wahrscheinlichkeit des Auftretens eines bestimmten Ereignisses – in diesem Fall einer bestimmten Klassifizierung – interpretiert werden.

  • K-Nearest Neighbor (KNN) Algorithmen klassifizieren Datenpunkte anhand ihrer Nähe in Vektoreinbettungen zu anderen, bereits klassifizierten – also gekennzeichneten – Datenpunkten, wobei davon ausgegangen wird, dass ähnliche Datenpunkte nahe beieinander zu finden sind. Das k bezieht sich darauf, wie viele benachbarte Datenpunkte berücksichtigt werden: In einem KNN-Algorithmus, bei dem k = 5 ist, wird beispielsweise die Eingabe mit seinen 5 nächsten Nachbarn verglichen und nach der Kategorie klassifiziert, die unter diesen 5 benachbarten Datenpunkten am stärksten vertreten ist.

  • Support Vector Machines (SVMs) sind leistungsfähige Modelle, die vordergründig eine binäre Klassifizierung durchführen, aber auch für Klassifizierungsprobleme mit mehreren Klassen angepasst werden können. Das Ziel eines SVM-Algorithmus besteht nicht darin, zu lernen, wie Datenpunkte kategorisiert werden: Stattdessen besteht es darin, die optimale Entscheidungsgrenze zu lernen, um zwei Kategorien von gekennzeichneten Datenpunkten zu trennen, um dann neue Datenpunkte basierend auf der Seite der Grenze zu klassifizieren, auf der sie liegen. Der SVM-Algorithmus definiert diese Grenze als die Hyperfläche, die den Abstand (oder die Lücke) zwischen Datenpunkten entgegengesetzter Klassen maximiert, ein Konzept, das der Annahme geringer Dichte im halbüberwachten Lernen ähnelt. Logischerweise sind die einzigen Datenpunkte, die die Berechnung dieser Hyperebene unterstützen können, die Datenpunkte der einzelnen Klasse, die der Grenze am nächsten liegen. Die Vektoreinbettungen dieser an der Grenze liegenden Datenpunkte werden daher als Unterstützungsvektoren bezeichnet.

Selbstüberwachte Lernalgorithmen

Das Ziel von Algorithmen für selbstüberwachtes Lernen besteht darin, überwachtes Lernen durchzuführen, ohne dass gelabelte Daten erforderlich sind, indem Aufgaben entworfen werden, die die Struktur der ungelabelten Daten selbst für Überwachungssignale verwenden. Selbstüberwachte Lerntechniken lassen sich im Allgemeinen in eine von zwei Untergruppen einteilen: Selbstvorhersage oder kontrastives Lernen.

Selbstvorhersage

Selbstvorhersagealgorithmen trainieren ein Modell so, dass es einen Aspekt eines Datenpunkts vorhersagt, wenn ihm andere Informationen über diesen Datenpunkt gegeben werden. Yann LeCun formulierte das Ziel solcher Methoden in einfachen Worten: „Tun Sie so, als gäbe es einen Teil der Eingabe, den Sie nicht kennen, und sagen Sie diesen voraus.“ 1 Zum Beispiel:

  • Sagen Sie einen beliebigen Teil der Eingabe aus einem anderen Teil voraus
  • Sagen Sie die Zukunft aus der Vergangenheit voraus
  • Sagen Sie das Maskierte aus dem Sichtbarenvoraus
  • Prognostizieren Sie alle verdeckten Teile aus allen verfügbaren Teilen

Modelle, die mithilfe der Selbstprognose trainiert wurden, sind in der Regel generativ und nicht diskriminativ. Bekannte Beispiele für Modelle des maschinellen Lernens, die mit Selbstprognosealgorithmen trainiert wurden, sind Autoencoder und große Sprachmodelle (Large Language Models, LLMs):

  • Autoencoder haben die Aufgabe, die ursprüngliche Eingabe zu rekonstruieren, nachdem sie auf ihre latenten Variablen komprimiert wurde. Der ursprüngliche Input dient als Grundwahrheit.

  • Autoregressive LLMs – die Textgenerierungsmodelle, die nach dem Start von ChatGPT Berühmtheit erlangten – haben die Aufgabe, iterativ das nächste Token in einer Sequenz vorherzusagen, wobei nur die vorherigen Token in dieser Sequenz berücksichtigt werden. Für jede Vorhersage dient das tatsächliche nächste Token in der Sequenz als Grundwahrheit.

Kontrastives Lernen

Kontrastive Lernalgorithmen versorgen Modelle mit mehreren Datenproben und beauftragen sie mit der Vorhersage, wie unterschiedlich (oder ähnlich) sie sind. Paare von Datenpunkten werden häufig durch Datenerweiterung erstellt: Dabei werden nicht gelabelte Daten transformiert oder gestört, um neue Instanzen oder erweiterte Ansichten zu erstellen. Zu den gängigen Erweiterungstechniken für Bilddaten gehören beispielsweise Rotation, zufälliges Zuschneiden, Spiegeln, Rauschen, Filtern und Färben.

Kontrastives Lernen wird häufig beim Training von Computer-Vision-Modellen eingesetzt: Es kann beispielsweise einem Modell helfen, dasselbe Objekt zu erkennen, wenn es aus verschiedenen Blickwinkeln betrachtet wird. Es ist auch wichtig für das Training von multimodaler KI: Zum Beispiel kann es einem Modell helfen, Vektoreinbettungen von einer Datenmodalität (wie Text) in eine andere (wie Sprache oder Bilder) zu „übersetzen“.

Unüberwachte Lernalgorithmen

Unüberwachtes maschinelles Lernen wird verwendet, um Modellen beizubringen, intrinsische Muster, Korrelationen und Strukturen in ungelabelten Daten zu entdecken. Im Gegensatz zum überwachten Lernen, bei dem es „richtige“ Antworten gibt, die das Modell lernen sollte, auszugeben, oder zum verstärkenden Lernen, bei dem es ein Spektrum von „guten“ und „schlechten“ Aktionen gibt, die ein Modell ausführen könnte, ist das unüberwachte Lernen am nützlichsten in Szenarien, in denen die ideale Ausgabe nicht im Voraus bekannt ist.

Diese Ziele werden nicht durch eine vordefinierte Grundwahrheit oder Belohnungsstruktur geregelt – daher „unüberwacht“. Unüberwachte Lernalgorithmen beinhalten daher keine Verlustfunktionen, da ihre Aufgaben kein bekanntes ideales Ergebnis beinhalten, an dem gemessen und optimiert werden könnte. Der Erfolg des Lernprozesses wird in erster Linie durch die manuelle Optimierung von Hyperparameternund nicht durch Algorithmen bestimmt, die die internen Parameter des Modells optimieren.

Es gibt drei grundlegende Untergruppen unüberwachter Lernalgorithmen: Clustering-Algorithmen, Zuordnungs-Algorithmen und Algorithmen zur Dimensionalitätsreduzierung.

Clustering-Algorithmen

Clustering-Algorithmen unterteilen ungelabelte Datenpunkte in „Cluster“ oder Gruppierungen, basierend auf ihrer Nähe oder Ähnlichkeit zueinander, für Aufgaben wie die Marktsegmentierung. Sie können auch als prädiktive Modelle für die Erkennung von Anomalien verwendet werden, indem sie die Cluster lernen, in die alle Datenpunkte sortiert werden sollten, und erkennen, wenn ein Datenpunkt als Sonderfall nicht genau in einen dieser Cluster passt.

  • K-Means-Clustering-Algorithmen partitionieren Daten in k-Cluster, wobei ein bestimmter Datenpunkt dem Cluster zugewiesen wird, zu dessen Zentrum (Schwerpunkt) er sich am nächsten befindet. Der Prozess beginnt mit einer anfänglichen Platzierung von k-Zentroiden, die oft randomisiert ist (kann aber auch durch festgelegte Regeln bestimmt werden). Jeder Datenpunkt wird dem Cluster des nächstgelegenen Schwerpunkts zugewiesen. Jeder Schwerpunkt wird dann an die Position verschoben, die den Durchschnitt (Mittelwert) aller Datenpunkte darstellt, die ihm gerade zugewiesen wurden; die Datenpunkte werden erneut nach dem nächstgelegenen Schwerpunkt gruppiert und die Position jedes Schwerpunkts wird erneut angepasst. Dieser Prozess wiederholt sich iterativ, bis sich die Position des Schwerpunkts jedes Clusters stabilisiert hat.
  • Gaußsche Mischmodelle (GMMs) sind ein „weicher“ Cluster-Algorithmus. Ein GMM geht davon aus, dass ein Datensatz eine Mischung mehrerer Gaußscher Verteilungen (d. h. klassischer „Normal-“ oder „Glockenkurven“) ist, und sagt die Wahrscheinlichkeit voraus, dass ein bestimmter Datenpunkt zu jedem dieser normalverteilten Cluster gehört. Der GMM-Algorithmus ist darauf ausgelegt, die Parameter für jede Gaußsche Verteilung – insbesondere den Mittelwert, die Varianz und die Gewichtung jeder Verteilung – zu lernen, die am besten zum Trainingsdatensatz passen.
  • DBSCAN (Dichtebasiertes räumliches Clustering von Anwendungen mit Rauschen) erstellt Cluster aus eng beieinander liegenden Datenpunkten. Anstatt alle Datenpunkte in Cluster zu gruppieren, werden Datenpunkte, die sich allein in Regionen mit geringer Dichte befinden, als Sonderfälle markiert. Es identifiziert Bereiche, die dichte genug sind, um zu einem Cluster zu gehören, basierend darauf, ob sich eine bestimmte Anzahl benachbarter Datenpunkte innerhalb eines bestimmten Radius befindet. Im Gegensatz zu k-Means kann DBSCAN beliebig geformte Cluster finden und erfordert nicht, dass die Anzahl der Cluster vorher angegeben wird.

Assoziations-Algorithmen

  • Assoziationsalgorithmen identifizieren Korrelationen zwischen Variablen in großen Datensätzen. Sie werden vor allem bei Aufgaben wie der Warenkorbanalyse oder Produktempfehlungsengines verwendet: Ein E-Commerce-Service könnte beispielsweise mithilfe von Zuordnungsalgorithmen ermitteln, welche Artikel häufig in Kombination miteinander gekauft werden, und diese Informationen nutzen, um ähnliche Artikel in ihrem Bestand dynamisch zu bewerben.

  • Der Apriori-Algorithmus ist eine klassische Assoziationsmethode. Der Algorithmus durchläuft den Datensatz mehrmals mit einem „Bottom-up“-Ansatz, wobei die Häufigkeit immer größerer Kombinationen einzelner Elemente erkundet und selten auftretende Kombinationen bereinigt werden. Das A-priori-Prinzip besagt, dass, wenn eine größere Gruppierung von Objekten als häufig angesehen wird, jede Untermenge dieser Gruppierung ebenfalls häufig sein muss. Umgekehrt gilt: Wenn eine kleinere Gruppierung von Objekten als selten angesehen wird, muss jede Obermenge, die diese kleinere Gruppierung enthält, ebenfalls selten sein. Obwohl der A-priori-Algorithmus einfach und hochgradig anpassungsfähig ist, kann er speicher- und rechenintensiv werden.

  • Die dynamische Zählung von Datensätzen (Dynamic Itemset Counting, DIC ) ist eine rechenintensivere Assoziationsmethode, die jedoch nach einer ähnlichen Logik wie der klassische Apriori-Algorithmus arbeitet. Anstatt den Datensatz mit jedem Durchlauf zu erkunden, beginnt sie nur mit einer Teilmenge der Datenbank und fügt dann in regelmäßigen Abständen neue Elemente hinzu, wodurch der Fokus „dynamisch“ erweitert wird.

Andere bemerkenswerte Assoziationsalgorithmen sind CHARM (kurz für Closed Association Rule Mining – die Autoren des CHARM-Artikels merken an, dass „das H gratis ist“)2 und CARMA (Continuous Association Rule Mining Algorithm).3

Algorithmen zur Dimensionalitätsreduktion

Algorithmen zur Reduzierung der Dimensionalität sind so konzipiert, dass sie einen Datenpunkt aufnehmen und eine effizientere Darstellung dieses Datenpunkts als Ausgabe haben. Genauer gesagt sind sie darauf ausgelegt, die Zuordnung von hochdimensionalen Datenpunkten zu einem Raum zu erlernen, in dem sie mit weniger Funktionen genau beschrieben werden können: mit anderen Worten, um die Anzahl der Dimensionen zu reduzieren,die für eine effektive Darstellung von Daten erforderlich sind.

Die Reduzierung der Dimension wird häufig als Schritt der Datenvorverarbeitung durchgeführt, um die Komplexität und das Rauschen in den Daten zu reduzieren und so die Vorhersagen zu verbessern oder den Rechenaufwand zu verringern. Es ist auch ein wesentlicher Schritt bei der Modellierung des latenten Raums eines Datensatzes: eine komprimierte (niederdimensionale) Darstellung von Daten, die nur die Teilmenge der Merkmale enthält, die für die jeweilige Aufgabe relevant sind. Andere gängige Anwendungsfälle zur Reduzierung der Dimension sind Datenkomprimierung und Datenvisualisierung.

  • Die Hauptkomponentenanalyse (Principal component analysis, PCA) vereinfacht komplexe Datensätze, indem sie die ursprünglichen Variablen der Daten – von denen viele oft miteinander korrelieren und daher etwas redundant sind – als eine kleinere Teilmenge unkorrelierter Variablen zusammenfasst, von denen jede eine lineare Kombination ursprünglicher Variablen ist. Genauer gesagt priorisiert der Algorithmus die Hauptkomponenten der Daten: die Linearkombinationen von Variablen, die im Vergleich zu anderen Linearkombinationen die größte Varianz aufweisen.

  • T-verteilte stochastische Nachbareinbettung (t-distributed Stochastic Neighbor Embedding, t-SNE) ist ein nichtlinearer Algorithmus zur Dimensionalitätsreduzierung, der häufig zu Datenvisualisierungszwecken verwendet wird. Er wird fast ausschließlich zur Darstellung von Daten in zwei oder drei Dimensionen verwendet. Das Hauptziel ist es, sicherzustellen, dass Datenpunkte, die im hochdimensionalen Raum nahe beieinander liegen, im neuen niedrigdimensionalen Raum nahe beieinander bleiben.

  • Autoencoder sind eine Art von neuronaler Netzwerkarchitektur, die durch einen Algorithmus trainiert wird, der üblicherweise als selbstüberwachter Lernalgorithmus angesehen wird (da sein Ziel darin besteht, eine Verlustfunktion zu minimieren) – aber sie führen dennoch eine Dimensionsreduktion von ungelabelten Daten durch, in diesem Fall modellieren sie ihren latenten Raum. Der Encoder besteht aus einer Reihe von immer kleineren Schichten, die Eingabedaten zwingen, einen „Engpass“ zu durchlaufen, der die Daten in immer weniger Dimensionen „zusammendrückt“, bevor sie den Decoder erreichen. Der Decoder, der aus einer Reihe von immer größeren Schichten besteht, hat dann die Aufgabe, die Originaldaten mit dieser komprimierten Darstellung zu rekonstruieren, mit dem Ziel, den Rekonstruktionsverlust zu minimieren. Dies zwingt den Encoder zu lernen, nur die Informationen zu extrahieren und weiterzuleiten, die für eine genaue Rekonstruktion der ursprünglichen Eingabe am förderlichsten sind.

Halbüberwachte Lernalgorithmen

Halbüberwachtes Lernen, das im Allgemeinen für die gleichen Anwendungsfälle wie überwachte Lernmethoden eingesetzt wird, zeichnet sich durch Techniken aus, bei denen nicht gelabelte Daten zusammen mit einer Teilmenge von gelabelten Daten in das Modelltraining einbezogen werden. Sie sind besonders nützlich in Situationen, in denen die Beschaffung einer ausreichenden Anzahl gelabelter Daten untragbar schwierig oder teuer ist, relevante, nicht gelabelte Daten jedoch relativ einfach zu beschaffen sind.

Die nicht gelabelten Beispiele, die beim halbüberwachten Lernen verwendet werden, müssen für die Aufgabe relevant sein, für die das Modell trainiert wird. Wenn Sie beispielsweise einen Bildklassifikator trainieren, um zwischen Bildern von Katzen und Hunden zu unterscheiden, hilft die Einbeziehung von nicht gelabelten Bildern von Katzen und Hunden beim Training – Bilder von Pferden und Motorrädern jedoch nicht. Diese Bedingung führt zu einer Reihe von Annahmen darüber, wie sich Datenpunkte zueinander verhalten, und bildet die formale Logik halbüberwachter Methoden.

Halbüberwachte Lernalgorithmen werden im Allgemeinen als transduktiv, induktiv oder inhärent selbstüberwacht kategorisiert.

  • Transduktive Methoden konzentrieren sich auf die Klassifizierung der während des Trainings verfügbaren nicht gelabelten Datenpunkte, um sie anschließend auf herkömmliche überwachte Lernalgorithmen anwenden zu können. Label-Verbreitung ist beispielsweise eine auf Graphen basierende Methode, die „Pseudo-Labels“ für nicht gelabelte Daten ableitet, indem bekannte Labels auf den Datenpunkt „übertragen“ werden, der auf benachbarten Knoten des Graphen liegt.

  • Induktive Methoden zielen darauf ab, ein verallgemeinerbares Modell zu erstellen, das sowohl die während des Trainings vorhandenen, nicht gelabelten Daten als auch alle neuen, nicht gesehenen Datenpunkte klassifizieren kann. Beim Selbsttraining wird ein Modell zunächst mit konventionellem überwachtem Lernen auf einem kleinen gelabelten Datensatz trainiert. Das Modell hat dann die Aufgabe, probabilistische Vorhersagen über nicht gelabelte Datenpunkte zu treffen. Es werden nur Vorhersagen akzeptiert, die über einer bestimmten Vertrauensschwelle liegen. Co-Training erweitert das Selbsttraining um Ensemble-Lernen, wobei verschiedene Arten von Basislernern mit unterschiedlichen Funktionen der Daten trainiert werden. Cluster-then-label-Methoden führen ein unbeaufsichtigtes Clustering auf allen verfügbaren Datenpunkten durch, dann weisen sie jedem Cluster Labels zu, basierend darauf, welches Label innerhalb dieses Clusters am häufigsten vertreten ist.

  • Einige Algorithmen, wie z. B. Ladder Networks4 oder halbüberwachte Support-Vektor-Maschinen (S3VMs)5, sind von Natur aus für halbüberwachtes Lernen konzipiert (während transduktive und induktive Methoden herkömmliche überwachte Algorithmen anpassen oder zusätzliche Schritte hinzufügen).

Algorithmen des verstärkenden Lernens

Verstärkende Lernalgorithmen (RL) eignen sich für Aufgaben, bei denen es keine singuläre „richtige“ Ausgabe (oder Aktion) gibt, aber „gute“ Ausgaben. Sie werden vor allem in der Robotertechnik, Videospielen, Argumentationsmodellen und anderen Anwendungsfällen eingesetzt, in denen der Raum möglicher Lösungen und Herangehensweisen besonders groß, offen oder schwer zu definieren ist. Im Sprachgebrauch der RL wird die trainierte Entität üblicherweise als „Agent“ bezeichnet.

Anstelle eines Überwachungssignals und explizit definierter Aufgaben enthalten sie ein Belohnungssignal, das es den Modellen ermöglicht, ganzheitlich durch Versuch und Irrtum zu lernen. Dieses Belohnungssignal kann von einer Belohnungsfunktion, einem separat trainierten Belohnungsmodell oder einem regelbasierten Belohnungssystem stammen.

RL-Algorithmen optimieren eine Richtlinie. Mathematisch gesehen ist eine Richtlinie ( π ) eine Funktion, die einen Zustand ( s ) als Eingabe annimmt und eine Aktion ( a ) zurückgibt: π(s)→a. Das Ziel eines RL-Algorithmus besteht darin, die Richtlinie zu lernen, die die Aktion ausführt, die die maximale Belohnung für einen bestimmten Zustand erhält.

RL-Algorithmen können wertbasiert oder richtlinienbasiert sein.Bei richtlinienbasierten Algorithmen lernt ein Modell direkt eine optimale Richtlinie. Bei wertbasierten Algorithmen lernt der Agent eine Wertfunktion, die eine Bewertung dafür berechnet, wie „gut“ jeder Zustand ist – typischerweise basierend auf der potenziellen Belohnung für Aktionen, die aus diesem Zustand gezogen werden können – und dann Aktionen auswählt, die zu Zuständen mit einem höheren Wert führen. Hybride Ansätze lernen eine Wertfunktion, die dann wiederum zur Optimierung einer Richtlinie verwendet wird.

Zu den bemerkenswerten Verstärkungsalgorithmen gehören:

  • Q-Learning, abgeleitet von wertebasierten Methoden

  • Proximal Policy Optimization (PPO), eine richtlinienbasierte Methode, die vor allem beim Reinforcement Learning from Human Feedback (RLHF) zum Einsatz kommt.
    Actor-Critic und Derivate wie Advantage Actor-Critic (A2C), die eine Mischung aus wert- und richtlinienbasierten Methoden verwenden

  • REINFORCE (kurz für REward Increment = Nonnegative Factor × Offset Reinforcement × Characteristic Eligibility), eine wegweisende richtlinienbasierte Methode

Ensemble-Lernalgorithmen

Ensemble-Lernen bezieht sich auf Techniken, die mehrere Algorithmen des maschinellen Lernens – in diesem Zusammenhang oft als „Lernende“ bezeichnet – kombinieren, um eine genauere oder zuverlässigere Leistung zu erzielen, als es mit den einzelnen Algorithmen allein möglich wäre.

Ensemble-Lernalgorithmen verwenden in der Regel Boosting-, Stacking- oder Bagging-Techniken .

Boosting

Boosting-Algorithmen erstellen Modelle sequentiell, wobei jedes nachfolgende neue Modell trainiert wird, um die Fehler des Vorgängermodells zu korrigieren. Die Entwicklung der „anfänglich schwachen“ Lernenden gipfelt schließlich in einem einzigen, hochpräzisen „starken“ Lernenden.

  • Adaptives Boosting (AdaBoost) verleiht Instanzen, die ursprünglich vom vorherigen Modell falsch klassifiziert wurden, mehr Gewicht und stellt sicher, dass Aktualisierungen des nachfolgenden Modells die Leistung dieser Trainingsbeispiele verbessern. Die endgültige Vorhersage wird durch die gewichtete Mehrheitsentscheidung bestimmt, wobei die späteren, genaueren Modelle mehr Einfluss auf die endgültige Ausgabe haben.

  • Gradient Boosting konzentriert sich auf die Fehler, die von früheren Lernenden gemacht wurden, und nicht auf die Datenpunkte, bei denen die vorherigen Modelle Fehler gemacht haben. Genauer gesagt: Jedes Modell wird darauf trainiert, die Fehler zu korrigieren – das heißt vorherzusagen –, die das vorherige Modell bei einem bestimmten Datenpunkt gemacht hat. Durch die Aggregation der Vorhersagen jedes nachfolgenden Modells kann das Ensemble letztendlich die korrekte Ausgabe für den ursprünglichen Datenpunkt zurückentwickeln. XGBoost (kurz für eXtreme Gradient Boosting) ist eine Open-Source-Bibliothek für maschinelles Lernen zur effizienten Implementierung von Gradient Boosting.

Bagging

Bagging-Algorithmen, auch als Bootstrap-Aggregation bekannt, trainieren mehrere Modelle parallel auf verschiedenen zufällig ausgewählten Teilmengen des Trainingsdatensatzes und kombinieren dann ihre Vorhersagen durch Abstimmung (bei Klassifizierungsproblemen) oder Mittelwertbildung (bei Regressionsproblemen). Dieser Ansatz ist äußerst effektiv bei der Reduzierung von Varianzen und der Verhinderung einer Überanpassung.

Der Random-Forest-Algorithmus beispielsweise verwendet Bagging, um Ensembles von nicht korrelierten Entscheidungsbaummodellen zu erstellen.

Stacking

Stacking-Algorithmen kombinieren Vorhersagen von mehreren Basislernenden, von denen jeder oft auf eine bestimmte Art von Vorhersage spezialisiert ist, und schulen dann ein endgültiges „Meta-Modell“ auf den Ausgaben dieser Basismodelle, um zu lernen, wie man ihre Vorhersagen am besten kombiniert, um eine genauere und leistungsfähigere Endausgabe zu erzielen.

Bei der verwandten Technik der Wissensdestillation wird das endgültige Modell nicht nur auf die endgültigen Ausgabe-Vorhersagen („harte Ziele“) der Basislernenden trainiert, sondern auch auf ihre Zwischenergebnisse („Logits“ oder „weiche Ziele“), um deren „Gedankenprozesse“ zu replizieren.

Deep-Learning-Algorithmen

Deep Learning ist ein Teilbereich des maschinellen Lernens, der durch die Verwendung mehrschichtiger künstlicher neuronaler Netze definiert wird, die in der Regel durch überwachtes Lernen auf gekennzeichneten Daten oder (wie dies insbesondere bei generativen KI-Modellen häufig der Fall ist) durch selbstüberwachtes Lernen auf nicht gekennzeichneten Daten trainiert werden. Beim Deep Reinforcement Learning dient ein tiefes neuronales Netz als die Richtlinie eines RL-Agenten. Deep Learning hat die meisten hochmodernen Fortschritte in der künstlichen Intelligenz seit den frühen 2010er Jahren ermöglicht. Zu seinen wichtigsten Stärken gehört die Fähigkeit, den Prozess der Funktionsentwicklung zu automatisieren, der beim traditionellen maschinellen Lernen oft manuell erfolgt.

Im Gegensatz zu den explizit definierten Algorithmen des „traditionellen“ maschinelles Lernen bestehen Deep-Learning-Modelle aus vielen miteinander verbundenen Schichten von „Neuronen“ (oder „Knoten“), die jeweils eine mathematische Operation ausführen (eine sogenannte „Aktivierungsfunktion“). Die Eingabe in die Aktivierungsfunktion jedes Neurons ist eine gewichtete Kombination der Ausgaben der Aktivierungsfunktionen jedes der Neuronen der vorherigen Schicht. Die Neuronen in der letzten Schicht berechnen die endgültige Ausgabe des Modells. Wesentlich ist, dass die an jedem Knoten durchgeführten Aktivierungsfunktionen nichtlinear sind, sodass neuronale Netze komplexe Muster und Abhängigkeiten modellieren können. Obwohl neuronale Netze in der modernen KI am häufigsten mit hochmodernem Deep Learning in Verbindung gebracht werden, werden klassische neuronale Netze wie eingeschränkte Boltzmann-Maschinen bereits seit Jahrzehnten eingesetzt.

Es ist die verteilte Struktur der Deep Learning-Algorithmen, die ihre unglaubliche Leistung und Vielseitigkeit ermöglicht. Stellen Sie sich vor, Sie trainieren Daten als Datenpunkte, die in einem zweidimensionalen Diagramm verstreut sind, und das Ziel des Modelltrainings besteht darin, eine Linie zu finden, die durch jeden dieser Datenpunkte verläuft. Während herkömmliche Algorithmen des maschinellen Lernens diese Leistung mit einer einzigen mathematischen Funktion versuchen, die eine einzelne Linie (oder Kurve) ergibt, können Deep-Learning-Algorithmen eine beliebige Anzahl kleinerer, individuell anpassbarer Linien zu der gewünschten Form zusammensetzen. Tiefe neuronale Netze sind universelle Approximatoren: Es wurde theoretisch bewiesen, dass es für jede Funktion eine neuronale Netzanordnung gibt, die sie reproduzieren kann.6

Architekturen vs. Algorithmen

  • Im Zusammenhang mit Deep Learning werden bestimmte Modelltypen oft mit ihren „Architekturen“ bezeichnet – ein Konzept, das mit Algorithmen verwandt ist, aber sich von diesen unterscheidet.

  • Eine Neural Networks Architektur bezieht sich auf ihr Layout: die Anzahl und Größe der Schichten; die Verwendung spezialisierter Schichten; die Auswahl der Aktivierung. Die gleiche neuronale Netzwerkarchitektur kann oft trainiert werden, um eine von mehreren Arten von Aufgaben auszuführen oder eine von mehreren Datenmodalitäten zu verarbeiten.

  • Ein Deep Learning-Algorithmus umfasst nicht nur die neuronale Netzwerkarchitektur, die für ein Modell verwendet wird, sondern auch die Aufgabe, für die es trainiert wird, und die Schritte, die unternommen werden, um es für diese Aufgabe zu optimieren.

Betrachten wir Autoencoder: Von der Architektur her ist ein Autoencoder ein Encoder-Decoder-Modell – sein Encoder-Netzwerk besteht aus immer kleineren Schichten, während sein Decoder-Netzwerk aus immer größeren Schichten besteht. Ein Autoencoder ist jedoch nur eines von vielen Encoder-Decoder-Modellen: Bildsegmentierungsmodelle haben beispielsweise eine sehr ähnliche Architektur, bei der progressive kleinere konvolutionale Schichten das Downsampling der Daten übernehmen, um die Hauptmerkmale zu isolieren und zu segmentieren, gefolgt von progressiv größeren Schichten, die die (segmentierten) Daten wieder in ihre ursprüngliche Größe hochrechnen.

Was einen Autoencoder zu einem Autoencoder macht, ist nicht (nur) seine Architektur, sondern der Algorithmus, mit dem er trainiert wird: Ein Autoencoder ist mit der Aufgabe betraut, die ursprüngliche Eingabe zu rekonstruieren, und wird durch Modelltraining optimiert, um eine Funktion zu minimieren, die den Rekonstruktionsverlust misst (oft modifiziert durch zusätzliche Regularisierungsbedingungen). Ein Modell mit identischer Architektur, das jedoch für die Ausführung einer anderen Aufgabe trainiert und für ein anderes Ziel optimiert wurde, ist kein Autoencoder.

Weitere Lösungen
IBM watsonx.ai

Trainieren, validieren, optimieren und implementieren Sie generative KI, Foundation Models und maschinelle Lernfunktionen mit IBM watsonx.ai, einem Studio der nächsten Generation für AI Builder in Unternehmen. Erstellen Sie KI-Anwendungen mit einem Bruchteil der Zeit und Daten.

Entdecken sie watsonx.ai
Lösungen im Bereich künstlicher Intelligenz

Setzen Sie KI in Ihrem Unternehmen ein – mit branchenführendem Fachwissen im Bereich KI und dem Lösungsportfolio von IBM an Ihrer Seite.

Erkunden Sie KI-Lösungen
KI-Beratung und -Services

Erfinden Sie kritische Workflows und Abläufe neu, indem Sie KI einsetzen, um Erfahrungen, Entscheidungsfindung in Echtzeit und den geschäftlichen Nutzen zu maximieren.

KI-Services entdecken
Machen Sie den nächsten Schritt

Profitieren Sie von einem einheitlichen Zugriff auf Funktionen, die den gesamten Lebenszyklus der KI-Entwicklung abdecken. Erstellen Sie leistungsstarke KI-Lösungen mit benutzerfreundlichen Oberflächen, Workflows und Zugriff auf branchenübliche APIs und SDKs.

watsonx.ai erkunden Live-Demo buchen
Fußnoten

Alle Links befinden sich außerhalb von ibm.com. 
1.  „Energy-Based Self-Supervised Learning“, Yann LeCun (Zugriff über UCLA), 19. November 2019
2.  „CHARM: An Efficient Algorithm for Closed Itemset Mining“, Ergebnisse der 2002 SIAM Internationalen Konferenz auf Data Mining
3.  „Online Association Rule Mining“, Proceedings der 1999 ACM SIGMOD Internationalen Konferenz auf Management von Daten, 1. Juni 1999
4.  „Semi-Supervised Learning mit Ladder Networks“, arXiv, 24. November 2015
5.  „Kolmogorovs Mapping Neural Networks Existenzsatz“, Proceedings der IEEE Ersten Internationalen Konferenz auf Neural Networks (Zugriff über die University of Waterloo), 1987
6.  „Multilayer Feedforward Networks with a Non-Polynomial Activation Function Can Approximate Any Function“, Center for Research on Information Systems (New York University), März 1992