Prognosen für einzelne Zeitachsen für Google Analytics-Daten durchführen


In dieser Anleitung erfahren Sie, wie Sie ein Zeitachsenmodell erstellen, um Prognosen für einzelne Zeitachsen mithilfe der Beispieltabelle google_analytics_sample.ga_sessions durchzuführen.

Die Tabelle ga_sessions enthält Informationen zu einem Teil der Sitzungsdaten, die von Google Analytics 360 erfasst und an BigQuery gesendet wurden.

Ziele

In dieser Anleitung verwenden Sie Folgendes:

  • Die CREATE MODEL-Anweisung zum Erstellen eines Zeitachsenmodells.
  • Die ML.ARIMA_EVALUATE-Funktion zum Bewerten des Modells.
  • Die ML.ARIMA_COEFFICIENTS-Funktion zum Prüfen der Modellkoeffizienten.
  • Die ML.FORECAST-Funktion zur Prognose der täglichen Gesamtbesuche.
  • Die Funktion ML.EXPLAIN_FORECAST zum Abrufen verschiedener Komponenten der Zeitreihe, z. B. Saisonabhängigkeit und Trend, mit denen die Prognoseergebnisse erklärt werden können.
  • Looker Studio zur Visualisierung der Prognoseergebnisse.

Kosten

In dieser Anleitung werden kostenpflichtige Komponenten von Google Cloud verwendet, darunter:

  • BigQuery
  • BigQuery ML

Weitere Informationen zu den Kosten von BigQuery finden Sie auf der Seite BigQuery-Preise.

Weitere Informationen zu den Kosten für BigQuery ML finden Sie unter BigQuery ML-Preise.

Hinweis

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. BigQuery ist in neuen Projekten automatisch aktiviert. Zum Aktivieren von BigQuery in einem vorhandenen Projekt wechseln Sie zu

    Enable the BigQuery API.

    Enable the API

    .

Schritt 1: Dataset erstellen

Erstellen Sie ein BigQuery-Dataset, um Ihr ML-Modell zu speichern:

  1. Rufen Sie in der Google Cloud Console die Seite „BigQuery“ auf.

    Zur Seite „BigQuery“

  2. Klicken Sie im Bereich Explorer auf den Namen Ihres Projekts.

  3. Klicken Sie auf Aktionen ansehen > Dataset erstellen.

    Dataset erstellen

  4. Führen Sie auf der Seite Dataset erstellen die folgenden Schritte aus:

    • Geben Sie unter Dataset-ID bqml_tutorial ein.

    • Wählen Sie als Standorttyp die Option Mehrere Regionen und dann USA (mehrere Regionen in den USA) aus.

      Die öffentlichen Datasets sind am multiregionalen Standort US gespeichert. Der Einfachheit halber sollten Sie Ihr Dataset am selben Standort speichern.

    • Übernehmen Sie die verbleibenden Standardeinstellungen unverändert und klicken Sie auf Dataset erstellen.

      Seite "Dataset erstellen"

Schritt 2 (optional): Zeitachsen für die Prognose visualisieren

Schauen Sie sich Ihre Eingabezeitachse genau an, bevor Sie das Modell erstellen.

SQL

Verwenden Sie dazu Looker Studio.

In der folgenden GoogleSQL-Abfrage gibt die FROM bigquery-public-data.google_analytics_sample.ga_sessions_*-Klausel an, dass Sie die ga_sessions_*-Tabellen im google_analytics_sample-Dataset abfragen. Diese Tabellen sind partitionierte Tabellen.

In der SELECT-Anweisung parst die Abfrage die Spalte date aus der Eingabetabelle in den Typ TIMESTAMP und benennt sie in parsed_date um. Die Abfrage verwendet die Klauseln SUM(...) und GROUP BY date, um totals.visits nach Tagen zu akkumulieren.

#standardSQL
SELECT
PARSE_TIMESTAMP("%Y%m%d", date) AS parsed_date,
SUM(totals.visits) AS total_visits
FROM
`bigquery-public-data.google_analytics_sample.ga_sessions_*`
GROUP BY date

