Halb-überwachtes Lernen (Semi-Supervised Learning)

Was ist halb-überwachtes Lernen?

Ein Algorithmus wird dabei mit beschrifteten wie auch unbeschrifteten Daten trainiert. Halb- oder teil-überwachtes Lernen (aus dem Engl. semi-supervised learning) ermöglicht so das zeit- und kosteneffiziente Lernen. Im Bereich der Künstlichen Intelligenz wird ein Lernprozess benötigt, mit dem das System auf intelligente Weise Zusammenhänge lernen kann. Im Gegensatz zum betreuten Lernen ist halb-überwachtes Lernen in der Lage wie beim unbeaufsichtigten Lernen schnell und effektiv Daten einzuordnen.

Es sind eine Vielzahl von Szenarien möglich, bei denen Daten mit Beschriftungen tatsächlich nicht ohne weiteres verfügbar sind. So kann halb-überwachtes Lernen mit einem Bruchteil von gekennzeichneten Daten, etwa mit hunderten von Schulungsbeispielen, optimale Ergebnisse erzielen. Mit halb-überwachtem Lernen können solche Arten von Datensätzen bearbeitet werden, die entweder überwachtes Lernen oder unbeaufsichtigtes Lernen wählen – ohne dabei Kompromisse eingehen zu brauchen.

Wann wird teil-überwachtes Lernen eingesetzt?

Ein halb- bzw. teil-überwachtes Lernen beinhaltet eine Funktionsschätzung von entsprechend markierten und unmarkierten Daten. Mit diesem Ansatz werden nicht so viele beschriftete Daten benötigt, deren Erstellung häufig relativ kostspielig ist. Nicht beschriftete Daten sind wesentlich günstiger und diese können ebenfalls für das Lernen herangezogen werden. Die Herausforderung besteht in der Zusammenstellung dieser Trainingsdaten, um ein Verhältnis von beschrifteten und unbeschrifteten Daten von hoher Gesamtsignifikanz für den Algorithmus bereitzustellen.

Ziel ist es, den nicht gelabelten Daten ein richtiges Label zuzuweisen. Dies kann mit der sogenannten Label Propagation erreicht werden. Solch eine Methode weist Ähnlichkeiten zu einer Clusteranalyse auf. Die Daten können in Cluster geteilt werden und dann können innerhalb des Clusters die nicht gelabelten Daten ganz einfach die gleichen Labels zugeordnet bekommen.

Was ist Label-Spreading?

Label Spreading ist eine Form von einem halb-überwachten Lernalgorithmus. Dieser Algorithmus von Dengyong Zhou et al. erschien in ihrem Artikel mit Titel „Lernen mit lokaler und mit globaler Konsistenz“ im Jahre 2003. So ist die Intuition für einen breiteren Ansatz von halb-überwachtem Lernen so, dass nahegelegene Punkte in dem Eingaberaum die gleiche Bezeichnung besitzen sollten und die Punkte in der gleichen Struktur oder Mannigfaltigkeit in dem Eingaberaum die gleiche Bezeichnung aufweisen sollten.

Die Etikettenverbreitung ist praktisch von einer Technik aus der experimentellen Psychologie entlehnt, die als Ausbreitungsaktivierungsnetzwerk bezeichnet wird. So werden Punkte im Datensatz ganz einfach basierend auf den relativen Abständen in dem Eingaberaum in solch einem Diagramm verbunden. Symmetrisch normalisiert ist die Gewichtsmatrix dieses Graphen, ähnlich wie bei einer spektralen Clusterbildung. Die Informationen werden dann durch das Diagramm geleitet, das angepasst wird, damit die Struktur im Eingaberaum erfasst werden kann. So wird schließlich die Bezeichnung jedes unbeschrifteten Punktes auf eben die Klasse festgelegt, bei der er während des Iterationsprozesses gerade die meisten Informationen bekommen hat. Die Nutzung von Label Spreading hilft Kosten zu sparen.

Hyperparameter

Was sind Hyperparameter?

Ein Hyperparameter ist ein gewisser Parameter, mit dem der Lernprozess kontrolliert werden kann. Sie können zu Modell-Auswahl-Aufgaben herangezogen werden – andererseits gibt es auch Algorithmus-Hyperparameter, die prinzipiell keinen Einfluss auf die Leistungsfähigkeit des Modells haben, aber die die Geschwindigkeit und die Qualität des Lernprozesses beeinflussen. So kann man von Modell-Hyperparametern sprechen, die die Topologie und die Größe von Neuronalen Netzwerken kennzeichnen. Andererseits sind Algorithmus-Hyperparameter die Lernrate und die Mini-Batch-Größe.

