Bagaimana Anda memprogram ketakutan ke dalam jaringan saraf?


8

Jika Anda pernah diserang oleh laba-laba sekali kemungkinan Anda tidak akan pernah mendekati laba-laba lagi.

Dalam model jaringan saraf, memiliki pengalaman buruk dengan laba-laba akan sedikit mengurangi kemungkinan Anda mendekati laba-laba tergantung pada tingkat pembelajaran.

Ini tidak bagus. Bagaimana Anda bisa memprogram ketakutan ke dalam jaringan saraf, sehingga Anda tidak perlu ratusan contoh digigit laba-laba untuk mengabaikan laba-laba itu. Dan juga, itu tidak hanya menurunkan kemungkinan Anda akan memilih untuk mendekati laba-laba?


Ketakutan adalah tingkat belajar yang berkurang dengan komponen stokastik yang diperbesar, tetapi tanpa pusat bahasa sistem tidak dapat mengatakan, "Saya takut."
FelicityC

Artikel WP Pembelajaran One-shoot en.wikipedia.org/wiki/One-shot_learning menyertakan bagian tentang belajar dengan satu contoh.
Jaume Oliver Lafont

Jawaban:


5

Ada banyak pendekatan yang bisa Anda ambil untuk ini. Membuat analog buatan yang realistis untuk rasa takut sebagaimana diterapkan secara biologis pada hewan mungkin dilakukan, tetapi ada cukup banyak yang terlibat dalam respons rasa takut hewan nyata yang tidak akan berlaku dalam bot AI yang lebih sederhana yang tersedia sekarang. Misalnya, hewan yang memasuki kondisi ketakutan biasanya akan menggunakan hormon untuk memberi sinyal perubahan di seluruh tubuhnya, mendukung pengeluaran sumber daya dan pengambilan risiko ("berkelahi atau melarikan diri").

Dalam pembelajaran penguatan dasar, jaringan saraf tidak perlu secara langsung memutuskan untuk mengaktifkan "mode ketakutan". Sebagai gantinya, Anda dapat menggunakan beberapa desain dalam agen dan algoritma pembelajaran untuk membantu belajar dari peristiwa langka namun penting. Berikut ini beberapa ide:

  • Putar ulang pengalaman. Anda mungkin sudah melakukan ini dalam skenario Pacman, jika Anda menggunakan DQN atau yang serupa. Menyimpan transisi negara dan hadiah yang menyebabkan hadiah positif atau negatif yang besar, dan berulang kali belajar darinya harus mengimbangi kekhawatiran Anda

  • Penyapuan yang diprioritaskan. Anda dapat menggunakan perbedaan yang lebih besar yang dialami antara hadiah yang diprediksi dan yang sebenarnya untuk bias pengambilan sampel dari memori ulangan Anda terhadap peristiwa penting dan yang terkait erat dengannya.

  • Perencanaan Dengan model prediktif - mungkin berdasarkan transisi sampel (Anda dapat menggunakan kembali memori replay pengalaman untuk ini), atau mungkin jaringan prediksi transisi keadaan terlatih - maka Anda dapat melihat beberapa langkah ke depan dengan mensimulasikan. Ada hubungan yang kuat antara RL dan perencanaan masa depan juga, mereka adalah algoritma yang sangat mirip. Perbedaannya adalah negara dan tindakan mana yang dipertimbangkan, dan apakah mereka disimulasikan atau dialami. Replay pengalaman mengaburkan garis di sini - dapat dibingkai sebagai pembelajaran dari memori, atau meningkatkan prediksi untuk perencanaan. Perencanaan membantu dengan mengoptimalkan keputusan tanpa perlu mengulangi pengalaman sebanyak mungkin - kombinasi perencanaan dan pembelajaran bisa jauh lebih kuat daripada keduanya secara terpisah.

  • Pilihan tindakan eksplorasi yang lebih cerdas. Epsilon-serakah, di mana Anda mengambil tindakan serakah atau mengambil tindakan yang benar-benar acak, sepenuhnya mengabaikan seberapa banyak Anda mungkin telah belajar tentang tindakan alternatif dan manfaat relatifnya. Anda dapat menggunakan sesuatu seperti Batas Keyakinan Tinggi dengan agen berbasis nilai.

  • Dalam dunia deterministik, tingkatkan ukuran batch untuk pembelajaran dan perencanaan, karena Anda dapat percaya bahwa ketika transisi dipelajari sekali, Anda tahu segalanya tentang hal itu.

