SlideShare uma empresa Scribd logo
1 de 129
Baixar para ler offline
파이썬으로 

나만의 강화학습 환경 만들기
파이콘 코리아 2017
김정주 (haje01@gmail.com)
어떤 내용이에요?
•파이썬 프로그래머의 입장에서

•자신의 목적에 맞는 강화학습 환경을 만들고,

•효율적인 학습을 위한 요건들을 살펴봅니다.
‘이론’ 보다는 ‘개발’의 이야기입니다.
강화학습 공부 📖
•좋은 리소스가 많이 있음

•김성훈 교수님 YouTube 강의

•Sutton 교수님 책 + David Silver 강의

•이웅원님 책 https://www.gitbook.com/book/dnddnjs/rl/details

•각종 블로그 + GitHub내 프로젝트들
“환경”? 🌍
여기에서는 두 가지 의미
1. 강화학습의 ‘문제'로서의 환경
2. 그것을 사용한 ‘문제 풀이 기반’으로서의 환경
강화학습이란?
어떤 환경(Environment) 안에서
에이전트(Agent)가
현재의 상태(State)를 인식하여,
보상(Reward)을 최대화하는 

동작(Action)을 선택하는 방법
동작
환 경 에이전트
보 상상태 관측
환경 vs 에이전트 #
환경 에이전트
문제 정의 문제 풀이
OpenAI Gym
강화학습을 위한 플랫폼의 하나
설치하기 쉽고 표준적인 방식의 

다양한 샘플 환경을 제공
강화학습 연구에 많이 활용
Gym에서 제공하는 환경
•Classic Control

•Algorithmic

•Atari

•Board games

•Box2D

•Toy Text

•Doom
Doom with Deep RL
https://arxiv.org/abs/1609.05521
https://www.youtube.com/watch?v=oo0TraGu6QY
Gym 샘플을 살펴보면… 👀
강화학습 환경과 에이전트를 

어떻게 구성해야할 지 알 수 있음
꼭 Gym 처럼 해야 하나요?
강화학습 환경이 꼭 Gym처럼 구성될
필요는 없습니다.
그러나 본인의 설계 경험이 부족하고,
자신의 환경을 남과 공유하고 싶다면
Gym 스타일을 참고하는 것이
좋을 것입니다.
Gym 환경 클래스 구현 🚀
gym.Env를 상속받고
_reset
_step
_render
를 구현한다.
Gym 에이전트의 메소드 🔧
•에이전트는 아래와 같은 환경 메소드를 호출해 학습

•reset
•step
•render
환경 에이전트
구현할 것

_reset
_step
_render
판단 후 동작
상태와 보상
호출할 것

reset
step
render
환경 만들기 도전!
틱택토(TicTacToe)
•대전 보드 게임, 두 에이전트

•단순해 보이지만 개념을 잡는데
도움 😅

•Gym 형식을 따라 구현
참고: 클래식 AI에서 틱택토 👾
Minimax
예제 코드 설치 📥
git clone https://github.com/haje01/gym-tictactoe.git
cd gym-tictactoe/
pip install -e .
에이전트 예제 🎩
환경과 함께 에이전트 예제가 제공되면
환경이 제대로 구현되었는지
검증하고,
유저가 환경의 동작에 대해
이해하는데 도움
examples/ 폴더 아래 에이전트가 있습니다.
HumanAgent 😎
•사람이 렌더링 결과를 보고 숫자를 입력해 플레이

•문제를 풀기전 환경 파악

•강화학습 에이전트 학습 후 검증에도 사용
1 2 3
4 5 6
7 8 9
BaseAgent 🐙
•간단한 룰 기반 에이전트

•두어서 이기는 곳이 있으면 그곳에

•아니면 랜덤 위치

•최소한의 Baseline 역할

•벤치마킹에 사용
시연 📺
환경 + HumanAgent & BaseAgent
환경 설계와 제작
적절한 상태와 보상의 

설계가 

강화학습 환경 제작의 핵심
보상(Reward) 방식 🎁
•‘O’의 승리는 ‘X’의 패배 → 제로섬 게임

•‘O’의 승리 보상: +1

•‘X’의 승리 보상: -1

•게임 진행 및 무승부: 0
‘O’는 보상을 최대화 하려하고, 

‘X’는 보상을 최소화 하려한다.
상태 표현 방식
•보드의 상태를 마크 코드(‘O’: 1,
‘X’: 2)의 리스트로

