Machine Learning und KI kompakt - Sebastian Raschka - E-Book

Machine Learning und KI kompakt E-Book

Sebastian Raschka

0,0
34,90 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.
Mehr erfahren.
Beschreibung

Vertiefendes Wissen von Deep Learning über Computer Vision bis Natural Language Processing - Schließt die Lücke zwischen Grundlagen und Profiwissen - Einfache, prägnante Erklärungen zu wichtigen und aktuellen Themen - Mit Übungsaufgaben sowie Codebeispielen auf GitHub   Sie verfügen bereits über Grundkenntnisse zu maschinellem Lernen und künstlicher Intelligenz, haben aber viele Fragen und wollen tiefer in wesentliche und aktuelle Konzepte eintauchen? ML- und KI-Experte Sebastian Raschka greift in diesem Buch die wichtigsten Schlüsselfragen auf und liefert sowohl prägnante als auch einfach verständliche Erklärungen zu komplexen und fortgeschrittenen Themen wie Deep Learning, Überanpassung, Self-Supervised Learning, generative KI, Computer Vision, Natural Language Processing und Modellevaluierung. Viele Beispiele, anschauliche Illustrationen und praktische Übungsaufgaben helfen Ihnen dabei, das Erlernte nicht nur schnell zu verstehen, sondern auch praktisch umzusetzen. Dabei werden weder fortgeschrittene Mathematik- noch Programmierkenntnisse vorausgesetzt – wer tiefer in den Code eintauchen will, findet jedoch im kostenlosen Zusatzmaterial einige Codebeispiele. Aus dem Inhalt: - Umgang mit verschiedenen Zufallsquellen beim Training neuronaler Netze - Unterscheidung zwischen Encoder- und Decoder-Architekturen in großen Sprachmodellen (LLMs) - Verringerung von Überanpassung durch Daten- und Modellmodifikationen - Konstruktion von Konfidenzintervallen für Klassifizierer und Optimierung von Modellen mit begrenzten gelabelten Daten - Wählen zwischen verschiedenen Multi-GPU-Trainingsparadigmen und verschiedenen Arten von generativen KI-Modellen - Verstehen von Performancemetriken für die Verarbeitung natürlicher Sprache

Das E-Book können Sie in Legimi-Apps oder einer beliebigen App lesen, die das folgende Format unterstützen:

EPUB
MOBI

Seitenzahl: 282

