Apakah ada aplikasi pembelajaran penguatan selain game?

13

Apakah ada cara untuk mengajarkan pembelajaran penguatan dalam aplikasi selain game?

Satu-satunya contoh yang dapat saya temukan di Internet adalah agen permainan. Saya mengerti bahwa VNC mengendalikan input ke game melalui jaringan penguatan. Apakah mungkin untuk mengatur ini dengan mengatakan perangkat lunak CAD?

Mark Mark Microwave Charlton
sumber
3
Ya, itu mungkin tapi pertanyaan sebenarnya seharusnya apakah itu lebih efisien daripada algoritma lain atau tidak. Jika Anda memiliki tujuan tertentu, Anda dapat memikirkannya dan memodelkannya sebagai sebuah game (bahkan kehidupan adalah sebuah game;)). Bahkan, banyak AI yang berhasil memanfaatkan lebih dari satu teknik. Lihatlah yang ini: datacience.stackexchange.com/questions/11126/…
TasosGlrs
2
Inti dari AlphaGo adalah bahwa jenis permainan tertentu ( non-sepele , non-kebetulan, informasi sempurna) khususnya memberikan dasar pembuktian yang sangat baik untuk AI karena permainan ini memiliki parameter yang sangat sederhana, tetapi kompleksitas mirip dengan alam. Game, dari perspektif tertentu, adalah jenis artefak yang paling berguna karena mereka mengajarkan pemikiran abstrak dan strategis. Untuk memahami pentingnya game, lihat dampak Game Theory pada ilmu komputer .
DukeZhou
Itu mungkin karena NDA. Aplikasi pembelajaran terbaik adalah hak milik, seperti halnya perangkat lunak menara sel terbaik atau pengenalan suara terbaik atau pusat perbelanjaan online terbaik. Itu rekayasa secara umum.
FauChristian
Baik. Jika yang dimiliki hanyalah teori permainan, dunia menjadi permainan.
FelicityC

Jawaban:

2

Salah satu contoh keren dari pembelajaran penguatan adalah helikopter terbang yang otonom. Saya memiliki kesempatan untuk mempelajari beberapa hal yang dilakukan oleh Andrew Ng dan yang lainnya baru-baru ini. Inilah makalah artikel penelitian . Ada makalah serupa lainnya juga. Anda dapat google mereka jika Anda ingin mempelajari lebih lanjut.

Anda juga dapat melihatnya beraksi di dalam video youtube ini .

Berikut ini adalah aplikasi lain yang sama sekali berbeda di bidang keuangan.


sumber
2

Anda akan melihat banyak contoh game dalam literatur pembelajaran penguatan, karena lingkungan game seringkali dapat dikodekan secara efisien, dan berjalan cepat pada satu komputer yang kemudian dapat berisi lingkungan dan agen. Untuk permainan klasik, seperti backgammon, checker, catur, go, maka ada pakar manusia yang bisa kita bandingkan hasilnya. Permainan tertentu atau lingkungan seperti permainan yang disederhanakan biasanya digunakan untuk membandingkan berbagai pendekatan, seperti halnya angka tulisan tangan MNIST digunakan untuk membandingkan pendekatan pembelajaran yang diawasi.

Apakah ada cara untuk mengajarkan pembelajaran penguatan dalam aplikasi selain game?

Iya. Secara informal Anda bisa menerapkan pendekatan pembelajaran penguatan kapan pun Anda bisa membingkai suatu masalah sebagai agen yang bertindak dalam lingkungan di mana ia dapat diinformasikan tentang negara dan nilai hadiah yang memengaruhi tujuan. Secara lebih formal, teori pembelajaran penguatan didasarkan pada solusi untuk Proses Keputusan Markov , jadi jika Anda dapat menyesuaikan deskripsi masalah Anda dengan MDP maka berbagai teknik yang digunakan dalam RL - seperti Q-learning, SARSA, REINFORCE - dapat diterapkan. Teori kesesuaian ini tidak perlu sempurna untuk sistem yang dihasilkan untuk bekerja, misalnya Anda sering dapat memperlakukan keadaan yang tidak diketahui atau tidak sempurna diamati secara acak acak untuk agen, dan menganggap ini bagian dari lingkungan stokastik.

