SlideShare ist ein Scribd-Unternehmen logo
1 von 39
아메리카노팀 결과보고
아메리카노 강화학습연구소
정의진
아메리카노 강화학습팀
강화학습 스터디
프로젝트 설정
프로젝트 완성
목차
1. 개요 & 프로젝트 설정
2. 배경지식 정리
3. 프로젝트 보고
프로젝트 : 스타크래프트 인공지능 제작
왜 게임 인공지능이 중요한가요?
왜 게임 인공지능을 만들까?
• 인공지능이 아닌 사람을 위해 만들어진 환경
• 플레이어의 액션과 환경이 상호작용한다
• 근사해야할 액션의 크기와 범위가 매우 넓다
• 동시에 많은 에이전트를 컨트롤 할 수 있어야 한다.
도대체 어떻게 만들까?
강화학습이란?
환경action
reward
오키~ observatio
n
보상액션현재 환경 다음 환경
MDP
강화학습은 MDP 환경에서 ..
• 벨만 최적 방정식
• 몬테 카를로 method
..을 이용하여 학습해 나갑니다.
𝑄 𝜋 𝑠, 𝑎 = 𝐸 𝑟 𝑡+1
+ 𝛾 ∙ 𝑄 𝜋 𝑆𝑡+1, 𝑎 𝑡+1 𝑆𝑡 = 𝑠]
𝑄 𝜋 𝑠, 𝑎 : Q함수
𝑟 𝑡+1
∶보상
𝛾 : 감가율
벨만 최적 방정식
• S라는 상황에서 a 액션을 취했을 때 현재 정책으로
받을 리워드의 기대값
벨만 방정식의 한계
• MDP 모델을 완전이 알고 있어야 한다.
Monte-Carlo
• 에피소드의 경험에서 배운다(돌다리를 직접 두들겨 본다).
• 정책에 따른 행동 -> 에피소드 끝 -> 받았던 리워드를
회상하며 가치함수를 책정
• 100번의 에피소드를 돌았을 경우 -> 각 state에서 받았던
리워드의 평균을 내서 가치함수를 책정
𝑄𝑡 =
1
𝑡
𝑗=1
𝑡
𝐺𝑗
Monte-Carlo
=
1
𝑡
𝐺𝑡 +
𝑗=1
𝑡−1
𝐺𝑗
𝑗=1
𝑡−1
𝐺𝑗 = 𝑡 − 1 𝑄𝑡−1
=
1
𝑡
𝐺𝑡 + (𝑡 − 1)𝑄𝑡−1
𝑄𝑡−1 =
1
𝑡 − 1
𝑗=1
𝑡−1
𝐺𝑗
𝑡 − 1 𝑄𝑡−1 =
𝑗=1
𝑡−1
𝐺𝑗
𝑄𝑡 =
1
𝑡
𝐺𝑡 + (𝑡 − 1)𝑄𝑡−1
=
1
𝑡
𝐺𝑡 + 𝑄𝑡−1 −
1
𝑡
∙ 𝑄𝑡−1
= 𝑄𝑡−1 +
1
𝑡
𝐺𝑡 − 𝑄𝑡−1
𝑄𝑡−1 +
1
𝑡
𝐺𝑡 −
1
𝑡
∙ 𝑄𝑡−1
= 𝑄𝑡−1 + 𝑎 𝐺𝑡 − 𝑄𝑡−1
𝑄𝑡 = 𝑄𝑡−1 + 𝑎 𝐺𝑡 − 𝑄𝑡−1
이전 가치함수 예측값
실제 받은
리워드
이전 가치함수
새로 업데이트 될
가치함수
Monte-Carlo 한계
• 에피소드가 끝나야만 업데이트가 됨
• 에피소드가 끝나지 않거나 긴 상황에서 학습이 어려움(ex.
스타크래프트)
Time difference
• 에피소드마다 학습하던 Monte-Carlo 방식을 실시간으로
바꾸자
𝐺𝑡 = 𝑅𝑡+1 + 𝛾𝐺𝑡+1
𝑅𝑡+1 + 𝛾𝑄 (𝑆𝑡+1)
𝑉𝑡 = 𝑉𝑡 + 𝑎 𝑅𝑡+1 + 𝛾𝑄 (𝑆𝑡+1) − 𝑄𝑡
𝑄 𝜋 𝑠𝑡 ← 𝑄 𝜋(𝑠𝑡) + 𝑎 𝐺𝑡 − 𝑄(𝑠𝑡)
Action을 정하는 정책은 어떻게
만드나요?
Stat
e Q Value
환경action
reward
오키~ observatio
n
Replay
Buffer
Target Network
Q 함수를 근사할 시 단점
• Action이 무한해지면 Q함수도 무한해져야 한다.
• 근사하기가 매우 힘들다
그래서 나왔습니다
• Policy based Learning
• 어떤 action을 할지 신경망에서 바로 근사
• Continuous 한 action 근사도 더 쉬워짐
참고 : http://rail.eecs.berkeley.edu/deeprlcourse-fa17/f17docs/lecture_4_policy_gradient.pdf
𝜃⋆ = 𝑎𝑟𝑔𝑚𝑎𝑥 𝜃 𝐸𝜏~𝑝 𝜃(𝑡)[
𝑡
𝑟(𝑠𝑡, 𝑎 𝑡)]
𝜏
…
𝛻𝜃 𝐽(𝜃) = 𝛻𝜃 log 𝜋 𝜃
𝜏 𝑑𝜏
= 𝐸 𝜏~𝜋 𝜃 𝜏
𝑡=1
𝑇
𝛻𝜃 log 𝜋 𝜃 𝑎 𝑡 𝑠𝑡
𝑡=1
𝑇
𝑟 𝑠𝑡, 𝑎 𝑡
A2C
• Stochastic Policy Gradient 방식을 채용
• Policy gradient 도중 생기는 가치함수를 Critic 신경망을 통해 근사
actor
critic
env
𝛻𝜃 𝐽(𝜃) = 𝐸 𝜏~𝜋 𝜃 𝜏
𝑡=1
𝑇
𝛻𝜃 log 𝜋 𝜃 𝑎 𝑡 𝑠𝑡
𝑡=1
𝑇
𝑟 𝑠𝑡, 𝑎 𝑡
𝐸 𝜏~𝜋 𝜃 𝜏
𝑡=1
𝑇
𝛻𝜃 log 𝜋 𝜃 𝑎 𝑡 𝑠𝑡 𝐴 𝜃(𝑠𝑡)
A2C 알고리즘을 써보자
• Softmax로 64*64 좌표 중 한 점을 확률적으로 선택
• Stochastic Policy Gradient
• Action은 attack 만, actor 출력은 좌표로
결과
A2C 알고리즘의 문제점
• 오래 된 알고리즘이다
• Action space가 너무 넓음(4096) – 특정 좌표에서의 q값만 높아짐
• 근사가 오래 걸림
• 오래 된 알고리즘이다
DDPG
• Deep Deterministic Policy Gradient
• A2C 알고리즘에 Deterministic Policy Gradient 채용
• 연속적인 action 근사에 좋은 결과를 보여줌
• Target network 와 replay buffer 방식을 채용
DDPG를 쓰자!!
• 좌표를 연속적인 action으로 정해서 근사하자!
• Action의 종류도 선택할 수 있도록
DDPG를 쓰자!!
actor
critic
env
action
coordinate
Action에 대한 미분
Coordinate 에 대한 미분
DDPG 결과
DDPG 결과
DDPG 결과
DDPG 문제점
• 학습이 진행될수록 좌표 출력값이 발산하는 경향
• DDPG로는 불연속적인 action 근사가 가능하지 않음(argmax)
𝐸 𝜏~𝜋 𝜃 𝜏
𝑡=1
𝑇
𝛻𝜃 log 𝜋 𝜃 𝑎 𝑡 𝑠𝑡
𝑡=1
𝑇
𝑟 𝑠𝑡, 𝑎 𝑡 Stochastic Policy Gradient
𝐸 𝜏~𝜋 𝜃 𝜏 𝛻𝑎 𝑄 𝑠, 𝑎 𝜃 𝑄 𝛻𝜃 𝜇(𝑠|𝜃 𝜇) Deterministic Policy Gradient
차후 개선 계획
• 활성화 함수 교체로 좌표 범위 제한
• Action 선택actor과 좌표 선택 actor 2개를 만들어 같은 Critic
함수로 따로 근사
- (DPG SPG 동시에 근사)
감사합니다.

