Kecerdasan buatan adalah tempat mesin belajar memutuskan dan mengambil tindakan secara cerdas. Pembelajaran tanpa pengawasan menemukan pola dalam data yang mendasarinya. Pembelajaran yang diawasi memprediksi variabel target berdasarkan variabel masukan. Namun, mereka tidak benar-benar memberi tahu kita tindakan apa yang harus diambil. Mereka tidak dapat mengambil tindakan tanpa strategi pengoptimalan lebih lanjut. Di sinilah pembelajaran penguatan berperan. Agen RL mengamati dunia dan menemukan tindakan terbaik untuk diambil. Namun bagaimana mereka memutuskan tindakan mana yang harus diambil? Dalam seri ini, kita akan melihat dunia pengambilan keputusan analitis pada mesin.

Ayo main game! 🎮

Asumsikan Anda adalah monyet yang beruntung dan ada pisang yang jatuh dari 3 pohon. Anda menyukainya karena Anda dapat mengumpulkannya tanpa susah payah. Namun, pisang ini cepat busuk. Karena pisang akan busuk sampai Anda pergi ke pohon berikutnya, Anda harus memilih pohon. Anda dapat tinggal di bawah salah satu dari 3 pohon ini, sehingga Anda memiliki 3 tindakan untuk dipilih. Anda juga dapat mengamati jumlah pisang (hadiah) yang Anda peroleh untuk setiap tindakan yang dilakukan. Bayangkan Anda memainkan permainan ini 1000 kali, bagaimana Anda memutuskan setiap kali untuk mendapatkan total pisang terbanyak?

Ya… Pertanyaan itu memberikan jawabannya sendiri. Anda akan memilih pohon yang paling banyak menjatuhkan pisang. Namun, kami tidak mengetahui secara pasti jumlah pisang untuk setiap pohon. Untungnya, kita dapat menjelajahi alternatif dengan mengamati tindakan acak dan memperkirakan imbalannya. Jadi kita dapat mengeksploitasi selanjutnya dengan memilih tindakan yang memberikan hadiah terbanyak. Voila, beginilah cara kerja bandit multi-bersenjata!

Keseimbangan adalah kuncinya! ☯

Seperti yang kami katakan, kami memiliki dua pekerjaan yang harus dilakukan dan keduanya penting bagi kami. Eksplorasi membuat agen kami lebih mendapat informasi tentang lingkungan, dan eksploitasi memaksimalkan imbalan bagi kami. Seperti kebanyakan masalah dalam hidup, kita juga harus melakukan trade-off di sini dan menemukan titik zen kita. :) Jadi bagaimana kita bisa menemukan keseimbangan yang tepat antara eksplorasi dan eksploitasi?

Biasanya, strategi pertama yang terlintas dalam pikiran adalah melakukan beberapa tindakan acak dari waktu ke waktu. Di sini yang dimaksud dengan waktu ke waktu adalah dengan kemungkinan tertentu. Misalnya, jika kita ingin mempunyai probabilitas 50% untuk melakukan tindakan acak, kita cukup melempar koin. Kemudian, kita dapat mengambil tindakan acak jika itu adalah kepala dan mengambil tindakan optimal saat ini jika itu adalah ekor. Dalam praktiknya, probabilitas ini menjadi rasio tindakan eksplorasi terhadap total tindakan. Strategi ini disebut ε-Greedy.

Saatnya untuk menggunakan bahasa yang mewah…
Bandit multi-senjata untuk mengambil keputusan terpisah dalam satu langkah dengan strategi ε-Greedy:
Diberikan serangkaian tindakan A:
1. Ambil tindakan acak dengan probabilitas ε atau ambil tindakan a_i, sehingga a_i = argmax_a(R(a))
2. Amati imbalannya dan perbarui taksiran imbalannya:
R(a) = mean(imbalan yang diamati untuk a)

Bagus sekali, kami mengembangkan algoritme pertama kami untuk keputusan diskrit satu langkah! Tapi tunggu… Berapa kemungkinan eksplorasi yang bagus? Tidak ada aturan yang mengatakan X adalah nilai terbaik untuk itu, ikuti saja. Kita harus menemukannya dengan coba-coba. Kami menghasilkan beberapa bandit dengan nilai ε berbeda dan membandingkan total hadiah mereka setelah melakukan jumlah tindakan yang sama.

Pertanyaannya adalah, apakah kita bisa menyeimbangkan eksplorasi dan eksploitasi tanpa memberikan kemungkinan ini secara eksplisit dan menghindari kerumitannya. Jawabannya iya! Kita dapat menyeimbangkannya secara implisit dengan menggunakan batas keyakinan atas untuk memperkirakan imbalan. Dengan kata lain, alih-alih mengambil tindakan dengan imbalan yang paling diharapkan, kita dapat mengambil tindakan yang bisa memberikan imbalan yang paling diharapkan. Karena ketidakpastian akan imbalan yang diharapkan berkurang seiring dengan bertambahnya jumlah pengamatan, kita memberikan manfaat dari keraguan pada tindakan yang belum cukup kita coba. Jika ada opsi dengan batas atas imbalan yang diharapkan lebih tinggi, strategi ini akan memilih opsi tersebut untuk menjajaki peluang, yang mungkin lebih baik daripada tindakan terbaik saat ini. Hal ini secara implisit memungkinkan kita untuk mengeksplorasi tindakan, yang memiliki ekspektasi imbalan yang lebih rendah namun memiliki potensi yang lebih tinggi. Pada saat yang sama, setelah cukup banyak iterasi, batas atas semakin mendekati rata-rata untuk semua tindakan. Jadi keputusan kita semakin mendekati keputusan yang menghasilkan imbalan yang paling diharapkan.

Saatnya untuk menggunakan bahasa yang mewah lagi…
Bandit multi-senjata untuk mengambil keputusan terpisah dalam satu langkah dengan UCB1:
Diberikan serangkaian tindakan A:
1. Ambil tindakan a_i, sehingga a_i = argmax_a( R(a))
2. Amati hadiahnya dan perbarui perkiraan hadiahnya:
R(a) = mean(hadiah yang diamati untuk a)
+ sqrt(2 * ln(#total tindakan diambil) / #tindakan yang diambil untuk a)

Ringkasnya:
1. Dalam pengambilan keputusan terpisah satu langkah, bandit dapat bertindak berdasarkan kebijakan dan mengamati imbalannya.
2. Untuk bertindak secara cerdas, mereka perlu melakukan 2 tugas. Yang pertama adalah mengeksplorasi lingkungan dan memperkirakan imbalan atas tindakan. Kedua, mereka perlu melakukan eksploitasi dengan memilih tindakan berdasarkan perkiraan imbalan.
3. Untuk menyeimbangkan eksplorasi dan eksploitasi, kita dapat menggunakan strategi ε-Greedy atau UCB.