- 2019년 4월 12일 오후 2:32
- 조회수: 4593
REFERENCES
INFORMATION
- 2019년 4월 19일
- 오후 1시 ~
- 고려대학교 신공학관 218호

TOPIC
OVERVIEW
발표자 후기

오늘 세미나에서는 Meta Learning을 활용한 Hierarchical Reinforcement Learning을 다룬 논문 에 대해 리뷰했다. AI 분야에 비교적 최근 등장한 meta learning은 간단하게 설명하자면 학습 자체를 잘하기 위한 학습 기법을 의미한다. 사람으로 따지면 A라는 과목을 잘 하는 학생이 B도 잘하고 다른 과목들도 잘 하는 것과 유사하다. 이때 이 학생은 학습 자체를 잘 하는 학생이라고 할 수 있다. 기계학습 알고리즘도 마찬가지로 학습 자체를 잘 할 수 있다면 새로운 task에 대해서 보다 빠르게 학습 성능을 높일 수 있다는 점에서 최근 meta learning이 논의되고 있다. 이번 세미나에서 소개할 논문인 에서는 새로운 task를 효율적으로 풀 수 있는 강화학습 방법론을 제안하고 있다. 이를 위해 저자는 계층적 구조의 policy network를 이용하여 meta learning을 가능하게 하였다. 특히 기존의 강화학습 알고리즘으로 풀 수 없었던 어려운 문제를 논문에서 제안하는 방법론으로 해결할 수 있었다는데 큰 이점이 있다.
청취자 후기

Meta-learning은 기계 학습에 있어 사람에 의해 통제된 몇몇의 요소까지 기계가 결정하도록 하는 것이라고 할 수 있다. 이를 위해 다수의 base model을 만들고 계층적으로 이 위에 이를 조절(또는 activation)할 수 있는 모델을 추가함으로 작동하게 된다. 본 세미나는 이러한 개념을 강화학습이 녹여낸 논문에 대한 리뷰를 진행하였다. 강화학습의 경우, 문제의 종류 및 크기에 따라 학습의 난이도가 급격하게 변화하게 된다. 이러한 경우 이와 같은 meta-learning을 적용함으로써 문제를 작은 크기의 다수개로 나눠 이를 개별적으로 학습함으로써 해결이 가능하다. 이와 같은 hierarchy한 특징을 가지는 것은 hierarchy-RL과 상당히 유사하다. hierarchy-RL은 사용하자가 사전에 base model의 개수 및 역할을 사전에 설정해야 한다. 일반적으로 문제의 크기가 작은 경우는 큰 문제가 되진 않으나, 문제의 크기가 커지고 복잡해지는 경우 각 base model의 역할을 사전에 설정하는 것이 매우 어려워진다. 본 논문에 의하면 meta model을 사용하기 때문에 사전에 이러한 설정을 하지 않아도 학습 과정에서 각 base model이 문제에 적합한 역할을 할당 받아 수행한다는 장점이 있다. 최근 meta learning에 대한 관심이 증폭되는 만큼, 다양한 방법으로 적용이 가능하다고 생각된다.

