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

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

У той час як on-policy методи навчаються, дотримуючись і вдосконалюючи одну й ту ж політику, off-policy методи пропонують інший підхід: вони навчаються щодо однієї політики (цільової політики), виконуючи іншу (поведінкову політику). Такий поділ є потужним — він дозволяє оцінювати або вдосконалювати цільову політику без необхідності фактично дотримуватися її під час збору даних.

Аналогія

Повернімося до магазину морозива з попереднього розділу. Ви з другом заходите всередину, і знову на вибір три знайомі смаки: шоколад, ваніль і полуниця. Шоколад — ваш улюблений смак, і перша думка — замовити саме його. Але цей магазин для вас новий, і ви не впевнені, чи варто обирати шоколад. На щастя, ваш друг — відомий поціновувач морозива, який відвідав майже всі магазини міста. Ви запитуєте його думку. "Шоколад тут непоганий," каже він, "але повір — полуниця просто виняткова." Тож, спираючись на його досвід, ви вирішуєте відмовитися від звичного вибору й обираєте полуницю.

Це рішення — покладатися на досвід іншого для прийняття власного вибору — і є суттю off-policy методів. Ви намагаєтеся покращити власне прийняття рішень, використовуючи дані, зібрані під час поведінки іншого. Це все ще дослідження — але воно керується зовнішнім досвідом, а не власним.

Важливість вибірки

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

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

Розглянемо траєкторію, яка починається з певного стану StS_t і слідує певній політиці π\pi до завершення епізоду в момент часу TT. Зокрема, ми спостерігаємо:

At,St+1,At+1,...,STA_t, S_{t+1}, A_{t+1}, ..., S_{T}

Яка ймовірність виникнення цієї траєкторії під політикою π\pi? Вона залежить як від ймовірностей дій політики, так і від динаміки переходів середовища:

p(trajectoryπ)=k=tT1π(AkSk)p(Sk+1Sk,Ak)p(trajectory | \pi) = \prod_{k=t}^{T-1} \pi(A_k | S_k)p(S_{k+1} | S_k, A_k)

Тепер припустимо, що траєкторія насправді була згенерована іншою політикою — політикою поведінки bb. Щоб коректно використати цю траєкторію для оцінки очікувань під цільовою політикою π\pi, необхідно врахувати, наскільки більшою чи меншою була ймовірність цієї послідовності дій під π\pi порівняно з bb.

Тут і з'являється коефіцієнт важливого вибіркового зважування. Він визначається як відносна ймовірність траєкторії під двома політиками:

ρ=p(trajectoryπ)p(trajectoryb)=k=tT1π(AkSk)p(Sk+1Sk,Ak)b(AkSk)p(Sk+1Sk,Ak)=k=tT1π(AkSk)b(AkSk)\rho = \frac{p(trajectory | \pi)}{p(trajectory | b)} = \prod_{k=t}^{T-1} \frac{\pi(A_k | S_k)p(S_{k+1} | S_k, A_k)}{b(A_k | S_k)p(S_{k+1} | S_k, A_k)} = \prod_{k=t}^{T-1} \frac{\pi(A_k | S_k)}{b(A_k | S_k)}

У підсумку, ймовірності переходів скорочуються, оскільки обидві політики діють в одному середовищі, і значення ρ\rho залежить лише від політик, а не від середовища.

Чому це важливо

Коефіцієнт ρ\rho показує, як переважити виграш GtG_t, отриманий під політикою поведінки, щоб він став незміщеною оцінкою того, яким був би виграш під цільовою політикою:

Eπ[Gt]=Eb[ρGt]\def\E{\operatorname{\mathbb{E}}} \E_\pi[G_t] = \E_b[\rho \cdot G_t]

Інакше кажучи, навіть якщо дані були зібрані за допомогою bb, ми все одно можемо оцінити очікувані виграші під π\pi — за умови, що bb надає ненульову ймовірність кожній дії, яку може обрати π\pi (умова покриття).

Практичні аспекти

Дисперсія вибіркового зважування

Використання вибіркового зважування є концептуально простим. Ми коригуємо оцінку функції значення дії q(s,a)q(s, a), зважуючи кожну спостережувану віддачу відповідним коефіцієнтом вибіркового зважування. Найпростіша формула виглядає так:

q(s,a)=i=0N(s,a)ρi(s,a)Returnsi(s,a)N(s,a)q(s, a) = \frac{\sum_{i=0}^{N(s, a)} \rho_i(s, a) \cdot Returns_i(s, a)}{N(s, a)}

