Peta prasyarat

Fondasi machine-learning dan deep-learning yang diasumsikan serta petunjuk matematika.

Daftar isi

Jalur ini mengasumsikan beberapa fondasi yang sudah dimiliki pembaca, dan topik ini memetakan fondasi tersebut secara terbuka agar tidak ada kejutan di tengah jalan. Pembahasan mencakup konsep machine-learning dan deep-learning yang dianggap sudah dikuasai, petunjuk matematika yang dipakai sepanjang jalur, serta peta dependensi antar modul untuk menunjukkan kapan masing-masing prasyarat benar-benar dipanggil. Pada akhir topik terdapat pemeriksaan versi paket agar pengaturan sandbox dapat dikonfirmasi sebelum melangkah ke modul berikutnya.

Fondasi machine-learning yang diasumsikan#

Jalur ini menganggap pembaca sudah menguasai kerangka dasar machine-learning, yaitu pembagian data latih dan validasi, pelatihan dengan penurunan gradien, dan evaluasi performa pada data yang belum pernah dilihat. Pembagian latih dan validasi menjadi acuan ketika nanti dibahas konsep generalisasi seorang agen ke keadaan yang belum dikunjungi. Penurunan gradien dipakai pada modul deep-learning, di mana parameter kebijakan atau fungsi nilai diperbarui dengan cara yang serupa dengan pelatihan jaringan pada pembelajaran terawasi.

Evaluasi pada reinforcement learning tidak sederhana, sebab data uji tidak diberikan tetapi dihasilkan dengan menjalankan agen itu sendiri. Karena itu, diperlukan disiplin seed dan protokol evaluasi yang konsisten, sebuah hal yang akan dibahas tuntas pada modul kampanye pelatihan. Bagi pembaca yang belum pernah mengevaluasi model pada data terpisah, disarankan meninjau kembali konsep data latih dan validasi sebelum melanjutkan, sebab tanpa fondasi tersebut, jejak pembelajaran agen mudah dibaca secara keliru sebagai kemajuan padahal hanyalah kebetulan.

Deep-learning untuk modul selanjutnya#

Sebagian modul, terutama yang menyangkut aproksimasi fungsi dan kebijakan, memakai jaringan saraf sebagai komponen inti. Modul DQN memakai jaringan saraf untuk memperkirakan nilai setiap aksi, sedangkan modul gradien kebijakan memakainya untuk merepresentasikan distribusi aksi secara langsung. Karena itu, pemahaman tentang lapisan terhubung penuh, fungsi aktivasi, dan propagasi balik dianggap sudah dikuasai pada saat kedua modul tersebut dibahas.

Bagi modul M0 hingga M5, deep-learning tidak menjadi penghalang. Materi pada modul pengenalan, siklus, MDP, bandit, pemrograman dinamis, dan pembelajaran temporal-difference hanya memakai tabel dan operasi numerik dasar. Peta berikut memperlihatkan urutan modul dan titik di mana prasyarat deep-learning mulai dipanggil.

M0mengenal-rlM1siklusM2MDPM3banditM4DPM5TDM6DQNM7PGM8PPO dan proyekprasyarat deep-learning (M6-M8)
Peta dependensi modul M0-M8: modul M0 hingga M5 dapat diikuti tanpa deep-learning, sedangkan M6-M8 memerlukan fondasi jaringan saraf

Diagram di atas memetakan modul pada garis waktu yang lurus, dengan M0 hingga M5 membangun inti tabular, lalu M6 hingga M8 memasuki wilayah pendekatan fungsi. Pembaca yang baru mengenal deep-learning tetap dapat mengikuti jalur hingga akhir modul M5, dan menjeda sementara untuk mempelajari deep-learning sebelum melanjutkan ke M6.

