全部产品
Search
文档中心

Artificial Intelligence Recommendation:Praktik terbaik untuk menyesuaikan algoritma rekomendasi PAI-Rec

更新时间:Dec 03, 2025

Topik ini menggunakan dataset publik untuk membantu Anda memulai dengan PAI-Rec. Ikuti langkah-langkah berikut untuk mengonfigurasi fitur-fitur utama—seperti rekayasa fitur, recall, dan peringkat detail halus—untuk algoritma rekomendasi kustom. Setelah itu, Anda dapat menghasilkan kode dan menerapkannya ke alur kerja yang sesuai di DataWorks.

Prasyarat

Sebelum memulai, lengkapi prasyarat berikut:

  • Aktifkan PAI. Untuk informasi selengkapnya, lihat Aktifkan PAI dan buat ruang kerja default.

  • Buat virtual private cloud (VPC) dan vSwitch. Untuk informasi selengkapnya, lihat Buat VPC dengan blok CIDR IPv4.

  • Aktifkan PAI-FeatureStore. Untuk informasi selengkapnya, lihat bagian Prasyarat pada Buat sumber data. Anda tidak perlu mengaktifkan Hologres. Sebagai gantinya, pilih FeatureDB sebagai sumber data. Untuk informasi selengkapnya, lihat Buat online store: FeatureDB.

  • Aktifkan MaxCompute dan buat proyek MaxCompute bernama project_mc. Untuk informasi selengkapnya, lihat Aktifkan MaxCompute dan Buat proyek MaxCompute.

  • Buat bucket Object Storage Service (OSS). Untuk informasi selengkapnya, lihat Buat bucket.

  • Aktifkan DataWorks dan lakukan operasi berikut:

    • Buat ruang kerja DataWorks. Untuk informasi selengkapnya, lihat Buat ruang kerja.

    • Beli kelompok sumber daya Serverless untuk DataWorks. Untuk informasi selengkapnya, lihat Gunakan kelompok sumber daya Serverless. Kelompok sumber daya ini digunakan untuk menyinkronkan data ke PAI-FeatureStore dan menjalankan perintah eascmd guna membuat serta memperbarui layanan PAI-EAS.

    • Konfigurasi sumber data DataWorks:

  • Buat proyek FeatureStore dan entitas fitur. Lewati langkah ini jika Anda menggunakan kelompok sumber daya Serverless. Jika Anda menggunakan kelompok sumber daya khusus untuk DataWorks, Anda harus menginstal kit pengembangan perangkat lunak (SDK) Python FeatureStore. Untuk informasi selengkapnya, lihat II. Buat dan daftarkan FeatureStore dan Instal SDK Python FeatureStore.

  • Aktifkan Flink. Untuk informasi selengkapnya, lihat Aktifkan Realtime Compute for Apache Flink. Catatan: Atur Tipe Penyimpanan ke bucket OSS, bukan Fully Managed Storage. Pastikan bucket OSS untuk Flink sama dengan yang dikonfigurasi untuk PAI-Rec. Flink digunakan untuk mencatat data perilaku pengguna real-time dan menghitung fitur pengguna real-time.

  • Jika Anda memilih EasyRec (TensorFlow), model dilatih di MaxCompute secara default.

  • Jika Anda memilih TorchEasyRec (PyTorch), model dilatih di PAI-DLC secara default. Untuk mengunduh data MaxCompute di PAI-DLC, Anda harus mengaktifkan Data Transmission Service. Untuk informasi selengkapnya, lihat Beli dan gunakan kelompok sumber daya khusus untuk Data Transmission Service.

1. Buat instans PAI-Rec dan inisialisasi layanan

  1. Login ke halaman utama Personalized Recommendation Platform dan klik Buy Now.

  2. Pada halaman pembelian instans PAI-Rec, konfigurasikan parameter utama berikut dan klik Buy Now.

    Parameter

    Deskripsi

    Region And Zone

    Wilayah tempat layanan cloud Anda diterapkan.

    Service Type

    Pilih Premium Edition untuk solusi ini.

    Catatan

    Dibandingkan Edisi Standar, Edisi Premium menambahkan fitur diagnostik data dan solusi rekomendasi kustom.

  3. Login ke Konsol PAI-Rec. Di bilah menu atas, pilih wilayah.

  4. Di panel navigasi sebelah kiri, pilih Instance List. Klik nama instans untuk masuk ke halaman detail instans.

  5. Di bagian Operation Guide, klik Init. Anda akan diarahkan ke halaman System Configurations > End-to-End Service. Klik Edit, konfigurasikan resource seperti pada tabel berikut, lalu klik Done.

    Konfigurasi Sumber Daya

    Parameter

    Deskripsi

    Modeling

    PAI Workspace

    Masukkan ruang kerja PAI default yang telah Anda buat.

    DataWorks Workspace

    Masukkan ruang kerja DataWorks yang dibuat secara otomatis.

    MaxCompute Project (Workspace)

    Masukkan proyek MaxCompute yang telah Anda buat.

    OSS Bucket

    Pilih bucket OSS yang telah Anda buat.

    Engine

    Real-time Recall Engine

    Untuk Use PAI-FeatureStore, pilih Yes.

    Real-time Feature Query

    Untuk Use PAI-FeatureStore, pilih Yes.

  6. Di panel navigasi sebelah kiri, pilih System Configurations > Permission Management. Pada tab Access Service, periksa status otorisasi setiap produk cloud untuk memastikan akses telah diberikan.

