Mengapa (dan kapan) seseorang harus mempelajari fungsi hadiah dari sampel dalam pembelajaran penguatan?

9

Dalam pembelajaran penguatan, kami memiliki fungsi hadiah yang menginformasikan agen seberapa baik tindakan dan negara saat ini dilakukan. Dalam beberapa pengaturan umum fungsi hadiah adalah fungsi dari tiga variabel:

  1. Keadaan saat iniS
  2. Tindakan saat ini pada kondisi saat iniπ(s)=a
  3. Keadaan selanjutnyaS

Jadi terlihat seperti:

R(S,a,S)

Apa pertanyaan saya (yang mungkin salah paham saya), biasanya orang yang menggunakan pembelajaran penguatan memutuskan apa hadiahnya. Misalnya, ia menetapkan 1000 poin untuk mencapai tujuan, atau memberikan -1000 poin untuk menabrak robot otonom. Dalam skenario ini, tidak jelas bagi saya mengapa kita perlu sampel untuk belajar R. R adalah apriori yang ditentukan dan kemudian kita menggunakan agen kami. Baik? Namun, saya tahu saya salah karena dalam catatan Andrew Ng ia berkata:

masukkan deskripsi gambar di sini

Di mana dia mengatakan bahwa kita tidak tahu fungsi hadiah secara eksplisit. Bagi saya itu aneh. Saya tahu saya salah dan saya akan senang jika ada yang bisa menjelaskan kepada saya dalam skenario apa kita sebenarnya harus belajar R dari sampel?

(jelas, probabilitas transisi harus dipelajari karena seseorang tidak tahu bagaimana lingkungan akan membuat agen kami bergerak apriori).

Pinokio
sumber

Jawaban:

4

Dalam catatannya, ketika Anda harus "memperkirakannya dari data", dia tidak bermaksud fungsi hadiah . Anda jarang memperkirakan fungsi hadiah. Anda biasanya mempelajari fungsi nilai , yang memperkirakan imbalan langsung plus hadiah sementara yang didiskontokan sementara (jika diskon temporal adalah nol, maka Anda memperkirakan imbalannya). Atau, Anda dapat mempelajari nilai Q , yang merupakan nilai yang terkait dengan pasangan tindakan negara.

Singkatnya, fungsi hadiah dan fungsi transisi yang sebenarnya ditentukan oleh lingkungan. Agen mempelajari hal-hal seperti fungsi transisi, nilai Q, dan fungsi nilai.

Neil G
sumber
1
Perhatikan juga bahwa kadang-kadang kita ingin belajar fungsi hadiah (Inverse Reinforcement Learning)
hipoglucido
1

Saya setuju dengan jawaban lain yang biasanya, fungsi hadiah tidak dipelajari secara langsung.

Probabilitas transisi juga tidak harus dipelajari. Agen dapat belajar langsung nilai tindakan, atau bahkan langsung kebijakan, dengan metode gradien kebijakan misalnya.

Namun, ada teknik-teknik di mana imbalan dan probabilitas transisi harus dipelajari. Sebagai contoh, algoritma dyna-Q (dijelaskan dalam Sutton & Barto) memelihara model lingkungan. Pada setiap langkah waktu, agen menggunakan hadiah dan informasi negara yang diterima dari lingkungan untuk memperbarui nilai tindakan, seperti dalam Q-learning misalnya.

Tetapi ia juga memperbarui model lingkungannya sendiri, dan kemudian melakukan pembaruan nilai-nilai tindakan lain berdasarkan pada model itu. Anggapannya adalah bahwa loop pengindraan bertindak membutuhkan waktu yang tidak nol, waktu yang dapat kita manfaatkan dengan meningkatkan nilai tindakan dengan sampel yang disimulasikan.

Jacques
sumber
1

Ini adalah pertanyaan bagus yang lebih dalam dari kata-kata Andrew yang tidak tepat. Memang benar bahwa dalam RL Anda umumnya tidak perlu mempelajari fungsi hadiah R (S, A, S '); Anda perlu menentukannya sebagai bagian dari pengaturan masalah. NAMUN, ada algoritma (dalam pengalaman saya yang terkait dengan fungsi nilai status afterstate atau pasca-keputusan) yang membutuhkan imbalan yang diharapkanr (S, A) = E [R (S, A, S ') | S, A]. Secara umum teks yang saya lihat membuat sedikit komentar tentang ini dan menganggap bahwa r (s, a) dikenal seperti R (S, A, S ') dikenal. Tetapi dalam beberapa kasus, hadiah tergantung pada kondisi masa depan sehingga, tanpa model, Anda perlu mempelajari harapan ini. Saat ini saya sedang mengerjakan masalah di mana fungsi hadiah yang diharapkan serta fungsi nilai perlu dipelajari. Perhatikan bahwa sebagian besar algoritma RL TIDAK memerlukan fungsi hadiah yang diharapkan, tetapi beberapa melakukannya. Lihat misalnya diskusi pada hal 58 di Algoritma untuk Pembelajaran Penguatan oleh Szepesvari.

Singkatnya, Anda tidak perlu mempelajari fungsi hadiah, tetapi ketika bekerja dengan variabel status pasca-keputusan, Anda mungkin perlu mempelajari fungsi hadiah yang diharapkan . Ini adalah satu-satunya kasus yang saya ketahui di mana Anda perlu mempelajari fungsi hadiah yang diharapkan, tetapi saya akan tertarik untuk mendengar kasus lain.

Mark Britten-Jones
sumber
0

Dalam pembelajaran penguatan, agen belajar fungsi nilai, bukan fungsi hadiah. Nilai dari suatu tindakan adalah keseluruhan utilitasnya; misalnya, suatu tindakan dapat membawa hadiah tinggi, tetapi mengarah ke status bernilai rendah, membuatnya bernilai rendah.

Apa kata kutipan itu adalah bahwa kadang-kadang dunia ini rumit: beberapa masalah memiliki ruang tindakan negara yang terlalu besar untuk dihitung, jadi kami tidak memiliki probabilitas transisi dan fungsi hadiah yang eksplisit. Dalam kasus seperti itu, agen harus mempelajari generalisasi fungsi nilai sebenarnya.

Don Reba
sumber
0

Saya pikir catatan itu sedikit membingungkan. Hadiah harus dirancang oleh Anda untuk mendorong agen RL Anda untuk mengoptimalkan perilaku yang ingin Anda lihat. Transisi antar negara diberikan oleh lingkungan dan akan sering diperkirakan dari data. Menurut saya yang dimaksud Andrew adalah situasi di mana dari negara A Anda bisa beralih ke negara B yang Anda beri hadiah x atau negara C yang Anda beri hadiah y. Jika status B dan C identik kecuali untuk perbedaan dalam hadiah, Anda akan sering menghilangkan status B dan C dan memberi status A estimasi yang diperkirakan dari data yang menunjukkan seberapa sering Anda beralih ke B atau C dari A.

nsweeney
sumber