Всемогъщият политически градиент в обучението за укрепване

Просто стъпка по стъпка обяснение на концепцията за градиентите на политиката и как те се вписват в обучението за укрепване. Може би твърде просто.

В тази публикация обяснявам как извличаме фундаменталната теорема за градиента на политиката. Защо трябва да знаете нещо за градиента на политиката? Знаейки как се дефинира градиентът на политиката, ще ви даде инструментите, за да разберете 90% от алгоритмите и документите за обучение за подсилване. Документи, които правят неща като това:

Така че, ако се интересувате от обучение за засилване, горещо ви препоръчвам да се заемете с предмета на PG, защото той отваря милиони врати. Ето мантрата:

Знам откъде идва градиентът на политиката, мога да разбера повечето от обучението за укрепване.

Важно е да се прави разлика между алгоритмите за градиент на политиката (където използваме градиента на политиката) и градиента на политиката, който можем да дефинираме чрез проста математика. По-често виждам, че хората се объркват относно тези две концепции, така че почувствах необходимостта да го заявя ясно в началото:

Градиентът на политиката е основата за алгоритмите за обучение за укрепване на градиента на политиката

Сега има и други видове алгоритми за обучение на подсилване, които нямат нищо общо с градиента на политиката. Но алгоритмите за градиент на правилата са страхотни, защото получаваме актьор (политика) директно от нашата оптимизация.

Предварителни

За да построите къща, трябва да започнете с основата.

Каква е нашата цел в обучението за засилване? Целта е да се увеличи максимално възвръщаемостта J на нашата политика π, естествено нашата политика е параметризирана с някакъв вид параметри, които ще обозначим θ (тета) тук. Така че, за да го напиша ясно, целта е следната:

Пропускаме да пишем π, тъй като заявихме, че π е параметризирано от θ, това е просто конвенция за писане. Уравнението гласи, че искаме параметрите, които максимизират възвръщаемостта - ах! Все още нищо сериозно. Обърнете внимание, че тази дефиниция е универсална в обучението за подсилване, можем да опаковаме всякакви неща в тези параметри, които искаме да оптимизираме, тези параметри могат също да се отнасят до параметрите на функцията Q стойност, тогава ще разглеждаме методи, базирани на стойност, но в тази статия се концентрираме върху градиента на политиката. Сега, след като знаем каква е възвращаемостта на полицата, можем да започнем да говорим за нея по по-смислен начин.

Първо, важно е да се отбележи, че при обучението за засилване имаме работа с процеси на вземане на решение по Марков или частично наблюдавани процеси на вземане на решение по Марков, отсега нататък означавани като MDP и POMDP. MDP и POMDP са хубава рамка за формализиране на динамични системи. По принцип можем да дефинираме всеки преход в нашата система по следния начин:

И така, казано ясно, това казва, че вероятността за следващо състояние при дадено текущо състояние и действие, така че знаем също, че MDP са стохастични, може да не сме сигурни в кое състояние ще се окажем в следващата стъпка. Забележете, че тук има само представа за история на 1 стъпка, новото състояние се интересува само от предишното състояние и действието, това също се нарича свойство на Марков или предположение на Марков. Това важи за MDP. В POMDP следващото състояние се обуславя допълнително от някакво скрито състояние, което не се наблюдава, което ги прави по-трудни, но и по-универсални. Така че, нека го кажем високо и ясно:

Предположението на Марков гласи, че следващото състояние зависи само от текущото състояние и действие.

Сега, когато разбираме откъде идват MDP и имаме рамка за разглеждане на среди (динамични системи), се връщаме към дефиниране на градиента на политиката. Досега знаем какво е връщането на политиката и знаем как да пишем преходи в средата. По принцип можем да очакваме, че ще имаме данни от много различни ситуации от различни изходни позиции (траектории). Какво е връщането на траекторията τ(tau)? Е, това е сборът от всички награди в траекторията, много просто:

Тази функцияrе наградата за стъпка, която обикновено бихте получили от вашата среда. Използвал съм сума тук, така че приемаме, че средата е дискретна на стъпки (не обаче състоянията и действията). Понякога добавяме дисконтов фактор между 0 и 1 към това уравнение, за да направим безкрайна сума крайна, но това не е строго необходимо при крайни траектории. Важно е да знаете, че може или не можете да знаете как тази функция за възнаграждение изглежда аналитично, това е красотата на обучението за подсилване.

Чудесно, сега знаем какво е връщането на траектория. Но също така знаем, че нашата среда е стохастична! Следователно нашата траектория се превръща в случайна променлива (независимо от факта дали политиката е стохастична или не). Следователно нашата възвръщаемост се превръща в случайна променлива! И така, какво максимизираме, когато максимизираме случайна променлива? Ние максимизираме очакванията за тази случайна променлива или в нашия случай връщането на политиката:

