Checkpoint
Create a new dataset
/ 20
Create a model and specify model options
/ 20
Evaluate classification model performance
/ 15
Improve model performance with Feature Engineering(Create second model)
/ 15
Improve model performance with Feature Engineering(Better predictive power)
/ 15
Predict which new visitors will come back and purchase
/ 15
Memprediksi Pembelian oleh Pengunjung dengan Model Klasifikasi dalam BigQuery ML
- GSP229
- Ringkasan
- Penyiapan dan persyaratan
- Tugas 1. Mempelajari data e-commerce
- Tugas 2. Mengidentifikasi tujuan
- Tugas 3. Memilih fitur dan membuat set data pelatihan
- Tugas 4. Membuat set data BigQuery untuk menyimpan model
- Tugas 5. Memilih jenis model BigQuery ML dan menentukan opsi
- Tugas 6. Mengevaluasi performa model klasifikasi
- Tugas 7. Meningkatkan performa model dengan Rekayasa Fitur
- Tugas 8. Memprediksi pengunjung baru yang akan kembali dan melakukan pembelian
- Tugas 9. Menganalisis hasil dan informasi tambahan
- Tugas 10. Menguji pengetahuan Anda
- Selamat!
GSP229
Ringkasan
BigQuery adalah database analisis NoOps berbiaya rendah yang terkelola sepenuhnya dari Google. Dengan BigQuery, Anda dapat melakukan kueri pada data berukuran terabyte tanpa harus memiliki administrator database atau infrastruktur apa pun yang perlu dikelola. BigQuery menggunakan SQL dan memanfaatkan model bayar sesuai penggunaan. Dengan BigQuery, Anda dapat berfokus pada analisis data untuk menemukan insight yang bermakna.
BigQuery ML adalah fitur dalam BigQuery yang dapat digunakan oleh analis data untuk membuat, melatih, mengevaluasi, dan memprediksi menggunakan model machine learning hanya dengan sedikit coding.
Di lab ini, Anda akan menggunakan set data e-commerce khusus yang memiliki jutaan kumpulan data Google Analytics untuk Google Merchandise Store, yang dimuat ke dalam BigQuery. Anda akan menggunakan data ini untuk membuat model klasifikasi (regresi logistik) di BigQuery ML yang memprediksi kebiasaan pembelian pelanggan.
Yang akan Anda pelajari
Di lab ini, Anda akan mempelajari cara melakukan tugas berikut:
- Menggunakan BigQuery untuk menemukan set data publik
- Membuat kueri dan mempelajari set data e-commerce
- Membuat set data pelatihan dan evaluasi yang akan digunakan untuk prediksi batch
- Membuat model klasifikasi (regresi logistik) di BigQuery ML
- Mengevaluasi dan meningkatkan performa model machine learning Anda
- Memprediksi dan memberi peringkat atas probabilitas pengunjung melakukan pembelian.
Penyiapan dan persyaratan
Sebelum mengklik tombol Mulai Lab
Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer, yang dimulai saat Anda mengklik Start Lab, akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.
Lab praktik ini dapat Anda gunakan untuk melakukan sendiri aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.
Untuk menyelesaikan lab ini, Anda memerlukan:
- Akses ke browser internet standar (disarankan browser Chrome).
- Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Cara memulai lab dan login ke Google Cloud Console
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, jendela pop-up akan terbuka untuk memilih metode pembayaran. Di sebelah kiri adalah panel Lab Details dengan info berikut:
- Tombol Open Google Cloud console
- Waktu tersisa
- Kredensial sementara yang harus Anda gunakan untuk lab ini
- Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
-
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account. -
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}} Anda juga dapat menemukan Username di panel Lab Details.
-
Klik Next.
-
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}} Anda juga dapat menemukan Password di panel Lab Details.
-
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda. Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan. -
Klik halaman berikutnya:
- Setujui persyaratan dan ketentuan.
- Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
- Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Membuka konsol BigQuery
- Di Google Cloud Console, pilih Navigation menu > BigQuery.
Kotak pesan Welcome to BigQuery in the Cloud Console akan terbuka. Kotak pesan ini menyediakan link ke panduan memulai dan catatan rilis.
- Klik Done.
Konsol BigQuery terbuka.
Mengakses set data kursus
- Di Explorer pane, klik + ADD.
Panel Add data
akan terbuka.
-
Klik Star a project by name di bagian bawah Additional sources.
-
Masukkan
data-to-insights
lalu klik Star.
Klik link langsung di bawah untuk melihat project data-to-insights publik:
Definisi kolom untuk set data e-commerce data-to-insights ada di sini. Biarkan link tetap terbuka di tab yang baru sebagai referensi.
Klik tab Query, lalu pilih In new tab untuk membuka Editor Kueri.
Tugas 1. Mempelajari data e-commerce
Skenario: Tim analis data mengekspor log Google Analytics pada situs e-commerce ke dalam BigQuery dan membuat tabel baru yang berisi semua data mentah sesi pengunjung e-commerce untuk Anda pelajari. Dengan menggunakan data ini, Anda akan mencoba menjawab beberapa pertanyaan.
Pertanyaan: Dari total pengunjung yang mengunjungi situs kami, berapa % yang melakukan pembelian?
- Salin dan tempel kueri berikut ke dalam Editor BigQuery:
- Klik Run.
Hasilnya: 2,69%
Pertanyaan: Apa saja 5 produk penjualan teratas?
- Hapus kueri sebelumnya, lalu tambahkan kueri berikut di Editor:
- Klik RUN
Hasilnya:
Baris |
v2ProductName |
v2ProductCategory |
units_sold |
revenue |
1 |
Nest® Learning Thermostat 3rd Gen-USA - Stainless Steel |
Nest-USA |
17651 |
870976,95 |
2 |
Nest® Cam Outdoor Security Camera - USA |
Nest-USA |
16930 |
684034,55 |
3 |
Nest® Cam Indoor Security Camera - USA |
Nest-USA |
14155 |
548104,47 |
4 |
Nest® Protect Smoke + CO White Wired Alarm-USA |
Nest-USA |
6394 |
178937,6 |
5 |
Nest® Protect Smoke + CO White Battery Alarm-USA |
Nest-USA |
6340 |
178572,4 |
Pertanyaan: Berapa banyak pengunjung yang melakukan pembelian pada kunjungan berikutnya ke situs?
- Hapus kueri sebelumnya, lalu tambahkan kueri berikut di Editor:
- Klik Run.
Hasilnya:
Baris |
total_visitors |
will_buy_on_return_visit |
1 |
729848 |
0 |
2 |
11873 |
1 |
Dengan menganalisis hasilnya, Anda dapat melihat bahwa (11.873/741.721) = 1,6% dari total pengunjung akan kembali ke situs dan melakukan pembelian. Hasil ini termasuk sebagian pengunjung yang melakukan pembelian pada sesi pertama, lalu kembali dan membeli lagi.
Pertanyaan: Apa saja alasan pelanggan e-commerce umum yang hanya melihat-lihat, tetapi tidak melakukan pembelian hingga kunjungan berikutnya?
Jawaban: Meskipun tidak ada jawaban yang benar, salah satu alasan populer adalah mereka melakukan perbandingan belanja antara berbagai situs e-commerce sebelum akhirnya membuat keputusan pembelian. Hal ini sangat umum terjadi pada barang-barang mewah seperti mobil, karena pelanggan perlu mencari informasi dan melakukan perbandingan secara mendalam terlebih dahulu sebelum memutuskan untuk melakukan pembelian. Begitu pula halnya untuk merchandise yang dijual di situs ini, seperti kaos, aksesori, dll.
Dalam dunia online marketing, mengidentifikasi dan memasarkan kepada calon pelanggan berdasarkan karakteristik kunjungan pertama akan meningkatkan rasio konversi dan mengurangi kunjungan ke situs-situs pesaing.
Tugas 2. Mengidentifikasi tujuan
Sekarang Anda akan membuat model Machine Learning di BigQuery untuk memprediksi apakah pengguna baru akan melakukan pembelian di masa mendatang atau tidak. Mengidentifikasi pengguna bernilai tinggi ini dapat membantu tim pemasaran menarget calon pelanggan dengan promosi khusus dan kampanye iklan guna memastikan terjadinya konversi saat mereka melakukan perbandingan belanja di antara kunjungan ke situs e-commerce Anda.
Tugas 3. Memilih fitur dan membuat set data pelatihan
Google Analytics menangkap berbagai macam dimensi dan pengukuran terkait kunjungan pengguna di situs e-commerce ini. Jelajahi daftar lengkap kolom dalam dokumentasi skema BigQuery Export [UA] lalu pratinjau set data demo untuk menemukan fitur yang berguna yang akan membantu model machine learning memahami hubungan antara data terkait pengunjung yang baru pertama kali mengunjungi situs Anda, serta apakah mereka akan kembali lagi dan melakukan pembelian atau tidak.
Tim Anda memutuskan untuk menguji apakah kedua kolom ini adalah input yang baik untuk model klasifikasi Anda:
-
totals.bounces
(apakah pengunjung langsung meninggalkan situs) -
totals.timeOnSite
(berapa lama pengunjung berada di situs kita)
Pertanyaan: Apa saja risikonya jika hanya menggunakan dua kolom di atas?
Jawaban: Kualitas machine learning bergantung pada kualitas data yang digunakan untuk melatihnya. Jika tidak ada informasi yang cukup bagi model untuk menentukan dan mempelajari hubungan antara fitur input dan label (dalam hal ini, apakah pengunjung melakukan pembelian di masa mendatang atau tidak), maka Anda tidak akan memiliki model yang akurat. Meskipun melatih model pada dua kolom ini adalah langkah awal, Anda akan memahami apakah keduanya cukup baik atau tidak untuk menghasilkan model yang akurat.
- Di Editor BigQuery, jalankan kueri berikut:
Hasil:
Baris |
bounces |
time_on_site |
will_buy_on_return_visit |
1 |
0 |
15047 |
0 |
2 |
0 |
12136 |
0 |
3 |
0 |
11201 |
0 |
4 |
0 |
10046 |
0 |
5 |
0 |
9974 |
0 |
6 |
0 |
9564 |
0 |
7 |
0 |
9520 |
0 |
8 |
0 |
9275 |
1 |
9 |
0 |
9138 |
0 |
10 |
0 |
8872 |
0 |
Pertanyaan: Kolom mana yang merupakan fitur input dan label?
Jawaban: Inputnya adalah bounces dan time_on_site. Labelnya adalah will_buy_on_return_visit.
Pertanyaan: Dua kolom apa saja yang diketahui setelah sesi pertama pengunjung?
Jawaban: bounces dan time_on_site diketahui setelah sesi pertama pengunjung.
Pertanyaan: Kolom mana yang nilainya tidak diketahui hingga nanti di masa mendatang?
Jawaban: will_buy_on_return_visit tidak diketahui setelah kunjungan pertama. Sekali lagi, Anda memprediksi sebagian pengguna yang kembali ke situs dan melakukan pembelian. Karena tidak mengetahui waktu prediksi di masa mendatang, Anda tidak dapat mengatakan dengan pasti apakah pengunjung baru akan kembali dan melakukan pembelian atau tidak. Nilai dari membangun model ML adalah mendapatkan probabilitas pembelian di masa mendatang berdasarkan data yang diperoleh dari sesi kunjungan pertama mereka.
Pertanyaan: Dengan melihat hasil data di awal, apakah time_on_site dan bounces akan menjadi indikator yang baik terkait apakah pengguna akan kembali dan melakukan pembelian atau tidak?
Jawaban: Sering kali terlalu dini untuk menyimpulkan sebelum melatih dan mengevaluasi model, namun secara sekilas dari 10 besar time_on_site
, hanya 1 pelanggan yang kembali ke situs dan melakukan pembelian, dan hal ini tidak terlalu menjanjikan. Mari kita lihat seberapa baik model ini bekerja.
Tugas 4. Membuat set data BigQuery untuk menyimpan model
Selanjutnya, buatlah set data BigQuery baru yang juga akan menyimpan model ML Anda.
- Pada panel kiri, di bagian bawah Explorer, klik ikon View actions di sebelah nama project (diawali dengan
qwiklabs-gcp-...
), lalu klik Create dataset.
- Di dialog Create dataset:
- Untuk Dataset ID, ketik "ecommerce".
- Biarkan semua nilai lainnya dalam setelan default.
- Klik Create dataset.
Klik Check my progress untuk memverifikasi tujuan.
Tugas 5. Memilih jenis model BigQuery ML dan menentukan opsi
Setelah memilih fitur awal, sekarang Anda siap untuk membuat model ML pertama Anda di BigQuery.
Ada dua jenis model yang bisa dipilih:
Model |
Jenis Model |
Jenis Data Label |
Contoh |
Perkiraan |
linear_reg |
Nilai numerik (biasanya berupa bilangan bulat atau floating point) |
Perkiraan angka penjualan untuk tahun berikutnya berdasarkan data historis penjualan. |
Klasifikasi |
logistic_reg |
0 atau 1 untuk klasifikasi biner |
Klasifikasikan email sebagai spam atau bukan spam berdasarkan konteksnya. |
Jenis model mana yang sebaiknya Anda pilih?
Karena Anda membagi pengunjung menjadi “akan membeli di masa mendatang” atau “tidak akan membeli di masa mendatang”, gunakan logistic_reg
dalam model klasifikasi.
Kueri berikut membuat model dan menentukan opsi model.
- Jalankan kueri ini untuk melatih model Anda:
- Tunggu sampai model tersebut selesai dilatih (5-10 menit).
Klik Check my progress untuk memverifikasi tujuan.
Setelah model dilatih, Anda akan melihat pesan yang bertuliskan “This statement created a new model named qwiklabs-gcp-xxxxxxxxx:ecommerce.classification_model".
-
Klik Go to model.
-
Lihat ke dalam set data e-commerce dan pastikan classification_model sekarang muncul.
Selanjutnya, Anda akan mengevaluasi performa model terhadap data evaluasi baru yang belum pernah dilihat sebelumnya.
Tugas 6. Mengevaluasi performa model klasifikasi
Pilih kriteria performa Anda
Untuk masalah klasifikasi di ML, Anda disarankan untuk meminimalkan Rasio Positif Palsu (memprediksi pengguna akan kembali dan membeli, tetapi ternyata tidak) dan memaksimalkan Rasio Positif Benar (memprediksi pengguna akan kembali dan membeli, dan mereka melakukannya).
Hubungan ini divisualisasikan dengan kurva KOP (Karakteristik Operasi Penerima) seperti yang ditunjukkan di sini, tempat Anda mencoba memaksimalkan area di bawah kurva atau AUC:
Di BigQuery ML, roc_auc hanyalah sebuah bidang yang dapat dikueri ketika mengevaluasi model ML terlatih.
- Setelah pelatihan selesai, jalankan kueri ini untuk mengevaluasi seberapa baik performa model dengan menggunakan
ML.EVALUATE
:
Anda akan melihat hasil berikut:
Baris |
roc_auc |
model_quality |
1 |
0.7238561438561438 |
decent |
Setelah mengevaluasi model, Anda akan mendapatkan roc_auc sebesar 0,72, yang menunjukkan bahwa model ini memiliki kemampuan prediksi yang cukup baik, tetapi tidak terlalu baik. Karena tujuannya adalah mendapatkan area di bawah kurva sedekat mungkin dengan 1,0, masih ada ruang untuk perbaikan.
Klik Check my progress untuk memverifikasi tujuan.
Tugas 7. Meningkatkan performa model dengan Rekayasa Fitur
Seperti yang telah dibahas sebelumnya, ada lebih banyak fitur dalam set data yang dapat membantu model lebih memahami hubungan antara sesi pertama pengunjung dan kemungkinan mereka akan melakukan pembelian pada kunjungan berikutnya.
- Tambahkan beberapa fitur baru dan buat model machine learning kedua yang disebut
classification_model_2
:
- Seberapa jauh proses checkout telah dilakukan oleh pengunjung pada kunjungan pertama mereka
- Dari mana pengunjung berasal (sumber traffic: penelusuran organik, situs pengarah, dll.)
- Kategori perangkat (seluler, tablet, desktop)
- Informasi geografis (negara)
- Buat model kedua ini dengan mengklik ikon "+" (Tulis Kueri Baru):
Fitur utama baru yang ditambahkan ke kueri set data pelatihan adalah progres checkout maksimum yang dicapai tiap pengunjung dalam sesi mereka, yang dicatat di kolom hits.eCommerceAction.action_type
. Jika Anda mencari kolom tersebut di bagian field definitions, Anda akan menemukan pemetaan kolom 6 = Completed Purchase.
- Tunggu sampai model baru selesai dilatih (5-10 menit).
Klik Check my progress untuk memverifikasi tujuan.
- Evaluasi model baru ini untuk melihat apakah ada kemampuan prediksi yang lebih baik atau tidak:
Output:
Baris |
roc_auc |
model_quality |
1 |
0.9094875124875125 |
good |
Dengan model baru ini, Anda sekarang mendapatkan roc_auc sebesar 0,91 yang secara signifikan lebih baik daripada model pertama.
Setelah Anda memiliki model terlatih, saatnya untuk membuat beberapa prediksi.
Klik Check my progress untuk memverifikasi tujuan.
Tugas 8. Memprediksi pengunjung baru yang akan kembali dan melakukan pembelian
Selanjutnya, Anda akan menulis kueri untuk memprediksi pengunjung baru yang akan kembali dan melakukan pembelian.
- Kueri prediksi di bawah menggunakan model klasifikasi yang telah ditingkatkan untuk memprediksi probabilitas pengunjung kali pertama ke Google Merchandise Store akan melakukan pembelian pada kunjungan berikutnya:
Prediksi dibuat dalam 1 bulan terakhir (dari 12 bulan) pada set data.
Klik Check my progress untuk memverifikasi tujuan.
Model Anda sekarang mengeluarkan prediksinya untuk sesi e-commerce pada bulan Juli 2017. Anda dapat melihat tiga kolom yang baru ditambahkan:
- predicted_will_buy_on_return_visit: apakah model tersebut beranggapan bahwa pengunjung akan membeli nantinya (1 = ya)
- predicted_will_buy_on_return_visit_probs.label: pengklasifikasi program biner untuk ya/tidak
- predicted_will_buy_on_return_visit.probs.prob: keyakinan yang dimiliki model dalam memprediksi (1 = 100%)
Tugas 9. Menganalisis hasil dan informasi tambahan
Hasil
- Dari 6% pengunjung kali pertama teratas (diurutkan berdasarkan urutan menurun pada probabilitas yang diprediksi), lebih dari 6% melakukan pembelian pada kunjungan berikutnya.
- Pengguna ini mewakili hampir 50% dari semua pengunjung kali pertama yang melakukan pembelian pada kunjungan berikutnya.
- Secara keseluruhan, hanya 0,7% pengunjung kali pertama yang datang melakukan pembelian pada kunjungan berikutnya.
- Menarget 6% pengunjung kali pertama teratas akan meningkatkan ROI pemasaran sebesar 9 kali lipat dibandingkan dengan menarget semuanya.
Informasi tambahan
Tips: tambahkan warm_start = true
pada opsi model jika Anda melatih ulang data baru pada model yang sudah ada, sehingga waktu pelatihan menjadi lebih cepat. Perlu diperhatikan bahwa Anda tidak dapat mengubah kolom fitur karena Anda akan memerlukan model baru.
roc_auc hanyalah salah satu metrik performa yang tersedia selama evaluasi model. Akurasi, presisi, dan perolehan juga tersedia. Mengetahui metrik performa mana yang dapat diandalkan sangat bergantung pada tujuan atau sasaran Anda secara keseluruhan.
Set data lain untuk dipelajari
Anda dapat menggunakan project bigquery-public-data jika ingin mempelajari pemodelan pada set data lain seperti memperkirakan tarif perjalanan taksi.
- Untuk membuka set data bigquery-public-data, klik +Add. Klik Star a project by name di bagian bawah Additional sources.
- Lalu tuliskan nama
bigquery-public-data
. - Klik Star.
Project bigquery-public-data
akan tercantum di bagian Explorer.
Tugas 10. Menguji pengetahuan Anda
Uji pengetahuan Anda tentang Google Cloud Platform dengan mengikuti kuis dari kami.
Selamat!
Anda telah berhasil membangun model machine learning dengan BigQuery ML untuk mengklasifikasikan pengunjung e-commerce dan memprediksi kebiasaan pembelian mereka.
Langkah berikutnya/Pelajari lebih lanjut
- Punya akun Google Analytics dan ingin melakukan kueri set data Anda sendiri di BigQuery? Dari halaman Bantuan Analytics, ikuti Panduan Menyiapkan BigQuery Export.
- Untuk mengetahui referensi pembuatan kueri, lihat Referensi Sintaksis Kueri di halaman BigQuery.
- Lihat lab ini: Memprediksi Tarif Taksi dengan Model Perkiraan BigQuery ML
Sertifikasi dan pelatihan Google Cloud
...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.
Manual Terakhir Diperbarui pada 07 Februari 2024
Lab Terakhir Diuji pada 09 Oktober 2023
Hak cipta 2024 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.