2. Klon dataset publik

1. Sinkronisasi tabel data

Anda dapat menyediakan data masukan untuk solusi ini dengan dua cara:

  1. Klon data untuk jendela waktu tetap dari proyek pai_online_project. Metode ini tidak mendukung penjadwalan tugas rutin.

  2. Gunakan skrip Python untuk menghasilkan data. Anda dapat menjalankan tugas di DataWorks untuk menghasilkan data dalam periode tertentu.

Untuk menjadwalkan pembuatan data harian dan pelatihan model, gunakan metode kedua. Anda harus menerapkan kode Python yang ditentukan untuk menghasilkan data yang diperlukan. Untuk informasi selengkapnya, lihat tab Generate data using code.

Sinkronisasi data untuk jendela waktu tetap

PAI-Rec menyediakan tiga tabel umum untuk algoritma rekomendasi di proyek pai_online_project yang dapat diakses publik:

  • Tabel pengguna: pai_online_project.rec_sln_demo_user_table

  • Tabel item: pai_online_project.rec_sln_demo_item_table

  • Tabel perilaku: pai_online_project.rec_sln_demo_behavior_table

Operasi selanjutnya dalam solusi ini didasarkan pada ketiga tabel tersebut. Datanya dihasilkan dan disimulasikan secara acak serta tidak memiliki makna bisnis nyata. Oleh karena itu, metrik seperti Area Under the Curve (AUC) yang diperoleh dari pelatihan akan rendah. Anda harus menjalankan perintah SQL di DataWorks untuk menyinkronkan data tabel dari proyek pai_online_project ke proyek DataWorks Anda, misalnya DataWorks_a. Prosedurnya sebagai berikut:

  1. Login ke Konsol DataWorks. Di bilah menu atas, pilih wilayah.

  2. Di panel navigasi sebelah kiri, klik Data Development And O&M > Data Development.

  3. Pilih ruang kerja DataWorks yang telah Anda buat dan klik Go To Data Development.

  4. Arahkan kursor ke Create dan pilih Create Node > MaxCompute > ODPS SQL. Konfigurasikan parameter seperti pada tabel berikut dan klik Confirm.

    Konfigurasi Sumber Daya

    Parameter

    Deskripsi

    Engine Instance

    Pilih sumber data MaxCompute yang telah disambungkan.

    Node Type

    Pilih tipe node ODPS SQL.

    Path

    Pilih path tempat node saat ini berada. Misalnya, Business Flow/Workflow/MaxCompute.

    Name

    Masukkan nama kustom, misalnya Data.

  5. Di bagian node baru, salin dan jalankan kode berikut untuk menyinkronkan tabel pengguna, item, dan perilaku dari proyek pai_online_project ke proyek MaxCompute Anda, misalnya project_mc. Untuk menjalankan kode, Anda harus mengatur variabel untuk menentukan data dari bizdate hingga 100 hari sebelum bizdate. Biasanya, Anda dapat mengatur bizdate ke hari sebelum tanggal saat ini. Konfigurasikan parameter penjadwalan sebagai berikut: image Jalankan kode berikut sekali untuk menyalin data dari proyek publik pai_online_project ke proyek Anda:

CREATE TABLE IF NOT EXISTS rec_sln_demo_user_table_v1(
 user_id BIGINT COMMENT 'Unique user ID',
 gender STRING COMMENT 'Gender',
 age BIGINT COMMENT 'Age',
 city STRING COMMENT 'City',
 item_cnt BIGINT COMMENT 'Number of created items',
 follow_cnt BIGINT COMMENT 'Number of follows',
 follower_cnt BIGINT COMMENT 'Number of followers',
 register_time BIGINT COMMENT 'Registration time',
 tags STRING COMMENT 'User tags'
) PARTITIONED BY (ds STRING) STORED AS ALIORC;

INSERT OVERWRITE TABLE rec_sln_demo_user_table_v1 PARTITION(ds)
SELECT *
FROM pai_online_project.rec_sln_demo_user_table
WHERE ds >= "${bizdate_100}" and ds <= "${bizdate}";