Die Abfrage führen Sie so aus:

  1. Klicken Sie in der Google Cloud Console auf Neue Abfrage erstellen.

  2. Geben Sie im Textfeld des Abfrageeditors die folgende GoogleSQL-Abfrage ein.

    #standardSQL
    SELECT
    PARSE_TIMESTAMP("%Y%m%d", date) AS parsed_date,
    SUM(totals.visits) AS total_visits
    FROM
    `bigquery-public-data.google_analytics_sample.ga_sessions_*`
    GROUP BY date
    
  3. Klicken Sie auf Ausführen.

    Die Abfrage dauert etwa 7 Sekunden. Nachdem diese Abfrage ausgeführt wurde, sieht die Ausgabe dem folgenden Screenshot ähnlich. Im Screenshot sehen Sie, dass diese Zeitachse 366 Datenpunkte enthält. Klicken Sie auf die Schaltfläche Daten auswerten und dann auf Mit Looker Studio auswerten. Looker Studio wird in einem neuen Tab geöffnet. Führen Sie die folgenden Schritte in dem neuen Tab aus.

    Screenshot: Ausgabe der Abfrage

    Wählen Sie im Bereich Diagramm die Option Zeitachsendiagramm aus:

    Screenshot: Zeitachsendiagramm

    Gehen Sie unter dem Bereich Diagramm im Bereich Daten zum Abschnitt Messwert. Fügen Sie das Feld total_visits hinzu und entfernen Sie dann den Standardmesswert Anzahl der Datensätze. Dies wird in der folgenden Abbildung dargestellt.

    Screenshot: Datenfelder der Zeitachse

    Nachdem Sie diese Schritte abgeschlossen haben, wird das folgende Diagramm angezeigt. Dem Diagramm können Sie entnehmen, dass die Eingabezeitachse ein wöchentliches saisonales Muster aufweist.

    Screenshot: Ergebnisvisualisierung

BigQuery DataFrames

Bevor Sie dieses Beispiel ausprobieren, folgen Sie den Schritten zur Einrichtung von BigQuery DataFrames in der BigQuery-Kurzanleitung: BigQuery DataFrames verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zu BigQuery DataFrames.

Richten Sie zur Authentifizierung bei BigQuery die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import bigframes.pandas as bpd

# Start by loading the historical data from BigQuerythat you want to analyze and forecast.
# This clause indicates that you are querying the ga_sessions_* tables in the google_analytics_sample dataset.
# Read and visualize the time series you want to forecast.
df = bpd.read_gbq("bigquery-public-data.google_analytics_sample.ga_sessions_*")
parsed_date = bpd.to_datetime(df.date, format="%Y%m%d", utc=True)
visits = df["totals"].struct.field("visits")
total_visits = visits.groupby(parsed_date).sum()

# Expected output: total_visits.head()
# date
# 2016-08-01 00:00:00+00:00    1711
# 2016-08-02 00:00:00+00:00    2140
# 2016-08-03 00:00:00+00:00    2890
# 2016-08-04 00:00:00+00:00    3161
# 2016-08-05 00:00:00+00:00    2702
# Name: visits, dtype: Int64

total_visits.plot.line()

Das Ergebnis sieht etwa so aus: Screenshot: Ergebnisvisualisierung

Schritt 3: Zeitachsenmodell erstellen

Erstellen Sie als Nächstes ein Zeitachsenmodell mit den Google Analytics 360-Daten. Die folgende GoogleSQL-Abfrage erstellt ein Modell für die Prognose von totals.visits.

Die CREATE MODEL-Klausel erstellt und trainiert ein Modell mit dem Namen bqml_tutorial.ga_arima_model.

#standardSQL
CREATE OR REPLACE MODEL `bqml_tutorial.ga_arima_model`
OPTIONS
  (model_type = 'ARIMA_PLUS',
   time_series_timestamp_col = 'parsed_date',
   time_series_data_col = 'total_visits',
   auto_arima = TRUE,
   data_frequency = 'AUTO_FREQUENCY',
   decompose_time_series = TRUE
  ) AS
