Machine Learning notes

Machine Learning notes

machine learning
programming
deep learning
notes

Записки по машинному обучению на основе RL

RL - одно из фундаментальных направлений ML, наряду с Supervised Learning и Unsupervised Learning.

Области применения RL

Компьютерные науки

Инженерия

Optimal control

Математика

Экономика

Психология

Науки о нервной системе

Reward system

Характеристика

  • Нет надзирателя, только reward сигнал.
  • Обратная связь асинхронная, а не мгновенная.
  • Время имеет значение (данные приходят/изменяются последовательно)
  • Действия агента воздействуют на последующие данные, которые он получает.
  • Агент принимает решения, основанные на текущем состоянии системы.

Примеры

  • Управление лопастями вертолёта
  • Игра в Backgammon
  • Управление инвестициями
  • Управление энергостанцией
  • Управление гуманоидным роботом
  • Прохождение Atari игр

Реализация

Rewards

R(t) - скалярный сигнал ответной связи системы для каждого момента времени t. Характеризует, как хорошо агент выполняет свою задачу в конкретный момент. Цель агента — максимизировать sum(R(t)).

Агент последовательно принимает решения (выбирает текущее действие) для максимизации общей суммы наград в будущем.

У действий могут быть далеко идущие последствия. Награда может быть получена с задержкой. Иногда нужно будет отказываться от краткосрочной награды, чтобы получить большую в перспективе.

Agent and Environment

f(O(t), R(t)) => a(t)

History and state

H(t) = A1O1R1, ..., AtOtRt

Окружение предоставляет агенту observations и rewards.

S(t) = f(H(t))

State

Environment state - private environment's representation. Все данные, используемые средой для выбора следующей пары Observation+Reward. Обычно не видна агенту.

Agent state - agent's internal representation. Используемая агентом информация для принятия решения.

Markov State

State является Марковской тогда и только тогда, когда вероятность следующего стейта, в зависимости от текущего такая же, как вероятность следующего стейта, в зависимости от всех предыдущих.

Environemnt State = Markov History = Markov

Perfect case

O(t) = Sa(t) = Se(t)

Partial Observable Environments

Sa(t) != Se(t)

RL Engine

Components:

Policy: agent's behaviour function.

Map from state to action

Value function: how good is each state and/or action.

Prediction of expected future reward. Depends on the Policy.

Model: agent's representation of environment Transitions: predicts the next state Rewards: predicts next reward

RL Agents categories

Model free

Value Based

Value Function No Policy (it is implicit)

Policy Based

Policy No value function

Actor Critic

Policy Value function

Model based

Policy and/or Value Function Model

RL Fundamental problems

Learning:

The environment is initially unknown The agent interacts with the environment => improved policies

Planing:

model of the environment is known agent performs computations with model => improved policies

Exploration and exploitation

trial-and-error => better Policy

Exploration = find more about enviroment, get less reward Exploitation = exploit known information maximizing reward Need to balance it.

Prediction and control

Prediction: predict a future with given policy Control: optimise the future - find the best policy

Markov Decision Process

MDP описывает среду для RL. Среда аьсолютно обозрима.

Markov Chain Transition Matrix - матрица вероятности перехода из одного состояния цепи в другое.

Markov Reward - Добавляет в матрицу маркова R - мгновенную награду за нахождение в текущем стейте.

Discount factor [0;1] - применяется для рассчета R в бесконечном будущем, чтобы уменьшать влияние очень отдалённых в будущее наград.

R(k+1) = DF^k*R

Value function

long-term value of a state

v = f(s)

Bellman Equation for MRP

value function = immediate reward R(t+1) + discounted value of successor state DF*v(S(t+1))

Ресурсы

https://mitpress.mit.edu/books/machine-learning

https://www.amazon.com/Hands-Machine-Learning-Scikit-Learn-TensorFlow/dp/1491962291