강화학습 스터디 후기


- 강화 학습은 2013년에 등장했고, 인터넷에 한글자료도 많지만 활용률은 아직 인듯.
- 에이전트(게이머), 환경(게임), 보상(점수), 과 Goal(승리), 액션(조종), 상태(게임화면)
- 도립진자와 같은 간단한 문제와 로봇제어 같이 복잡한 문제 예시
- MDP(마르코프 결정 과정)과 마르코프 체인, 마르코프 프로퍼티 이야기
- 동전 던지기와 로또 복권 그리고 게임 은 마르코프 프로세스 인가?
- MDP는 누적 할인 보상을 최대로 갖는 정책을 찾는것.
- 그리드월드에서 최단경로를 찾는 MDP 예시
- 최적 정책을 찾을때 변수들의 랜덤함을 다루기 위해 기대값 개념 도입. 확률과 누적보상과 전이확률의 멱급수
- 현상태의 가치함수와 액션의 가치를 표현하는 큐함수의 도입.
- 정책변수 대신 최적  큐함수를 수치해석적으로 풀기위한 벨만방정식으로의 변형.
- 재귀적인 구조를 가지는 벨만 방정식(동적 계획법)
- 벨만 방정식을 환경을 따르는 상태를 모델링 할수 있을때만 가능하다고 ..
- 벨만 재귀 구조를 신경망으로 반복해 상태가 입력되면 액션을 출력하도록 근사함수를 만드는게 DQN 학습이다.
- DQN에서 학습을 통해 하이퍼파라미터들은 게임상태들에 대한 최적의 전이확률과 보상들을 모델링하게 된다. 
- 스퀘어 로쓰함수와 큐함수 벨만방정식을 통한 그레디언트 업데이트
- 4프레임 게임 화면을 한 상태로 만들어주는 전처리함수 파이, 그리고 아타리게임 DQN의 CNN구조
- 데이타 효율성을 이끌어내는 컴퓨팅에서 중요한 리플레이 메모리의 도입과 경험 리플레이 기법의 도입.
- 전체적인 DQN 의 Pseudo Code 구조 설명.
- DQN은 Police-Free 한 수치적 알고리즘인 반면 Policy Gradient 는 정책을 모델링하는 해석적 방법이다.
- 계란을 쉽게 손으로 쥐는 인간 손의 위대함~
- 정책의 가치함수 J(쎄타)의 도입과 Gradient Ascent
- 강화학습은 Policy Gradient 해석 알고리즘에 Monte Carlo 수치 알고리즘을 합친것이다. 
- 상태 변수대신에 궤적변수 타우의 도입. 상태에 대한 보상 대신 궤적에대한 보상으로 전환.
- 트릭을 써서 몬테카를로 샘플링으로 팔러시 그래디언트를 기대값식으로 근사가 가능함 유도 
- 궤적들에 대한 보상을 배분하는 방법의 어려움 대두:  High Variance 문제.
- 분산을 줄이기 위한 다양한 방법들 등장. 그중 Baseline 방법은 레귤러라이제이션 개념과 유사하다. 
- 분산을 줄이기위한 또 다른 방법,  Happiness = Q(s, a) - V(s)
- 해피니스대신  advantage function을 도입한  Actor-Critic 알고리즘 
- 메모리 먹고 느린 리플레이 메모리를 없애고 경험리플레이를 수많은 에이전트에 나눠서 비동기로 병렬처리하는 A3C 알고리즘... 실시간 학습도 가능하다고.
- 이미지분류도 가능하다는 RAM(리커런트 어텐션 모델) 소개. 인간의 눈동자 움직임 모방. 데이타 효율성을 높였다고
- 디테일한 구조나 고해상도 이미지의 분류 나 옵젝트 디텍션도 가능하다고..  RAM=  RNN+RL+지도학습
- 기존의 어텐션 모델과 리커런트 어텐션 모델의 차이점들 ..
- 다시 알파고 이야기, 알파고= 지도학습과 강화학습의 만남, 알파고= 몬테카를로 트리써치와 딥강화학습(Policy Gradient)의 만남.
- DQN은 복불복, 아타리게임중 35% 정도만 성공, Policy Gradient가 대세, 그러나 궤적 샘플이 많이 필요함.

이상 입니다.

댓글

  1. 데이타 효율석, 숲을보고 디테일만 보기, 배우와 비평가, 자신의 수학업적을 숨겨야 했던 벨만, 반복연산과 동적 프로그래밍, 피보나치 수열과 벨만, MDP를 만족하지 않는 문제도 강화학습으로 해결이 가능하다고 ..

    답글삭제

댓글 쓰기

이 블로그의 인기 게시물

파이썬으로 Homomorphic Filtering 하기

파이썬으로 2D FFT/iFFT 하기: numpy 버전