Berikut adalah beberapa contoh kegunaan yang mungkin untuk pembelajaran penguatan di luar permainan rekreasi:

  • Kontrol logika untuk robot bermotor, seperti belajar membalik pancake dan contoh lainnya . Di sini pengukuran lingkungan dilakukan oleh sensor fisik pada robot. Hadiah diberikan untuk menyelesaikan tujuan, tetapi juga dapat disesuaikan untuk kelancaran, penggunaan energi secara ekonomis dll. Agen memilih tindakan tingkat rendah seperti torsi motor atau posisi relai. Secara teori bisa ada agen bersarang di mana yang tingkat yang lebih tinggi memilih tujuan untuk yang tingkat yang lebih rendah - misalnya robot mungkin memutuskan pada tingkat tinggi antara melakukan salah satu dari tiga tugas yang memerlukan pindah ke lokasi yang berbeda, dan pada tingkat yang lebih rendah mungkin keputusan tentang bagaimana mengendalikan motor untuk menggerakkan robot ke tujuan yang dipilihnya.

  • Mobil self-driving. Meskipun banyak fokus pada interpretasi sensor - melihat marka jalan, pejalan kaki dll, sistem kontrol diperlukan untuk memilih akselerator, rem dan kemudi.

  • Perdagangan keuangan otomatis. Mungkin permainan bagi sebagian orang, ada konsekuensi dunia nyata yang jelas. Sinyal hadiahnya cukup sederhana, dan RL dapat disesuaikan untuk memilih keuntungan jangka panjang atau pendek.

Apakah mungkin untuk mengatur ini dengan mengatakan perangkat lunak CAD?

Secara teori ya, tapi saya tidak tahu apa yang mungkin tersedia untuk melakukan ini dalam praktek. Anda juga perlu satu atau lebih tujuan dalam pikiran bahwa Anda kode ke agen (sebagai nilai hadiah yang dapat diamati) sebelum memberikannya mouse virtual dan menetapkan tugas untuk menggambar sesuatu. Game komputer hadir dengan skema penghargaan sebagai sistem penilaian mereka, dan sering memberikan umpan balik, sehingga agen dapat memperoleh pengetahuan tentang keputusan yang baik vs yang buruk dengan cepat. Anda perlu mengganti komponen penilaian ini dengan sesuatu yang mewakili tujuan Anda untuk sistem berbasis CAD.

CAD tidak memiliki built-in yang sesuai, meskipun alat CAD dengan simulasi, seperti berbagai mesin fisika atau analisis elemen hingga, dapat memungkinkan Anda untuk mencetak skor desain berdasarkan ukuran fisik yang disimulasikan. Kemungkinan lain termasuk analisis regangan, penggunaan bahan yang tidak sia-sia, metrik apa pun yang dapat disediakan sistem CAD / CAM untuk desain parsial atau selesai. Bagian yang sulit adalah membatasi desain untuk tujuan atau tujuannya dan baik mengatur agar itu dihargai, atau membangun kendala ke lingkungan; memberikan agen RL kontrol penuh tanpa kendala dari proses CAD dan memberi hadiah pada strain terendah kemungkinan akan menghasilkan sesuatu yang sangat tidak menarik seperti kubus kecil.