Verschiedene Modell-Trainings-Algorithmen benötigen verschiedene Hyperparameter – manch einfache Algorithmen benötigen keine. Mit diesen Hyperparametern lernt der Trainings-Algorithmus die Parameter von gegebenen Daten. Die Zeit, die benötigt wird, um zu trainieren und ein Modell zu testen, kann davon abhängen, welche Wahl bei den Hyperparametern getroffen wird. Ein Hyperparameter kann normalerweise ein kontinuierlicher oder ein Integer-Typ sein. Dies kann zu gemischten Typ-Optimierungs-Problemen führen. Die Existenz von manchen Hyperparametern ist bedingt durch die Werte von anderen, wie etwa bei der Größe von jeder versteckten Ebene in einem Neuronalen Netzwerk, die bedingt sein kann von der Anzahl von Ebenen.

Mithilfe einer Hyperparameteroptimierung wird die Suche nach optimalen Hyperparametern im maschinellen Lernen geleistet. Ein Hyperparameter wird vor dem eigentlichen Modell-Training festgelegt.

Wann wird Hyperparameteroptimierung eingesetzt?

Bei automatisiertem maschinellen Lernen und bei tiefen Neuronalen Netzwerken wird Hyperparameteroptimierung genutzt. So gibt es Blackbox-Funktionsoptimierungsmethoden, die auf Modell-freien Methoden und Bayes-Optimierungen basieren. Die Optimierungen ziehen hohe Berechnungsanforderungen nach sich. Jedes maschinelle Lernsystem besitzt Hyperparameter. Die Hyperparameter werden automatisch so gesetzt, dass sich die Leistung optimiert.

Was ist eine Hyperparameteroptimierung?

Von Hyperparametern spricht man bei anpassbaren Parametern, mit welchen Sie den Modell-Trainingsprozess steuern können. In neuronalen Netzwerken können Sie die Anzahl von verborgenen Ebenen festlegen und die Anzahl der Knoten bestimmen, die auf den einzelnen Ebenen sich befinden. Die Leistung des Modells hängt stark von den Hyperparametern ab.

Eine Hyperparameteroptimierung wird mit dem Prozess vorgenommen, bei dem eine passende Konfiguration gesucht wird. Ausgewählt wird eine solche Konfiguration, welche die beste Leistung liefert. Ein solcher Prozess ist praktisch immer rechenintensiv und er muss manuell durchgeführt werden.

Welche Unterschiede gibt es zwischen Parametern und Hyperparametern?

Ein Modellparameter ist eine Konfigurationsvariable, die intern gegenüber des verwendeten Modells ist und deren Wert von den Daten geschätzt wird. Solche Parameter werden benötigt, um Vorhersagen zu tätigen. Die Werte definieren die Fähigkeit des Modells für Ihr Problem. Sie werden geschätzt oder gelernt durch die Daten. Meist werden sie nicht durch den Anwender manuell gesetzt. Modellparameter werden oft gespeichert als Teil des gelernten Modells. Sie sind der Schlüssel zum maschinellen Lernen.

Dahingegen ist ein Hyperparameter eine Konfiguration, die extern bezüglich eines Modells ist und deren Wert nicht durch die Daten geschätzt werden kann. Häufig werden diese Hyperparameter genutzt, um in Prozessen Modellparameter zu schätzen.

Heuristik

Was ist Heuristik?

Heuristik bezeichnet ein analytisches Vorgehen, mit begrenztem Wissen zu Schlussfolgerungen und Lösungen zu gelangen. Die gefolgerten Aussagen können von der optimalen Lösung abweichen. Der Vergleich zwischen der optimalen Lösung und der Lösung des Heuristik-Verfahrens bestimmt die Güte der Heuristik-Verfahren.

Zu den bekanntesten Heuristik-Verfahren zählen Algorithmen mit Versuch und Irrtum (trial and error). Zu ihnen gehören auch statistische Auswertungen von gewissen Zufallsstichproben und Ausschlussverfahren. Solche Verfahren basieren auf bereits gemachten Erfahrungen.

Durch Heuristiken ist es möglich, dass eine optimale Lösung in kurzer Zeit gefunden werden kann. So werden verkürzte Rechenwege genutzt, um Berechnungen schneller auszuführen. Damit ist es gelungen, dass Programme wie Deep Blue oder AlphaGo führende Profispieler in Schach beziehungsweise Go schlagen können.

Anwendungsbereiche für Heuristiken finden sich bei der Sprach- und Gesichtserkennung, bei Schrifterkennung (OCR), beim Data Mining und bei allgemein wissensbasierten Systemen.

Wie wird ein Heuristik-Verfahren definiert?