Anda perlu bereksperimen di setiap lingkungan. Anda dapat membuat agen pembelajaran yang lebih konservatif dalam mengeksplorasi area dekat hadiah rendah. Namun, jika lingkungannya sedemikian rupa sehingga perlu mengambil risiko untuk mendapatkan hadiah terbaik (yang sering terjadi dalam permainan) maka mungkin tidak optimal dalam hal waktu belajar untuk memiliki agen "pemalu". Misalnya dalam contoh Pacman Anda, kadang-kadang hantu harus dihindari, kadang-kadang mereka harus dikejar. Jika agen tersebut awalnya belajar keengganan yang kuat, mungkin perlu waktu lama untuk mengatasinya dan belajar untuk mengejarnya setelah memakan power-up.

Sebagai contoh laba-laba Anda, sebagai pembangun percobaan maka Anda tahu bahwa gigitannya buruk setiap waktu dan bahwa agen harus menghindarinya sebanyak mungkin. Bagi kebanyakan algoritma RL, tidak ada pengetahuan seperti itu, kecuali diperoleh melalui pengalaman. Model dunia MDP tidak perlu cocok dengan akal sehat, mungkin gigitan laba-laba buruk (-10 hadiah) 90% dari waktu dan baik 10% dari waktu (+1000 hadiah). Agen hanya dapat menemukan ini dengan digigit beberapa kali. . . RL biasanya tidak memulai dengan sistem apa pun untuk membuat asumsi tentang hal semacam ini, dan mustahil untuk membuat aturan umum tentang semua MDP yang mungkin. Sebagai gantinya, untuk sistem RL dasar, Anda dapat mempertimbangkan memodifikasi hiperparameter atau berfokus pada peristiwa utama seperti yang disarankan di atas. Di luar sistem RL dasar mungkin ada manfaat dalam mereplikasi hal-hal lain,


1
Ini akan menjadi proses yang cukup rumit untuk memodelkan sesuatu seperti ketakutan ... tingkat pembelajaran yang berbeda untuk objek yang berbeda (tapi mungkin itu dirawat dengan meningkatnya risiko = peningkatan tingkat pembelajaran), maka beberapa orang memiliki ketakutan irasional terhadap bug ... .kemudian ada teori bahwa pikiran kita bekerja secara logaritmis yaitu Anda takut pada 1 harimau, Anda masih lebih afrai dari 2 harimau ... Anda takut pada 100 harimau, tetapi ketakutan Anda tidak bertambah sebanyak 101 harimau seperti pada contoh 1 -> 2 kasing ..... dapatkah semua ini dimodelkan?
DuttaA

1
@ Duta: Saya setuju, itulah sebabnya saya menyarankan banyak hal yang bukan "ketakutan nyata (tm)". Saya pikir "ketakutan naluriah" yang sangat mendasar menggunakan RL akan melibatkan entah bagaimana menambahkan nilai rendah sebelumnya ke dalam fungsi nilai secara terprogram tanpa pengalaman nyata.
Neil Slater

2

Saya pikir ada 2 cara untuk mewujudkan hal ini: 1) secara eksplisit memprogram ketakutan sebagai batasan atau parameter dalam beberapa ekspresi logis, atau 2) memanfaatkan satu set besar data pelatihan untuk mengajarkan ketakutan.

