(3) La base del aprendizaje de refuerzo profundo [aprendizaje de estrategias]

Aprendizaje por refuerzo basado en políticas

Usaremos una red neuronal para aproximar la función de política. Esta red neuronal se denomina red de políticas, que se puede utilizar para controlar el movimiento de los agentes.

1. Aproximación de la función de política

1.1 Función de política π ( a ∣ s ) \pi(a\mid s)π ( uns )

• Función de política π ( a ∣ s ) \pi(a\mid s)π ( uns ) es una función de densidad de probabilidad (PDF).

• Toma estado sss como entrada.

• Da salida a las probabilidades para todas las acciones, por ejemplo,

                                 \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;π ( izquierda ∣ s ) = 0.2 , \pi(izquierda\mid s)=0.2,π ( izquierda y derecha )s )=0.2 ,
                                 \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;π ( derecha ∣ s ) = 0.1 , \pi(derecha\mid s)=0.1,p ( correcto _ _ _ _s )=0.1 ,
                                 \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;π ( arriba ∣ s ) = 0.7. \pi(arriba\mediados de s)=0.7.π ( arriba _s )=0.7.

• El agente realiza una acción aaaleatoria extraída de la distribución.

¿ Podemos aprender directamente una función de política π (a ∣ s)? \pi(a\mid s)?π ( uns )?

• Si solo hay unos pocos estados y acciones, entonces sí, podemos.

• Dibujar una tabla (matriz) y aprender las entradas.

• ¿Qué pasa si hay demasiados (o infinitos) estados o acciones?

1.2 Red de políticas π ( a ∣ s ; θ ) \pi(a\mid s; \theta)π ( uns ;yo )

Red de políticas: use una red neuronal para aproximar π ( a ∣ s ) \pi(a\mid s)π ( uns ) .

• Utilizar red de políticas π ( a ∣ s ; θ ) \pi(a\mid s; \theta)π ( uns ;θ ) para aproximarπ ( a ∣ s ) \pi(a\mid s)π ( uns ) .

θ \thetaθ : parámetros entrenables de la red neuronal.

∑ una ∈ UNA π ( una ∣ s ; θ ) = 1. \sum_{a∈A}\pi(a\mid s; \theta)=1.a Aπ ( uns ;yo )=1.

• Aquí, AAA = {“izquierda”,“derecha”,“arriba”} es el conjunto de todas las acciones.

• Es por eso que usamos la activación softmax.

2. Aproximación de la función de valor de estado

Revisión 2.1: función de valor de acción

2.2 Función de valor de estado

V π(st) = EA[Q π(st,A)] = ∑ a π(a ∣ s) ⋅ Q π(st, a). V_{\pi}(s_{t})=E_{A}[Q_{\pi}(s_{t},A)]=\sum_{a}\pi(a\mid s) \cdot Q_{\ pi}(s_{t},a).Vpag( st)=miun[ Ppag( st,un )]=unπ ( uns )qpag( st,a ) .
               \;\;\;\;\;\;\;Integre la acción A ∽ π ( • ∣ st ) . A \backsim\pi(•\mid s_{t}).Aπ ( st) .

V π ( st ) V_{\pi}(s_{t})Vpag( st) puede evaluar el estado actual. Cuanto mayor seaV π ( st ) V_{\pi}(s_{t})Vpag( st) , mayor será la posibilidad de ganar. Dado el estadosss ,V π ( st ) V_{\pi}(s_{t})Vpag( st) puede evaluar la estrategiaπ \pipág . Siπ \piπ es bueno, cuanto mayor seaV π ( st ) V_{\pi}(s_{t})Vpag( st) , mayor es la probabilidad actual de ganar.

Definición: Función estado-valor.
V π ( st ) = EA [ Q π ( st , UN ) ] = ∑ un π ( un ∣ s ) ⋅ Q π ( st , un ) . V_{\pi}(s_{t})=E_{A}[Q_{\pi}(s_{t},A)]=\sum_{a}\pi(a\mid s) \cdot Q_{\ pi}(s_{t},a).Vpag( st)=miun[ Ppag( st,un )]=unπ ( uns )qpag( st,a ) .

Función aproximada de valor de estado.

• Función de política aproximada π ( a ∣ st ) \pi(a \mid s_{t})π ( unst) por red de políticasπ ( a ∣ st ; θ ) . \pi(a \mid s_{t}; \theta).π ( unst;yo ) .

