-
Notifications
You must be signed in to change notification settings - Fork 48
왜 강화학습을 공부해야 하는가
이 문서는 RLKorea 운영진 및 소수의 멤버분들의 의견을 모아 만든 자료입니다. 틀린 점이 있을 수 있습니다.
최근에 강화학습을 공부하기 시작하는 분들이 많습니다. 사람마다 강화학습을 공부하는 이유는 여러가지가 있습니다. 저희가 생각하는 강화학습을 공부해야하는 이유를 간단히 4가지로 정리해봤습니다.
Reinforcement Learning(강화학습)은 Supervised Learning(지도학습), Unsupervised Learning(비지도학습)과는 달리 Agent(에이전트) 가 존재합니다. 에이전트는 주어진 환경에서 환경과 상호작용하면서 스스로 행동을 선택하여 학습에 필요한 데이터를 모읍니다. 학습을 하기 위해 새로운 정보가 필요하다면 에이전트는 Exploration(탐험, 탐사) 을 할 것이고, 이미 충분히 환경을 탐험했다면 주어진 데이터에 대해서 Exploitation(이용, 활용) 을 할 것입니다. 사람도 새로운 환경에서 무엇인가를 배울 때 에이전트와 같이 환경과 상호작용하면서 스스로 데이터를 수집하면서 학습합니다. 따라서 강화학습이 다른 학습기법들보다 조금 더 사람의 학습 방법에 가깝다고 말할 수 있습니다.
강화학습의 중요한 특징 중 하나는 경험을 통해 학습 한다는 것입니다. Trial & Error(시행착오) 라고도 부르는 이 방법은 직접 시도하여 경험해본다는 점이 독특합니다. 하지만 에이전트가 반드시 시도를 통해 혹은 경험을 통해 학습해야 하기 때문에 비효율적이라는 단점도 있습니다. 이러한 단점을 비롯하여 많은 부분들에 있어서 비효율적인 점들이 보이지만, 앞으로 발전할 수 있는 점들도 많기에 저희들은 미래에 투자한다는 개념으로 강화학습을 공부하고 있습니다.
딥러닝 분야에서 유명한 국제 학회는 ICML, ICLR, NIPS 등이 있습니다.
아래의 그림은 2018년 ICML에 제출된 분야별 논문의 수와 이에 대한 인정된 논문의 수입니다. 보시는 것과 같이 강화학습이 2위로 제출된 논문의 수가 많습니다. 재밌는 것은 제출된 논문의 수는 2위지만 인정된 논문의 수는 1위라는 점입니다. 그만큼 학회에서도 강화학습을 눈여겨 보고 있고, 다른 분야보다도 강화학습 논문을 더 인정한다고 볼 수 있습니다.
이어서 아래의 첫 번째 그림은 2018년 ICLR에 제출된 논문이고 분야별로 몇 개의 논문이 제출되었는지를 보여줍니다. 무수히 많은 논문이 쏟아지는 GAN 보다도 더 많은 논문이 제출된 것을 볼 수 있습니다. 두번째 그림은 2019년 ICLR에 제출된 논문을 보여줍니다. 흥미로운 점은 GAN의 논문 수는 줄어든 반면 강화학습의 논문 수는 더 늘었다 는 것입니다.
논문의 숫자가 해당 분야의 트렌드를 보여주는 것은 아닐 수도 있습니다. 하지만 강화학습과 다른 분야들의 논문 수의 차이를 봤을 때 학계의 관심이 강화학습으로 집중되어 있고 강화학습이 활발히 연구되고 있다는 것을 알 수 있습니다.
현재 인공지능 분야는 거대한 IT 기업들이 선도해가고 있습니다. 구글, 페이스북, 마이크로소프트, OpenAI에서 많은 딥러닝 논문을 출판하고 있습니다. 특히 DeepMind와 OpenAI에서 수많은 강화학습 논문을 내고 있습니다. Google brain, FAIR(Facebook AI Research)와 Microsoft Research에서도 꾸준히 강화학습 논문을 내고 있습니다. 학계가 아닌 기업에서 활발히 강화학습을 한다는 사실을 보면 강화학습은 미래가 밝은 기술이라고 생각할 수 있습니다. 또한 점점 다양한 application에 적용한 논문이 나오는 것을 보면 강화학습이 적용되는 범위가 넓어지고 있다는 것을 알 수 있습니다.
딥러닝은 크게 Vision(영상), NLP(자연어처리), Sound(음성)와 같은 Domain(도메인)으로 나눌 수 있습니다. 그렇다면 강화학습은 어떻게 나눠볼 수 있을까요? 강화학습은 Game(게임), Control(제어), NLP(자연어처리), Vision(영상), Recommender system(추천), Optimization(최적화) 으로 나눠볼 수 있습니다. 각 도메인에 속한 엔지니어는 그 도메인의 문제를 풀기 위해 다양한 기술을 사용합니다. 1, 2, 3에서 말한 이유가 아닌 현재 직면하고 있는 문제를 풀기 위해 강화학습을 공부해야하는 경우도 있습니다. 각 도메인 별로 간단히 예시를 들어보겠습니다.
- Game(게임)
- 대전게임에서 상대해주는 에이전트
- 게임 레벨 컨트롤
- Control(제어)
- 차량의 거동 결정(차선을 바꾸고 싶은지, 핸들을 틀고 싶은지)
- 공장 로봇 자동화
- 사람의 업무를 보조하는 로봇
- 의수나 근육 보조 로봇
- 서비스 로봇
- CPS(사이버 물리 시스템)상에서의 안전성
- 전력 시스템
- 도시 문제
- 자연어처리
- 챗봇의 좀 더 자연스러운 대화
- 비전
- Object tracking
- Segmentation 보조하는 에이전트
- 추천
- 실시간으로 사용자의 상황에 따라 추천(피드 추천, 광고 추천)
- 최적화
- 데이터센터 에너지 최적화
- 최적 설계
- Task scheduling
- Neural Architecture Search
4가지로 강화학습을 공부해야하는 이유를 설명했습니다. 강화학습은 조금 더 진정한 인공지능에 가까울 가능성을 제공해주기 때문에 많은 기업과 연구실에서 활발히 연구를 하고 있으며, 점점 현실의 문제에 적용되고 있습니다. 강화학습을 공부하기 시작하기에 정말 좋은 때라고 생각합니다! 함께 공부하시죠!!