SELECT
  PARSE_TIMESTAMP("%Y%m%d", date) AS parsed_date,
  SUM(totals.visits) AS total_visits
FROM
  `bigquery-public-data.google_analytics_sample.ga_sessions_*`
GROUP BY date

Die OPTIONS(model_type='ARIMA_PLUS', time_series_timestamp_col='date', ...)-Klausel gibt an, dass Sie ein ARIMA-basiertes Zeitachsenmodell erstellen. Standardmäßig wird auto_arima=TRUE verwendet, sodass der auto.ARIMA-Algorithmus die Hyperparameter in ARIMA_PLUS-Modellen automatisch abstimmt. Der Algorithmus passt Dutzende von Kandidatenmodellen an und wählt das beste Modell mit dem niedrigsten Akaike-Informationskriterium (AIC) aus. Da der Standardwert data_frequency='AUTO_FREQUENCY' ist, leitet der Trainingsprozess außerdem automatisch die Datenhäufigkeit der Eingabezeitachse ab. Schließlich verwendet die CREATE MODEL-Anweisung standardmäßig decompose_time_series=TRUE, und die Nutzer können weiter verstehen, wie die Zeitreihe prognostiziert wird, indem sie die separaten Zeitreihenkomponenten, wie Saisonalität und Urlaubseffekt, abrufen.

Führen Sie die CREATE MODEL-Abfrage aus, um Ihr Modell zu erstellen und zu trainieren:

  1. Klicken Sie in der Google Cloud Console auf Neue Abfrage erstellen.

  2. Geben Sie im Textfeld des Abfrageeditors die folgende GoogleSQL-Abfrage ein.

    #standardSQL
    CREATE OR REPLACE MODEL `bqml_tutorial.ga_arima_model`
    OPTIONS
     (model_type = 'ARIMA_PLUS',
      time_series_timestamp_col = 'parsed_date',
      time_series_data_col = 'total_visits',
      auto_arima = TRUE,
      data_frequency = 'AUTO_FREQUENCY',
      decompose_time_series = TRUE
    ) AS
    SELECT
     PARSE_TIMESTAMP("%Y%m%d", date) AS parsed_date,
     SUM(totals.visits) AS total_visits
    FROM
     `bigquery-public-data.google_analytics_sample.ga_sessions_*`
    GROUP BY date
    
  3. Klicken Sie auf Ausführen.

    Die Abfrage dauert ungefähr 43 Sekunden. Anschließend wird das Modell (ga_arima_model) im Navigationsbereich angezeigt. Da die Abfrage eine CREATE MODEL-Anweisung zum Erstellen eines Modells verwendet, werden keine Abfrageergebnisse ausgegeben.

Schritt 4: Bewertungsmesswerte aller bewerteten Modelle prüfen

Nachdem Sie Ihr Modell erstellt haben, verwenden Sie die ML.ARIMA_EVALUATE-Funktion, die Bewertungsmesswerte aller infrage kommenden Modelle anzeigt, die während der automatischen Hyperparameter-Abstimmung bewertet wurden.

In folgender GoogleSQL-Abfrage verwendet die FROM-Klausel die ML.ARIMA_EVALUATE-Funktion für Ihr Modell, bqml_tutorial.ga_arima_model. Standardmäßig werden mit dieser Abfrage die Bewertungsmesswerte aller Kandidatenmodelle zurückgegeben.