금일 세미나는 영준이 형이 ‘Meta Learning Shared Hierarchies’ 라는 주제로 진행했다. Meta Learning은 학습을 빠르게 하기 위해, 학습하는 과정을 학습하는 방법을 말한다. 내가 하고자 하는 Task와 유사한 Task의 학습 과정(ex, pre-trained model, transfer learning) 을 가져와서 나의 Task의 학습 속도를 가속화하는 방법이다. 해당 방법을 강화 학습에 적용하여 Agent가 받는 보상을 최대화 하려고 하는 방법을 소개하였다. 제목에서 Meta learning 이라는 용어가 들어가 있지만, 오히려 계층적 강화 학습(Hierarchy Reinforcement Learning)에 가까운 내용이었다. 우선 Master policy를 정의하고 이를 달성하기 위한 중간 과정을 Sub policy를 구성한다. 초기에 Warm up으로 약 30회의 반복을 하면서 Master Policy를 위한 학습을 진행한다. 그 이후, Sub policy와 Master Policy를 번갈아 가며 학습을 한다. Sub policy의 의미를 우리가 직접 정하는 것이 아니라, Sub policy의 개수를 정의하고 학습을 마무리 한 뒤, 세부적으로 Sub policy를 살펴 본 후, Sub policy에 의미를 부여할 수 있다.
해당 방법은 사람이 일을 진행하는 과정과 매우 비슷하다는 생각을 했다. 예를 들어, 특정한 문제를 맞추기 위해 개념을 공부하고, 예제 문제를 풀어보고, 또 다른 응용 문제를 풀어보고, 특정 문제를 푼다면 바로 특정 문제를 푸는 것 보다 훨씬 정답을 맞추는데 수월 할 것이다. 개념을 공부하는 것에 대한 보상과 수학문제를 맞추는 것에는 차이가 있다. 하지만 개념을 공부하고, 예제 문제를 풀어보지 않는다면 특정한 문제를 해결하기는 쉽지 않을 것이다. 여기서 착안한 아이디어로 생각한다. 강화 학습과 관련한 내용에 관해 듣게 되면, 강화 학습은 인간이 학습하는 과정을 그대로 본떠서 모델을 학습시키고자 하는 것 같다. 인간이 성장하면서 지적 능력을 가지는 과정과 매우 똑같다. 현재 예측이 어려운 분야에서도 Meta Learning, Hierarchy Learning을 이용한다면 더 좋은 예측을 할 수 있을 것 같다. 예를 들어, 주식 시장을 예측한다고 하자. 순간적인 주식의 변화를 예측하기 위해서, 과거의 패턴 만을 살펴보는 것이 아니라, 과거의 패턴과 더불어 회사의 재무 재표를 학습하는 Task, 주식을 제공하는 회사에 대한 Text 정보를 학습하는 Task 등으로 구분한다면 현재의 상황(Environment)를 파악하면서, 주식 변화를 예측 가능할 것으로 생각한다. 직관적인 이해를 도와주기 위해서, 수식과 관련한 부분을 많이 제외하고 이해 자체에 집중을 하고 세미나를 진행한 영준이 형에게 감사를 표한다.

오늘은 영준오빠가 ‘Meta Learning Shared Hierarchies’라는 주제로 세미나를 진행해 주셨다. 먼저 meta learning은 ‘learning about one’s own learning and learning process’ 즉, 학습을 위한 학습이라 해석할 수 있다. 이는 여러 데이터 셋을 통해 각 task 및 performance를 도출하자는 것을 의미하며 기존의 경험으로 보다 빠르고, 좋은 성능으로 학습되는 것을 기대한다. 이점은 기존에 우리에게 익숙한 ‘transfer learning’과 ‘multi task learning’과 다른 데이터 셋을 추가로 학습하고, 여러 결과를 도출한다는 점에서 각 특징이 흡사하다. 오늘 소개된 논문은 이런 meta learning을 강화 학습에 적용하여 hierarchically structured policies문제를 풀이 하고자 했다. Hierarchical reinforcement learning(HRL)은 큰 스코프의 문제를 보다 작게 분해하는 것을 목표로 한다. 이를 meta learning과 접목시키기 위해 hierarchy가 있는 각 action을 environment로 규정하여 작은 task로 해석한다. 이 때 저자가 정의한 sub-policies는 각자 action style이 다르며, master policy는 사용할 sub-policy를 선택한다. 이를 학습하는 방식은 총 3단계로 나누어지는데, 먼저 여러 task 중 한 개를 랜덤하게 선택하고, 다음으로 master policy를 업데이트한다. 해당 과정으로 다양한 policy를 랜덤성을 갖고 학습할 수 있게 된다. 마지막으로 joint update과정에서 sub policy를 업데이트한다. 결과적으로 다양한 실험을 통해 우수성을 보여준 논문이었으며 간단한 사고의 전환으로 좋은 성능을 보인다는 점에서 의미 있는 논문이라고 생각했다. 특히, 오늘 세미나는 영준오빠가 잘 전달해주기 위해 적절한 예시들을 잘 활용했을 뿐만 아니라 해당 논문에 대한 간략한 비평도 남겨주었는데 이점이 인상깊었던 것 같다. 나도 연구를 위해 논문을 읽을 때 단순히 수용하는데 그치지 않고 비평하기 위한 관점을 가져야겠다.

