arrow_back

Memprediksi Pembelian oleh Pengunjung dengan BigQuery ML

Login Gabung
Dapatkan akses ke 700+ lab dan kursus

Memprediksi Pembelian oleh Pengunjung dengan BigQuery ML

Lab 1 jam 30 menit universal_currency_alt 5 Kredit show_chart Pengantar
info Lab ini mungkin menggabungkan alat AI untuk mendukung pembelajaran Anda.
Dapatkan akses ke 700+ lab dan kursus

Ringkasan

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

Yang akan Anda butuhkan

  • Browser, seperti Chrome atau Firefox
  • Pengetahuan dasar terkait SQL atau BigQuery

Penyiapan dan persyaratan

Untuk setiap lab, Anda akan memperoleh project Google Cloud baru serta serangkaian resource selama jangka waktu tertentu, tanpa biaya.

  1. Login ke Qwiklabs menggunakan jendela samaran.

  2. 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.

  3. Jika sudah siap, klik Start lab.

  4. Catat kredensial lab (Nama pengguna dan Sandi) Anda. Anda akan menggunakannya untuk login ke Google Cloud Console.

  5. Klik Open Google Console.

  6. 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.

  7. Setujui ketentuan dan lewati halaman resource pemulihan.

Membuka Konsol BigQuery

  1. 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.

  1. Klik Selesai.

Tugas 1. Membuat set data

  1. 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.

  1. 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.

  1. 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.

  1. 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:

Sebuah tabel enam kolom dengan 11 baris data yang terkait dengan iterasi, kehilangan data, kecepatan pembelajaran, waktu selesai

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:

Tabel hasil

Tugas 5. Menggunakan model

  1. 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).

  1. 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.

  2. 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:

Tabel tiga kolom dengan 10 baris data yang berkaitan dengan total pembelian yang diprediksi per negara

  1. 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:

Tabel tiga kolom dengan 10 baris data yang berkaitan dengan total pembelian yang diprediksi per ID pengunjung lengkap

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.

Sebelum memulai

  1. Lab membuat project dan resource Google Cloud untuk jangka waktu tertentu
  2. Lab memiliki batas waktu dan tidak memiliki fitur jeda. Jika lab diakhiri, Anda harus memulainya lagi dari awal.
  3. Di kiri atas layar, klik Start lab untuk memulai

Gunakan penjelajahan rahasia

  1. Salin Nama Pengguna dan Sandi yang diberikan untuk lab tersebut
  2. Klik Open console dalam mode pribadi

Login ke Konsol

  1. Login menggunakan kredensial lab Anda. Menggunakan kredensial lain mungkin menyebabkan error atau dikenai biaya.
  2. Setujui persyaratan, dan lewati halaman resource pemulihan
  3. 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.