•[0, 1, 2, 0, 1, 0, 0, 0, 2]
그러나
•같은 상태라도 누구 차례인지 따라
가치가 다름

•‘O’의 차례이면 ‘O’의 승리

•‘X’의 차례이면 ‘X’의 승리
•따라서 (보드의 상태 + 차례)로 상태를 구성

•[0, 1, 2, 0, 1, 0, 0, 0, 2], ‘O’
상태 공간, 동작 공간 🏞
•상태가 표현되는 공간

•틱택토의 상태 공간 → 불연속적(정수),Discrete 공간 객체 이용

•연속적 공간(실수)은 Box 공간 객체 이용
같은 식으로 동작 공간도 정의
환경 클래스 코드
# gym-tictactoe/gym_tictactoe/envs.py
import gym
from gym import spaces
class TicTacToeEnv(gym.Env): # gym.Env를 상속
metadata = {'render.modes': [’human’]} # 렌더링 모드
def _step(self, action):
...
def _reset(self):
...
def _render(self, mode='human', close=False):
...
_reset 함수
def _reset(self):
# 환경 초기화
self.board = [0] * 9
self.mark = ‘O’
self.done = False
return self._get_obs()
def _get_obs(self):
# 관측한 상태 (보드의 상태 + 다음 차례 마크) 반환
return tuple(self.board), self.mark
_step 함수
def _step(self, action):
# 주어진 동작을 위치로 마크를 배치
loc = action
reward = NO_REWARD
self.board[loc] = tocode(self.mark)
# 승/패가 결정되면 마크에 맞는 리워드를 반환
status = check_game_status(self.board)
if status >= 0:
self.done = True
if status in [1, 2]:
reward = O_REWARD if self.mark == 'O' else X_REWARD
# 다음 플레이어로 교체
self.mark = next_mark(self.mark)
# 새 상태, 리워드, 에피소드 종료 여부 반환
return self._get_obs(), reward, self.done, None
_render 함수
def _render(self, mode='human', close=False):
# human 모드에서만 보드를 표시
if mode == 'human':
self._show_board()
def _show_board(self):
# 보드 그리기
for j in range(0, 9, 3):
# 마크 코드를 문자로 0 -> ‘ ‘, 1 -> ‘O’, 2 -> ’X’
print(‘|’.join([tomark(self.board[i])
for i in range(j, j+3)]))
if j < 6:
printprint('-----')
학습 구현
TD Agent 🤖
•제대로 동작하는 강화학습 에이전트 예제

•강화학습 알고리즘 중 간략화된 TD(시간차) 학습 방법 사용
•Model-Based vs Model-Free

•On-Policy vs Off-Policy

•Monte Carlo vs Temporal Difference Learning
시간차 학습
다음 기대 가치와 현재 가치의 차이를 

학습률(alpha) 만큼 갱신(백업)
V(S) ← V(S) + α [V(S′) − V(S)]
동작의 선택은 epsilon-greedy 방식
•랜덤값이 epsilon 보다 작으면 임의의 행동

•아니면 가장 가치가 높다고 판단되는 행동
TDAgent 코드
class TDAgent(object):
# 상태에 대해 e-greedy정책으로 동작결정
def egreedy_policy(self, state, ava_actions):
...
# 임의 동작
def random_action(self, ava_actions):
...
# 상태에 대한 탐욕적 동작
def greedy_action(self, state, ava_actions):
...
# 상태 가치 업데이트
def backup(self, state, nstate, reward):
...
egreedy_policy 함수
def egreedy_policy(self, state, ava_actions):
e = random.random()
# 랜덤 값이 epsilon 보다 작으면
if e < self.epsilon:
# 임의의 동작 선택
action = self.random_action(ava_actions)
else:
# 아니면 가치 기준으로 동작 선택
action = self.greedy_action(state, ava_actions)
return action
greedy_action 함수
def greedy_action(self, state, ava_actions):
ava_values = []
# 모든 가능한 동작에 대해
for action in ava_actions:
# 동작 후 상태의 가치를 구함
nstate = self.after_action_state(state, action)
nval = self.ask_value(nstate)
ava_values.append(nval)
c # 그중 ‘O’는 최대 가치, ‘X’는 최소 가치의 동작을 선택
val_arr = np.array(ava_values)
if self.mark == 'O':
midx = np.argwhere(val_arr == np.max(val_arr))
else:
midx = np.argwhere(val_arr == np.min(val_arr))
aidx = np.random.choice(midx.ravel())
action = ava_actions[aidx]
return action
backup 함수
def backup(self, state, nstate, reward):
# 지금 상태와 다음 상태의 가치를 구함
val = self.ask_value(state)
nval = self.ask_value(nstate)
diff = nval - val
# 두 값의 차이에 학습률을 곱해 갱신
val = val + self.alpha * diff
V(S) ← V(S) + α [V(S′) − V(S)]
학습은 두 TDAgent 간의 