Neil Slater
sumber
Banyak hal yang sesuai: Dimensi otomatis untuk kejernihan visual maksimal, pencarian gangguan untuk bagian yang bergerak di bawah tekanan (tanpa FEA), mengoptimalkan output CAM, merender percepatan menggunakan perkiraan informasi kedalaman z, dll, dll.
FauChristian
@ Fu christian: Saya tidak yakin semua itu bisa dimasukkan sebagai sinyal hadiah hanya sebagai skor pertandingan. Mengoptimalkan desain untuk mengurangi ketegangan misalnya menyiratkan desain Anda memiliki tujuan - Anda juga harus menambahkan beberapa kendala / aturan untuk melacak tujuan itu, dan itu bisa lebih sulit kecuali Anda juga memiliki analisis ergonomis. Namun, komentar itu menambahkan beberapa hal yang bisa saya sebutkan, dan akan menambah jawabannya.
Neil Slater
Iya. Benar. Saya akan mencoba. Maafkan string komentar yang harus saya lakukan. Dalam setiap kasus di atas, tujuan saya adalah untuk menggabungkan kekhawatiran perancang mekanik menjadi sinyal kesehatan tunggal yang dapat memandu iterasi, dengan kebenaran bahwa mungkin ada beberapa organ NN yang masing-masing dapat diberi agregasi berbeda. Tetapi demi kesederhanaan, saya akan menggabungkan setiap kasus menjadi skalar. Memiliki elemen stokastik akan diperlukan untuk sebagian besar dari ini karena sebagian besar kasus dalam CAD memiliki beberapa titik kritis di permukaan nilai agregat.
FauChristian
Auto Dimensioning - w = sqrt (Σ min (s_clear, s_nice)) + k n_jumps, ... di mana ... w adalah agregat kualitas dari keadaan dimensi gambar, dari mana sinyal umpan balik yang dinormalkan dapat diturunkan, s_clear adalah jarak antara garis dimensi dan garis terdekat lainnya tidak termasuk garis lompatan, s_nice adalah metaparameter yang mewakili jarak bebas yang bagus antara garis-garis untuk jenis gambar yang berdimensi, k adalah konstan, dan n_jumps adalah jumlah garis lompatan ( di mana garis akan melintasi tetapi salah satu dari keduanya memiliki celah untuk menunjukkan bahwa ia melompat di belakang garis lainnya).
FauChristian
Pencarian Interferensi - w = n, ... di mana ... w adalah agregat kualitas pencarian interferensi dan n adalah jumlah interferensi yang ditemukan setelah mengumpankan iterasi menebak ke dalam simulasi dinamis dari dugaan tersebut. Yang ini hanya seperti permainan di mana gangguan yang lebih benar menebak semakin tinggi nilainya.
FauChristian
1

Pasti ada cara untuk memperkenalkan apa yang disebut oleh banyak orang sebagai pembelajaran yang diperkuat ke dalam aplikasi web, seluler, dan workstation yang nyata.

Organisasi militer melakukannya, industri film yang melakukannya, perusahaan yang berpusat pada perangkat lunak melakukannya, dan saya telah melakukannya untuk bisnis-bisnis Fortune 500 dan bisnis kecil. Ada komponen pembelajaran adaptif dalam semua jenis komponen sistem yang tertanam dalam sistem yang lebih besar, mulai dari robot pengenalan wajah FaceBook hingga Google Translate hingga USPS sistem pengakuan kode pos hingga penerbangan mandiri dan sistem kontrol lalu lintas. Computer aided design software (CAD) tentu saja merupakan target yang layak.

Dasar Penguatan

Pertimbangkan serangkaian vektor yang menggambarkan peristiwa. Bayangkan mereka dibagi menjadi dua sub-seri A dan B. Jaring saraf (buatan atau biologis) dapat dilatih menggunakan A.

Pelatihan dapat diawasi, artinya salah satu dimensi vektor dianggap label dan karenanya variabel dependen untuk diprediksi secara optimal. Dimensi lain kemudian menjadi fakta atau sinyal input dan oleh karena itu variabel independen untuk digunakan untuk prediksi. Pelatihan bisa tanpa pengawasan menggunakan ekstraksi fitur.