Veröffentlichungsjahr: 2025

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Sebastian Raschka, PhD, ist Forscher für maschinelles Lernen und KI mit einer großen Leidenschaft für Wissensvermittlung. Als Lead AI Educator bei Lightning AI brennt er dafür, KI und Deep Learning verständlich darzustellen und Menschen beizubringen, wie sie diese Technologien in großem Umfang nutzen können. Bevor er voll und ganz in Lightning AI eingestiegen ist, hatte Sebastian Raschka eine Position als Assistenzprofessor für Statistik an der University of Wisconsin-Madison inne, wo er sich auf die Erforschung von Deep Learning und maschinellem Lernen spezialisierte. Auf seiner Website (https://sebastianraschka.com) erfahren Sie mehr über seine Forschung. Außerdem liebt Sebastian Raschka Open-Source-Software und leistet seit über einem Jahrzehnt leidenschaftlich Beiträge dazu. Neben dem Programmieren schreibt er auch gern und ist Autor der Beststeller Python Machine Learning und Machine Learning with PyTorch and Scikit-Learn (beide bei Packt Publishing veröffentlicht).

Über den Technischen Redakteur

Andrea Panizza ist leitender KI-Spezialist beim Unternehmen Baker Hughes, das modernste KI/ML-Techniken einsetzt, um die technische Konstruktion zu beschleunigen, die Informationsgewinnung und -extraktion aus großen Dokumentensammlungen zu Arbeitsmappen und die unbemannte Inspektion von Anlagen mithilfe von Computer Vision zu unterstützen. Er hat einen Doktortitel in Computational Fluid Dynamics. Bevor er zu Baker Hughes kam, arbeitete er als CFD-Forscher bei CIRA (dem italienischen Zentrum für Luft- und Raumfahrtforschung).

Coypright und Urheberrechte:

Die durch die dpunkt.verlag GmbH vertriebenen digitalen Inhalte sind urheberrechtlich geschützt. Der Nutzer verpflichtet sich, die Urheberrechte anzuerkennen und einzuhalten. Es werden keine Urheber-, Nutzungs- und sonstigen Schutzrechte an den Inhalten auf den Nutzer übertragen. Der Nutzer ist nur berechtigt, den abgerufenen Inhalt zu eigenen Zwecken zu nutzen. Er ist nicht berechtigt, den Inhalt im Internet, in Intranets, in Extranets oder sonst wie Dritten zur Verwertung zur Verfügung zu stellen. Eine öffentliche Wiedergabe oder sonstige Weiterveröffentlichung und eine gewerbliche Vervielfältigung der Inhalte wird ausdrücklich ausgeschlossen. Der Nutzer darf Urheberrechtsvermerke, Markenzeichen und andere Rechtsvorbehalte im abgerufenen Inhalt nicht entfernen.

Sebastian Raschka

Machine Learning und KI kompakt

Zentrale Konzepte verstehen und anwenden

Sebastian Raschka

Übersetzung: Frank Langenau

Lektorat: Sandra Bollenbacher, Alissa Melitzer

Copy-Editing: Petra Heubach-Erdmann, Düsseldorf

Satz: Gerhard Alfes, mediaService, Siegen, www.mediaservice.tv, Birgit Bäuerlein

Herstellung: Stefanie Weidner

Cover-Illustratorin: Gina Redman

Umschlaggestaltung: Eva Hepper, Silke Braun

Bibliografische Information der Deutschen Nationalbibliothek

Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.

ISBN:

Print978-3-98889-031-3

PDF978-3-98890-214-6

ePub978-3-98890-215-3

1. Auflage 2025

Translation Copyright für die deutschsprachige Ausgabe © 2025 dpunkt.verlag GmbH

Wieblinger Weg 17

69123 Heidelberg

E-Mail: [email protected]

Copyright © 2024 by Sebastian Raschka. Title of English-language original: Machine Learning Q and AI: 30 Essential Questions and Answers on Machine Learning and AI, ISBN 9781718503762, published by No Starch Press Inc. 245 8th Street, San Francisco, California United States 94103.

The German-language 1st edition Copyright © 2025 by dpunkt.verlag GmbH under license by No Starch Press Inc. All rights reserved.

Schreiben Sie uns:

Falls Sie Anregungen, Wünsche und Kommentare haben, lassen Sie es uns wissen: [email protected].

Die vorliegende Publikation ist urheberrechtlich geschützt. Alle Rechte vorbehalten. Die Verwendung der Texte und Abbildungen, auch auszugsweise, ist ohne die schriftliche Zustimmung des Verlags urheberrechtswidrig und daher strafbar. Dies gilt insbesondere für die Vervielfältigung, Übersetzung oder die Verwendung in elektronischen Systemen.

Weiter darf der Inhalt nicht zur Entwicklung, zum Training oder zur Anreicherung von KI-Systemen, insbesondere generativen KI-Systemen, verwendet werden. Die Nutzung für Text- und Data Mining ist untersagt.

Es wird darauf hingewiesen, dass die im Buch verwendeten Soft- und Hardware-Bezeichnungen sowie Markennamen und Produktbezeichnungen der jeweiligen Firmen im Allgemeinen warenzeichen-, marken- oder patentrechtlichem Schutz unterliegen.

Alle Angaben und Programme in diesem Buch wurden mit größter Sorgfalt kontrolliert. Weder Autor noch Verlag noch Übersetzer können jedoch für Schäden haftbar gemacht werden, die in Zusammenhang mit der Verwendung dieses Buches stehen.

Inhaltsverzeichnis

Vorwort

Danksagungen

Einleitung

Teil I Neuronale Netze und Deep Learning

1 Einbettungen, latenter Raum und Repräsentationen

1.1 Einbettungen

1.2 Latenter Raum

1.3 Repräsentation

1.4 Übungen

1.5 Referenzen

2 Selbstüberwachtes Lernen

2.1 Selbstüberwachtes Lernen vs. Transferlernen

2.2 Ungelabelte Daten nutzen

2.3 Selbstvorhersage und kontrastives selbstüberwachtes Lernen

2.4 Übungen

2.5 Referenzen

3 Few-Shot-Lernen

3.1 Datensätze und Terminologie

3.2 Übungen

4 Die Lotterie-Ticket-Hypothese

4.1 Das Lotterie-Ticket-Trainingsverfahren

4.2 Praktische Konsequenzen und Einschränkungen

4.3 Übungen

4.4 Referenzen

5 Überanpassung mit Daten verringern

5.1 Allgemeine Methoden

5.2 Übungen

5.3 Referenzen

6 Überanpassung durch Modellmodifikationen reduzieren

6.1 Allgemeine Methoden

6.2 Andere Methoden

6.3 Eine Regularisierungstechnik auswählen

6.4 Übungen

6.5 Referenzen

7 Multi-GPU-Trainingsparadigmen

7.1 Die Trainingsparadigmen

7.2 Empfehlungen

7.3 Übungen

7.4 Referenzen

8 Der Erfolg der Transformer

8.1 Der Aufmerksamkeitsmechanismus

8.2 Vortraining durch selbstüberwachtes Lernen

8.3 Große Anzahl von Parametern

8.4 Einfache Parallelisierung

8.5 Übungen

8.6 Referenzen

9 Generative KI-Modelle

9.1 Generative vs. diskriminative Modellierung

9.2 Arten von tiefen generativen Modellen

9.3 Empfehlungen

9.4 Übungen

9.5 Referenzen

10 Quellen der Zufälligkeit

10.1 Initialisierung der Modellgewichte

10.2 Sampling und Shuffling von Datensätzen

10.3 Nichtdeterministische Algorithmen

10.4 Verschiedene Laufzeitalgorithmen

10.5 Hardware und Treiber

10.6 Zufälligkeit und generative KI

10.7 Übungen

10.8 Referenzen

Teil II Computer Vision

11 Die Anzahl der Parameter berechnen

11.1 Wie man die Anzahl der Parameter ermittelt

11.2 Praktische Anwendungen

11.3 Übungen

12 Vollständig verbundene und konvolutionale Schichten

12.1 Szenario: Gleiche Größen von Kernel und Eingabe

12.2 Szenario: Kernel-Größe ist 1

12.3 Empfehlungen

12.4 Übungen

13 Große Trainingsmengen für Vision Transformer

13.1 Induktive Verzerrungen in CNNs

13.2 ViTs können CNNs übertreffen

13.3 Induktive Verzerrungen in ViTs

13.4 Empfehlungen

13.5 Übungen

13.6 Referenzen

Teil III Natural Language Processing

14 Die Verteilungshypothese

14.1 Word2vec, BERT und GPT

14.2 Trifft die Hypothese zu?

14.3 Übungen

14.4 Referenzen

15 Datenvermehrung für Text

15.1 Ersetzen von Synonymen

15.2 Löschen von Wörtern

15.3 Vertauschen von Wortpositionen

15.4 Sätze mischen

15.5 Rauschinjektion

15.6 Rückübersetzung

15.7 Synthetische Daten

15.8 Empfehlungen

15.9 Übungen

15.10 Referenzen

16 Selbstaufmerksamkeit

16.1 Aufmerksamkeit in RNNs

16.2 Der Selbstaufmerksamkeitsmechanismus

16.3 Übungen

16.4 Referenzen

17 Encoder- und Decoder-Transformer

17.1 Der ursprüngliche Transformer

17.2 Encoder-Decoder-Hybride

17.3 Terminologie

17.4 Aktuelle Transformer-Modelle

17.5 Übungen

17.6 Referenzen

18 Transformer verwenden und feinabstimmen

18.1 Transformer für Klassifizierungsaufgaben verwenden

18.2 Kontextbezogenes Lernen, Indizierung und Prompt-Feinabstimmung

18.3 Parametereffiziente Feinabstimmung

18.4 Reinforcement Learning mit menschlicher Rückmeldung

18.5 Vortrainierte Sprachmodelle anpassen

18.6 Übungen

18.7 Referenzen

19 Generative LLMs evaluieren

19.1 Bewertungsmetriken für LLMs

19.2 Übungen

19.3 Referenzen

Teil IV Produktion und Deployment

20 Zustandsloses und zustandsbehaftetes Training

20.1 Zustandsloses (Re-)Training

20.2 Zustandsbehaftetes Training

20.3 Übungen

21 Datenzentrierte KI

21.1 Datenzentrierte vs. modellzentrierte KI

21.2 Empfehlungen

21.3 Übungen

21.4 Referenzen

22 Inferenz beschleunigen

22.1 Parallelisierung

22.2 Vektorisierung

22.3 Schleifenkachelung

22.4 Operatorfusion

22.5 Quantisierung

22.6 Übungen

22.7 Referenzen

23 Datenverteilungsverschiebungen

23.1 Kovariatenverschiebung

23.2 Labelverschiebung

23.3 Konzeptverschiebung

23.4 Domänenverschiebung

23.5 Arten von Datenverteilungsverschiebungen

23.6 Übungen

23.7 Referenzen

Teil V Vorhersageperformance und Modellevaluierung

24 Poisson- und ordinale Regression

24.1 Übungen

25 Konfidenzintervalle

25.1 Konfidenzintervalle definieren

25.2 Die Methoden

25.3 Empfehlungen

25.4 Übungen

25.5 Referenzen

26 Konfidenzintervalle vs. konforme Vorhersagen

26.1 Konfidenzintervalle und Vorhersageintervalle

26.2 Vorhersageintervalle und konforme Vorhersagen

26.3 Vorhersagebereiche, -intervalle und -mengen

26.4 Konforme Vorhersagen berechnen

26.5 Beispiel für eine konforme Vorhersage

26.6 Die Vorteile der konformen Vorhersagen

26.7 Empfehlungen

26.8 Übungen

26.9 Referenzen

27 Geeignete Metriken

27.1 Die Kriterien

27.2 Der mittlere quadratische Fehler

27.3 Der Kreuzentropieverlust

27.4 Übungen

28 Das k in der k-fachen Kreuzvalidierung

28.1 Kompromisse bei der Auswahl von Werten für k

28.2 Geeignete Werte für k bestimmen

28.3 Übungen

28.4 Referenzen

29 Diskordanz zwischen Trainings- und Testdatensatz

29.1 Übungen

30 Begrenzte gelabelte Daten

30.1 Die Modellperformance mit begrenzten gelabelten Daten verbessern

30.2 Empfehlungen

30.3 Übungen

30.4 Referenzen

Nachwort

Lösungen zu den Übungen

Index

Vorwort

Es gibt Hunderte von Einführungsbüchern zum maschinellen Lernen, in einer Vielzahl von Stilen und Ansätzen, von theorieorientierten Perspektiven für Studenten bis hin zu geschäftsorientierten Sichtweisen für Vorstandsetagen. Diese Einführungsbücher sind unschätzbare Ressourcen für Personen, die ihre ersten Schritte in diesem Bereich machen, und sie werden dies auch in den kommenden Jahrzehnten bleiben.

Allerdings besteht der Weg zum Fachwissen nicht nur aus den Anfängen. Er führt auch über verschlungene Umwege, die steilen Anstiege und die Nuancen, die anfangs nicht offensichtlich sind. Anders ausgedrückt: Nachdem sie sich die Grundlagen angeeignet haben, stellt sich für die Lernenden die Frage: »Was kommt als Nächstes?« Genau hier, im Bereich jenseits der Grundlagen, liegt die Zweckbestimmung dieses Buches.

Sebastian führt die Leser durch ein breites Spektrum an mittleren und fortgeschritteneren Themen des angewandten maschinellen Lernens, auf die sie auf ihrem Weg zum Fachwissen wahrscheinlich stoßen werden. Man könnte sich kaum einen besseren Lehrer wünschen als Sebastian, der – ohne Übertreibung – der beste Dozent für maschinelles Lernen ist, der derzeit auf diesem Gebiet tätig ist. Auf jeder Seite vermittelt Sebastian nicht nur seine umfangreichen Fachkenntnisse, sondern teilt auch die Leidenschaft und Neugier, die wahre Kompetenz auszeichnen.

Dieses Buch richtet sich an alle Lernenden, die die erste Schwelle überschritten haben und nun tiefer einsteigen wollen. Wenn Sie dieses Buch durcharbeiten, werden Sie Ihre Fachkenntnisse um ein Vielfaches erweitern. Lassen Sie es eine Brücke zu Ihrer nächsten Phase von lohnenden Abenteuern im maschinellen Lernen sein.

Viel Glück!

Chris Albon

Director of Machine Learning, the Wikimedia Foundation

San Francisco, August 2023

Danksagungen

Ein Buch zu schreiben, ist ein enormes Unterfangen. Dieses Projekt wäre ohne die Hilfe der Open-Source- und Machine-Learning-Communities, die gemeinsam die Technologien entwickelt haben, um die es in diesem Buch geht, nicht möglich gewesen.

Ich möchte mich bei den folgenden Personen für ihr ungemein hilfreiches Feedback zum Manuskript bedanken:

Andrea Panizza, der ein hervorragender technischer Redakteur war und sehr wertvolles und aufschlussreiches Feedback geliefert hat

Anton Reshetnikov, der ein übersichtlicheres Layout für das Flussdiagramm zum überwachten Lernen in

Kapitel 30

vorgeschlagen hat

Nikan Doosti, Juan M. Bello-Rivas und Ken Hoffman, die auf verschiedene typografische Fehler hingewiesen haben

Abigail Schott-Rosenfield und Jill Franklin für ihre vorbildliche redaktionelle Arbeit. Ihr Geschick, die richtigen Fragen zu stellen und die Sprache zu verbessern, hat die Qualität dieses Buches erheblich gesteigert.

Einleitung

Dank der rasanten Fortschritte beim Deep Learning haben sich maschinelles Lernen und künstliche Intelligenz in den letzten Jahren erheblich ausgebreitet.

Diese Entwicklung ist spannend, wenn wir davon ausgehen, dass diese Fortschritte neue Branchen schaffen, bestehende Branchen verändern und die Lebensqualität von Menschen auf der ganzen Welt verbessern werden. Andererseits kann das ständige Auftauchen neuer Techniken dazu führen, dass es schwierig und zeitaufwendig ist, mit den neuesten Entwicklungen Schritt zu halten. Dennoch ist es für Fachleute und Organisationen, die diese Technologien nutzen, unerlässlich, auf dem Laufenden zu bleiben.

Ich habe dieses Buch als Ressource für Leser und Praktiker des maschinellen Lernens geschrieben, die ihr Fachwissen auf diesem Gebiet erweitern und mehr über die Techniken erfahren möchten, die ich für nützlich und wichtig erachte, die aber in traditionellen und einführenden Lehrbüchern und Kursen oft übersehen werden. Ich hoffe, dass dieses Buch für Sie eine wertvolle Ressource ist, um neue Einblicke zu gewinnen und neue Techniken zu entdecken, die Sie in Ihrer Arbeit umsetzen können.

An wen richtet sich dieses Buch?

Oft fühlt es sich wie eine Gratwanderung an, sich in der Welt der KI und des maschinellen Lernens zurechtzufinden, da die meisten Bücher an einem der beiden Enden angesiedelt sind: breite Einführungen für Anfänger oder tiefgründige mathematische Abhandlungen. Dieses Buch veranschaulicht und erörtert wichtige Entwicklungen in diesen Bereichen, ist dabei aber leicht verständlich und setzt keine höheren mathematischen oder programmiertechnischen Kenntnisse voraus.

Dieses Buch richtet sich an Personen, die bereits einige Erfahrung mit maschinellem Lernen haben und neue Konzepte und Techniken erlernen möchten. Es ist ideal für diejenigen, die einen Grundkurs in maschinellem Lernen oder Deep Learning absolviert oder ein entsprechendes Einführungsbuch zu diesem Thema gelesen haben. (Im gesamten Buch verwende ich maschinelles Lernen als Oberbegriff für maschinelles Lernen, Deep Learning und KI.)

Was werden Sie von diesem Buch haben?

Dieses Buch ist in einem einzigartigen Frage-und-Antwort-Stil geschrieben, bei dem jedes kurze Kapitel um eine zentrale Frage zu grundlegenden Konzepten des maschinellen Lernens, des Deep Learning und der KI aufgebaut ist. Auf jede Frage folgt eine Erklärung mit mehreren Illustrationen und Abbildungen sowie Übungen, um Ihr Verständnis zu testen. Viele Kapitel enthalten auch Verweise auf weiterführende Literatur. Diese mundgerechten Informationsbrocken bieten einen unterhaltsamen Einstieg auf Ihrem Weg vom Anfänger zum Experten für maschinelles Lernen.

Das Buch deckt ein breites Themenspektrum ab. Es enthält neue Erkenntnisse über etablierte Architekturen, wie zum Beispiel Convolutional Networks (Faltungsnetze), mit denen Sie diese Technologien effektiver nutzen können. Außerdem werden erweiterte Techniken erörtert, wie etwa das Innenleben von großen Sprachmodellen (Large Language Models, LLMs) und Vision Transformers. Selbst erfahrene Forscher und Praktiker im Bereich des maschinellen Lernens werden etwas Neues finden, das sie ihrem Arsenal an Techniken hinzufügen können.

Dieses Buch macht Sie zwar mit neuen Konzepten und Ideen bekannt, ist aber weder ein Mathematik- noch Programmierbuch. Beim Lesen müssen Sie keine Beweise herleiten oder Code ausführen. Mit anderen Worten: Dieses Buch ist ein perfekter Reisebegleiter oder etwas, das Sie auf Ihrem Lieblingslesesessel mit Ihrem Morgenkaffee oder Tee lesen können.

Wie man dieses Buch liest

Die einzelnen Kapitel dieses Buches sind in sich abgeschlossen, sodass Sie nach Belieben zwischen den Themen wechseln können. Wird ein Konzept aus einem Kapitel in einem anderen ausführlicher erklärt, habe ich Kapitelverweise eingefügt, denen Sie folgen können, um Lücken in Ihrem Verständnis zu schließen.

Allerdings sind die Kapitel in einer strategischen Reihenfolge angeordnet. Zum Beispiel bereitet das frühe Kapitel über Einbettungen die Grundlage für spätere Diskussionen über selbstüberwachtes Lernen und Few-Shot Learning. Um die Lektüre so einfach wie möglich zu gestalten und den Inhalt so umfassend wie möglich zu erfassen, empfehle ich, das Buch von Anfang bis Ende zu lesen.

Zu jedem Kapitel gibt es optionale Übungen für Leser, die ihr Verständnis testen wollen, mit einem Antwortschlüssel am Ende des Buches. Darüber hinaus finden Sie für alle Paper, auf die in einem Kapitel verwiesen wird, oder für weiterführende Literatur zum Thema des Kapitels die vollständigen Quellenangaben im Abschnitt »Referenzen« dieses Kapitels.

Das Buch ist in fünf Hauptteile gegliedert, die sich mit den wichtigsten Themen des maschinellen Lernens und der KI in der heutigen Zeit befassen.

Teil I: Neuronale Netze und Deep Learning behandelt Fragen zu tiefen neuronalen Netzen und Deep Learning, die nicht spezifisch für einen bestimmten Teilbereich sind. Zum Beispiel erörtern wir Alternativen zum überwachten Lernen und Techniken, die Überanpassung – ein häufiges Problem bei Modellen für maschinelles Lernen, die auf praktische Probleme mit begrenzter Datenmenge angewendet werden – vermeiden oder reduzieren sollen.

Kapitel 1

: Einbettungen, Latenter Raum und Repräsentationen

beschäftigt sich mit den Unterschieden und Ähnlichkeiten zwischen Einbettungsvektoren, latenten Vektoren und Repräsentationen. Es wird verdeutlicht, wie diese Konzepte dazu beitragen, Informationen im Kontext des maschinellen Lernens zu codieren.

Kapitel 2

: Selbstüberwachtes Lernen

konzentriert sich auf selbstüberwachtes Lernen, eine Methode, die es neuronalen Netzen ermöglicht, große, nicht gelabelte Datensätze in überwachter Art und Weise zu nutzen.

Kapitel 3

: Few-Shot Learning

stellt Few-Shot Learning vor, eine spezialisierte Technik des überwachten Lernens, die auf kleine Trainingsdatensätze zugeschnitten ist.

Kapitel 4

: Die Lotterie-Ticket-Hypothese

untersucht die Idee, dass zufällig initialisierte neuronale Netze kleinere, effiziente Teilnetze enthalten.

Kapitel 5

: Überanpassung mit Daten reduzieren

setzt sich mit dem Problem der Überanpassung im maschinellen Lernen auseinander und erörtert Strategien, bei denen Datenvermehrung und nicht gelabelte Daten im Mittelpunkt stehen, um Überanpassung zu verhindern.

Kapitel 6

: Überanpassung mit Modellmodifikationen verringern

erweitert die Betrachtungen zur Überanpassung und konzentriert sich dabei auf modellbezogene Lösungen wie Regularisierung, die Entscheidung für einfachere Modelle und Ensemble-Techniken.

Kapitel 7

: Multi-GPU-Trainingsparadigmen

erläutert verschiedene Trainingsparadigmen für Multi-GPU-Setups inklusive Daten- und Modellparallelität, um das Modelltraining zu beschleunigen.

Kapitel 8

: Der Erfolg der Transformer

untersucht die beliebte Transformer-Architektur, wobei es insbesondere um Features wie Attention-Mechanismen, einfache Parallelisierung und hohe Parameteranzahlen geht.

Kapitel 9

: Generative KI-Modelle

bietet einen umfassenden Überblick über tiefe generative Modelle, die dafür gedacht sind, verschiedene Medienformen zu erzeugen, darunter Bilder, Text und Audio. Erörtert werden die Stärken und Schwächen der einzelnen Modelltypen.

Kapitel 10

: Quellen des Zufalls

behandelt die verschiedenen Quellen des Zufalls beim Training von tiefen neuronalen Netzen, die zu inkonsistenten und nicht reproduzierbaren Ergebnissen sowohl beim Training als auch bei der Inferenz führen können. Während Zufälligkeiten unbeabsichtigt auftreten können, ist es auch möglich, sie vom Konzept her absichtlich einzubringen.

Teil II: Computer Vision konzentriert sich auf Themen, die hauptsächlich mit Deep Learning zu tun haben, aber spezifisch für Computer Vision sind. Viele davon betreffen CNNs und Vision Transformer.

Kapitel 11

: Die Anzahl der Parameter berechnen

erläutert das Verfahren, mit dem sich die Parameter in einem CNN bestimmen lassen. Dies ist nützlich, um den Speicherbedarf eines Modells abzuschätzen.

Kapitel 12

: Vollständig verbundene Schichten und Convulutional Layer

veranschaulicht die Umstände, unter denen Faltungsschichten nahtlos vollständig verbundene Schichten ersetzen können. Dies ist nützlich, um die Hardware zu optimieren oder Implementierungen zu vereinfachen.

Kapitel 13

: Große Trainingsdatensätze für Vision Transformer

untersucht die Gründe, warum Vision Transformer im Vergleich zu herkömmlichen CNNs umfangreichere Trainingsdatensätze benötigen.

Teil III: Verarbeitung natürlicher Sprache (Natural Language Processing, NLP) behandelt Themen rund um die Verarbeitung von Text, von denen viele mit Transfomer-Architekturen und Selbstaufmerksamkeit zu tun haben.

Kapitel 14

: Die Verteilungshypothese

befasst sich mit der Verteilungshypothese, einer linguistischen Theorie, die besagt, dass Wörter, die in den gleichen Kontexten vorkommen, tendenziell ähnliche Bedeutungen haben. Diese Eigenschaft ist nützlich für das Training von Modellen des maschinellen Lernens.

Kapitel 15

: Datenvermehrung für Text

beleuchtet die Bedeutung der Vermehrung von Text, einer Technik, mit der sich die Datensatzgröße künstlich erhöhen lässt. Dies kann hilfreich sein, um die Modellperformance zu verbessern.

Kapitel 16

: Selbstaufmerksamkeit

stellt mit Selbstaufmerksamkeit einen Mechanismus vor, der es jedem Segment der Eingabe in ein neuronales Netz erlaubt, auf andere Teile zu verweisen. Selbstaufmerksamkeit ist ein entscheidender Mechanismus in modernen Sprachmodellen.

Kapitel 17

: Encoder- und Decoder-Transformer

beschreibt die Nuancen von Encoder- und Decoder-Transformer-Architekturen und erläutert, welche Art von Architektur für die jeweilige Sprachverarbeitungsaufgabe am nützlichsten ist.

Kapitel 18

: Vortrainierte Transformer verwenden und feinabstimmen

erläutert verschiedene Methoden zur Feinabstimmung vortrainierter LLMs und erörtert ihre Stärken und Schwächen.

Kapitel 19

: Generative LLMs evaluieren

listet bekannte Evaluierungsmetriken für Sprachmodelle wie Perplexity, BLEU, ROUGE und BERTScore auf.

Teil IV: Produktion und Deployment behandelt Fragen zu praktischen Szenarios wie zum Beispiel die Steigerung der Inferenzgeschwindigkeiten und verschiedene Arten von Verteilungsverschiebungen.

Kapitel 20

: Zustandsloses und zustandsbehaftetes Training

unterscheidet zwischen zustandslosen und zustandsbehafteten Trainingsmethodiken, die beim Deploying von Modellen verwendet werden.

Kapitel 21

: Datenzentrierte KI

untersucht datenzentrische KI, bei der die Verfeinerung von Datensätzen zur Verbesserung der Modellperformance im Vordergrund steht. Dieser Ansatz steht im Gegensatz zum herkömmlichen modellzentrierten Ansatz, bei dem es in erster Linie um die Verbesserung von Modellarchitekturen oder -methoden geht.

Kapitel 22

: Die Inferenz beschleunigen

stellt Techniken vor, um die Geschwindigkeit der Modellinferenz zu erhöhen, ohne die Modellarchitektur anzupassen oder die Genauigkeit zu beeinträchtigen.

Kapitel 23

: Verschiebungen in der Datenverteilung

: Nach dem Deployment können KI-Modelle mit Diskrepanzen zwischen Trainingsdaten und realen Datenverteilungen konfrontiert werden, die als Verschiebungen in der Datenverteilung bekannt sind. Diese Verschiebungen können die Modellperformance verschlechtern. In diesem Kapitel werden gängige Verschiebungen wie Kovariantenverschiebung, Konzeptdrift, Labeldrift und Domänenverschiebung kategorisiert und näher beleuchtet.

Teil V: Vorhersageperformance und Modellevaluierung vertieft verschiedene Aspekte, um die Vorhersageleistung zu optimieren, indem man zum Beispiel die Verlustfunktion ändert, k-fache Kreuzvalidierung einrichtet und mit begrenzt gelabelten Daten arbeitet.

Kapitel 24

: Poisson- und ordinale Regression

verdeutlicht die Unterschiede zwischen Poisson- und ordinaler Regression. Poisson-Regression kommt für abzählbare Daten infrage, die einer Poisson-Verteilung folgen, beispielsweise die Anzahl der Erkältungen, die sich Personen in einem Flugzeug zugezogen haben. Im Gegensatz dazu eignet sich die ordinale Regression für geordnete kategoriale Daten, bei denen keine äquidistanten Kategorien angenommen werden, wie zum Beispiel beim Schweregrad von Krankheiten.

Kapitel 25

: Konfidenzintervalle

beschreibt Methoden, mit denen sich Konfidenzintervalle für Klassifikatoren des maschinellen Lernens erstellen lassen. Es wird erläutert, welchen Zweck Konfidenzintervalle haben und wie sie Parameter unbekannter Populationen schätzen. Außerdem lernen Sie Techniken wie Intervalle der Normal-Approximation, Bootstrapping und Retraining mit verschiedenen zufälligen Startwerten kennen.

Kapitel 26

: Konfidenzintervalle vs. konforme Vorhersagen

erörtert die Unterscheidung zwischen Konfidenzintervallen und konformen Vorhersagen und beschreibt Letztere als Tool, um Vorhersageintervalle zu erstellen, die tatsächliche Ergebnisse mit einer bestimmten Wahrscheinlichkeit abdecken.

Kapitel 27

: Geeignete Metriken

konzentriert sich auf die wesentlichen Eigenschaften einer geeigneten Metrik in Mathematik und Informatik. Es wird untersucht, ob die beim maschinellen Lernen häufig verwendeten Verlustfunktionen, wie der mittlere quadratische Fehler und der Kreuzentropieverlust, diese Eigenschaften erfüllen.

Kapitel 28

: Das

k

in

k

-facher Kreuzvalidierung

untersucht die Rolle des

k

in der

k

-fachen Kreuzvalidierung sowie die Vor- und Nachteile bei der Wahl eines großen

k

.

Kapitel 29

: Diskordanz zwischen Trainings- und Testdatensatz

befasst sich mit dem Szenario, in dem ein Modell mit dem Testdatensatz besser performt als mit dem Trainingsdatensatz. Bietet Strategien an, um Diskrepanzen zwischen Trainings- und Testdatensätzen zu entdecken und zu behandeln. Dabei lernen Sie das Konzept der adversarialen Validierung kennen.

Kapitel 30

: Begrenzte gelabelte Daten

stellt verschiedene Techniken vor, um die Modellleistung in Situationen zu verbessern, in denen die Daten begrenzt sind. Behandelt werden Datenbeschriftung, Bootstrapping und Paradigmen wie Transferlernen, aktives Lernen und multimodales Lernen.

Online-Ressourcen

Auf GitHub habe ich optionales Ergänzungsmaterial mit Codebeispielen für bestimmte Kapitel bereitgestellt, damit Sie Ihre Lernerfahrung verbessern können (siehe https://github.com/rasbt/MachineLearning-QandAI-book). Diese Materialien sind als praktische Erweiterungen und zur Vertiefung der im Buch behandelten Themen gedacht. Sie können sie parallel zu den einzelnen Kapiteln verwenden oder erst nach dem Lesen des Buches erkunden, um Ihr Wissen zu festigen und zu erweitern.

Nun genug der Vorrede, gehen wir in medias res!

I Neuronale Netze und Deep Learning

1 Einbettungen, latenter Raum und Repräsentationen

Beim Deep Learning sind Begriffe wie Einbettungsvektoren, Repräsentationen und latenter Raum gebräuchlich. Was haben diese Konzepte gemeinsam und wie unterscheiden sie sich?

Auch wenn diese drei Begriffe oft synonym verwendet werden, können wir zwischen ihnen feine Unterscheidungen treffen:

Einbettungsvektoren sind Repräsentationen von Eingabedaten, bei denen ähnliche Elemente nahe beieinanderliegen.

Latente Vektoren sind Zwischenrepräsentationen von Eingabedaten.

Repräsentationen sind codierte Versionen der ursprünglichen Eingabedaten.

Die folgenden Abschnitte untersuchen die Beziehung zwischen Einbettungen, latenten Vektoren und Repräsentationen. Außerdem erfahren Sie, wie sie jeweils im Kontext des maschinellen Lernens Informationen codieren.

1.1 Einbettungen

Einbettungsvektoren – kurz Einbettungen – codieren relativ hochdimensionale Daten in relativ niedrigdimensionale Vektoren.

Mithilfe von Einbettungsmethoden können wir einen kontinuierlichen dichten (nicht-dünnbesetzten) Vektor aus einer (dünnbesetzten) 1-aus-n-Codierung (englisch One-hot encoding) erzeugen. Die 1-aus-n-Codierung ist eine Methode, um kategoriale Daten als binäre Vektoren darzustellen, wobei jede Kategorie auf einen Vektor abgebildet wird, der an der Position, die dem Index der Kategorie entspricht, eine 1, und an allen anderen Positionen eine 0 enthält. Damit ist sichergestellt, dass die kategorialen Werte so dargestellt werden, dass bestimmte Algorithmen für maschinelles Lernen sie verarbeiten können. Wenn wir zum Beispiel eine kategoriale Variable Farbe mit den drei Kategorien Rot, Grün und Blau haben, stellt die 1-aus-n-Codierung Rot als [1, 0, 0], Grün als [0, 1, 0] und Blau als [0, 0, 1] dar. Diese 1-aus-n-codierten kategorialen Variablen lassen sich dann in kontinuierliche Einbettungsvektoren abbilden, indem die gelernte Gewichtsmatrix einer Einbettungsschicht oder eines Moduls verwendet wird.

Einbettungsmethoden eignen sich auch für dichte Daten wie Bilder. Zum Beispiel können die letzten Schichten eines Convolutional Neural Networks (CNN) Einbettungsvektoren liefern, wie Abbildung 1–1 veranschaulicht.

Abb. 1–1

Eine Eingabeeinbettung (links) und eine Einbettung von einem neuronalen Netz (rechts)

Um technisch korrekt zu sein, könnten alle Ausgaben der Zwischenschicht eines neuronalen Netzes Einbettungsvektoren liefern. Je nach Trainingsziel kann auch die Ausgabeschicht nützliche Einbettungsvektoren erzeugen. Der Einfachheit halber assoziiert das Convolutional Neural Network in Abbildung 1–1 die vorletzte Schicht mit Einbettungen.

Es ist möglich, dass Einbettungen eine höhere oder niedrigere Anzahl von Dimensionen haben als die ursprüngliche Eingabe. Mithilfe von Einbettungsmethoden für extreme Ausdrücke lassen sich beispielsweise Daten in zweidimensionale dichte und kontinuierliche Darstellungen für Visualisierungszwecke und Clustering-Analysen codieren, wie Abbildung 1–2 zeigt.

Abb. 1–2

Abbildung von Wörtern (links) und Bildern (rechts) auf einen zweidimensionalen Merkmalsraum

Zu den grundlegenden Eigenschaften von Einbettungen gehört, dass sie Abstand oder Ähnlichkeit codieren. Das bedeutet, dass Einbettungen die Semantik der Daten so erfassen, dass ähnliche Eingaben im Einbettungsraum nahe beieinanderliegen.

Für Leser, die an einer formaleren Erklärung mittels mathematischer Terminologie interessiert sind, sei erwähnt, dass eine Einbettung eine injektive und strukturerhaltende Abbildung zwischen einem Eingaberaum X und dem Einbettungsraum Y ist. Dies impliziert, dass ähnliche Eingaben an nahe beieinanderliegenden Punkten innerhalb des Einbettungsraums liegen, was man als »strukturerhaltende« Eigenschaft der Einbettung ansehen kann.

1.2 Latenter Raum

Latenter Raum wird in der Regel synonym mit Einbettungsraum verwendet, das heißt dem Raum, in den Einbettungsvektoren abgebildet werden.

Ähnliche Elemente können im latenten Raum nahe beieinanderliegen, was jedoch keine strikte Voraussetzung ist. Im weiteren Sinne kann man sich den latenten Raum als jeden Merkmalsraum vorstellen, der Features – oftmals komprimierte Versionen der ursprünglichen Eingabefeatures – enthält. Diese latenten Raumfeatures können von einem neuronalen Netzwerk erlernt werden, beispielsweise einem Autoencoder, der Eingabebilder rekonstruiert, wie Abbildung 1–1 zeigt. Diese latenten Eingabefeatures können von einem neuronalen Netz gelernt werden, beispielsweise von einem Autoencoder, der Eingabebilder rekonstruiert, wie Abbildung 1–3 zeigt.

Abb. 1–3

Ein Autoencoder, der das Eingabebild rekonstruiert

Der Flaschenhals in Abbildung 1–3 repräsentiert eine kleine Zwischenschicht des neuronalen Netzes, die das Eingabebild in eine Repräsentation geringerer Dimensionen codiert. Den Zielraum dieser Abbildung kann man sich als latenten Raum vorstellen. Das Trainingsziel des Autoencoders besteht darin, das Eingabebild zu rekonstruieren, das heißt, den Abstand zwischen den Eingabe- und Ausgabebildern zu minimieren. Um das Trainingsziel zu optimieren, kann der Autoencoder lernen, die codierten Features von ähnlichen Eingaben (zum Beispiel Bilder von Katzen) im latenten Raum nahe nebeneinander zu platzieren, dabei nützliche Einbettungen von Vektoren zu erstellen, wobei ähnliche Eingaben im Einbettungs-(latenten) Raum nahe beieinanderliegen.

1.3 Repräsentation

Eine Repräsentation ist eine codierte Form und typischerweise eine Zwischenform einer Eingabe. Zum Beispiel ist ein Einbettungsvektor bzw. Vektor im latenten Raum eine Darstellung der Eingabe, wie oben erläutert. Allerdings können Darstellungen auch mit einfacheren Prozeduren erzeugt werden. Zum Beispiel lassen sich 1-aus-n-codierte Vektoren als Repräsentationen einer Eingabe betrachten, wie bereits oben erwähnt. Allerdings lassen sich Repräsentationen auch durch einfachere Verfahren erzeugen. So werden zum Beispiel 1-aus-n-codierte Vektoren als Repräsentationen einer Eingabe betrachtet.

Der Grundgedanke besteht darin, dass die Repräsentation einige wesentliche Features oder Eigenschaften der ursprünglichen Daten erfasst, um sie weiter analysieren zu können.

1.4 Übungen

Abb. 1–4

Eine Veranschaulichung von AlexNet

Angenommen, wir trainieren ein Netz mit fünf konvolutionalen Schichten, gefolgt von drei vollständig verbundenen Schichten, ähnlich dem AlexNet (

https://en.wikipedia.org/wiki/AlexNet

), wie in

Abbildung 1–4

veranschaulicht.

Diese vollständig verbundenen Schichten kann man sich als zwei verdeckte Schichten und eine Ausgabeschicht in einem mehrschichtigen Perzeptron vorstellen. Welche Schichten dieses neuronalen Netzes lassen sich nutzen, um nützliche Einbettungen zu erzeugen? Interessierte Leser finden weitere Details zur Architektur und Implementierung von AlexNet in der Originalveröffentlichung von Alex Krizhevsky, Ilya Sutskever und Geoffrey Hinton.

Nennen Sie einige Typen von Eingaberepräsentationen, die keine Einbettungen sind.

1.5 Referenzen

Die Architektur und Implementierung von AlexNet wird ursprünglich in folgendem Paper beschrieben: Alex Krizhevsky, Ilya Sutskever und Geoffrey Hinton, »ImageNet Classification with Deep Convolutional Neural Networks« (2012),

https://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks

.

2 Selbstüberwachtes Lernen

Was ist selbstüberwachtes Lernen, wann ist es nützlich und wie sehen die Hauptansätze aus, um es zu implementieren?

Selbstüberwachtes Lernen ist eine Vortrainingsprozedur, die es neuronalen Netzen ermöglicht, große, ungelabelte Datensätze in überwachter Art und Weise zu nutzen. Dieses Kapitel vergleicht selbstüberwachtes Lernen mit Transferlernen, einer verwandten Methode zum Vortrainieren von neuronalen Netzen, und erörtert die praktischen Anwendungen von selbstüberwachtem Lernen. Schließlich skizziert es die wichtigsten Kategorien von selbstüberwachtem Lernen.

2.1 Selbstüberwachtes Lernen vs. Transferlernen

Selbstüberwachtes Lernen ist mit dem Transferlernen verwandt, einer Technik, bei der ein Modell, das für eine bestimmte Aufgabe vortrainiert worden ist, als Ausgangspunkt für ein Modell für eine zweite Aufgabe wiederverwendet wird. Nehmen wir zum Beispiel an, dass wir einen Bildklassifikator trainieren wollen, um Vogelarten zu klassifizieren. Beim Transferlernen würden wir ein CNN (Convolutional Neural Network) auf dem ImageNet-Datensatz trainieren, einem großen, gelabelten Bilddatensatz mit vielen verschiedenen Kategorien, einschließlich verschiedener Objekte und Tiere. Nach dem Vortraining mit dem allgemeinen ImageNet-Datensatz wird das trainierte Modell mit dem kleineren, spezifischeren Zieldatensatz trainiert, der die interessierenden Vogelarten enthält. (Oftmals müssen wir nur die klassenspezifische Ausgabeschicht ändern, können ansonsten aber das vortrainierte Netz unverändert übernehmen.)

Abbildung 2–1 veranschaulicht den Ablauf beim Transferlernen.

Abb. 2–1

Vortraining mit konventionellem Transferlernen

Selbstüberwachtes Lernen ist ein alternativer Ansatz zum Transferlernen, bei dem das Modell nicht mit gelabelten Daten, sondern mit ungelabelten Daten vortrainiert wird. Wir betrachten einen ungelabelten Datensatz, für den wir keine Label-Informationen haben, und suchen dann nach einer Möglichkeit, Labels aus der Struktur des Datensatzes zu erhalten, um eine Vorhersageaufgabe für das neuronale Netz zu formulieren, wie Abbildung 2–2 zeigt. Diese Aufgaben für das selbstüberwachte Training nennt man auch Voraufgaben.

Abb. 2–2

Vortraining mit selbstüberwachtem Lernen

Der Hauptunterschied zwischen Transferlernen und selbstüberwachtem Lernen liegt in der Art und Weise, wie wir die Labels in Schritt 1 der Darstellungen von Abbildung 2–1 und Abbildung 2–2 erhalten. Beim Transferlernen gehen wir davon aus, dass die Labels zusammen mit dem Datensatz bereitgestellt werden. In der Regel werden die Labels manuell von Label-Experten den Daten zugeordnet. Beim selbstüberwachten Lernen lassen sich die Labels direkt aus den Trainingsbeispielen ableiten.

Eine Aufgabe des selbstüberwachten Lernens könnte eine Vorhersage fehlender Wörter im Kontext der Verarbeitung natürlicher Sprache sein. Zum Beispiel können wir bei dem Satz »Draußen ist es schön und sonnig« das Wort »sonnig« ausmaskieren, dem Netz die Eingabe »Draußen ist es schön und [MASKE]« einspeisen und das Netz das fehlende Wort an der Position »[MASKE]« vorhersagen lassen. In ähnlicher Weise könnten wir in einem Computer-Vision-Kontext Bildausschnitte entfernen und das neuronale Netz die Lücken füllen lassen. Dies sind lediglich zwei Beispiele für Aufgaben des selbstüberwachten Lernens; es gibt viele weitere Methoden und Paradigmen für diese Art des Lernens.

Zusammenfassend lässt sich sagen, dass man selbstüberwachtes Lernen bei der Voraufgabe als Repräsentationslernen betrachten kann. Wir können das vorab trainierte Modell verwenden, um es für die Zielaufgabe (auch bekannt als die Downstream-Aufgabe) zu optimieren.

2.2 Ungelabelte Daten nutzen

Große Architekturen neuronaler Netze benötigen große Mengen an gelabelten Daten, um eine gute Leistung und Generalisierung zu erzielen. Für viele Problembereiche haben wir jedoch keinen Zugang zu großen, gelabelten Datensätzen. Beim selbstüberwachten Lernen können wir ungelabelte Daten nutzen. Daher ist selbstüberwachtes Lernen beim Arbeiten mit großen neuronalen Netzen und mit einer begrenzten Menge von gelabelten Trainingsdaten höchstwahrscheinlich nützlich.

Transformer-basierte Architekturen, die die Grundlage der LLMs und Vision Transformer bilden, erfordern bekanntermaßen selbstüberwachtes Lernen für das Vortraining, um gute Leistungen zu erzielen.

Für kleine Modelle von neuronalen Netzen wie zum Beispiel mehrschichtige Perzeptrons mit zwei oder drei Schichten wird selbstüberwachtes Lernen in der Regel weder als nützlich noch als notwendig erachtet.

Selbstüberwachtes Lernen ist auch beim herkömmlichen maschinellen Lernen mit nichtparametrischen Modellen wie baumbasierten Random Forests oder Gradient Boosting nicht sinnvoll. Konventionelle baumbasierte Methoden besitzen keine feste Parameterstruktur (im Gegensatz zum Beispiel zu den Gewichtsmatrizen). Daher sind konventionelle baumbasierte Methoden nicht zum Transferlernen fähig und mit selbstüberwachtem Lernen nicht kompatibel.

2.3 Selbstvorhersage und kontrastives selbstüberwachtes Lernen

Es gibt zwei Hauptkategorien des selbstüberwachten Lernens: Selbstvorhersage und kontrastives selbstüberwachtes Lernen. Bei der Selbstvorhersage, die in Abbildung 2–3 dargestellt ist, ändern oder verbergen wir normalerweise Teile der Eingabe und trainieren das Modell, um die ursprünglichen Eingaben zu rekonstruieren. Hierfür verwendet man zum Beispiel eine Störungsmaske, die bestimmte Pixel in einem Bild verschleiert.

Abb. 2–3

Selbstvorhersage nach dem Anwenden einer Störungsmaske

Ein klassisches Beispiel ist ein entrauschender Autoencoder, der lernt, Rauschen aus einem Eingabebild zu entfernen. Als Alternative betrachten wir einen maskierten Autoencoder, der die fehlenden Teile eines Bildes rekonstruiert, wie Abbildung 2–4 zeigt.

Abb. 2–4

Ein maskierter Autoencoder, der ein maskiertes Bild rekonstruiert

Methoden zur Selbstvorhersage bei fehlender (maskierter) Eingabe werden häufig auch im Zusammenhang mit der Verarbeitung natürlicher Sprache eingesetzt. Viele generative LLMs, wie zum Beispiel GPT, werden auf eine Vorhersageaufgabe für das nächste Wort trainiert (Kapitel 14 und 17 gehen ausführlicher auf GPT ein). Hier speisen wir das Netz mit Textfragmenten, aus denen es das nächste Wort in der Sequenz vorhersagen muss (wie ich in Kapitel 17 näher erläutern werde).

Beim kontrastiven selbstüberwachten Lernen trainieren wir das neuronale Netz, sodass es einen Einbettungsraum lernt, in dem ähnliche Eingaben nahe beieinander und unähnliche Eingaben weit auseinanderliegen. Mit anderen Worten: Wir trainieren das Netz, um Einbettungen zu erzeugen, die den Abstand zwischen ähnlichen Trainingseingaben minimieren und den Abstand zwischen unähnlichen Trainingsbeispielen maximieren.

Kontrastives Lernen möchte ich nun anhand konkreter Beispiele erörtern. Angenommen, wir haben einen Datensatz, der aus zufälligen Tierbildern besteht. Zunächst zeichnen wir ein zufälliges Bild einer Katze (das Netz kennt das Label nicht, weil wir davon ausgehen, dass der Datensatz ungelabelt ist). Dann wird dieses Katzenbild erweitert, beschädigt oder gestört, indem eine zufällige Rauschschicht hinzugefügt und unterschiedlich beschnitten wird, wie Abbildung 2–5 zeigt.

Abb. 2–5

Bildpaare, wie sie beim kontrastiven Lernen auftreten

Das gestörte Katzenbild in dieser Abbildung zeigt immer noch dieselbe Katze, also soll das Netz einen ähnlichen Einbettungsvektor erzeugen. Außerdem betrachten wir ein zufälliges Bild aus der Trainingsmenge (zum Beispiel einen Elefanten, aber auch hier kennt das Netz das Label nicht).

Für das Katzen-Elefanten-Paar soll das Netz unähnliche Einbettungen erzeugen. Auf diese Weise zwingen wir das Netz implizit dazu, den Kerninhalt des Bildes zu erfassen und gleichzeitig gegenüber kleinen Unterschieden und Rauschen einigermaßen agnostisch zu sein. Zum Beispiel ist die einfachste Form eines kontrastiven Verlustes die L2-Norm (euklidischer Abstand) zwischen den Einbettungen, die das Modell M(∙) erzeugt. Beispielsweise können wir die Modellgewichte aktualisieren, um den Abstand ||M(cat) – M(cat?)||2 zu verringern und den Abstand ||M(cat) – M(elephant)||2 zu vergrößern.

Abbildung 2–6 fasst das zentrale Konzept des kontrastiven Lernens für das Szenario mit dem gestörten Bild zusammen. Das Modell ist zweimal abgebildet, was als siamesischer Netzaufbau bekannt ist. Im Wesentlichen wird dasselbe Modell in zwei Instanzen verwendet: erstens, um die Einbettung für das ursprüngliche Trainingsbeispiel zu generieren, und zweitens, um die Einbettung für die gestörte Version des Beispiels zu erzeugen.

Abb. 2–6

Kontrastives Lernen