In der neueren Wissenschaftstheorie wird Heuristik als Beurteilungskriterium für Theorien, sowie für ganze Wissenschaftsprogramme (Paradigma) eingesetzt und sind von besonderer Bedeutung. Dabei wird allerdings nicht ausschließlich der Informationsgehalt bewertet, sondern vor allem das innewohnende Potenzial für eine Weiterentwicklung des Erkenntnisstandes.

Heuristik-Verfahren können eine Vorgehensweise zur Lösung von allgemeinen Problemen bieten. Gerade dann, wenn keine eindeutige Lösungsstrategie bekannt ist, können sie erfolgreich zum Einsatz kommen. Sie basieren in erster Linie auf der Grundlage von subjektiven Erfahrungen. Auch überlieferte Verhaltensweisen können eine Rolle spielen.

Vor allem bei schlecht strukturierten oder schwer überschaubaren Problembereichen können sie eingesetzt werden. So können mathematische Probleme elegant gelöst und deren Zeitaufwand erheblich verringert werden. Solche Lösungsverfahren können ohne Konvergenzbeweis für Probleme eingesetzt werden, für welche keine konvergierenden Verfahren existent sind.

Welche Arten von Heuristiken gibt es?

In der Wissenschaft werden zahlreiche verschiedene Verfahren angewandt. Ihr Aufbau richtet sich meist nach dem Anwendungsbereich, in dem sie zum Einsatz kommen.

  • Take-the-Best Heuristik-Verfahren nutzen die bestmögliche Strategie aus.
  • Rekognitionsheuristiken basieren auf dem Wiedererkennungseffekt.
  • Verfügbarkeitsheuristiken beruhen auf den individuellen Erinnerungen.
  • Repräsentationsheuristiken haben einen Prototyp und lassen Rückschlüsse bei Ähnlichkeiten zu.
  • Ankerheuristiken können eventuellen Nutzen aus dem Ankereffekt ziehen, dabei beeinflussen willkürlich gewählte Anker Menschen in ihrem Entscheidungsprozess.
  • Die Expertenheuristik kann Expertenwissen nutzen.
  • Sympathieheuristik bewertet Aussagen und Auftreten von Personen.
  • Die Konsensheuristik achtet auf Mehrheitsmeinungen.
  • Es gibt im Operations Research Heuristik-Verfahren als Eröffnungsverfahren, als Verbesserungsverfahren, als unvollständig exakte Verfahren und als Verbundverfahren. Unterschieden werden problemspezifische und universelle Heuristiken.
  • Es gibt auch Metaheuristiken, wie den Ameisenalgorithmus, unterschiedliche Arten von Evolutionären Algorithmen, oder auch Simulated Annealing, die Tabusuche und auch Variable Neighborhood Search.

Hypothese

Was ist die Hypothese bei Künstlicher Intelligenz?

Eine Hypothese ist eine in sich logische Annahme, die auf Grundlage von Annahmen und Erfahrungen getroffen wird und noch nicht bewiesen ist.

Für die Künstliche Intelligenz (KI) gibt es KI-Hypothesen in zwei verschiedenen Denkrichtungen. Bei der starken KI-Hypothese ist die Maschine in der Lage tatsächlich wie ein Mensch zu denken und ein wirkliches Selbstbewusstsein zu entwickeln. Hingegen ist bei der schwachen KI-Hypothese die Maschine lediglich in der Lage nur einzelne intelligente Funktionen in Vertretung vom Menschen zu übernehmen. So gibt es Mustererkennung, Suchprogramme oder auch Systeme (wie Autos, Computerprogramme) welche ihr Verhalten an den Bediener optimal anpassen (wie bei sportlichen Fahrern oder auch bevorzugte Funktionen).

Da allgemein noch wenig darüber bekannt ist, wie sich menschliche Intelligenz ganzheitlich beschrieben werden kann, fehlt ein brauchbarer Maßstab für eine starke KI-Hypothese. Die Hardware des Gehirns ist nicht grundsätzlich anders als bei einem Computer. Jedes Element, egal ob es sich um einen Transistor oder eine Nervenzelle handelt, erledigt ganz einfache Funktionen – diese lassen sich von Rechnern nachbilden.

Technologische Singularität beschreibt eindrucksvoll eine verbreitete Hypothese, nach der die Entwicklung einer künstlichen Superintelligenz möglich, die ein rasantes technologisches Wachstum ermöglichen kann. So könnte eine starke KI mit unaufhaltsamen Folgen von Selbstverbesserungszyklen sich weiterentwickeln und damit eine „Intelligenzexplosion“ nach sich ziehen. Solch eine Superintelligenz könnte die menschliche Intelligenz weitaus übertreffen.

Welche Anwendungen mit Hypothesenbildung sind bekannt?