Either way, ketika diberikan dengan A sebelum B dan diharapkan untuk melakukan produksi (penggunaan nyata) sebelum B tiba, kedatangan B selanjutnya menghadirkan pilihan.

  1. Hapus bobot dan penyesuaian meta-parameter apa pun yang dilakukan selama pelatihan dengan A dan jalankan kembali pelatihan dengan rangkaian gabungan A dan B.
  2. Lanjutkan pelatihan dengan B, dalam hal ini jaringan akan bias dengan A dan hasilnya akan berbeda dari hasil yang diperoleh dengan pelatihan dengan B kemudian A.
  3. Temukan cara untuk membatasi bias memiliki pertama kali dilatih dengan A sambil menghindari konsumsi sumber daya yang diperlukan untuk pilihan # 1 di atas.

Pilihan # 3 adalah pilihan terbaik dalam banyak kasus karena mengandung manfaat pilihan # 1 dan # 2. Secara matematis, # 3 dilakukan dengan memfasilitasi preempting dari apa yang dipelajari dari seri A dengan cara tertentu. Berat neural net dan penyesuaian meta-parameter harus dibuat rentan terhadap koreksi karena pengalaman baru menunjukkan perlunya melakukannya. Satu pendekatan naif dapat dirumuskan secara matematis fungsi eksponensial terbalik, yang memodelkan pembusukan alami dalam banyak fenomena dalam fisika, kimia, dan ilmu sosial.

P = e- bukan , di mana P adalah probabilitas faktanya masih berkhasiat, n adalah tingkat peluruhan informasi yang dipelajari di masa lalu, dan t adalah beberapa ukuran kemajuan maju, seperti cap waktu, nomor sub-urutan (batch), nomor urut fakta, atau nomor acara.

Dalam kasus sub-seri A dan B, ketika formula di atas diterapkan dalam beberapa cara dalam mekanisme pembelajaran, pelatihan A akan menempatkan lebih sedikit bias pada hasil akhir setelah pelatihan lanjutan menggunakan B karena t untuk A kurang daripada t untuk B, mengatakan pada mekanisme bahwa B lebih mungkin relevan.

Jika kita membagi A dan B secara rekursif menjadi dua bagian, menciptakan lebih banyak dan lebih banyak sub-seri granular, gagasan di atas untuk membiarkan informasi sebelumnya secara bertahap membusuk tetap valid dan berharga. Bias jaringan terhadap informasi pertama yang digunakan untuk pelatihan setara dengan konsep psikologis pikiran picik. Sistem pembelajaran yang telah berevolusi menjadi otak mamalia tampaknya melupakan atau kehilangan minat pada hal-hal di masa lalu untuk mendorong pikiran terbuka, yang tidak lebih dari membiarkan pembelajaran baru kadang-kadang mendahului pembelajaran sebelumnya jika informasi baru mengandung pola yang lebih kuat untuk belajar.

Ada DUA alasan untuk mengizinkan data contoh yang lebih baru untuk secara progresif melebihi data contoh yang lebih lama.

  • Penghapusan bias pembelajaran di atas untuk menimbang peristiwa yang lebih baru dalam pembelajaran lebih lanjut masuk akal jika semua peristiwa yang dialami (dilatih) mewakili fakta yang masuk akal tentang dunia luar yang coba dipelajari oleh sistem.
  • Dunia eksternal mungkin berubah dan pembelajaran yang lebih tua sebenarnya menjadi tidak relevan atau bahkan menyesatkan.

Kebutuhan ini untuk membiarkan pentingnya informasi sebelumnya membusuk secara bertahap karena pembelajaran berlanjut adalah salah satu dari dua aspek utama penguatan. Aspek kedua adalah serangkaian konsep korektif dibangun di atas gagasan pensinyalan umpan balik.

Umpan balik dan penguatan

Sinyal umpan balik dalam pembelajaran yang diperkuat adalah pembelajaran mesin yang setara dengan konsep psikologis yang sudah dikenal seperti rasa sakit, kesenangan, kepuasan, dan kesehatan. Sistem pembelajaran diberikan informasi untuk memandu pelatihan di luar tujuan ekstraksi fitur, kemandirian pengelompokan, atau menemukan matriks bobot bersih neural yang mendekati hubungan antara fitur acara input dan labelnya.

