ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 03.02.2024
Просмотров: 6
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Слайд 4
Обучение с подкреплением (RL) — область машинного обучения, в которой обучение осуществляется посредством взаимодействия с окружающей средой. Это целенаправленное обучение, в котором обучаемый не получает информации о том, какие действия следует выполнять, вместо этого он узнает о последствиях своих действий. Представьте, что вы учите собаку ловить мячик на лету. Вы не сможете на словах объяснить собаке, что она должна поймать мячик; вместо этого вы просто кидаете мячик и каждый раз, когда собака ловит его, даете ей кусочек сахара. Если собака не поймала мячик, вы не даете ей сахар. Вскоре собака понимает, при каких действиях она получает сахар, и начинает повторять эти действия. Аналогичным образом в среде RL вы не учите агента, что и как он должен делать, вместо этого вы даете агенту награду за каждое выполненное действие. Награда может быть положительной или отрицательной. Тогда агент начинает выполнять действия, при которых он получает положительную награду. Таким образом, обучение превращается в процесс проб и ошибок.
Агент Агент (agent) — программа, способная принимать осмысленные решения; Агенты выполняют действия, контактируя со средой, и получают награды в зависимости от своих действий.
Политика (policy) определяет поведение агента в среде. Способ выбора агентом действия, которое он будет выполнять, зависит от политики. Допустим, вы хотите добраться из дома на работу. Существует множество возможных вариантов маршрута; одни пути короткие, другие длинные. Эти пути называются «политиками», потому что они представляют собой способ выполнения действия для достижения цели.
В нашей аналогии собака представляет агента;, сахар, полученный за пойманный мячик, — положительную награду, а отсутствие сахара — отрицательную.
Слайд 5
Матрица переходов T(s, a, s’) содержит вероятности выбора действия a в состоянии s, которое переводит процесс в состояние s’.
Типичный алгоритм RL состоит из следующих этапов:
1. Агент взаимодействует со средой, выполняя действие.
2. Агент выполняет действие и переходит из одного состояния в другое.
3. Агент получает награду на основании выполненного действия.
4. В зависимости от награды агент понимает
, было действие хорошим или плохим.
5. Если действие было хорошим, то есть если агент получил положительную награду, то агент предпочитает выполнить это действие еще раз; в противном случае агент пытается выполнить другое действие, приводящее к положительной награде. Таким образом, по сути, происходит процесс обучения методом проб и ошибок.
Слайд 6
Функция ценности (value function) определяет, насколько хорошо для агента A пребывание в конкретном состоянии.
Слайд 9
Агент RL может исследовать различные действия, которые обеспечивают положительную награду, или же использовать предыдущее действие, которое привело к положительной награде. Если агент RL исследует различные действия, существует высокая вероятность того, что агент получит отрицательную награду, так как не все действия будут лучшими. Если агент RL эксплуатирует только известное лучшее действие, существует высокая вероятность упустить лучшее действие, которое может принести более высокую награду. Всегда существует компромисс между исследованием и эксплуатацией. Невозможно заниматься исследованием и эксплуатацией одновременно.
Слайд 17
С поправочным коэффициентом 0 никакого обучения вообще не будет, поскольку учитываться будут только немедленные награды; с другой стороны, поправочный коэффициент 1 будет неограниченно стремиться к будущим наградам, что может завести в бесконечность.
1. Инициализация Q-функции произвольными значениями.
2. Выбор действия из состояния с использованием эпсилон-жадной стратегии (ε > 0) и переход в новое состояние.
3. Обновление Q предыдущего состояния по формуле.
4. Повторение шагов 2 и 3 до достижения завершающего состояния.
То есть к обучение сводится к нахождению значений к функции для каждого состояния
Слайд 18
Допустим, имеются три входных сигнала x1, x2 и x3, по которым должен прогнозироваться выход y. Входные сигналы умножаются на веса w1, w2 и w3, а затем суммируются: x1 × w1+ x2 × w2+ x3 × w3. Но почему входные сигналы умножаются на весовые коэффициенты? Потому что не все входные сигналы одинаково важны для вычисления выхода y. Предположим, x2 важнее для вычисления выхода по сравнению с двумя другими сигналами. Тогда w2 присваивается более высокое значение, чем другим. Таким образом, после умножения на весовой коэффициент значение x2будет выше значений x1 и x3. Далее к полученной сумме добавляется значение b, называемое смещением. Таким образом, z = сумма входов*весов+смещение
Слайд 19
Q-обучение применяется в средах с конечным числом состояний и
ограниченными наборами действий, в которых был возможен
исчерпывающий поиск оптимального значения Q по всем возможным
парам состояние/действие. Но наша среда в которой число
состояний очень велико, а в каждом состоянии доступно множество
действий. Перебор всех действий в каждом состоянии занял бы слишком
много времени. Мы используем нейросеть с весами, чтобы аппроксимировать значение Q для всех возможных действий в каждом состоянии.
r + γmaxQ (s′, a′) — целевое значение, а Q (s, a) — прогнозируемое
значение; мы стараемся свести это значение к минимуму засчет оптимазиции весов с помощью градиетного спуска.
.
Слайд 22
Воспроизведение опыта
Мы знаем, что в средах RL агент переходит из состояния s в следующее
состояние s′
, выполняя действие a и получая награду r. Мы сохраняем
эту информацию перехода в форме
опыта. Эти переходы называются опытом агента.
Ключевая идея воспроизведения опыта заключается в том, что сеть
DQN обучается с переходами, взятыми из буфера воспроизведения
(вместо обучения на основе последних переходов). Данные из опыта
агента коррелированы, а случайная выборка точек данных из буфера
воспроизведения сокращает корреляцию, что помогает агенту учиться
эффективнее на более широком спектре опыта.
Также эта случайная выборка помогает избавиться от
явления переобучения (overfitting) с коррелированным опытом,
характерного для нейросетей. Такую равномерную выборку можно
использовать для оценки опыта. Воспроизведение опыта больше похоже
на очередь, чем на список. В буфере хранится фиксированное количество
последних данных, поэтому при поступлении новой информации старая
удаляется
Целевая сеть
Одна функция Q используется для вычисления целевого и прогнозируемого значения. Вы видите, что в приведенной формуле одни веса θ используются как для целевого, так и для прогнозируемого значения Q. Поскольку одна сеть вычисляет как прогнозируемое, так и целевое значение, между ними может существовать расхождение. Для предотвращения этой проблемы можно использовать отдельную сеть, называемую целевой сетью, для вычисления целевого значения. Целевая сеть «замораживается» на
несколько временных шагов, после чего веса целевой сети обновляются
копированием весов из сети Q. Замораживание целевой сети на
некоторое время и обновление ее весов весами фактической Q-сети
стабилизирует обучение.
Слайд 24
Как передаются входные данные нашей нейронной нейронной сети? Очевидно, что в любой момент мы можем представить наше игровое поле как матрицу, где ячейка, в которой находится фрукт обозначается числом 0.25, тело 0.5, голова 0.75, а свободные участки это нули. Так как в приложении стены не отрисовываются, на картинке нет единиц вокруг данной матрицы. Единицами обозначаются стенки. В программе они есть, поэтому сначала мы подаем на вход сверточной нейронной сети матрицу 12 на 12(т.е. 144 значения). Применяются операции свёртки, т.е. сверточная нейронная сеть самостоятельно выделяет осоые признаки, на выходе мы получаем вектор из 64 значений. Это сделано, чтобы улучшить прогресс обучения и ускроить его. Данный вектор из 64 значений уже подается на вход нашей сети DQN.