BigQuery Machine Learning (BigQuery ML) dapat digunakan untuk membuat dan menjalankan model machine learning di BigQuery menggunakan kueri SQL. Tujuannya adalah untuk membuat machine learning tersedia lebih luas dengan memungkinkan praktisi SQL membuat model menggunakan alat yang sudah ada, dan untuk meningkatkan kecepatan pengembangan dengan meniadakan kebutuhan akan pemindahan data.
Ada set data e-commerce yang memiliki jutaan kumpulan data Google Analytics untuk Google Merchandise Store yang dimuat ke BigQuery. Di lab ini, Anda akan menggunakan data tersebut untuk membuat model yang akan memprediksi apakah pengunjung akan melakukan transaksi atau tidak.
Yang akan Anda pelajari
Cara membuat, mengevaluasi, dan menggunakan model machine learning di BigQuery
Untuk setiap lab, Anda akan memperoleh project Google Cloud baru serta serangkaian resource selama jangka waktu tertentu, tanpa biaya.
Login ke Qwiklabs menggunakan jendela samaran.
Perhatikan waktu akses lab (misalnya, 1:15:00), dan pastikan Anda dapat menyelesaikannya dalam waktu tersebut.
Tidak ada fitur jeda. Bila perlu, Anda dapat memulai ulang lab, tetapi Anda harus memulai dari awal.
Jika sudah siap, klik Start lab.
Catat kredensial lab (Nama pengguna dan Sandi) Anda. Anda akan menggunakannya untuk login ke Google Cloud Console.
Klik Open Google Console.
Klik Use another account, lalu salin/tempel kredensial lab ini ke perintah yang muncul.
Jika menggunakan kredensial lain, Anda akan menerima pesan error atau dikenai biaya.
Setujui ketentuan dan lewati halaman resource pemulihan.
Membuka Konsol BigQuery
Di Konsol Google Cloud, pilih Navigation menu > BigQuery.
Kotak pesan Welcome to BigQuery in the Cloud Console akan terbuka. Kotak pesan ini menyediakan link ke panduan memulai dan membuat daftar update UI.
Klik Selesai.
Tugas 1. Membuat set data
Buat set data baru di dalam project Anda dengan mengklik tiga titik di samping project ID Anda di bagian Explorer, kemudian klik Create dataset.
Dialog Create dataset akan terbuka.
Masukkan bqml_lab untuk Dataset ID, lalu klik CREATE DATASET (menerima nilai default lainnya).
Tugas 2. Menjelajahi data
Data yang akan kita gunakan di lab ini berada di project bigquery-public-data yang tersedia untuk semua pengguna. Mari kita lihat contoh data ini.
Tambahkan kueri ke kotak Untitled query, lalu klik tombol Run.
#standardSQL
SELECT
IF(totals.transactions IS NULL, 0, 1) AS label,
IFNULL(device.operatingSystem, "") AS os,
device.isMobile AS is_mobile,
IFNULL(geoNetwork.country, "") AS country,
IFNULL(totals.pageviews, 0) AS pageviews
FROM
`bigquery-public-data.google_analytics_sample.ga_sessions_*`
WHERE
_TABLE_SUFFIX BETWEEN '20160801' AND '20170631'
LIMIT 10000;
Tabel data ini memiliki banyak kolom, tetapi ada beberapa yang dapat kita gunakan untuk membuat model ML. Di sini, sistem operasi perangkat pengunjung akan digunakan untuk mendapatkan informasi, seperti apakah perangkat tersebut adalah perangkat seluler atau bukan, lalu informasi terkait negara atau wilayah pengunjung. Selain itu, jumlah tayangan halaman akan digunakan sebagai kriteria untuk menentukan apakah transaksi telah dilakukan atau belum. Dalam hal ini, label adalah sesuatu yang ingin Anda sesuaikan (atau prediksi).
Data ini akan menjadi data pelatihan untuk model ML yang Anda buat. Data pelatihan dibatasi pada data yang dikumpulkan dari tanggal 1 Agustus 2016 hingga 31 Juni 2017. Hal ini dilakukan agar model dapat menyimpan data bulan terakhir untuk “prediksi”. Selanjutnya data dibatasi hingga 10.000 titik data untuk menghemat waktu.
Mari kita simpan data ini sebagai data pelatihan. Klik Save, lalu pilih Save view dari dropdown untuk menyimpan kueri ini sebagai tabel virtual. Di popup, pilih Dataset sebagai bqml_lab dan ketik training_data sebagai Table Name, lalu klik Save.
Tugas 3. Membuat model
Sekarang ganti kueri dengan yang berikut untuk membuat model guna memprediksi apakah pengunjung akan melakukan transaksi atau tidak:
#standardSQL
CREATE OR REPLACE MODEL `bqml_lab.sample_model`
OPTIONS(model_type='logistic_reg') AS
SELECT * from `bqml_lab.training_data`;
Dalam hal ini, bqml_lab adalah nama set data, sample_model adalah nama model, training_data adalah data transaksi yang telah kita lihat dalam tugas sebelumnya. Jenis model yang ditentukan adalah regresi logistik program biner.
Menjalankan perintah CREATE MODEL akan membuat Tugas Kueri berjalan secara asinkron, sehingga Anda dapat, misalnya, menutup atau memuat ulang jendela UI BigQuery.
[Opsional] Informasi model & statistik pelatihan
Jika tertarik, Anda bisa mendapatkan informasi model dengan mengklik set data bqml_lab di menu kiri, kemudian mengklik set data sample_model di UI. Di bagian Details, Anda akan menemukan beberapa info model dasar dan opsi pelatihan yang digunakan untuk menghasilkan model. Di bagian Training, Anda akan melihat tabel yang mirip dengan yang berikut:
Tugas 4. Mengevaluasi Model
Sekarang ganti kueri dengan yang berikut:
#standardSQL
SELECT
*
FROM
ml.EVALUATE(MODEL `bqml_lab.sample_model`);
Dalam kueri ini, Anda menggunakan fungsi ml.EVALUATE untuk mengevaluasi nilai yang diprediksi berdasarkan data aktual, dan fungsi ini membagikan beberapa metrik terkait cara model dijalankan. Anda akan melihat tabel yang mirip dengan yang berikut:
Tugas 5. Menggunakan model
Sekarang klik SQL query dan jalankan kueri di bawah:
#standardSQL
SELECT
IF(totals.transactions IS NULL, 0, 1) AS label,
IFNULL(device.operatingSystem, "") AS os,
device.isMobile AS is_mobile,
IFNULL(geoNetwork.country, "") AS country,
IFNULL(totals.pageviews, 0) AS pageviews,
fullVisitorId
FROM
`bigquery-public-data.google_analytics_sample.ga_sessions_*`
WHERE
_TABLE_SUFFIX BETWEEN '20170701' AND '20170801';
Anda akan menyadari bahwa bagian SELECT dan FROM pada kueri ini mirip dengan yang digunakan untuk menghasilkan data pelatihan. Ada tambahan kolom fullVisitorId yang akan Anda gunakan untuk memprediksi transaksi oleh tiap pengguna. Bagian WHERE mencerminkan perubahan jangka waktu (1 Juli hingga 1 Agustus 2017).
Mari kita simpan data July ini agar dapat digunakan dalam 2 langkah berikutnya untuk membuat prediksi menggunakan model kita. Klik Save, lalu pilih Save view dari dropdown untuk menyimpan kueri ini sebagai tabel virtual. Di popup, pilih Dataset sebagai bqml_lab dan ketik july_data sebagai Table Name, lalu klik Save.
Memprediksi pembelian berdasarkan negara/region
Dengan kueri ini, Anda akan mencoba memprediksi jumlah transaksi yang dilakukan oleh pengunjung dari tiap negara atau region, mengurutkan hasilnya, dan memilih 10 teratas berdasarkan pembelian:
#standardSQL
SELECT
country,
SUM(predicted_label) as total_predicted_purchases
FROM
ml.PREDICT(MODEL `bqml_lab.sample_model`, (
SELECT * FROM `bqml_lab.july_data`))
GROUP BY country
ORDER BY total_predicted_purchases DESC
LIMIT 10;
Dalam kueri ini, Anda menggunakan ml.PREDICT dan bagian BigQuery ML dari kueri digabungkan dengan perintah SQL standar. Untuk lab ini, Anda tertarik pada negara dan jumlah pembelian di tiap negara, jadi itulah alasannya menggunakan SELECT, GROUP BY, dan ORDER BY. LIMIT digunakan untuk memastikan Anda hanya mendapatkan 10 hasil teratas.
Anda akan melihat tabel yang mirip dengan yang berikut:
Memprediksi pembelian per pengguna
Berikut adalah contoh lainnya. Kali ini Anda akan mencoba memprediksi jumlah transaksi yang dilakukan oleh setiap pengunjung, mengurutkan hasilnya, dan memilih 10 pengunjung teratas berdasarkan transaksi:
#standardSQL
SELECT
fullVisitorId,
SUM(predicted_label) as total_predicted_purchases
FROM
ml.PREDICT(MODEL `bqml_lab.sample_model`, (
SELECT * FROM `bqml_lab.july_data`))
GROUP BY fullVisitorId
ORDER BY total_predicted_purchases DESC
LIMIT 10;
Anda akan melihat tabel yang mirip dengan yang berikut:
Mengakhiri lab Anda
Setelah Anda menyelesaikan lab, klik Akhiri Lab. Google Cloud Skills Boost menghapus resource yang telah Anda gunakan dan membersihkan akun.
Anda akan diberi kesempatan untuk menilai pengalaman menggunakan lab. Pilih jumlah bintang yang sesuai, ketik komentar, lalu klik Submit.
Makna jumlah bintang:
1 bintang = Sangat tidak puas
2 bintang = Tidak puas
3 bintang = Netral
4 bintang = Puas
5 bintang = Sangat puas
Anda dapat menutup kotak dialog jika tidak ingin memberikan masukan.
Untuk masukan, saran, atau koreksi, gunakan tab Support.
Hak cipta 2020 Google LLC Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.
Lab membuat project dan resource Google Cloud untuk jangka waktu tertentu
Lab memiliki batas waktu dan tidak memiliki fitur jeda. Jika lab diakhiri, Anda harus memulainya lagi dari awal.
Di kiri atas layar, klik Start lab untuk memulai
Gunakan penjelajahan rahasia
Salin Nama Pengguna dan Sandi yang diberikan untuk lab tersebut
Klik Open console dalam mode pribadi
Login ke Konsol
Login menggunakan kredensial lab Anda. Menggunakan kredensial lain mungkin menyebabkan error atau dikenai biaya.
Setujui persyaratan, dan lewati halaman resource pemulihan
Jangan klik End lab kecuali jika Anda sudah menyelesaikan lab atau ingin mengulanginya, karena tindakan ini akan menghapus pekerjaan Anda dan menghapus project
Konten ini tidak tersedia untuk saat ini
Kami akan memberi tahu Anda melalui email saat konten tersedia
Bagus!
Kami akan menghubungi Anda melalui email saat konten tersedia
Satu lab dalam satu waktu
Konfirmasi untuk mengakhiri semua lab yang ada dan memulai lab ini
Gunakan penjelajahan rahasia untuk menjalankan lab
Gunakan jendela Samaran atau browser pribadi untuk menjalankan lab ini. Langkah ini akan mencegah konflik antara akun pribadi Anda dan akun Siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
Di lab ini, Anda akan mempelajari cara membuat dan mengevaluasi model machine learning dengan BigQuery ML dan menggunakan model tersebut untuk memprediksi perilaku pembelian.