CREATE TABLE IF NOT EXISTS rec_sln_demo_item_table_v1(
 item_id BIGINT COMMENT 'Item ID',
 duration DOUBLE COMMENT 'Video duration',
 title STRING COMMENT 'Title',
 category STRING COMMENT 'Primary tag',
 author BIGINT COMMENT 'Author',
 click_count BIGINT COMMENT 'Total clicks',
 praise_count BIGINT COMMENT 'Total likes',
 pub_time BIGINT COMMENT 'Publication time'
) PARTITIONED BY (ds STRING) STORED AS ALIORC;

INSERT OVERWRITE TABLE rec_sln_demo_item_table_v1 PARTITION(ds)
SELECT *
FROM pai_online_project.rec_sln_demo_item_table
WHERE ds >= "${bizdate_100}" and ds <= "${bizdate}";

CREATE TABLE IF NOT EXISTS rec_sln_demo_behavior_table_v1(
 request_id STRING COMMENT 'Instrumentation ID/Request ID',
 user_id STRING COMMENT 'Unique user ID',
 exp_id STRING COMMENT 'Experiment ID',
 page STRING COMMENT 'Page',
 net_type STRING COMMENT 'Network type',
 event_time BIGINT COMMENT 'Behavior time',
 item_id STRING COMMENT 'Item ID',
 event STRING COMMENT 'Behavior type',
 playtime DOUBLE COMMENT 'Playback/Read duration'
) PARTITIONED BY (ds STRING) STORED AS ALIORC;


INSERT OVERWRITE TABLE rec_sln_demo_behavior_table_v1 PARTITION(ds)
SELECT *
FROM pai_online_project.rec_sln_demo_behavior_table
WHERE ds >= "${bizdate_100}" and ds <= "${bizdate}";

Generate data using code

Menggunakan data dari jendela waktu tetap tidak mendukung penjadwalan tugas rutin. Untuk menjadwalkan tugas, Anda harus menerapkan kode Python tertentu untuk menghasilkan data yang diperlukan. Prosedurnya sebagai berikut:

  1. Di konsol DataWorks, buat node PyODPS 3. Untuk informasi selengkapnya, lihat Buat dan kelola node MaxCompute.

  2. Unduh create_data.py dan tempel konten file ke dalam node PyODPS 3.

  3. Di panel kanan, klik Scheduling Configurations, konfigurasikan parameter, lalu klik ikon Simpan image dan Submit image di pojok kanan atas.

    • Konfigurasikan parameter penjadwalan:

      • Catat penggantian variabel:

        Ganti $user_table_name dengan rec_sln_demo_user_table.

        Ganti $item_table_name dengan rec_sln_demo_item_table.

        Ganti $behavior_table_name dengan rec_sln_demo_behavior_table.

        image

        Setelah penggantian:

        image

    • Konfigurasikan dependensi penjadwalan.

  4. Masuk ke Operation Center dan pilih Periodic Task O&M > Periodic Tasks.

  5. Di kolom Actions tugas target, pilih Backfill Data > Current And Descendant Nodes.

  6. Di panel Backfill Data, atur stempel waktu data dan klik Submit And Go.

    Rentang waktu backfill yang baik adalah 60 hari. Kami menyarankan agar Anda mengatur stempel waktu data ke Scheduled Task Date - 60 untuk memastikan integritas data.

2. Konfigurasi node dependensi

Untuk memastikan pembuatan dan penerapan kode berjalan lancar, tambahkan tiga node kode SQL ke proyek DataWorks Anda terlebih dahulu. Konfigurasikan dependensi penjadwalan node-node ini ke node root ruang kerja. Setelah semua pengaturan selesai, publikasikan node tersebut. Prosedurnya sebagai berikut:

  1. Arahkan kursor ke Create dan pilih Create Node > General > Virtual Node. Buat tiga node virtual seperti pada tabel berikut dan klik Confirm.

    Konfigurasi resource

    Parameter

    Deskripsi

    Contoh

    Node Type

    Pilih tipe node.

    Virtual Node

    Path

    Pilih path tempat node saat ini berada.

    Workflow/Workflow/General

    Name

    Masukkan nama tabel data yang telah disinkronkan.

    • rec_sln_demo_user_table_v1

    • rec_sln_demo_item_table_v1

    • rec_sln_demo_behavior_table_v1

    image

  2. Pilih sebuah node, atur konten node menjadi select 1; untuk setiap node, lalu klik Scheduling Configurations di panel kanan untuk menyelesaikan konfigurasi:

    • Di bagian Time Property, atur Rerun Property ke Rerun When Succeeded Or Failed.

    • Di bagian Scheduling Dependencies > Upstream Dependencies, masukkan nama ruang kerja DataWorks, pilih node dengan akhiran _root, lalu klik Add.

      Konfigurasikan ketiga node virtual tersebut.

      image

  3. Klik ikon image di depan node virtual untuk mengirimnya.

3. Daftarkan data

