bis folie 337 hinzugefügt

This commit is contained in:
paul-loedige 2021-02-03 22:17:54 +01:00
parent d932bfd7e8
commit b06edb452c
9 changed files with 109 additions and 1 deletions

View File

@ -11,4 +11,7 @@
\acro{CSP}{Constraint Satisfaction Problem}
\acro{KNF}{Konjunktive Normalform}
\acro{PAC}{Probably Approximately Correct}
\acro{RL}{Reinforcement Learning}
\acro{MDP}{Markov Decision Process}
\acro{TD}{Temporal Difference}
\end{acronym}

View File

@ -0,0 +1,104 @@
\chapter{\acf{RL}}
\label{rl}
Beim \ac{RL} wir einem Agenten über mehrere Epochen ein gewünschtes Verhalten gelehrt.
Hierbei wird jeweils mit bestimmten Zielen gearbeitet, die dafür sorgen,
dass der Agent eigenständig sein Verhalten entwirft.
Das /ac{RL} unterscheidet sich von dem Supervised Learning darin, dass die Trainingsdaten nicht gelabelt sind.
D.h., dass der Agent keine Informationen darüber erhält, ob er auf einen einzelne Dateneingabe korrekt reagiert hat.
Der Agent geht also nach dem Prinzip \say{Learning by Doing} vor.
Er interagiert mit einer Umgebung (möglicherweise eine Mehragentenumgebung) und lernt die Sensordaten zu interpretieren.
Während der Interaktion erhält er Feedback (Feedback-Loop) zu seinem Handeln.\\
\includegraphics[width = \textwidth]{reinforcement_learning_agentenmodell.png}
Eine Folge $S_0,A_0,R_0,S_1,A_1,R_1,\dots,A_T,S_T,R_T$ stellt eine Episode (einen Versuch) dar.
Der Reward ist eine abstrakte Beschreibung dafür, ob das Verhalten des Agenten gut oder schlecht ist.
Je besser die Rewardfunktion gewählt ist, desto besser und schneller lernt der Agent das gewünschte Verhalten.
Grundsätzlich gibt es hierbei zwei Ansätze:
\begin{itemize}
\item Reward beim erreichen eines Ziel (z.B. Gewinn eines Schachspiels)
\item Reward für die Verbesserung des Zustandes (z.B. Auto näher an Parklücke)
\end{itemize}
\section{Policy $\pi$ (Taktik)}
\label{rl: policy}
\begin{wrapfigure}{b}{.4\textwidth}
\vspace{-10mm}
\includegraphics[width = .4\textwidth]{reinforcement_learning_taktik.png}
\end{wrapfigure}
Beim Lernen wird eine Taktik $\pi$ entwickelt,die das Verhalten des Agenten vollständig definiert,
indem sie den einzelnen Zuständen Aktionen zuweist.
Die entwickelte Taktik $\pi$ ist meist stationär (zeit-unabhängig).
\section{Return $G_t$}
\label{rl: return}
Der Return $G_t$ ist die verminderte Summe der Rewards einer Episode ab Zeitpunkt $t$:
$$G_t = R_t + \gamma R_{t+1} + \gamma^2R_{t+2}+\dots = \sum^\infty_{k=0}\gamma^k R_{t+k}$$
Hierbei ist $\gamma$ der Verminderungsfaktor (Discount Factor), der abhängig von der Anwendung ausgewählt wird:
\begin{itemize}
\item $\gamma=0:$ für ausschließlich kurzfristige Gewinne
\item $\gamma=1:$ für additive Gewinne
\item $\gamma=0,9\dots0,99:$ meist in kontinuierlichen Umgebungen sinnvoll
\end{itemize}
Wichtig ist zu beachten, dass $\gamma$ über das Konvergenzverhalten von $\pi$ entscheidet
\section{Value $V$}
\label{rl: value}
\begin{wrapfigure}{H}{.4\textwidth}
\vspace{-5mm}
\includegraphics[width = .4\textwidth]{reinforcement_learning_value.png}
\end{wrapfigure}
Die Value eines Status gibt einen Erwartungswert für die Summe des Rewards bis zum Ende der Episode.
\paragraph{State-Value Function}
Der erwartete Return, wenn mit einer Policy $\pi$ im Zustand $s$ gestartet wird:
$$V_\pi(s)=\mathbb{E}_\pi\left[R_{t+1}+\gamma R_{t+2}+\gamma^2 R_{t+3}+\dots\mid S_t=s\right]$$
\paragraph{Action-Value Function}
Der erwartet Return in Zustand $s$ Aktion $a$ anzuwenden und dann der Policy $\pi$ zu folgen.
$$q_\pi(a,s)=E_\pi\left[G_t\mid S_t=s, A_t=a\right]$$
\paragraph{Bellman-Gleichung}
Die Value-Funktion für eine Aktion kann auch mit der Bellmann-Gleichung ausgedrückt werden:
\begin{align*}
V(s)&=\mathbb{E}\left[G_t\mid S_t=s\right]\\
&\vdots\\
&=\mathbb{E}\left[R_{t+1}+\gamma V(S_{t+1}\mid S_t=s)\right]
\end{align*}
\section{\acf{MDP}}
\label{mdp}
Ein \ac{MDP} ist definiert als $<S,A,P,R,\gamma>$
\begin{itemize}
\item $S:$ eine endliche Menge von Zuständen
\item $A:$ eine endliche Menge von Aktionen
\item $P:$ state transition matrix (eine Matrix von State-Übergängen mit Wahrscheinlichkeiten)
$$ \mathcal{P}^a_{ss'}=\mathbb{P}\left[S_{t+1}=s'\mid S_t=s, A_t=a\right] $$
\item $R:$ die Reward-Funktion
$$\mathcal{R}^a_s=\mathbb{E}\left[R_{t+1}\mid S_t=s,A_t=a\right]$$
\item $\gamma:$ der Discount-Faktor
$$\gamma\in[0,1]$$
\end{itemize}
\acp{MDP} beschreiben vollständig beobachtbare Umgebungen.
Fast alle \ac{RL}-Probleme werden als \acp{MDP} formalisiert.
Meist ist $P$ oder $R$ gesucht.
\section{Einordnung in Maschinelles Lernen}
\label{rl: einordnung}
Das /ac{RL} ist ein Teil des \acf{ML}.\\
\includegraphics[width = .6\textwidth]{reinforcement_learning_einordnung.png}
Es hat viele Schnittstellen zu den verschiedensten Wissenschaften.\\
\includegraphics[width = .8\textwidth]{reinforcement_learning_schnittstellen.png}
\section{Active Reinforcement Learning}
\label{active reinforcement learning}
\subsection{\acf{TD} Learning}
\label{td learning}
Beim \ac{TD} Learning lernt der Agent bereits aus unvollständigen Episoden.
Man sagt: \say{learning a guess from a guess}
\paragraph{Q-Learning}
Wenn man die Bellman-Funktion für Action-Value-Funktionen (\ref{rl: value}) einsetzt erhält man:
$$Q(s,a)=\mathbb{E}\left[R_{t+1}+\gamma Q(S_{t+1},A_{t+1})\mid S_t=s, A_t=a\right]$$
Hieraus ergibt sich die Aktualisierungsregel für das Q-Learning
$$Q(s_t,a_t)\gets \underbrace{s_t,a_t}_{\text{old value}} + \underbrace{a}_{\text{learning rate}} \cdot \left(\overbrace{\underbrace{r_{t+1}}_{\text{reward}} + \underbrace{\gamma}_{\text{discount facotr}}\cdot\underbrace{\max_aQ(s_{t+1},a)}_{\text{estimate of optimal future value}}}^{\text{learned value}}-\underbrace{Q(s_t,a_t)_{\text{old value}}}\right)$$
\includegraphics[width =.8\textwidth]{q-learning.png}

BIN
images/q-learning.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View File

@ -2,4 +2,5 @@
\label{ml}
\input{chapters/Maschinelles Lernen/Einführung.tex}
\input{chapters/Maschinelles Lernen/Lernbarkeit.tex}
\input{chapters/Maschinelles Lernen/Lernbarkeit.tex}
\input{chapters/Maschinelles Lernen/Reinforcement Learning.tex}