본문 바로가기
AI 딥러닝/강화학습

강화학습의 한계

by 세인트 워터멜론 2020. 10. 28.

강화학습이 비약적으로 발전하고 있지만, 로봇이나 드론 등 실제 물리 시스템의 제어에 적용하기에는 아직 극복해야 할 많은 문제를 가지고 있다.

 

 

첫 번째 문제점은 강화학습이 기본 동역학 모델을 알지 못하더라도 환경과의 상호작용을 통해 얻은 데이터만을 가지고 직접 정책을 유도할 수 있다지만, 단순한 작업을 배우는 데에도 너무 많은 시도(try)와 데이터가 필요하다는 점이다. 즉, 샘플 효율성이 매우 떨어진다는 뜻이다.

예를 들어 단순한 강화학습 예제 중의 하나인 진자(pendulum)의 정책을 학습하려면 수 십 또는 수 천회의 정책 실행이 필요하다. 게임이나 컴퓨터 시뮬레이션은 괜찮을지 몰라도, 로봇이나 드론 등 실제 물리 시스템에 대해서는 데이터를 얻기 위해서는 필요한 시간과 비용 등이 터무니없이 클 수 있으며, 쉽게 마모되는 기계 시스템에는 적용조차 할 수 없을 것이다. 데이터 효율성을 높이려면 사전 지식이 필요하거나 사용 가능한 데이터에서 더 많은 정보를 추출해야 한다. 일반적으로 모델 기반 강화학습이 모델이 없는 방법보다 데이터 효율이 뛰어나다는 점에서 최근 연구가 활발해지고 있다.

또 다른 강화학습의 큰 문제점은 학습과정 중에 시스템을 파손시키거나 추락 등 위험에 빠트릴 수 있다는 점이다. 따라서 강화학습 방법을 로봇이나 드론과 같은 실제 물리 시스템에는 바로 적용하는 데에는 한계가 있다. 이러한 문제점을 극복하기 위하여 최근에는 적응제어(adaptive control)나 강인제어(robust control)와 같은 전통적인 제어기법과 강화학습의 결합에 대한 연구가 진행 중이다.

 

 

전통적인 제어 기법에는 이미 모델의 불확실성(uncertainty)에 대처하거나 파라미터의 식별(identification)중에 안정성(stability)를 확보하기 위한 다양한 기법을 개발해 놨기 때문이다.

세번째 문제는 아직 성능이 만족스럽지 못하다는 것이다. 만약 특정 시스템의 수학적 모델을 정확히 알고 있다면 강화학습 보다는 기존의 제어 이론을 사용하는 것이 훨씬 더 우수한 성능을 얻을 수 있다. 강화학습이 데이터만을 가지고 학습하기 때문에 수학적 모델 만큼 시스템의 반응을 매우 정교하게 포착하지 못할 수 있다.

네번째 문제는 강화학습의 보상(reward) 함수에 관한 것이다. 강화학습은 보상 기능이 있거나 환경이 제공한다고 가정한다. 그러나 실제로는 강화학습 설계자가 시스템이 원하는 반응을 보이도록 보상함수를 설계해야 한다. 따라서 보상함수는 설계자가 원하는 것을 정확히 포착하도록 해야 하지만, 함수 자체가 단일 스칼라 함수이기 때문에 복잡한 운동을 하는 시스템에서는 적절한 보상함수를 찾는 것이 쉬운 일이 아니다.

다섯번째는 강화학습의 최종 결과가 불안정하고 재현하기 어려울 수 있다는 점이다. 다른 딥러닝(deep learning) 알고리즘과 마찬가지로 강화학습에도 학습(training)에 영향을 주는 하이퍼파라미터(hyperparameter)가 있다. 하이퍼파라미터는 아직 설계자가 수작업으로 결정한다. 하이퍼파라미터에 따라서 학습이 불안정하게 될 수도 있고 안정적으로 진행될 수도 있다. 또한 동일한 하이퍼파라미터를 사용하는 경우에도 동일한 작업에서 서로 다른 학습 성능을 보일 수도 있다.

심지어는 학습에 실패하는 경우도 생긴다. 학습 과정에서 사용되는 데이터의 무작위성(randomness) 때문이며 알고리즘 차제가 이에 매우 민감하게 반응하는 것이다. 적절한 초기화와 함께 적절한 하이퍼파라미터를 찾기 위해서는 부단한 노력과 인내가 필요하다. 즉, 강화학습은 아직 기존 제어 알고리즘보다도 체계적이지 못하다고 말할 수 있다.

 

 

 

댓글