Weitere ähnliche Inhalte

Was ist angesagt?

강화학습의 흐름도 Part 1
강화학습의 흐름도 Part 1강화학습의 흐름도 Part 1
강화학습의 흐름도 Part 1Dongmin Lee
 
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)Euijin Jeong
 
[머가]Chap11 강화학습
[머가]Chap11 강화학습[머가]Chap11 강화학습
[머가]Chap11 강화학습종현 최
 
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)Kyunghwan Kim
 
Reinforcement learning v0.5
Reinforcement learning v0.5Reinforcement learning v0.5
Reinforcement learning v0.5SANG WON PARK
 
가깝고도 먼 Trpo
가깝고도 먼 Trpo가깝고도 먼 Trpo
가깝고도 먼 TrpoWoong won Lee
 
Differentiable Neural Computer
Differentiable Neural ComputerDifferentiable Neural Computer
Differentiable Neural ComputerTaehoon Kim
 
Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)
Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)
Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)Kyunghwan Kim
 
Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)Suhyun Cho
 
Chapter 8 - optimization for training deep models
Chapter 8 - optimization for training deep modelsChapter 8 - optimization for training deep models
Chapter 8 - optimization for training deep modelsKyeongUkJang
 
Deep learning study 1
Deep learning study 1Deep learning study 1
Deep learning study 1San Kim
 
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기NAVER D2
 
