임베디드개발자를위한강화학습기초 Wrien by 박 철 (e2g1234@naver.com)
목차 강화학습의개요 확률로본강화학습 MDP(Markov Decision Procss) 가치함수, 큐함수, 정책 벨만방정식 Mone Carlo 부터 Q-learning 까지 Frozen Lake
강화학습의개요
Inelligence The capaciy for raional judgmen (inference), based on imperfec knowledge, adaped wih exprience Learning is forming a condensae (saisical model) of Experienced daa. There is no inelligence wihou uncerainy. GRAPHCORE
Naure of Learning We learn from pas experiences. - When an infan plays, waves is arms, or looks abou, i has no explici eacher - Bu i does have direc ineracion o is environmen. Years of posiive complimens as well as negaive criicism have all helped shape who we are oday. Reinforcemen learning: compuaional approach o learning from ineracion. Richard Suon and Andrew Baro, Reinforcemen Learning: An Inroducion Nishan Shukla, Machine Learning wih TensorFlow
인공지능의분류 학습방법 - 지도학습 - 비지도학습 - 강화학습
강화학습의빠른진화 강화학습의방식은범용적으로활용할수있어, 새로운환경에서학습만반복하면, 하나의알고리즘을가지고다양한환경에적용가능한인공지능을구현해낼수있습니다. 일반인에게인공지능의혁신을알렸던알파고의핵심기술이바로, 강화학습기반이었습니다.
강화학습의빠른진화 알파고이후강화학습을적용한인공지능연구가본격화되면서바둑을넘어다양한분야에강화학습이적용되며혁신을만들어내고있습니다. 하지만, 강화학습기반인공지능의발전은그적용분야가게임환경과같은 2 차원가상환경에서의지능구현이었습니다. 때문에실제인간의환경과는큰차이가있어, 강화학습을현실세계의문제에적용하는것에는한계가있었습니다. 이러한한계를극복하기위해인공지능분야의주요선도연구단체, 기업들은 3 차원환경혹은실제물리적환경에서강화학습을적용하기위한선행연구에집중하기시작했습니다. DQN(ATARI Breakou) -> AlphaGo -> SarCraf hps://gym.openai.com/
기계학습 (Machine Learning) 의분류 Supervised Learning 지도학습 Inpu 과 labels 을이용한학습분류 (classificaion), 회귀 (regression) Y = f(x) Unsupervised Learning 비지도학습 Inpu 만을이용한학습 군집화 (clusering), 압축 (compression) X ~ p(x) or x = f(x) Reinforcemen Learning 강화학습 Label 대신 reward 가주어짐 Acion selecion, policy learning Find a Policy, p(a s) which maximizes he sum of reward
지도학습, 비지도학습과강화학습비교 지도학습. 비지도학습 학습데이터의순서가달라져도학습의결과는달라지지않음. 강화학습 데이터의관측순서가결과에영향을미치는순차적의사결정문제를다룸. Sequenial Decision Making 강화학습은마르코프결정과정 (MDP) 을거친다. 환경과상호작용하는에이전트가현재상태에서행동을선택하고그결과상태가전이되며보상치를입력받는일련의과정 순차적의사결정문제수학적표현또는수학적정의 지도학습수동적, 강화학습능동적 감독학습 : 수동적으로주어진입력과그에대한정답 ( 지도신호 ) 을교사로부터피드백받는다. 강화학습 : 학습자가행동을능동적으로생성해야하며그에대해보상치 ( 평가신호 ) 만을환경으로부터피드백으로받는다.
지도학습과강화학습비교 지도학습 학습자 ( 에이전트 ) 가어떠한행동을선택할지가르침을받음 강화학습 가르침을받지아니하며반드시환경을탐색하여그상황에서수행한행동에따른보상을취득한다. 그과정에서강화학습에는선택하기까다롭지만흥미로운특성이존재하는데, 행동은현재상태의즉각적보상에도영향을미칠뿐만아니라, 다음상황에도영향을미쳐결국이후모든보상에영향을미치는특성이다. ( 마르코프과정 ) 즉시행착오 (rial-and-error) 탐색과지연보상 (delayed reward) 이강화학습을다른기계학습과구별짓는중요한특성이다.
강화학습모델 1. 에이전트가자신의상태를과찰하여특정기준에따라행동을선택함 2. 선택한행동을환경에서실행환경으로부터다음상태와보상을받음 3. 보상을통해에이전트가가진정보를수정함 에이전트 : 상태를관찰, 행동을선택, 목표지향 환경 : 에이전트를뺀나머지 상태 : 현재의상황을내타내는정보 행동 : 현재상태에서필요한동작 보상 : 행동에대한보상
순차적행동결정문제
강화학습요약정리 불확실한상황하에서의사결정을하려면 " 확률 " 에기초하여분석을해야한다. 어떤사건이발생할확률값이시간에따라변화해가는과정을확률적과정 (Sochasic Process) 라고하며, 확률적과정중에서한가지특별한경우가마코프과정 (Markov Process) 이다. 마코프과정은어떤상태가일정한간격으로변하고, 다음상태는현재상태에만의존하며확률적으로변하는경우의상태의변화를뜻한다. 즉, 현재상태에대해서만다음상태가결정되며, 현재상태에이르기까지의과정은전혀고려할필요가없다. 마코프과정에서연속적인시간변화를고려하지않고, 이산적인경우만고려한경우를마코프연쇄 (Markov Chain) 이라고한다. 마코프연쇄는각시행의결과가여러개의미리정해진결과중의하나가되며, 각시행의결과는과거의역사와는무관하며오직바로직전시행의결과에만영향을받는특징을가지고있다. 강화학습을푸는가장기본적인방법두가지는값반복 (Value Ieraion) 과정책반복 (Policy Ieraion) 이다. 이를설명하기위해서는먼저값을정의할필요가있다. 만약우리가특정상태에서시작했을때, 얻을수있을것으로기대하는미래보상의합을구할수있다면해당함수를매번최대로만드는행동을선택할수있을것이고, 이렇게최적의정책함수를구할수있게된다. 바로이미래에얻을수있는보상들의합의기대값을값함수 (Value Funcion) 이라고한다. 이함수는바로현재상태뿐만아니라미래의상태들, 혹은그상태에서얻을수있는보상을구해야하기때문에직관적으로정의할수는없다. 일반적으로강화학습에서는이값함수를구하기위해벨만이퀘이션 (Bellman Equaion) 을활용한다. 출처 : hp://eehoeskrap.isory.com/154
강화학습에사용된확률
확률부터강화학습의관계 Planning 벨만방정식 Value Ieraion/Policy Ieraion Learning MC, TD, e- 그리디 SARSA, Q-learning 순차의사결정 MDP R G V(s)/Q(s) π(s)
확률로본강화학습 순차적행동결정문제를정의한다.
Random( 랜덤 )/Sochasic( 추계 ) 시간적으로미리 ( 사전에 ) 결과에대해정확히예측, 정의할수없다는의미 단, 어떤확률적분포를가질수있다는통계적규칙성은있음 랜덤성 `Random( 무작위 )` 및 `Sochasic( 추계 )` 를같은의미로씀 추계적 (Sochasic) 이란? 불확실성을확률분포로대신하고, 이로부터추세적인상황을묘사함을의미
MDP 의확률과의관계 확률변수 개별사건에대하여확률함수전체사건에대하여확률분포함수 이산확률변수 확률과정 기대치 (Expeced Value), 분산 (Variance), 표준편차 (Sandard Deviaion) 시간에관련된확률적인성격을갖는계 시간에따라확률도변하게됨 ( 확률이론의동적인측면 ) Process( 과정 ) - 시간을고려한상태를말할때는주로 ` 과정 ` 이라고하고, 시간을고려하지않는상태는주로 ` 사건 ` 이라고함따라서, 시간에따라끊임없이일어나는확률적현상을의미함 순서가부여될수있는수많은확률변수 ( 즉, 확률변수수열 ) 로묘사될수있음. 시간적으로무수히많은랜덤변수를다루고있다랜덤과정이어느특정한시각에고정되면,. 이는, 하나의랜덤변수됨 앙상블 : 랜덤과정에나타나는시행결과들의모음 / 총체 마르코프과정 - 이산시간확률과정 특별한확률과정중하나 다음상태의확률값이직전과거에만종속되어있음. ( 즉, 그이전과거의역사와는무관 ) 마르코프체인 / 마르코프의사결정과정
확률의수학적정의 확률은표본이아닌사건을입력으로가지는함수사건 (even) A 는표본공간 Ω 의부분집합 A Ω A P(Ω). Ω(sample space) 1 2 3 4 5 6 1 2 P(Ω) X A P(Ω) 홀수 짝수 P(P(Ω)) P(X) 1/2 1/2 정의역 치역 정의역 치역
표본공간, 확률변수, 확률과정, 확률과정 실험의표본공간 실수공간 확률 확률변수에대하여정의된실수를 0 과 1 사이의실수 ( 확률 ) 에대응시키는함수 실험의표본공간 실수공간 확률
이산확률변수에서 기대값과분산의정의
확률프로세스
Markov Chain 확률론에서, 마르코프연쇄 (Markov chain) 는메모리를갖지않는이산시간확률과정이다. 마르코프연쇄는시간에따른계의상태의변화를나타낸다. 매시간마다계는상태를바꾸거나같은상태를유지한다. 상태의변화를전이라한다. Discree sae space : S = { A, B } Sae ransiion probabiliy : P(S S) = {PAA = 0.7, PAB = 0.3, PBA = 0.5, PBB = 0.5 } Purpose : Finding a seady sae disribuion - 마르코프과정. 다음상태의확률값이직전과거에만종속되어있음. ( 즉, 그이전과거의역사와는무관 )
Markov Decision Process Discree sae space : S = { A, B } Discree acion space : A = { X, Y } (Acion condiional) Sae ransiion probabiliy : P(S S, A) = { } Reward funcion : R(S =A) = +1, R(S =B) = -1 Purpose : Finding an opimal policy (maximizes he expeced sum of fuure reward)
MDP (Markov Decision Procss) 순차적행동결정문제를정의한다. 상태, 행동, 보상함수, 상태변환확률, 감가율
상태 (Sae) Frozen Lake 에는 16 개의상태가있다. S F F F 0 1 2 3 F H F H 4 5 6 7 F F F H 8 9 10 11 H F F G 12 13 14 15
행동 (Acion) S F F F F H F H F F F H H F F G
보상함수 (Reward funcion) S, F : 0 H : -1 G : 1 S F F F 0 0 0 0 F H F H 0-1 0-1 F F F H 0 0 0-1 H F F G -1 0 0 1
상태전이확률 (Sae ransiion probabiliy) S F F F 상태 s 에서 a 가선택됨 F H F H??? F F F H H F F G a 가선택이된이후에선택되어질상태가여러개있으며이를확률로표시한다.
감가율 (Discoun vecor) G G R R 1 R 2 R 3 R 4 R 5... 2 3 4 1 R 2 R 3 R 4 R 5... S 1 F 1 F F F H F H F F F H H F F 1 G 1 1 1 S0.59049 F0.6561 F F 0.729 F H F H 0.81 F F F H 0.9 H F F 1 G
가치함수, 큐함수, 정책 순차적행동결정문제를풀다 Planning : Exhausive Search, Dynamic Programming Learning : Mone Carlo, TD, SARSA, Q-learning
가치함수, 큐함수, 정책관련내용정리 R G V/Q
가치함수, 큐함수 가치함수 현재상태에서미래에받을보상의합에대한기대값 큐함수 기대값을취하는이유는현재상태에는여러액션이있기때문에각액션에따른미래에대하여받을보상의합에대한평균을말하고있다. 현재상태에서행동을취한경우미래에받을보상의합에대한기대값 기대값을취하는이유는액션에따라상태천이확률이있기때문에각각상태에따른미래에대하여받을보상의합에대한평균을말하고있다. 행동을결정할때도확률이있고결정된행동에서상태로갈때도확률이있다. V_bl[16] 로할당됨 S F F F V(0) V(1) V(2) V(3) F H F H V(4) V(5) V(6) V(7) F F F H V(8) V(9) V(10) V(11) H F F G V(12) V(13) V(14) V(15) Q_bl[16][4] 로할당됨 Q(0,2) Q(1,2) Q(2,2) Q(3,2) S F F F Q(0,0) Q(0,1) Q(1,0) Q(1,1) Q(2,0) Q(2,1) Q(3,0) Q(3,1) Q(0,3) Q(1,3) Q(2,3) Q(3,3) Q(4,2) Q(5,2) Q(6,2) Q(7,2) F H F H Q(4,0) Q(4,1) Q(5,0) Q(5,1) Q(6,0) Q(6,1) Q(7,0) Q(7,1) Q(4,3) Q(5,3) Q(6,3) Q(7,3) Q(8,2) Q(9,2) Q(10,2) Q(11,2) F F F H Q(8,0) Q(8,1) Q(9,0) Q(9,1) Q(10,0) Q(10,1) Q(11,0) Q(11,1) Q(8,3) Q(9,3) Q(10,3) Q(11,3) Q(12,2) Q(13,2) Q(14,2) Q(15,2) H F F G Q(12,0) Q(12,1) Q(13,0) Q(13,1) Q(14,0) Q(14,1) Q(15,0) Q(15,1) Q(12,3) Q(13,3) Q(14,3) Q(15,3)
Value Funcion VS Q- Funcion Value funcion : Sae 만고려 Q-funcion : Sae 와 Acion 을같이고려 Value funcion 은각 acion 에확률과 Q-funcion 곱의합 v ( s) ( a s) q( s, a) aa
정책 Policy 정책을모든상태에서에이전트가할행동 상태가입력으로들어오면행동을출력으로내보내는일종의함수 정책은각상태에서단하나의행동만을나타낼수도있고확률적으로 a1 = 10%, a2 = 90% 최적정책 에이전트가강화학습을통하여학습해야하는것 ( a s) P[ A a S s] '( s) argmaxq ( s, a) a
벨만방정식 벨만방정식이라고쓰고다이나믹프로그래밍이라부른다. Planning model base
가치함수의벨만방정식가치함수의벨만방정식 현재상태에서미래의받을보상의합에대한ㄹ 현재상태에서미래의받을보상의합에대한ㄹ ] ) ( [ ] [ ]...) ( [ ]... [ ] [ ) ( 1 1 1 1 3 2 1 3 2 2 1 s S S v R s S G R s S R R R s S R R R s S G s v ' ' ' ) ' ( ), ( ) ( s a ss a ss a s V R P a s s V
큐함수의벨만방정식큐함수의벨만방정식 ], ) ( [ ], [ ],...) ( [ ],... [ ], [ ) ( 1 1 1 1 3 2 1 3 2 2 1 a A s S S q R a A s S G R a A s S R R R a A s S R R R a A s S G s q ' ' ' ) ' ( ), ( ) ( s a ss a ss a s q R P a s s q
Policy Ieraion Policy ieraion consiss of wo simulaneous, ineracing processes. Policy evaluaion (Ieraive formulaion): Firs, make he value funcion more precise wih he curren policy. Policy improvemen (Greedy selecion): Second, make greedy policy greedy wih respec o he curren value funcion. Policy Ieraion = Policy Evaluaion + Policy Improvemen 26
Policy Ieraion 26
MoneCarlo 부터 Q-learning 까지 Sampling 이라고쓰고 learning 이라고읽는다. Model free 여기서부터강화학습
Mone Carlo
Mone Carlo 예측 다이내믹프로그래밍에서강화학습으로넘어가는가장기본적인아이디어 기대값을샘플링을통한평균으로대체하는기법 에피소드를하나진행하고에피소드동안지나온상태의반환값을구함 이반환값은하나의샘플이되어서각상태의가치함수를업데이트함
Temporal-Difference Learning 시간차예측 타임스텝마다가치함수를업데이트함 벨만기대방정식을이용하여가치함수를업데이트한다.
E-greedy 일정한확률로랜덤하게행동선택
SARSA 제어 시간차제어 행동을선택할때 e- 탐욕정책사용 -> 가치함수를사용하지않고큐함수사용 가치함수는환경모델을알아야함 하나의샘플로 (s, a, r, s, a ) 필요함 온폴리시강화학습
Q-learning 오프폴리시강화학습 행동을선택할때 e- 탐욕정책사용 큐함수업데이트에는벨만최적방정식을이용한다. 다음큐함수중에서가장값이큰큐함수를이용해서현재큐함수를업데이트
강화학습알고리즘정리강화학습알고리즘정리 )) ( ) ( ( ) ( ) ( s V G s s V s V 몬테카를로예측 )) ( ) ( ( ) ( ) ( 1 S V S V R S V S V 시간차예측 )), ( ), ( ( ), ( ), ( 1 1 A Q S A Q S R A Q S A S Q 살사큐러닝 )), ( ), ( max ( ), ( ), (, 1 1, a A Q S a Q S R A Q S A S Q E-greedy E-greedy
Frozen Lake
Frozen Lake Demo hp://compuingkoreanlab.com/app/jai/jqlearning/
Frozen Lake MDP(S, A, R, Sae,ransiion Probabiliy, discoun facor R, G, V(s), Q(s), π 다이내믹프로그래밍인경우 TD 인경우 SARSA 인경우 Q-learning 인경우 S F F F F H F H F F F H H F F G
Frozen Lake - Sae/acion Acion = {righ, lef, up, down} Reward : SF(0), H(-1), G(1) Sae ransiion probabiliy : 사용, 미사용 Discoun facor : 사용미사용 S F F F 0 1 2 3 F H F H 4 5 6 7 F F F H 8 9 10 11 H F F G 12 13 14 15
Frozen Lake - Q able 처음에는모든과정이 random 으로진행됨 Discoun facor 는사용하지않음 E-greedy 사용하지않음 0 S F F F 0 0 0 0 0 0 0 0 0 0 1 2 3 F H F H 0 0 0 0 0 0 0 0 0 4 5 6 7 F F F H 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 9 10 11 0 0 0 0 0 H F F G 0 0 0 0 0 0 0 0 12 13 14 15 0 0 0 0 0 0 0 0 0 0 0 0
(1) Acion (righ, lef, up, down) S F F F F H F H (2) sae, reward F F F H H F F G agen Environmen (1) Acion righ S F F F F H F H (2) Sae 1, reward 0 F F F H H F F G agen Environmen
(1) Acion (righ, lef, up, down) S F F F F H F H (2) sae, reward F F F H H F F G agen Environmen
파이썬과케라스로배우는강화학습 hp://wikibook.co.kr/reinforcemen-learning 이웅원님 gibook hps://dnddnjs.gibooks.io/rl/conen/ 김성훈교수님강의자료 hps://hunkim.gihub.io/ml/
Online video lecures A Tuorial on Reinforcemen Learning, hps://simons.berkeley.edu/alks/uorialreinforcemen-learning 2017 Berkeley CS 294: Deep Reinforcemen Learning, Spring 2017 hp://rll.berkeley.edu/deeprlcourse/, 2017 MIT 6.S094: Deep Learning for Self-Driving Cars (Lecure 2) hp://selfdrivingcars.mi.edu/, 2017 Deep Reinforcemen Learning (John Schulman, OpenAI) hps://www.youube.com/wach?v=paih9ksnjo&=2457s (summary) and hps://www.youube.com/wach?v=aurx-rp_ss4&lis=pljkeiqlkctzyn3cyblj8r58sbnorobqcp (4 lecures) UCL, David Silver, Reinforcemen Learning hp://www0.cs.ucl.ac.uk/saff/d.silver/web/teaching.hml, 2015 Sanford Andrew Ng CS229 Lecure 16 hps://www.youube.com/wach?v=rxi449zjsc, 2008
감사합니다. e2g1234@naver.com