де:

  • ρi(s,a)\rho_i(s, a) — коефіцієнт вибіркового зважування для ii-ї траєкторії, що починається з (s,a)(s, a);
  • Returnsi(s,a)Returns_i(s, a) — віддача з цієї траєкторії;
  • N(s,a)N(s, a) — кількість відвідувань (s,a)(s, a).

Цей підхід називається звичайним вибірковим зважуванням. Він забезпечує несмещену оцінку q(s,a)q(s, a), але може мати дуже велику дисперсію, особливо якщо поведінкова та цільова політики суттєво відрізняються.

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

q(s,a)=i=0N(s,a)ρi(s,a)Returnsi(s,a)i=0N(s,a)ρi(s,a)q(s, a) = \frac{\sum_{i=0}^{N(s, a)} \rho_i(s, a) \cdot Returns_i(s, a)}{\sum_{i=0}^{N(s, a)} \rho_i(s, a)}

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

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

Політики

Як і у випадку on-policy, використаємо ε\varepsilon-жадібні політики як для цільової політики π(as)\pi(a | s), так і для поведінкової політики b(as)b(a | s).

На перший погляд здається природним зробити цільову політику повністю жадібною — зрештою, наша кінцева мета — жадібна політика. Однак на практиці це спричиняє серйозну проблему: якщо на будь-якому кроці π(as)=0\pi(a | s) = 0 для дії, яку фактично виконала поведінкова політика, коефіцієнт важливості ρ\rho стає нульовим, і решта епізоду фактично ігнорується.

Використовуючи мале ε\varepsilon (наприклад, ε=0.01\varepsilon = 0.01) у цільовій політиці, ми гарантуємо, що π(as)>0\pi(a | s) > 0 для кожної дії, тому ρ\rho ніколи не обнуляється посеред епізоду. Після завершення навчання легко перетворити отриману ε\varepsilon‑жадібну політику на строго жадібну. Як і при on‑policy навчанні, слід використовувати спадання ε\varepsilon у поведінковій політиці, але цього разу це переважно потрібно для числової стабільності, оскільки ρ\rho все ще може стати нульовим посеред епізоду через особливості представлення чисел у комп'ютерах.

Псевдокод

question mark

Яка мета важливого вибіркового зважування (importance sampling)?

Select the correct answer

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

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

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

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

Запитати АІ

expand

Запитати АІ

ChatGPT

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

Awesome!

Completion rate improved to 2.7

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

Свайпніть щоб показати меню

У той час як on-policy методи навчаються, дотримуючись і вдосконалюючи одну й ту ж політику, off-policy методи пропонують інший підхід: вони навчаються щодо однієї політики (цільової політики), виконуючи іншу (поведінкову політику). Такий поділ є потужним — він дозволяє оцінювати або вдосконалювати цільову політику без необхідності фактично дотримуватися її під час збору даних.

Аналогія

Повернімося до магазину морозива з попереднього розділу. Ви з другом заходите всередину, і знову на вибір три знайомі смаки: шоколад, ваніль і полуниця. Шоколад — ваш улюблений смак, і перша думка — замовити саме його. Але цей магазин для вас новий, і ви не впевнені, чи варто обирати шоколад. На щастя, ваш друг — відомий поціновувач морозива, який відвідав майже всі магазини міста. Ви запитуєте його думку. "Шоколад тут непоганий," каже він, "але повір — полуниця просто виняткова." Тож, спираючись на його досвід, ви вирішуєте відмовитися від звичного вибору й обираєте полуницю.

Це рішення — покладатися на досвід іншого для прийняття власного вибору — і є суттю off-policy методів. Ви намагаєтеся покращити власне прийняття рішень, використовуючи дані, зібрані під час поведінки іншого. Це все ще дослідження — але воно керується зовнішнім досвідом, а не власним.

Важливість вибірки

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

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

Розглянемо траєкторію, яка починається з певного стану StS_t і слідує певній політиці π\pi до завершення епізоду в момент часу TT. Зокрема, ми спостерігаємо:

At,St+1,At+1,...,STA_t, S_{t+1}, A_{t+1}, ..., S_{T}

Яка ймовірність виникнення цієї траєкторії під політикою π\pi? Вона залежить як від ймовірностей дій політики, так і від динаміки переходів середовища:

p(trajectoryπ)=k=tT1π(AkSk)p(Sk+1Sk,Ak)p(trajectory | \pi) = \prod_{k=t}^{T-1} \pi(A_k | S_k)p(S_{k+1} | S_k, A_k)

Тепер припустимо, що траєкторія насправді була згенерована іншою політикою — політикою поведінки bb. Щоб коректно використати цю траєкторію для оцінки очікувань під цільовою політикою π\pi, необхідно врахувати, наскільки більшою чи меншою була ймовірність цієї послідовності дій під π\pi порівняно з bb.

