본문 바로가기

강화학습9

강화학습 실습 코드 보호되어 있는 글 입니다. 2023. 5. 23.
강화 학습 8. The Asynchronous Advantage Actor Critic(A3C) Network 서론 DQN(Deep Q Network)이 Atari 게임을 플레이하기 위해 학습을 일반화하는 데 어떻게 성공했는지 알아보았다. 그러나 많은 양의 계산 능력과 훈련 시간이 필요했다. 그래서 Google의 DeepMind는 A3C(Asynchronous Advantage Actor Critic) 알고리즘이라는 새로운 알고리즘을 도입했는데, 이 알고리즘은 계산 능력과 교육 시간이 덜 필요하다는 장점이 있다. A3C의 기본 아이디어는 병렬 학습을 위해 여러 에이전트를 사용하고 전체 경험을 집계한다는 것이다. 이 페이지에서 A3C 네트워크가 어떻게 작동하는지 알아보자. 사전 지식 Advantage Function Q 함수가 상태 𝑠에서 에이전트가 행동 𝑎을 수행하는 것이 얼마나 좋은지 지정하고 가치 함수(val.. 2023. 5. 23.
강화 학습 7. Deep Q Network(DQN) 서론 DQN(Deep Q Network)은 DRL(심층 강화 학습) 알고리즘이자 딥러닝과 강화학습을 결합한 알고리즘이다. DQN은 딥러닝 신경망을 사용하여 강화학습 에이전트를 학습시키고, 최적의 행동을 결정하는 Q-함수를 근사하는 방식을 가진다. 이전의 강화학습 알고리즘과 달리, 특징 추출기와 Q-함수 근사기를 하나의 신경망으로 통합하여 end-to-end 학습이 가능해졌다. 이를 통해 데이터 처리 속도가 향상되어 효과적인 학습이 가능해졌으며, 여러 복잡한 게임에서 인간 수준의 성능을 보이는 결과를 얻었다. 이 알고리즘을 제시한 Google의 DeepMind 연구원은 게임 화면을 입력으로 사용하여 모든 Atari(아타리) 게임을 할 때 인간 수준의 결과를 얻었다. Deep Q Networks (DQNs).. 2023. 5. 16.
강화 학습 6.Deep Learning Fundamentals 서론 딥러닝이 발전을 하면서 알파고와 같은 딥러닝과 강화학습이 결합된 형태가 생겨났기에 딥러닝의 간단한 개념에 대해 공부한 다음에 결합된 형태에 대해 알아보자. Artificial Neuron 뉴런은 인간 두뇌의 기본 계산 단위이다. 뉴런은 수상돌기라고 하는 가지 모양의 구조를 통해 외부 환경, 감각 기관 또는 다른 뉴런으로부터 입력을 받는다. 이러한 입력은 강화되거나 약화된다. 즉, 중요도에 따라 가중치가 부여된 다음 체세포(soma, 세포체)에서 함께 합산된다. 그런 다음 세포체에서 이러한 합산된 입력이 처리되어 축삭을 통해 이동하고 다른 뉴런으로 전송된다. 인공뉴런은 입력으로 외부, 센서 혹은 다른 뉴런에서 들어오며 weights를 곱하고 모든 입력의 합한 뒤 bias를 더해준다. 만약 입력이 하나.. 2023. 5. 9.
강화 학습 5.Multi-Armed Bandit (MAB)Problem 서론 이전 장에서 RL 및 여러 RL 알고리즘의 기본 개념과 RL 문제를 MDP(Markov Decision Process)로 모델링하는 방법에 대해 배웠다. MDP를 해결하는 데 사용되는 다양한 모델 기반(model-based) 및 모델 없는(model-free) 알고리즘도 보았다. 이제, RL의 고전적인 문제 중 하나인 MAB(Multi-Armed Bandit) 문제를 볼 것이다. MDP는 일련의 상태(state)와 행동(action)의 시퀀스를 관찰하고, 각 시점에서의 보상(reward)을 최대화하기 위한 최적의 정책(policy)을 찾는 문제로 상태와 행동의 시퀀스를 고려하여 최적의 정책을 찾는 것이 목표이다. 반면, MAB 문제에서는 여러 개의 선택(arm) 중에서 최적의 선택을 찾는 것이 목표.. 2023. 4. 25.
강화 학습 4.Temporal Difference(TD) Learning 서론 Monte Carlo 방법은 에피소드 환경에만 적용된다는 단점과 에피소드가 매우 길면 가치 함수를 계산하기 위해 오랜 시간이 걸린다는 단점이 있다. 따라서 모델 없거나(model-free), 모델 역학(model dynamics)을 미리 알 필요가 없는 비 에피소드 작업에도 적용 가능한 학습 알고리즘인 TD(temporal difference) 학습에 대해 알아보자. TD(Temporal Difference) Learning TD방식은 Monte Carlo로 아이디어와 dynamic programming 아이디어의 결합한 방식이다. Monte Carlo 방법과 마찬가지로 TD 방법은 환경의 dynamics models 없이 원시 경험에서 직접 학습할 수 있다. 또한, DP와 마찬가지로 TD 방법은 .. 2023. 4. 18.
강화 학습 3.Monte Carlo(MC) Methods 서론 MDP에서 최적의 정책을 찾기 위해 DP를 사용하였고, DP를 사용하려면 transition과 reward probabilities를 알고 있는 model dynamics에서 가능하였다. 하지만 model dynamics을 모르는 경우도 있을 것이다. 이 경우 환경에 대한 지식이 없을 때 최적의 정책을 찾는 데 매우 강력한 Monte Carlo 알고리즘을 사용한다. Monte Carlo Methods Monte Carlo는 반복된 무작위 추출(Sampling)을 이용하여 함수의 값을 수리적으로 근사하는 알고리즘으로 매우 통계적인 방법이다. 이 방법은 물리학과 공학, 컴퓨터 과학 등 다양한 분야에서 가장 인기 있고 가장 일반적으로 사용되는 알고리즘 중 하나이다. Ex: Estimating the Va.. 2023. 4. 4.
강화 학습 2. Markov Decision Process(MDP) and Dynamic Programming(DP) 서론 Markov Decision Process(MDP)는 강화학습에서 문제 정의할 때 많이 사용되는 기법이다. Dynamic Programming는 MDP에서 정의한 수식들을 풀어내기 위한 방법을 말한다. The Markov chain Markov property & Markov chain Markov Decision Process(MDP)에 대해 알기 전에 Markov property와 Markov chain에 대해 알아야 한다. Markov property란 미래는 과거가 아닌 현재에만 의존하는 조건이다. Markov chain은 다음 상태를 예측하기 위해 이전 상태가 아닌 현재 상태에만 의존하는 확률 모델로 미래는 과거로부터 조건부 독립임을 말하는 모델들을 말한다. 이때, Markov chain은.. 2023. 3. 27.
강화 학습 1.기본 개념 서론 강화학습은 머신러닝과 다른 길로 발전을 하다, AI라는 큰 분야로 통합이 되면서 합쳐진 분야이다. 그렇기에 대충 이야기할 때는 머신러닝이 강화학습의 일부분처럼 말한다.(물론 머신러닝은 데이터에 대한 모델 교육을 위한 다양한 기술을 포함하는 광범위한 분야이며 강화 학습은 이러한 기술 중 하나입니다.) 하지만 실제 공부를 하게 되면 따로따로 공부하게 된다. 머신러닝의 대부분의 분야와 차이가 있기에 무엇을 우선 공부해도 상관은 없지만 보통은 머신러닝을 먼저 공부를 한다. 머신러닝(기계학습, Machine Learning, ML) 머신러닝이란 데이터에서 자동으로 프로그램 학습하는 프로그램이다. ML 알고리즘은 샘플 데이터를 기반으로 예제를 일반화하여 중요한 작업을 수행하는 방법을 파악하여 수학적 모델을 구.. 2023. 3. 11.
반응형