May 21, 2023

MUHAMMAD GHIFARY

Model Generatif

Pada umumnya, machine learning menghasilkan model yang dapat memprediksi informasi tertentu dari suatu data input. Tipe prediksi yang dilakukan dapat berupa klasifikasi atau regresi. Model semacam ini diberikan istilah yaitu model diskriminatif / prediktif.

Adapun tipe lain dari model machine learning yang disebut dengan model generatif, yang mampu menghasilkan data. Jadi, fungsinya agak berkebalikan dengan model diskriminatif. Karakteristik data yang dihasilkan oleh suatu model generatif bergantung pada data yang menjadi sumber pembelajaran bagi model tersebut.

Analogi berikut ini barangkali bisa mempermudah pemahaman model diskriminatif vs generatif. Model diskriminatif bekerja sebagaimana otak kita mengkategorisasikan benda-benda yang diobservasi. Sedangkan, model generatif bekerja seperti sedang berimajinasi, memvisuaslisasikan suatu objek dibenak kita, atau bermimpi.

Model generatif biasanya direpresentasikan secara probabilistik. Sebuah model generatif $G$ memiliki distribusi probabilitas $\mathbb{P}_G$, yang apabila dilakukan sampling dari distribusi tersebut, yakni $x \sim \mathbb{P}_G$, sampel $x$ akan berbentuk sesuai dari karakteristik $\mathbb{P}_G$. Jika model $G$ belajar dari data kumpulan gambar wajah, maka sampel $x$ semestinya akan berbentuk wajah.

Secara umum, model generatif dapat melakukan inferensi pada 3 hal:

  1. Density estimation. Dari sebuah sampel $x$, tentukan skor probabilitas yang diberikan oleh model: $\mathbb{P}_G(x)$.
  2. Sampling. Menghasilkan data/sampel dari dari distribusi: $x \sim \mathbb{P}_G(x)$.
  3. Unsupervised representation learning. Mempelajari representasi fitur $\phi(x)$ dari suatu data $x$.

Pembelajaran pada Model Generatif

Untuk bisa melakukan inferensi yang diinginkan, model generatif perlu belajar dari data observasi, misalnya, sebuah dataset $\mathcal{D} = \{x_1, \ldots, x_n\}$. Pertama-tama, kita perlu menetapkan sebuah asumsi bahwa terdapat sebuah distribusi probabilitas $\mathbb{P}_\mathcal{D}$ yang menjadi sumber keberadaan sampel-sampel pada dataset $\mathcal{D}$.

Model generatif $G$ perlu belajar dari dataset $\mathcal{D}$ agar distribusi probabilitas $\mathbb{P}G$ mendekati $\mathbb{P}\mathcal{D}$. Untuk menyatakan pembelajaran tersebut secara formal, kita definisikan sebuah fungsi jarak $d(\mathbb{P}G, \mathbb{P}\mathcal{D})$ yang mengukur kedekatan antara kedua distribusi probabilitas. Tujuan dari pembelajaran yang dilakukan oleh model generatif $G$ yaitu meminimalkan nilai fungsi $d(\mathbb{P}G, \mathbb{P}\mathcal{D})$:

$$ \begin{equation}\min_G d(\mathbb{P}G, \mathbb{P}\mathcal{D})\end{equation} $$

Model Variabel Laten

Di kebanyakan permasalahan pembelajaran mesin skala besar, bentuk model yang digunakan adalah model parametrik, yaitu model yang memiliki struktur parameter tertentu dalam jumlah tetap. Model regresi linear merupakan contoh sederhana dari model parametrik, dimana parameter direpresentasikan dalam bentuk koefisien regresi yang berjumlah tetap.

Salah satu bentuk model parametrik yang dapat dimanfaatkan untuk model generatif $G$ adalah model variabel laten. Model ini memiliki variabel tersembunyi $\mathbf{z}$ yang dapat memicu dihasilkannya variabel data $\mathbf{x}$, sebagaimana ilustrasi di bawah ini:

graph LR
  Z(z) --> X(x)

Model tersebut memiliki distribusi probabilitas gabungan:

$$ \mathbb{P}(\mathbf{x}, \mathbf{z}) = \mathbb{P}(\mathbf{x} | \mathbf{z}) \mathbb{P}(\mathbf{z}) $$