자가 대전(Self-Play)로 진행
시연 📺
TDAgent (learn & play, 결과 데이터)
꽤 하는 것 같지만…?
아직 완벽(Unbeatable)하지는 않음.
그러나 여기까지도 시행착오가 있었습니다.
문제 1

설계 오류
•학습된 상태의 보상 오류

•상태별 방문 횟수가 편향

•학습된 모델은 Text로 저장하여 확인
문제 2

부적절한 하이퍼 패러미터
•보상이 잘 반영되지 않음 → 학습률(alpha)이 작음

•들쭉 날쭉한 결과 → 학습률이 큼(Overshooting)

•상태 방문 횟수가 편향 → 탐험률(epsilon) 크게
그리고 무엇보다…
많은 

학습 

테스트.
X
무작정 플레이를 ‘많이’ 시킬 것이 아니라
학습이 ‘되고’ 있는지를 

검증해야
강화학습은 본질적으로 확률적인
(Stochastic) 학습
학습의 성능은 

모델과 하이퍼 패러미터 등에 의해

끊임 없이 출렁이고,
개발은 

구현상 문제와 학습의 성능 사이에서

진흙탕에 빠짐
코딩에 TDD가 있다면,
기계학습에는 벤치마킹!
벤치마킹 ⚖
•수작업 없이 성능을 비교할 수 있는 코드

•BaseAgent를 기준(=Baseline)으로 많은 플레이 후 평가
지지 않는 에이전트를 위해서는
최적의 하이퍼 패러미터가 필요!
하이퍼 패러미터 찾기 🎛
•벤치마크가 있다고 해도 지루한 반복 작업

•컴퓨터에게 시키면?
Grid Search 🔍
하이퍼 패러미터들의 다양한 조합을,
동시에 병렬(분산) 워커를 띄워
벤치마킹시키고
가장 성능이 우수한 조합을 

알려준다.
시연 📺
TDAgent (bench, grid search)
GridSearch로 찾은 Alpha, Epsilon의 평가 (붉은 부분이 최적)
이렇게 하면
코드에 변화가 있어도 안심
마무리 🌇
정리 5
•잘 설계된 강화학습 환경과 에이전트를 만들자.

•적절한 상태 및 보상을 선택하자.

•Baseline을 만들어 벤치마킹하고, Grid Search를 활용하자.
프로그래머에게 AI는?
AI 분야는 이론이 어렵지만, 

프로그래밍 실력이 있다면 유리.
공부하기 좋아하는 프로그래머는 도전해볼 만.
앞으로의 미래는
일일이 지시하는 코딩이 아닌,
컴퓨터가 공부할 수 있는
환경을 만들어주는 것이

프로그래머의 역할일지도…
한편, 또다른 도전자…
(선택적) 시연 📺
Racetrack, Billiard
공부하고, 도전해보면 어떨까요?
감사합니다.
참조 링크
•https://ko.wikipedia.org/wiki/강화_학습

•https://gym.openai.com

•http://www.incompleteideas.net/sutton/book/the-book-2nd.html

•https://en.wikipedia.org/wiki/Game_complexity#Example:_tic-tac-
toe_.28noughts_and_crosses.29

•http://neverstopbuilding.com/minimax

Mais conteúdo relacionado

Mais procurados

강화학습의 개요
강화학습의 개요강화학습의 개요
강화학습의 개요Dongmin Lee
 
강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introductionTaehoon Kim
 
강화학습 알고리즘의 흐름도 Part 2
강화학습 알고리즘의 흐름도 Part 2강화학습 알고리즘의 흐름도 Part 2
강화학습 알고리즘의 흐름도 Part 2Dongmin Lee
 
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)Curt Park
 
분산 강화학습 논문(DeepMind IMPALA) 구현
분산 강화학습 논문(DeepMind IMPALA) 구현분산 강화학습 논문(DeepMind IMPALA) 구현
분산 강화학습 논문(DeepMind IMPALA) 구현정주 김
 