Es gibt KI im Gesundheitswesen, die erfolgreich eingesetzt werden kann. Eine der bekanntesten ist IBM Watson. Dieses System versteht natürliche Sprache und es kann auf Fragen antworten, die gestellt werden. Solch ein System wertet Patientendaten aus und kann anhand dieser Hypothesen bilden.

Es gibt auch KI-Anwendungen wie virtuelle Online-Gesundheitsassistenten und funktionsfähige Chatbots, welche Patienten und Kunden in dem Gesundheitswesen helfen, medizinische Informationen direkt zu finden. Es können auch Termine vereinbart werden. KI-Anwendungen können dabei behilflich sein, Abrechnungsprozesse zu verstehen und verschiedene Verwaltungsvorgänge zu erledigen.

Können robuste Hypothesen durch KI geschaffen werden?

Das menschliche Gehirn besitzt die Fähigkeit mentale Modelle aus der Erfahrung zu bauen und damit systematisch über aktuelle Sinneseindrücke hinaus weiter reichende Schlüsse zu ziehen, welche sogar Erklärungen ermöglichen. Es gibt die Form der Erklärungsstruktur, die auch als ein generatives Modell bezeichnet werden kann. Dieses beruht auf einer entsprechenden Vielzahl von unterschiedlichen Erfahrungen und generiert durch bestimmte Sinneswahrnehmungen eine Hypothese. Dadurch können Aussagen darüber getroffen werden, wie sich Objekte bewegen oder ob diese verdeckt sind. Diese Hypothesen sind dabei deutlich robuster als klassifikationsorientierte Systeme, die beim Deep Learning zugrunde liegen.

Human-in-the-Loop

Was ist Human-in-the-Loop?

Ein Human-in-the-Loop ist ein Mensch, der ein KI-System trainiert, testet und optimiert, um zu zuverlässigeren Ergebnissen zu kommen. Die künstliche Intelligenz macht wie ein normaler Schüler zu Beginn einer neuen Tätigkeit Fehler oder versteht bestimmte Einzelheiten falsch. So kann ein System dazu angeleitet werden, Tiere im Meer zu erfassen und es kann ein Tintenfisch mit seiner besonderen Form von anderen Tieren unterschieden werden.

Allerdings kann es zu Schwierigkeiten kommen, wenn andere Fische eine ähnliche Form aufweisen und eine ähnliche Farbe haben. In solchen Fällen gibt es die Möglichkeit mit einem Human-in-the-Loop einzugreifen und unterschiedliche Merkmale im System einzugeben, nach denen gesucht werden soll. Auf eine solche Weise kann das System zu genaueren Antworten gelangen. Ein großer Vorteil bei der Eingabe von menschlichen Anleitungen ist, dass zwei unterschiedliche Arten von Intelligenz praktisch gleichzeitig genutzt werden können. So können Daten bereitgestellt werden und das KI-System kann seine Fortschritte prüfen und bewerten.

Der Mensch kann sein eigenes Wissen beisteuern, mit dem er selbst gelernt hat und kann dieses mit der Geschwindigkeit des Computers kombinieren. Damit gibt es ein fantastisch großes Potenzial mit dieser künstlichen Intelligenz und durch eine dynamische Zusammenarbeit können Nachteile von Mensch und Maschine ganz einfach ausgeglichen werden und damit können genauere Ergebnisse komfortabel erzielt werden.

Welche Human-in-the-loop Simulatoren gibt es?

Es gibt eine ganze Reihe von verschiedenen Simulatoren für dieses Konzept:

  • Flugsimulatoren
  • Fahrzeugsimulatoren
  • Marinesimulatoren
  • Unterschiedlichste Videospiele
  • Supply Chain Management Simulatoren
  • Digitales Puppenspiel

Wann wird ein Mensch in den Berechnungsprozess einbezogen?

Human-in-the-Loop Systeme arbeiten mit einem menschlichen Supervisor zusammen. Dieser kann in kritischen Situationen weiterhelfen. Meist setzt das System das gelernte selbständig um. So werden viele Prozesse automatisiert. Allerdings kann in schwierigen und unbekannten Situationen ein Mensch gefragt werden, um schwierige Entscheidungen zu treffen oder aber um der Maschine eine neue Situation zu erklären.

Wie funktioniert Human-in-the-Loop?

Human-in-the-Loop kombiniert Supervised Learning mit dem Active Learning und ist ein essenzieller Baustein von KI Anwendungen. Es sollen möglichst genaue Vorhersagen getroffen werden. Das Human in the Loop System bietet effiziente und schnelle Verfahren für das Modell Training und die Vorhersage. Es ist ein zweckdienliches Verfahren für eine Identifizierung informativer Beispiele. Es gibt ergonomische Werkzeuge für eine Auszeichnung von entsprechenden Trainingsdaten.