• Función de política aproximada V π ( st ) V_{\pi}(s_{t})Vpag( st) por:

                                         \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;V(st; θ) = ∑ a π(a ∣ s; θ) ⋅ Q π(st, a). V(s_{t};\theta)=\sum_{a}\pi(a\mid s; \theta) \cdot Q_{\pi}(s_{t},a).V ( st;yo )=unπ ( uns ;yo )qpag( st,a ) .

Definición: Función de estado-valor aproximada.
V(st; θ) = ∑ a π(a ∣ s; θ) ⋅ Q π(st, a). V(s_{t};\theta)=\sum_{a}\pi(a\mid s; \theta) \cdot Q_{\pi}(s_{t},a).V ( st;yo )=unπ ( uns ;yo )qpag( st,a ) .

Aprendizaje basado en políticas: Aprender θ \thetaθ que maximizaJ ( θ ) = mi s [ V ( S ; θ ) ] . J(\theta)=E_{s}[V(S;\theta)].J ( θ )=mis[ V ( S ;yo )] .

Cuanto mejor sea la red de políticas, mayor será J ( θ ) J(\theta)J ( θ ) .

Cómo mejorar θ \thetaθ ? ¡Ascenso de gradiente de políticas!

• Observar estado sss .

• Política de actualización por: θ ← θ + β ⋅ ∂ V ( s ; θ ) ∂ θ \theta\leftarrow\theta+\beta\cdot\frac{\parcial V(s;\theta)}{\parcial \theta}ii+bθV ( s ; θ )

                                       Gradiente de política: ∂ V ( s ; θ ) ∂ θ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\ ;Política\;gradiente\;:\frac{\parcial V(s;\theta)}{\parcial \theta}política _ _ _ _gradiente _ _ _ _ _ _ _:θV ( s ; θ )

3. Gradiente de política

Definición: Función de estado-valor aproximada.
V(st; θ) = ∑ a π(a ∣ s; θ) ⋅ Q π(st, a). V(s_{t};\theta)=\sum_{a}\pi(a\mid s; \theta) \cdot Q_{\pi}(s_{t},a).V ( st;yo )=unπ ( uns ;yo )qpag( st,a ) .

Gradiente de política: Derivado de V ( s ; θ ) V(s;\theta)\;V ( s ;yo )escribir θ \theta.θ _
∂ V ( s ; θ ) ∂ θ = ∂ ∑ un π ( un ∣ s ; θ ) ⋅ Q π ( st , un ) ∂ θ . \frac{\parcial V(s;\theta)}{\parcial \theta}=\frac{\parcial\sum_{a}\pi(a\mid s; \theta) \cdot Q_{\pi}(s_ {t},a)}{\\theta parcial}.θV ( s ; θ )=θunπ ( un s ; θ ) Qpag( st, un ).

Introduce la derivada dentro de la sumatoria.

                           = ∑ un ∂ π ( un ∣ s ; θ ) ⋅ Q π ( st , un ) ∂ θ \;\;\;\;\;\;\;\;\;\;\;\;\;=\sum_{a}\frac{\parcial\pi(a\mid s; \theta) \cdot Q_{\pi}(s_{t},a)}{\parcial\theta}.=unθπ ( un s ; θ ) Qpag( st, un ).

Imagina Q π Q_{\pi}qpages independiente de θ \thetaθ _
(Puede que no sea cierto.)

                           = ∑ un ∂ π ( un ∣ s ; θ ) ∂ θ ⋅ Q π ( st , un ) suma_{a}\frac{\parcial\pi(a\mid s; \theta) }{\parcial \theta}\ cdot Q_{\pi}(s_{t},a)\;=unθπ ( un s ; θ )qpag( st,un ) Gradiente de política: Forma 1 Política\,Gradiente: Forma 1política _ _ _ _G r a d i e n t:Formulario 1 _ _

Sin embargo, este gradiente de política no se usa en el proceso real, pero sí se usa la aproximación de Monte Carlo de este gradiente de política.

                     \;\;\;\;\;\;\;\;\;\;

Dos formas de gradiente de política:

• Forma 1: ∂ V ( s ; θ ) ∂ θ = ∑ un ∂ π ( un ∣ s ; θ ) ∂ θ ⋅ Q π ( st , un ) . \frac{\parcial V(s;\theta)}{\parcial \theta}=\sum_{a}\frac{\parcial\pi(a\mid s; \theta) }{\parcial \theta}\cdot Q_{\pi}(s_{t},a).θV ( s ; θ )=unθπ ( un s ; θ )qpag( st,a ) .