[226]대용량 텍스트마이닝 기술 하정우
[226]대용량 텍스트마이닝 기술 하정우[226]대용량 텍스트마이닝 기술 하정우
[226]대용량 텍스트마이닝 기술 하정우NAVER D2
 
ML + 주식 phase 2
ML + 주식  phase 2ML + 주식  phase 2
ML + 주식 phase 2HoChul Shin
 
[143] Modern C++ 무조건 써야 해?
[143] Modern C++ 무조건 써야 해?[143] Modern C++ 무조건 써야 해?
[143] Modern C++ 무조건 써야 해?NAVER D2
 
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.Yongho Ha
 
[RLkorea] 각잡고 로봇팔 발표
[RLkorea] 각잡고 로봇팔 발표[RLkorea] 각잡고 로봇팔 발표
[RLkorea] 각잡고 로봇팔 발표ashley ryu
 
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기Jaeseung Ha
 
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들Chris Ohk
 
머신러닝 + 주식 삽질기
머신러닝 + 주식 삽질기머신러닝 + 주식 삽질기
머신러닝 + 주식 삽질기HoChul Shin
 
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)Kyunghwan Kim
 
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017Taehoon Kim
 
[머가]Chap11 강화학습
[머가]Chap11 강화학습[머가]Chap11 강화학습
[머가]Chap11 강화학습종현 최
 
인공신경망
인공신경망인공신경망
인공신경망종열 현
 
알파고의 알고리즘
알파고의 알고리즘알파고의 알고리즘
알파고의 알고리즘SeokWon Kim
 
온라인 게임 처음부터 끝까지 동적언어로 만들기
온라인 게임 처음부터 끝까지 동적언어로 만들기온라인 게임 처음부터 끝까지 동적언어로 만들기
온라인 게임 처음부터 끝까지 동적언어로 만들기Seungjae Lee
 
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
 

Mais procurados (20)

강화학습의 개요
강화학습의 개요강화학습의 개요
강화학습의 개요
 
강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction
 
강화학습 알고리즘의 흐름도 Part 2
강화학습 알고리즘의 흐름도 Part 2강화학습 알고리즘의 흐름도 Part 2
강화학습 알고리즘의 흐름도 Part 2
 
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
 
분산 강화학습 논문(DeepMind IMPALA) 구현
분산 강화학습 논문(DeepMind IMPALA) 구현분산 강화학습 논문(DeepMind IMPALA) 구현
분산 강화학습 논문(DeepMind IMPALA) 구현
 
[226]대용량 텍스트마이닝 기술 하정우
[226]대용량 텍스트마이닝 기술 하정우[226]대용량 텍스트마이닝 기술 하정우
[226]대용량 텍스트마이닝 기술 하정우
 
ML + 주식 phase 2
ML + 주식  phase 2ML + 주식  phase 2
ML + 주식 phase 2
 
[143] Modern C++ 무조건 써야 해?
[143] Modern C++ 무조건 써야 해?[143] Modern C++ 무조건 써야 해?
[143] Modern C++ 무조건 써야 해?
 
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
 
[RLkorea] 각잡고 로봇팔 발표
[RLkorea] 각잡고 로봇팔 발표[RLkorea] 각잡고 로봇팔 발표
[RLkorea] 각잡고 로봇팔 발표
 
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
NDC 2017 하재승 NEXON ZERO (넥슨 제로) 점검없이 실시간으로 코드 수정 및 게임 정보 수집하기
 
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
 
머신러닝 + 주식 삽질기
머신러닝 + 주식 삽질기머신러닝 + 주식 삽질기
머신러닝 + 주식 삽질기
 
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
 
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
책 읽어주는 딥러닝: 배우 유인나가 해리포터를 읽어준다면 DEVIEW 2017
 
[머가]Chap11 강화학습
[머가]Chap11 강화학습[머가]Chap11 강화학습
[머가]Chap11 강화학습
 
인공신경망
인공신경망인공신경망
인공신경망
 
알파고의 알고리즘
알파고의 알고리즘알파고의 알고리즘
알파고의 알고리즘
 
온라인 게임 처음부터 끝까지 동적언어로 만들기
온라인 게임 처음부터 끝까지 동적언어로 만들기온라인 게임 처음부터 끝까지 동적언어로 만들기
온라인 게임 처음부터 끝까지 동적언어로 만들기
 
Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)
 

