Чому Q-навчання не збігається при використанні наближення функції?


12

Табличний алгоритм Q-навчання гарантовано знайде оптимальний Q функція, Q, за умови виконання наступних умов (умови Роббінса-Монро ) щодо рівня навчання

  1. tαt(s,a)=
  2. tαt2(s,a)<

де αt(s,a) означає ступінь навчання, що використовується при оновленні Q значення, пов'язане зі станом s і дії a на час крок часу t, де 0αt(s,a)<1 вважається істинним для всіх держав s та дії a.

Мабуть, враховуючи це 0αt(s,a)<1, щоб обидві умови були справжніми, всі пари державних дій повинні відвідуватися нескінченно часто: про це також йдеться в книзі Підкріплення навчання: Вступ , крім того, що це має бути широко відомим, і це обгрунтування. за використанняϵ-зерова політика (або подібні політики) під час навчання.

Повний доказ, який це свідчить Q-навчання знаходить оптимальне Qфункцію можна знайти в статті « Конвергенція Q-навчання: просте доведення» (Франциско С. Мело). Він використовує такі поняття, як зіставлення скорочень , щоб визначити оптимальнеQфункція (див. також Що таке оператор Беллмана в навчанні підкріплення? ), яка є фіксованою точкою цього оператора скорочення. Він також використовує теорему (п. 2) про випадковий процес, до якого сходиться0, зважаючи на кілька припущень. (Доказ може бути нелегким для наслідування, якщо ви не математик.)

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

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


2
Чудове запитання!
Джон Дукетт

Книга, на яку ви згадували, розповідає про цю проблему в главі 11, щоб ви могли її прочитати. Крім того, я не думаю, що існує офіційного доказу, чому це відбувається, але є мало прикладів, які демонструють розбіжність навіть у простих умовах (наприклад, Цицикліс та Ван Рой).
Брале

Відповіді:


8

Ось інтуїтивно зрозуміла відповідь:

Наближення функції може бути здійснено з будь-якою функцією, що може регулюватися. Розглянемо проблему аQ(с,а) простір де с є позитивними результатами, а є 0 або 1, і справжня Q-функція є Q(с,0)=с2, і Q(с,1)=2с2, для всіх держав. Якщо ваш аппроксиматор функціїQ(с,а)=мс+на+б, не існує жодних параметрів, які могли б точно представити істину Qфункція (ми намагаємось прилаштувати лінію до квадратичної функції). Отже, навіть якщо ви вибрали хороший рівень навчання і відвідуєте всі стани нескінченно часто, ваша функція наближення ніколи не зблизиться з справжньоюQ функція.

І ось трохи детальніше:

  1. Приблизні функції нейронних мереж . Функцію можна наблизити до більшої чи меншої міри, використовуючи більш чи менш складні многочлени для наближення її. Якщо ви знайомі з наближенням серії Taylor, ця ідея повинна здатися досить природною. Якщо ні, подумайте про таку функцію, як синусоїда за інтервал [0-π/2). Ви можете наблизити його (погано) прямою лінією. Ви можете наблизити його краще за допомогою квадратичної кривої. Збільшуючи ступінь многочлена, який ми використовуємо для наближення кривої, ми можемо отримати щось, що більше і ближче відповідає кривій.
  2. Нейронні мережі - універсальні аппроксиматори функцій . Це означає, що якщо у вас є функція, ви також можете зробити нейронну мережу, яка є достатньо глибокою або широкою, щоб вона могла наближати створену вами функцію довільно точно. Однак будь-яка конкретна мережа топологія, яку ви виберете, не зможе вивчити всі функції, якщо вона не є нескінченно широкою або нескінченно глибокою. Це аналогічно тому, як підбирати правильні параметри, лінія може вміщувати будь-які дві точки, але не будь-які 3 бали. Якщо ви вибираєте мережу певної ширини чи глибини, я завжди можу побудувати функцію, яка потребує ще кількох нейронів, щоб правильно вміститись.

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


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

Отже, ми можемо наблизити будь-яку (розумну) функцію за допомогою деякої нейронної мережі (архітектури), але, враховуючи фіксовану архітектуру нейронної мережі Z (яку нам потрібно вибрати на початку навчального етапу Q-навчання), Q-навчання може не збігатися за допомогою конкретної архітектури Z, тому що Z може бути недостатньо виразним, щоб представляти Q.
nbro

