Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Керування методом Монте-Карло | Методи Монте-Карло
Вступ до навчання з підкріпленням
course content

Зміст курсу

Вступ до навчання з підкріпленням

Вступ до навчання з підкріпленням

1. Основна Теорія Навчання з Підкріпленням
2. Проблема Багаторукого Бандита
3. Динамічне Програмування
4. Методи Монте-Карло
5. Навчання з часовою різницею

book
Керування методом Монте-Карло

Замінюючи крок оцінки політики у стандартному алгоритмі ітерації політики на методи оцінки Монте-Карло, описані в попередньому розділі, ми вже можемо отримати новий варіант ітерації політики — той, що ґрунтується на досвіді з вибірки, а не на динамічному програмуванні.

Однак існує важливе обмеження. У традиційній ітерації політики крок покращення політики залежить від наявності повної моделі середовища. Зокрема, для оновлення політики використовується наступний вираз:

π(s)arg maxas,rp(s,rs,a)(r+γv(s))\pi(s) \gets \argmax_a \sum_{s', r} \textcolor{red}{p(s', r | s, a)} \Bigl(r + \gamma v(s')\Bigr)

Це рівняння передбачає, що нам відомі ймовірності переходу p(s,rs,a)p(s', r | s, a). Але саме в цьому і полягає проблема: методи Монте-Карло призначені для налаштувань без моделі, коли динаміка переходів у середовищі невідома. Якщо повна модель доступна, тоді доцільніше використовувати динамічне програмування на всіх етапах, включаючи оцінку політики, оскільки це буде ефективніше та точніше.

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

Чому саме цінності дій?

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

π(s)arg maxaq(s,a)sS\pi(s) \gets \argmax_a q(s, a) \qquad \forall s \in S

І неважко довести, що нова політика не гірша за попередню, оскільки теорема покращення політики все ще застосовується:

qπk(s,πk+1(s))=qπk(s,arg maxaqπk(s,a))=maxaqπk(s,a)qπk(s,πk(s))=vπk(s)\begin{aligned} q_{\pi_{k}}(s, \pi_{k+1}(s)) &= q_{\pi_k}(s, \argmax_a q_{\pi_k}(s, a))\\ &= \max_a q_{\pi_k}(s, a)\\ &\ge q_{\pi_k}(s, \pi_k(s))\\ &= v_{\pi_k}(s) \end{aligned}

І, як і у випадку з DP, ця теорема гарантує, що або πk+1\pi_{k+1} краща за πk\pi_k, або вони обидві рівні й оптимальні.

Оцінювання функції значення дії

Процес оцінювання майже ідентичний до функції значення стану. Усі ідеї, що використовуються для оцінювання значень стану, можуть бути застосовані для оцінювання значень дій.

Псевдокод

Таким чином, після достатньої кількості ітерацій, оцінені значення дій наближаються до справжніх значень дій.

На цій основі вже можна побудувати метод, подібний до ітерації політики, який не залежить від моделі. Для цього потрібно замінити кроки оцінки політики та покращення політики на описані вище процеси.

Оптимізація

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

Більш природною альтернативою є оновлення політики одразу після обробки кожного епізоду. Замість очікування завершення повного циклу оцінки політики, агент може вдосконалювати свою поведінку епізод за епізодом, використовуючи найсвіжіші оцінки значень дій.

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

Псевдокод

Цей алгоритм слідує структурі GPI, оскільки містить етапи оцінки політики та покращення політики, і називається керування Монте-Карло. Основний недолік цієї конкретної реалізації — припущення про дослідницькі старти. У наступних розділах ви дізнаєтеся, чому це є проблемою та як з цим можна впоратися.

question mark

Яка основна перевага використання значень дій замість значень станів у керуванні Монте-Карло?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 3

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

course content

Зміст курсу

Вступ до навчання з підкріпленням

Вступ до навчання з підкріпленням

1. Основна Теорія Навчання з Підкріпленням
2. Проблема Багаторукого Бандита
3. Динамічне Програмування
4. Методи Монте-Карло
5. Навчання з часовою різницею

book
Керування методом Монте-Карло

Замінюючи крок оцінки політики у стандартному алгоритмі ітерації політики на методи оцінки Монте-Карло, описані в попередньому розділі, ми вже можемо отримати новий варіант ітерації політики — той, що ґрунтується на досвіді з вибірки, а не на динамічному програмуванні.

Однак існує важливе обмеження. У традиційній ітерації політики крок покращення політики залежить від наявності повної моделі середовища. Зокрема, для оновлення політики використовується наступний вираз:

π(s)arg maxas,rp(s,rs,a)(r+γv(s))\pi(s) \gets \argmax_a \sum_{s', r} \textcolor{red}{p(s', r | s, a)} \Bigl(r + \gamma v(s')\Bigr)

Це рівняння передбачає, що нам відомі ймовірності переходу p(s,rs,a)p(s', r | s, a). Але саме в цьому і полягає проблема: методи Монте-Карло призначені для налаштувань без моделі, коли динаміка переходів у середовищі невідома. Якщо повна модель доступна, тоді доцільніше використовувати динамічне програмування на всіх етапах, включаючи оцінку політики, оскільки це буде ефективніше та точніше.

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

Чому саме цінності дій?

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

π(s)arg maxaq(s,a)sS\pi(s) \gets \argmax_a q(s, a) \qquad \forall s \in S

І неважко довести, що нова політика не гірша за попередню, оскільки теорема покращення політики все ще застосовується:

qπk(s,πk+1(s))=qπk(s,arg maxaqπk(s,a))=maxaqπk(s,a)qπk(s,πk(s))=vπk(s)\begin{aligned} q_{\pi_{k}}(s, \pi_{k+1}(s)) &= q_{\pi_k}(s, \argmax_a q_{\pi_k}(s, a))\\ &= \max_a q_{\pi_k}(s, a)\\ &\ge q_{\pi_k}(s, \pi_k(s))\\ &= v_{\pi_k}(s) \end{aligned}

І, як і у випадку з DP, ця теорема гарантує, що або πk+1\pi_{k+1} краща за πk\pi_k, або вони обидві рівні й оптимальні.

Оцінювання функції значення дії

Процес оцінювання майже ідентичний до функції значення стану. Усі ідеї, що використовуються для оцінювання значень стану, можуть бути застосовані для оцінювання значень дій.

Псевдокод

Таким чином, після достатньої кількості ітерацій, оцінені значення дій наближаються до справжніх значень дій.

На цій основі вже можна побудувати метод, подібний до ітерації політики, який не залежить від моделі. Для цього потрібно замінити кроки оцінки політики та покращення політики на описані вище процеси.

Оптимізація

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

Більш природною альтернативою є оновлення політики одразу після обробки кожного епізоду. Замість очікування завершення повного циклу оцінки політики, агент може вдосконалювати свою поведінку епізод за епізодом, використовуючи найсвіжіші оцінки значень дій.

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

Псевдокод

Цей алгоритм слідує структурі GPI, оскільки містить етапи оцінки політики та покращення політики, і називається керування Монте-Карло. Основний недолік цієї конкретної реалізації — припущення про дослідницькі старти. У наступних розділах ви дізнаєтеся, чому це є проблемою та як з цим можна впоратися.

question mark

Яка основна перевага використання значень дій замість значень станів у керуванні Монте-Карло?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 3
some-alt