Untuk mengonfigurasi rekayasa fitur, recall, dan algoritma pengurutan dalam solusi rekomendasi kustom, Anda harus terlebih dahulu mendaftarkan ketiga tabel yang telah Anda sinkronkan ke proyek DataWorks. Prosedurnya sebagai berikut:

  1. Login ke Konsol PAI-Rec. Di bilah menu atas, pilih wilayah.

  2. Di panel navigasi sebelah kiri, pilih Instance List. Klik nama instans untuk masuk ke halaman detail instans.

  3. Di panel navigasi sebelah kiri, pilih Custom Recommendation Solution > Data Registration. Pada tab MaxCompute Table, klik Add Data Table. Tambahkan satu tabel pengguna, satu tabel item, dan satu tabel perilaku seperti pada tabel berikut, lalu klik Start Import.

    Parameter

    Deskripsi

    Solusi default contoh

    MaxCompute project

    Pilih proyek MaxCompute yang telah Anda buat.

    project_mc

    MaxCompute table

    Pilih tabel data yang telah Anda sinkronkan ke ruang kerja DataWorks.

    • User table: rec_sln_demo_user_table_v1

    • Item table: rec_sln_demo_item_table_v1

    • Behavior table: rec_sln_demo_behavior_table_v1

    Data table name

    Masukkan nama kustom.

    • User Table

    • Item Table

    • Behavior Table

4. Buat skenario rekomendasi

Sebelum mengonfigurasi tugas rekomendasi, Anda harus membuat skenario rekomendasi. Untuk informasi tentang konsep dasar skenario rekomendasi dan arti ID trafik, lihat Terms.

Di panel navigasi sebelah kiri, pilih Recommendation Scenarios. Klik Create Scenario, buat skenario rekomendasi seperti pada tabel berikut, lalu klik OK.

Konfigurasi Sumber Daya

Parameter

Deskripsi

Contoh: Solusi Default

Scenario Name

Masukkan nama kustom.

HomePage

Scenario Description

Deskripsi rinci tentang skenario tersebut.

None

5. Buat dan konfigurasi solusi algoritma

Untuk mengonfigurasi skenario dunia nyata yang lengkap, kami merekomendasikan konfigurasi recall dan peringkat detail halus berikut.

  • Global hot recall: Mengurutkan k item teratas berdasarkan statistik dari data log.

  • Global hot fallback recall: Menggunakan Redis sebagai cadangan untuk mencegah API rekomendasi mengembalikan data kosong.

  • Grouped hot recall: Melakukan recall item berdasarkan kategori, seperti kota dan jenis kelamin, untuk membantu meningkatkan akurasi rekomendasi item populer.

  • etrec u2i recall: Berdasarkan algoritma filtering kolaboratif etrec.

  • swing u2i recall (opsional): Berdasarkan algoritma Swing.

  • Cold-start recall (opsional): Menggunakan algoritma DropoutNet untuk cold-start recall.

  • Fine-grained ranking: Anda dapat memilih MultiTower untuk peringkat tujuan tunggal atau DBMTL untuk peringkat multi-tujuan.

Algoritma recall vektor atau PDN biasanya diaktifkan setelah tahap recall komprehensif. Recall vektor memerlukan mesin recall vektor. Kami tidak mengonfigurasi recall vektor dalam contoh ini karena FeatureDB tidak mendukungnya.