@nbro Доказ цього не говорить прямо, але передбачає точне подання Q-функції (тобто точні значення обчислюються та зберігаються для кожної пари стану / дії). Для нескінченних просторів станів зрозуміло, що це точне подання в гіршому випадку може бути нескінченно великим (простий приклад: нехай Q (s, a) = sth цифра pi). Ваш другий коментар підсумовує це добре. Більш формально, якщо справжня гіпотеза Q * не є елементом простору гіпотези H, з якого ви вибираєте модель, ви не можете сходитись до Q * навіть з нескінченним часом або даними.
Джон Дукетт

4

Наскільки я усвідомлюю, все ще дещо є відкрита проблема, щоб отримати дійсно чітке, формальне розуміння того, чому / коли ми отримуємо відсутність конвергенції - або, що ще гірше, іноді небезпека розбіжності. Зазвичай його відносять до "смертельної тріади" (див. 11.3 другого видання книги Саттона та Барто), поєднання:

  1. Наближення функції, І
  2. Запуск завантаження (використовуючи власні оцінки вартості при обчисленні наших навчальних цілей, як це зроблено Q-навчання), І
  3. Політичне навчання (Q-навчання справді позаполітичне).

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


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

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


Моя власна інтуїція щодо цього питання загалом полягала в тому, що важливим джерелом проблеми є узагальнення . У таблиці таблиць ми маємо повністю поодинокі записиQ(s,a) для усіх (с,а)пари. Щоразу, коли ми оновлюємо нашу оцінку для одного запису, вона залишає всі інші записи незміненими (принаймні спочатку - можливі певні ефекти для інших записів у майбутніх оновленнях через завантаження в правилі оновлення). Оновлення правил для таких алгоритмівQ-навчання та Сарса іноді можуть оновлюватись у бік «неправильного» напрямку, якщо ми отримаємо «нещасливого», але, сподіваючись , вони, як правило, оновлюються до правильного «напрямку». Інтуїтивно це означає, що в таблиці, ми, сподіваючись, ми будемо повільно, поступово виправляти будь-які помилки в будь-яких записах окремо, не завдаючи шкоди іншим записам.

З наближенням функції, коли ми оновлюємо нашу Q(с,а) кошторис за один (с,а)пара, це може також вплинути на всі наші інші оцінки для всіх інших пар дій-дій. Інтуїтивно це означає, що ми більше не маємо приємної ізоляції записів, як у таблиці, а "виправлення" помилок в одному записі може мати загрозу додавання нових помилок до інших записів. Однак, як і у відповіді Джона, вся ця інтуїція дійсно стосувалася б також політичних алгоритмів, тому вона все ще не пояснює, у чому особливеQ-навчання (та інші позаполітичні підходи).


Дуже цікавою нещодавньою доповіддю на цю тему є невміння Q-навчання та ітерація вартості . Вони вказують на проблему "помилкового упередження" в алгоритмах, що поєднують наближення функції з правилами оновлення, що включають aмакс оператора, такого як Q-навчання (це, мабуть, не властиво тільки макс оператора, але, мабуть, стосується позаполітики взагалі?).

Проблема полягає в наступному. Припустимо, ми запускаємо цеQ-оновлення навчання для пари стану-дії (с,а):

Q(с,а)Q(с,а)+α[макса'Q(с',а')-Q(с,а)].

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


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


1
Але чи не використання нейромережі також пов'язане з припущенням, що певні стани дуже схожі на кожен? Дуже схожі стани (наприклад, послідовні кадри в грі) часто мають дуже схожі (або однакові) оптимальні дії, тому я не впевнений, що пояснення в першому документі є дійсним (я повинен прочитати його, щоб повністю зрозуміти їх основні моменти).
nbro

1
@nbro Так, часто узагальнення вважається перевагою, а не проблемою саме з цієї причини. Якщо це працює так, як "задумано", це може бути дуже потужним і прискорити навчання, тому що ми переносимо все, що ми навчимося, в подібні стани / подібні дії, а не вчимося для кожного трохи іншого стану / дії окремо. Але це також може призвести до проблем, особливо в теорії, але і на практиці. Я думаю, це "меч з двома острими".
Денніс Сомерс

1
@DennisSoemers Супер цікава відповідь. Точка невмілого Q-навчання має багато сенсу. Пошук правильної Q-функції означає пошук фіксованої точки для вашого правила оновлення, але він впевнений, що наближення функції може призвести до циклічного оновлення Q-навчання, якщо ви думаєте про це таким чином.
Джон Дукетт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.