SlideShare une entreprise Scribd logo
1  sur  87
Télécharger pour lire hors ligne
Rainbow의
혈관 속 탐험
김경환
발표자 소개
김경환 Kim Kyunghwan
kh.kim@medipixel.io / khsyee@gmail.com
AI Research Engineer at Medipixel
Contributor at ModuLabs
RL Lecturer at {Multicampus, LG, ...}
Hansung University
(Majored in Electronic Information Engineering)
Interests : AI, Reinforcement Learning, (Playing games!)
목차
1. What are we trying to solve?
2. 실험 환경 구성
3. 알고리즘 선정
4. 실험 시행착오
5. 결과
What are we trying to solve ?
About Medipixel
AI를 의료에 접목하여 인류의 삶의 질을 높이는 글로벌 헬스테크 기업
❏ Mission
About Medipixel
❏ Mission
→ 특히, 심혈관질환의 진단 및 치료를 돕는 솔루션을 연구개발
AI를 의료에 접목하여 인류의 삶의 질을 높이는 글로벌 헬스테크 기업
심혈관 질환?
❏ 심혈관 질환이란
● 심장 주변 혈관에 지방질이 쌓여 혈관을 막아 생기는 병
● 전 세계 사망원인 1위 (약 30%)
< 세계 사망 원인 질환 > ref: Global health estimates 2016
심혈관 질환?
❏ 심혈관 질환이란
< 심장 관상동맥 > ref: 위키백과
● 관상동맥: 심장에 혈액을 공급하는 동맥
심혈관 질환?
❏ 심혈관 질환이란
정상 관상동맥
일부 막힘
완전히 막힘
ref: 서울아산병원 메디컬칼럼, 아스피린프로텍트 심혈관질환의 종류
< 협심증 >
< 심근경색 >
● 산소 공급 부진
● 가슴 통증, 압박감
● 심장 근육 사망
● 돌연사
심혈관 중재 시술 (PCI)
ref: http://www.secondscount.org/image.axd?id=c8a00122-bb66-46c6-8ab7-333a9a0cd46a&t=635566481777430000
https://www.mcvs.co.nz/wp-content/uploads/2017/05/stent-balloon-angioplasty.png
❏ 시술 방법
● 허벅지 위쪽 또는 팔의 혈관을 통해 와이어를 넣어 심혈관 병변부위에 접근
● 벌룬으로 막힌 혈관 부분을 뚫고, 스텐트로 고정
심혈관 중재 시술 (PCI)
ref: 강남세브란스병원 관상동맹 조영술 및 혈관 확장술
❏ 시술 X-ray 이미지
심혈관 중재 시술 자동화
❏ PCI 시술 자동화의 필요성
● 전체 시술 시간동안 X-ray 영상
● 의료진 건강에 큰 부담
● 숙련도에 따른 큰 차이
● 도구를 많이 교체해야함 (고가의 시술도구)
● 약 1시간
● 완전폐쇄병변 등 어려운 시술의 경우 그 이상
로봇과 심혈관 중재 시술
❏ 로봇을 이용한 시술의 예
ref: https://www.corindus.com/
● Corindus: 원격 로봇 조작을 통한 심혈관 중재 시술
로봇과 심혈관 중재 시술
< 기존 수기 시술 > < Manipulator >
< Rotate >
< Translation >
< Rotate >
< Translation >
ref: 아산병원
Medipixel과 심혈관 중재 시술
가이딩카테터 선
정
가이드와이어
삽입
스텐트
배치
시술 종료
카테터 CDSS
스텐트
선정
스텐트 CDSS 와이어 네비게이션 스텐트 네비게이션
가이딩카테터 삽입
카테터 네비게이션
카테터 탐지/분할 와이어 탐지/분할 스텐트 탐지/분할
CAG + CT 정합
ECG 패턴 추출
진단
주혈관 분할
병변 검출/표시
병변 지수 산출
시술 시작시술 준비
와이어 로드맵
진단 시술도구 추천 시술 가이드 & 시술 자동화
❏ 시술 절차와 필요 기술
가이딩카테터 선
정
가이드와이어
삽입
스텐트
배치
시술 종료
카테터 CDSS
스텐트
선정
스텐트 CDSS 와이어 네비게이션 스텐트 네비게이션
가이딩카테터 삽입
카테터 네비게이션
카테터 탐지/분할 와이어 탐지/분할 스텐트 탐지/분할
CAG + CT 정합
ECG 패턴 추출
진단
주혈관 분할
병변 검출/표시
병변 지수 산출
시술 시작시술 준비
와이어 로드맵
진단 시술도구 추천 시술 가이드 & 시술 자동화
Medipixel과 심혈관 중재 시술
❏ 시술 절차와 필요 기술
가이드와이어 제어
로봇을 이용해 가이드와이어를 병변부위까지 자동으로 이동시키자 !
❏ 목표
가이드와이어 제어
로봇을 이용해 가이드와이어를 병변부위까지 자동으로 이동시키자 !
❏ 목표
→ How ?
와이어 제어의 어려움
❏ 가이드와이어의 특성
● Flexible
○ 와이어가 휘어져있는 형태를 제대로 파악하기 어려움
● Friction
○ 와이어를 카테터라는 관을 통해 이동시킴
○ 측정 불가능한 마찰이 발생
와이어 제어의 어려움
❏ 가이드와이어의 특성
● Flexible
○ 와이어가 휘어져있는 형태를 제대로 파악하기 어려움
● Friction
○ 와이어를 카테터라는 관을 통해 이동시킴
○ 측정 불가능한 마찰이 발생
모델링이 불가능 → 기존 제어 방법으로 풀기 어려움
와이어 제어의 어려움
❏ 강화학습으로 접근
ref: OpenAI Dexture Hand: https://arxiv.org/abs/1808.00177
Imperial College Deformable Object Manipulation: https://arxiv.org/abs/1806.07851
● 강화학습으로 로봇제어하는 사례가 많음
● 특히, 비슷한 문제인 Deformable Object Manipulation 문제를
○ 강화학습으로 해결한 사례가 존재
가이드와이어 제어
가이드와이어를 병변부위까지 이동시키는 강화학습 Agent를 만들자 !
❏ 목표
실험 환경 구성
실제 시술 환경
❏ 의사의 시술 과정
ref: https://www.researchgate.net/figure/CAG-images-of-the-first-PCI-a-Coronary-stenosis-in-the-proximal-mid-portion-of-LAD_fig1_316498381
< 조영제 투입 > < 조영제 투입 X >
실제 시술 환경
❏ 의사의 시술 과정
ref: https://commons.wikimedia.org/wiki/File:Wellens%27_Warning.gif
< 조영제 투입 >
실제 시술 환경
❏ 의사의 시술 사이클
ref: https://www.researchgate.net/figure/CAG-images-of-the-first-PCI-a-Coronary-stenosis-in-the-proximal-mid-portion-of-LAD_fig1_316498381
X-ray 이미지
시술자
가이드와이어 이동
환자 및 시술 장비
실험 환경 구상
❏ 실험 도구
● Manipulator (아산병원)
● 의료 도구: 카테터, 가이드와이어
● 2D 혈관 모형
● 카메라
● 실험실 (암실)
실험 환경 구상
❏ 2D 혈관 모형
카테터
가이드와이어
ref: 위키백과
실험 환경 구상
❏ 실험실과 실험 환경 예상도
실험 환경 구상
❏ 내부 환경 세팅
실험 환경 구상
❏ 강화학습 실험 사이클
카메라 RGB 이미지
Agent
가이드와이어 이동
Manipulator Control
실험 환경
알고리즘 선정
알고리즘
❏ Research
OpenAI: Dexterous Hand
Imperial College:
Deformable Object Manipulation
UC Berkeley:
Walking Minitaur Robot
ref: OpenAI Dexture Hand: https://arxiv.org/abs/1808.00177
Imperial College Deformable Object Manipulation: https://arxiv.org/abs/1806.07851
UC Berkeley Walking Minitaur Robot: https://arxiv.org/pdf/1812.11103
알고리즘
❏ Research
OpenAI: Dexterous Hand
Imperial College:
Deformable Object Manipulation
UC Berkeley:
Walking Minitaur Robot
ref: OpenAI Dexture Hand: https://arxiv.org/abs/1808.00177
Imperial College Deformable Object Manipulation: https://arxiv.org/abs/1806.07851
UC Berkeley Walking Minitaur Robot: https://arxiv.org/pdf/1812.11103
→ PPO → DDPG → SAC
알고리즘
❏ Research
● Manipulator → 주로 Continuous action space
● Continuous action → Policy gradient method
● Simulator 없음
○ sim2real 불가능
○ 분산 처리 불가능 → On-policy 보단 Off-policy
알고리즘
❏ Research
DDPG
TD3
SAC
Main algorithms Sub algorithms
● from Demonstration
● HER
● Behavior cloning
알고리즘
❏ Research
DDPG
TD3
SAC
Main algorithms Sub algorithms
● from Demonstration
● HER
● Behavior cloning
But...
알고리즘
❏ 생각과 달랐던 부분
● HW의 동작: 한 번에 한 가지 action만 입력 가능
○ Continuous action은 보통 동시 입력
■ ex. [전진, 후진, 회전] => [0.23, 0.34, 0.5]
● 데모 생성 위한 I/O가 keyboard 입력
○ keyboard 입력으로 continuous action을 어떻게 재현할까?
알고리즘
❏ 생각의 전환
● 동시 action이 없다면 굳이 넓은 continuous space로 해야할까?
● Discrete action이라면
○ keyboard 입력으로도 쉽게 데모를 만들 수 있지 않나?
알고리즘
❏ 생각의 전환
Discrete action space로 가보자 !
● 동시 action이 없다면 굳이 넓은 continuous space로 해야할까?
● Discrete action이라면
○ keyboard 입력으로도 쉽게 데모를 만들 수 있지 않나?
알고리즘
❏ Research
SAC
Main algorithms Sub algorithms
● from Demonstration
● HER
● Behavior cloningDQN Rainbow
알고리즘
❏ Research
SAC
Main algorithms Sub algorithms
● from Demonstration
● HER
● Behavior cloningDQN Rainbow
알고리즘 구현
❏ Module을 직접 구현하기로 결정
● Customize가 용이한 모듈이 필요
● 필요한 algorithm들이 통합적으로, 사용하기 쉽게 구현된 모듈이 없었음
○ rl-kit, Dopamine, …
● 기존 모듈에 적응하는 것보다 직접 구현하는게 더 빠르다고 판단
알고리즘 구현
❏ Module을 직접 구현하기로 결정
● Customize가 용이한 모듈이 필요
● 필요한 algorithm들이 통합적으로, 사용하기 쉽게 구현된 모듈이 없었음
○ rl-kit, Dopamine, …
● 기존 모듈에 적응하는 것보다 직접 구현하는게 더 빠르다고 판단
https://github.com/medipixel/rl_algorithms
알고리즘 Test
❏ LunarLander-v2
< LunarLander with RainbowDQN >
실험 시행착오
목표
❏ 2D 혈관 모형 실험의 목표
● 카테터 입구부터 시작하여
● 분지 1 (proximal) 을 통과 후
● 분지 2 (distal) 도 통과하여
● 지정된 최종 goal 도착
● goal은 양쪽 중 하나만 지정
분지 1
분지 2
Proximal case
초기 State
❏ Resize & gray scale
640 x 480 x 3 150 x 150 x 1
resize
gray scale
초기 State
State로 또 어떤 정보를 줄 수 있을까?
초기 State
❏ Pathmap
150 x 150 x 1
초기 State
❏ Tip crop mask image
640 x 480 x 3 40 x 40 x 1
초기 State
❏ Pathmap + Tip crop mask image
resize
150 x 150 x 3
CNN
40 x 40 x 1
초기 State
Image 이외에 다른 state도 함께 넣어주면 잘하지 않을까?
( fully observable state )
초기 State
❏ Extra state
● 현재 tip position (x, y)
● episode goal position (x, y)
● tip angle
● manipulator rotate 값
초기 State
❏ extra state 추가
CNN
+concat FC Layer Q-value
- 현재 tip position (x, y)
- episode goal position (x, y)
- tip angle
- manipulator rotate 값
14400
6
Proximal case 실험
❏ State
● image state: 150 x 150 x 3
● extra state: 6
❏ Action
● action size: 4
● Forward, Backward, CW Rotate, CCW Rotate
Proximal case 실험
❏ Reward
● 매 step: -0.001
● goal 도달: 0
● wrong terminal 도달: -0.5
● [-1, 0] 범위를 갖도록 설계
❏ Demonstration
● 20 episode
● 약 1,600 steps transition
● pre-train 1,000 step
❏ Episode
● 1 Episode 당 500 steps
Proximal case 결과
❏ Bad ...
● Memory 문제
○ 150 x 150 x 3 의 state를 replay buffer(100,000) 저장하려면
○ 60GB 이상의 메모리가 필요
● pathmap과 tip image의 효과가 미비함
○ sparse image 문제
■ tip image의 경우 이미지 크기에 비해 값을 갖는 pixel이 적음
State 개편
step 0 step 1 step 2
❏ 기존 state의 문제
State 개편
step 0 step 1 step 2
❏ 기존 state의 문제
action에 의해 바뀌는 state가 전체 image에 비해 매우 적은 부분을 차지
State 개편
❏ 기존 state의 문제
● Tip 기준으로 crop한 이미지를 state로 쓰면 어떨까?
State 개편
❏ 기존 state의 문제
● Tip 기준으로 crop한 이미지를 state로 쓰면 어떨까?
○ 슈퍼마리오 같은 게임도 캐릭터 기준으로 화면이 이동됨
● 기존에 사용하던 tip crop mask image가 필요 없게됨
● image 사이즈로 인한 메모리 문제도 해결
● agent의 action에 따른 state의 변화가 분명해짐
State 개편
❏ Crop state image 전처리
● state image에서 path부분을 더 선명하기 위해 전처리함
● 이전에 만든 pathmap을 overlay
● sharpening 처리
전처리 전 전처리 후
State 개편
❏ Goal position 마킹
● goal에 대한 정보도 image state에 직접 넣어주도록 변경
● agent가 action에 따라 goal에 점점 가까워지는 것을 확인할 수 있도록 함
UI 상의 goal Agent가 보는 goal
Action 개편
❏ Action 변경
● 기존 action: [Forward, Backward, CW Rotate, CCW Rotate]
● HW 설계상 회전의 한계값이 존재 → 한계일 때 같은 action을 주면 동작 불가
❏ 해결
● 가이드와이어의 회전은 회전의 방향에 크게 영향을 받지 않음
● Rotate를 통합 → 한계일 때 반대 방향으로 Rotate하도록 환경 변경
● Agent 입장에서는 action은 줄어들고 stuck 문제는 해결됨
Proximal case 재실험
❏ State
● crop image: 84 x 84 x 4
○ extra state는 자연스럽게 삭제
○ 추가적인 정보를 위해 frame stacking 사용
❏ Action
● action size: 3
● Forward, Backward, Rotate
Proximal case 결과
❏ 성공 !
https://youtu.be/crp-fxGbdb4
Distal case
Distal case 실험
❏ Bad ...
state의 문제
❏ goal까지의 거리가 멀어짐
● 다수의 state에서 goal이 보이지 않음
● agent가 action에 따라 goal에 점점 가까워지는 것을 확인할 수 없게 됨
➢ 시작 지점과 goal이 멀리 떨어져 있음
➢ crop 했을 때 goal 안보임
Subgoal 도입
❏ 팩맨
Subgoal 도입
❏ 팩맨: Subgoal 추가
● 시작과 goal 사이에 subgoal을 추가
● reward는 goal과 동일하게 함
● subgoal은 와이어 tip 끝과 만나면 사라짐
● state에 적어도 한 개의 subgoal이 보이도록 간격 조절
tip이 접히는 문제
❏ Tip folding
● exploration 중 와이어가 잘못 끼어 접히는 문제 발생
● 와이어의 강한 손상 유발
● 최악의 경우 자력으로 회복 불가
tip folding 현상 회복하지 못한 모습
Tip stuck 문제
❏ Tip stuck
● 학습 도중 goal이 아닌 잘못된 분지로 들어가는 경우
● exploration으로 회복하지 못하고 stuck된 상태로 episode가 종료됨
● 학습 속도를 느리게 하는 주 원인
Heuristic backward action
❏ Tip folding & Tip stuck 문제 발생시
● Agent가 일정 step 동안 backward action을 하도록 구현
○ exploration으로 회복하기 어려운 부분을
○ heuristic algorithm으로 도와줌
● 어디까지 backward? → 바로 직전 subgoal까지
stuck restoringtip folding restoring
Distal case 재실험 결과
❏ 성공 !
Success!
결과
결과
https://youtu.be/wIDE0NGT9oM
결과
❏ 정리
● Agent의 action에 따라 변화가 잘 나타나도록 state 설계
○ image state에 학습에 필요한 정보를 표시해 주자!
■ goal position, wrong terminal position, ...
● Agent 학습시 heuristic method가 도와주면 훨씬 빠르게 학습
○ “알아서 잘 학습하겠지” 하고 기대하지 말자!
● 환경을 게임에 대입해 설계
○ 강화학습의 주 실험 환경은 게임
○ action과 reward로 구성된 환경은 게임에서 연상하기 쉽다
Ongoing works
❏ TCT 학회 발표 예정
Ongoing works
❏ Scientific Reports 논문 준비 중
Future works
❏ 3D 혈관 모형 실험 준비 중
● X-ray 영상에서 2D 실험에서와 같은 state를 만들기 위한 이미지 처리
Q&A
감사합니다
Reference
● Sutton, R. and Barto, A., Reinforcement Learning: An Introduction,2nd ed., MIT Press, 2018.
● D. Silver et al.,. “Deterministic policy gradient algorithms.” In ICML, 2014.
● T. Lillicrap et al., “Continuous control with deep reinforcement learning.” arXiv preprint arXiv:1509.02971, 2015.
● M. Vecerık et al., “Leveraging Demonstrations for Deep Reinforcement Learning on Robotics Problems with Sparse Rewards.” CoRR, 2017.
● J. Schulman et al., “Proximal policy optimization algorithms.” arXiv preprint arXiv:1707.06347, 2017.
● M. Andrychowicz et al., “ Hindsight Experience Replay.” Neural Information Processing Systems Conference, 2017.
● A. Nair et al., “Overcoming Exploration in Reinforcement Learning with Demonstrations.” International Conference on Robotics and
Automation, 2017.
● Scott Fujimoto et al., “Addressing function approximation error in actor-critic methods.” arXiv preprint arXiv:1802.09477, 2018.
● Haarnoja et al., “Soft actor-critic: Off-policy maximum entropy deep reinforcement learning with a stochastic actor.” arXiv preprint
arXiv:1801.01290, 2018.
● J. Matas et al., “Sim-to-real reinforcement learning for deformable object manipulation.” CoRL, 2018.
Reference
● V. Mnih et al., "Human-level control through deep reinforcement learning." Nature, 518 (7540):529–533, 2015.
● van Hasselt et al., "Deep Reinforcement Learning with Double Q-learning." arXiv preprint arXiv:1509.06461, 2015.
● T. Schaul et al., "Prioritized Experience Replay." arXiv preprint arXiv:1511.05952, 2015.
● Z. Wang et al., "Dueling Network Architectures for Deep Reinforcement Learning." arXiv preprint arXiv:1511.06581, 2015.
● M. Fortunato et al., "Noisy Networks for Exploration." arXiv preprint arXiv:1706.10295, 2017.
● M. G. Bellemare et al., "A Distributional Perspective on Reinforcement Learning." arXiv preprint arXiv:1707.06887, 2017.
● M. Hessel et al., "Rainbow: Combining Improvements in Deep Reinforcement Learning." arXiv preprint arXiv:1710.02298, 2017.
● T. Hester et al., "Deep Q-learning from Demonstrations." arXiv preprint arXiv:1704.03732, 2017.