Topik ini dirancang untuk memandu Anda melalui proses konfigurasi dan penerapan. Oleh karena itu, pada tahap konfigurasi recall, kami hanya mengonfigurasi global hot recall dan strategi recall u2i dari RECommender (eTREC, implementasi filtering kolaboratif). Untuk konfigurasi peringkat, kami memilih fine-grained ranking untuk mengoptimalkan pengalaman. Prosedurnya sebagai berikut:

  1. Di panel navigasi sebelah kiri, pilih Custom Recommendation Solution > Solution Configuration. Pilih skenario yang telah Anda buat, klik Create Recommendation Solution, buat solusi seperti pada tabel berikut, lalu klik Save And Configure Algorithm Solution.

    Pertahankan nilai default untuk parameter yang tidak dijelaskan. Untuk informasi selengkapnya, lihat Data Table Configuration.

    Konfigurasi resource

    Parameter

    Deskripsi

    Solution Name

    Masukkan nama kustom.

    Scenario Name

    Pilih skenario rekomendasi yang telah Anda buat.

    Offline Store

    Pilih proyek MaxCompute yang terkait dengan skenario rekomendasi.

    DataWorks Workspace

    Pilih ruang kerja DataWorks yang terkait dengan skenario rekomendasi.

    Workflow Name

    Ini adalah nama alur kerja yang dibuat di DataWorks saat Anda menerapkan skrip solusi rekomendasi. Anda dapat memasukkan nama kustom, misalnya Flow.

    StorageAPI configuration

    Untuk wilayah di Tiongkok, seperti Beijing dan Shanghai, Anda dapat memilih "StorageAPI", yaitu Data Transmission Service bayar sesuai penggunaan.

    Untuk wilayah di luar Tiongkok, seperti Tiongkok (Hong Kong), Singapura, dan Frankfurt, Anda harus terlebih dahulu membeli dan menggunakan kelompok sumber daya khusus untuk Data Transmission Service. Jika opsi bayar sesuai penggunaan tidak tersedia, Anda harus membeli langganan Data Transmission Service. Kemudian, refresh halaman dan pilih nama langganan Data Transmission Service tersebut. Tambahkan parameter ke tugas pelatihan TorchEasyRec PAI-DLC di DataWorks, dalam format serupa: -odps_data_quota_name ot_xxxx_p#ot_yyyy.

    slim_mode

    Jika edisi DataWorks yang Anda beli memiliki batasan ukuran pada paket kode yang diimpor oleh Migration Assistant, Anda dapat menggunakan fitur ini dan mengunggah manual paket kode yang melebihi batas ukuran. Untuk solusi ini, pilih No.

    OSS Bucket

    Pilih bucket OSS yang terkait dengan skenario rekomendasi.

    Project

    Pilih proyek FeatureStore yang telah Anda buat. Untuk online store, pilih FeatureDB.

    User Entity

    Pilih entitas fitur pengguna `user` yang sesuai dengan proyek FeatureStore.

    Item Entity

    Pilih entitas fitur item `item` yang sesuai dengan proyek FeatureStore.

  2. Pada node Data Table Configuration, klik Add di sebelah kanan tabel data target. Konfigurasikan Behavior Log Table, User Table, dan Item Table seperti pada tabel berikut. Atur field partisi, event, fitur, dan stempel waktu, lalu klik Next.

    Pertahankan nilai default untuk parameter yang tidak dijelaskan. Untuk informasi selengkapnya, lihat Data Table Configuration.

    Konfigurasi resource tabel log perilaku

    Saat mengonfigurasi tabel log perilaku, lakukan penyesuaian berdasarkan konten data aktual. Dalam topik ini, log perilaku berisi informasi inti, seperti ID permintaan, ID pengguna unik, halaman tempat perilaku terjadi, stempel waktu perilaku, dan kategori perilaku. Jika tabel berisi dimensi data yang lebih kaya, kami merekomendasikan agar Anda mengklasifikasikan informasi ini berdasarkan pengguna dan item serta mengonfigurasikannya sebagai informasi pengguna atau informasi item untuk rekayasa fitur selanjutnya.

    Parameter

    Deskripsi

    Contoh

    Behavior Table Name

    Pilih tabel perilaku yang telah didaftarkan.

    rec_sln_demo_behavior_table_v1

    Time Partition

    Field partisi tabel perilaku.

    ds

    yyyymmdd

    Konfigurasi informasi perilaku

    Request ID

    ID yang menandai setiap permintaan rekomendasi dalam log, biasanya UUID yang dihasilkan program. Ini opsional.

    request_id

    Behavior Event

    Field yang mencatat event perilaku dalam log.

    event

    Behavior Event Enumeration Values

    Nilai enumerasi yang termasuk dalam event perilaku, seperti impression, click, add-to-cart, atau purchase.

    expr,click,praise

    Behavior Value

    Menunjukkan kedalaman perilaku, seperti harga transaksi atau durasi menonton.

    playtime

    Behavior Timestamp

    Waktu saat log dihasilkan, sebagai stempel waktu UNIX yang akurat hingga detik.

    event_time

    Timestamp Format

    Digunakan bersama stempel waktu perilaku.

    unixtime

    Behavior Scenario

    Field skenario tempat log terjadi, seperti halaman utama, halaman pencarian, atau halaman detail produk.

    page

    Scenario Enumeration Values

    Menunjukkan data skenario mana yang digunakan. Anda dapat menghitung statistik untuk fitur berdasarkan skenario dalam rekayasa fitur selanjutnya.

    home,detail

    Konfigurasi informasi pengguna

    User ID

    Identifier ID pengguna dalam tabel perilaku.

    user_id

    User Categorical Features

    Fitur kategorikal pengguna dalam tabel perilaku, seperti jaringan, platform operasi, atau jenis kelamin.

    net_type

    Konfigurasi informasi item

    Item ID

    Identifier ID item dalam tabel perilaku.

    item_id

    Konfigurasi sumber daya tabel pengguna

    Parameter

    Deskripsi

    Contoh

    User Table Name

    Pilih tabel pengguna yang telah didaftarkan.

    rec_sln_demo_user_table_v1

    Time Partition

    Field partisi waktu tabel pengguna.

    ds

    yyyymmdd

    Konfigurasi informasi pengguna

    User ID

    Field ID pengguna dalam tabel pengguna.

    user_id

    Registration Timestamp

    Waktu saat pengguna mendaftar.

    register_time

    Timestamp Format

    Digunakan bersama stempel waktu pendaftaran.

    unixtime

    Categorical Features

    Field kategorikal dalam tabel pengguna, seperti jenis kelamin, kelompok usia, atau kota.

    gender, city

    Numerical Features

    Field numerik dalam tabel pengguna, seperti jumlah karya atau poin.

    age, item_cnt, follow_cnt, follower_cnt

    Tag Feature

    Nama field fitur tag.

    tags

    Konfigurasi resource tabel item

    Parameter

    Deskripsi

    Contoh

    Item Table Name

    Pilih tabel item yang telah didaftarkan.

    rec_sln_demo_item_table_v1

    Time Partition

    Field partisi waktu tabel item.

    ds

    yyyymmdd

    Konfigurasi informasi item

    Item ID

    Field ID item dalam tabel item.

    item_id

    Author ID

    Penulis item tersebut.

    author

    Listing Timestamp

    Nama field stempel waktu listing item.

    pub_time

    Timestamp Format

    Digunakan bersama stempel waktu listing.

    unixtime

    Categorical Features

    Field kategorikal dalam tabel item, seperti kategori.

    category

    Numerical Features

    Field numerik dalam tabel item, seperti harga, total penjualan, atau jumlah suka.

    click_count, praise_count

  3. Pada node Feature Configuration, konfigurasikan parameter seperti pada tabel berikut, klik Generate Features, atur versi fitur, lalu klik Next.

    Setelah Anda mengklik Generate Features, berbagai fitur statistik diturunkan untuk pengguna dan item. Dalam solusi ini, kami tidak mengedit fitur yang diturunkan dan mempertahankan pengaturan default. Anda dapat mengedit fitur yang diturunkan sesuai kebutuhan. Untuk informasi selengkapnya, lihat Feature Configuration.

    Konfigurasi resource

    Parameter

    Deskripsi

    Contoh

    Common Statistics Period

    Konfigurasi ini digunakan untuk pembuatan fitur batch. Untuk menghindari pembuatan terlalu banyak fitur, solusi ini mengatur periode statistik menjadi 3, 7, dan 15 hari untuk menghitung statistik pengguna dan item dalam 3, 7, dan 15 hari terakhir, masing-masing.

    Jika jumlah perilaku pengguna kecil, Anda dapat mencoba mengaturnya menjadi 21 hari.

    3,7,15

    Key Behaviors

    Pilih event perilaku yang telah dikonfigurasi. Kami merekomendasikan menambahkannya dalam urutan expr (impression), click, dan praise.

    expr, click, praise

  4. Pada node Recall Configuration, klik Add di sebelah kanan kategori target, konfigurasikan parameter, klik Confirm, lalu klik Next.

    Bagian berikut menjelaskan beberapa metode konfigurasi recall. Untuk memandu Anda dengan cepat melalui proses penerapan, Anda dapat hanya mengonfigurasi Global hot recall dan etrec u2i recall. Metode lain, seperti recall vektor dan recall metrik kolaboratif, hanya sebagai referensi.

    Konfigurasi resource

    Global hot recall

    Global hot recall menghasilkan peringkat item populer (`top_n` mewakili jumlah item dalam peringkat) berdasarkan statistik event klik. Jika Anda ingin memodifikasi rumus penilaian popularitas atau event akses, Anda dapat melakukannya setelah menghasilkan kode terkait dan menerapkannya ke platform DataWorks.

    Rumus penilaiannya adalah click_uv*click_uv/(expr+adj_factor)*exp(-item_publish_days/fresh_decay_denom), di mana:

    • click_uv: Untuk tingkat klik (CTR) yang sama, jumlah klik yang lebih tinggi menunjukkan popularitas yang lebih besar.

    • click_uv/(expr+adj_factor): CTR yang telah dihaluskan, di mana click_uv adalah jumlah pengguna unik yang mengklik dan expr adalah jumlah impression. Faktor penyesuaian adj_factor ditambahkan untuk mencegah penyebut menjadi nol dan menyesuaikan CTR saat jumlah impression rendah. Saat impression sedikit, CTR mendekati 1. Menambahkan adj_factor menjauhkan CTR dari 1, sehingga lebih mendekati CTR sebenarnya.

    • exp(-item_publish_days/fresh_decay_denom): Memberikan penalti pada item yang diterbitkan lebih awal. item_publish_days adalah jumlah hari dari tanggal penerbitan hingga tanggal saat ini.

    image

    etrec u2i recall

    etrec adalah algoritma filtering kolaboratif berbasis item. Untuk informasi selengkapnya, lihat Collaborative filtering etrec.

    image

    Parameter

    Deskripsi

    Training Days

    Jumlah hari log perilaku yang digunakan untuk pelatihan. Default-nya adalah 30 hari. Anda dapat menambah atau mengurangi nilai ini berdasarkan volume log.

    Recall Count

    Jumlah akhir pasangan pengguna-item yang dihasilkan secara offline.

    U2ITrigger

    Item yang telah berinteraksi dengan pengguna. Misalnya, item yang diklik, difavoritkan, atau dibeli pengguna. Ini umumnya tidak termasuk item yang hanya memiliki impression.

    Behavior Time Window

    Jumlah hari data perilaku yang dikumpulkan. Default-nya adalah 15, yang berarti 15 hari terakhir.

    Behavior Time Attenuation Coefficient

    Nilai antara 0 dan 1. Nilai yang lebih besar menunjukkan bahwa perilaku masa lalu meluruh lebih cepat, dan bobotnya dalam membangun trigger_item lebih kecil.

    Trigger Selection Count

    Jumlah ID item yang diambil untuk setiap pengguna untuk melakukan Produk Kartesius dengan data i2i yang dihasilkan oleh etrec. Kami merekomendasikan nilai antara 10 dan 50. Jika jumlah trigger terlalu besar, akan menghasilkan terlalu banyak item kandidat untuk recall.

    U2i Behavior Weight

    Perhatikan bahwa event impression sebaiknya tidak diatur atau diatur dengan bobot 0. Kami merekomendasikan untuk tidak mengatur event impression, yang berarti melewati data impression pengguna.

    I2I Model Settings

    Pengaturan parameter untuk etrec. Untuk informasi selengkapnya, lihat Collaborative filtering etrec. Kami merekomendasikan untuk tidak mengatur jumlah pemilihan item terkait terlalu tinggi.image

    Grouped hot recall

    Anda dapat mengatur peringkat berdasarkan atribut, seperti kota dan jenis kelamin, untuk memberikan recall personalisasi awal. Dalam contoh berikut, kombinasi jenis kelamin dan angka bucketing dari nilai numerik digunakan sebagai grup.

    image

    swing u2i recall

    Swing adalah metode untuk menghitung relevansi item, mengukur kesamaan item berdasarkan prinsip User-Item-User.image

    image

    Vector recall

    Dua metode recall vektor disediakan: DSSM dan MIND. Untuk informasi selengkapnya, lihat:

    • Nama target recall: Umumnya merujuk pada apakah item diklik. Atur ini ke is_click.

    • Pemilihan target recall: Atur ini ke max(if(event='click', 1, 0)).

      Anda dapat menggunakan kode berikut untuk eksekusi:

      select max(if(event='click',1,0)) is_click ,...
      from ${behavior_table}
      where between dt=${bizdate_start} and dt=${bizdate_end}
      group by req_id,user_id,item

      Di mana:

      • ${behavior_table}: Tabel perilaku.

      • ${bizdate_start}: Tanggal mulai jendela waktu perilaku.

      • event: Field event dalam tabel ${behavior_table}. Pilih nilai berdasarkan field spesifik.

      • is_click: Nama target.

      Rumus untuk perhitungan dimensi adalah sebagai berikut:

      EMB_SQRT4_STEP8: (8 + Pow(count, 0.25)) / 8) * 8
      EMB_SQRT4_STEP4: (4 + Pow(count, 0.25)) / 4) * 4
      EMB_LN_STEP8:    (8 + Log(count + 1)) / 8) * 8
      EMB_LN_STEP4:    (4 + Log(count + 1)) / 4) * 4

      Di sini, count adalah jumlah nilai enumerasi fitur. Gunakan fungsi Log saat jumlah nilai fitur besar.

    image

    image

    Cold-start recall

    Seperti model recall dual-tower DSSM, ini dibagi menjadi tower pengguna dan tower item. DropoutNet adalah model recall yang cocok untuk pengguna dan item head, serta untuk long tail bahkan pengguna dan item baru.

    image

    Global hot fallback recall

    Global hot fallback recall mirip dengan global hot recall. Tujuan utamanya adalah memastikan bahwa set kandidat yang cukup dapat direcall jika mesin global hot recall gagal. Oleh karena itu, disimpan di Redis, dan output ini hanya memiliki satu baris data.image

    Collaborative metric learning i2i recall

    Collaborative metric learning i2i recall, juga dikenal sebagai model recall Collaborative Metric Learning I2I, menghitung kesamaan antar item berdasarkan data klik sesi.image

  5. Pada node Ranking Configuration, klik Add di sebelah Fine-grained Ranking, konfigurasikan parameter seperti pada tabel berikut, klik Confirm, lalu klik Next.

    Konfigurasi resource

    Platform menyediakan beberapa model peringkat. Untuk informasi selengkapnya, lihat Ranking Models. Bagian berikut menjelaskan cara mengatur parameter peringkat untuk model peringkat multi-tujuan DBMTL.

    image

    Klik Add di sebelah Refined Ranking Target Settings (labels) untuk menambahkan dua label berikut:

    • Target 1image

    • Target 2 (Catatan: Huruf 'l' dalam 'ln' adalah huruf L kecil)image

  6. Pada node Generate Script, klik Generate Deployment Script.image

    Penting

    Setelah skrip berhasil dihasilkan, sistem menghasilkan alamat OSS seperti pada gambar di atas. Path OSS ini menyimpan semua file yang akan diterapkan. Anda dapat menyimpan alamat ini secara lokal untuk menerapkan skrip secara manual nanti.

  7. Setelah skrip dihasilkan, klik OK di kotak dialog. Anda akan diarahkan ke halaman Custom Recommendation Solution > Deployment Records.

    Jika pembuatan gagal, lihat log run, analisis dan selesaikan error spesifik, lalu hasilkan skrip lagi.