Pikirkan tentang permainan Pacman dasar - apakah Pacman takut hantu atau tidak takut mereka sulit untuk mengatakannya, tetapi mereka ADALAH hantu dan Pacman menghindarinya jadi saya pikir aman kita bisa menggunakan ini sebagai contoh dasar "ketakutan". Karena, dalam game ini, fear = avoidance, Anda secara logis dapat memprogram penghindaran menjadi semacam jarak. Saya mencoba ini dengan pembelajaran penguatan Pacman. Saya mencoba mengatur jarak 5 kotak ke hantu dan kapan saja Pacman bisa melihat hantu dalam 5 kotak, dia akan bergerak ke arah yang berbeda. Apa yang saya temukan adalah bahwa sementara Pacman akan berusaha menghindari hantu, dia tidak tahu strategi (atau memiliki kecerdasan). Pacman hanya akan pindah dari hantu sampai dia masuk kotak.

Maksud saya adalah Anda dapat memprogram jaringan Anda untuk menghindari laba-laba agar tidak mendapatkan bit, tetapi tanpa pelatihan, Anda hanya akan membuat parameter dasar yang dapat menyebabkan masalah jika ada 100 laba-laba super agresif mendatangi Anda! Cara yang lebih baik adalah dengan menggunakan beberapa logika dasar untuk menghindari laba-laba, tetapi kemudian latih jaringan untuk dihadiahkan laba-laba yang lebih baik dihindari.

Sekarang, ada banyak situasi ketakutan sehingga satu contoh dengan Pacman ini belum tentu berlaku untuk semua ... Hanya mencoba untuk memberikan beberapa wawasan dalam pengalaman saya dengan mengajar rasa takut dengan pembelajaran penguatan di Pacman.


1
Saya berpikir bahwa untuk beberapa hal seperti api, perlu insting. Karena pada saat Anda sudah memiliki beberapa "contoh pelatihan" Anda akan cukup terbakar. Tetapi dengan hal-hal lain Anda hanya perlu satu contoh seperti menggigit oleh hamster. Anda harus belajar hamster memiliki gigi yang tajam jadi jangan taruh tangan Anda di mulutnya. Jadi untuk beberapa hal, insting seharusnya mencegah Anda melakukan hal-hal seperti meletakkan tangan Anda di api. Atau membuat Anda melompat mundur. Tetapi haruskah Anda juga takut mendekati api jika mengetahui bahwa Anda mungkin terkena percikan api?
zooby

2
@zooby dalam pengalaman saya, anak-anak kecil tidak benar-benar belajar untuk takut dengan kompor atau api panas sampai mereka benar-benar terbakar. (s'why Anda harus terus mengawasi mereka!) Saya akan mengatakan bahwa jika algoritma belajar penghindaran melalui teknik seperti penguatan pembelajaran, itu adalah "belajar apa yang harus ditakuti", sedangkan, jika memiliki mekanisme penghindaran yang sudah diprogram, itu akan menjadi "insting".
DukeZhou

2

Ketakutan semacam ini adalah respons irasional (insentif negatif besar dalam menanggapi risiko kecil). Ketakutan pemodelan perlu memodelkan faktor "kotor" yang terkait dengan, misalnya, laba-laba sehingga respons yang biasanya tidak proporsional akan terjadi. Faktor "kotor" dapat dimanifestasikan dalam banyak bentuk lain untuk memperbesar respons terhadap pengalaman yang sebelumnya tidak menyenangkan, meskipun tidak terlalu berbahaya. Ketakutan seperti itu juga dapat terinspirasi oleh desas-desus (pikirkan histeria yang disebabkan oleh berita yang sensasional). NN biasanya hanya merespons minimal terhadap risiko minimal.


1

Saya akan menyarankan agar agen mempertimbangkan pelajaran dari peristiwa tertentu berdasarkan beratnya konsekuensi dari peristiwa itu terjadi. Misalnya. Mintalah ia mengembangkan model ancaman seperti yang biasanya disusun di bidang Keamanan Informasi. Risiko tinggi tetapi probabilitas rendah adalah sesuatu yang dapat dipertanggungjawabkan dan dinilai.

Mencoba meniru ketakutan manusia secara langsung adalah hal yang konyol, Anda mungkin akan berakhir dengan AI yang memiliki fobia jika Anda berhasil terlalu baik.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.