Як визначити стани в навчанні підкріплення?


14

Я вивчаю підкріплення навчання та його варіанти. Я починаю розуміти, як алгоритми працюють і як вони застосовуються до MDP. Чого я не розумію, це процес визначення станів ПДР. У більшості прикладів та навчальних посібників вони представляють щось просте, як квадрат у сітці чи подібне.

Для складніших проблем, таких як робот, який вчиться ходити тощо, як ви вирішите визначити ці стани? Чи можете ви використовувати алгоритми навчання або класифікації для "вивчення" цих станів?

Відповіді:


14

Проблема представництва держави в навчанні підкріплення (RL) подібна до проблем представлення функцій, вибору особливостей та інженерії функцій у навчанні під наглядом або без нагляду.

Література, яка викладає основи RL, як правило, використовує дуже прості середовища, щоб можна було перерахувати всі стани. Це спрощує оцінку значень до основних середніх середніх таблиць у таблиці, які легше зрозуміти та реалізувати. Табличні алгоритми навчання також мають розумні теоретичні гарантії конвергенції, що означає, якщо ви можете спростити свою проблему, щоб вона, скажімо, мала менше кількох мільйонів станів, тоді це варто спробувати.

Найбільш цікаві проблеми управління не впишуться в таку кількість станів, навіть якщо ви їх дискредитуєте. Це пов’язано з " прокляттям розмірності ". Для цих проблем ви зазвичай представляєте свій стан як вектор різних особливостей - наприклад, для робота, різних положень, кутів, швидкостей механічних деталей. Як і у випадку з контрольованим навчанням, ви, можливо, захочете поставитись до них із використанням певного навчального процесу. Наприклад, зазвичай ви хочете, щоб вони всі були числовими, і якщо ви хочете використовувати нейронну мережу, ви також повинні нормалізувати їх до стандартного діапазону (наприклад, -1 до 1).

На додаток до вищезазначених проблем, які стосуються іншого машинного навчання, для RL вам також потрібно потурбуватися про власність Маркова - про те, що держава надає достатньо інформації, щоб ви могли точно передбачити очікувані наступні винагороди та наступні штати за певною дією, без необхідності додаткової інформації. Це не повинно бути ідеальним, невеликі відмінності через, наприклад, зміни щільності повітря або температури для колесного робота, як правило, не матимуть великого впливу на його навігацію, і їх можна ігнорувати. Будь-який фактор, який по суті є випадковим, можна також ігнорувати, дотримуючись теорії RL - це може зробити агент загалом менш оптимальним, але теорія все одно працює.

Якщо є послідовні невідомі фактори, які впливають на результат, і їх логічно можна було б вивести - можливо, з історії держави або дій - але ви виключили їх із представництва штату, то у вас може виникнути більш серйозна проблема, і агент може не дізнатися .

Тут варто відзначити різницю між спостереженням та станом . Спостереження - це деякі дані, які ви можете зібрати. Наприклад, у вас на роботі можуть бути датчики, які підтримують положення його суглобів. Оскільки держава повинна володіти властивістю Маркова, одного необробленого спостереження може бути недостатньо даних для створення відповідного стану. Якщо це так, ви можете або застосувати свої знання про домен, щоб створити кращий стан з наявних даних, або ви можете спробувати використовувати методи, розроблені для частково видимих ​​MDP (POMDP) - вони ефективно намагаються створити відсутні частини державних даних статистично. Ви можете використовувати для цього RNN або приховану модель маркова (також звану "стан переконань"), і певним чином для цього використовується "алгоритми вивчення або класифікації для "вивчення" цих станів ", як ви просили.

Нарешті, вам слід врахувати тип моделі наближення, який ви хочете використовувати. Тут застосовується аналогічний підхід, як і для навчання під контролем:

  • Проста лінійна регресія з функціями, розробленими на основі знань про домен, може зробити дуже добре. Можливо, вам доведеться багато попрацювати над спробою різних представлень стану, щоб лінійне наближення працювало. Перевага полягає в тому, що цей простіший підхід є більш стійким щодо питань стабільності, ніж нелінійне наближення

  • Більш складний нелінійний аппроксиматор функції, такий як багатошарова нейромережа. Ви можете живитись у більш «сировинному» векторі стану та сподіватися, що приховані шари знайдуть якусь структуру чи представлення, що призводить до хороших оцінок. У чомусь це теж " алгоритми вивчення або класифікації для" вивчення "цих станів ", але по-іншому для RNN або HMM. Це може бути розумним підходом, якби ваш стан виражався природним чином як екранне зображення - розібратися в техніці інженерії даних про зображення вручну дуже важко.

Робота Atari DQN команди DeepMind використовувала поєднання інженерних функцій та покладаючись на глибоку нейронну мережу для досягнення своїх результатів. Інженерія функцій включала зменшення стимуляції зображення, зменшення його до сірого масштабу і - що важливо для властивості Маркова - використання чотирьох послідовних кадрів для представлення єдиного стану, так що інформація про швидкість об’єктів була присутня в представленні стану. Потім DNN обробляє зображення у функції вищого рівня, які можна використовувати для прогнозування значень стану.


3

Загальним раннім підходом до моделювання складних проблем була дискретизація . На базовому рівні це розділення складного та безперервного простору на сітку. Тоді ви можете використовувати будь-яку з класичних методик RL, розроблену для дискретних, лінійних просторів. Однак, як ви можете уявити, якщо ви не будете обережні, це може доставити багато клопоту!

Класична книга Саттона і Барто " Підсилення навчання" має кілька пропозицій щодо інших шляхів досягнення цього. Одне - кодування плиток , висвітлене у розділі 9.5.4 нової, другої редакції . При кодуванні плиток ми генеруємо велику кількість сіток, кожна з яких відрізняється міжряддями. Потім накладаємо сітки один на одного. Це створює дискретні регіони неоднорідних форм і може добре працювати при різних проблемах.

Розділ 9.5 також охоплює різні інші способи кодування безперервного простору в дискретний MDP, включаючи функції на радіальній основі та грубі кодування. Перевір!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.