Führen Sie die ML.ARIMA_EVALUATE-Abfrage mit folgenden Schritten aus:

  1. Klicken Sie in der Google Cloud Console auf Neue Abfrage erstellen.

  2. Geben Sie im Textfeld des Abfrageeditors die folgende GoogleSQL-Abfrage ein.

    #standardSQL
    SELECT
     *
    FROM
     ML.ARIMA_EVALUATE(MODEL `bqml_tutorial.ga_arima_model`)
    
  3. Klicken Sie auf Ausführen.

  4. Die Abfrage dauert weniger als eine Sekunde. Sobald die Abfrage abgeschlossen ist, klicken Sie unterhalb des Textbereichs der Abfrage auf den Tab Ergebnisse. Die Ergebnisse sollten in etwa so aussehen:

    Ausgabe von ML.ARIMA_EVALUATE.

    Die Ergebnisse enthalten die folgenden Spalten:

    • non_seasonal_p
    • non_seasonal_d
    • non_seasonal_q
    • has_drift
    • log_likelihood
    • AIC
    • variance
    • seasonal_periods
    • has_holiday_effect
    • has_spikes_and_dips
    • has_step_changes
    • error_message

    Die folgenden vier Spalten (non_seasonal_{p,d,q} und has_drift) definieren ein ARIMA-Modell in der Trainingspipeline. Die drei folgenden Messwerte (log_likelihood, AIC und variance) sind für den ARIMA-Modellanpassungsprozess relevant.

    Der auto.ARIMA-Algorithmus verwendet zuerst den KPSS-Test, um zu bestimmen, dass der beste Wert für non_seasonal_d 1 ist. Wenn non_seasonal_d 1 ist, trainiert auto.ARIMA anschließend 42 verschiedene ARIMA-Kandidatenmodelle parallel. Beachten Sie, dass auto.ARIMA 21 verschiedene Kandidatenmodelle trainiert, wenn non_seasonal_d nicht 1 ist. In diesem Beispiel sind alle 42 Kandidatenmodelle gültig. Daher enthält die Ausgabe 42 Zeilen, wobei jede Zeile einem ARIMA-Kandidatenmodell zugeordnet ist. Für einige Zeitachsen können mehrere mögliche Modelle ungültig sein, da sie entweder nicht umkehrbar oder nicht stationär sind. Diese ungültigen Modelle werden aus der Ausgabe ausgeschlossen, sodass die Ausgabe weniger als 42 Zeilen hat. Diese Kandidatenmodelle werden gemäß dem AIC in aufsteigender Reihenfolge sortiert. Das Modell in der ersten Zeile hat den niedrigsten AIC und gilt als bestes Modell. Dieses Modell wird dann als endgültiges Modell gespeichert und verwendet, wenn Sie, wie in den folgenden Schritten gezeigt, ML.EXPLAIN_FORECAST, ML.FORECAST und ML.ARIMA_COEFFICIENTS aufrufen.

    Die Spalte seasonal_periods bezieht sich auf das saisonale Muster innerhalb der Eingabezeitachse. Es hat nichts mit der ARIMA-Modellierung zu tun und hat daher in allen Ausgabezeilen denselben Wert. Es wird ein wöchentliches Muster gemeldet, was unseren Erwartungen in Schritt 2 entspricht.

    Die Spalten has_holiday_effect, has_spikes_and_dips und has_step_changes werden nur ausgefüllt, wenn decompose_time_series=TRUE. Sie betreffen den Urlaubseffekt, Spitzen und Einbrüche sowie Schrittwechsel innerhalb der Eingabezeitachse, die nicht mit der ARIMA-Modellierung zusammenhängen. Aus diesem Grund sind sie für alle Ausgabezeilen gleich, außer für die fehlgeschlagenen Modelle.

    Die Spalte error_message zeigt an, dass der mögliche Fehler bei der auto.ARIMA-Anpassung aufgetreten ist. Ein möglicher Grund dafür ist, dass die ausgewählten Spalten non_seasonal_p, non_seasonal_d, non_seasonal_q und has_drift die Zeitachse nicht stabilisieren können. Legen Sie show_all_candidate_models=true fest, um die mögliche Fehlermeldung aller Kandidatenmodelle abzurufen.

Schritt 5: Koeffizienten Ihres Modells prüfen

Die Funktion ML.ARIMA_COEFFICIENTS ruft die Modellkoeffizienten Ihres ARIMA_PLUS-Modells bqml_tutorial.ga_arima_model ab. ML.ARIMA_COEFFICIENTS verwendet das Modell als einzige Eingabe.