Pada modul DQN, pengetahuan tentang fungsi kerugian rata-rata kuadrat dan optimisasi Adam menjadi prasyarat langsung, sebab jaringan nilai dilatih untuk meminimalkan selisih antara nilai perkiraan dan target sementaranya. Pada modul gradien kebijakan, propagasi balik diperluas melalui distribusi probabilitas aksi, sehingga pemahaman turunan logaritmik dan fungsi aktivasi softmax menjadi kunci. Bila ketiga konsep ini masih asing, modul M0 hingga M5 memberi waktu untuk meninjaunya kembali sebelum benar-benar dipanggil pada M6.

Petunjuk matematika#

Tiga konsep matematika muncul berulang sepanjang jalur dan sebaiknya dikenali lebih dahulu. Yang pertama adalah probabilitas diskret, yang dipakai ketika kebijakan didefinisikan sebagai distribusi atas aksi, dan ketika transisi keadaan bersifat stokastik. Yang kedua adalah ekspektasi, yang menjadi dasar definisi return sebagai nilai rata-rata reward yang ditimbang menurut waktu. Yang ketiga adalah turunan, yang dipakai pada modul gradien kebijakan untuk mengoptimalkan parameter kebijakan.

Faktor diskon gamma menghubungkan ketiga konsep tersebut. Return dirumuskan sebagai ekspektasi jumlah reward yang ditimbang dengan pangkat gamma, sehingga gamma mengatur seberapa jauh ke masa depan agen mempertimbangkan konsekuensi aksinya. Turunan muncul ketika gradien kebijakan dihitung terhadap ekspektasi return ini. Tiga konsep tersebut tidak perlu dikuasai secara mendalam pada modul pengenalan, tetapi diingat sebagai istilah yang akan dijumpai, agar ketika rumus formalnya muncul di modul MDP dan gradien kebijakan, hubungannya sudah terbayang.

Pemeriksaan versi paket#

Sebelum melanjutkan ke modul berikutnya, konfirmasi versi paket di sandbox. Potongan berikut mencetak versi Python serta paket utama yang dipakai di seluruh jalur. Pemeriksaan ini hanya membaca atribut __version__, sehingga aman dan cepat dijalankan.

python Pemeriksaan versi paket
import warnings
warnings.filterwarnings("ignore")
import sys
import numpy
import gymnasium
import torch
print(f"python {sys.version.split()[0]}")
print(f"numpy {numpy.__version__}")
print(f"gymnasium {gymnasium.__version__}")
print(f"torch {torch.__version__}")
text Keluaran
python 3.12.16
numpy 2.1.3
gymnasium 1.4.0
torch 2.15.0+cpu

Bila versi pada mesin pembaca berbeda, keluaran pemeriksaan ini akan menyimpang. Selisih kecil pada versi minor biasanya tidak menjadi masalah karena API yang dipakai stabil, tetapi perubahan besar pada Gymnasium atau PyTorch dapat menyebabkan perbedaan perilaku. Pada kasus tersebut, rujuk dokumentasi resmi paket yang bersangkutan, yang dicantumkan di bagian Referensi pada tiap topik.

Ringkasan#

  • Kerangka machine-learning dasar, yaitu pembagian latih dan validasi, penurunan gradien, dan evaluasi pada data terpisah, diasumsikan sepanjang jalur.
  • Deep-learning menjadi prasyarat baru pada modul M6 hingga M8, sedangkan M0 hingga M5 dapat diikuti tanpa jaringan saraf.
  • Probabilitas diskret, ekspektasi, dan turunan adalah tiga konsep matematika yang muncul berulang, terutama saat mendefinisikan return dan menghitung gradien kebijakan.

Referensi#

  • Spinning Up — OpenAI — Bagian “background” menyebut prasyarat matematika dan deep-learning yang lazim diasumsikan pada pembelajaran reinforcement learning.
  • PyTorch Documentation — PyTorch — Dokumentasi resmi PyTorch yang dirujuk sepanjang modul yang memakai jaringan saraf sebagai prasyarat.