Modellinferenz – Übersicht
In diesem Dokument werden die in BigQuery ML unterstützten Batchinferenzen erläutert, einschließlich:
Bei der Inferenz des maschinellen Lernens werden Datenpunkte einem Modell für maschinelles Lernen zugeführt, um eine Ausgabe zu berechnen, z. B. einen einzelnen numerischen Wert. Dieser Vorgang wird auch als "Operationalisieren eines ML-Modells" oder "Überführen eines ML-Modells in die Produktion" bezeichnet.
Vorhersage
In den folgenden Abschnitten werden die verfügbaren Möglichkeiten zur Vorhersage in BigQuery ML beschrieben.
Inferenz mit trainierten BigQuery ML-Modellen
Vorhersagen in BigQuery ML werden nicht nur für beaufsichtigte Lernmodelle, sondern auch für unbeaufsichtigte Lernmodelle verwendet. Sie werden nur für Modelle verwendet, die mit unabhängigen und identisch verteilten (IID) Daten trainiert wurden. Für Zeitreihendaten, die keine IID-Daten sind, wird der Begriff Prognose verwendet. Weitere Informationen finden Sie im Abschnitt Prognose weiter unten.
BigQuery ML unterstützt Vorhersagefunktionen über die Funktion ML.PREDICT
mit den folgenden Modellen:
Modellkategorie | Modelltypen | Aufgabe von ML.PREDICT |
---|---|---|
Beaufsichtigtes Lernen |
Lineare und logistische Regression Boosted Trees Random Forest Neuronale Deep-Learning-Netzwerke Wide-and-Deep AutoML-Tabellen |
Label vorhersagen, entweder einen numerischen Wert für Regressionsaufgaben oder einen kategorialen Wert für Klassifizierungsaufgaben. |
Unbeaufsichtigtes Lernen | K-means | Cluster der Entität zuweisen. |
PCA | Dimensionalitätsreduktion auf die Entität anwenden, indem sie in den von den Eigenvektoren umfassten Bereich umgewandelt wird. | |
Autoencoder | Entität in den eingebetteten Bereich umwandeln. |
Informationen zur Inferenz des Matrixfaktorisierungsmodells finden Sie unter Empfehlung.
Inferenzen und importierte Modellen
Bei diesem Ansatz erstellen und trainieren Sie ein Modell außerhalb von BigQuery, importieren es mit der Anweisung CREATE MODEL
und führen dann mithilfe mit Funktion ML.PREDICT
die Inferenz dafür aus.
Die gesamte Inferenzverarbeitung erfolgt in BigQuery mithilfe von Daten aus BigQuery. Importierte Modelle können beaufsichtigtes oder unbeaufsichtigtes Lernen durchführen.
BigQuery ML unterstützt folgende importierte Modelltypen:
- Open Neural Network Exchange (ONNX) für Modelle, die in PyTorch, scikit-learn und anderen beliebten ML-Frameworks trainiert wurden.
- TensorFlow
- TensorFlow Lite
- XGBoost
Nutzen Sie diesen Ansatz, um benutzerdefinierte Modelle zu verwenden, die mit einer Reihe von ML-Frameworks entwickelt wurden. Dabei profitieren Sie von der Inferenzgeschwindigkeit und der Daten-Colocation von BigQuery ML.
Weitere Informationen finden Sie in den folgenden Anleitungen:
- Vorhersagen mit importierten TensorFlow-Modellen erstellen
- Vorhersagen mit scikit-learn-Modellen im ONNX-Format treffen
- Vorhersagen mit PyTorch-Modellen im ONNX-Format erstellen
Inferenzen und Remote-Modelle
Bei diesem Ansatz können Sie einen Verweis auf ein Modell erstellen, das in Vertex AI Prediction gehostet wird, indem Sie die Anweisung CREATE MODEL
verwenden und dann mit der Funktion ML.PREDICT
die Inferenz dafür ausführen.
Die gesamte Inferenzverarbeitung erfolgt in Vertex AI unter Verwendung von Daten aus BigQuery. Remote-Modelle können beaufsichtigtes oder unbeaufsichtigtes Lernen durchführen.
Mit diesem Ansatz können Sie Inferenzen für große Modelle ausführen, für die die von Vertex AI bereitgestellte GPU-Hardwareunterstützung erforderlich ist. Wenn die meisten Ihrer Modelle von Vertex AI gehostet werden, können Sie über SQL Inferenz für diese Modelle ausführen, ohne manuell Datenpipelines erstellen zu müssen, um Daten in Vertex AI zu importieren und Vorhersagen zurück nach BigQuery senden zu können.
Eine detaillierte Anleitung finden Sie unter Vorhersagen mit Remote-Modellen in Vertex AI treffen.
Vorhersage
Prognosen sind eine Technik, die Verlaufsdaten als Eingaben verwendet, um fundierte Schätzungen für die Zukunft zu erstellen. In BigQuery ML wird die Prognose auf Zeitreihendaten angewendet. Informationen zu IID-Daten finden Sie unter Vorhersage.
BigQuery ML unterstützt Prognosefunktionen über die Funktion ML.FORECAST
mit den Modellen ARIMA_PLUS und ARIMA_PLUS_XREG. Das Zeitreihenmodell ist kein einzelnes Modell, sondern eine Zeitreihenmodellierungspipeline, die mehrere Modelle und Algorithmen enthält. Weitere Informationen finden Sie in der Zeitreihenmodellierungspipeline.
Empfehlung
Recommender-Systeme sind eine der erfolgreichsten und weit verbreiteten Anwendungen für maschinelles Lernen für Unternehmen. Ein Empfehlungssystem unterstützt Nutzer dabei, überzeugende Inhalte in einem großen Datensatz zu finden. Der Google Play Store bietet beispielsweise Millionen von Apps, während YouTube Milliarden von Videos bereitstellt, wobei jeden Tag mehr Apps und Videos hinzugefügt werden. Um neue, überzeugende neue Inhalte zu finden, können Nutzer eine Suche durchführen, aber ein Empfehlungssystem Inhalte präsentieren, nach denen Nutzer möglicherweise von sich aus nicht gesucht hätten. Weitere Informationen finden Sie in der Übersicht über Empfehlungssysteme.
Algorithmen für maschinelles Lernen in Recommender-Systemen werden in der Regel in zwei Kategorien unterteilt: inhaltsbasierte und kollaborative Filtermethoden.
Typ | Definition | Beispiel |
---|---|---|
Inhaltsbasiertes Filtern | Verwendet Ähnlichkeit zwischen Elementen, um Elemente zu empfehlen, die dem ähneln, was der Nutzer mag. | Wenn sich Nutzer A zwei süße Katzenvideos ansieht, kann das System diesem Nutzer süße Tiervideos empfehlen. |
Kollaboratives Filtern | Verwendet Ähnlichkeiten zwischen Abfragen und Elementen gleichzeitig, um Empfehlungen zu geben. | Wenn Nutzer A Nutzer B ähnelt und Nutzer B Video 1 mag, kann das System Video 1 Nutzer A empfehlen (auch wenn Nutzer A keine Videos gesehen hat, die Video 1 ähneln). |
Das Matrixfaktorisierungsmodell wird häufig als kollaborative Filtermethode für Empfehlungssysteme verwendet. BigQuery ML unterstützt die Funktion ML.RECOMMEND
, um die Verwendung der Matrixfaktorisierung für Empfehlungszwecke zu erleichtern.
Weitere Informationen zum Anwenden der Matrixfaktorisierung auf Empfehlungen finden Sie unter Matrixfaktorisierung.
In modernen Empfehlungssystemen werden häufig neuronale Deep-Learning-Netzwerke (DNN), einschließlich Wide-and-Deep-Modellen, verwendet. Dies kann als Erweiterung der auf Matrixfaktorisierung basierenden kollaborativen Filterung betrachtet werden. Es kann Abfrage- und Elementfeatures enthalten, um die Relevanz von Empfehlungen zu verbessern. Weitere Informationen finden Sie unter Empfehlung mit neuronalen Deep-Learning-Netzwerkmodellen, Neuronale Deep-Learning-Netzwerke für YouTube-Empfehlungen oder Wide & Deep Learning für Recommender-Systeme. Es sollte auch erwähnt werden, dass alle beaufsichtigten Lernmodelle für Empfehlungsaufgaben verwendet werden können.
Anomalieerkennung
Die Anomalieerkennung ist ein Schritt im Data Mining, der Datenpunkte, Ereignisse und Beobachtungen identifiziert, die vom normalen Verhalten eines Datasets abweichen. Anomale Daten können auf kritische Vorfälle wie technische Probleme oder Chancen wie Änderungen des Verbraucherverhaltens hinweisen.
Eine Herausforderung bei der Anomalieerkennung ist die Identifizierung und Definition der Anomalie.
Bei Daten mit Labels und bekannten Anomalien können Sie zwischen beaufsichtigten ML-Modelltypen wählen, die bereits in BigQuery ML unterstützt werden.
Wenn kein bekannter Anomalietyp und keine Daten mit Labels vorhanden sind, können Sie weiterhin unbeaufsichtigtes maschinelles Lernen verwenden, um Anomalien zu erkennen. Je nachdem, ob Ihre Trainingsdaten Zeitreihen sind oder nicht, können Sie Anomalien in Trainingsdaten oder in neuen Eingabedaten mit der Funktion ML.DETECT_ANOMALIES
mit den folgenden Modellen erkennen:
Datentyp | Modelltypen | Aufgabe von ML.DETECT_ANOMALIES |
---|---|---|
Zeitreihe | ARIMA_PLUS | Anomalien in der Zeitreihe erkennen. |
ARIMA_PLUS_XREG | Anomalien in der Zeitreihe mit externen Regressoren erkennen. | |
Unabhängige und identisch verteilte Zufallsvariablen (IID) | K-means | Anomalien auf der Grundlage der kürzesten Entfernung bei den normalisierten Entfernungen von den Eingabedaten zu jedem Clusterschwerpunkt erkennen. Eine Definition der normalisierten Entfernungen finden Sie unter ML.DETECT_ANOMALIES . |
Autoencoder | Anomalien anhand des Rekonstruktionsverlusts in Bezug auf den mittleren quadratischen Fehler erkennen. Weitere Informationen finden Sie unter ML.RECONSTRUCTION_LOSS . ML.RECONSTRUCTION_LOSS kann alle Arten von Rekonstruktionsverlust abrufen. |
|
PCA | Anomalien anhand des Rekonstruktionsverlusts in Bezug auf den mittleren quadratischen Fehler erkennen. |
Onlinevorhersage
Die integrierte Inferenzfunktion von BigQuery ML ist für umfangreiche Anwendungsfälle wie Batchvorhersagen optimiert. Während BigQuery ML bei der Verarbeitung kleiner Eingabedaten niedrige Inferenzergebnisse liefert, können Sie durch die nahtlose Einbindung in Vertex AI eine schnellere Onlinevorhersage erreichen.
Sie können BigQuery ML-Modelle in der Vertex AI-Umgebung verwalten, sodass Sie Modelle nicht aus BigQuery ML exportieren müssen, bevor Sie sie als Vertex AI-Endpunkte bereitstellen. Durch die Verwaltung von Modellen in Vertex AI erhalten Sie Zugriff auf alle Funktionen von Vertex AI MLOps und auf Features wie Vertex AI Feature Store.
Darüber hinaus haben Sie die Flexibilität, BigQuery ML-Modelle nach Cloud Storage zu exportieren, um die Verfügbarkeit auf anderen Modellhosting-Plattformen zu gewährleisten.
Nächste Schritte
- Weitere Informationen zur Verwendung von Large Language Models (LLNs) und Cloud AI APIs zum Generieren von Text und zum Ausführen anderer KI-Aufgaben finden Sie unter KI-Anwendung – Übersicht.
- Informationen zu unterstützten Modelltypen und SQL-Funktionen für jeden Inferenztyp finden Sie unter End-to-End-Nutzerpfad für jedes Modell.