인공지능 스스로 최적의 결과를 찾는 '강화학습'

이상우 sw@itdonga.com

[IT동아 이상우 기자] 오늘날 인공지능이라는 단어는 우리에게 크게 낯설지 않다. 바둑을 위한 인공지능 알파고가 프로 바둑기사에게 승리하면서 인공지능의 가능성을 보여줬으며, 이제 바둑을 넘어 스타크래프트 같은 게임 영역까지 서서히 정복하고 있다.

우리는 인공지능, 머신러닝(기계학습), 딥러닝(심층학습) 등 인공지능 방법론을 혼용해 쓰기도 하지만, 구분이 필요한 용어다. 우선 인공지능이라 함은 인간의 지성을 흉내내 제작한 소프트웨어나 알고리즘을 말하며, 광범위한 영역을 다룬다.

머신러닝은 인공지능을 구현하는 접근 방식 증 하나로, 정해진 규칙에 따라 데이터를 분석하고, 이를 통한 학습으로 판단이나 예측을 하는 방식을 말한다. 딥러닝은 머신러닝을 실현하는 방법 중 하나로, 인간의 뇌 구조를 모방한 '인공신경망' 알고리즘을 통해 문제를 해결하는 방식이다. 이를 학습시키기 위해서는 지도학습, 자율학습, 강화학습 등의 방법을 사용한다.

(출처=엔비디아)
(출처=엔비디아)

지도학습이란 인간이 사전에 만든, 정제된 데이터세트를 통해 알고리즘을 가르치는 방식이다. 예를 들어 딥러닝 알고리즘이 개와 고양이 사진을 구분하도록 가르치기 위해서 인간이 직접 사진을 골라가며 가르치는 방식이다. 이와 달리 자율학습은 데이터세트 속에서 알고리즘이 스스로 특징을 추출하고 데이터세트 안에서 일정한 구조를 찾아가는 방식이다.

강화학습은 알고리즘이 다양한 시도를 거치며 최적의 결과를 낼 수 있는 조합을 찾아내는 방식이다. 가령 우리는 아이에게 걸음마를 가르칠 때 다리를 어떤 각도로 몇 초 동안 움직이라고 알려주지 않는다. 아이는 여러 번 직접 걸으며 어떤 방식으로 움직여야 넘어지지 않는지 몸으로 익힌다.

강화학습은 수많은 시도 끝에 가장 나은 결과를 낼 수 있는 방식을 찾는
과정이다
강화학습은 수많은 시도 끝에 가장 나은 결과를 낼 수 있는 방식을 찾는 과정이다

또 다른 예를 들어, 예를 들어 실제 인간이 게임을 한다면, 레벨을 올리고, 더 높은 점수를 얻고, 도전과제를 달성하기 위해 여러 가지 방법을 시도한다. 이러한 경험이 쌓이면 2회차, 3회차 시도에서는 이전보다 나은 점수를 낼 수 있다. 강화학습 역시 같은 맥락이다. 강화학습 모델은 특정 목표 달성을 위해 과거의 경험을 적극적으로 활용하며, 이러한 과정을 반복할수록 얻을 수 있는 최대 결과를 찾는다.

이는 자율주행차 처럼 특정 상황에서 다음 행동을 선택을 해야 하는 인공지능에 주로 쓰이는 방식이지만, 통제된 상황이 아닌 실제 상황에서는 예상치 못했던 다양한 변수가 복합적으로 작용할 수 있기 때문에 최적의 결과를 얻지 못할 수도 있다. 이 때문에 강화학습 알고리즘을 다양한 환경에서 반복 수행하며 더 나은 결과를 낼 수 있는 시뮬레이션 환경이 필요하다.

강화학습 모델을 현실을 반영한 시뮬레이션을 통해 강화하고, 자율주행 등에 적용할 수
있다
강화학습 모델을 현실을 반영한 시뮬레이션을 통해 강화하고, 자율주행 등에 적용할 수 있다

AWS 로보메이커는 이러한 시뮬레이션 환경을 개발자가 더 쉽게 접근할 수 있도록 해주는 서비스다. 시뮬레이션은 과거부터 사전 테스트를 위해 쓰이던 기술이나, 방위산업, 항공 등 일부 분야에 집중돼 있으며, 특히 이러한 시뮬레이션 환경을 구축하는 데 많은 비용이 들었다. 이와 달리 AWS 로보메이커는 다양한 형태의 3D 시뮬레이션 환경을 클라우드 형태로 제공하기 때문에 개발자는 별도의 인프라를 구축할 필요 없이, 자신이 개발한 강화학습 알고리즘을 가상 환경에서 테스트할 수 있다. 특히 고가의 로봇이나 자율주행차 등을 개발할 때 장비 파손 걱정 없이 원하는 결과를 얻을 때까지 가상 공간에서 테스트할 수 있다.

AWS 로보메이커
AWS 로보메이커

AWS가 딥레이서라는 자율주행 레이싱 대회를 개최한 것도 같은 맥락이다. 딥레이서는 개발자가 특별한 장비나 인프라 등의 기술 수준과 관계 없이, 노트북 정도의 장비만으로 강화학습 모델을 구축해 시뮬레이션을 거치며 자신만의 자율주행차를 만드는 대회다.

AWS 세이지메이커를 통해 강화학습 모델을 구축하고, 이 모델을 AWS 로보메이커에서 반복 테스트하며 자율주행차가 최적의 경로로 가장 빠르게 달릴 수 있는 방법을 찾아낸다. 이렇게 개발을 완료한 모델을 1/8 크기의 RC자동차에 배포하면 실제 트랙을 달리며 주행 완료에 걸린 시간을 기록한다.

세이지메이커의 가장 큰 장점은 학습 모델 구축에 필요한 각종 수작업을 최소화해, 사용자가 인공지능 알고리즘을 더 쉽게 개발할 수 있도록 지원하는 점이다. 시스템 자원 할당과 관리, 학습 모델 조정 등 모델 개발 시 필요한 수작업을 생략할 수 있다. 특히 상대적으로 저렴한 비용과 최소한의 장비만으로 강화학습 모델을 구축하고, 이를 시뮬레이션할 수 있는 환경을 제공하는 만큼 개발자나 기업은 큰 비용을 들이지 않고도 드론, 자율주행차, 이족보행로봇 등 강화학습이 필요한 분야를 상대적으로 쉽게 연구할 수 있다.

글 / IT동아 이상우(lswoo@itdonga.com)

IT동아의 모든 콘텐츠(기사)는 Creative commons 저작자표시-비영리-변경금지 라이선스에 따라 이용할 수 있습니다.
의견은 IT동아(게임동아) 페이스북에서 덧글 또는 메신저로 남겨주세요.