금일 세미나는 Meta Learning Shared Hierarchies에 대한 주제로 영준이형이 발표하였다. Meta Learning은 학습을 위한 학습을 하는 것으로 여러 개의 학습이 필요하고 기존의 경험을 통해 목표에 빠르게 달성하는 것이 목적이다. 기존의 Transfer Learning과 Multi-task Learning과 비슷하지만 다른 performance 평가를 가진다. Meta Learning을 강화학습에서도 적용을 한 사례를 보여주었는데 여러 개의 환경을 Input으로 하여 Agent를 빠르게 학습하도록 해주는 것이다. 논문에서 제안한 방법은 Hierarchical 강화학습에 Meta Learning을 적용한 것인데, 환경의 상태를 통하여 Master Policy와 Sub-Policies을 학습하여 어떤 action을 취할 것인지 정해준다. Sub-Policies는 행동의 방향이라면 실제로 action을 취할 때 로봇의 관절 등이 될 수 있다. Meta Learning Shared Hierarchies(MLSH)의 학습은 환경을 random하게 선택하고 master policy의 파라미터를 random하게 해준다. 여러 번의 iteration을 통해 master policy를 업데이트 해주고 sub-policy을 업데이트 하여 action을 취해준다. 실제 여러 게임에 적용한 결과와 영상을 보면서 신기했다. 학습이 되면서 agent가 action을 취하여 목표에 도달할 때 말이다. 현재 starcraft2에 강화학습을 적용하는 연구를 하고 있는데 MLSH를 적용하게 되면 여러 환경에서 agent가 sub-policy와 master policy를 통하여 환경에 맞는 action을 취할 것이라 기대 된다. 후에 이 부분은 앞으로 공부를 하여 적용해 볼 계획을 갖게 되었다.

오늘 세미나는 deep learning을 활용한 image segmentation을 주제로 진행되었다. 예전에 Capsule Network에 대한 세미나를 준비하면서 느꼈던 것과 동일하게 느낀 점은 시야각을 넓히는 용도로 사용되는 Pooling layer가 spatial 정보를 소실하게 하면서 만드는 여러가지 문제들이 있다는 것이다. 따라서 이를 해결하기 위해 computer vision쪽 연구들이 아이디어 발전이 많이 이루어지는 것 같다. 또한 성능을 유지하면서 계산 효율을 높이기위해 네트워크 구조를 변형시키는 것도 또한 큰 줄기 중 하나 인 것 같다. deep learning이 최근 뛰어난 성능을 보이면서 발전하고 있지만 여전히 해결되지 못하는 문제가 있다고 생각한다. labeling에 대한 문제이다. 현재 연구실에서 진행되고 있는 도로의 과속방지턱, 구덩이, 장애물 등을 segmentation하는 프로젝트도 옆에서 지켜보면 데이터 수집은 좋은 장비만 있다면 확보하는 것은 큰 문제가 없어보였다. 하지만 이를 labeling을 하는 것에 굉장한 노력과 시간이 소요된다고 느꼈다. 또한 이것이 정확할 뿐만 아니라 일관성이 있어야만 모델의 고성능에 귀결된다. 또한 학습데이터의 수도 크게 항상 나타나는 문제라고 느껴졌다. 이런 근본적인 문제를 해결할 수 있는 연구가 이루어져야 지금보다 한단계의 또다른 발전이 이루어지지 않을까 생각이 들었다.

오늘 영준이 형이 “Meta Learning Shared Hierarchies”라는 주제로 세미나를 진행하였다. 본 세미나에서 다룬 논문은 고등학생이 작성한 논문으로 퀄리티 면에서 놀라웠다. 먼저, 영준이 형이 Meta Learning에 대해 간략하게 설명해 주었다. Meta Learning을 김병만의 자격증 보유 현황을 예시로 들어 설명해주었다. 개그맨 김병만은 보유한 자격증이 굉장히 많다. 건설기계 조종사면허증, 굴삭기운전기능사, 지게차운전기능사 등이 있다. 사람의 경우 건설기계 조종사면허증을 처음 시도했을 때는 어려움을 많이 겪을 것이다. 하지만, 처음 자격증을 취득한 후 굴삭기운전기능사, 지게차운전기능사 자격증을 취득하는데 있어서 그전 보다는 훨씬 더 수월할 것이다. 이것이 Meta Learning의 기본 개념이다. 즉, 어떤 목적을 달성하기 위해 사전에 먼저 학습을 하면 더 쉽게 목적을 달성할 수 있다는 것이다. Meta Learning Shared Hierarchies라는 논문은 이러한 개념을 강화 학습에 적용하였다. 개미가 목적지에 도달할 때를 예로 들어보면 다음과 같다. 우리가 정한 K개의 Sub-policies에 각각의 Action이 있는데, 모델은 Sub-policies도 알아서 학습을 한다. 좌 우 위 아래가 Sub-policies가 된다면, 개미가 걸을 때 다리의 각도가 Action이 된다. 이러한 학습으로 현재 강화 학습에서 가장 좋은 성능을 보이는 PPO 모델보다 더 좋은 성능을 냈다. 고등학생이 낸 논문인데도 불구하고 다양한 실험으로 알고리즘을 설명하였다. 좋은 논문을 설명해준 영준이형에게 감사하다는 말을 전하고 싶다.

