Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Що таке навчання з часовою різницею? | Навчання з Часовою Різницею
Вступ до навчання з підкріпленням з використанням Python

Що таке навчання з часовою різницею?

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

Як динамічне програмування, так і методи Монте-Карло мають свої переваги та суттєві недоліки.

Динамічне програмування

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

Попри потужність ідеї бутстрепінгу, саме динамічне програмування має два основних недоліки:

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

Методи Монте-Карло

Методи Монте-Карло усувають два недоліки динамічного програмування:

  • Не потребують моделі, оскільки навчаються на основі досвіду;
  • Спосіб навчання на досвіді обмежує дослідження, тому неважливі стани рідко відвідуються.

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

Навчання з часовим різницевим сигналом

Note
Визначення

Навчання з часовою різницею (TD) є результатом поєднання ідей як з динамічного програмування, так і з методів Монте-Карло. Воно бере підхід навчання на досвіді з методів Монте-Карло та поєднує його з бутстрепінгом з динамічного програмування.

У результаті навчання з часовою різницею вирішує основні проблеми обох методів:

  • Навчання на досвіді вирішує проблему необхідності моделі та проблему великих просторов станів;
  • Бутстрепінг вирішує проблему епізодичного навчання.

Як це працює?

TD-навчання працює за допомогою простого циклу:

  1. Оцінка значення: агент починає з початкового припущення щодо того, наскільки хороший поточний стан;
  2. Виконання дії: він виконує дію, отримує винагороду та переходить у новий стан;
  3. Оновлення оцінки: використовуючи винагороду та значення нового стану, агент трохи коригує свою початкову оцінку, щоб зробити її точнішою;
  4. Повторення: з часом, повторюючи цей цикл, агент поступово формує кращі та точніші оцінки значень для різних станів.

Порівняльна таблиця

question mark

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

Виберіть усі правильні відповіді

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

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

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

Секція 5. Розділ 1

Запитати АІ

expand

Запитати АІ

ChatGPT

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

Секція 5. Розділ 1
some-alt