내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
- easy-rl PDF 버전 참고 구성 P5, P10 - P12
- Joyrl 비교 보충 자료 P11-P13
- OpenAI 문서 정리 ⭐ https://spinningup.openai.com/en/latest/index.html
최신 버전 PDF 다운로드
주소: https://github.com/datawhalechina/easy-rl/releases
국내 주소 (국내 독자에게 추천):
링크: https://pan.baidu.com/s/1isqQnpVRWbb3yh83Vs0kbw 추출 코드: us6a
easy-rl 온라인 버전 링크(코드 복사용)
참고 링크 2: https://datawhalechina.github.io/joyrl-book/
다른:
[에라타 기록 링크]
——————
5. 심층 강화 학습의 기초 ⭐️
오픈 소스 콘텐츠: https://linklearner.com/learn/summary/11
——————————
동일한 전략: 학습할 에이전트와 환경과 상호작용하는 에이전트가 동일합니다.
이종 전략: 학습할 에이전트와 환경과 상호 작용하는 에이전트가 다릅니다.
정책 변화도: 데이터 샘플링에 많은 시간 필요
같은 전략 ⟹ 중요도 샘플링 ~~오버셋{중요도 샘플링}{Longrightarrow}~~~ ⟹중요도 샘플링 다양한 전략
PPO: 너무 많이 다른 두 가지 분포를 피하십시오. 동일한 전략 알고리즘
1. 오리지널 최적화 아이템 J(θ, θ′)J(세타,세타^프라임)제이(θ,θ′)
2. 제약사항 항목: θ세타θ 그리고 θ ′ 세타^프라임θ′ 출력 동작의 KL 발산( θ세타θ 그리고 θ ′ 세타^프라임θ′ 비슷할수록 좋음)
PPO에는 전신인 TRPO(신뢰 지역 정책 최적화)가 있습니다.
TRPO는 KL 발산 제약 조건을 추가 제약 조건으로 취급하고 목적 함수에 배치되지 않으므로 처리하기가 어렵기 때문에 계산이 어렵습니다. 따라서 일반적으로 TRPO 대신 PPO를 사용합니다. PPO와 TRPO의 성능은 비슷하지만 PPO는 TRPO보다 구현하기가 훨씬 쉽습니다.
KL 발산: 행동 거리.행동을 수행할 확률 분포 거리.
PPO 알고리즘에는 근위 정책 최적화 페널티(PPO-penalty)와 근위 정책 최적화 클리핑(PPO-clip)이라는 두 가지 주요 변형이 있습니다.
——————————
P10 희소 보상 문제
1. 디자인 보상. 도메인 지식이 필요합니다
관련된 각 행동에 최종 보상을 할당하는 것은 어떻습니까?
2. 호기심
내재적 호기심 모듈(ICM)
입력하다: 에서, st a_t,s_tㅏ티,에스티
산출: s ^ t + 1은 s_{t+1}입니다에스^티+1
네트워크의 예측 값 s ^ t + 1은 s_{t+1}입니다에스^티+1 진정한 가치를 지닌 st + 1 s_{t+1}에스티+1 서로 다른 점이 많을수록 rti r_t^i아르 자형티나 더 큰 것
rti r_t^i아르 자형티나 : 미래 상태를 예측하기 어려울수록 행동에 대한 보상이 커집니다. 모험과 탐험을 장려하십시오.
특징 추출기
네트워크 2:
입력: 벡터 ϕ ( st ) {bm phi}(s_{t})ϕ(에스티) 그리고 ϕ ( st + 1 ) {bm phi} (s_{t+1})ϕ(에스티+1)
행동 예측 a ^ 모자 aㅏ^ 실제 행동에 가까울수록 좋습니다.
3. 코스스터디
쉽다 -> 어렵다
역커리큘럼 학습:
마지막으로 가장 이상적인 상태(우리는 그것을 골드 상태라고 부른다)부터 시작해서황금상태에 가장 가까운 상태를 찾아라 에이전트가 도달하기를 원하는 단계적 "이상적인" 상태입니다. 물론, 이 과정에서 일부 극단적인 상태, 즉 너무 쉽거나 너무 어려운 상태를 의도적으로 제거할 것입니다.
4. 계층적 강화 학습(HRL)
에이전트의 전략은 상위 수준 전략과 하위 수준 전략으로 구분되며, 상위 수준 전략은 현재 상태에 따라 하위 수준 전략을 어떻게 실행할 것인지를 결정합니다.
————————
P11 모방학습
보상 장면은 잘 모르겠습니다
모방 학습(IL)
시연을 통해 배운다
견습 학습
보면서 배우기
명확한 보상이 있습니다: 보드 게임, 비디오 게임
명확한 보상을 제공할 수 없음: 챗봇
전문가 시연 수집: 사람의 운전 기록, 사람의 대화
역으로, 전문가는 이러한 행동을 취하는 보상 기능이 무엇입니까?
역 강화 학습은먼저 보상 함수를 찾으세요., 보상 함수를 찾은 후 강화 학습을 사용하여 최적의 행위자를 찾습니다.
3인칭 모방학습 기술
————————
P12 심층 결정론적 정책 그라데이션(DDPG)
경험 재생 전략 사용
절제실험 [제어변수법] 분석모든 제약전투 결과에 영향을 미칩니다.
조이럴:
필요해서확실성전략과지속적인 행동공간을 전제로 이러한 유형의 알고리즘은 비교적 안정적인 기본 알고리즘이 됩니다.
연속적인 행동 공간을 위한 DQN
심층 결정론적 정책 그라데이션 알고리즘(DDPG)
경험 재생 메커니즘은 샘플 간의 상관 관계를 줄이고, 샘플의 효과적인 활용을 향상시키며, 훈련의 안정성을 높일 수 있습니다.
결점:
1. 개별 행동 공간에서는 사용할 수 없습니다.
2、하이퍼파라미터에 대한 의존도가 높음
3. 매우 민감한 초기 조건. 알고리즘의 수렴과 성능에 영향을 미칩니다.
4. 국소최적상태에 빠지기 쉽다.
소프트 업데이트의 장점은 더 부드럽고 느리기 때문에 너무 빠른 가중치 업데이트로 인한 충격을 방지하고 훈련 발산의 위험을 줄일 수 있다는 것입니다.
이중 지연 결정론적 정책 그라데이션 알고리즘
세 가지 개선 사항: Double Q 네트워크, 업데이트 지연, 노이즈 정규화
더블 Q 네트워크 : 두 개의 Q 네트워크, Q 값이 더 작은 네트워크를 선택합니다. Q 값의 과대평가 문제를 처리하고 알고리즘의 안정성과 수렴성을 향상시킵니다.
지연된 업데이트: 액터 업데이트 빈도를 비판 업데이트 빈도보다 낮게 설정합니다.
소음은정규화그런 식으로가치 함수 업데이트더매끄러운
OpenAI 체육관 라이브러리_Pendulum_TD3
강화학습에서 가장 일반적으로 사용되는 PPO 알고리즘
이산 + 연속
빠르고 안정적이며 매개변수 조정이 용이함
기준 알고리즘
미정 PPO
실제로 클립 제약 조건은 더 간단하고 계산 비용이 낮으며 더 나은 결과를 얻기 때문에 일반적으로 사용됩니다.
정책 외 알고리즘은 다음을 수행할 수 있습니다.역사적 경험을 활용하기 위해, 일반적으로 경험 재생을 사용하여 이전 경험을 저장하고 재사용합니다.데이터 활용 효율이 높다。
PPO는 정책에 따른 알고리즘입니다.
——————————————————
PPO: 개별 또는 연속 작업 공간에 적합한 온 정책 알고리즘입니다.가능한 로컬 최적
PPO의 동기는 TRPO와 동일합니다: 기존 데이터를 활용하는 방법전략에서 가능한 가장 큰 개선 조치를 취하세요., 너무 많이 변경하여 실수로 성능 충돌을 일으키지 않고?
TRPO는 정교한 2차 접근 방식으로 이 문제를 해결하려고 시도하는 반면, PPO는 새로운 전략을 이전 전략에 가깝게 유지하기 위해 다른 트릭을 사용하는 1차 접근 방식입니다.
PPO 방법은 구현하기가 훨씬 간단하며 경험적으로 적어도 TRPO만큼 성능을 발휘합니다.
PPO에는 PPO-Penalty와 PPO-Clip의 두 가지 주요 변형이 있습니다.
알고리즘: PPO-클립
1: 입력: 초기 전략 매개변수 θ 0 세타_0θ0, 초기값 함수 매개변수 ϕ 0 파이_0ϕ0
2: k = 0, 1, 2, …에 대해 {bf for} ~ k=0,1,2,dots~ {bf do}를 실행합니다.~을 위한 케이=0,1,2,… 하다:
3: ~~~~~~ 환경에서 정책을 실행하여 π k = π ( θ k ) pi_k = pi(세타_k)π케이=π(θ케이) 궤적 세트 수집 D k = {τ i } {칼 D}_k = {tau_i}디케이={τ나}
4: ~~~~~~ 보상 계산(이동할 보상) R ^ 그 R_t~~~~~아르 자형^티 ▢ R ^ 그 R_t아르 자형^티 계산 규칙
5: ~~~~~~ 현재 가치 함수를 기반으로 이점 추정치를 계산합니다. V ϕ k V_{phi_k}Vϕ케이 ~의 A ^ 그 A_tㅏ^티 (지배력 추정 방법을 사용하십시오) ~~~~~ ▢ 현재 장점 추정 방법은 무엇입니까?
6: ~~~~~~ PPO-Clip 목적 함수를 최대화하여 정책을 업데이트합니다.
~~~~~~~~~~~
θ k + 1 = arg max θ 1 ∣ D k ∣ T ∑ τ ∈ D k ∑ t = 0 T min ( π θ ( ∣ st 에서 ) π θ k ( ∣ st 에서 ) A π θ k ( ∣ st 에서 ) , g ( ϵ , A π θ k ( ∣ st 에서 ) ) ~~~~~~~~~~~~세타_{k+1}=argmax한계_세타프랙{1}{|{칼 D}_k|T}합계한계_{타우인{칼 D}_k}합계한계_{t=0}^TminBig(프랙{파이_세타} (a_t|s_t)}{파이_{세타_k}(a_t|s_t)}A^{파이_{세타_k}}(s_t,a_t),g(엡실론,A^{파이_{세타_k}}(s_t,a_t))큰) θ케이+1=아르gθ최대∣디케이∣티1τ∈디케이∑티=0∑티분(πθ케이(ㅏ티∣에스티)πθ(ㅏ티∣에스티)ㅏπθ케이(에스티,ㅏ티),g(ϵ,ㅏπθ케이(에스티,ㅏ티))) ~~~~~ ▢ 전략 업데이트 공식을 결정하는 방법은 무엇입니까?
~~~~~~~~~~~
~~~~~~~~~~~ π θ k 파이_세타_kπθ케이 : 업데이트 전 전략 매개변수 벡터입니다. 중요도 샘플링. 이전 전략에서 샘플링.
~~~~~~~~~~~
~~~~~~~~~~~ 일반 확률적 경사 상승 + 아담
7: ~~~~~~ 평균 제곱 오차회귀 적합치 함수:
~~~~~~~~~~~
ϕ k + 1 = 인수 최소 ϕ 1 ∣ D k ∣ T ∑ τ ∈ D k ∑ t = 0 T ( V ϕ ( st ) − R ^ t ) 2 ~~~~~~~~~~~~phi_{k+1}=인수 최소한계_phifrac{1}{|{cal D}_k|T}합계한계_{tauin{cal D}_k}합계한계_{t=0}^TBig(V_phi(s_t)-hat R_tBig)^2 ϕ케이+1=아르gϕ분∣디케이∣티1τ∈디케이∑티=0∑티(Vϕ(에스티)−아르 자형^티)2
~~~~~~~~~~~
~~~~~~~~~~~ 일반 경사하강법
8: bf를 위한 끝 ~를 위한 끝끝 ~을 위한
~~~~~~~~~~~~
$dots$
… ~~~점 …
g(ϵ, A) = {( 1 + ϵ ) A A ≥ 0 ( 1 − ϵ ) AA < 0 g(엡실론, A)=왼쪽{(1+ϵ)ㅏ ㅏ≥0(1−ϵ)ㅏㅏ<0오른쪽. g(ϵ,ㅏ)={(1+ϵ)ㅏ (1−ϵ)ㅏㅏ≥0ㅏ<0
종이에장점 추정:
A ^ t = − V ( st ) + rt + γ rt + 1 + ⋯ + γ T − t + 1 r T − 1 + γ T − t V ( s T ) ⏟ R ^ t ? ? ? 모자 A_t = -V ( s_t ) + 언더 브레이스 { r_t + 감마 r_ {t + 1} + cdots + 감마 ^ { T-t + 1} r_ {T- 1} + 감마 ^ { Tt} V ( s_T )} _ { 텍스트 색상 { 파란색 { 모자 R_t ???}}ㅏ^티=−V(에스티)+아르 자형^티??? 아르 자형티+γ아르 자형티+1+⋯+γ티−티+1아르 자형티−1+γ티−티V(에스티)
만들다 Δ t = rt + γ V(st+1) − V(st) 델타_t =r_t+감마 V(s_{t+1})-V(s_t)Δ티=아르 자형티+감마(γ)(에스티+1)−V(에스티)
하지만 rt = Δ t − γ V(st+1) + V(st) r_t = 델타_t - 감마 V(s_{t+1}) + V(s_t)아르 자형티=Δ티−감마(γ)(에스티+1)+V(에스티)
대리자 A ^ 그 A_tㅏ^티 표현
A^t = − V(st) + rt + γrt + 1 + γ2rt + 2 + ⋯ + γT − trT − 2 + γT − t + 1rT − 1 + γT − tV(sT) = − V(st) + rt + γrt + 1 + ⋯ + γT − t + 1rT − 1 + γT − tV(sT) = − V(st) + Δt − γV(st+1) + V(st) + γ(Δt+1 − γV(st+2) + V(st+1)) + γ2(Δt+2 − γV(st+3) + V(st+1)) + ⋯ + γ T − t ( Δ T − t − γ V ( s T − t + 1 ) + V ( s T − t ) ) + γ T − t + 1 ( Δ T − 1 − γ V ( s T ) + V ( s T − 1 ) ) + γ T − t V ( s T ) = Δ t + γ Δ t + 1 + γ 2 Δ t + 2 + ⋯ + γ T − t Δ T − t + γ T − t + 1 Δ T − 1ˆㅏ티=−V(에스티)+아르 자형티+γ아르 자형티+1+γ2아르 자형티+2+⋯+γ티−티아르 자형티−2+γ티−티+1아르 자형티−1+γ티−티V(에스티)=−V(에스티)+아르 자형티+γ아르 자형티+1+⋯+γ티−티+1아르 자형티−1+γ티−티V(에스티)=−V(에스티)+ Δ티−γV(에스티+1)+V(에스티)+ γ(Δ티+1−γV(에스티+2)+V(에스티+1))+ γ2(Δ티+2−γV(에스티+3)+V(에스티+1))+ ⋯+ γ티−티(Δ티−티−γV(에스티−티+1)+V(에스티−티))+ γ티−티+1(Δ티−1−γV(에스티)+V(에스티−1))+ γ티−티V(에스티)=Δ티+γΔ티+1+γ2Δ티+2+⋯+γ티−티Δ티−티+γ티−티+1Δ티−1 ㅏ^티=−V(에스티)+아르 자형티+γ아르 자형티+1+γ2아르 자형티+2+⋯+γ티−티아르 자형티−2+γ티−티+1아르 자형티−1+γ티−티V(에스티)=−V(에스티)+아르 자형티+γ아르 자형티+1+⋯+γ티−티+1아르 자형티−1+γ티−티V(에스티)=−V(에스티)+ Δ티−감마(γ)(에스티+1)+V(에스티)+ γ(Δ티+1−감마(γ)(에스티+2)+V(에스티+1))+ γ2(Δ티+2−감마(γ)(에스티+3)+V(에스티+1))+ ⋯+ γ티−티(Δ티−티−감마(γ)(에스티−티+1)+V(에스티−티))+ γ티−티+1(Δ티−1−감마(γ)(에스티)+V(에스티−1))+ γ티−티V(에스티)=Δ티+γΔ티+1+γ2Δ티+2+⋯+γ티−티Δ티−티+γ티−티+1Δ티−1
클리핑은 정책의 급격한 변화에 대한 인센티브를 제거하여 정규화 역할을 합니다.초매개변수 ϵ 엡실론ϵ 새로운 전략과 기존 전략의 거리에 해당。
이러한 종류의 클리핑으로 인해 결국 이전 전략과는 거리가 먼 새로운 전략이 생성될 가능성은 여전히 있습니다. 여기서는 특히 간단한 방법을 사용합니다.일찍 멈춰라 . 이전 정책과 새 정책의 평균 KL 차이가 임계값을 초과하면 그라디언트 단계 실행을 중지합니다.
PPO 목적 함수 단순 파생 링크
PPO-Clip의 목적 함수는 다음과 같습니다.
~
L θ k CLIP ( θ ) = E s , a ∼ θ k [ min ( π θ ( a ∣ s ) π θ k ( a ∣ s ) A θ k ( s , a ) , 클립 ( π θ ( a ∣ s ) π θ k ( a ∣ s ) , 1 − ϵ , 1 + ϵ ) A θ k ( s , a ) ) ] L^{rm CLIP}_{세타_k}(세타) = 아래집합{s, asim세타_k}{rm E}Bigg[minBigg(frac{pi_theta(a|s)}{pi_{세타_k}(a|s)}A^{세타_k}(s, a), {rm 클립}Big(frac{pi_theta(a|s)}{pi_{theta_k}(a|s)},1-엡실론, 1+엡실론Big)A^{theta_k}(s, a)Bigg)Bigg]엘θ케이클립(θ)=에스,ㅏ∼θ케이이자형[분(πθ케이(ㅏ∣에스)πθ(ㅏ∣에스)ㅏθ케이(에스,ㅏ),클립(πθ케이(ㅏ∣에스)πθ(ㅏ∣에스),1−ϵ,1+ϵ)ㅏθ케이(에스,ㅏ))]
~
$underset{s, asimtheta_k}{rm E}$
E s , a ∼ θ k ~~~언더셋{s, asimtheta_k}{rm E} 에스,ㅏ∼θ케이이자형
~
아니요. kk케이 반복을 위한 전략 매개변수 θ k 세타_kθ케이, ϵ 엡실론ϵ 작은 하이퍼파라미터입니다.
설정 ϵ ∈ ( 0 , 1 ) 엡실론(0,1)ϵ∈(0,1), 정의
F(r, A, ϵ) ≐ min(rA, 클립(r, 1-ϵ, 1+ϵ)A) F(r, A, 엡실론)doteqminBigg(rA,{rm 클립}(r, 1-엡실론, 1+엡실론)ABigg)에프(아르 자형,ㅏ,ϵ)≐분(아르 자형ㅏ,클립(아르 자형,1−ϵ,1+ϵ)ㅏ)
언제 A ≥ 0 연령대ㅏ≥0
F ( r , A , ϵ ) = 최소 ( r A , 클립 ( r , 1 − ϵ , 1 + ϵ ) A ) = A 최소 ( r , 클립 ( r , 1 − ϵ , 1 + ϵ ) ) = A min ( r , { 1 + ϵ r ≥ 1 + ϵ rr ∈ ( 1 − ϵ , 1 + ϵ ) 1 − ϵ r ≤ 1 − ϵ } ) = A { min ( r , 1 + ϵ ) r ≥ 1 + ϵ min ( r , r ) r ∈ ( 1 − ϵ , 1 + ϵ ) min ( r , 1 − ϵ ) r ≤ 1 − ϵ } = A { 1 + ϵ r ≥ 1 + ϵ rr ∈ ( 1 − ϵ , 1 + ϵ ) rr ≤ 1 − ϵ } 오른쪽의 범위에 따르면 = A min ( r , 1 + ϵ ) = min ( r A , ( 1 + ϵ ) A )시작{정렬됨}F(r,A,엡실론)&=minBigg(rA,{rm 클립}(r,1-엡실론,1+엡실론)ABigg)\ &=AminBigg(r,{rm 클립}(r,1-엡실론,1+엡실론)Bigg)\ &=AminBigg(r,left{시작{정렬됨}&1+엡실론~~&rgeq1+엡실론\ &r &rin(1-엡실론,1+엡실론)\ &1-엡실론 &rleq1-엡실론\ 끝{정렬됨}오른쪽}Bigg)\ &=왼쪽{분오른쪽}\ &=왼쪽{right}~~~~~textcolor{blue}{오른쪽 범위에 따라}\ &=Amin(r, 1+epsilon)\ &=minBigg(rA, (1+epsilon)ABigg) end{aligned} 에프(아르 자형,ㅏ,ϵ)=분(아르 자형ㅏ,클립(아르 자형,1−ϵ,1+ϵ)ㅏ)=ㅏ분(아르 자형,클립(아르 자형,1−ϵ,1+ϵ))=ㅏ분(아르 자형,⎩ ⎨ ⎧1+ϵ 아르 자형1−ϵ아르 자형≥1+ϵ아르 자형∈(1−ϵ,1+ϵ)아르 자형≤1−ϵ⎭ ⎬ ⎫)=ㅏ⎩ ⎨ ⎧분(아르 자형,1+ϵ) 분(아르 자형,아르 자형)분(아르 자형,1−ϵ)아르 자형≥1+ϵ아르 자형∈(1−ϵ,1+ϵ)아르 자형≤1−ϵ⎭ ⎬ ⎫=ㅏ⎩ ⎨ ⎧1+ϵ 아르 자형아르 자형아르 자형≥1+ϵ아르 자형∈(1−ϵ,1+ϵ)아르 자형≤1−ϵ⎭ ⎬ ⎫ 오른쪽 범위에 따라=ㅏ분(아르 자형,1+ϵ)=분(아르 자형ㅏ,(1+ϵ)ㅏ)
~
언제 A < 0 A < 0ㅏ<0
F ( r , A , ϵ ) = 최소 ( r A , 클립 ( r , 1 − ϵ , 1 + ϵ ) A ) = A 최대 ( r , 클립 ( r , 1 − ϵ , 1 + ϵ ) ) = A 최대 ( r , { 1 + ϵ r ≥ 1 + ϵ rr ∈ ( 1 − ϵ , 1 + ϵ ) 1 − ϵ r ≤ 1 − ϵ } ) = A { 최대 ( r , 1 + ϵ ) r ≥ 1 + ϵ 최대 ( r , r ) r ∈ ( 1 − ϵ , 1 + ϵ ) 최대 ( r , 1 − ϵ ) r ≤ 1 − ϵ } = A { r r ≥ 1 + ϵ rr ∈ ( 1 − ϵ , 1 + ϵ ) 1 − ϵ r ≤ 1 − ϵ } 오른쪽의 범위에 따르면 = A max ( r , 1 − ϵ ) = min ( r A , ( 1 − ϵ ) A )오른쪽}Bigg)\ &=왼쪽{오른쪽}\ &=왼쪽{right}~~~~~textcolor{blue}{오른쪽 범위에 따름}\ &=Amax(r, 1-epsilon)\ &=textcolor{blue}{min}Bigg(rA,(1-epsilon) ABigg) 종료{aligned} 에프(아르 자형,ㅏ,ϵ)=분(아르 자형ㅏ,클립(아르 자형,1−ϵ,1+ϵ)ㅏ)=ㅏ중ㅏ엑스(아르 자형,클립(아르 자형,1−ϵ,1+ϵ))=ㅏ최대(아르 자형,⎩ ⎨ ⎧1+ϵ 아르 자형1−ϵ아르 자형≥1+ϵ아르 자형∈(1−ϵ,1+ϵ)아르 자형≤1−ϵ⎭ ⎬ ⎫)=ㅏ⎩ ⎨ ⎧최대(아르 자형,1+ϵ) 최대(아르 자형,아르 자형)최대(아르 자형,1−ϵ)아르 자형≥1+ϵ아르 자형∈(1−ϵ,1+ϵ)아르 자형≤1−ϵ⎭ ⎬ ⎫=ㅏ⎩ ⎨ ⎧아르 자형 아르 자형1−ϵ아르 자형≥1+ϵ아르 자형∈(1−ϵ,1+ϵ)아르 자형≤1−ϵ⎭ ⎬ ⎫ 오른쪽 범위에 따라=ㅏ최대(아르 자형,1−ϵ)=중나N(아르 자형ㅏ,(1−ϵ)ㅏ)
~
요약하자면: 정의 가능 g ( ϵ , A ) g ( 엡실론 , A)g(ϵ,ㅏ)
g(ϵ, A) = {( 1 + ϵ ) A A ≥ 0 ( 1 − ϵ ) AA < 0 g(엡실론, A)=왼쪽{오른쪽. g(ϵ,ㅏ)={(1+ϵ)ㅏ (1−ϵ)ㅏㅏ≥0ㅏ<0
이 정의가 새로운 전략이 기존 전략에서 너무 멀리 벗어나는 것을 방지하는 이유는 무엇입니까?
효과적인 중요도 샘플링 방법에는 새로운 전략이 필요합니다 π θ ( a ∣ s ) 파이_세타(a|s)πθ(ㅏ∣에스) 그리고 오래된 전략 π θ k ( a ∣ s ) 파이_세타_k(a|s)πθ케이(ㅏ∣에스) 두 분포의 차이가 너무 클 수는 없습니다.
1. 장점이 긍정적인 경우
L(s, a, θk, θ) = min(πθ(a∣s) πθk(a∣s) , 1 + ϵ) A πθk(s, a) L(s, a, 세타_k, 세타) = minBigg(frac{pi_theta(a|s)}{pi_{theta_k}(a|s)}, 1+epsilonBigg)A^{pi_{theta_k}}(s, a)엘(에스,ㅏ,θ케이,θ)=분(πθ케이(ㅏ∣에스)πθ(ㅏ∣에스),1+ϵ)ㅏπθ케이(에스,ㅏ)
장점 기능: 더 많은 보상을 받는 특정 상태-동작 쌍을 찾습니다. -> 상태-동작 쌍의 가중치를 높입니다.
상태-행동 쌍일 때 ( s , a ) (s , a)(에스,ㅏ) 긍정적이라면 그 행동이 아아ㅏ 실행될 가능성이 더 높습니다. 즉, π θ ( a ∣ s ) 파이_세타(a|s)πθ(ㅏ∣에스) 증가하면 목표도 증가합니다.
이 항목의 min은 목적 함수가 특정 값으로만 증가하도록 제한합니다.
한 번 π θ ( a ∣ s ) > ( 1 + ϵ ) π θ k ( a ∣ s ) 파이_세타(a|s) > (1+엡실론)파이_{세타_k}(a|s)πθ(ㅏ∣에스)>(1+ϵ)πθ케이(ㅏ∣에스), 최소 트리거, 이 항목의 값을 다음으로 제한합니다. ( 1 + ϵ ) π θ k ( a ∣ s ) (1 + 엡실론) 파이_{세타_k}(a|s)(1+ϵ)πθ케이(ㅏ∣에스)。
새로운 정책은 기존 정책에서 크게 벗어나는 데 아무런 이점이 없습니다.
새로운 전략은 기존 전략에서 벗어나는 데 도움이 되지 않습니다.
2. 장점이 부정적인 경우
L(s, a, θk, θ) = max(πθ(a∣s) πθk(a∣s) , 1−ϵ) A πθk(s, a) L(s, a,세타_k, 세타)=maxBigg(frac{pi_theta(a|s)}{pi_{theta_k}(a|s)}, 1-엡실론Bigg)A^{pi_{theta_k}}(s, a)엘(에스,ㅏ,θ케이,θ)=최대(πθ케이(ㅏ∣에스)πθ(ㅏ∣에스),1−ϵ)ㅏπθ케이(에스,ㅏ)
상태-행동 쌍일 때 ( s , a ) (s , a)(에스,ㅏ) 장점이 부정적이면 행동이 아아ㅏ 그럴 가능성은 훨씬 적습니다. 즉, π θ ( a ∣ s ) π_세타(a|s)πθ(ㅏ∣에스) 감소하면 목적함수가 증가합니다. 그러나 이 항의 최대값은 목적 함수를 얼마나 늘릴 수 있는지를 제한합니다.
한 번 π θ ( a ∣ s ) < ( 1 − ϵ ) π θ k ( a ∣ s ) 파이_세타(a|s)<(1-엡실론)파이_{세타_k}(a|s)πθ(ㅏ∣에스)<(1−ϵ)πθ케이(ㅏ∣에스), 최대 트리거, 이 항목의 값을 다음으로 제한합니다. ( 1 − ϵ ) π θ k ( a ∣ s ) (1-엡실론)pi_{세타_k}(a|s)(1−ϵ)πθ케이(ㅏ∣에스)。
다시 말하지만, 새로운 정책은 이전 정책에서 멀리 떨어져서 이익을 얻지 못합니다.
새로운 전략은 기존 전략에서 벗어나는 데 도움이 되지 않습니다.
DDPG는 때때로 뛰어난 성능을 달성할 수 있지만 하이퍼파라미터 및 기타 유형의 튜닝과 관련하여 불안정한 경우가 많습니다.
일반적인 DDPG 실패 모드는 학습된 Q 함수가 Q 값을 상당히 과대평가하기 시작하고, 이로 인해 Q 함수의 오류를 이용하기 때문에 정책이 중단되는 것입니다.
TD3(Twin Delayed DDPG)는 세 가지 핵심 기술을 도입하여 이 문제를 해결하는 알고리즘입니다.
1、잘린 이중 Q-학습。
2、정책 업데이트 지연。
3. 목표 전략 평활화.
TD3은 정책 외 알고리즘입니다.마디 없는행동 공간의 환경.
알고리즘: TD3
임의의 매개변수 사용 θ 1 , θ 2 , ϕ 세타_1, 세타_2, 파이θ1,θ2,ϕ 비평가 네트워크 초기화 Q_{세타_1}, Q_{세타_2}큐θ1,큐θ2및 배우 네트워크 π ϕ 파이_파이πϕ
대상 네트워크 초기화 θ 1 ′ ← θ 1 , θ 2 ′ ← θ 2 , ϕ ′ ← ϕ 세타_1^프라임왼쪽화살표세타_1, 세타_2^프라임왼쪽화살표세타_2, 파이^프라임왼쪽화살표 파이θ1′←θ1,θ2′←θ2,ϕ′←ϕ
재생 버퍼 세트 초기화 비칼 비비
t = 1 ~ T에 대해 {bf} ~t=1 ~{bf ~ ~T에 대해~을 위한 티=1 에게 티 :
~~~~~~ 탐색 소음이 있는 작업 선택 a ∼ π ϕ ( s ) + ϵ , ϵ ∼ N ( 0 , σ ) asimpi_phi(s)+epsilon,~~epsilonsim {cal N}(0, sigma)ㅏ∼πϕ(에스)+ϵ, ϵ∼N(0,σ), 관찰 보상 르르르아르 자형 그리고 새로운 상태 s ′ s^프라임에스′
~~~~~~ 전환 튜플 (s, a, r, s′)(s, a, r, s^프라임)(에스,ㅏ,아르 자형,에스′) 입금 비칼 비비 가운데
~~~~~~ ~에서 비칼 비비 소규모 배치 샘플링 네.엔.N 전환 (s, a, r, s′)(s, a, r, s^프라임)(에스,ㅏ,아르 자형,에스′)
a ~ ← π ϕ ′ ( s ′ ) + ϵ , ϵ ∼ 클립 ( N ( 0 , σ ~ ) , − c , c ) ~~~~~~오른쪽 왼쪽 화살표 pi_{phi^prime}(s^prime)+epsilon,~~epsilonsim{rm 클립}({cal N}(0,오른쪽 왼쪽 시그마),-c,c) ㅏ ←πϕ′(에스′)+ϵ, ϵ∼클립(N(0,σ ),−씨,씨)
y ← r + γ 최소 i = 1 , 2 Q θ i ′ ( s ′ , a ~ ) ~~~~~~yleftarrow r+감마 최소한계_{i=1,2}Q_{세타_i^프라임}(s^프라임,와이드틸데 a) 와이←아르 자형+γ나=1,2분큐θ나′(에스′,ㅏ )
~~~~~~ 업데이트비평가 θ i ← 인수 최소 θ i N − 1 ∑ ( y − Q θ i ( s , a ) ) 2 세타_i왼쪽화살표인수최소한계_{세타_i}N^{-1}합계(y-Q_{세타_i}(s, a))^2θ나←아르gθ나분N−1∑(와이−큐θ나(에스,ㅏ))2
~~~~~~ 만약 t % d {bf if}~t~ % ~d만약에 티 % 디:
~~~~~~~~~~~ 결정적 정책 변화를 통한 업데이트 ϕ 파이ϕ
∇ ϕ J ( ϕ ) = N − 1 ∑ ∇ a Q θ 1 ( s , a ) ∣ a = π ϕ ( s ) ∇ ϕ π ϕ ( s ) ~~~~~~~~~~~~~~~~~~나블라_파이 J(파이) = N^{-1}합나블라_aQ_{세타_1}(s, a)|_{a=파이_파이(s)}나블라_파이_파이(s) ∇ϕ제이(ϕ)=N−1∑∇ㅏ큐θ1(에스,ㅏ)∣ㅏ=πϕ(에스)∇ϕπϕ(에스)
~~~~~~~~~~~ 대상 네트워크 업데이트:
θ i ′ ← τ θ i + ( 1 − τ ) θ i ′ ~~~~~~~~~~~~~~~~~세타_i^프라임왼쪽 화살표타우세타_i+(1-타우)세타_i^프라임~~~~~ θ나′←τθ나+(1−τ)θ나′ τ 타우τ: 목표 업데이트 속도
ϕ ′ ← τ ϕ + ( 1 − τ ) ϕ ′ ~~~~~~~~~~~~~~~~~phi^primeleftarrowtauphi+(1-tau)phi^prime ϕ′←τϕ+(1−τ)ϕ′
종료 if ~~~~~~{bf 종료 ~if} 끝 만약에
{bf end ~for}에 대한 끝끝 ~을 위한
정책의 엔트로피를 최대화하여 정책을 더욱 강력하게 만듭니다.
결정론적 전략 이는 동일한 상태가 주어지면 항상 동일한 작업을 선택한다는 의미입니다.
무작위성 전략 이는 주어진 상태에서 선택할 수 있는 가능한 작업이 많이 있음을 의미합니다.
결정론적 전략 | 무작위성 전략 | |
---|---|---|
정의 | 동일한 상태, 동일한 작업 수행 | 같은 상태,다른 작업을 수행할 수 있음 |
이점 | 안정적이고 반복 가능 | 로컬 최적 솔루션에 빠지지 않고 글로벌 검색 기능 향상 |
결점 | 탐색성이 부족하고 상대에게 잡히기 쉽습니다. | 이로 인해 전략이 느리게 수렴되어 효율성과 성능에 영향을 미칠 수 있습니다. |
실제 적용에서는 조건이 허락한다면 우리는사용해 보세요무작위성 전략, A2C, PPO 등과 같은 것이 더 유연하고, 더 강력하고, 더 안정적이기 때문입니다.
최대 엔트로피 강화 학습은 현재 성숙한 무작위성 전략, 즉 AC와 같은 알고리즘이 있음에도 불구하고 여전히 최적의 무작위성을 달성하지 못했다고 믿습니다.그러므로, 그것은정보 엔트로피개념, 에서정책의 엔트로피를 최대화하면서 누적 보상을 최대화합니다., 전략을 더욱 강력하게 만들고 최적의 무작위성 전략을 달성합니다.
——————————————————
OpenAI 문서_SAC 인터페이스 링크
~
소프트 액터-비평가: 확률적 액터를 사용한 오프 정책 최대 엔트로피 딥 강화 학습, Haarnoja et al, 201808 ICML 2018
소프트 액터-크리티크 알고리즘 및 응용 프로그램, Haarnoja et al, 201901
심층 강화 학습을 통한 걷기 학습, Haarnoja et al, 201906 RSS2019
SAC(Soft Actor Critic)는 정책을 벗어난 방식으로 무작위 전략을 최적화합니다.
DDPG + 확률론적 전략 최적화
TD3(동시에 출시됨)의 직접적인 후속 제품은 아닙니다.
여기에는 잘린 이중 Q 트릭이 포함되어 있으며 SAC 전략의 본질적인 무작위성으로 인해 궁극적으로 다음과 같은 이점도 있습니다.목표 정책 평활화。
SAC의 핵심 기능은 엔트로피 정규화 엔트로피 정규화。
정책은 예상 보상과 엔트로피 사이의 균형을 최대화하도록 훈련되었습니다.엔트로피는 정책의 무작위성을 측정한 것입니다.。
이는 탐사와 활용 사이의 균형과 밀접한 관련이 있습니다. 엔트로피의 증가는 다음과 같은 결과를 가져옵니다.더 자세히 살펴보세요,괜찮아후속 학습 가속화 .괜찮아요정책이 잘못된 로컬 최적으로 조기에 수렴되는 것을 방지합니다.。
연속행위공간과 이산행위공간 모두에서 사용될 수 있다.
존재하다 엔트로피 정규화된 강화 학습, 에이전트는 다음을 획득하고이 시점의 정책 엔트로피비례 보상.
현재 RL 문제는 다음과 같이 설명됩니다.
π ∗ = arg max π E τ ∼ π [ ∑ t = 0 ∞ γ t ( R ( st , at , st + 1 ) + α H ( π ( ⋅ ∣ st ) ) ) ] pi^*=argmaxlimits_pi underset{tausimpi}{rm E}Big[sumlimits_{t=0}^inftygamma^tBig(R(s_t,a_t,s_{t+1})textcolor{blue}{+alpha H(pi(·|s_t))}Big)Big]π∗=아르gπ최대τ∼π이자형[티=0∑∞γ티(아르 자형(에스티,ㅏ티,에스티+1)+α시간(π(⋅∣에스티)))]
~에 α > 0 알파 > 0α>0 트레이드오프 계수입니다.
각 시간 단계의 엔트로피 보상을 포함한 상태값 함수 Vπ V^파이Vπ 을 위한:
V π ( s ) = E τ ∼ π [ ∑ t = 0 ∞ γ t ( R ( st , at , st + 1 ) + α H ( π ( ⋅ ∣ st ) ) ) ∣ s 0 = s ] V^pi(s) = underset{tausimpi}{rm E}Big[sumlimits_{t=0}^inftygamma^tBig(R(s_t,a_t,s_{t+1})+알파 H(pi(·|s_t))Big)Big|s_0=sBig]Vπ(에스)=τ∼π이자형[티=0∑∞γ티(아르 자형(에스티,ㅏ티,에스티+1)+α시간(π(⋅∣에스티))) 에스0=에스]
첫 번째 단계를 제외한 모든 시간 단계에 대한 엔트로피 보상을 포함하는 행동 값 함수 QπQ^파이큐π:
Q π ( s , a ) = E τ ∼ π [ ∑ t = 0 ∞ γ t ( R ( st , at , st + 1 ) + α ∑ t = 1 ∞ H ( π ( ⋅ ∣ st ) ) ) ∣ s 0 = s , a 0 = a ] Q^pi(s, a) = underset {tausimpi}{rm E}Big[sumlimits_{t=0}^inftygamma^tBig(R(s_t,a_t,s_{t+1})+alpha sumlimits_{t=1}^inftyH(pi(·|s_t))Big)Big|s_0=s,a_0=aBig]큐π(에스,ㅏ)=τ∼π이자형[티=0∑∞γ티(아르 자형(에스티,ㅏ티,에스티+1)+α티=1∑∞시간(π(⋅∣에스티))) 에스0=에스,ㅏ0=ㅏ]
Vπ V^파이Vπ 그리고 QπQ^파이큐π 사이의 관계는 다음과 같습니다.
V π ( s ) = E a ∼ π [ Q π ( s , a ) ] + α H ( π ( ⋅ ∣ s ) ) V^pi(s) = underset{asimpi}{rm E}[Q^pi(s, a)] + 알파 H(pi(·|s))Vπ(에스)=ㅏ∼π이자형[큐π(에스,ㅏ)]+α시간(π(⋅∣에스))
~에 대한 QπQ^파이큐π 벨만 공식은 다음과 같습니다.
Qπ(s, a) = Es′∼Pa′∼π[R(s, a, s′) + γ(Qπ(s′, a′) + αH(π(⋅∣s′)))] = Es′∼P[R(s, a, s′) + γVπ(s′)] 큐π(에스,ㅏ)=ㅏ′∼π에스′∼피이자형[아르 자형(에스,ㅏ,에스′)+γ(큐π(에스′,ㅏ′)+α시간(π(⋅∣에스′)))]=에스′∼피이자형[아르 자형(에스,ㅏ,에스′)+γVπ(에스′)]
SAC는 동시에 정책을 학습합니다. π θ π_세타πθ 그리고 두 큐큐큐 기능 Q ϕ 1 , Q ϕ 2 Q_{phi_1}, Q_{phi_2}큐ϕ1,큐ϕ2。
현재 표준 SAC에는 두 가지 변형이 있습니다. 하나는 고정된 SAC를 사용합니다.엔트로피 정규화 계수 알파 알파α, 훈련 중에 변경하여 또 다른 알파 알파α 엔트로피 제약을 적용합니다.
OpenAI의 문서에서는 엔트로피 정규화 계수가 고정된 버전을 사용하지만 실제로는 이를 선호하는 경우가 많습니다.엔트로피 제약변종.
아래 그림과 같이, 알파 알파α 고정 버전에서는 확실한 장점이 있는 마지막 그림을 제외하고 나머지는 기본적으로 다음과 같은 약간의 장점만 있습니다. 알파 알파α 학습 버전은 동일하게 유지됩니다. 알파 알파α 학습 버전의 장점이 있는 중간 두 그림이 더 분명합니다.
SAC
대TD3
:
~
같은 점:
1. 두 Q 함수는 단일 공유 목표로의 회귀를 통해 MSBE(Mean Squared Bellman Error)를 최소화하여 학습됩니다.
2. 목표 Q-네트워크를 사용하여 공유 목표를 계산하고, 훈련 프로세스 중에 Q-네트워크 매개변수에 대한 폴리악 평균화를 수행하여 목표 Q-네트워크를 얻습니다.
3. 공유 대상은 잘린 이중 Q 기술을 사용합니다.
~
차이점:
1. SAC에는 엔트로피 정규화 용어가 포함되어 있습니다.
2. SAC 목표에 사용되는 다음 상태 작업은 다음에서 비롯됩니다.현재 전략, 목표 전략보다는.
3. 스무딩을 위한 명확한 목표 전략이 없습니다. TD3는 다음 상태로 이동하여 결정론적 정책을 학습합니다.무작위 노이즈 추가 부드러움을 달성하기 위해. SAC는 무작위 정책을 훈련하며 무작위성으로 인한 노이즈는 유사한 효과를 달성하기에 충분합니다.
알고리즘: 소프트 배우 평론가 SAC
입력하다: θ 1 , θ 2 , ϕ 세타_1, 세타_2, 파이~~~~~θ1,θ2,ϕ 초기화 매개변수
매개변수 초기화:
~~~~~~ 대상 네트워크 가중치를 초기화합니다. θ ˉ 1 ← θ 1 , θ ˉ 2 ← θ 2 막대 theta_1leftarrowtheta_1, 막대 theta_2leftarrowtheta_2θˉ1←θ1,θˉ2←θ2
~~~~~~ 재생 풀은 비어 있도록 초기화됩니다. D ← ∅ {cal D}왼쪽 화살표비어있음디←∅
{남자친구를 위한}~을 위한 각 반복 하다 {남자친구가 하다}하다 :
~~~~~~ {남자친구를 위한}~을 위한 각 환경 단계 하다 {남자친구가 하다}하다 :
~~~~~~~~~~~ 정책의 샘플 작업: ∼ π ϕ ( ∣ st )에서 a_tsimpi_phi(a_t|s_t)~~~~~ㅏ티∼πϕ(ㅏ티∣에스티) ▢여기 π ϕ ( ∣ st 에서 ) pi_phi(a_t|s_t)πϕ(ㅏ티∣에스티) 어떻게 정의하나요?
~~~~~~~~~~~ 환경의 샘플 전환: st + 1 ∼ p ( st + 1 ∣ st , at ) s_{t+1} 유사 p(s_{t+1}|s_t,a_t)에스티+1∼피(에스티+1∣에스티,ㅏ티)
~~~~~~~~~~~ 전환을 재생 풀에 저장합니다. D ← D ∪ { ( st , at , r ( st , at ) , st + 1 ) } {칼 D}왼쪽 화살표{칼 D}~컵~{(s_t,a_t,r(s_t,a_t),s_{t+1})}디←디 ∪ {(에스티,ㅏ티,아르 자형(에스티,ㅏ티),에스티+1)}
~~~~~~ {bf end ~for}에 대한 끝끝 ~을 위한
~~~~~~ {남자친구를 위한}~을 위한 각 그라데이션 단계 하다 {남자친구가 하다}하다 :
~~~~~~~~~~~ 고쳐 쓰다 큐큐큐 기능 매개변수: for i ∈ { 1 , 2 } iin{1,2}나∈{1,2}, θ i ← θ i − λ Q ∇ ^ θ i JQ ( θ i ) 세타_i왼쪽 화살표세타_i-람다_Qhat 나블라_{세타_i}J_Q(세타_i)~~~~~θ나←θ나−λ큐∇^θ나제이큐(θ나) ▢여기 JQ(θi)J_Q(세타_i)제이큐(θ나) 어떻게 정의하나요?
~~~~~~~~~~~ 업데이트 전략 가중치: ϕ ← ϕ − λ π ∇ ^ ϕ J π ( ϕ ) phileftarrowphi-lambda_pihat nabla_phi J_pi (phi)~~~~~ϕ←ϕ−λπ∇^ϕ제이π(ϕ) ▢여기 Jπ(ϕ)J_파이(파이)제이π(ϕ) 어떻게 정의하나요?
~~~~~~~~~~~ 온도 조정: α ← α − λ ∇ ^ α J ( α ) 알파왼쪽화살표알파-람다하트나블라_알파 J(알파)~~~~~α←α−λ∇^α제이(α) ▢여기 J(α)J(알파)제이(α) 어떻게 정의하나요?여기서 온도를 이해하는 방법은 무엇입니까?
~~~~~~~~~~~ 대상 네트워크 가중치 업데이트: i ∈ { 1 , 2 } iin{1,2}나∈{1,2}, θ ˉ i ← τ θ i − ( 1 − τ ) θ ˉ i 바 세타_i왼쪽 화살표 타우 세타_i-(1-타우)바 세타_i~~~~~θˉ나←τθ나−(1−τ)θˉ나 ▢ 이것을 이해하는 방법 τ 타우τ ? ——>목표 평활화 계수
~~~~~~ {bf end ~for}에 대한 끝끝 ~을 위한
{bf end ~for}에 대한 끝끝 ~을 위한
산출: θ 1 , θ 1 , ϕ 세타_1, 세타_1, 파이~~~~~θ1,θ1,ϕ 최적화된 매개변수
∇ ^ 모자 나블라∇^: 확률적 기울기
$emptyset$
∅ ~~~~빈 설정 ∅
심층 강화 학습을 통한 걷기 학습 버전:
~
α
α
α 엔트로피 항과 보상의 상대적 중요성을 결정하여 최적 전략의 무작위성을 제어하는 온도 매개변수입니다.
알파 알파α 대형: 탐색
알파 알파α 작은: 악용
J(α) = E at ∼ π t [ − α log π t ( at ∣ st ) − α H ˉ ] J(알파)=underset{a_tsimpi_t}{mathbb E}[-알파로그 pi_t(a_t|s_t)-알파바{cal H}]제이(α)=ㅏ티∼π티이자형[−α봐라gπ티(ㅏ티∣에스티)−α시간ˉ]