금일 세미나는 ‘Meta Learning Shared Hierarchies’라는 주제로 진행되었다. Meta Learning의 핵심은 ‘학습 자체를 잘하기 위한 학습’이라는 점이다. 가장 큰 장점은 어떤 모델을 학습하기 전에 미리 다른 모델에 대한 학습을 진행하여 목표하는 머신 러닝 알고리즘으로 하여금 좋고 빠른 성능을 내게 한다. 이는 강화학습으로 풀어나갈 수 있는데, 한 policy를 여러 K개의 sub-policy 분할하여 각각 랜덤으로 업데이트를 하며 이를 통해 hierarchy의 가장 윗단에 있는 policy를 업데이트 한다. 강화학습과 meta learning을 접목시켜 효율적인 학습을 용이하게 하는 시도였다고 생각한다. 다만 K라는 hyperparameter가 가지는 의미와 어떻게 K를 지정할 수 있을까는 계속 고민해 보아야할 문제인 것 같다. 발표를 들으며 떠올랐던 것은 “AI를 위한 AI” 문구였다. 특정 데이터를 분석할 때 어떤 모델을 쓰고, 어떤 파라미터를 지정해주고, 얼만큼의 엔지니어링이 필요한가에 대한 정보까지 AI를 사용하게 될 것이라는 이야기를 최근 학회에서 들은 기억이 있다. 데이터를 분석하고 매니지 하는 사람으로서 어떤 적합한 모델을 쓰고 튜닝하는 것에만 초점을 둘 것 만이 아니라, 도메인 지식과 최신 알고리즘의 가장 효율적인 결합에 대한 고민도 AI를 위한 AI가 곧 실현되는 것에 대한 준비일 것 같다.

금일 세미나는 Meta Learning shared hierarchies 을 주제로 진행되었다. Meta Learning 이라는 것은 학습 하는 방법을 학습하는 개념으로써, 한가지를 잘 수행하는 방법을 알게 되면 다른 일도 잘 수행할 수 있다는 것을 의미한다. 결국 Meta learning 은 새로운 환경이 주어졌을 때, 효율적으로 학습을 수행할 수 있는 것을 의미한다. 따라서 일반적인 학습모델에서는 Test Data 를 이용하여 모델을 검증하지만, Meta Learning 에서는 meta-testing data(test 를 위한 training data와 test data) 를 이용하여 모델을 검증한다. 이는 weight 를 공유한다는 점에서 transfer learning 과 유사하며, 여러 task 를 수행한다는 점에서 multi task learning 과 유사하다. 이를 강화 학습에 적용하면 큰 policy를 갖는 문제는 학습이 되기 어려운데, 이를 작은 형태의 policy로 나누어 학습하는 방식으로 변경하여 학습을 효율적으로 진행할 수 있다. 논문에서 수행한 평가를 보면 기존에는 학습하지 못하던 문제에 대해서 학습이 가능함을 보였다. 오늘 세미나는 통하여 Meta Learning 이라는 학습 방식에 대해 알게 되어 좋았고, 이를 이용하여 기존에 진행하던 연구가 더 나아질 수 있는 방안을 찾을 수 있도록 생각해 볼 수 있는 좋은 세미나였다.

금번 세미나는 "Meta learning shared hierarchies"라는 주제로 연구실의 최고참인 박영준님이 발표해 주셨다. 발표를 소개하면서 해당 논문의 저자가 고등학생이라는 사실은 충격적이었다. 본 세미나는 학습을 위한 학습이라는 주제를 가지고 시작하였다. 간단한 예시로 숫자를 모르는 사람에게 덧셈/뺄셈을 가르치는 것 보다는 숫자의 개념은 알고 있는 사람에게 곱셈/나눗셈을 가르치는것이 쉽고, 처음부터 중국요리를 가르치는 것보다는 한국요리를 잘하는 사람에게 중국요리를 가르치는 것이 더욱 쉽다는 개념으로 바탕으로 알고 있는 지식이 많아질 수록 학습이 잘된다는 개념이었다. 저자는 이 개념에 Hierarchies개념을 추가하여 학습할 대상을 작게 구분해 학습시키는 방법으로 연구결과를 증명해 내었다. 비록, 본 논문의 효과를 증명하기 위한 산술적 근거가 미약하며 지정해 주어야 하는 Hyper-parameter가 많이 있다는 점등 추가 보완이 필요한 부분이 많았지만, 앞으로 연구하는데 큰 영감을 갖게 해주는 좋은 세미나였다. 새로운 개념의 논문을 소개해준 박영준님께 감사하다.