6. Terapkan solusi rekomendasi

Setelah skrip dihasilkan, Anda dapat menerapkannya ke DataWorks dengan salah satu dari dua cara berikut.

Metode 1: Terapkan melalui Personalized Recommendation Platform

  1. Klik Go To Deploy di sebelah kanan solusi target.image

  2. Pada halaman Deployment Preview, di bagian File Diff, pilih file yang akan diterapkan. Karena ini adalah penerapan pertama, klik Select All lalu klik Deploy To DataWorks.

    Halaman secara otomatis kembali ke halaman Deployment Records, yang menunjukkan bahwa penerapan skrip sedang berlangsung.image

  3. Tunggu sebentar, lalu klik image untuk merefresh daftar dan memeriksa status penerapan.

    • Jika penerapan gagal, klik View Log di kolom Actions, analisis dan selesaikan error spesifik, lalu hasilkan dan terapkan skrip lagi.

    • Saat Deployment Status berubah menjadi Success, skrip berhasil diterapkan. Anda dapat masuk ke halaman Data Development ruang kerja DataWorks yang dikonfigurasi untuk solusi ini untuk melihat kode yang telah diterapkan. Untuk informasi selengkapnya, lihat Data development process guide.image

  4. Lihat proses pengisian ulang data tugas.

    1. Pada halaman Custom Recommendation Solution > Deployment Records, klik Details di kolom Actions solusi rekomendasi yang berhasil diterapkan.

    2. Pada halaman Deployment Preview, klik View Task Data Backfill Process untuk memahami proses backfill dan instruksi terkait guna memastikan integritas data.

    3. Pastikan partisi tabel pengguna, tabel item, dan tabel perilaku pengguna berisi data untuk n hari terakhir, di mana n adalah jumlah jendela waktu pelatihan dan jendela waktu fitur maksimum. Jika Anda menggunakan data demo dari topik ini, sinkronkan partisi data terbaru. Jika Anda menghasilkan data menggunakan skrip Python, lakukan backfill data di Operation Center DataWorks untuk menghasilkan partisi data terbaru.

    4. Klik Create Deployment Task. Di bawah Backfill Task List, klik Start Tasks Sequentially. Pastikan semua tugas berjalan berhasil. Jika tugas gagal, klik Details untuk melihat informasi log, analisis dan selesaikan error, lalu jalankan ulang tugas tersebut. Setelah berhasil dijalankan ulang, klik Continue di pojok kiri atas halaman hingga semua tugas berhasil.截屏2025-10-20 15

