Grundlagen der KI

Was ist Meta-Lernen?

mm
Unite.AI zu deinen bevorzugten Quellen auf Google hinzufügen

Was ist Meta-Lernen?

Eines der am schnellsten wachsenden Forschungsgebiete im Bereich des maschinellen Lernens ist das Gebiet des Meta-Lernens. Meta-Lernen im Kontext des maschinellen Lernens ist die Verwendung von maschinellen Lernalgorithmen, um andere maschinelle Lernmodelle zu trainieren und zu optimieren. Da Meta-Lernen immer beliebter wird und immer mehr Meta-Lern-Techniken entwickelt werden, ist es von Vorteil, eine Vorstellung davon zu haben, was Meta-Lernen ist und wie es angewendet werden kann. Lassen Sie uns die Ideen hinter dem Meta-Lernen, Arten von Meta-Lernen und einige der Möglichkeiten, wie Meta-Lernen eingesetzt werden kann, untersuchen.

Der Begriff Meta-Lernen wurde von Donald Maudsley geprägt, um einen Prozess zu beschreiben, bei dem Menschen beginnen, zu bestimmen, was sie lernen, und zunehmend die Kontrolle über ihre Lerngewohnheiten, ihre Art der Wahrnehmung, ihrer Fragestellungen, ihres Lernens und ihrer Entwicklung übernehmen. Später beschrieben Kognitionsforscher und Psychologen Meta-Lernen als “Lernen, wie man lernt”.

Für die maschinelle Lernversion des Meta-Lernens wird die allgemeine Idee des “Lernens, wie man lernt” auf künstliche Intelligenzsysteme angewendet. Im Sinne der künstlichen Intelligenz ist Meta-Lernen die Fähigkeit eines künstlich intelligenten Systems, zu lernen, wie es komplexe Aufgaben ausführen kann, indem es die Prinzipien, die es verwendet, um eine Aufgabe zu lernen, auf andere Aufgaben anwendet. Künstliche Intelligenzsysteme müssen normalerweise trainiert werden, um eine Aufgabe durch das Beherrschen vieler kleiner Teilgaben zu erfüllen. Dieses Training kann lange dauern, und künstliche Intelligenzagenten übertragen die während einer Aufgabe erworbenen Kenntnisse nicht leicht auf andere Aufgaben. Durch die Erstellung von Meta-Lernmodellen und -techniken kann künstliche Intelligenz lernen, Lernmethoden zu verallgemeinern und neue Fähigkeiten schneller zu erwerben.

Arten von Meta-Lernen

Optimizer-Meta-Lernen

Meta-Lernen wird oft eingesetzt, um die Leistung eines bereits bestehenden neuronalen Netzes zu optimieren. Optimizer-Meta-Lernmethoden funktionieren normalerweise, indem sie die Hyperparameter eines anderen neuronalen Netzes anpassen, um die Leistung des Basisneuronalen Netzes zu verbessern. Das Ergebnis ist, dass das Zielnetz besser darin wird, die Aufgabe auszuführen, für die es trainiert wird. Ein Beispiel für einen Meta-Lern-Optimizer ist die Verwendung eines Netzes, um Gradientenabstieg-Ergebnisse zu verbessern.

Few-Shots-Meta-Lernen

Ein Few-Shots-Meta-Lernansatz ist einer, bei dem ein tiefes neuronales Netz entwickelt wird, das in der Lage ist, von den Trainingsdatensätzen auf nicht gesehene Datensätze zu verallgemeinern. Ein Beispiel für Few-Shot-Klassifizierung ist ähnlich wie eine normale Klassifizierungsaufgabe, aber stattdessen sind die Datenproben ganze Datensätze. Das Modell wird auf vielen verschiedenen Lernaufgaben/Datensätzen trainiert und dann für optimale Leistung auf den Trainingsaufgaben und nicht gesehenen Daten optimiert. Bei diesem Ansatz wird ein einzelnes Trainingsmuster in mehrere Klassen unterteilt. Das bedeutet, dass jedes Trainingsmuster/Datensatz aus zwei Klassen bestehen könnte, für insgesamt 4-Shots. In diesem Fall könnte die gesamte Trainingsaufgabe als 4-Shot-2-Klassen-Klassifizierungsaufgabe beschrieben werden.

