Continuous adaptation via meta-learning in non stationary and competitive enviroment https://arxiv.org/abs/1710.03641 🕐 Когда - 23 февраля 2018 года
В чем суть В классике обучения с подкреплением мы учим агента добиваться наибольшей награды в фиксированной среде. Однако в реальной жизни среда часто меняется - у роботов ломаются детали, дверь, которую они пытаются открыть, заклинивает. Поэтому важно учить агентов быстро приспосабливаться в меняющейся среде даже при нехватке данных. Этим занимается continuous meta-learning и в частности авторы в своей статье, превосходя другие методы. Авторы говорят, что исследования в этой области сильно приближают нас к общему ИИ.
Подробности 🔎 О модели Наша главная задача - понять, что делать агенту в каждый момент времени, или выучить политику - функцию от текущего состояния, которая выдает то, насколько оптимально совершать каждое действие. Среда меняется несколько раз - скажем, что каждое изменение среды соответствует отдельной задаче. Из всего множества задач насэмплируем пары последовательных задач - до и после изменения в среде. Сначала параметры политики инициализируем случайно. Затем возьмем первую пару задач 'до' и ‘после’, а случайно инициализированную политику назовем оптимальной для задачи ‘до’. С помощью этой политики ‘до’ , из среды ‘после’ насэмплируем набор траекторий - последовательность действий и состояний, которые на наш взгляд ведут нас к максимальному успеху (награде). Затем посчитаем лосс на этих траекториях и вычтем из параметров политики ‘до' градиент этого лосса - получим параметры для политики ‘после’. Интуитивно это значит, что мы посмотрели, кто из параметров в большей степени виноват в неидеальной награде и подправили параметры с учетом этого. Затем с помощью этой подправленной политики ‘после' насэмплиуем эти траектории еще раз - они будут еще более оптимальными. По этим оптимальным траекториям посчитаем мета-лосс - оптимальность принятой политики на состоянии ‘после’ при условии состояния ‘до’. Вычтя градиент мета-лосса из политики ‘до’ получим финальную политику этой стадии обучения. Дальше насэмплируем еще одну пару ‘до’- ‘после’, только теперь на самом первом этапе при использовании политики ‘до' вместо случайной политики подставим финальную политику. Будем повторять для всех сред ‘до’- ‘после', пока финальная политика практически не перестанет меняться.
🕷 Среды Чтобы тестить свою модель, авторы решили придумать несколько меняющихся сред. Авторы создали 6-ногого агента(паучка), которому можно менять коэффициент при моменте вращения любой пары ног, создавая таким образом новые среды. Агент наблюдает свои параметры и хочет, используя это знание, бежать как можно быстрей. Также было предложено robosumo - соревнование двух паучков по классическим правилам сумо, каждый паучок наблюдает свои параметры и положение противника.
🔧 Эксперименты Авторы хотели проверить то, насколько хорошо агенты адаптируются к меняющейся среде. Для этого агентам предлагалась тренироваться играть в robosumo с противниками из одного множества, а применять опыт на других агентах, которых они никогда не видели. Авторы сравнивали свой алгоритм с вариантом rl без адаптации и с другими способами адаптации adaptation via tracking и RL2. Способ адаптации, предложенный авторами в статье, показал лучшие результаты.
Что в итоге Сделан метод, который позволяет агенту непрерывно адаптироваться в меняющихся условиях, и делает это лучше других методов. Эта задачка очень крутая и важная, потому что в реальном мире среда и задачи постоянно меняются, и важно уметь одновременно использовать накопленный опыт и быстро приспосабливаться.