Informasi yang diberikan dapat berasal secara internal dari pengenalan pola yang diprogram sebelumnya atau secara eksternal dari hadiah dan hukuman, seperti halnya dengan mamalia. Teknik dan algoritma yang dikembangkan dalam pembelajaran mesin bertulang menggunakan sinyal tambahan ini secara berkala (menggunakan slicing waktu dalam pemrosesan) atau terus menerus menggunakan independensi unit pemrosesan arsitektur pemrosesan paralel.

Karya ini dipelopori di MIT oleh Norbert Wiener dan dituangkan dalam bukunya Cybernetics (MIT Press 1948). Kata Sibernetika berasal dari kata yang lebih tua yang berarti kemudi Kapal . Pergerakan kemudi secara otomatis untuk tetap berada di jalur mungkin merupakan sistem umpan balik mekanis pertama. Mesin pemotong rumput Anda mungkin memiliki satu.

Aplikasi dan Pembelajaran Adaptif

Adaptasi sederhana secara real time untuk posisi kemudi atau throttle mesin pemotong rumput tidak belajar. Adaptasi semacam itu biasanya berupa kontrol PID linier. Teknologi pembelajaran mesin yang dikembangkan saat ini mencakup penilaian dan kontrol sistem nonlinier kompleks yang oleh para ahli matematika disebut kacau.

Dengan kacau, mereka tidak berarti bahwa proses yang dijelaskan dalam hiruk-pikuk atau tidak terorganisir. Chaoticians menemukan beberapa dekade yang lalu bahwa persamaan non-linear sederhana dapat menyebabkan perilaku yang sangat terorganisir. Apa yang mereka maksudkan adalah bahwa fenomena tersebut terlalu sensitif terhadap sedikit perubahan untuk menemukan beberapa algoritma atau formula tetap untuk memprediksikannya.

Bahasa seperti itu. Pernyataan yang sama mengatakan dengan selusin infleksi vokal yang berbeda dapat berarti selusin hal yang berbeda. Kalimat bahasa Inggris, "Sungguh," adalah contoh. Sangat mungkin bahwa teknik penguatan akan memungkinkan mesin masa depan untuk membedakan dengan probabilitas keberhasilan yang tinggi antara berbagai makna pernyataan itu.

Mengapa Game Pertama?

Game memiliki serangkaian skenario yang sangat sederhana dan mudah ditentukan. Salah satu kontributor utama kemunculan komputer, John von Neumann, berpendapat dalam Teori Permainan dan Perilaku Ekonomi , sebuah buku yang ia tulis bersama Oskar Morgenstern, bahwa semua perencanaan dan pengambilan keputusan sebenarnya adalah permainan dari berbagai kompleksitas.

Pertimbangkan permainan contoh pelatihan kumpulan otak yang akan, pada saatnya, menciptakan sistem yang dapat menentukan makna pernyataan seperti yang dapat dididik orang dari tiga sumber petunjuk.

  1. Konteks dalam percakapan atau skenario sosial
  2. Infleksi vokal pembicara
  3. Ekspresi wajah dan bahasa tubuh pembicara

Beyond Chess dan The Game of Go

Sepanjang jalan dari permainan ke sistem bahasa dengan pemahaman yang akurat dan kemampuan mendengarkan yang lebih dalam ada beberapa aplikasi pembelajaran yang diperkuat yang jauh lebih penting bagi bumi dan pengalaman manusia.

  • Sistem yang mempelajari cara mematikan atau menipiskan lampu, peralatan, sistem digital, HVAC, dan perangkat konsumsi energi lainnya - Energi mungkin merupakan komoditas yang paling berpengaruh secara geo-politik dalam sejarah manusia karena penipisan sumber daya bahan bakar fosil dari waktu ke waktu.)
  • Pengembangan kendaraan otonom - Tren berbahaya dari pengoperasian alat-alat berat, seperti pesawat terbang, RV, truk, bus, dan trailer traktor oleh orang-orang yang tidak diketahui cara berpikirnya di jalan terbuka kemungkinan akan dipandang kembali oleh orang-orang di masa depan sebagai kegilaan.
  • Peringkat keandalan informasi - Informasi ada di mana-mana dan lebih dari 99% kesalahan, baik sebagian atau seluruhnya. Sangat sedikit yang disahkan oleh penelitian nyata, baik yang dirancang dan ditafsirkan dengan benar studi acak ganda-buta atau pengujian laboratorium yang dapat dikonfirmasi dan analisis.
  • Aplikasi perawatan kesehatan yang mendiagnosis lebih baik, menyesuaikan pengobatan untuk individu, dan membantu dengan perawatan berkelanjutan untuk mencegah kekambuhan.

