Kami akan memperlakukan setiap rating film positif (rating >= 4) sebagai peristiwa kunjungan halaman produk. Kita akan melatih model rekomendasi dari jenis Others You May Like yang akan membuat rekomendasi film berdasarkan pengguna atau film inti dalam set data kita.
Perkiraan waktu:
- Langkah awal untuk mulai melatih model: ~1,5 jam.
- Menunggu model dilatih: ~2 hari.
- Mengevaluasi prediksi model dan melakukan pembersihan: ~30 menit.
Tujuan
- Pelajari cara mengimpor data produk dan peristiwa pengguna dari BigQuery ke Vertex AI Search untuk commerce.
- Melatih dan mengevaluasi model rekomendasi.
Biaya
Tutorial ini menggunakan komponen Google Cloudyang dapat ditagih, termasuk:- Cloud Storage
- BigQuery
- Vertex AI Search untuk commerce
Untuk mengetahui informasi selengkapnya tentang biaya Cloud Storage, lihat halaman Harga Cloud Storage.
Untuk mengetahui informasi selengkapnya tentang biaya BigQuery, lihat halaman harga BigQuery.
Untuk mengetahui informasi selengkapnya tentang biaya Vertex AI Search untuk commerce, lihat halaman Harga Vertex AI Search untuk commerce.
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.
Menyiapkan set data
Buka Konsol Google Cloud, pilih project Google Cloud Anda. Catat project ID di kartu Project info di halaman dasbor. Anda akan memerlukan project ID untuk langkah-langkah berikut. Selanjutnya, klik tombol Activate Cloud Shell di bagian atas Konsol.
Sesi Cloud Shell akan terbuka di dalam frame baru di bagian bawah konsol Google Cloud dan menampilkan perintah command-line.
Mengimpor set data
Menggunakan Cloud Shell, download dan ekstrak set data sumber:
wget https://files.grouplens.org/datasets/movielens/ml-latest.zip unzip ml-latest.zip
Buat bucket Cloud Storage dan upload data ke dalamnya:
gcloud storage buckets create gs://PROJECT_ID-movielens-data gcloud storage cp ml-latest/movies.csv ml-latest/ratings.csv \ gs://PROJECT_ID-movielens-data
Buat set data BigQuery:
bq mk movielens
Muat
movies.csv
ke dalam tabel BigQuery film baru:bq load --skip_leading_rows=1 movielens.movies \ gs://PROJECT_ID-movielens-data/movies.csv \ movieId:integer,title,genres
Muat
ratings.csv
ke tabel BigQuery rating baru:bq load --skip_leading_rows=1 movielens.ratings \ gs://PROJECT_ID-movielens-data/ratings.csv \ userId:integer,movieId:integer,rating:float,time:timestamp
Membuat tampilan BigQuery
Buat tampilan yang mengonversi tabel film menjadi skema katalog produk retail:
bq mk --project_id=PROJECT_ID \ --use_legacy_sql=false \ --view ' SELECT CAST(movieId AS string) AS id, SUBSTR(title, 0, 128) AS title, SPLIT(genres, "|") AS categories FROM `PROJECT_ID.movielens.movies`' \ movielens.products
Sekarang tampilan baru memiliki skema yang diharapkan Vertex AI Search untuk commerce. Kemudian, dari sidebar kiri, pilih
BIG DATA -> BigQuery
. Kemudian, dari panel penjelajah di sebelah kiri, luaskan nama project Anda dan pilihmovielens -> products
untuk membuka halaman kueri untuk tampilan ini.Sekarang, mari kita konversikan rating film menjadi peristiwa pengguna. Kami akan:
- Mengabaikan rating film negatif (<4)
- Perlakukan setiap rating positif sebagai peristiwa penayangan halaman produk
(
detail-page-view
) - Ubah skala linimasa Movielens menjadi 90 hari terakhir. Kami melakukannya karena dua
alasan:
- Vertex AI Search untuk commerce mewajibkan peristiwa pengguna tidak lebih lama dari tahun 2015. Rating Movielens sudah ada sejak tahun 1995.
- Vertex AI Search untuk commerce menggunakan peristiwa pengguna dalam 90 hari terakhir saat menayangkan permintaan prediksi untuk pengguna. Setiap pengguna akan tampak memiliki peristiwa terbaru saat kami membuat prediksi untuk pengguna mana pun nanti.
Buat tampilan BigQuery. Perintah berikut menggunakan kueri SQL yang memenuhi persyaratan konversi yang tercantum di atas.
bq mk --project_id=PROJECT_ID \ --use_legacy_sql=false \ --view ' WITH t AS ( SELECT MIN(UNIX_SECONDS(time)) AS old_start, MAX(UNIX_SECONDS(time)) AS old_end, UNIX_SECONDS(TIMESTAMP_SUB( CURRENT_TIMESTAMP(), INTERVAL 90 DAY)) AS new_start, UNIX_SECONDS(CURRENT_TIMESTAMP()) AS new_end FROM `PROJECT_ID.movielens.ratings`) SELECT CAST(userId AS STRING) AS visitorId, "detail-page-view" AS eventType, FORMAT_TIMESTAMP( "%Y-%m-%dT%X%Ez", TIMESTAMP_SECONDS(CAST( (t.new_start + (UNIX_SECONDS(time) - t.old_start) * (t.new_end - t.new_start) / (t.old_end - t.old_start)) AS int64))) AS eventTime, [STRUCT(STRUCT(movieId AS id) AS product)] AS productDetails, FROM `PROJECT_ID.movielens.ratings`, t WHERE rating >= 4' \ movielens.user_events
Mengimpor katalog produk dan peristiwa pengguna
Sekarang kita siap untuk mengimpor katalog produk dan data peristiwa pengguna ke dalam Vertex AI Search untuk commerce.
Aktifkan API Vertex AI Search for commerce untuk project Google Cloud Anda.
Klik Get started.
Buka halaman Data> di konsol Penelusuran untuk Commerce.
Buka halaman DataKlik Import.
Mengimpor katalog produk
Isi formulir untuk mengimpor produk dari tampilan BigQuery yang Anda buat di atas:
- Pilih jenis impor: Katalog Produk.
- Pilih nama cabang default.
- Pilih sumber data: BigQuery.
- Pilih skema data: Retail Product Schema.
Masukkan nama tampilan BigQuery produk yang Anda buat di atas (
PROJECT_ID.movielens.products
).
Klik Import.
Tunggu hingga semua produk diimpor, yang akan memerlukan waktu 5–10 menit.
Anda dapat memeriksa aktivitas impor untuk mengetahui status operasi impor. Setelah impor selesai, status operasi impor akan berubah menjadi Berhasil.
Mengimpor peristiwa pengguna
Impor tampilan BigQuery user_events:
- Pilih jenis impor: Peristiwa Pengguna.
- Pilih sumber data: BigQuery.
- Pilih skema data: Skema Peristiwa Pengguna Retail.
- Masukkan nama tampilan BigQuery
user_events
yang Anda buat di atas.
Klik Import.
Tunggu hingga minimal satu juta peristiwa telah diimpor sebelum melanjutkan ke langkah berikutnya, untuk memenuhi persyaratan data guna melatih model baru.
Anda dapat memeriksa aktivitas impor untuk mengetahui status operasi. Proses ini memerlukan waktu sekitar satu jam untuk diselesaikan.
Melatih dan mengevaluasi model rekomendasi
Membuat model rekomendasi
Buka halaman Models di konsol Search for commerce.
Buka halaman ModelKlik Create model:
- Beri nama model.
- Pilih Lainnya yang mungkin Anda sukai sebagai jenis model.
- Pilih Rasio klik-tayang (CTR) sebagai tujuan bisnis.
Klik Create.
Model baru Anda mulai dilatih.
Membuat konfigurasi inferensi
Buka halaman Serving Configs di konsol Penelusuran untuk Commerce.
Buka halaman Konfigurasi penayanganKlik Create serving config:
- Pilih Rekomendasi.
- Beri nama konfigurasi penayangan.
- Pilih model yang Anda buat.
Klik Create.
Tunggu hingga model menjadi "Siap membuat kueri"
Diperlukan waktu sekitar dua hari untuk melatih model dan siap membuat kueri.
Untuk melihat status, klik konfigurasi penayangan yang dibuat di halaman Konfigurasi penayangan.
Kolom Model ready to query menunjukkan Yes saat proses selesai.
Pratinjau rekomendasi
Setelah model siap untuk membuat kueri:
-
Buka halaman Serving Configs di konsol Penelusuran untuk Commerce.
Buka halaman Konfigurasi penayangan - Klik nama konfigurasi penayangan untuk membuka halaman detailnya.
- Klik tab *Evaluate.
Masukkan ID film seed, seperti
4993
untuk "The Lord of the Rings: The Fellowship of the Ring (2001)".Klik Pratinjau prediksi untuk melihat daftar item yang direkomendasikan di sebelah kanan halaman.
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
- 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.
Menghapus resource satu per satu
Buka halaman Konfigurasi penayangan dan hapus konfigurasi penayangan yang Anda buat.
Buka halaman Model dan hapus model.
Hapus set data BigQuery di Cloud Shell:
bq rm --recursive --dataset movielens
Hapus bucket Cloud Storage dan isinya:
gcloud storage rm gs://PROJECT_ID-movielens-data --recursive