Beim Few-Shot-Lernen besteht die Idee darin, dass die einzelnen Trainingsmuster minimalistisch sind und dass das Netz lernen kann, Objekte zu identifizieren, nachdem es nur wenige Bilder gesehen hat. Dies ist ähnlich wie bei einem Kind, das lernen kann, Objekte zu unterscheiden, nachdem es nur ein paar Bilder gesehen hat. Dieser Ansatz wurde verwendet, um Techniken wie One-Shot-Generative-Modelle und Memory-augmented-Neuronale-Netze zu erstellen.

Metric-Meta-Lernen

Metric-basiertes Meta-Lernen ist die Verwendung von neuronalen Netzen, um zu bestimmen, ob eine Metrik effektiv verwendet wird und ob das Netz oder die Netze die Zielmetrik erreichen. Metric-Meta-Lernen ist ähnlich wie Few-Shot-Lernen, da nur wenige Beispiele verwendet werden, um das Netz zu trainieren und es die Metrik zu lernen. Die gleiche Metrik wird über verschiedene Domänen hinweg verwendet, und wenn die Netze von der Metrik abweichen, werden sie als fehlgeschlagen betrachtet.

Recurrent-Model-Meta-Lernen

Recurrent-Model-Meta-Lernen ist die Anwendung von Meta-Lern-Techniken auf rekurrente Neuronale Netze und ähnliche Long-Short-Term-Memory-Netze. Diese Technik funktioniert, indem das RNN/LSTM-Modell trainiert wird, um sequenziell einen Datensatz zu lernen, und dann als Grundlage für einen anderen Lerner verwendet wird. Der Meta-Lerner übernimmt den spezifischen Optimierungsalgorithmus, der zum Trainieren des ursprünglichen Modells verwendet wurde. Die vererbte Parametrisierung des Meta-Lerners ermöglicht es ihm, schnell zu initialisieren und zu konvergieren, aber dennoch für neue Szenarien aktualisiert zu werden.

Wie funktioniert Meta-Lernen?

Die genaue Art und Weise, wie Meta-Lernen durchgeführt wird, variiert je nach Modell und Aufgabenart. Allerdings beinhaltet eine Meta-Lernaufgabe im Allgemeinen das Übertragen der Parameter des ersten Netzes in die Parameter des zweiten Netzes/des Optimierers.

Es gibt zwei Trainingsprozesse im Meta-Lernen. Das Meta-Lernmodell wird normalerweise nach mehreren Schritten des Trainings auf dem Basismodell trainiert. Nach den Vorwärts-, Rückwärts- und Optimierungsschritten, die das Basismodell trainieren, wird der Vorwärts-Trainingsdurchlauf für das Optimierungsmodell durchgeführt. Zum Beispiel wird nach drei oder vier Schritten des Trainings auf dem Basismodell ein Meta-Verlust berechnet. Nachdem der Meta-Verlust berechnet wurde, werden die Gradienten für jeden Meta-Parameter berechnet. Nachdem dies geschehen ist, werden die Meta-Parameter im Optimierer aktualisiert.

Eine Möglichkeit, den Meta-Verlust zu berechnen, besteht darin, den Vorwärts-Trainingsdurchlauf des ursprünglichen Modells abzuschließen und dann die bereits berechneten Verluste zu kombinieren. Der Meta-Optimizer könnte sogar ein weiterer Meta-Lerner sein, obwohl an einem bestimmten Punkt ein diskreter Optimierer wie ADAM oder SGD verwendet werden muss.

Viele Deep-Learning-Modelle können Hunderttausende oder sogar Millionen von Parametern haben. Die Erstellung eines Meta-Lerners, der eine vollständig neue Menge von Parametern hat, wäre rechenintensiv, und deshalb wird normalerweise eine Taktik namens Koordinaten-Teilen verwendet. Koordinaten-Teilen beinhaltet die Konstruktion des Meta-Lerners/Optimierers so, dass er einen einzelnen Parameter aus dem Basismodell lernt und dann diesen Parameter anstelle aller anderen Parameter klonen lässt. Das Ergebnis ist, dass die Parameter, die der Optimierer besitzt, nicht von den Parametern des Modells abhängen.

Blogger und Programmierer mit Spezialisierungen in Machine Learning und Deep Learning Themen. Daniel hofft, anderen zu helfen, die Macht von KI für das soziale Wohl zu nutzen.