Contenu connexe

Tendances

Regularization in deep learning
Regularization in deep learningRegularization in deep learning
Regularization in deep learningVARUN KUMAR
 
Personalisation as the key to optimising your game's revenue & LTV.
Personalisation as the key to optimising your game's revenue & LTV.Personalisation as the key to optimising your game's revenue & LTV.
Personalisation as the key to optimising your game's revenue & LTV.GameCamp
 
GDC Talk: Lifetime Value: The long tail of Mid-Core games
GDC Talk: Lifetime Value: The long tail of Mid-Core gamesGDC Talk: Lifetime Value: The long tail of Mid-Core games
GDC Talk: Lifetime Value: The long tail of Mid-Core gamesTamara (Tammy) Levy
 
AlphaZero: A General Reinforcement Learning Algorithm that Masters Chess, Sho...
AlphaZero: A General Reinforcement Learning Algorithm that Masters Chess, Sho...AlphaZero: A General Reinforcement Learning Algorithm that Masters Chess, Sho...
AlphaZero: A General Reinforcement Learning Algorithm that Masters Chess, Sho...Joonhyung Lee
 
パターン認識 第12章 正則化とパス追跡アルゴリズム
パターン認識 第12章 正則化とパス追跡アルゴリズムパターン認識 第12章 正則化とパス追跡アルゴリズム
パターン認識 第12章 正則化とパス追跡アルゴリズムMiyoshi Yuya
 