Keempat dan banyak lainnya jauh lebih penting daripada akumulasi kekayaan melalui perdagangan kecepatan tinggi otomatis atau memenangkan kompetisi permainan, dua minat pembelajaran mesin yang berpusat pada diri sendiri yang hanya berdampak pada satu atau dua generasi keluarga satu orang.

Kekayaan dan ketenaran adalah apa yang dalam teori permainan disebut permainan zero sum . Mereka menghasilkan kerugian sebanyak ada kemenangan jika Anda mempertimbangkan filosofi Peraturan Emas yang lebih tinggi bahwa orang lain dan keluarga mereka sama pentingnya bagi kami.

Reinforced Learning untuk Perangkat Lunak CAD (Computer Aided Design)

Desain berbantuan komputer adalah cikal bakal desain komputer (tanpa bantuan manusia), seperti halnya anti-lock yang secara alami mengarah pada kendaraan yang sepenuhnya otonom.

Pertimbangkan perintah, "Buatkan saya sabun cuci piring untuk mandi saya yang memaksimalkan kemungkinan keluarga saya bisa mengambil sabun pada percobaan pertama tanpa membuka mata mereka dan meminimalkan kesulitan dalam menjaga sabun dan permukaan shower bersih. Berikut adalah ketinggian dari anggota keluarga saya dan beberapa gambar ruang mandi. " Kemudian printer 3D akan mengeluarkan perangkat, siap untuk dipasang, bersama dengan instruksi instalasi.

Tentu saja, sistem CD seperti itu (CAD tanpa A) perlu dilatih tentang tata graha, perilaku manusia tanpa visi, cara melampirkan item ke ubin, alat dan kemampuan perawatan rumah dari konsumen rata-rata, kemampuan printer 3D , dan beberapa hal lainnya.

Perkembangan semacam itu dalam otomasi pembuatan mungkin akan dimulai dengan pembelajaran yang diperkuat dari perintah yang lebih sederhana seperti, "Pasang kedua bagian ini menggunakan pengencang yang diproduksi massal dan praktik terbaik." Program CAD kemudian akan memilih perangkat keras dari antara sekrup, paku keling, perekat, dan opsi lainnya, mungkin mengajukan pertanyaan kepada perancang tentang suhu operasi dan rentang getaran. Pilihan, posisi, dan sudut kemudian akan ditambahkan ke set yang sesuai dari bagian CAD dan gambar perakitan dan tagihan bahan.

Douglas Daseeco
sumber
Saya biasanya tidak akan membuat komentar kritis pada jawaban yang ditulis dengan baik ini, tetapi karena Anda meminta kritik: Saya pikir bahwa bagian Dasar untuk Penguatan , Umpan Balik dan Penguatan serta Aplikasi dan Pembelajaran yang Beradaptasi sementara menarik, dapat dikurangi secara signifikan, karena Pertanyaan OP sudah menyiratkan pengetahuan tentang RL, dan Anda menghabiskan banyak waktu untuk mengatur diskusi latar belakang terkait ini sebelum menjawab pertanyaan awal.
Neil Slater
Bahwa OP mengajukan pertanyaan mengindikasikan adanya lubang yang mengindikasikan status penelitian saat ini tentang seseorang yang baru ke lapangan dan mungkin memerlukan primer di bagian sebelumnya. Bagian terakhir lebih langsung menjawab pertanyaan.
FauChristian