Topik ini menjelaskan cara menggunakan SQL di AnalyticDB for MySQL untuk menerapkan model Behavior Sequence Transformer (BST) dalam menjalankan tugas pembelajaran mesin. Topik ini mencakup seluruh alur kerja, mulai dari transformasi data dan pembuatan model hingga pelatihan, evaluasi, dan prediksi.
Kasus penggunaan
Anda dapat menggunakan kueri SQL untuk pelatihan dan inferensi model, sehingga memungkinkan prapemrosesan data, pelatihan, dan inferensi dilakukan sepenuhnya dalam SQL.
AnalyticDB for MySQL mendukung model BST. Model ini cocok untuk aplikasi yang memerlukan pemahaman pola perilaku pengguna, analisis preferensi pengguna, prediksi tren masa depan, serta penerapan rekomendasi personalisasi. Misalnya, dalam e-commerce atau gaming, model BST dapat menangkap ketergantungan jangka panjang dalam perilaku pengguna, sehingga memungkinkan prediksi pola dan preferensi pengguna yang lebih akurat serta pengiriman layanan dan rekomendasi yang dipersonalisasi.
Prasyarat
Kluster AnalyticDB for MySQL Edisi Perusahaan, Edisi Dasar, atau Edisi Data Lakehouse telah dibuat.
Versi kernel kluster Anda harus 3.2.4.0 atau lebih baru.
CatatanUntuk melihat dan memperbarui versi minor, buka bagian Configuration Information pada halaman Cluster Information di Konsol AnalyticDB for MySQL.
Langkah 1: Buat dan kaitkan kelompok sumber daya
Menjalankan tugas pembelajaran mesin dengan SQL memerlukan dua jenis kelompok sumber daya:
Kelompok sumber daya AI: Mengelola resource GPU yang diperlukan untuk operasi komputasi-intensif seperti pelatihan dan prediksi model.
Kelompok sumber daya reguler: Memproses kueri SQL standar, seperti yang menghasilkan data pelatihan atau memanggil fungsi prediksi.
Saat Anda mengirimkan kueri SQL, kueri tersebut pertama-tama dikirim ke kelompok sumber daya reguler. Jika sistem mendeteksi bahwa kueri tersebut memerlukan komputasi AI, tugas tersebut secara otomatis diteruskan ke kelompok sumber daya AI yang telah di-bind untuk dieksekusi.
Untuk melakukannya, buat kelompok sumber daya AI dan bind-kan ke kelompok sumber daya reguler.
Masuk ke Konsol AnalyticDB for MySQL. Di pojok kiri atas konsol, pilih Wilayah. Di panel navigasi sebelah kiri, klik Clusters. Temukan kluster yang ingin Anda kelola lalu klik ID kluster tersebut.
Di panel navigasi sebelah kiri, pilih Cluster Management > Resource Management, lalu klik tab Resource Groups.
Di pojok kanan atas daftar kelompok sumber daya, klik Create Resource Group untuk membuat kelompok sumber daya AI.
Parameter
Deskripsi
Resource Group Name
Nama kustom untuk kelompok sumber daya. Nama harus terdiri dari 2 hingga 30 karakter, dimulai dengan huruf, dan hanya boleh berisi huruf, angka, serta garis bawah (_).
Job Type
Dari daftar drop-down, pilih AI.
PentingJika opsi AI tidak tersedia, fitur kelompok sumber daya AI belum diaktifkan untuk kluster Anda. Hubungi dukungan teknis untuk mengaktifkannya.
Specifications
Kombinasi resource GPU, CPU, dan memori. Anda dapat memilih ADB.MLLarge.24, ADB.MLLarge.2, atau ADB.MLAdvanced.6.
Minimum Resources
Jumlah minimum unit sumber daya.
Maximum Resources
Jumlah maksimum unit sumber daya.
Klik OK untuk membuat kelompok sumber daya.
Temukan kelompok sumber daya reguler yang dituju. Di kolom Actions, klik Modify. Gunakan pengaturan ML Job Resubmission Rules untuk meng-bind kelompok sumber daya reguler ke kelompok sumber daya AI yang baru dibuat.
Langkah 2: Transformasi data
Transformasi data adalah proses mengonversi data mentah ke format yang sesuai untuk pelatihan model. Proses ini bergantung pada tiga faktor utama: format data mentah, lokasi penyimpanannya, dan persyaratan data masukan model.
Persyaratan skema tabel untuk data pelatihan
Kolom fitur input: Kolom ini harus berupa string dan berisi rangkaian bilangan bulat yang dipisahkan koma. Setiap entri merepresentasikan vektor fitur suatu sampel.
Kolom label target: Kolom ini harus berisi salah satu dari dua nilai, misalnya 0 atau 1, untuk merepresentasikan label kelas.
Contoh: ('1,2,3',0), ('3,2,1',1).
Metode transformasi data
Jika data mentah Anda tidak dalam format yang diperlukan untuk pelatihan model, gunakan metode berikut untuk mengubahnya:
Siapkan paket JAR: Kemas program transformasi data Spark Anda ke dalam file JAR dan unggah ke Bucket OSS.
Konfigurasikan parameter job Spark: Saat mengirimkan job Spark, konfigurasikan parameter yang diperlukan. Untuk informasi selengkapnya, lihat parameter konfigurasi aplikasi Spark.
Jika data mentah Anda sudah memenuhi persyaratan format untuk pelatihan model, Anda dapat melewati langkah ini.
Langkah 3: Buat dan latih model
Buat model pembelajaran mesin, definisikan parameternya, tentukan data pelatihan, lalu periksa status model.
Di panel navigasi sebelah kiri, pilih .
Di SQL Console, gunakan pernyataan
CREATE MODELuntuk membuat dan melatih model.
-- Buat model.
-- Tentukan kelompok sumber daya.
/*+resource_group=itrain*/
CREATE MODEL bstdemo.bst-- Nama model
OPTIONS (
model_type='bst_classification', -- Jenis model
feature_cols=(event_list), -- Kolom fitur input
target_cols=(target), -- Kolom target untuk diprediksi
hyperparameters = ( -- Hiperparameter model lainnya
use_best_ckpt = 'False',
early_stopping_patience='0'
)
)
AS SELECT event_list, target FROM bstdemo.adb; -- Menentukan sumber data untuk pelatihan model.
-- Periksa status pelatihan model. Pelatihan selesai ketika statusnya READY.
SHOW MODEL bstdemo.bst;Langkah 4: Evaluasi model
Evaluasi model pembelajaran mesin yang telah dilatih untuk menilai kinerjanya.
-- Sintaks pernyataan mirip dengan CREATE MODEL.
/*resource_group=rg1*/
EVALUATE MODEL bstdemo.bst
OPTIONS (
feature_cols=(event_list),
target_cols=(target),
)
AS SELECT event_list, target FROM bstdemo.adb01;Langkah 5: Lakukan prediksi
Pilih kolom fitur dari tabel, teruskan data ke model yang telah dilatih, dan peroleh hasil prediksi berdasarkan data masukan.
-- Gunakan model yang telah dilatih untuk melakukan prediksi.
-- Parameter pertama ML_PREDICT adalah nama model, dan parameter berikutnya adalah kolom input.
SELECT ML_PREDICT('bstdemo.bst', event_list) FROM bstdemo.adb02;