Destaque

NDC 2016 김정주 - 기계학습을 활용한 게임어뷰징 검출
NDC 2016 김정주 - 기계학습을 활용한 게임어뷰징 검출 NDC 2016 김정주 - 기계학습을 활용한 게임어뷰징 검출
NDC 2016 김정주 - 기계학습을 활용한 게임어뷰징 검출 정주 김
 
알파고 해부하기 3부
알파고 해부하기 3부알파고 해부하기 3부
알파고 해부하기 3부Donghun Lee
 
STRONG KOREA 20130609
STRONG KOREA 20130609STRONG KOREA 20130609
STRONG KOREA 20130609Leo Kim
 
20160409 microsoft 세미나 머신러닝관련 발표자료
20160409 microsoft 세미나 머신러닝관련 발표자료20160409 microsoft 세미나 머신러닝관련 발표자료
20160409 microsoft 세미나 머신러닝관련 발표자료JungGeun Lee
 
기계 학습의 현재와 미래
기계 학습의 현재와 미래기계 학습의 현재와 미래
기계 학습의 현재와 미래Joon Kim
 
Machine Learning Foundations (a case study approach) 강의 정리
Machine Learning Foundations (a case study approach) 강의 정리Machine Learning Foundations (a case study approach) 강의 정리
Machine Learning Foundations (a case study approach) 강의 정리SANG WON PARK
 
[한국어] Multiagent Bidirectional- Coordinated Nets for Learning to Play StarCra...
[한국어] Multiagent Bidirectional- Coordinated Nets for Learning to Play StarCra...[한국어] Multiagent Bidirectional- Coordinated Nets for Learning to Play StarCra...
[한국어] Multiagent Bidirectional- Coordinated Nets for Learning to Play StarCra...Kiho Suh
 
Concurrent Programming (Java thread 다루기)
Concurrent Programming (Java thread 다루기)Concurrent Programming (Java thread 다루기)
Concurrent Programming (Java thread 다루기)JungGeun Lee
 
머피의 머신러닝: Undirencted Graphical Model
머피의 머신러닝: Undirencted Graphical Model머피의 머신러닝: Undirencted Graphical Model
머피의 머신러닝: Undirencted Graphical ModelJungkyu Lee
 
Reinforcement learning v0.5
Reinforcement learning v0.5Reinforcement learning v0.5
Reinforcement learning v0.5SANG WON PARK
 
주식 기술적 분석#3 (추세선)
주식 기술적 분석#3 (추세선)주식 기술적 분석#3 (추세선)
주식 기술적 분석#3 (추세선)Ant House
 
1차시 smart education
1차시 smart education1차시 smart education
1차시 smart educationJaechoon Jo
 
기술적분석 16 trix
기술적분석 16 trix기술적분석 16 trix
기술적분석 16 trixAnt House
 
[한국어] Neural Architecture Search with Reinforcement Learning
[한국어] Neural Architecture Search with Reinforcement Learning[한국어] Neural Architecture Search with Reinforcement Learning
[한국어] Neural Architecture Search with Reinforcement LearningKiho Suh
 
[BIZ+005 스타트업 투자/법률 기초편] 첫 투자를 위한 스타트업 기초상식 | 비즈업 조가연님
[BIZ+005 스타트업 투자/법률 기초편] 첫 투자를 위한 스타트업 기초상식 | 비즈업 조가연님 [BIZ+005 스타트업 투자/법률 기초편] 첫 투자를 위한 스타트업 기초상식 | 비즈업 조가연님
[BIZ+005 스타트업 투자/법률 기초편] 첫 투자를 위한 스타트업 기초상식 | 비즈업 조가연님 BIZ+
 
알파고 학습 이해하기
알파고 학습 이해하기알파고 학습 이해하기
알파고 학습 이해하기도형 임
 
기술적분석16 sonar
기술적분석16 sonar기술적분석16 sonar
기술적분석16 sonarAnt House
 

Destaque (20)

NDC 2016 김정주 - 기계학습을 활용한 게임어뷰징 검출
NDC 2016 김정주 - 기계학습을 활용한 게임어뷰징 검출 NDC 2016 김정주 - 기계학습을 활용한 게임어뷰징 검출
NDC 2016 김정주 - 기계학습을 활용한 게임어뷰징 검출
 
알파고 해부하기 3부
알파고 해부하기 3부알파고 해부하기 3부
알파고 해부하기 3부
 
