출처: https://singularityhub.com/2017/05/26/these-robots-can-teach-other-robots-how-to-do-new-things/



robots-learning-2-1068x567.png



One advantage humans have over robots is that we’re good at quickly passing on our knowledge to each other. A new system developed at MIT now allows anyone to coach robots through simple tasks and even lets them teach each other.


인간이 로봇보다 나은 점은 자신이 가진 지식을 다른 인간에게 빨리 전달할 수 있다는 점이다. 하지만 MIT에서 개발한 새로운 시스템은 누구나 단순한 과제를 통하여 로봇을 가르칠 수 있게 해줄 뿐만 아니라 로봇들이 서로를 가르칠 수 있도록 돕는다.



Typically, robots learn tasks through demonstrations by humans, or through hand-coded motion planning systems where a programmer specifies each of the required movements. But the former approach is not good at translating skills to new situations, and the latter is very time-consuming.


일반적으로 로봇들은 인간들이 시연하는 동작이나 프로그래머가 필요한 동작 각각을 구체적으로 명시한 동작계획시스템을 통하여 과제를 수행하는 방법을 배운다. 하지만 이러한 기존의 접근방식은 자신이 배운 스킬을 새로운 상황에 적용하는데 문제가 있었을 뿐더러 시간을 많이 잡아먹었다.



Humans, on the other hand, can typically demonstrate a simple task, like how to stack logs, to someone else just once before they pick it up, and that person can easily adapt that knowledge to new situations, say if they come across an odd-shaped log or the pile collapses.

In an attempt to mimic this kind of adaptable, one-shot learning, researchers from MIT’s Computer Science and Artificial Intelligence Laboratory (CSAIL) combined motion planning and learning through demonstration in an approach they’ve dubbed C-LEARN.


이와 달리 인간의 경우 통나무 쌓기 같은 단순한 과제들을 한 번만 보여줘도 그대로 따라할 수 있으며, 또한 인간은 기존의 지식을 새로운 상황에 손쉽게 적용할 수 있다(예를 들면 이상한 모양의 통나무를 쌓아야 하거나 통나무 더미가 무너진 경우). 인간의 이러한 적응가능한 즉각 학습을 모방하기 위해 MIT의 컴퓨터과학/인공지능연구소 연구진은 동작계획 및 시연을 통한 학습을 결합하여 C-LEARN이란 접근방식을 개발했다.



First, a human teaches the robot a series of basic motions using an interactive 3D model on a computer. Using the mouse to show it how to reach and grasp various objects in different positions helps the machine build up a library of possible actions.


먼저 인간이 로봇에게 3차원 상호작용 모델을 사용하여 일련의 기본적인 동작들을 가르친다. 인간이 마우스를 사용하여 어떻게 다양한 위치에서 다양한 물건들을 손을 뻗어 집을 수 있는지를 로봇한테 보여주면 로봇은 이 예제에 기반하여 일련의 동작 데이터베이스를 생성하는 식이다.



The operator then shows the robot a single demonstration of a multistep task, and using its database of potential moves, it devises a motion plan to carry out the job at hand.


이후 인간이 다수의 단계들로 구성된 과제를 로봇한테 딱 한번 시연하면 로봇은 자신의 동작 데이터베이스를 사용하여 과제를 수행하는데 필요한 동작들을 기획한다.



This approach is actually very similar to how humans learn in terms of seeing how something’s done and connecting it to what we already know about the world,” says Claudia Pérez-D’Arpino, a PhD student who wrote a paper on C-LEARN with MIT Professor Julie Shah, in a press release.


"이러한 접근방식은 인간이 기존의 예제를 보고 배울 수 있는 능력, 그리고 이를 기존의 주변환경에 대한 자신의 지식에 적용하는 것과 비슷합니다"라고 MIT 교수 줄리야 샤흐와 더불어 C-LEARN 논문의 공동저자인 박사과정생 클라우디아 페레즈 다르피토가 인터뷰에서 밝혔다.



We can’t magically learn from a single demonstration, so we take new information and match it to previous knowledge about our environment.”


"예제를 한 번만 보고 배우는 능력은 그냥 되는 것이 아니며 새로운 정보를 얻은 다음 이를 주변환경에 대한 기존 지식에 대입해야 합니다".



The robot successfully carried out tasks 87.5 percent of the time on its own, but when a human operator was allowed to correct minor errors in the interactive model before the robot carried out the task, the accuracy rose to 100 percent.


실제 로봇을 가지고 진행한 실험에서 로봇이 스스로 과제를 하도록 내버려 둘 경우 성공률이 87.5%였으나, 로봇이 과제를 수행하기 전에 인간이 상호작용 모델을 사용하여 사소한 오류를 수정했을 경우 성공률이 100%로 상승했다.



Most importantly, the robot could teach the skills it learned to another machine with a completely different configuration. The researchers tested C-LEARN on a new two-armed robot called Optimus that sits on a wheeled base and is designed for bomb disposal.


여기서 가장 중요한 점은 로봇이 자신의 지식을 완전히 상이한 구조를 가진 다른 로봇에게 가르칠 수 있었다는 점이다. 연구진은 C-LEARN을 옵티머스라고 명명된 양팔로봇에게 실험하였다. 해당 로봇은 바퀴로 움직이며 폭탄 제거를 목적으로 제작되었다.



But in simulations, they were able to seamlessly transfer Optimus’ learned skills to CSAIL’s 6-foot-tall Atlas humanoid robot. They haven’t yet tested Atlas’ new skills in the real world, and they had to give Atlas some extra information on how to carry out tasks without falling over, but the demonstration shows that the approach can allow very different robots to learn from each other.


