본문 바로가기

About my life/Undergraduate Researcher

[REVIEW] Curriculum Learning for Reinforcement Learning Domains: A Framework and Survey

728x90
반응형

 

Curriculum Learning for Reinforcement Learning Domains: A Framework and Survey

  • Curriculum Learning 에 대한 모든 것
  • 논문에서 제시하는 Framework를 사용하여 미결 문제 찾기
  • RL , CL 연구를 위한 방향성 제시

What is Curriculum Learning ?

-> 인간 발달 , 정규 교육 등 보편적인 학습 방법

-> 연속적인 하위 게임에서 새로운 기술을 배우고 이전 게임에서 배운 지식을 바탕으로 달성해야하는 새로운 요소가 도입됨.

-> 학습을 가속화하거나 향상시키기 위해 에이전트가 시간이 지남에 따라 휙득하는 경험을 정렬하는 역할로 과거의 경험을 정리하는 일과, 목표에 대한 훈련을 통해 경험을 습득하는 일을 모두 포괄하는 일반적인 개념

Ex) 스포츠를 배울 때 교육 과정을 순차적으로 구성하고 구조화하는 것.

Ex) 체스에서 첫 번째는 이동, 승진 등을 학습. 두 번째는 환경에 왕 추가하여 왕 살려두는 목표. 세 번째는 완전한 체스

Fig 1. Different subgames in the game of Quick Chess, which are used to form a curriculum for learning the full game of Chess [1]

  • 훈련 예제의 순서 중요
  • 훈련 예제의 점진적 난이도

Fig 2. One example of curricula designed by human users [1]

How can it be represented for reinforcement learning tasks?

-> Intermediate task generation

  • The primary challenge is how to sequence a set of tasks to improve learning speed
  • useful source tasks to select from
  • still rely on some human
  • automatic or hand-operated

-> Curriculum representation

  • 가장 일반적인 형태는 방향성 비순환 그래프
  • 다대일, 일대다 및 다대다 작업에서 전이하는 전이 학습 방법
  • single , sequence , graph

-> Transfer method

  • 전이 학습 아이디어를 활용하여 커리큘럼의 작업 간에 지식을 전달
  • 전달되는 지식 유형 : 전체 정책 , 가치 함수 , 전체 작업 모델 , 부분 정책 , 형성 보상 등
  • 단일 작업의 샘플을 시퀸싱할 때 전이 학습 알고리즘이 필요하지 않음

-> Curriculum sequencer

  • automatic
  • domain expert
  • user

-> Curriculum adaptivity

  • 교육 전 정적 설계 : 도메인 및 가능한 학습 에이전트의 속성 사용
  • 교육 중 동적 설계 (적응형) : 에이전트가 학습 중 직면한 목적에 관련된 속성의 영향을 받음

-> Evaluation metric

  • 생성, 사용 비용은 매몰 비용으로 처리 -> 목표에 대한 성능에만 관심
  • curriculum 중간 작업에 대한 비용이 고려됨 , 사람이 손으로 디자인한 경우 등
  • 생성 비용과 교육 비용을 설명함

-> Application area

  • 장난감
  • sim 로봇
  • real 로봇
  • 비디오 게임
  • 기타

Curriculum Learning for Reinforcement Learning Agents

-> Task Generation

  • 유익한 중간 작업을 만드는 것
  • 모든 작업은 최종 작업과 관련이 있어야 함
  • 작업 단순화 , 작업 차원 줄이기 , 높은 보상에 가까운 상태를 추가하여 초기 상태 세트 수정
  • 실수가 감지되기 몇 단계 전으로 되감고 학습 재개

-> Sequencing

학습을 용이하게 하는 방법

작업 또는 샘플이 주어지면 순서대로 정렬하는 것.

ㄴ sample sequencing

  • sample sequencing : 훈련 예제가 특정 순서로 학습자에게 제공됨
  • 강화학습으로 예시를 들면 priority experience replay 하는 것.
  • TD error , CI 함수를 이용하여 priority 구성 혹은 시퀸싱
  • ScreenerNet , PER approach , HER, CHER , EBU

ㄴ Co-Learning

  • 다중 에이전트 접근 방식
  • TD-Gammon , AlphaGo , AlphaStar
  • 협력적이거나 적대적으로 행동하여 새로운 행동의 습득을 촉진
  • asymmetric self-play, RARL
  • Ex) 숨바꼭질에서 찾는 에이전트와 숨는 에이전트 함께 학습

ㄴ Reward and Initial / Terminal state distribution changes

  • 환경을 다르게 하는 것
  • 총 쏘는 것이 목표일 때 초기 상태 분포를 목표 상태에 가깝게 시작하고 후속 작업에서 점진적으로 더 멀리 이동하여 학습할 수 있도록 일련의 작업을 만드는 것
  • GAN , SAGG-RIAC
  • 적응형 커리큘럼 학습 전략 : 에이전트가 현재 환경에서 잘 수행하면 확률 분포가 더 어려운 작업으로 이동

ㄴ No restrictions