• Forma 2: ∂ V ( s ; θ ) ∂ θ = EA ∽ π ( • ∣ s ; θ ) [ ∂ log π ( A ∣ s ; θ ) ∂ θ ⋅ Q π ( s , A ) ]. \frac{\parcial V(s;\theta)}{\parcial\theta}=E_{A\backsim\pi(•\mid s;\theta)}[\frac{\parcial log\pi(A\mid s; \theta) }{\parcial \theta}\cdot Q_{\pi}(s,A)].θV ( s ; θ )=miUN π ( s ; θ )[θl o gramo π ( UN s ; θ )qpag( s ,A )] .

3.1 Calcular gradiente de política para acciones discretas

Si las acciones son discretas, por ejemplo, espacio de acción A = A=A= {“izquierda”, “derecha”, “arriba”},…

Use Form1: ∂ V ( s ; θ ) ∂ θ = ∑ a ∂ π ( a ∣ s ; θ ) ∂ θ ⋅ Q π ( st , a ) . \frac{\parcial V(s;\theta)}{\parcial\theta}=\sum_{a}\frac{\parcial\pi(a\mid s; \theta) }{\parcial \theta}\cdot Q_{\pi}(s_{t},a).θV ( s ; θ )=unθπ ( un s ; θ )qpag( st,a ) .

  1. Calcula f (a, θ) = ∂ π (a ∣ s; θ) ∂ θ ⋅ Q π (st, a), f(a,\theta)=\frac{\parcial\pi(a\mid s; \ theta) }{\parcial\theta}\cdot Q_{\pi}(s_{t},a),f ( un ,yo )=θπ ( un s ; θ )qpag( st,a ) , para toda accióna ∈ A . a∈A.aun _
  2. Gradiente de política: ∂ V ( s ; θ ) ∂ θ = f ( " izquierda " , θ ) + f ( " derecha " , θ ) + f ( " arriba " , θ ) \frac{\parcial V(s;\theta )}{\parcial\theta}=f("izquierda",\theta)+f("derecha",\theta)+f("arriba",\theta)θV ( s ; θ )=f ( " izquierda " , _ _ _yo )+f ( " correcto " , _ _ _ _yo )+f ( " arriba " , _yo ) .

               \;\;\;\;\;\;\;Si AAA es grande, este enfoque es costoso.

3.2 Calcular gradiente de política para acciones continuas

Si las acciones son continuas, por ejemplo, espacio de acción AAA = [0,1],…

Utilice la forma 2: ∂ V(s; θ) ∂ θ = EA ∽ π(• ∣ s; θ) [∂ log π(A ∣ s; θ) ∂ θ ⋅ Q π(s, A)] \frac{\parcial V(s;\theta)}{\parcial\theta}=E_{A\backsim\pi(•\mid s;\theta)}[\frac{\parcial log\pi(A\mid s; \theta) }{\parcial \theta}\cdot Q_{\pi}(s,A)].θV ( s ; θ )=miUN π ( s ; θ )[θl o gramo π ( UN s ; θ )qpag( s ,A )] .

  1. Muestra aleatoriamente una acción a ^ \hat{a}a^ según el PDFπ (⋅ ∣ s ; θ ) \pi(\cdot\mid s;\theta).π ( s ;yo ) .
  2. Calcula g ( a ^ , θ ) = ∂ log π ( a ^ ∣ s ; θ ) ∂ θ ⋅ Q π ( s , a ^ ) g(\hat{a}, \theta)=\frac{\parcial log\ pi(\hat{a}\mid s; \theta) }{\parcial \theta}\cdot Q_{\pi}(s,\hat{a})gramo (a^ ,yo )=θlo gramo π ( _a^s; yo).qpag( s ,a^ )
         \;\;
  3. Usa g ( a ^ , θ ) g(\hat{a}, \theta)gramo (a^ ,θ ) como una aproximación al gradiente de política∂ V ( s ; θ ) ∂ θ \frac{\parcial V(s;\theta)}{\parcial \theta}θV ( s ; θ ).

3.3 Actualizar la red de políticas mediante el gradiente de políticas

El algoritmo de Reinforce necesita jugar un juego y observar todas las recompensas antes de actualizar la red.

Más tarde…

4. Resumen

Supongo que te gusta

Origin blog.csdn.net/weixin_49716548/article/details/125983827
Recomendado
Clasificación