1st Quiz 2024/2025

Created onDibuat pada
Last updated onTerakhir diperbarui
14 min read14 menit baca
IDensemblePerceptronFFNN
ContributorsKontributor
Razi Rachman Widyadhana - @zirachw

Kuis 1 IF3270 Pembelajaran Mesin, Semester II 2024/2025.

#Link to this headingBagian I: Ensemble

#Link to this headingSoal 1 [Nilai: 25]

Diberikan model ensemble dengan 3 base classifiers untuk klasifikasi biner (kelas Pos atau Neg). Setiap base classifier memberikan prediksi dalam bentuk peluang kelas Pos. Ketika diberikan sebuah instance x, berikut hasil prediksinya:

Base-classifierBobotPrediksi
Model 10.250.2
Model 20.450.75
Model 30.30.4

Lakukanlah inferensi model ensemble untuk mendapatkan hasil prediksi akhir apakah x termasuk dalam kelas Pos atau Neg dengan skema berikut. Sebelum menjawab kelas prediksinya, berikanlah terlebih dahulu metode inferensi dari setiap skema. Informasi yang tidak diperlukan, dapat diabaikan.

Catatan:

  • Jawaban prediksi tanpa penjelasan caranya tidak akan dinilai.
  • Jika terdapat beberapa versi algoritma yang dipelajari di kuliah, sebutkan versi mana yang digunakan.
  • Jika terdapat bagian yang tidak jelas, tuliskanlah asumsinya secara eksplisit.

#Link to this headinga. Bagging

#Link to this headingb. Random Forest

#Link to this headingc. Heterogeneous Ensemble with Weighting

#Link to this headingd. Heterogeneous Ensemble with Meta-Learning

Level 1 base-estimators: Model 1 dan Model 2. Level 2 estimator: Model 3.

#Link to this headinge. AdaBoost

#Link to this headingSoal 2 [Nilai: 5]

Jelaskanlah proses training dan inferensi pada Gradient Boosting.

#Link to this headingBagian II: Perceptron

Terdapat dataset berlabel yang terdiri atas 3 instances dengan 4 fitur/atribut (f1f_1 s.d. f4f_4) berikut ini, untuk klasifikasi sentimen terhadap data review produk.

Pembelajaran untuk membentuk hipotesis (model) dilakukan dengan Perceptron - Batch Gradient Descent (fungsi aktivasi linear). Encoding kelas positif adalah 1 dan kelas negatif adalah -1, dengan batas untuk kelas positif >0> 0. Inisialisasi bobot semua fitur adalah 1, dan inisialisasi bobot bias adalah -1. Learning rate 0.1, Error threshold 0.5, Max epoch: 5.

Data training:

Reviewf1f_1f2f_2f3f_3f4f_4sentimen
r110011
r200101
r311011

#Link to this headinga. [Nilai: 25]

Lakukan proses pembelajaran model dengan menuliskan detil perhitungan di setiap epoch. Tuliskan bobot yang dihasilkan dan error dari hasil pembelajaran.

#Link to this headingb. [Nilai: 10]

Diberikan data uji sebagai berikut, lakukan prediksi kelas sentimen dengan menggunakan model yang dihasilkan pada bagian a). Hitung akurasi model.

Reviewf1f_1f2f_2f3f_3f4f_4sentimen
r400001
r511001

#Link to this headingBagian III: ANN: FFNN

(Bagian III terdiri atas 6 soal)

