Fungsi ML.MULTI_HOT_ENCODER
Dokumen ini menjelaskan fungsi ML.MULTI_HOT_ENCODER
, yang memungkinkan Anda
mengenkode ekspresi array string menggunakan
skema encoding
multi-hot.
Kosakata encoding diurutkan sesuai abjad. Nilai dan kategori NULL
yang tidak ada dalam kosakata dienkode dengan nilai index
0
.
Saat digunakan dalam
klausa TRANSFORM
,
kosakata yang dihitung selama pelatihan, beserta nilai batas atas frekuensi dan k
yang Anda inginkan akan digunakan secara otomatis dalam prediksi.
Sintaks
ML.MULTI_HOT_ENCODER(array_expression [, top_k] [, frequency_threshold]) OVER()
Argumen
ML.MULTI_HOT_ENCODER
menggunakan argumen berikut:
array_expression
: ekspresiARRAY<STRING>
yang akan dienkode.top_k
: nilaiINT64
yang menentukan jumlah kategori yang disertakan dalam kosakata encoding. Fungsi ini memilih kategoritop_k
yang paling banyak dalam data dan menggunakannya; kategori di bawah batas ini dienkode ke0
. Nilai ini harus kurang dari1,000,000
untuk menghindari masalah karena dimensi yang tinggi. Nilai defaultnya adalah32,000
.frequency_threshold
: nilaiINT64
yang membatasi kategori yang disertakan dalam kosakata encoding berdasarkan frekuensi kategori. Fungsi ini menggunakan kategori yang frekuensinya lebih besar dari atau sama denganfrequency_threshold
; kategori di bawah batas ini dienkode ke0
. Nilai defaultnya adalah5
.
Output
ML.MULTI_HOT_ENCODER
menampilkan array nilai struct dengan struktur ARRAY<STRUCT<INT64, FLOAT64>>
. Elemen pertama dalam struct memberikan
indeks ekspresi string yang dienkode, dan elemen kedua memberikan
nilai ekspresi string yang dienkode.
Contoh
Contoh berikut menjalankan encoding multi-hot pada kumpulan ekspresi array string. Contoh ini membatasi kosakata encoding ke tiga kategori yang paling sering muncul dalam data dan juga terjadi satu kali atau lebih.
SELECT f[OFFSET(0)] AS f0, ML.MULTI_HOT_ENCODER(f, 3, 1) OVER () AS output FROM ( SELECT ['a', 'b', 'b', 'c', NULL] AS f UNION ALL SELECT ['c', 'c', 'd', 'd', NULL] AS f ) ORDER BY f[OFFSET(0)];
Outputnya terlihat mirip dengan ini:
+------+-----------------------------+ | f0 | output.index | output.value | +------+--------------+--------------+ | a | 1 | 1.0 | | | 2 | 1.0 | | | 3 | 1.0 | | | 0 | 1.0 | | c | 3 | 1.0 | | | 0 | 1.0 | +------+-----------------------------+
Langkah selanjutnya
- Untuk mengetahui informasi tentang prapemrosesan fitur, lihat Ringkasan prapemrosesan fitur.
- Untuk mengetahui informasi tentang pernyataan dan fungsi SQL yang didukung untuk setiap jenis model, lihat Perjalanan pengguna menyeluruh untuk setiap model.