[밑러닝] Chap06 학습관련기술들
[밑러닝] Chap06 학습관련기술들[밑러닝] Chap06 학습관련기술들
[밑러닝] Chap06 학습관련기술들종현 최
 
Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리SANG WON PARK
 
Optimization algorithms in machine learning
Optimization algorithms in machine learningOptimization algorithms in machine learning
Optimization algorithms in machine learningYonsei University
 
개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow양 한빛
 
Lecture 2: Supervised Learning
Lecture 2: Supervised LearningLecture 2: Supervised Learning
Lecture 2: Supervised LearningSang Jun Lee
 

Was ist angesagt? (19)

강화학습의 흐름도 Part 1
강화학습의 흐름도 Part 1강화학습의 흐름도 Part 1
강화학습의 흐름도 Part 1
 
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
 
[머가]Chap11 강화학습
[머가]Chap11 강화학습[머가]Chap11 강화학습
[머가]Chap11 강화학습
 
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
 
Reinforcement learning v0.5
Reinforcement learning v0.5Reinforcement learning v0.5
Reinforcement learning v0.5
 
가깝고도 먼 Trpo
가깝고도 먼 Trpo가깝고도 먼 Trpo
가깝고도 먼 Trpo
 
Differentiable Neural Computer
Differentiable Neural ComputerDifferentiable Neural Computer
Differentiable Neural Computer
 
Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)
Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)
Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)
 
Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)
 
Chapter 8 - optimization for training deep models
Chapter 8 - optimization for training deep modelsChapter 8 - optimization for training deep models
Chapter 8 - optimization for training deep models
 
Deep learning study 1
Deep learning study 1Deep learning study 1
Deep learning study 1
 
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기
 
DL from scratch(6)
DL from scratch(6)DL from scratch(6)
DL from scratch(6)
 
DL from scratch(4~5)
DL from scratch(4~5)DL from scratch(4~5)
DL from scratch(4~5)
 
[밑러닝] Chap06 학습관련기술들
[밑러닝] Chap06 학습관련기술들[밑러닝] Chap06 학습관련기술들
[밑러닝] Chap06 학습관련기술들
 
Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리
 
Optimization algorithms in machine learning
Optimization algorithms in machine learningOptimization algorithms in machine learning
Optimization algorithms in machine learning
 
개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow
 
Lecture 2: Supervised Learning
Lecture 2: Supervised LearningLecture 2: Supervised Learning
Lecture 2: Supervised Learning
 

Ähnlich wie 한국인공지능연구소 강화학습랩 결과보고서

Nationality recognition
Nationality recognitionNationality recognition
Nationality recognition준영 박
 
Imagination-Augmented Agents for Deep Reinforcement Learning
Imagination-Augmented Agents for Deep Reinforcement LearningImagination-Augmented Agents for Deep Reinforcement Learning
Imagination-Augmented Agents for Deep Reinforcement Learning성재 최
 
Guided policy search
Guided policy searchGuided policy search
Guided policy searchJaehyeon Park
 
Lecture 3: Unsupervised Learning
Lecture 3: Unsupervised LearningLecture 3: Unsupervised Learning
Lecture 3: Unsupervised LearningSang Jun Lee
 
Ch.5 machine learning basics
Ch.5  machine learning basicsCh.5  machine learning basics
Ch.5 machine learning basicsJinho Lee
 
Workshop 210417 dhlee
Workshop 210417 dhleeWorkshop 210417 dhlee
Workshop 210417 dhleeDongheon Lee
 
알파고 해부하기 3부
알파고 해부하기 3부알파고 해부하기 3부
알파고 해부하기 3부Donghun Lee
 
Growing object oriented software guided by test
Growing object oriented software guided by testGrowing object oriented software guided by test
Growing object oriented software guided by test라한사 아
 
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현강 민우
 
인공지능, 기계학습 그리고 딥러닝
인공지능, 기계학습 그리고 딥러닝인공지능, 기계학습 그리고 딥러닝
인공지능, 기계학습 그리고 딥러닝Jinwon Lee
 