① MDP/POMDP

  • tasks 와 상호작용하는 에이전트와 tasks 를 선택해주는 에이전트로 나눔.
  • 곡선 기울기의 절대값이 가장 높은 task 를 선택 , 추가 시간이 필요한 task 선택 등

② 시퀸스에 대한 조합 최적화

  • 고정된 tasks가 주어지면 최상의 커리큘럼으로 이어지는 순열을 찾음. Ex) 블랙박스 최적화.

③ 방향성 비순환 작업 그래프

  • 비순환 방향성 작업 그래프
  • 한 노드에서 다른 노드로 향하는 edge 는 한 task가 다른 task의 원본임을 의미.

④ 중간 Task에 소요되는 시간

  • 성능이 안정될 때까지 중간 Task에 대해 훈련
  • 성능이 증가하면 CT가 증가하고, 성능이 감소하면 학습 속도를 느리게 하는 적응형

ㄴ Human-in-the-Loop curriculum 생성

  • 현재까지 나온 것들은 시퀸싱 알고리즘을 사용하여 자동으로 커리큘럼을 생성하는 것
  • 커리큘럼 설계에 접근하는 방법을 더 잘 이해하는 것이 중요
  • 교육 일정을 나누어 각 기술들을 각각 학습할 수 있게 하는 것.
  • 이때 발생되는 문제점은 직선 보행에서 속도를 빠르게 최적화 시켰는데 회전할 때 넘어지는 문제가 발생될 수 있어서 중첩 계층 학습이라는 아이디어를 활용
  • SABL (Strategy-Aware Bayesian Learning)

-> Knowledge Transfer

  • 어떤 task에서 학습한 지식을 재사용할 지
  • 어떤 종류의 지식을 재사용할 지
  • 에이전트의 유형에 따라 어떤 것을 적용할 지
  • Ex) 전체 policy , 부분 policy , value function , model

What is Transfer Learning ?

  • A를 학습시키기에 데이터가 부족할 때, 학습 데이터가 많은 B를 학습시켜 A를 해결하는 것. 이때 부분적으로 레이어를 변경하여 그 부분만 재훈련하는 방법
  • 이미 사전에 학습된 모델을 이용하여 재사용할 레이어 수와 재교육할 레이어 수를 정함
  • Deep Learning 을 활용하여 데이터 수 줄이기 혹은 학습 속도 개선

Curriculum Learning (CL) 정리

▣ 인간이 교육받고 성장하는 과정과 비슷한 원리

  • 중등 수학 -> 고등 수학 -> 대학교 수학
  • 여러 교육과정 중 선택해서 듣되 최종적으로는 모든 교육과정을 수강

▣ CL은 Task generation , Sequencing , Knowledge Transfer 총 세 가지의 중요한 구성 요소

  • Task generation 는 유용한 중간 경험을 만드는 것
  • Sequencing 는 학습을 용이하게 하는 방법
  • Knowledge Transfer 는 다음 단계로 넘어갈 때 기존에 있던 지식 중 어떤 지식을 갖고 갈 지

▣ Task

  • 작업을 달성했는 지를 평가하는 기준이 애매모호 함
  • 학습했다는 기준을 어떤 것으로 해야할 지에 대한 고민
  • 최적의 정책으로 수렴할 때까지 or Reward 평균 이상 등등
  • 위 기준을 정해서 각 기준을 넘으면 다음 curriculum으로 넘어감

▣ Sequence

  • Graph 와 Linear
  • Graph : 정해진 순서는 없고 뒤죽박죽 학습함
  • Linear : 정해진 순서에 따라 학습함

FIg 3. Examples of structures of curricula from previous work [1]

  • 왼쪽 그림은 Linear sequences
  • 오른쪽 그림은 Directed acyclic graphs in block dude.

▣ Environment

  • 학습 전 미리 curriculum env 구성
  • online 혹은 offline 가능
  • online : 에이전트의 학습 진행 상황에 따라 에지가 동적으로 추가 됨. (Single task CL , Task level CL , Sequence CL)
  • offline : 이미 정해져있는 에지를 선택하게 됨.

▣ Transfer Intelligence

  • CL에서는 Transfer Learning 을 이용함
  • 전체 정책 , 가치 함수 , 전체 작업 모델 , 부분 정책 , 형성 보상
  • 특정 층 혹은 노드만 이전하는 경우도 있음.
  • 입력 노드의 개수를 추가해주는 경우도 있음.

▣ Curriculum Learning 의 한계

  • 유익하다는 것은 경험적으로 증명됐지만 curriculum 이 why , when 유용하고 how 만들어야하는 지 부족함

실제 적용할 때 주의사항

  • 수동으로 할 것임
  • Linear
  • 각 curriculum 별로 난이도 조정
  • 어떤 지식을 이전할 지
  • offline or online
  • Fine-Tuning 시 하이퍼 파라미터 조정

 

Refernce

1. Sanmit Narvekar, Bei Peng, Matteo Leonetti, Jivko Sinapov, Matthew E. Taylor, and Peter Stone. 2020. Curriculum learning for reinforcement learning domains: a framework and survey. J. Mach. Learn. Res. 21, 1, Article 181 (January 2020), 50 pages.

728x90
반응형