
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Create machine learning models
/ 50
Use the model
/ 50
In diesem Lab lernen Sie die „Hello World“-Grundlagen des Machine Learnings kennen. Anstatt explizite Regeln in einer Sprache wie Java oder C++ zu programmieren, erstellen Sie ein System, das anhand von Daten dafür trainiert wird, die Regeln abzuleiten, die für eine Beziehung zwischen Zahlen gelten.
Aufgaben in diesem Lab:
Lesen Sie diese Anleitung. Labs sind zeitlich begrenzt und können nicht pausiert werden. Der Timer beginnt zu laufen, wenn Sie auf Lab starten klicken, und zeigt Ihnen, wie lange Google Cloud-Ressourcen für das Lab verfügbar sind.
In diesem praxisorientierten Lab können Sie die Lab-Aktivitäten in einer echten Cloud-Umgebung durchführen – nicht in einer Simulations- oder Demo-Umgebung. Dazu erhalten Sie neue, temporäre Anmeldedaten, mit denen Sie für die Dauer des Labs auf Google Cloud zugreifen können.
Für dieses Lab benötigen Sie Folgendes:
Nehmen wir an, Sie entwickeln ein System zum Erkennen sportlicher Aktivitäten für Fitness-Tracker. Sie haben Zugriff auf die Geschwindigkeit, mit der sich eine Person bewegt, und versuchen, daraus mithilfe einer Bedingung die Aktivität abzuleiten:
Es ist sehr schwierig, mit Code ein Programm zu schreiben, mit dem sich Golf als Aktivität erkennen lässt.
Was könnten Sie tun? Sie könnten das Problem mithilfe von Machine Learning lösen.
Im vorherigen Abschnitt sind Sie auf eine Herausforderung gestoßen, als Sie herausfinden wollten, welche sportlichen Aktivitäten ein Nutzer betreibt. Die Möglichkeiten von Code sind begrenzt, da Bedingungen äußerst komplex sein müssen, um eine Aktivität wie Golf zu erkennen.
Das folgende Diagramm zeigt die Entwicklung von Anwendungen auf herkömmliche Art und Weise:
Regeln werden in einer Programmiersprache ausgedrückt. Diese arbeiten mit Daten und Ihr Programm liefert Antworten. Bei der Aktivitätserkennung arbeiten die Regeln (der Code, den Sie zur Definition der Aktivitätsarten geschrieben haben) mit den Daten (die Geschwindigkeit, mit der sich die Person bewegt), um eine Antwort zu finden: den Rückgabewert der Funktion zum Ermitteln des Aktivitätsstatus des Nutzers (ob dieser spazieren geht, läuft, mit dem Rad fährt usw.).
Das Erkennen einer Aktivität mithilfe von Machine Learning läuft sehr ähnlich ab. Nur die Ein- und Ausgaben sind anders:
Anstatt Regeln zu definieren und in einer Programmiersprache zu formulieren, geben Sie die Antworten (meist als Labels bezeichnet) sowie die Daten ein. Die Maschine leitet daraus die Regeln ab, die die Beziehung zwischen den Antworten und den Daten definieren. In einem ML-Kontext könnte das Aktivitätserkennungsszenario beispielsweise so aussehen:
Sie erfassen eine große Menge an Daten und versehen diese mit Labels, die besagen: „So sieht Gehen aus“ oder „So sieht Laufen aus“. Aus diesen Daten kann der Computer die Regeln ableiten, die festlegen, nach welchem Muster eine bestimmte Aktivität abläuft.
Diese Variante ist aber nicht nur eine Alternative zum Programmieren. Hier eröffnen sich auch neue Szenarien, zum Beispiel das Erkennen der Aktivität Golf, was mit dem herkömmlichen, auf Regeln basierenden Programmieransatz nicht möglich war.
Beim herkömmlichen Programmieren wird der Code zu einem Binärprogramm kompiliert, das üblicherweise als Programm bezeichnet wird. Beim Machine Learning erstellen Sie aus den Daten und Labels ein sogenanntes Modell.
Kehren wir noch einmal zu diesem Diagramm zurück:
Das Ergebnis ist ein Modell, das zur Laufzeit so verwendet wird:
Sie übergeben Daten an das Modell und dieses gibt anhand der Regeln, die es während des Trainings abgeleitet hat, eine Vorhersage aus, zum Beispiel „Diese Daten deuten auf Gehen hin“ oder „Diese Daten deuten auf Radfahren hin“.
In diesem Lab erstellen Sie ein sehr einfaches „Hello World“-Modell aus Bausteinen, die in jedem Machine-Learning-Szenario zum Einsatz kommen können.
Klicken Sie in der Google Cloud Console im Navigationsmenü () auf Vertex AI > Workbench.
Suchen Sie die Instanz
Die JupyterLab-Oberfläche für Ihre Workbench-Instanz wird in einem neuen Browsertab geöffnet.
Wählen Sie im Launcher-Menü unter Sonstiges die Option Terminal aus.
Prüfen Sie, ob die Python-Umgebung schon konfiguriert ist. Kopieren Sie den folgenden Befehl und fügen Sie ihn in das Terminal ein:
Beispielausgabe:
pip3
durchzuführen:Pylint ist ein Tool, mit dem sich Fehler in Python-Code finden lassen. Es kennzeichnet syntaktische und stilistische Probleme in Python-Quellcode.
pylint
-Paket zu installieren:requirements.txt
:Damit haben Sie die Umgebung eingerichtet.
Sehen Sie sich die folgenden Zahlengruppen an. Erkennen Sie eine Beziehung zwischen ihnen?
X: |
-1 |
0 |
1 |
2 |
3 |
4 |
Y: |
-2 |
1 |
4 |
7 |
10 |
13 |
Wenn Sie die Zahlenfolge von links nach rechts lesen, stellen Sie fest, dass sich der X-Wert immer um 1 erhöht und der zugehörige Y-Wert um 3. Die Beziehung sollte also Y = 3X plus oder minus ein Wert sein.
Wenn Sie sich die Zahl 0 bei X ansehen, stellen Sie fest, dass der zugehörige Y-Wert 1 ist.
Aus diesen beiden Beobachtungen lässt sich ableiten, dass die Beziehung Y = 3X + 1 lautet.
Auf sehr ähnliche Weise würden Sie anhand von Code ein Modell, ein sogenanntes neuronales Netzwerk, trainieren, um Muster in Daten zu erkennen.
Sie nutzen Daten, um das neuronale Netzwerk zu trainieren. Wenn Sie ihm eine Reihe von X- und Y-Werten zur Verfügung stellen, ist es in der Regel in der Lage, die Beziehung zwischen diesen zu erkennen.
Klicken Sie links in der Workbench auf das +-Zeichen, um einen neuen Launcher zu öffnen.
Wählen Sie im Launcher-Menü unter Notebook die Option Python3 aus.
Ihnen wird ein neues Jupyter-Notebook angezeigt. Weitere Informationen zum Verwenden von Jupyter-Notebooks finden Sie in der Jupyter Notebook-Dokumentation.
logging
und google-cloud-logging
für Cloud Logging. Fügen Sie in der ersten Zelle den folgenden Code hinzu:tensorflow
zum Trainieren und Evaluieren des Modells. Legen Sie als einfach zu merkende Bezeichnung tf
fest. Fügen Sie in der ersten Zelle den folgenden Code hinzu:numpy
, um die Daten zur Fehlerbehebung zu parsen. Legen Sie als einfach zu merkende Bezeichnung np
fest. Fügen Sie in der ersten Zelle den folgenden Code hinzu:Klicken Sie auf Ausführen oder drücken Sie Umschalttaste + Eingabetaste, um die Zelle auszuführen.
Speichern Sie das Notebook. Klicken Sie dazu auf Datei > Speichern. Geben Sie der Datei den Namen model.ipynb
und klicken Sie auf Ok.
Als Nächstes bereiten Sie die Daten vor, mit denen das Modell trainiert wird. In diesem Lab verwenden Sie die bereits bekannten sechs X- und Y-Werte:
X: |
-1 |
0 |
1 |
2 |
3 |
4 |
Y: |
-2 |
1 |
4 |
7 |
10 |
13 |
Wie Sie sehen, ist die Beziehung zwischen den X- und Y-Werten Y = 3X + 1. Wenn X = 1, ist Y = 4 usw.
Die Python-Bibliothek numpy
enthält zahlreiche Datenstrukturen vom Array-Typ, die eine Standardmöglichkeit zur Übergabe von Daten sind. Geben Sie die Werte in numpy
mit np.array([])
als Array an, um diese zu verwenden.
In diesem Abschnitt entwerfen Sie das Modell mit TensorFlow.
Dazu verwenden Sie einen Machine-Learning-Algorithmus, der als neuronales Netzwerk bezeichnet wird, um das Modell zu trainieren. Sie erstellen ein ganz einfaches neuronales Netzwerk. Es hat eine Ebene und diese hat ein Neuron. Als Eingabe empfängt das neuronale Netzwerk immer nur einen Wert. Daher muss die Eingabe die Form [1] haben.
Als Nächstes schreiben Sie den Code zum Kompilieren des neuronalen Netzwerks. Dabei müssen Sie zwei Funktionen angeben: loss
und optimizer
.
Wenn Sie sich mit der für Machine Learning notwendigen Mathematik gut auskennen, können Sie diese hier zum Einsatz bringen, aber tf.keras
kapselt sie praktischerweise für Sie in Funktionen.
Sie wissen bereits, dass die Beziehung zwischen den Zahlen y=3x+1
lautet.
Wenn der Computer versucht, diese Beziehung zu lernen, stellt er eine Vermutung an, zum Beispiel y=10x+10
. Mithilfe der loss
-Funktion werden die vermuteten Antworten mit den bekannten richtigen Antworten abgeglichen und es wird gemessen, wie gut oder schlecht die Vermutung war.
tf.keras
finden Sie in der Dokumentation unter Module: tf.keras.losses.y=5x+5
lauten. Damit liegt das Modell immer noch ziemlich daneben, aber näher am korrekten Ergebnis, der Verlust ist also geringer.tf.keras
finden Sie in der Dokumentation unter Module: tf.keras.optimizers.Mit diesem Code-Snippet weisen Sie das Modell an, mean_squared_error
für die loss-Funktion und stochastic gradient descent (sgd)
für die optimizer-Funktion zu verwenden. Auch wenn Sie die dahinter steckende Mathematik noch nicht verstehen, werden Sie feststellen, dass es funktioniert.
Sie verwenden model.fit
, um das neuronale Netzwerk dafür zu trainieren, die Beziehung zwischen den X- und Y-Werten zu „lernen“.
Mit dieser Funktion wird das Modell in einer Schleife trainiert: Es stellt eine Vermutung auf, dann wird gemessen, wie gut oder schlecht diese ist (also der Verlust), mithilfe der optimizer-Funktion wird eine weitere Vermutung aufgestellt usw. Dieser Vorgang wird in der von Ihnen vorgegebenen Anzahl von Epochen (in diesem Lab 500) wiederholt.
Durch den obigen Code wird das Modell mit model.fit
eine festgelegte Anzahl von Epochen lang trainiert.
model.fit
finden Sie in der Dokumentation zu tf.keras.Model im Abschnitt „fit“.Jetzt sollte die Datei so aussehen (der Code befindet sich in zwei getrennten Zellen):
Das Script ist jetzt bereit. Führen Sie es aus, um zu sehen, was passiert.
Klicken Sie auf Ausführen oder drücken Sie Umschalttaste + Eingabetaste, um die zweite Zelle im Notebook auszuführen.
Sehen Sie sich die Ausgabe an. Das Script gibt den Verlust für jede Epoche aus. Ihre Ausgabe kann von der hier dargestellten abweichen.
e-
enthält, wird in wissenschaftlicher Schreibweise mit einem negativen Exponenten dargestellt. Wenn Sie durch die Epochen scrollen, stellen Sie fest, dass der Verlust in den ersten paar Epochen ziemlich hoch ist, dann aber mit jedem Schritt kleiner wird. Beispiel:
Im Laufe des Trainings wird der Verlust sehr klein:
Am Ende des Trainings ist der Verlust extrem gering, was zeigt, dass es dem Modell sehr gut gelingt, die Beziehung zwischen den Zahlen abzuleiten:
Möglicherweise brauchen Sie nicht alle 500 Epochen. Probieren Sie es mit verschiedenen Werten. In diesem Beispiel ist der Verlust bereits nach 50 Epochen sehr klein. Diese Anzahl reicht also vermutlich.
Klicken Sie auf Fortschritt prüfen.
Sie haben jetzt ein Modell, das dafür trainiert wurde, die Beziehung zwischen X und Y zu lernen.
Mit der Methode model.predict
können Sie den Y-Wert für einen X-Wert ermitteln, den das Modell während des Trainings nicht kennengelernt hat. Wenn beispielsweise X = 10 ist, welchen Wert muss dann Y haben?
cloud_logger
übergeben, um zum Prüfen des Fortschritts Cloud-Logs zu erstellen. Drücken Sie Strg + S oder klicken Sie auf Datei > Speichern, um das Notebook zu speichern.
Klicken Sie auf Ausführen oder drücken Sie Umschalttaste + Eingabetaste, um die dritte Zelle auszuführen.
Der Y-Wert wird nach dem Trainingslog (Epochen) aufgeführt.
Beispielausgabe:
Sie dachten wahrscheinlich Y = 31. Der tatsächliche Wert ist aber etwas höher (31,005917). Was könnte der Grund sein?
Antwort: Neuronale Netzwerke befassen sich mit Wahrscheinlichkeiten. Dieses Netzwerk hat berechnet, dass die Beziehung zwischen X und Y mit sehr hoher Wahrscheinlichkeit Y = 3X + 1 ist. Anhand von nur sechs Datenpunkten ließ sich dies aber nicht sicher sagen. Daher ist das Ergebnis für die Zahl 10 sehr nahe an 31, aber nicht unbedingt genau 31.
Dieses Muster wird Ihnen bei der Arbeit mit neuronalen Netzwerken immer wieder begegnen. Sie haben es in der Regel mit Wahrscheinlichkeiten und nicht mit Gewissheiten zu tun. Es ist ein bisschen Coding nötig, um herauszufinden, wie das Ergebnis basierend auf diesen Wahrscheinlichkeiten lautet, insbesondere wenn es um die Klassifizierung geht.
Klicken Sie auf Fortschritt prüfen.
Sie haben das Lab erfolgreich abgeschlossen. Sie haben mit TensorFlow ein eigenes Machine-Learning-Modell erstellt, trainiert und getestet.
In unseren Schulungen erfahren Sie alles zum optimalen Einsatz unserer Google Cloud-Technologien und können sich entsprechend zertifizieren lassen. Unsere Kurse vermitteln technische Fähigkeiten und Best Practices, damit Sie möglichst schnell mit Google Cloud loslegen und Ihr Wissen fortlaufend erweitern können. Wir bieten On-Demand-, Präsenz- und virtuelle Schulungen für Anfänger wie Fortgeschrittene an, die Sie individuell in Ihrem eigenen Zeitplan absolvieren können. Mit unseren Zertifizierungen weisen Sie nach, dass Sie Experte im Bereich Google Cloud-Technologien sind.
Anleitung zuletzt am 16. September 2024 aktualisiert
Lab zuletzt am 16. September 2024 getestet
© 2025 Google LLC. Alle Rechte vorbehalten. Google und das Google-Logo sind Marken von Google LLC. Alle anderen Unternehmens- und Produktnamen können Marken der jeweils mit ihnen verbundenen Unternehmen sein.
Diese Inhalte sind derzeit nicht verfügbar
Bei Verfügbarkeit des Labs benachrichtigen wir Sie per E-Mail
Sehr gut!
Bei Verfügbarkeit kontaktieren wir Sie per E-Mail
One lab at a time
Confirm to end all existing labs and start this one