UPDATED. 2022-01-20 10:14 (목)
학습하는 ‘벡스터’들, 지식 공유 가능하다
학습하는 ‘벡스터’들, 지식 공유 가능하다
  • 김재호 학술객원기자
  • 승인 2016.03.30 15:40
  • 댓글 0
이 기사를 공유합니다

키워드로 읽는 과학本色 136 서로 가르치는 로봇
▲ 매순간 로봇은 물건을 이해하고 잡기 위한 최적의 방법을 결정한다. 로봇은 다른 로봇이 사용할 수 있는 포맷으로 데이터를 전송한다. 사진은 로봇 벡스터. 사진출처=

 로봇끼리 학습하는 시대가 도래 했다. <MIT 테크놀로지리뷰(technologyreview)>는 2016년 10대 혁신기술을 발표했는데, 5위가 바로 ‘서로 가르치는 로봇(Robots That Teach Each Other)’이다. 지식을 얻고 공유하는 능력은 인간 문화와 문명의 주요 요소였다. 그런데 이제 로봇이 인간의 능력을 흉내 낸다. 로봇 스스로 훨씬 많은 것을 이해하고 공유하는 것이다. 
미국 브라운대 컴퓨터과학자 스테파니 텔렉스 교수는 인간이 아동기에 ‘빅데이터 수집 과정’을 거쳤다고 밝혔다. 경험과 학습으로 수많은 정보를 입수한 것이다. 만약 인간에게 단순하고 쉬운 것처럼 보이는 일을 로봇에게 시키려면, 물건 움켜잡기 혹은 다루는 방법과 관련된 데이터를 늘려야 한다. 로봇 역시 아동기를 거쳐야 하는 것이다.


텔렉스 교수는 ‘로보브레인(RoboBrain)’ 프로젝트의 초기 파트너다. 로보브레인은 로봇들에 필요한 정보들을 집적해 공유하는 온라인 시스템이다. 즉 로봇끼리 정보를 공유할 수 있는 시뮬레이션 시스템이다. 로보브레인을 통해 로봇이 다른 로봇의 경험으로부터 학습할 수 있다. 텔렉스 교수의 동료인 ‘사물의 뇌(Brain of Things, 스마트홈기술&자동화벤처기업)’ 기업의 CEO인 코넬 대학의 아슈토쉬 삭세나 교수. 그는 PR2 로봇으로 하여금 작은 컵을 들어 식탁 위에 놓도록 가르쳤다. 훈련 관련 정보는 데이터로 축적했다. 텔렉스 교수는 이 데이터를 클라우드로 다운로드해 자신의 로봇 ‘벡스터’를 훈련시키는 데 사용했다. 다른 공간에서 같은 작업을 가능해진 셈이다.


로드아일랜드 프로비던스에 위치한 텔렉스의 실험실. 이곳은 장난기 가득한 유치원 분위기가 풍긴다. 실험실엔 산업용 로봇인 벡스터(Baxter)가 있다. 벡스터는 리씽크 로보틱스사에서 만들었다. 벡스터는가 빗을 잡는 과정을 살펴보자. 먼저 물체 위에서 자신의 오른쪽 팔로 시끄러운 소리를 내며 앞뒤로 움직인다. 그 후 벡스터는 팔에 있는 카메라로 사진들을 찍고, 적외선 센서로 깊이를 측정한다. 이제 두 갈래 갈라진 팔로 빗을 들어 올리며 여러 손놀림을 연습한다. 마침내 로봇은 빗을 공중으로 들어 올렸고, 흔들어 단단히 잡혔는지 확인한다. 또한 벡스터는 빗을 정확히 움켜쥐고 미끄러지지 않게 하려고 여러 시도를 했다.


로봇 손에 잘 잡혔다면 물체 들어 올리는 방법을 학습한 셈이다. 지루한 과정이다. 로봇은 이렇게 학습한 물체 들어 올리는 방법을 다른 로봇과 공유한다. 이때 학습한 물체의 정보(사진, 3D 스캔, 올바로 움켜지는 방법 등)는 온라인으로 공유 가능하도록 암호화된다. 관련 데이터를 클라우드 저장소에 업로드하면, 다른 로봇이 그 데이터 정보를 분석하고 사용한다. 로봇들은 업로드 된 데이터를 피드백해 다른 기계들에 다시 제공한다. 연구원들은 백만 개의 여러 물체들 움켜쥐는 방법을 종합한다. 이로써 수백 개의 로봇 학습 콘텐츠를 얻으려는 것이다. 일종의 ‘백만 개 물체 다루기 도전’이다. 텔렉스 교수는 연구원들과 함께 로봇이 백만 개의 다른 물체들을 다룰 수 있도록, 방법론을 집대성한 정보 서재를 만들겠다고 밝혔다. 어떤 물체든 인지하고 움켜잡는 데이터를 5~10메가바이트로 압축할 수 있다.
이게 가능한 이유는 로봇 운영체제인 ‘ROS’ 덕분이다. ROS는 다른 개발자들이 자신의 로봇 어플리케이션을 만들 수 있도록 해주는 소프트웨어 플랫폼이다. 개발 환경에 필요한 다양한 라이브러리가 제공된다. 구글의 후원을 받는 ROS는 오픈소스 로보틱스 재단에서 운영 중이다.

