강화학습(Deep Reinforcement Learning)은 아주 많은 분야에서 사용되고 있는 방식이다. 말 그대로 강화 시키는 학습이라 생각하면 된다.
예를 들어 강아지를 훈련 시킨다고 생각해보자 강아지에게 '앉아!' 라고 명령하고 난후 그것을 잘 이행하면 먹이를 주는 방식이 아주 대표적인 강화 학습니다. 강화 학습에서 이러한 보상을 Reward라고하며 적절한 보상을 주게 되면서 학습을 하게 된다.
인간들도 마찬가지로 다양한 경험을 통해 학습을 하게 된다. 경험보다 좋은 학습은 없다고 하는 사람도 있듯이 이러한 방식을 컴퓨터에 딥러닝에 적용하게 된다.
강화 학습에 들어가기전 강화학습에서 많이 사용되는 용어를 정리해보자.
강화학습의 주체가 되는 Actor이 있다. 이제 우리는 이러한 Actor를 학습 시키는 거다. 앞의 예시를 들면 강아지라고 생각하면 쉽다.
다음은 Action 이다. 말그대로 Actor 가 하는 행동이라 생각하면 쉽다. 위의 그림은 쥐이기 때문에 이제 쥐라고 설명하겠다. 쥐가 행동을 한다. 위의 쥐가 행동하는 환경을 Environment 라고 한다. 이러한 행동을 관찰 하는 것을 observation이라고 하는데 나는 state라고 배웠다. 둘다 같은 말이다. 상태를 나타낸다고 생각해도 된다.
이제 쥐가 이러한 환경에서 활동을 할텐데 위의 그림은 미로이기 때문에 미로를 탈출하면 reward를 제공해준다. 보상을 주는 것이다. 이렇게 하게 되면 쥐는 탈출하기위해 노력을 하고 학습을 하게 될것이다.
이것이 강화학습의 기본적인 개념이다.
참고로 강화학습은 엄청나게 오래된 알고리즘이다. 하지만 그당시 더 중요한 머신러닝 딥러닝에 대한 설명이 앞에 있고 뒤에 존재하기 때문에 수업이 끝날때 쯤에 각자 알아서 보라는 경우가 많았기 때문에 공부를 안하는 사람이 많았다고 한다. 하지만 최근에 가장 부활하고 있다고 한다!
이러한 것의 부활을 만들어 낸것이 딥마인드란다. 딥마인드는 구글의 딥러닝 자회사로 알고 있다.
강화학습은 게임에서 가장 활용하기 좋은 예시이다. 게임에는 승리라는 조건과 점수라는 조건이 있기 때문에 잘했을 때 적절한 보상이 주어지기 때문이다. 처음에는 벽돌게임에서 시작했지만 이 하나의 알고리즘이 다른 게임에 적용된다고 한다! 약간 무서운 알고리즘인거 같기도 하다.
이러한 강화학습을 50여개의 게임에 적용을 해보았다고 한다.
아래의 그래프를 보게 되면 가운데 쯤에 그어진 선을 기준으로 왼쪽의 게임은 강화학습이 게임을 더 잘한다고한다. 상당히 많은 수의 게임들이 분포되어있다. 사람보다 잘한다고 한다. 최근에 들은 거로는 스타2게임에 강화학습을 적용했는데 유럽? 북미? 기분 그랜드 마스터 수준의 실력을 나타낸다고 한다.
우리가 알고 있는 강화학습은 또 알파고이다. 알파고도 강화학습으로 탄생한 녀석이다.
딥러닝이 중요해지고 데이터 센터에 투자되는 비용이 많이들고 있다. 이러한 점에서 구글은 데이터 센터에서 사용되는 쿨링 시스템에 강화학습을 적용하게 되었고 비용을 40%를 감축했다고한다. 엄청난 감축이다.
다른 예로는
로보틱스 분야에서는 관절의 움직임 비지니스에서는 재고관리 금융에서는 주식 투자 환경에서는 미디어 등등에서 추전 시스템 등이 강화학습이라 생각한다. 아마? 유튜브 알고리즘이 강화학습이 적용되어있을 것이라 생각한다.
이번 정리는 끝!
'AI > 강화학습' 카테고리의 다른 글
6. Q-Network (0) | 2022.05.16 |
---|---|
2. Playing OpenAI GYM Games (0) | 2022.05.16 |
5. Q-learning in non-deterministic world (0) | 2022.05.16 |
4. Q-learning exploit&exploration and discounted reward (0) | 2022.05.16 |
3. Dummy Q-learning (0) | 2022.05.15 |