STRONG KOREA 20130609
STRONG KOREA 20130609STRONG KOREA 20130609
STRONG KOREA 20130609
 
20160409 microsoft 세미나 머신러닝관련 발표자료
20160409 microsoft 세미나 머신러닝관련 발표자료20160409 microsoft 세미나 머신러닝관련 발표자료
20160409 microsoft 세미나 머신러닝관련 발표자료
 
기계 학습의 현재와 미래
기계 학습의 현재와 미래기계 학습의 현재와 미래
기계 학습의 현재와 미래
 
Machine Learning Foundations (a case study approach) 강의 정리
Machine Learning Foundations (a case study approach) 강의 정리Machine Learning Foundations (a case study approach) 강의 정리
Machine Learning Foundations (a case study approach) 강의 정리
 
[한국어] Multiagent Bidirectional- Coordinated Nets for Learning to Play StarCra...
[한국어] Multiagent Bidirectional- Coordinated Nets for Learning to Play StarCra...[한국어] Multiagent Bidirectional- Coordinated Nets for Learning to Play StarCra...
[한국어] Multiagent Bidirectional- Coordinated Nets for Learning to Play StarCra...
 
Concurrent Programming (Java thread 다루기)
Concurrent Programming (Java thread 다루기)Concurrent Programming (Java thread 다루기)
Concurrent Programming (Java thread 다루기)
 
머피의 머신러닝: Undirencted Graphical Model
머피의 머신러닝: Undirencted Graphical Model머피의 머신러닝: Undirencted Graphical Model
머피의 머신러닝: Undirencted Graphical Model
 
파이썬으로 익히는 딥러닝
파이썬으로 익히는 딥러닝파이썬으로 익히는 딥러닝
파이썬으로 익히는 딥러닝
 
Reinforcement learning v0.5
Reinforcement learning v0.5Reinforcement learning v0.5
Reinforcement learning v0.5
 
주식 기술적 분석#3 (추세선)
주식 기술적 분석#3 (추세선)주식 기술적 분석#3 (추세선)
주식 기술적 분석#3 (추세선)
 
1차시 smart education
1차시 smart education1차시 smart education
1차시 smart education
 
기술적분석 16 trix
기술적분석 16 trix기술적분석 16 trix
기술적분석 16 trix
 
4차산업혁명
4차산업혁명4차산업혁명
4차산업혁명
 
[한국어] Neural Architecture Search with Reinforcement Learning
[한국어] Neural Architecture Search with Reinforcement Learning[한국어] Neural Architecture Search with Reinforcement Learning
[한국어] Neural Architecture Search with Reinforcement Learning
 
[BIZ+005 스타트업 투자/법률 기초편] 첫 투자를 위한 스타트업 기초상식 | 비즈업 조가연님
[BIZ+005 스타트업 투자/법률 기초편] 첫 투자를 위한 스타트업 기초상식 | 비즈업 조가연님 [BIZ+005 스타트업 투자/법률 기초편] 첫 투자를 위한 스타트업 기초상식 | 비즈업 조가연님
[BIZ+005 스타트업 투자/법률 기초편] 첫 투자를 위한 스타트업 기초상식 | 비즈업 조가연님
 
인공지능을 위한 뇌과학
인공지능을 위한 뇌과학인공지능을 위한 뇌과학
인공지능을 위한 뇌과학
 
알파고 학습 이해하기
알파고 학습 이해하기알파고 학습 이해하기
알파고 학습 이해하기
 
기술적분석16 sonar
기술적분석16 sonar기술적분석16 sonar
기술적분석16 sonar
 

Semelhante a 파이썬으로 나만의 강화학습 환경 만들기

Chapter 7 Regularization for deep learning - 2
Chapter 7 Regularization for deep learning - 2Chapter 7 Regularization for deep learning - 2
Chapter 7 Regularization for deep learning - 2KyeongUkJang
 
코드와 실습으로 이해하는 인공지능
코드와 실습으로 이해하는 인공지능코드와 실습으로 이해하는 인공지능
코드와 실습으로 이해하는 인공지능도형 임
 
[IGC 2016] 고정환 액션감성을_밸런스하다
[IGC 2016] 고정환 액션감성을_밸런스하다[IGC 2016] 고정환 액션감성을_밸런스하다
[IGC 2016] 고정환 액션감성을_밸런스하다Jeonghwan Ko
 
ESM Mid term Review
ESM Mid term ReviewESM Mid term Review
ESM Mid term ReviewMario Cho
 