Terdapat sebuah arsitektur Feed Forward Neural Network (FFNN) sebagai berikut, untuk mempelajari dataset yang memiliki 3 fitur input dengan sebuah label kelas. Arsitektur FFNN memiliki dua hidden layer, dan tiap hidden layer memiliki dua neuron; serta sebuah neuron pada output layer. Aturan penamaan yang digunakan adalah sebagai berikut:

  1. Input adalah xix_i, dengan ii terurut mulai dari 1
  2. Hidden layer pertama h1-ih_{1\text{-}i}, dengan ii terurut mulai dari 1
  3. Hidden layer kedua h2-ih_{2\text{-}i}, dengan ii terurut mulai dari 1
  4. Prediksi output adalah oio_i, dan target output adalah tit_i, dengan ii terurut mulai dari 1
  5. Bobot adalah w[m][n]w[m][n], dengan mm adalah asal dan nn adalah tujuan
  6. Jika diperlukan variabel tambahan, silahkan diberikan penamaan sendiri secara konsisten.

#Link to this headingSoal 1 [Nilai: 6]

Gambarkan arsitektur FFNN secara eksplisit sesuai spesifikasi, lengkap untuk semua variabel dan bobot yang diperlukan, beserta penamaannya.

#Link to this headingSoal 2 [Nilai: 6]

Tentukan banyaknya parameter yang perlu dipelajari berdasarkan spesifikasi dan arsitektur yang telah digambarkan. Tuliskan angka yang terlibat dan tidak hanya hasil akhir saja.

#Link to this headingSoal 3 [Nilai: 6]

Jika hidden layer pertama menggunakan fungsi aktivasi sigmoid, dan hidden layer kedua menggunakan fungsi aktivasi ReLU, serta output layer menggunakan fungsi aktivasi linear, tentukan output h2-1h_{2\text{-}1}.

Tuliskan dalam bentuk formula detil dengan variabel-variabel yang terlibat, mulai dari input. Fungsi aktivasi tidak dituliskan nama fungsi saja, tapi lengkap formulanya.

#Link to this headingSoal 4 [Nilai: 6]

Jika:

  1. Fungsi loss/cost (EE) yang digunakan adalah Squared Error dengan turunan terhadap output adalah: (−1)⋅(ti−oi)(-1) \cdot (t_i - o_i)
  2. Turunan fungsi linear adalah 11
  3. Turunan fungsi ReLU adalah 11 jika input fungsi >0> 0, dan 00 jika input fungsi ≤0\leq 0
  4. Turunan fungsi sigmoid adalah output⋅(1−output)\text{output} \cdot (1 - \text{output})
  5. Error term dari o1o_1 adalah δo1\delta_{o_1} (δo1=∂E∂neto1\delta_{o_1} = \frac{\partial E}{\partial \text{net}_{o_1}})

Tentukan (dalam formula rinci) nilai δh2-1\delta_{h_{2\text{-}1}} (error term untuk h2-1h_{2\text{-}1}, δh2-1=∂E∂neth2-1\delta_{h_{2\text{-}1}} = \frac{\partial E}{\partial \text{net}_{h_{2\text{-}1}}}).

#Link to this headingSoal 5 [Nilai: 6]

Tentukan nilai update untuk w[h2-1][o1]w[h_{2\text{-}1}][o_1] dalam bentuk formula yang melibatkan variabel-variabel yang diperlukan, jika learning rate adalah η\eta.

#Link to this headingSoal 6 [Nilai: 5]

Lingkarilah pernyataan yang benar dari lima pernyataan berikut ini.

a. Semakin dalam suatu FFNN, artinya semakin banyak neuron yang digunakan dalam satu hidden layer.

b. Penggunaan nilai learning rate yang semakin besar menjamin pencapaian global cost (lost) minimum semakin cepat sehingga meminimalkan jumlah epoch.

c. Nilai hasil fungsi aktivasi sigmoid tidak pernah bernilai negatif.

d. Jika semua bobot dalam FFNN bernilai 0.1, dan setiap hidden layer hanya berisi 1 neuron serta menggunakan fungsi aktivasi sigmoid untuk seluruh layer, maka saat dilakukan Backpropagation, FFNN dengan 10 hidden layer akan menghasilkan nilai gradient lebih kecil di hidden layer pertama, dibandingkan dengan FFNN dengan 5 hidden layer.

e. Bobot dari bias selalu bernilai 1.