Страницы

Поиск по вопросам

понедельник, 16 декабря 2019 г.

Модифицированный Q-Learning

#математика #нейронные_сети #машинное_обучение


Начал интересоваться вопросом об обучении с подкреплением нейронной сети. После прочтения
нескольких работ возникли вопросы, на которые не смог найти ответ.

На этой картинке мы имеем алгоритм для online обучения нейронной сети, а конкретно
модифицированный Q-Learning.



Как мне рассчитывать изменение весов в нейронной сети, если:


Нейронная сеть имеет 3 и больше слоев (как я полагаю, эта формула предназначена только
для одного вектора весов) 
Мы не используем для каждого отдельного action собственную нейронную сеть.

    


Ответы

Ответ 1



Также недавно начал изучать этот вопрос и столкнулся с подобной проблемой. Скорее всего, если ваша сеть имеет 3 и более слоев, то вы обучаете ее обратным распространением. Тогда имеет смысл сделать последний слой нейронов равным количеству возможных действий, а ошибку брать как (нормализованное значение Q - значение на выходе нейрона).

Ответ 2



Для большей информативности нужно знать каким образом планируется построить многослойную сеть.(Или Так как на картинке предлагается использовать функцию полезности для корректировки весов последнего слоя нейросети.(п4), необходимо знать структуру слоев. Допустим если вы хотите использовать функцию полезности на сети с 3 скрытыми слоями, где каждый нейрон соединен с каждым нейроном следующего слоя. Вероятно проще всего использовать обратное распространение, оно является обучением с учителем и в качестве ответа использовать значение Q из матрицы пар состояние дейтвие. Тогда вы сможете расcчитать ошибку. Например: (для простоты значение на выходе нейрона последнего слоя назовем "OUT"(та самая функция активации сигмоида) ошибка = Q-OUT значение весов меняем по формуле: w(n)=nnEOUT+aw(n-1) где: w(n)-измененные значения весов, w(n-1) текущие nn-коэффициент скорости обучения E = производная сигмыошибку {OUT*(1-OUT)(Q-OUT)} a- значение импульса в пределах от 0 до 1

Комментариев нет:

Отправить комментарий