개별 : 그리드 기반 게임처럼 단순화 된 방, 밥의 움직임과 방 변형을 제한합니다.
연속 :
실제 방은 가구 배열과 밥의 행동에 거의 영향을 미치는 가능성을 제공합니다.
우리의 방 예제는 정적 환경이다 (가구는 고정되어 있음). A
Dynamic
환경은 슈퍼 마리오 수준과 마찬가지로 시간이 지남에 따라 변하고 학습 복잡성을 증가시킵니다.
<:> 행동 및 상태 : 가능성 정의
상태 공간 는 가능한 모든 에이전트 환경 구성을 포함합니다. 크기는 환경 유형에 따라 다릅니다
유한 : 개별 환경에는 제한된 수의 상태가 있습니다 (예 : 보드 게임).
Infinite :
연속 환경에는 무한 상태 공간이 있습니다 (예 : 로봇, 실제 시나리오).
액션 공간
는 가능한 모든 에이전트 조치를 나타냅니다. 다시, 크기는 환경에 따라 다릅니다
이산 : 제한된 조치 (예 : 위, 아래, 왼쪽, 오른쪽)
연속 : 더 넓은 범위의 행동 (예 : 모든 방향, 점프).
각 동작은 환경을 새로운 상태로 전환합니다
에이전트의 학습 여정을 측정하십시오. 각 단계에는 행동이 포함되어 새로운 상태와 보상이 발생합니다.
an 에피소드 는 기본 상태에서 시작하여 목표가 달성되거나 에이전트가 실패 할 때 종료되는 일련의 시간 단계로 구성됩니다.
탐사 vs. 착취 : 행위 균형
에이전트는
탐사 (새로운 행동을 시도) 및 exploitation (알려진 최상의 행동 사용)의 균형을 맞춰야합니다. 전략에는 다음이 포함됩니다
epsilon-greedy :
확률을 사용한 무작위 탐사 (Epsilon); 그렇지 않으면, 가장 잘 알려진 행동을 이용하십시오.
볼츠 만 탐색 :
예상되는 보상으로 행동을 확률 적으로 선호합니다
강화 학습 알고리즘 : 모델 기반 대 모델 프리
rl 알고리즘은 에이전트의 의사 결정을 안내합니다. 두 가지 주요 범주가 존재합니다
모델 기반 rl
에이전트는 행동을 계획하기 위해 환경의 내부 모델을 구축합니다. 이것은 샘플 효율적이지만 복잡한 환경에서는 어려운 일입니다. 예를 들어 모델 기반 및 모델없는 학습을 결합한 Dyna-Q입니다
모델이없는 rl
에이전트는 명시 적 모델없이 경험에서 직접 배웁니다. 이것은 더 간단하지만 샘플 효율이 적습니다. 예제는 다음과 같습니다.
Q- 러닝 :
는 상태 쌍에 대한 Q- 값 (예상 미래 보상)을 배웁니다
Sarsa :
Q- 러닝과 유사하지만 실제 다음 조치를 기반으로 값을 업데이트합니다.
정책 그라디언트 방법 : 정책 매핑 상태를 행동에 직접 배우십시오.
Deep Q-Networks (DQN) :
는 고차원 상태 공간을위한 Q- 러닝과 깊은 신경 네트워크와 결합합니다.
알고리즘 선택은 환경 복잡성 및 리소스 가용성에 따라 다릅니다
Q- 러닝 : 상세한 모양
Q- 러닝은 모델이없는 알고리즘 교육 에이전트 최적 전략입니다. Q- 테이블은 각 상태 쌍의 Q- 값을 저장합니다. 에이전트는 탐사 및 착취의 균형을 맞추고 엡실론-그레디 정책을 기반으로 행동을 선택합니다. Q- 값은 현재 Q- 값, 보상 및 다음 상태의 최대 Q- 값을 통합 한 공식을 사용하여 업데이트됩니다. 감마 (할인 계수) 및 알파 (학습 속도)와 같은 매개 변수는 학습 과정을 제어합니다. 체육관이있는 파이썬에서의 강화 학습
체육관은 RL 실험을위한 다양한 환경을 제공합니다. 다음 코드 스 니펫은 브레이크 아웃 환경과의 상호 작용 루프를 보여줍니다.
이 코드는 에이전트의 동작을 시각화하는 GIF를 생성합니다. 학습 알고리즘이 없으면 동작이 무작위입니다.
결론
강화 학습은 광범위한 응용 프로그램을 갖춘 강력한 기술입니다. 이 튜토리얼은 기본 개념을 다루었 고 추가 탐색을위한 출발점을 제공했습니다. 지속적인 학습을 위해 원본 기사에 추가 리소스가 나열되어 있습니다.
위 내용은 강화 학습 : 파이썬 예제의 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!