Swing Recommendation adalah komponen yang disediakan oleh Swing untuk memprediksi data batch hulu. Komponen ini digunakan untuk melakukan prediksi offline di Platform for AI (PAI) berdasarkan model dan data prediksi yang dihasilkan oleh komponen Swing Train. Topik ini menjelaskan konfigurasi parameter dari komponen Swing Recommendation.
Batasan
Komponen Swing Train dapat digunakan dengan sumber daya komputasi MaxCompute dan Realtime Compute for Apache Flink.
Konfigurasikan komponen
Anda dapat mengonfigurasi komponen menggunakan salah satu metode berikut:
Metode 1: Konfigurasikan komponen di konsol PAI
Konfigurasikan komponen Swing Recommendation pada halaman pipeline Machine Learning Designer. Tabel berikut menjelaskan parameter-parameter tersebut.
Tab | Parameter | Deskripsi |
Fields Setting | itemCol | Nama kolom item. |
initRecommCol | Nama kolom item yang direkomendasikan awal. | |
reservedCols | Nama kolom yang dicadangkan untuk algoritma. | |
Parameters Setting | recommCol | Nama kolom hasil rekomendasi. |
k | Jumlah item rekomendasi teratas. Nilai default: 10. | |
numThreads | Jumlah thread komponen. Nilai default: 1. | |
Execute Tuning | Number of Workers | Jumlah node pekerja. Nilainya harus bilangan bulat positif. Parameter ini harus digunakan bersama dengan parameter Memory per worker. Nilai valid: 1 hingga 9999. |
Memory per worker | Ukuran memori setiap node pekerja. Unit: MB. Nilainya harus bilangan bulat positif. Nilai valid: 1024 hingga 65536 (64 × 1024). |
Metode 2: Konfigurasikan komponen menggunakan kode Python
Anda dapat menggunakan komponen skrip PyAlink untuk memanggil kode Python. Untuk informasi lebih lanjut, lihat PyAlink Script. Tabel berikut menjelaskan parameter-parameter tersebut.
Parameter | Diperlukan | Deskripsi | Nilai default |
itemCol | Ya | Nama kolom item. | Tidak tersedia |
recommCol | Ya | Nama kolom hasil rekomendasi. | Tidak tersedia |
initRecommCol | Tidak | Nama kolom item yang direkomendasikan awal. | Tidak tersedia |
k | Tidak | Jumlah item rekomendasi teratas. | 10 |
reservedCols | Tidak | Nama kolom yang dicadangkan untuk algoritma. | Tidak tersedia |
numThreads | Tidak | Jumlah thread komponen. | 1 |
Contoh kode Python:
df_data = pd.DataFrame([
["a1", "11L", 2.2],
["a1", "12L", 2.0],
["a2", "11L", 2.0],
["a2", "12L", 2.0],
["a3", "12L", 2.0],
["a3", "13L", 2.0],
["a4", "13L", 2.0],
["a4", "14L", 2.0],
["a5", "14L", 2.0],
["a5", "15L", 2.0],
["a6", "15L", 2.0],
["a6", "16L", 2.0],
])
data = BatchOperator.fromDataframe(df_data, schemaStr='user string, item string, rating double')
model = SwingTrainBatchOp()\
.setUserCol("user")\
.setItemCol("item")\
.setMinUserItems(1)\
.linkFrom(data)
predictor = SwingRecommBatchOp()\
.setItemCol("item")\
.setRecommCol("prediction_result")
predictor.linkFrom(model, data).print()Contoh
Gambar berikut menunjukkan contoh pipeline di mana komponen Swing Recommendation digunakan.
Dalam contoh ini, langkah-langkah berikut dilakukan untuk mengonfigurasi komponen pada gambar sebelumnya:
Gunakan komponen Read Table-1 untuk membaca set data uji. Atur parameter Table Name dari komponen Read Table-1 ke nama tabel yang menyimpan set data uji. Untuk informasi tentang cara mendapatkan nama tabel, lihat bagian "Contoh" dalam topik Swing Train.
Gunakan komponen Swing Train untuk melatih model.
Impor set data uji dan model ke komponen Swing Recommendation dan konfigurasikan parameter komponen. Untuk informasi lebih lanjut, lihat bagian "Metode 1: Konfigurasikan Komponen di Konsol PAI" dari topik ini.