컴퓨터 시뮬레이션에서 연구진은 옵티머스가 배운 지식을 CSAIL에서 개발한 6피트 높이의 휴머노이드 로봇 아틀라스에게 전수하는데 성공했다. 비록 아틀라스를 실제 상황에서 실험하지는 않았고 또 아틀라스가 과제를 수행하는 과정에서 넘어지지 않도록 하기 위해 연구진이 추가적인 정보를 입력해줘야 했으나, 해당 접근방식을 통하여 다양한 모양을 가진 로봇들이 서로한테서 배울 수 있음을 확인할 수 있었다.



The research, which will be presented at the IEEE International Conference on Robotics and Automation in Singapore later this month, could have important implications for the large-scale roll-out of robot workers.


해당 연구논문은 이번 달 싱가포르에서 열리는 IEEE 로봇자동화 국제컨퍼런스에서 발표할 예정이며, 로봇의 대규모 보급에 중요한 영향을 끼칠 것으로 예상된다.



Traditional programming of robots in real-world scenarios is difficult, tedious, and requires a lot of domain knowledge,” says Shah in the press release.


"실제 상황에서의 전통적인 로봇 프로그래밍은 매우 어렵고 힘들며 관련분야에 대한 많은 지식을 요구합니다"라고 줄리야 샤흐가 인터뷰에서 밝혔다.



It would be much more effective if we could train them more like how we train people: by giving them some basic knowledge and a single demonstration. This is an exciting step toward teaching robots to perform complex multi-arm and multi-step tasks necessary for assembly manufacturing and ship or aircraft maintenance.”


"만일 우리가 사람을 가르치는 것처럼 로봇들을 가르칠 수 있다면 효율이 더욱 올라갈 것입니다. 로봇에게 기본적인 지식을 준 다음 시연을 딱 한번 해주는 방식으로 말입니다. 이는 여러 개의 팔을 필요로 하는 다단계 과제(제조공정 및 선박/항공기 유지보수 등)를 로봇에게 가르치기 위해 밟아야 하는 중요한 과정이라고 할 수 있습니다"



The MIT researchers aren’t the only people investigating the field of so-called transfer learning. The RoboEarth project and its spin-off RoboHow were both aimed at creating a shared language for robots and an online repository that would allow them to share their knowledge of how to carry out tasks over the web.


MIT 연구진 외에도 많은 연구팀들이 이른바 '전이학습'이라고 불리는 해당 분야를 연구하고 있다. 로보어스와 여기에서 파생된 로보하우는 로봇들을 위한 공통언어 그리고 로봇들이 웹을 통하여 과제 수행방법에 대한 지식을 공유할 수 있는 온라인 자료창고 구축을 목적으로 한다.



Google DeepMind has also been experimenting with ways to transfer knowledge from one machine to another, though in their case the aim is to help skills learned in simulations to be carried over into the real world.


구글의 딥마인드도 지식을 한 로봇에서 다른 로봇에게 이전하는 방법을 실험하고 있는데, 대신 딥마인드는 로봇이 시뮬레이션에서 배운 스킬을 현실 세계에 적용하는 기술에 초점을 맞추고 있다.



A lot of their research involves deep reinforcement learning, in which robots learn how to carry out tasks in virtual environments through trial and error. But transferring this knowledge from highly-engineered simulations into the messy real world is not so simple.


많은 연구가 심층강화학습, 즉 가상환경 속에 있는 로봇이 여러 번의 시행착오를 통해 과제를 수행하도록 하는 기술에 집중되어 있다. 그러나 고도로 인위적인 가상 시뮬레이션에서 배운 지식을 잡음이 많은 실제세계에 적용시키는 것은 그리 쉬운 일이 아니다.



So they have found a way for a model that has learned how to carry out a task in a simulation using deep reinforcement learning to transfer that knowledge to a so-called progressive neural network that controls a real-world robotic arm. This allows the system to take advantage of the accelerated learning possible in a simulation while still learning effectively in the real world.


때문에 과학자들은 로봇이 시뮬레이션에서 심층강화학습을 통해 배운 지식을 실제세계의 로봇팔을 제어하는 이른바 '점진적 인공신경망'에 이전하는 방법을 고안했다. 이 방법을 사용하면 시뮬레이션에서 빠른 속도로 학습을 하면서 동시에 실제세계에서도 효율적으로 학습을 할 수 있다.



These kinds of approaches make life easier for data scientists trying to build new models for AI and robots. As James Kobielus notes in InfoWorld, the approach “stands at the forefront of the data science community’s efforts to invent 'master learning algorithms' that automatically gain and apply fresh contextual knowledge through deep neural networks and other forms of AI.”


위에서 말한 접근방식은 데이터과학자들로 하여금 인공지능 또는 로봇을 위한 새 모델을 더 쉽게 만들도록 도와준다. 제임스 코빌루스가 인포월드에서 밝힌 것처럼, 이러한 접근방식은 "심층인공신경망과 그 외 다양한 종류의 인공지능을 통하여 자동으로 새로운 컨텍스트 지식을 수집하고 적용하는 '마스터 학습 알고리즘'을 개발하려는 데이터과학자들의 시도 중에서 가장 첨단에 서 있는 것"이다.



If you believe those who say we’re headed towards a technological singularity, you can bet transfer learning will be an important part of that process.


만일 당신이 기술적 특이점을 믿는 사람이라면, 이전학습이 기술적 특이점의 중요한 일부분임에 내기를 걸어도 좋을 것이다.