유망한 로봇 학습 방법 ‘딥러닝’
텔렉스 교수와 대학원생 존 오벌린은 지금까지 모은 대략 200가지 항목의 데이터를 공유했다. 오벌린은 3살 아들의 신발부터 플라스틱보트, 고무 오리, 마늘 다지기와 취사도구, 미끄러운 컵 등을 로봇에 시도해봤다. 오벌린은 우스터 폴리테크닉대학에서 개최한 ‘로봇 콜리키움(NERC)’에서 로봇의 움켜잡는 능력을 선보였다


텔렉스 교수는 오늘날 전 세계 다양한 연구실에 300개의 벡스터 로봇이 있다고 말했다. 만약 이 로봇들이 양 팔을 사용해 새로운 물체 잡는 연습을 쉬지 않고 학습한다면 어떨까? 텔렉스 교수는 11일 만에 백만 개 움켜잡는 방법을 로봇이 익힐 거라 주장했다. 로봇들은 학습을 공유하고, 규모 순서에 따라 데이터 수집 속도를 증가시킬 것이다. 연구원들은 로봇이 물건 쥐기를 연습하는 과정에 최대 효과를 주기 위해 수학적 기술을 사용했다. 이로써 벡스터 로봇은 평상시 소프트웨어를 사용했을 때보다 75% 더 정확하게 물체를 집어 들었다. 
어떻게 하면 로봇을 효율적으로 훈련시킬까? 가장 유망한 건 딥 러닝(deep learning)이다. 즉 신경망 네트워크(neural networks)다. 기존의 인공 신경망을 확장한 개념이다. 신경 네트워크는 정보와 학습 과정에 뇌의 신경 과정을 본뜬 시뮬레이션이다. 이미 빅데이터 분석이나 안면 인식, 이미지 분류 등에서 활용되고 있는 머신 러닝의 일부다. 딥 러닝은 강력한 알고리즘이지만 데이터를 꾸준히 제공받아야 한다. 로봇의 학습(연습)이란 결국 필요한 데이터를 얻는 것과 마찬가지다. 


클라우드로 상호학습 하는 로봇은 전 세계 로봇들과 서로 정보를 주고받으며 능력을 키운다. 지난 3월 9일부터 15일까지 인간 이세돌과 인공지능 알파고가 바둑 대결을 펼쳤다. 알파고는 1천200여개 CPU를 연결해 구축한 인공신경망으로 실력을 쌓았다. 알파고는 KGS GO라는 온라인 바둑 사이트의 최고수 기보 16만 개를 5주 만에 학습했다. 바둑 입문자가 기보를 공부해 바둑기사의 패턴을 습득하는 것처럼, 알파고는 바둑 기보를 19×19픽셀 이미지로 입력받아 다음 着手를 위해 필요한 학습 과정을 거쳤다. 비록 알파고가 아직 사람 흉내를 내고 있지만, 데이터가 늘어나면 사람을 뛰어 넘을지 모른다.


MIT 컴퓨터과학인공지능연구소(CSAIL) 닉 로이 교수는 연구원들이 로봇의 지식 공유에 흥미를 느낀다고 밝혔다. 지식 공유를 가능하게 하는 것은 첫째 증가된 대역폭(대역폭이 넓을수록 더 많은 정보를 전송할 수 있다), 둘째 최첨단의 클라우드 컴퓨팅 능력 덕분이다.
로봇 간 지식공유의 핵심은 각 로봇 소프트웨어 플랫폼에서 명령이 서로 전송될 수 있도록 명령의 체계를 이해해야 한다는 점이다. 두 로봇은 물리적으로 다르기 때문에 찻잔을 하나 움켜쥐려고 해도 어느 지점에서, 어떻게 움직여야 하는지 다를 수밖에 없다. 궁극적으론 로봇 스스로 정보를 받을 로봇의 물리적 형체에 기반해 정보를 보낼 수 있으면 가장 좋다.
삭세나 교수는 앞으로 5~10년 내 로봇의 능력이 폭발적으로 증가할 것으로 전망한다. 클라우드 기반 지식이 정제되고 정교화 한다면, 로봇은 언젠가 자신의 손가락만으로 필요한 모든 정보에 접근할 것이다. 

김재호 학술객원기자 kimyital@empas.com


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.