Führen Sie die ML.ARIMA_COEFFICIENTS-Abfrage aus:

  1. Klicken Sie in der Google Cloud Console auf Neue Abfrage erstellen.

  2. Geben Sie im Textfeld des Abfrageeditors die folgende GoogleSQL-Abfrage ein.

    #standardSQL
    SELECT
     *
    FROM
     ML.ARIMA_COEFFICIENTS(MODEL `bqml_tutorial.ga_arima_model`)
    
  3. Klicken Sie auf Ausführen.

    Die Abfrage dauert weniger als eine Sekunde. Die Ergebnisse sollten so aussehen:

    Screenshot: Ausgabe von ML.ARIMA_COEFFICIENTS

    Die Ergebnisse enthalten die folgenden Spalten:

    • ar_coefficients
    • ma_coefficients
    • intercept_or_drift

    ar_coefficients zeigt die Modellkoeffizienten des autoregressiven (AR) Teils des ARIMA-Modells an. Auf ähnliche Weise zeigt ma_coefficients die Modellkoeffizienten des gleitenden Durchschnitts (Moving Average, MA) an. Beide sind Arrays, deren Länge non_seasonal_p bzw. non_seasonal_q entspricht. In der Ausgabe von ML.ARIMA_EVALUATE hat das beste Modell in der obersten Zeile einen Wert von 2 für non_seasonal_p und einen Wert von 3 für non_seasonal_q. Daher ist ar_coefficients ein Array der Länge 2 und ma_coefficients ein Array der Länge 3. intercept_or_drift ist der konstante Begriff im ARIMA-Modell.

Schritt 6: Modell zur Prognose der Zeitachsen verwenden

Die Funktion ML.FORECAST prognostiziert unter Einsatz Ihres Modells bqml_tutorial.ga_arima_model zukünftige Zeitachsenwerte mit einem Vorhersageintervall.

In der folgenden GoogleSQL-Abfrage gibt die STRUCT(30 AS horizon, 0.8 AS confidence_level)-Klausel an, dass die Abfrage 30 zukünftige Zeitpunkte prognostiziert und ein Vorhersageintervall mit einem Konfidenzniveau von 80 % generiert. ML.FORECAST verwendet das Modell sowie einige optionale Argumente als Eingabe.

Führen Sie die ML.FORECAST-Abfrage mit folgenden Schritten aus:

  1. Klicken Sie in der Google Cloud Console auf Neue Abfrage erstellen.

  2. Geben Sie im Textfeld des Abfrageeditors die folgende GoogleSQL-Abfrage ein.

    #standardSQL
    SELECT
     *
    FROM
     ML.FORECAST(MODEL `bqml_tutorial.ga_arima_model`,
                 STRUCT(30 AS horizon, 0.8 AS confidence_level))
    
  3. Klicken Sie auf Ausführen.

    Die Abfrage dauert weniger als eine Sekunde. Die Ergebnisse sollten so aussehen:

    Screenshot: Ausgabe von ML.FORECAST

    Die Ergebnisse enthalten die folgenden Spalten:

    • forecast_timestamp
    • forecast_value
    • standard_error
    • confidence_level
    • prediction_interval_lower_bound
    • prediction_interval_upper_bound
    • confidence_interval_lower_bound (bald eingestellt)
    • confidence_interval_upper_bound (bald eingestellt)

    Die Ausgabezeilen werden in chronologischer Reihenfolge nach forecast_timestamp angeordnet. In der Zeitachsenprognose ist das Vorhersageintervall, das sich aus der Unter- und Obergrenze ergibt, genauso wichtig wie forecast_value. Der forecast_value ist der Mittelpunkt des Vorhersageintervall. Das Vorhersageintervall hängt von standard_error und confidence_level ab.

Schritt 7: Prognoseergebnisse erklären und visualisieren

Zum Verständnis, wie die Zeitachse prognostiziert wird, und um die prognostizierte Zeitachse zusammen mit der Verlaufsachse und allen separaten Komponenten zu visualisieren, prognostiziert die Funktion ML.EXPLAIN_FORECAST zukünftige Zeitachsenwerte mit einem Vorhersageintervall unter Verwendung deines Modells, bqml_tutorial.ga_arima_model, und gibt gleichzeitig alle separaten Komponenten der Zeitachse zurück.