금일은 Meta Learning shared hierarchies을 주제로 한 세미나를 들었다. Meta Learning이란 배우는 것을 위해 배우는 것으로, 학습 자체를 학습할 수 있는 능력을 키우는 것을 의미한다. 여기서 학습이란 여러 개의 경험이고, 이 경험들을 통해 학습의 Performance를 빠르게 향상 시킬 수 있게 된다. 즉, 새로운 환경이 주어졌을 때, 이전에 비해 빠르게 학습하고 좋은 Performance를 낼 수 있게 하는 것이 Meta Learning의 장점이라고 말할 수 있다. 이번 세미나에서 흥미로웠던 점은 Master policy를 달성하기 위해 하위 개념인 Sub-policies를 설정하고 해당 Sub-policies의 특정한 Task를 주어지지 않은 상황에서 모델의 학습을 진행한다는 점이었다. 명확한 Sub-policies를 지정하지 않고 단순히 Sub-policies 개수만 정한 상태에서 모델을 학습 시켰을 때 과연 학습이 잘 될지 궁금했기 때문이다. 생각과는 달리 학습은 잘 진행되었다는 것을 Mujoco 등의 실제 사례로 확인할 수 있었다. 또한, Random하게 Sub-policies를 준 상황에서 학습을 진행하는 것이 정확한 Task의 Sub-policies를 준 상황에서 학습을 진해하는 것보다 잘 될 수 있는지에 대해 의문이 있었는데, ‘학습이 잘 되도록 Sub-policies를 정확하게 설정할 수 있는 배경지식이 없는 경우에 이 방법론이 유용하다.’는 이야기를 통해 의문점이 해소될 수 있었다. 항상 강화학습은 어려운 개념이라는 생각부터 들게 된다. 하지만 그럼에도 불구하고 항상 사례를 중심으로 쉽게 설명해주려는 영준이 형에게 다시 한번 감사함을 느꼈다.

금일 세미나는 meta learning shared hierarchies라는 제목의 논문을 바탕으로 meta learning에 대한 기본적인 개념과 이를 강화학습에 적용했을 때 어떤 효과를 얻을 수 있는가에 대해서 다루었다. Meta learning이란 간단하게 표현하면 ‘학습을 위한 학습’이라고 정의할 수 있다. 여러 데이터셋으로부터 모델이 경험(experience)를 쌓고 다양한 작업(task)를 수행한 다음에 기존 경험을 토대로 새로운 데이터와 작업에 대해서 보다 수월하게 학습을 하고 향상된 모델 성능을 얻는 것이 목적이다. Transfer learning과 multi-task learning과도 연관이 많은 분야이다. 강화학습에서는 meta learning을 구현하기 위해 계층적 모델 구조를 구성한다. Hierarchical reinforcement learning (HRL)은 큰 문제를 여러 개의 작은 문제로 분할하여 scalability issue를 해결한다. 오늘 발표한 논문에서 주목할만한 점은 HRL을 구성하는데 있어서 각각의 작은 문제들을 사람이 직접 명시하지 않아도 된다는 점이었다. 마치 K-means clustering처럼 sub-policy의 개수를 정하고 최종적으로 action을 취할 수 있는 master policy를 추가하면, 학습하는 과정에서 모델이 자동적으로 서로 다른 policy를 학습하게 만드는 것이다. 모델을 학습하는 과정은 task sampling, warmup, joint update 3가지로 구분되는데 K-means clustering의 학습 과정(warm up, EM)과 상당히 유사해보인다는 점이 재밌었다. 다양한 실험을 통해 모델의 성능을 평가했지만, 약간 아쉬웠던 점은 sub-policy들이 어떤 기능을 학습했는지 확인할 수 있었으면 좋겠다는 생각을 했다.