Тут і з'являється коефіцієнт важливого вибіркового зважування. Він визначається як відносна ймовірність траєкторії під двома політиками:

ρ=p(trajectoryπ)p(trajectoryb)=k=tT1π(AkSk)p(Sk+1Sk,Ak)b(AkSk)p(Sk+1Sk,Ak)=k=tT1π(AkSk)b(AkSk)\rho = \frac{p(trajectory | \pi)}{p(trajectory | b)} = \prod_{k=t}^{T-1} \frac{\pi(A_k | S_k)p(S_{k+1} | S_k, A_k)}{b(A_k | S_k)p(S_{k+1} | S_k, A_k)} = \prod_{k=t}^{T-1} \frac{\pi(A_k | S_k)}{b(A_k | S_k)}

У підсумку, ймовірності переходів скорочуються, оскільки обидві політики діють в одному середовищі, і значення ρ\rho залежить лише від політик, а не від середовища.

Чому це важливо

Коефіцієнт ρ\rho показує, як переважити виграш GtG_t, отриманий під політикою поведінки, щоб він став незміщеною оцінкою того, яким був би виграш під цільовою політикою:

Eπ[Gt]=Eb[ρGt]\def\E{\operatorname{\mathbb{E}}} \E_\pi[G_t] = \E_b[\rho \cdot G_t]

Інакше кажучи, навіть якщо дані були зібрані за допомогою bb, ми все одно можемо оцінити очікувані виграші під π\pi — за умови, що bb надає ненульову ймовірність кожній дії, яку може обрати π\pi (умова покриття).

Практичні аспекти

Дисперсія вибіркового зважування

Використання вибіркового зважування є концептуально простим. Ми коригуємо оцінку функції значення дії q(s,a)q(s, a), зважуючи кожну спостережувану віддачу відповідним коефіцієнтом вибіркового зважування. Найпростіша формула виглядає так:

q(s,a)=i=0N(s,a)ρi(s,a)Returnsi(s,a)N(s,a)q(s, a) = \frac{\sum_{i=0}^{N(s, a)} \rho_i(s, a) \cdot Returns_i(s, a)}{N(s, a)}

де:

  • ρi(s,a)\rho_i(s, a) — коефіцієнт вибіркового зважування для ii-ї траєкторії, що починається з (s,a)(s, a);
  • Returnsi(s,a)Returns_i(s, a) — віддача з цієї траєкторії;
  • N(s,a)N(s, a) — кількість відвідувань (s,a)(s, a).

Цей підхід називається звичайним вибірковим зважуванням. Він забезпечує несмещену оцінку q(s,a)q(s, a), але може мати дуже велику дисперсію, особливо якщо поведінкова та цільова політики суттєво відрізняються.

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

q(s,a)=i=0N(s,a)ρi(s,a)Returnsi(s,a)i=0N(s,a)ρi(s,a)q(s, a) = \frac{\sum_{i=0}^{N(s, a)} \rho_i(s, a) \cdot Returns_i(s, a)}{\sum_{i=0}^{N(s, a)} \rho_i(s, a)}

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

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

Політики

Як і у випадку on-policy, використаємо ε\varepsilon-жадібні політики як для цільової політики π(as)\pi(a | s), так і для поведінкової політики b(as)b(a | s).

На перший погляд здається природним зробити цільову політику повністю жадібною — зрештою, наша кінцева мета — жадібна політика. Однак на практиці це спричиняє серйозну проблему: якщо на будь-якому кроці π(as)=0\pi(a | s) = 0 для дії, яку фактично виконала поведінкова політика, коефіцієнт важливості ρ\rho стає нульовим, і решта епізоду фактично ігнорується.

Використовуючи мале ε\varepsilon (наприклад, ε=0.01\varepsilon = 0.01) у цільовій політиці, ми гарантуємо, що π(as)>0\pi(a | s) > 0 для кожної дії, тому ρ\rho ніколи не обнуляється посеред епізоду. Після завершення навчання легко перетворити отриману ε\varepsilon‑жадібну політику на строго жадібну. Як і при on‑policy навчанні, слід використовувати спадання ε\varepsilon у поведінковій політиці, але цього разу це переважно потрібно для числової стабільності, оскільки ρ\rho все ще може стати нульовим посеред епізоду через особливості представлення чисел у комп'ютерах.

Псевдокод

question mark

Яка мета важливого вибіркового зважування (importance sampling)?

Select the correct answer

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

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

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

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