Така че очакването е просто претеглена сума за всички възможни реализации на случайната променлива, където теглата са вероятностите реализацията да се случи. Това е напълно логично, бихте искали да претеглите повече нещо, което е по-вероятно, следователно възвръщаемостта на по-вероятните траектории носи по-голяма тежест в нашите очаквания (перфектен смисъл!). За тези от вас, които имат проблеми с смятането — не се плашете от интеграла, той е основно сума върху израза в него, когато итерирате всички стойности на непрекъсната променлива (безкраен брой стойности), непрекъснатата променлива е нашата траектория в този случай.

Забележете друго, вероятността за траекторията е условна вероятност, обусловена от параметрите на политиката. Това е така, защото действията зависят от политиката, следващото състояние зависи от текущото действие и текущото състояние, следователно траекторията зависи от параметрите и динамиката на средата. Готово! Перфектен смисъл. Ето как можем да напишем това условие:

Можем само да запишем тази условна вероятност като горната поради предположението на Марков. Ето защо се дестилира до хубавия продукт по-горе, с който се работи лесно. Дотук добре… „Автономните“ роботи чакат.

Градиентът

Най-накрая сочната част!

Добре, сега разбираме условната вероятност на траекторията, какво е траектория, какво е възвръщаемостта на траекторията, каква е възвръщаемостта на политиката, каква е очакваната възвръщаемост на политиката… Сега всъщност можем да започнем да говорим за частта за оптимизация и да ритаме математиката една степен нагоре.

И така, искаме да увеличим максимално възвръщаемостта си и искаме да го направим чрез градиентно спускане. Имаме нужда от градиент на възвръщаемостта на политиката по отношение на параметрите на политиката θ.

В тази ситуация градиентът може да влезе в интеграла, така че стигаме до следното уравнение:

Добре, така че връщането зависи от получената траектория, но не директно от параметрите. Трябва да се тревожим само за члена на условната вероятност в интеграла. Нека го напишем въз основа на това, което сме написали досега:

Вземането на градиента на продукта е наистина грозно, ние всъщност не искаме това, искаме нещо по-хубаво, искаме сума. Какво можем да направим? Някои от вас са чували за трика с лог-производни. Прозрението е следното (и да, наистина е толкова просто) и се основава единствено на начина, по който вземате градиента на логаритъма:

Връщайки се към градиента на нашата политика. Сега можем да го напишем по следния начин:

Разширяваме термина в логаритъм, имайте предвид, че резултатът е, че можем да запишем произведението като сума от логаритми (типично правило за сума от логаритми):

Въз основа на стандартно изчисление, операторът на градиента се вмъква в сумата, частите, които не зависят от параметрите, отиват на 0 и вероятността за регистриране на правилата остава:

Резултатът е очакване за траектории. Сега можем да напишем великолепния краен резултат или иначе наречен теоремата за градиента на политиката:

Гръцката буква ro под очакването показва нашето разпределение на траекторията в резултат на нашата политика и динамиката на околната среда, по отношение на които изчисляваме нашето очакване. Това разпределение може да причини много главоболия, тъй като за да получим добри оценки на очакванията, се нуждаем от проби, които представят нашето разпределение наистина добре. Това е точно мястото, където алгоритмите за градиент на политика извън политиката не успяват, тъй като използват данни от различни поведенчески политики, които предизвикват различно разпределение, което води до лоша оценка на градиента на политиката. По случайност написах статия за това: „Фалшивото обещание за алгоритми за обучение за подсилване извън правилата“. Прочетете го, ако ви интересува по-подробно.

Не можем да изчислим това очакване директно, това ще изисква от нас да изчислим всички възможни траектории за дадената политика. Това, което можем да направим, е да го оценим с извадка от Монте Карло. Това е просто изискан начин да кажем, че вземаме проби от някои траектории за дадена политика и вземаме средната стойност като оценка на очакването. Можем да го запишем по следния начин с лека злоупотреба с нотация (M показва броя на траекториите, които използваме за оценка):

И това е общо взето всичко. Това естествено е по-добра оценка, колкото повече проби имаме и, разбира се, ако пробите останат верни на индуциращото разпределение въз основа на текущата политика, която оптимизираме. Казано с други думи, разпределението, предизвикано от настоящата ни политика, подобно ли е на разпределението, от което са извлечени пробите? За да облекчат това, изследователите са използвали хитри трикове като вземане на извадки по важност, заместващи функции за загуба и т.н., които няма да разглеждам тук, може би друг път.

Сега, след като най-накрая стигнахме до края на публикацията, поглеждайки назад към нея… Вярвам, че ако сте разбрали всички концепции, сега имате (много) солидна основа за разбиране на алгоритмите за градиент на политиката и можете да опитате да усвоите също няколко учебни документа за укрепване! Като следващо нещо, което трябва да прочетете, може би искате да знаете защо обучението за подсилване извън правилата не работи добре:

  1. „Фалшивото обещание за алгоритми за обучение за укрепване извън политиката“

Надявам се да е било интересно и интуитивно! Добра работа, ако сте разбрали всичко, ако не… Не е голяма работа, повечето хора не го разбират отначало. Просто го обработете отново. Сега, когато разполагате с инструментите, вселената за учене с подсилване е отворена... Забавлявайте се!