Kesamaan Supervised dan Unsupervised di Python
Ada yang menarik ketika kita menulis program atau algoritma SL dan UL di Python, yaitu keduanya memiliki banyak kemiripan.
Jika pembaca sudah membaca beberapa artikel saya sebelumnya tentang SL dan UL, maka di Python kita selalu menggunakan library SciKit-Learn, yang dalam Python kita tulis dengan sklearn. Mengapa keduanya menggunakan satu library ini saja? Karena polanya memang sangat mirip.
Input yang digunakan untuk SL dan UL adalah X yang merupakan sebuah matriks (A x B), dan targetnya adalah y yang merupakan matriks (A x 1). Perlu diingat bahwa matriks dibaca sebagai (baris x kolom), sehingga (2 x 3) artinya 2 baris dan 3 kolom.
Pola SL dan UL selalu sama seperti di atas, yaitu input X dan output y. Walaupun kita mengolah data di bidang IT, science, perbankan, biologi, ekonomi, dan lain-lain polanya juga tetap seperti di atas.
Berbeda dengan keduanya, agent di dalam RL berinteraksi tidak hanya dengan dataset X dan y, melainkan dengan semua unsur yang ia temui di lingkungan. Interaksinya bisa dilakukan dengan dunia sesungguhnya, atau bisa juga hanya berupa simulasi komputer. Misal: melatih robot untuk bisa berjalan, maka lingkungannya adalah dunia luar. Namun jika kita melatih mario bros untuk bisa menjalankan game mario bros, maka lingkungannya adalah simulasi game mario bros itu sendiri.

Untuk bisa berinteraksi dengan dunia luar, maka agen harus diengkapi dengan beberapa sensor. Beberapa sensor yang sering dipakai adalah gps, kamera, accelerometer, heat detector, microphones dan masih banyak lagi yang bisa ditambahkan.
Data yang dibaca oleh RL juga bersifat kontinu, artinya terus menerus. Agen akan membaca data masa lalu dan data yang ia temui, dan terus mengupdatenya dengan terus berusaha memaksimalkan rewardnya. Datanya bersifat real-time dan bukan data given seperti SL dan UL. RL bersifat dinamis, sementara SL, dan UL bersifat statis.
Agen di RL berjalan sesuai waktu. Setiap tahapan yang ia lalui ia harus selalu mengambil langkah (policy) yang terbaik. Dengan demikian, waktu adalah komponen yang tidak terpisahkan dari RL.
Untuk melanjutkan membaca silakan klik tombol halaman selanjutnya di bawah ini.
Halo Pak, saya mau bertanya tentang definisi S dan S’, misalkan saya ambil dalam permaninan mario bros pada saat melompati box, bisa dikatakan Mario adalah Agent, Melompat adalah Action, Box adalah environtment, nah bagian S dan S’ yang mana yah pak? mohon pencerahan nya Pak, Terima Kasih
Halo, S adalah kondisi (state) saat ini (sebut saja saat t, di mana t adalah satuan waktu), dan S’ istilah untuk S yg baru yaitu ketika Mario melompat (saat t+1), S’ ini juga disebut S(t+1).
Ketika kita berada di t+1 (perspektif waktunya maju sebanyak 1 satuan), maka t+1 menjadi t, dan S’ menjadi S.
Kemudian, misal setelah melompat tadi, Mario jongkok (saat t+2), maka state yang baru tetap disebut sebagai S’ atau bisa kita tulis secara matematis menjadi S(t+2).
Ketika kita berada di t+2, maka S’ tadi menjadi S (state saat ini).
Semoga paham ya penjelasan saya di atas.
Terima Kasih atas jawaban nya pak, maaf jika saya bertanya lagi, jika S+1 itu pd saat mario melompat, dan S+2 itu pd saat mario jongkok, berarti S(Skondisi) sepertinya hampir sama dengan Action yah pak? koreksi jika saya salah pak, apakah bisa dikatakan juga S+1 itu Kondisi Mario dibelakang Box (sebelum melompat), dan S+2 itu Kondisi Mario didepan/diatas Box (sesudah melompat)? mohon bantuan penjelasan lagi pak, Terima kasih
State berbeda dengan action.
State adalah kondisi setelah action. Ia tidak hanya merangkum action yang sudah dilakukan tapi juga lingkungan di sekitarya.
Sementara action adalah aksi dari Agen itu sendiri.
– Jadi sebelum Mario melompat ia berada di S (kondisi saat ini).
– Ia melakukan action melompat, maka sekarang state nya menjadi S(t+1).
– Ia melakukan action jongkok, maka state nya menjadi S(t+2).
Cara membayangkannya cukup buat tabel, ada kolom state dan ada kolom action.
Semoga menjawab.
Terima kasih Jawaban nya pak, saya mengerti sekarang.