Curriculum Learning for Reinforcement Learning Domains: A Framework and Survey
- Curriculum Learning 에 대한 모든 것
- 논문에서 제시하는 Framework를 사용하여 미결 문제 찾기
- RL , CL 연구를 위한 방향성 제시
What is Curriculum Learning ?
-> 인간 발달 , 정규 교육 등 보편적인 학습 방법
-> 연속적인 하위 게임에서 새로운 기술을 배우고 이전 게임에서 배운 지식을 바탕으로 달성해야하는 새로운 요소가 도입됨.
-> 학습을 가속화하거나 향상시키기 위해 에이전트가 시간이 지남에 따라 휙득하는 경험을 정렬하는 역할로 과거의 경험을 정리하는 일과, 목표에 대한 훈련을 통해 경험을 습득하는 일을 모두 포괄하는 일반적인 개념
Ex) 스포츠를 배울 때 교육 과정을 순차적으로 구성하고 구조화하는 것.
Ex) 체스에서 첫 번째는 이동, 승진 등을 학습. 두 번째는 환경에 왕 추가하여 왕 살려두는 목표. 세 번째는 완전한 체스
- 훈련 예제의 순서 중요
- 훈련 예제의 점진적 난이도
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 : 정해진 순서에 따라 학습함
- 왼쪽 그림은 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.
'About my life > Undergraduate Researcher' 카테고리의 다른 글
[ICROS] DQN-based Collision Avoidance using Low-cost Proximity Sensors (44) | 2023.11.22 |
---|---|
[REVIEW] Hierarchical multi-robot navigation and formation in unknown environments via deep reinforcement learning and distributed optimization (194) | 2023.11.21 |
[논문] SCI, SCIE, SSCI, AHCI 저널 등급 확실한 구분 및 의미 (1) | 2023.11.21 |
[PAPER] 효과적인 논문 작성을 위한 학술 검색과 유용한 도구들 (0) | 2023.11.20 |
[Linux] booting -> Login 이후 검은화면 (0) | 2023.07.28 |