Scrum - Agile Development Process
Scrum - Agile Development ProcessScrum - Agile Development Process
Scrum - Agile Development ProcessKook Maeng
 
[컨퍼런스] 모두콘 2018 리뷰
[컨퍼런스] 모두콘 2018 리뷰[컨퍼런스] 모두콘 2018 리뷰
[컨퍼런스] 모두콘 2018 리뷰Donghyeon Kim
 
180624 mobile visionnet_baeksucon_jwkang_pub
180624 mobile visionnet_baeksucon_jwkang_pub180624 mobile visionnet_baeksucon_jwkang_pub
180624 mobile visionnet_baeksucon_jwkang_pubJaewook. Kang
 
Deep Learning for AI (1)
Deep Learning for AI (1)Deep Learning for AI (1)
Deep Learning for AI (1)Dongheon Lee
 
엘라스틱서치 클러스터로 수십억 건의 데이터 운영하기
엘라스틱서치 클러스터로 수십억 건의 데이터 운영하기엘라스틱서치 클러스터로 수십억 건의 데이터 운영하기
엘라스틱서치 클러스터로 수십억 건의 데이터 운영하기흥래 김
 
03.12 cnn backpropagation
03.12 cnn backpropagation03.12 cnn backpropagation
03.12 cnn backpropagationDea-hwan Ki
 
파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)SK(주) C&C - 강병호
 
강화학습 & Unity ML Agents
강화학습 & Unity ML Agents강화학습 & Unity ML Agents
강화학습 & Unity ML AgentsHyunjong Lee
 
Deview 2014 키노트
Deview 2014 키노트Deview 2014 키노트
Deview 2014 키노트NAVER D2
 

Ähnlich wie 한국인공지능연구소 강화학습랩 결과보고서 (20)

Nationality recognition
Nationality recognitionNationality recognition
Nationality recognition
 
Imagination-Augmented Agents for Deep Reinforcement Learning
Imagination-Augmented Agents for Deep Reinforcement LearningImagination-Augmented Agents for Deep Reinforcement Learning
Imagination-Augmented Agents for Deep Reinforcement Learning
 
Guided policy search
Guided policy searchGuided policy search
Guided policy search
 
Lecture 3: Unsupervised Learning
Lecture 3: Unsupervised LearningLecture 3: Unsupervised Learning
Lecture 3: Unsupervised Learning
 
Ch.5 machine learning basics
Ch.5  machine learning basicsCh.5  machine learning basics
Ch.5 machine learning basics
 
Workshop 210417 dhlee
Workshop 210417 dhleeWorkshop 210417 dhlee
Workshop 210417 dhlee
 
알파고 해부하기 3부
알파고 해부하기 3부알파고 해부하기 3부
알파고 해부하기 3부
 
Growing object oriented software guided by test
Growing object oriented software guided by testGrowing object oriented software guided by test
Growing object oriented software guided by test
 
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
 
인공지능, 기계학습 그리고 딥러닝
인공지능, 기계학습 그리고 딥러닝인공지능, 기계학습 그리고 딥러닝
인공지능, 기계학습 그리고 딥러닝
 
Scrum - Agile Development Process
Scrum - Agile Development ProcessScrum - Agile Development Process
Scrum - Agile Development Process
 
[컨퍼런스] 모두콘 2018 리뷰
[컨퍼런스] 모두콘 2018 리뷰[컨퍼런스] 모두콘 2018 리뷰
[컨퍼런스] 모두콘 2018 리뷰
 
180624 mobile visionnet_baeksucon_jwkang_pub
180624 mobile visionnet_baeksucon_jwkang_pub180624 mobile visionnet_baeksucon_jwkang_pub
180624 mobile visionnet_baeksucon_jwkang_pub
 
Deep Learning for AI (1)
Deep Learning for AI (1)Deep Learning for AI (1)
Deep Learning for AI (1)
 
Rl
RlRl
Rl
 
엘라스틱서치 클러스터로 수십억 건의 데이터 운영하기
엘라스틱서치 클러스터로 수십억 건의 데이터 운영하기엘라스틱서치 클러스터로 수십억 건의 데이터 운영하기
엘라스틱서치 클러스터로 수십억 건의 데이터 운영하기
 
03.12 cnn backpropagation
03.12 cnn backpropagation03.12 cnn backpropagation
03.12 cnn backpropagation
 
파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)
 
강화학습 & Unity ML Agents
강화학습 & Unity ML Agents강화학습 & Unity ML Agents
강화학습 & Unity ML Agents
 
Deview 2014 키노트
Deview 2014 키노트Deview 2014 키노트
Deview 2014 키노트
 

한국인공지능연구소 강화학습랩 결과보고서