금일 “Meta Learning Shared Hierarchies”라는 주제로 세미나가 진행하였다. 간단하게 예를 들어 설명을 해주었는데 김병만의 자격증을 가지고 예를 들어주었다. 보유한 자격증이 엄청 많은데 그것들을 처음 따려고 시도했을 때는 많이 힘들었을 테지만 나중에는 그 전에 딴것보다는 훨씬 쉽게 취득했을 것이다. 이와 마찬가지로 Meta Learning 도 사전에 먼저 학습을 하면 더 쉽게 목적을 달성할 수 있다는 것이다.(배우는 것을 위한 배우는 것 이라고 표현 하였다.)
Meta learning 은 transfer learning 과 multi-task learning 이 합쳐진 듯한 개념이라고 설명하였다. 빠르게 학습하는 것이 중요한 것인데 이를 위해 계층적인 명령체계를 (HRL) 구축하였다. 예시는 로봇의 관절의 움직임을 이용하여 목적지까지 가서 무언가를 수행하는 것이다. 즉 로봇에게 화장실 쪽으로 가서 문을 열고 손을 씻어 를 시켰을 때 최종 목표인 손을 씻어가 이루어지면 상이 있어야 하는데 이것과 문을 여는 것 그쪽으로 가는 것 들은 전부 관련이 없다. 이를 위해 계층을 두어 걷기/문을 열기/손을 씻기 로 구분하여 동작하게 하는 것이다. 이를 수행할 때 처음부터 아무것도 없이 하는것보다 Meta learning 을 이용하여 미리 학습을 하고 수행 할 때 더 좋은 성능을 낸다고 나왔다. 좋은 논문을 알기 쉽게 설명을 해 주어 이해가 잘 갔다.

강화학습에 대해 오늘과 같이 심도 있는 내용을 접한 것은 처음이었다. 강화학습은 인간이 학습하는 과정을 잘 모사했다고 생각되어 항상 흥미를 가지고 있었던 분야였지만 관련 기초가 없어 아이디어 위주로 발표를 청강하였다. 오늘 이루어진 발표는 High-Level의 Policy로부터 모델이 k개의 Low-Level Policy를 스스로 정의하는 내용의 연구에 대한 것이었다. 기존의 Hierarchical reinforcement learning(HRL)은 Sub-Policies들을 직접 정의해주어야 했지만 이 연구에서 제안한 방법론은 그 개수를 지정해 주는 것 만으로 각각의 Sub-Policies가 하는 역할과, 상황에 따라 어떤 Policy를 사용할 지 모델이 스스로 학습한다. 모델이 스스로 학습한 Sub-Policies는 인간이 생각하는 것과 차이가 있을 수 있는데, 이 때문에 본 방법론이 군집화 알고리즘과 비슷한 컨셉을 가지고 있다고 생각했다. 불필요한 사전 지식 없이 문제를 해결하는 데 필요한 Sub-Policies만을 직접 학습하기 때문에 더 효율적으로 주어진 문제 상황을 해결할 수 있을 것이고, 다양한 문제를 일반화된 모델을 사용하여 해결할 수 있을 것 같다.

이번 세미나의 주제는 Meta Learning을 활용한 Reinforcement Learning에 관한 내용이었다. 우선 Meta learning이란 학습을 위한 학습을 의미한다. 즉, 어떤 Task에 대해 학습이 되었을 때 다른 Task에 대한 학습을 더 쉽게 할 수 있다는 개념이다. 어떻게 보면 과거의 학습된 모델을 갖고 와서 적용하는 transfer learning이나 multitask learning과도 유사하다고 볼 수 있다. 이러한 개념을 강화학습에 적용하기 위해서 기존의 policy개념을 sub-policy와 master-policy로 구분하였다. 각각의 sub-policy들은 state를 받아서 각각 action에 대한 확률 분포를 내보내고, master-policy는 그 분포들과 state를 받아서 최종적으로 action이 나오게 된다. 즉 Policy들를 계층적으로 구성하여 하위 sub-policy들을 이용하는 구조이다. 이 모델의 장점은 직접적으로 sub-policy를 구성하지 않아도 적절한 sub-policy들이 형성되며, 결과적으로 보았을 때 각각의 sub-policy가 어떤 의미 있는 행동을 나타내는 경우가 많다. 결과를 보고 의미를 부여하는 사후분석한다는 의미에서 이러한 구조를 이용하여 모델 해석에 도움이 될 것 같다는 생각이 들었다. 또한 직접적으로 sub-policy의 목적을 설정하지 않아도 된다는 점에서 더 자유로운 모델이 가능한 것 같다. 또한 완전히 독립된 task를 하는 경우는 거의 없기 때문에 다른 분야에도 적용할 수 있을 것 같다.