Wie die Funktion ML.FORECAST gibt die Klausel STRUCT(30 AS horizon, 0.8 AS confidence_level) an, dass die Abfrage 30 zukünftige Zeitpunkte prognostiziert und ein Vorhersageintervall mit einer Konfidenz von 80 % generiert. Die Funktion ML.EXPLAIN_FORECAST verwendet das Modell sowie ein Paar optionaler Argumente.

Führen Sie die ML.EXPLAIN_FORECAST-Abfrage mit folgenden Schritten aus:

  1. Klicken Sie in der Google Cloud Console auf Neue Abfrage erstellen.

  2. Geben Sie im Textfeld des Abfrageeditors die folgende GoogleSQL-Abfrage ein.

    #standardSQL
    SELECT
     *
    FROM
     ML.EXPLAIN_FORECAST(MODEL `bqml_tutorial.ga_arima_model`,
                         STRUCT(30 AS horizon, 0.8 AS confidence_level))
    
  3. Klicken Sie auf Ausführen.

    Die Abfrage dauert weniger als eine Sekunde. Die Ergebnisse sollten so aussehen:

    ML.EXPLAIN_FORECAST output1. ML.EXPLAIN_FORECAST output2.

    Die Ergebnisse enthalten die folgenden Spalten:

    • time_series_timestamp
    • time_series_type
    • time_series_data
    • time_series_adjusted_data
    • standard_error
    • confidence_level
    • prediction_interval_lower_bound
    • prediction_interval_lower_bound
    • trend
    • seasonal_period_yearly
    • seasonal_period_quarterly
    • seasonal_period_monthly
    • seasonal_period_weekly
    • seasonal_period_daily
    • holiday_effect
    • spikes_and_dips
    • step_changes
    • residual

    Die Ausgabezeilen werden in chronologischer Reihenfolge nach time_series_timestamp angeordnet. Verschiedene Komponenten werden als Spalten der Ausgabe aufgeführt. Weitere Informationen finden Sie in der Definition von ML.EXPLAIN_FORECAST.

  4. Klicken Sie nach Abschluss der Abfrage auf die Schaltfläche Daten auswerten und dann auf Mit Looker Studio auswerten. Looker Studio wird in einem neuen Tab geöffnet.

    Screenshot: Ausgabe der UNION ALL-Abfrage

  5. Wählen Sie im Bereich Diagramm die Option Zeitachsendiagramm aus:

    Screenshot: Zeitachsendiagramm

  6. Führen Sie im Bereich Daten folgende Schritte aus:

    1. Wählen Sie im Abschnitt Zeitraumdimension die Option time_series_timestamp (Date) aus.
    2. Wählen Sie im Abschnitt Dimension die Option time_series_timestamp (Date) aus.
    3. Entfernen Sie im Abschnitt Messwert den Standardmesswert Record Count und fügen Sie Folgendes hinzu:
      • time_series_data
      • prediction_interval_lower_bound
      • prediction_interval_upper_bound
      • trend
      • seasonal_period_weekly
      • step_changes

    Data_panel

  7. Scrollen Sie im Bereich Stil nach unten zur Option Fehlende Daten und verwenden Sie Zeilenumbrüche anstelle von Linie auf null.

    Screenshot: Bereich "Stil"

    Die folgende Darstellung wird angezeigt:

    Screenshot: Ergebnisvisualisierung

Schritt 8 (optional): Prognoseergebnisse visualisieren, ohne decompose_time_series aktiviert zu haben

Wenn decompose_time_series im Training ARIMA_PLUS auf „false” gesetzt ist, können Sie die Verlaufsachse und die prognostizierte Zeitachse mit der Klausel UNION ALL und der Funktion ML.FORECAST verketten.

