Tutorial ini mengajarkan cara menggunakan
fungsi AI.FORECAST
dengan model univariat TimesFM bawaan BigQuery ML untuk memperkirakan nilai mendatang
untuk kolom tertentu, berdasarkan nilai historis kolom tersebut.
Tutorial ini menggunakan data dari tabel
bigquery-public-data.san_francisco_bikeshare.bikeshare_trips
publik.
Tujuan
Tutorial ini akan memandu Anda menggunakan fungsi AI.FORECAST
dengan
model TimesFM bawaan untuk memperkirakan perjalanan sepeda bersama.
Biaya
Tutorial ini menggunakan komponen Google Cloudyang dapat ditagih, termasuk:
- BigQuery
- BigQuery ML
Untuk informasi selengkapnya tentang biaya BigQuery, lihat halaman harga BigQuery.
Untuk informasi selengkapnya tentang biaya BigQuery ML, lihat harga BigQuery ML.
Sebelum memulai
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- BigQuery secara otomatis diaktifkan dalam project baru.
Untuk mengaktifkan BigQuery dalam project yang sudah ada,
Enable the BigQuery API.
Memperkirakan perjalanan sepeda bersama
Perkiraan nilai deret waktu mendatang menggunakan fungsi AI.FORECAST
.
Kueri berikut memperkirakan jumlah perjalanan sepeda bersama pelanggan per
jam untuk bulan berikutnya (sekitar 720 jam), berdasarkan data historis empat
bulan sebelumnya. Argumen confidence_level
menunjukkan bahwa
kueri menghasilkan interval prediksi dengan tingkat keyakinan 95%.
Ikuti langkah-langkah berikut untuk memperkirakan data dengan model TimesFM:
Di Konsol Google Cloud, buka halaman BigQuery.
Di editor kueri, tempel kueri berikut dan klik Jalankan:
SELECT * FROM AI.FORECAST( ( SELECT TIMESTAMP_TRUNC(start_date, HOUR) as trip_hour, COUNT(*) as num_trips FROM `bigquery-public-data.san_francisco_bikeshare.bikeshare_trips` WHERE subscriber_type = 'Subscriber' AND start_date >= TIMESTAMP('2018-01-01') GROUP BY TIMESTAMP_TRUNC(start_date, HOUR) ), horizon => 720, confidence_level => 0.95, timestamp_col => 'trip_hour', data_col => 'num_trips');
Hasilnya akan terlihat seperti berikut:
+-------------------------+-------------------+------------------+---------------------------------+---------------------------------+--------------------+ | forecast_timestamp | forecast_value | confidence_level | prediction_interval_lower_bound | prediction_interval_upper_bound | ai_forecast_status | +-------------------------+-------------------+------------------+---------------------------------+---------------------------------+--------------------+ | 2018-05-01 00:00:00 UTC | 26.3045959... | 0.95 | 21.7088378... | 30.9003540... | | +-------------------------+-------------------+------------------+---------------------------------+---------------------------------+--------------------+ | 2018-05-01 01:00:00 UTC | 34.0890502... | 0.95 | 2.47682913... | 65.7012714... | | +-------------------------+-------------------+------------------+---------------------------------+---------------------------------+--------------------+ | 2018-05-01 02:00:00 UTC | 24.2154693... | 0.95 | 2.87621605... | 45.5547226... | | +-------------------------+-------------------+------------------+---------------------------------+---------------------------------+--------------------+ | ... | ... | ... | ... | ... | | +-------------------------+-------------------+------------------+---------------------------------+---------------------------------+--------------------+
Membandingkan data perkiraan dengan data input
Buat diagram output fungsi AI.FORECAST
bersama dengan subkumpulan data input fungsi untuk melihat perbandingannya.
Ikuti langkah-langkah berikut untuk memetakan output fungsi:
Di Konsol Google Cloud, buka halaman BigQuery.
Di editor kueri, tempel kueri berikut dan klik Jalankan:
WITH historical AS ( SELECT TIMESTAMP_TRUNC(start_date, HOUR) as trip_hour, COUNT(*) as num_trips FROM `bigquery-public-data.san_francisco_bikeshare.bikeshare_trips` WHERE subscriber_type = 'Subscriber' AND start_date >= TIMESTAMP('2018-01-01') GROUP BY TIMESTAMP_TRUNC(start_date, HOUR) ORDER BY TIMESTAMP_TRUNC(start_date, HOUR) ) SELECT * FROM ( (SELECT trip_hour as date, num_trips AS historical_value, NULL as forecast_value, 'historical' as type, NULL as prediction_interval_low, NULL as prediction_interval_upper_bound FROM historical ORDER BY historical.trip_hour DESC LIMIT 400) UNION ALL (SELECT forecast_timestamp AS date, NULL as historical_value, forecast_value as forecast_value, 'forecast' as type, prediction_interval_lower_bound, prediction_interval_upper_bound FROM AI.FORECAST( ( SELECT * FROM historical ), horizon => 720, confidence_level => 0.99, timestamp_col => 'trip_hour', data_col => 'num_trips'))) ORDER BY date asc;
Setelah kueri selesai berjalan, klik tab Diagram di panel Hasil kueri. Diagram yang dihasilkan akan terlihat mirip dengan berikut ini:
Anda dapat melihat bahwa data input dan data perkiraan menunjukkan penggunaan layanan sepeda bersama yang serupa. Anda juga dapat melihat bahwa batas bawah dan batas atas interval prediksi meningkat seiring dengan semakin jauhnya titik waktu yang diprediksi di masa mendatang.
Pembersihan
Agar tidak perlu membayar biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, hapus project yang berisi resource tersebut, atau simpan project dan hapus setiap resource.
Menghapus project Anda
Untuk menghapus project:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Langkah berikutnya
- Untuk ringkasan BigQuery ML, lihat Pengantar AI dan ML di BigQuery.