Metode 2: Terapkan menggunakan Migration Assistant

Setelah skrip berhasil dihasilkan, Anda juga dapat masuk ke konsol DataWorks dan menerapkan skrip secara manual menggunakan fitur Migration Assistant. Parameter utama dijelaskan di bawah ini. Untuk operasi lainnya, lihat Buat dan lihat tugas impor DataWorks.

  • Import Name: Atur ini sesuai petunjuk di konsol.

  • Upload Method: Pilih OSS File, masukkan OSS Link, lalu klik Verify.

    File penerapan disimpan di alamat OSS yang dihasilkan di Langkah 5, misalnya oss://examplebucket/algoconfig/plan/1723717372/package.zip. Anda dapat login ke konsol OSS dan ikuti langkah-langkah berikut untuk mendapatkan URL file yang sesuai.image

7. Bekukan node

Topik ini menggunakan data demo. Setelah pengisian ulang data selesai, bekukan tugas di Operation Center (ketiga node dari Langkah 2.2) untuk mencegahnya dijadwalkan dan dijalankan setiap hari.

Masuk ke Operation Center DataWorks. Pilih Periodic Task O&M > Periodic Tasks. Cari nama node yang telah Anda buat, misalnya rec_sln_demo_user_table_v1. Pilih node target (Ruang Kerja.Nama Node) dan pilih Pause (Freeze).