In der folgenden Abfrage bildet der SQL-Wert vor der UNION ALL-Klausel die Verlaufsachse. Die SQL-Anweisung nach der UNION ALL-Klausel generiert mithilfe von ML.FORECAST die prognostizierte Zeitachse sowie das Vorhersageintervall. Die Abfrage verwendet verschiedene Felder für history_value und forecasted_value, um sie in unterschiedlichen Farben darzustellen.

Die Abfrage führen Sie so aus:

  1. Klicken Sie in der Google Cloud Console auf Neue Abfrage erstellen.

  2. Geben Sie im Textfeld des Abfrageeditors die folgende GoogleSQL-Abfrage ein.

    #standardSQL
    SELECT
     history_timestamp AS timestamp,
     history_value,
     NULL AS forecast_value,
     NULL AS prediction_interval_lower_bound,
     NULL AS prediction_interval_upper_bound
    FROM
     (
       SELECT
         PARSE_TIMESTAMP("%Y%m%d", date) AS history_timestamp,
         SUM(totals.visits) AS history_value
       FROM
         `bigquery-public-data.google_analytics_sample.ga_sessions_*`
       GROUP BY date
       ORDER BY date ASC
     )
    UNION ALL
    SELECT
     forecast_timestamp AS timestamp,
     NULL AS history_value,
     forecast_value,
     prediction_interval_lower_bound,
     prediction_interval_upper_bound
    FROM
     ML.FORECAST(MODEL `bqml_tutorial.ga_arima_model`,
                 STRUCT(30 AS horizon, 0.8 AS confidence_level))
    
  3. Klicken Sie auf Ausführen.

  4. Klicken Sie nach Abschluss der Abfrage auf die Schaltfläche Daten auswerten und dann auf Mit Looker Studio auswerten. Looker Studio wird in einem neuen Tab geöffnet. Führen Sie die folgenden Schritte in dem neuen Tab aus.

    Screenshot: Ausgabe der UNION ALL-Abfrage

  5. Wählen Sie im Bereich Diagramm die Option Zeitachsendiagramm aus:

    Screenshot: Zeitachsendiagramm

  6. Gehen Sie unter dem Bereich Diagramm im Bereich Daten zum Abschnitt Messwert. Fügen Sie die folgenden Messwerte hinzu: history_value, forecast_value, prediction_interval_lower_bound und prediction_interval_upper_bound. Entfernen Sie dann den Standardmesswert Record Count.

    Screenshot: Bereich "Daten"

  7. Scrollen Sie im Bereich Stil nach unten zur Option Fehlende Daten und verwenden Sie Zeilenumbrüche anstelle von Linie auf null.

    Screenshot: Bereich "Stil"

    Nachdem Sie diese Schritte ausgeführt haben, wird das folgende Diagramm im linken Bereich angezeigt. Die Eingabeverlaufszeitachse ist blau, die prognostizierte Zeitachse ist grün. Das Vorhersageintervall ist der Bereich zwischen den Linien der unteren und der oberen Grenze.

    Screenshot: Ergebnisvisualisierung

Bereinigen

Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.

  • Sie können das von Ihnen erstellte Projekt löschen.
  • Sie können das Projekt aber auch behalten und das Dataset löschen.

Dataset löschen

Wenn Sie Ihr Projekt löschen, werden alle Datasets und Tabellen entfernt. Wenn Sie das Projekt wieder verwenden möchten, können Sie das in dieser Anleitung erstellte Dataset löschen:

  1. Rufen Sie, falls erforderlich, die Seite "BigQuery" in der Google Cloud Console auf.

    Zur Seite "BigQuery"

  2. Wählen Sie im Navigationsbereich das Dataset bqml_tutorial aus, das Sie erstellt haben.

  3. Klicken Sie rechts im Fenster auf Dataset löschen. Dadurch werden das Dataset, die Tabelle und alle Daten gelöscht.

  4. Bestätigen Sie im Dialogfeld Dataset löschen den Löschbefehl. Geben Sie dazu den Namen des Datasets (bqml_tutorial) ein und klicken Sie auf Löschen.

Projekt löschen

So löschen Sie das Projekt:

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Nächste Schritte