Test Driven Development (TDD) basic
Test Driven Development (TDD) basicTest Driven Development (TDD) basic
Test Driven Development (TDD) basicCurt Park
 
유나이트2015서울 - 큰규모의 MMORPG - 주세영
유나이트2015서울 - 큰규모의 MMORPG - 주세영유나이트2015서울 - 큰규모의 MMORPG - 주세영
유나이트2015서울 - 큰규모의 MMORPG - 주세영Jaeyoung Han
 
Open domain dialogue Chatbot(잡담봇 삽질기)
Open domain dialogue Chatbot(잡담봇 삽질기)Open domain dialogue Chatbot(잡담봇 삽질기)
Open domain dialogue Chatbot(잡담봇 삽질기)NAVER Engineering
 
댓글 감성 분석 상용화 개발기(Ver. 2)
댓글 감성 분석 상용화 개발기(Ver. 2)댓글 감성 분석 상용화 개발기(Ver. 2)
댓글 감성 분석 상용화 개발기(Ver. 2)Jeffrey Kim
 
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현강 민우
 
웹 개발 스터디 02 - javascript, bootstrap
웹 개발 스터디 02 - javascript, bootstrap웹 개발 스터디 02 - javascript, bootstrap
웹 개발 스터디 02 - javascript, bootstrapYu Yongwoo
 
데이터야놀자-발표.pdf
데이터야놀자-발표.pdf데이터야놀자-발표.pdf
데이터야놀자-발표.pdfssusere3f9a4
 
코드리뷰 짝 매칭 프로그램 구현기
코드리뷰 짝 매칭 프로그램 구현기코드리뷰 짝 매칭 프로그램 구현기
코드리뷰 짝 매칭 프로그램 구현기Yong Hoon Kim
 
개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow양 한빛
 
확률의 구현법
확률의 구현법확률의 구현법
확률의 구현법
 
TDD in gameserver 발표자료
TDD in gameserver 발표자료TDD in gameserver 발표자료
TDD in gameserver 발표자료Vong Sik Kong
 
머신러닝의 자연어 처리기술(I)
머신러닝의 자연어 처리기술(I)머신러닝의 자연어 처리기술(I)
머신러닝의 자연어 처리기술(I)홍배 김
 
딥러닝 기반 자연어 언어모델 BERT
딥러닝 기반 자연어 언어모델 BERT딥러닝 기반 자연어 언어모델 BERT
딥러닝 기반 자연어 언어모델 BERTSeonghyun Kim
 
2012 Dm A0 01 Pdf
2012 Dm A0 01 Pdf2012 Dm A0 01 Pdf
2012 Dm A0 01 Pdfjinwookhong
 

Semelhante a 파이썬으로 나만의 강화학습 환경 만들기 (20)

시종설 1조
시종설 1조시종설 1조
시종설 1조
 
Chapter 7 Regularization for deep learning - 2
Chapter 7 Regularization for deep learning - 2Chapter 7 Regularization for deep learning - 2
Chapter 7 Regularization for deep learning - 2
 
코드와 실습으로 이해하는 인공지능
코드와 실습으로 이해하는 인공지능코드와 실습으로 이해하는 인공지능
코드와 실습으로 이해하는 인공지능
 
[IGC 2016] 고정환 액션감성을_밸런스하다
[IGC 2016] 고정환 액션감성을_밸런스하다[IGC 2016] 고정환 액션감성을_밸런스하다
[IGC 2016] 고정환 액션감성을_밸런스하다
 
ESM Mid term Review
ESM Mid term ReviewESM Mid term Review
ESM Mid term Review
 
Ml
MlMl
Ml
 
Test Driven Development (TDD) basic
Test Driven Development (TDD) basicTest Driven Development (TDD) basic
Test Driven Development (TDD) basic
 
유나이트2015서울 - 큰규모의 MMORPG - 주세영
유나이트2015서울 - 큰규모의 MMORPG - 주세영유나이트2015서울 - 큰규모의 MMORPG - 주세영
유나이트2015서울 - 큰규모의 MMORPG - 주세영
 
Open domain dialogue Chatbot(잡담봇 삽질기)
Open domain dialogue Chatbot(잡담봇 삽질기)Open domain dialogue Chatbot(잡담봇 삽질기)
Open domain dialogue Chatbot(잡담봇 삽질기)
 
