[강화학습]01장-강화학습개요

곽서연·2021년 9월 27일
1

📚 주 교재 : 파이썬과 케라스로 배우는 강화학습

위 책을 보면서 공부한 내용을 정리해보았습니다.




✅ 강화학습 개념

우선 강화학습의 개념을 이해하려면 행동심리학과 강화학습, 머신러닝 그리고 강화학습의 연관성에 대해 알아야한다.

강화라는 개념을 처음으로 제시한 스키너라는 행동심리학자는 이 개념을 쥐 실험을 통해 확인했는데

1. 굶긴 쥐를 상자에 넣는다.
2. 쥐는 돌아다니다가 우연히 지렛대를 누르게 되고 지렛대를 누르자마자 먹이가 나온다.
3. 우연히 누른것이기 때문에 누르는 행동과 먹이와의 상관관계를 모르는 쥐는 다시 돌아다닌다.
4. 그러다가 다시 지렛대를 누르게되면 이제 먹이와 지렛대 사이의 상관관계를 알게 되고 점점 지렛대를 자주 누르게된다.
5. 위 과정을 반복하면서 쥐는 지렛대를 누르면 먹이를 먹을 수 있다는 것을 학습하게된다.

▶️ 즉, 강화란 동물이 이전에 배우지 않았지만 직접 시도하면서 행동과 그 결과로 나타나는 좋은 보상 사이의 상관관계를 학습하는 것

▶️ 이런 강화의 개념을 컴퓨터의 학습에 도입한 것이 강화학습이다.




✅ 머신러닝과 강화학습


머신러닝은 지도학습, 비지도학습, 강화학습 이렇게 크게 3가지로 나뉜다.

  • 지도학습
    - "정답"을 알고 있는 데이터를 이용해 컴퓨터를 학습시킴.
    - 컴퓨터는 자신이 낸 답과 정답의 차이를 통해 지속해서 학습함.(회귀분석, 분류 등 많은 머신러닝 기법들이 해당됨)

  • 비지도학습
    - 정답이 없이 주어진 데이터로만 학습함.(대표적으로 군집화(Clustering)가 해당됨)
    - ex) 페이스북에서 비슷한 성향을 가진 사람들끼리 묶음

  • 강화학습
    - 정답이 주어진 것은 아니지만 그저 주어진 데이터에 대해 학습하는 것도 아니기때문에 지도학습, 비지도학습과는 성격이 다름
    - 보상(reward)을 통해 학습한다.
    - 여기서 보상은 컴퓨터가 선택한 행동에대한 환경의 반응이다.
    - 보상은 직접적인 답은 아니지만 컴퓨터에게는 간접적인 정답의 역할을 한다.




    ▶️ 강화학습을 통해 스스로 학습하는 컴퓨터를 에이전트라(agent)할것임

    ▶️ 에이전트는 자신의 행동과 행동의 결과를 보상을 통해 학습하면서 어떤 행동을 해야 좋은 결과를 얻게 되는지 알게된다.

    ▶️ 강화학습의 목적은 에이전트가 환경을 탐색하면서 얻는 보상들의 합을 최대화하는 '최적의 행동양식, 또는 정책'을 학습하는 것이다.

    ▶️ 강화학습장점
    - 환경에 대한 사전지식이 없어도 학습한다.




    ✅ 강화학습 문제


    ▶️ 강화학습은 결정을 순차적으로 내려야하는 문제에 적용된다.

    ▶️ 어떠한 문제를 컴퓨터가 풀기 위해서는 문제를 수학적으로 정의해야한다.

    ▶️ MDP(Markov Decision Process)는 순차적 행동 결정 문제를 수학적으로 정의해서 에이전트가 순차적 행동 결정 문제에 접근할 수 있게한다.

    ▶️ MDP는 상태, 행동, 보상, 정책으로 구성되어있다.




0개의 댓글