[系列活動] 一日搞懂生成式對抗網路
[系列活動] 一日搞懂生成式對抗網路[系列活動] 一日搞懂生成式對抗網路
[系列活動] 一日搞懂生成式對抗網路台灣資料科學年會
 
Boosting_suman
Boosting_sumanBoosting_suman
Boosting_sumansuman_lim
 
Quick Introduction to F2P Mobile Game Analytics
Quick Introduction to F2P Mobile Game AnalyticsQuick Introduction to F2P Mobile Game Analytics
Quick Introduction to F2P Mobile Game AnalyticsKyle Campbell
 
RLCode와 A3C 쉽고 깊게 이해하기
RLCode와 A3C 쉽고 깊게 이해하기RLCode와 A3C 쉽고 깊게 이해하기
RLCode와 A3C 쉽고 깊게 이해하기Woong won Lee
 
[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる R言語によるクラスター分析 - 似ているものをグループ化する-
[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる R言語によるクラスター分析 - 似ているものをグループ化する-[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる R言語によるクラスター分析 - 似ているものをグループ化する-
[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる R言語によるクラスター分析 - 似ているものをグループ化する-Koichi Hamada
 
Reinforcement Learning 2. Multi-armed Bandits
Reinforcement Learning 2. Multi-armed BanditsReinforcement Learning 2. Multi-armed Bandits
Reinforcement Learning 2. Multi-armed BanditsSeung Jae Lee
 
프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법Lee Sangkyoon (Kay)
 
Don't Play Games With Me! Promises and Pitfalls of Gameful Design
Don't Play Games With Me! Promises and Pitfalls of Gameful DesignDon't Play Games With Me! Promises and Pitfalls of Gameful Design
Don't Play Games With Me! Promises and Pitfalls of Gameful DesignSebastian Deterding
 
“Why Should I Trust You?” Explaining the Predictions of Any Classifierの紹介
“Why Should I Trust You?” Explaining the Predictions of Any Classifierの紹介“Why Should I Trust You?” Explaining the Predictions of Any Classifierの紹介
“Why Should I Trust You?” Explaining the Predictions of Any Classifierの紹介KCS Keio Computer Society
 
[第2版]Python機械学習プログラミング 第11章
[第2版]Python機械学習プログラミング 第11章[第2版]Python機械学習プログラミング 第11章
[第2版]Python機械学習プログラミング 第11章Haruki Eguchi
 
Developing an effective LTV model at the soft launch and keeping it valid fur...
Developing an effective LTV model at the soft launch and keeping it valid fur...Developing an effective LTV model at the soft launch and keeping it valid fur...
Developing an effective LTV model at the soft launch and keeping it valid fur...GameCamp
 
Explainable AI in Industry (AAAI 2020 Tutorial)
Explainable AI in Industry (AAAI 2020 Tutorial)Explainable AI in Industry (AAAI 2020 Tutorial)
Explainable AI in Industry (AAAI 2020 Tutorial)Krishnaram Kenthapadi
 

Tendances (20)

Regularization in deep learning
Regularization in deep learningRegularization in deep learning
Regularization in deep learning
 
Personalisation as the key to optimising your game's revenue & LTV.
Personalisation as the key to optimising your game's revenue & LTV.Personalisation as the key to optimising your game's revenue & LTV.
Personalisation as the key to optimising your game's revenue & LTV.
 
GDC Talk: Lifetime Value: The long tail of Mid-Core games
GDC Talk: Lifetime Value: The long tail of Mid-Core gamesGDC Talk: Lifetime Value: The long tail of Mid-Core games
GDC Talk: Lifetime Value: The long tail of Mid-Core games
 
AlphaZero: A General Reinforcement Learning Algorithm that Masters Chess, Sho...
AlphaZero: A General Reinforcement Learning Algorithm that Masters Chess, Sho...AlphaZero: A General Reinforcement Learning Algorithm that Masters Chess, Sho...
AlphaZero: A General Reinforcement Learning Algorithm that Masters Chess, Sho...
 
発売日前のレビューとPU-Learningを用いた
スパムレビュー検出
発売日前のレビューとPU-Learningを用いた
スパムレビュー検出発売日前のレビューとPU-Learningを用いた
スパムレビュー検出
発売日前のレビューとPU-Learningを用いた
スパムレビュー検出
 
パターン認識 第12章 正則化とパス追跡アルゴリズム
パターン認識 第12章 正則化とパス追跡アルゴリズムパターン認識 第12章 正則化とパス追跡アルゴリズム
パターン認識 第12章 正則化とパス追跡アルゴリズム
 
Python串列資料應用
Python串列資料應用Python串列資料應用
Python串列資料應用
 
[系列活動] 一日搞懂生成式對抗網路
[系列活動] 一日搞懂生成式對抗網路[系列活動] 一日搞懂生成式對抗網路
[系列活動] 一日搞懂生成式對抗網路
 
Boosting_suman
Boosting_sumanBoosting_suman
Boosting_suman
 
Quick Introduction to F2P Mobile Game Analytics
Quick Introduction to F2P Mobile Game AnalyticsQuick Introduction to F2P Mobile Game Analytics
Quick Introduction to F2P Mobile Game Analytics
 
RLCode와 A3C 쉽고 깊게 이해하기
RLCode와 A3C 쉽고 깊게 이해하기RLCode와 A3C 쉽고 깊게 이해하기
RLCode와 A3C 쉽고 깊게 이해하기
 
Random Forestsとその応用
Random Forestsとその応用Random Forestsとその応用
Random Forestsとその応用
 
[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる R言語によるクラスター分析 - 似ているものをグループ化する-
[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる R言語によるクラスター分析 - 似ているものをグループ化する-[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる R言語によるクラスター分析 - 似ているものをグループ化する-
[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる R言語によるクラスター分析 - 似ているものをグループ化する-
 
Reinforcement Learning 2. Multi-armed Bandits
Reinforcement Learning 2. Multi-armed BanditsReinforcement Learning 2. Multi-armed Bandits
Reinforcement Learning 2. Multi-armed Bandits
 
프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법
 
Don't Play Games With Me! Promises and Pitfalls of Gameful Design
Don't Play Games With Me! Promises and Pitfalls of Gameful DesignDon't Play Games With Me! Promises and Pitfalls of Gameful Design
Don't Play Games With Me! Promises and Pitfalls of Gameful Design
 
“Why Should I Trust You?” Explaining the Predictions of Any Classifierの紹介
“Why Should I Trust You?” Explaining the Predictions of Any Classifierの紹介“Why Should I Trust You?” Explaining the Predictions of Any Classifierの紹介
“Why Should I Trust You?” Explaining the Predictions of Any Classifierの紹介
 
[第2版]Python機械学習プログラミング 第11章
[第2版]Python機械学習プログラミング 第11章[第2版]Python機械学習プログラミング 第11章
[第2版]Python機械学習プログラミング 第11章
 
Developing an effective LTV model at the soft launch and keeping it valid fur...
Developing an effective LTV model at the soft launch and keeping it valid fur...Developing an effective LTV model at the soft launch and keeping it valid fur...
Developing an effective LTV model at the soft launch and keeping it valid fur...
 
Explainable AI in Industry (AAAI 2020 Tutorial)
Explainable AI in Industry (AAAI 2020 Tutorial)Explainable AI in Industry (AAAI 2020 Tutorial)
Explainable AI in Industry (AAAI 2020 Tutorial)
 

Similaire à Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)

Nationality recognition
Nationality recognitionNationality recognition
Nationality recognition준영 박
 
Pycon Korea 2018 머신러닝으로 치매 정복하기
Pycon Korea 2018 머신러닝으로 치매 정복하기Pycon Korea 2018 머신러닝으로 치매 정복하기
Pycon Korea 2018 머신러닝으로 치매 정복하기Park Sejin
 
밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장Sunggon Song
 
한국인공지능연구소 강화학습랩 결과보고서
한국인공지능연구소 강화학습랩 결과보고서한국인공지능연구소 강화학습랩 결과보고서
한국인공지능연구소 강화학습랩 결과보고서Euijin Jeong
 
Deep Learning for AI (1)
Deep Learning for AI (1)Deep Learning for AI (1)
Deep Learning for AI (1)Dongheon Lee
 
파이썬과 케라스로 배우는 강화학습 저자특강
파이썬과 케라스로 배우는 강화학습 저자특강파이썬과 케라스로 배우는 강화학습 저자특강
파이썬과 케라스로 배우는 강화학습 저자특강Woong won Lee
 
Direct x 12 초기화
Direct x 12 초기화Direct x 12 초기화
Direct x 12 초기화QooJuice
 
주가_변화시점탐지(Change point Detection)
주가_변화시점탐지(Change point Detection)주가_변화시점탐지(Change point Detection)
주가_변화시점탐지(Change point Detection)Seung-Woo Kang
 
[D2] java 애플리케이션 트러블 슈팅 사례 & pinpoint
[D2] java 애플리케이션 트러블 슈팅 사례 & pinpoint [D2] java 애플리케이션 트러블 슈팅 사례 & pinpoint
[D2] java 애플리케이션 트러블 슈팅 사례 & pinpoint NAVER D2
 
Denoising auto encoders(d a)
Denoising auto encoders(d a)Denoising auto encoders(d a)
Denoising auto encoders(d a)Tae Young Lee
 
데이터분석의 길 5: “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
데이터분석의 길 5:  “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)데이터분석의 길 5:  “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
데이터분석의 길 5: “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)Jaimie Kwon (권재명)
 
"Dataset and metrics for predicting local visible differences" Paper Review
"Dataset and metrics for predicting local visible differences" Paper Review"Dataset and metrics for predicting local visible differences" Paper Review
"Dataset and metrics for predicting local visible differences" Paper ReviewLEE HOSEONG
 
임태현, MMO 서버 개발 포스트 모템, NDC2012
임태현, MMO 서버 개발 포스트 모템, NDC2012임태현, MMO 서버 개발 포스트 모템, NDC2012
임태현, MMO 서버 개발 포스트 모템, NDC2012devCAT Studio, NEXON
 
온라인 게임에서 사례로 살펴보는 디버깅 in NDC2010
온라인 게임에서 사례로 살펴보는 디버깅 in NDC2010온라인 게임에서 사례로 살펴보는 디버깅 in NDC2010
온라인 게임에서 사례로 살펴보는 디버깅 in NDC2010Ryan Park
 
온라인 게임에서 사례로 살펴보는 디버깅 in NDC10
온라인 게임에서 사례로 살펴보는 디버깅 in NDC10온라인 게임에서 사례로 살펴보는 디버깅 in NDC10
온라인 게임에서 사례로 살펴보는 디버깅 in NDC10Ryan Park
 
딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기Myeongju Kim
 
강화학습 기초부터 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
 
Image data augmentatiion
Image data augmentatiionImage data augmentatiion
Image data augmentatiionSubin An
 

Similaire à Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea) (20)

Nationality recognition
Nationality recognitionNationality recognition
Nationality recognition
 
Pycon Korea 2018 머신러닝으로 치매 정복하기
Pycon Korea 2018 머신러닝으로 치매 정복하기Pycon Korea 2018 머신러닝으로 치매 정복하기
Pycon Korea 2018 머신러닝으로 치매 정복하기
 
밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장밑바닥부터 시작하는딥러닝 8장
밑바닥부터 시작하는딥러닝 8장
 
한국인공지능연구소 강화학습랩 결과보고서
한국인공지능연구소 강화학습랩 결과보고서한국인공지능연구소 강화학습랩 결과보고서
한국인공지능연구소 강화학습랩 결과보고서
 
Rl
RlRl
Rl
 
Deep learning overview
Deep learning overviewDeep learning overview
Deep learning overview
 
Deep Learning for AI (1)
Deep Learning for AI (1)Deep Learning for AI (1)
Deep Learning for AI (1)
 
파이썬과 케라스로 배우는 강화학습 저자특강
파이썬과 케라스로 배우는 강화학습 저자특강파이썬과 케라스로 배우는 강화학습 저자특강
파이썬과 케라스로 배우는 강화학습 저자특강
 
Direct x 12 초기화
Direct x 12 초기화Direct x 12 초기화
Direct x 12 초기화
 
주가_변화시점탐지(Change point Detection)
주가_변화시점탐지(Change point Detection)주가_변화시점탐지(Change point Detection)
주가_변화시점탐지(Change point Detection)
 
[D2] java 애플리케이션 트러블 슈팅 사례 & pinpoint
[D2] java 애플리케이션 트러블 슈팅 사례 & pinpoint [D2] java 애플리케이션 트러블 슈팅 사례 & pinpoint
[D2] java 애플리케이션 트러블 슈팅 사례 & pinpoint
 
Denoising auto encoders(d a)
Denoising auto encoders(d a)Denoising auto encoders(d a)
Denoising auto encoders(d a)
 
데이터분석의 길 5: “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
데이터분석의 길 5:  “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)데이터분석의 길 5:  “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
데이터분석의 길 5: “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
 
"Dataset and metrics for predicting local visible differences" Paper Review
"Dataset and metrics for predicting local visible differences" Paper Review"Dataset and metrics for predicting local visible differences" Paper Review
"Dataset and metrics for predicting local visible differences" Paper Review
 
임태현, MMO 서버 개발 포스트 모템, NDC2012
임태현, MMO 서버 개발 포스트 모템, NDC2012임태현, MMO 서버 개발 포스트 모템, NDC2012
임태현, MMO 서버 개발 포스트 모템, NDC2012
 
온라인 게임에서 사례로 살펴보는 디버깅 in NDC2010
온라인 게임에서 사례로 살펴보는 디버깅 in NDC2010온라인 게임에서 사례로 살펴보는 디버깅 in NDC2010
온라인 게임에서 사례로 살펴보는 디버깅 in NDC2010
 
온라인 게임에서 사례로 살펴보는 디버깅 in NDC10
온라인 게임에서 사례로 살펴보는 디버깅 in NDC10온라인 게임에서 사례로 살펴보는 디버깅 in NDC10
온라인 게임에서 사례로 살펴보는 디버깅 in NDC10
 
딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기딥뉴럴넷 클러스터링 실패기
딥뉴럴넷 클러스터링 실패기
 
강화학습 기초부터 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)
 
Image data augmentatiion
Image data augmentatiionImage data augmentatiion
Image data augmentatiion
 

Rainbow의 혈관 속 탐험 (The Rainbow's adventure in the vessel) (RL Korea)

  • 2. 발표자 소개 김경환 Kim Kyunghwan kh.kim@medipixel.io / khsyee@gmail.com AI Research Engineer at Medipixel Contributor at ModuLabs RL Lecturer at {Multicampus, LG, ...} Hansung University (Majored in Electronic Information Engineering) Interests : AI, Reinforcement Learning, (Playing games!)
  • 3. 목차 1. What are we trying to solve? 2. 실험 환경 구성 3. 알고리즘 선정 4. 실험 시행착오 5. 결과
  • 4. What are we trying to solve ?
  • 5. About Medipixel AI를 의료에 접목하여 인류의 삶의 질을 높이는 글로벌 헬스테크 기업 ❏ Mission
  • 6. About Medipixel ❏ Mission → 특히, 심혈관질환의 진단 및 치료를 돕는 솔루션을 연구개발 AI를 의료에 접목하여 인류의 삶의 질을 높이는 글로벌 헬스테크 기업
  • 7. 심혈관 질환? ❏ 심혈관 질환이란 ● 심장 주변 혈관에 지방질이 쌓여 혈관을 막아 생기는 병 ● 전 세계 사망원인 1위 (약 30%) < 세계 사망 원인 질환 > ref: Global health estimates 2016
  • 8. 심혈관 질환? ❏ 심혈관 질환이란 < 심장 관상동맥 > ref: 위키백과 ● 관상동맥: 심장에 혈액을 공급하는 동맥
  • 9. 심혈관 질환? ❏ 심혈관 질환이란 정상 관상동맥 일부 막힘 완전히 막힘 ref: 서울아산병원 메디컬칼럼, 아스피린프로텍트 심혈관질환의 종류 < 협심증 > < 심근경색 > ● 산소 공급 부진 ● 가슴 통증, 압박감 ● 심장 근육 사망 ● 돌연사
  • 10. 심혈관 중재 시술 (PCI) ref: http://www.secondscount.org/image.axd?id=c8a00122-bb66-46c6-8ab7-333a9a0cd46a&t=635566481777430000 https://www.mcvs.co.nz/wp-content/uploads/2017/05/stent-balloon-angioplasty.png ❏ 시술 방법 ● 허벅지 위쪽 또는 팔의 혈관을 통해 와이어를 넣어 심혈관 병변부위에 접근 ● 벌룬으로 막힌 혈관 부분을 뚫고, 스텐트로 고정
  • 11. 심혈관 중재 시술 (PCI) ref: 강남세브란스병원 관상동맹 조영술 및 혈관 확장술 ❏ 시술 X-ray 이미지
  • 12. 심혈관 중재 시술 자동화 ❏ PCI 시술 자동화의 필요성 ● 전체 시술 시간동안 X-ray 영상 ● 의료진 건강에 큰 부담 ● 숙련도에 따른 큰 차이 ● 도구를 많이 교체해야함 (고가의 시술도구) ● 약 1시간 ● 완전폐쇄병변 등 어려운 시술의 경우 그 이상
  • 13. 로봇과 심혈관 중재 시술 ❏ 로봇을 이용한 시술의 예 ref: https://www.corindus.com/ ● Corindus: 원격 로봇 조작을 통한 심혈관 중재 시술
  • 14. 로봇과 심혈관 중재 시술 < 기존 수기 시술 > < Manipulator > < Rotate > < Translation > < Rotate > < Translation > ref: 아산병원
  • 15. Medipixel과 심혈관 중재 시술 가이딩카테터 선 정 가이드와이어 삽입 스텐트 배치 시술 종료 카테터 CDSS 스텐트 선정 스텐트 CDSS 와이어 네비게이션 스텐트 네비게이션 가이딩카테터 삽입 카테터 네비게이션 카테터 탐지/분할 와이어 탐지/분할 스텐트 탐지/분할 CAG + CT 정합 ECG 패턴 추출 진단 주혈관 분할 병변 검출/표시 병변 지수 산출 시술 시작시술 준비 와이어 로드맵 진단 시술도구 추천 시술 가이드 & 시술 자동화 ❏ 시술 절차와 필요 기술
  • 16. 가이딩카테터 선 정 가이드와이어 삽입 스텐트 배치 시술 종료 카테터 CDSS 스텐트 선정 스텐트 CDSS 와이어 네비게이션 스텐트 네비게이션 가이딩카테터 삽입 카테터 네비게이션 카테터 탐지/분할 와이어 탐지/분할 스텐트 탐지/분할 CAG + CT 정합 ECG 패턴 추출 진단 주혈관 분할 병변 검출/표시 병변 지수 산출 시술 시작시술 준비 와이어 로드맵 진단 시술도구 추천 시술 가이드 & 시술 자동화 Medipixel과 심혈관 중재 시술 ❏ 시술 절차와 필요 기술
  • 17. 가이드와이어 제어 로봇을 이용해 가이드와이어를 병변부위까지 자동으로 이동시키자 ! ❏ 목표
  • 18. 가이드와이어 제어 로봇을 이용해 가이드와이어를 병변부위까지 자동으로 이동시키자 ! ❏ 목표 → How ?
  • 19. 와이어 제어의 어려움 ❏ 가이드와이어의 특성 ● Flexible ○ 와이어가 휘어져있는 형태를 제대로 파악하기 어려움 ● Friction ○ 와이어를 카테터라는 관을 통해 이동시킴 ○ 측정 불가능한 마찰이 발생
  • 20. 와이어 제어의 어려움 ❏ 가이드와이어의 특성 ● Flexible ○ 와이어가 휘어져있는 형태를 제대로 파악하기 어려움 ● Friction ○ 와이어를 카테터라는 관을 통해 이동시킴 ○ 측정 불가능한 마찰이 발생 모델링이 불가능 → 기존 제어 방법으로 풀기 어려움
  • 21. 와이어 제어의 어려움 ❏ 강화학습으로 접근 ref: OpenAI Dexture Hand: https://arxiv.org/abs/1808.00177 Imperial College Deformable Object Manipulation: https://arxiv.org/abs/1806.07851 ● 강화학습으로 로봇제어하는 사례가 많음 ● 특히, 비슷한 문제인 Deformable Object Manipulation 문제를 ○ 강화학습으로 해결한 사례가 존재
  • 22. 가이드와이어 제어 가이드와이어를 병변부위까지 이동시키는 강화학습 Agent를 만들자 ! ❏ 목표
  • 24. 실제 시술 환경 ❏ 의사의 시술 과정 ref: https://www.researchgate.net/figure/CAG-images-of-the-first-PCI-a-Coronary-stenosis-in-the-proximal-mid-portion-of-LAD_fig1_316498381 < 조영제 투입 > < 조영제 투입 X >
  • 25. 실제 시술 환경 ❏ 의사의 시술 과정 ref: https://commons.wikimedia.org/wiki/File:Wellens%27_Warning.gif < 조영제 투입 >
  • 26. 실제 시술 환경 ❏ 의사의 시술 사이클 ref: https://www.researchgate.net/figure/CAG-images-of-the-first-PCI-a-Coronary-stenosis-in-the-proximal-mid-portion-of-LAD_fig1_316498381 X-ray 이미지 시술자 가이드와이어 이동 환자 및 시술 장비
  • 27. 실험 환경 구상 ❏ 실험 도구 ● Manipulator (아산병원) ● 의료 도구: 카테터, 가이드와이어 ● 2D 혈관 모형 ● 카메라 ● 실험실 (암실)
  • 28. 실험 환경 구상 ❏ 2D 혈관 모형 카테터 가이드와이어 ref: 위키백과
  • 29. 실험 환경 구상 ❏ 실험실과 실험 환경 예상도
  • 30. 실험 환경 구상 ❏ 내부 환경 세팅
  • 31. 실험 환경 구상 ❏ 강화학습 실험 사이클 카메라 RGB 이미지 Agent 가이드와이어 이동 Manipulator Control 실험 환경
  • 33. 알고리즘 ❏ Research OpenAI: Dexterous Hand Imperial College: Deformable Object Manipulation UC Berkeley: Walking Minitaur Robot ref: OpenAI Dexture Hand: https://arxiv.org/abs/1808.00177 Imperial College Deformable Object Manipulation: https://arxiv.org/abs/1806.07851 UC Berkeley Walking Minitaur Robot: https://arxiv.org/pdf/1812.11103
  • 34. 알고리즘 ❏ Research OpenAI: Dexterous Hand Imperial College: Deformable Object Manipulation UC Berkeley: Walking Minitaur Robot ref: OpenAI Dexture Hand: https://arxiv.org/abs/1808.00177 Imperial College Deformable Object Manipulation: https://arxiv.org/abs/1806.07851 UC Berkeley Walking Minitaur Robot: https://arxiv.org/pdf/1812.11103 → PPO → DDPG → SAC
  • 35. 알고리즘 ❏ Research ● Manipulator → 주로 Continuous action space ● Continuous action → Policy gradient method ● Simulator 없음 ○ sim2real 불가능 ○ 분산 처리 불가능 → On-policy 보단 Off-policy
  • 36. 알고리즘 ❏ Research DDPG TD3 SAC Main algorithms Sub algorithms ● from Demonstration ● HER ● Behavior cloning
  • 37. 알고리즘 ❏ Research DDPG TD3 SAC Main algorithms Sub algorithms ● from Demonstration ● HER ● Behavior cloning But...
  • 38. 알고리즘 ❏ 생각과 달랐던 부분 ● HW의 동작: 한 번에 한 가지 action만 입력 가능 ○ Continuous action은 보통 동시 입력 ■ ex. [전진, 후진, 회전] => [0.23, 0.34, 0.5] ● 데모 생성 위한 I/O가 keyboard 입력 ○ keyboard 입력으로 continuous action을 어떻게 재현할까?
  • 39. 알고리즘 ❏ 생각의 전환 ● 동시 action이 없다면 굳이 넓은 continuous space로 해야할까? ● Discrete action이라면 ○ keyboard 입력으로도 쉽게 데모를 만들 수 있지 않나?
  • 40. 알고리즘 ❏ 생각의 전환 Discrete action space로 가보자 ! ● 동시 action이 없다면 굳이 넓은 continuous space로 해야할까? ● Discrete action이라면 ○ keyboard 입력으로도 쉽게 데모를 만들 수 있지 않나?
  • 41. 알고리즘 ❏ Research SAC Main algorithms Sub algorithms ● from Demonstration ● HER ● Behavior cloningDQN Rainbow
  • 42. 알고리즘 ❏ Research SAC Main algorithms Sub algorithms ● from Demonstration ● HER ● Behavior cloningDQN Rainbow
  • 43. 알고리즘 구현 ❏ Module을 직접 구현하기로 결정 ● Customize가 용이한 모듈이 필요 ● 필요한 algorithm들이 통합적으로, 사용하기 쉽게 구현된 모듈이 없었음 ○ rl-kit, Dopamine, … ● 기존 모듈에 적응하는 것보다 직접 구현하는게 더 빠르다고 판단
  • 44. 알고리즘 구현 ❏ Module을 직접 구현하기로 결정 ● Customize가 용이한 모듈이 필요 ● 필요한 algorithm들이 통합적으로, 사용하기 쉽게 구현된 모듈이 없었음 ○ rl-kit, Dopamine, … ● 기존 모듈에 적응하는 것보다 직접 구현하는게 더 빠르다고 판단 https://github.com/medipixel/rl_algorithms
  • 45. 알고리즘 Test ❏ LunarLander-v2 < LunarLander with RainbowDQN >
  • 47. 목표 ❏ 2D 혈관 모형 실험의 목표 ● 카테터 입구부터 시작하여 ● 분지 1 (proximal) 을 통과 후 ● 분지 2 (distal) 도 통과하여 ● 지정된 최종 goal 도착 ● goal은 양쪽 중 하나만 지정 분지 1 분지 2
  • 49. 초기 State ❏ Resize & gray scale 640 x 480 x 3 150 x 150 x 1 resize gray scale
  • 50. 초기 State State로 또 어떤 정보를 줄 수 있을까?
  • 52. 초기 State ❏ Tip crop mask image 640 x 480 x 3 40 x 40 x 1
  • 53. 초기 State ❏ Pathmap + Tip crop mask image resize 150 x 150 x 3 CNN 40 x 40 x 1
  • 54. 초기 State Image 이외에 다른 state도 함께 넣어주면 잘하지 않을까? ( fully observable state )
  • 55. 초기 State ❏ Extra state ● 현재 tip position (x, y) ● episode goal position (x, y) ● tip angle ● manipulator rotate 값
  • 56. 초기 State ❏ extra state 추가 CNN +concat FC Layer Q-value - 현재 tip position (x, y) - episode goal position (x, y) - tip angle - manipulator rotate 값 14400 6
  • 57. Proximal case 실험 ❏ State ● image state: 150 x 150 x 3 ● extra state: 6 ❏ Action ● action size: 4 ● Forward, Backward, CW Rotate, CCW Rotate
  • 58. Proximal case 실험 ❏ Reward ● 매 step: -0.001 ● goal 도달: 0 ● wrong terminal 도달: -0.5 ● [-1, 0] 범위를 갖도록 설계 ❏ Demonstration ● 20 episode ● 약 1,600 steps transition ● pre-train 1,000 step ❏ Episode ● 1 Episode 당 500 steps
  • 59. Proximal case 결과 ❏ Bad ... ● Memory 문제 ○ 150 x 150 x 3 의 state를 replay buffer(100,000) 저장하려면 ○ 60GB 이상의 메모리가 필요 ● pathmap과 tip image의 효과가 미비함 ○ sparse image 문제 ■ tip image의 경우 이미지 크기에 비해 값을 갖는 pixel이 적음
  • 60. State 개편 step 0 step 1 step 2 ❏ 기존 state의 문제
  • 61. State 개편 step 0 step 1 step 2 ❏ 기존 state의 문제 action에 의해 바뀌는 state가 전체 image에 비해 매우 적은 부분을 차지
  • 62. State 개편 ❏ 기존 state의 문제 ● Tip 기준으로 crop한 이미지를 state로 쓰면 어떨까?
  • 63. State 개편 ❏ 기존 state의 문제 ● Tip 기준으로 crop한 이미지를 state로 쓰면 어떨까? ○ 슈퍼마리오 같은 게임도 캐릭터 기준으로 화면이 이동됨 ● 기존에 사용하던 tip crop mask image가 필요 없게됨 ● image 사이즈로 인한 메모리 문제도 해결 ● agent의 action에 따른 state의 변화가 분명해짐
  • 64. State 개편 ❏ Crop state image 전처리 ● state image에서 path부분을 더 선명하기 위해 전처리함 ● 이전에 만든 pathmap을 overlay ● sharpening 처리 전처리 전 전처리 후
  • 65. State 개편 ❏ Goal position 마킹 ● goal에 대한 정보도 image state에 직접 넣어주도록 변경 ● agent가 action에 따라 goal에 점점 가까워지는 것을 확인할 수 있도록 함 UI 상의 goal Agent가 보는 goal
  • 66. Action 개편 ❏ Action 변경 ● 기존 action: [Forward, Backward, CW Rotate, CCW Rotate] ● HW 설계상 회전의 한계값이 존재 → 한계일 때 같은 action을 주면 동작 불가 ❏ 해결 ● 가이드와이어의 회전은 회전의 방향에 크게 영향을 받지 않음 ● Rotate를 통합 → 한계일 때 반대 방향으로 Rotate하도록 환경 변경 ● Agent 입장에서는 action은 줄어들고 stuck 문제는 해결됨
  • 67. Proximal case 재실험 ❏ State ● crop image: 84 x 84 x 4 ○ extra state는 자연스럽게 삭제 ○ 추가적인 정보를 위해 frame stacking 사용 ❏ Action ● action size: 3 ● Forward, Backward, Rotate
  • 68. Proximal case 결과 ❏ 성공 ! https://youtu.be/crp-fxGbdb4
  • 71. state의 문제 ❏ goal까지의 거리가 멀어짐 ● 다수의 state에서 goal이 보이지 않음 ● agent가 action에 따라 goal에 점점 가까워지는 것을 확인할 수 없게 됨 ➢ 시작 지점과 goal이 멀리 떨어져 있음 ➢ crop 했을 때 goal 안보임
  • 73. Subgoal 도입 ❏ 팩맨: Subgoal 추가 ● 시작과 goal 사이에 subgoal을 추가 ● reward는 goal과 동일하게 함 ● subgoal은 와이어 tip 끝과 만나면 사라짐 ● state에 적어도 한 개의 subgoal이 보이도록 간격 조절
  • 74. tip이 접히는 문제 ❏ Tip folding ● exploration 중 와이어가 잘못 끼어 접히는 문제 발생 ● 와이어의 강한 손상 유발 ● 최악의 경우 자력으로 회복 불가 tip folding 현상 회복하지 못한 모습
  • 75. Tip stuck 문제 ❏ Tip stuck ● 학습 도중 goal이 아닌 잘못된 분지로 들어가는 경우 ● exploration으로 회복하지 못하고 stuck된 상태로 episode가 종료됨 ● 학습 속도를 느리게 하는 주 원인
  • 76. Heuristic backward action ❏ Tip folding & Tip stuck 문제 발생시 ● Agent가 일정 step 동안 backward action을 하도록 구현 ○ exploration으로 회복하기 어려운 부분을 ○ heuristic algorithm으로 도와줌 ● 어디까지 backward? → 바로 직전 subgoal까지 stuck restoringtip folding restoring
  • 77. Distal case 재실험 결과 ❏ 성공 ! Success!
  • 80. 결과 ❏ 정리 ● Agent의 action에 따라 변화가 잘 나타나도록 state 설계 ○ image state에 학습에 필요한 정보를 표시해 주자! ■ goal position, wrong terminal position, ... ● Agent 학습시 heuristic method가 도와주면 훨씬 빠르게 학습 ○ “알아서 잘 학습하겠지” 하고 기대하지 말자! ● 환경을 게임에 대입해 설계 ○ 강화학습의 주 실험 환경은 게임 ○ action과 reward로 구성된 환경은 게임에서 연상하기 쉽다
  • 81. Ongoing works ❏ TCT 학회 발표 예정
  • 82. Ongoing works ❏ Scientific Reports 논문 준비 중
  • 83. Future works ❏ 3D 혈관 모형 실험 준비 중 ● X-ray 영상에서 2D 실험에서와 같은 state를 만들기 위한 이미지 처리
  • 84. Q&A
  • 86. Reference ● Sutton, R. and Barto, A., Reinforcement Learning: An Introduction,2nd ed., MIT Press, 2018. ● D. Silver et al.,. “Deterministic policy gradient algorithms.” In ICML, 2014. ● T. Lillicrap et al., “Continuous control with deep reinforcement learning.” arXiv preprint arXiv:1509.02971, 2015. ● M. Vecerık et al., “Leveraging Demonstrations for Deep Reinforcement Learning on Robotics Problems with Sparse Rewards.” CoRR, 2017. ● J. Schulman et al., “Proximal policy optimization algorithms.” arXiv preprint arXiv:1707.06347, 2017. ● M. Andrychowicz et al., “ Hindsight Experience Replay.” Neural Information Processing Systems Conference, 2017. ● A. Nair et al., “Overcoming Exploration in Reinforcement Learning with Demonstrations.” International Conference on Robotics and Automation, 2017. ● Scott Fujimoto et al., “Addressing function approximation error in actor-critic methods.” arXiv preprint arXiv:1802.09477, 2018. ● Haarnoja et al., “Soft actor-critic: Off-policy maximum entropy deep reinforcement learning with a stochastic actor.” arXiv preprint arXiv:1801.01290, 2018. ● J. Matas et al., “Sim-to-real reinforcement learning for deformable object manipulation.” CoRL, 2018.
  • 87. Reference ● V. Mnih et al., "Human-level control through deep reinforcement learning." Nature, 518 (7540):529–533, 2015. ● van Hasselt et al., "Deep Reinforcement Learning with Double Q-learning." arXiv preprint arXiv:1509.06461, 2015. ● T. Schaul et al., "Prioritized Experience Replay." arXiv preprint arXiv:1511.05952, 2015. ● Z. Wang et al., "Dueling Network Architectures for Deep Reinforcement Learning." arXiv preprint arXiv:1511.06581, 2015. ● M. Fortunato et al., "Noisy Networks for Exploration." arXiv preprint arXiv:1706.10295, 2017. ● M. G. Bellemare et al., "A Distributional Perspective on Reinforcement Learning." arXiv preprint arXiv:1707.06887, 2017. ● M. Hessel et al., "Rainbow: Combining Improvements in Deep Reinforcement Learning." arXiv preprint arXiv:1710.02298, 2017. ● T. Hester et al., "Deep Q-learning from Demonstrations." arXiv preprint arXiv:1704.03732, 2017.