댓글 감성 분석 상용화 개발기(Ver. 2)
댓글 감성 분석 상용화 개발기(Ver. 2)댓글 감성 분석 상용화 개발기(Ver. 2)
댓글 감성 분석 상용화 개발기(Ver. 2)
 
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
[IGC] 엔씨소프트 이경종 - 강화 학습을 이용한 NPC AI 구현
 
웹 개발 스터디 02 - javascript, bootstrap
웹 개발 스터디 02 - javascript, bootstrap웹 개발 스터디 02 - javascript, bootstrap
웹 개발 스터디 02 - javascript, bootstrap
 
데이터야놀자-발표.pdf
데이터야놀자-발표.pdf데이터야놀자-발표.pdf
데이터야놀자-발표.pdf
 
코드리뷰 짝 매칭 프로그램 구현기
코드리뷰 짝 매칭 프로그램 구현기코드리뷰 짝 매칭 프로그램 구현기
코드리뷰 짝 매칭 프로그램 구현기
 
개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow
 
확률의 구현법
확률의 구현법확률의 구현법
확률의 구현법
 
TDD in gameserver 발표자료
TDD in gameserver 발표자료TDD in gameserver 발표자료
TDD in gameserver 발표자료
 
머신러닝의 자연어 처리기술(I)
머신러닝의 자연어 처리기술(I)머신러닝의 자연어 처리기술(I)
머신러닝의 자연어 처리기술(I)
 
딥러닝 기반 자연어 언어모델 BERT
딥러닝 기반 자연어 언어모델 BERT딥러닝 기반 자연어 언어모델 BERT
딥러닝 기반 자연어 언어모델 BERT
 
2012 Dm A0 01 Pdf
2012 Dm A0 01 Pdf2012 Dm A0 01 Pdf
2012 Dm A0 01 Pdf
 

Mais de 정주 김

SageMaker RL 맛보기
SageMaker RL 맛보기SageMaker RL 맛보기
SageMaker RL 맛보기정주 김
 
소프트웨어 2.0을 활용한 게임 어뷰징 검출
소프트웨어 2.0을 활용한 게임 어뷰징 검출소프트웨어 2.0을 활용한 게임 어뷰징 검출
소프트웨어 2.0을 활용한 게임 어뷰징 검출정주 김
 
Theano 와 Caffe 실습
Theano 와 Caffe 실습 Theano 와 Caffe 실습
Theano 와 Caffe 실습 정주 김
 
파이썬 TDD 101
파이썬 TDD 101파이썬 TDD 101
파이썬 TDD 101정주 김
 
WzDat과 Pandas를 통한 로그 데이터 분석
WzDat과 Pandas를 통한 로그 데이터 분석WzDat과 Pandas를 통한 로그 데이터 분석
WzDat과 Pandas를 통한 로그 데이터 분석정주 김
 
Interactive fiction
Interactive fictionInteractive fiction
Interactive fiction정주 김
 
Deploying flask with nginx & uWSGI
Deploying flask with nginx & uWSGIDeploying flask with nginx & uWSGI
Deploying flask with nginx & uWSGI정주 김
 

Mais de 정주 김 (8)

SageMaker RL 맛보기
SageMaker RL 맛보기SageMaker RL 맛보기
SageMaker RL 맛보기
 
소프트웨어 2.0을 활용한 게임 어뷰징 검출
소프트웨어 2.0을 활용한 게임 어뷰징 검출소프트웨어 2.0을 활용한 게임 어뷰징 검출
소프트웨어 2.0을 활용한 게임 어뷰징 검출
 
Theano 와 Caffe 실습
Theano 와 Caffe 실습 Theano 와 Caffe 실습
Theano 와 Caffe 실습
 
파이썬 TDD 101
파이썬 TDD 101파이썬 TDD 101
파이썬 TDD 101
 
WzDat과 Pandas를 통한 로그 데이터 분석
WzDat과 Pandas를 통한 로그 데이터 분석WzDat과 Pandas를 통한 로그 데이터 분석
WzDat과 Pandas를 통한 로그 데이터 분석
 
Interactive fiction
Interactive fictionInteractive fiction
Interactive fiction
 
Deploying flask with nginx & uWSGI
Deploying flask with nginx & uWSGIDeploying flask with nginx & uWSGI
Deploying flask with nginx & uWSGI
 
Logging 101
Logging 101Logging 101
Logging 101
 

파이썬으로 나만의 강화학습 환경 만들기