Lecture 1. Introduction - Lecture 2. Imitation Learning Part 2

Lecture 1. Introduction

https://rail.eecs.berkeley.edu/deeprlcourse/deeprlcourse/static/slides/lec-1.pdf

RL κ³Ό μ œμ–΄, μ΅œμ ν™”λ₯Ό κ²°ν•©ν•˜μ—¬ λ”₯λŸ¬λ‹ λ°©μ‹μ˜ κ°•ν™”ν•™μŠ΅μ€ μ‚¬λžŒμ— μ˜ν•΄ μˆ˜ν–‰λ˜λŠ” 졜근의 AI (Generative AI) 보닀 μ™„μ „νžˆ μƒˆλ‘œμš΄ ν•΄λ‹΅ / 방식을 μ°Ύμ•„λ‚Ό 수 μžˆλ‹€.

κ°•ν™”ν•™μŠ΅μ΄ λ‹€λ₯Έ λ¨Έμ‹ λŸ¬λ‹κ³Ό λ‹€λ₯Έμ 

κΈ°μ‘΄ λ¨Έμ‹ λŸ¬λ‹(supervised) λŠ” μ •λ‹΅μ§€κ°€ μžˆλŠ” 데이터셋을 κ°€μ§€κ³  input에 λŒ€ν•œ 정닡을 μ–»μ–΄λ‚΄λŠ” ν•¨μˆ˜λ₯Ό μ°ΎλŠ” 것

κ°•ν™”ν•™μŠ΅μ€ μ •λ‹΅μ§€ λŒ€μ‹ μ— 보상 κ°œλ…μ„ μ΄μš©ν•΄ μ„±κ³΅μ μœΌλ‘œ μ–΄λ– ν•œ λͺ©μ μ„ μˆ˜ν–‰ν•  수 있게 ν•œλ‹€.

결둠적으둜, μ΅œλŒ€μ˜ 보상( return )을 얻을 수 μžˆλŠ” 일련의 행동( action )을 μ„ νƒν•˜λŠ” ν•¨μˆ˜( policy )λ₯Ό μ°ΎλŠ” 것

κ°•ν™”ν•™μŠ΅μ„ λ°°μ›Œμ•Ό ν•˜λŠ” 이유?

μœ„μ—μ„œ 처럼 μƒˆλ‘œμš΄ ν•΄λ‹΅μ΄λ‚˜ 접근을 μ°Ύμ•„λ‚Ό 수 μžˆλ‹€. 데이터λ₯Ό μ΄μš©ν•œ AI 듀은 인간보닀 더 μž˜ν•˜κΈ°λŠ” νž˜λ“€λ‹€(의미적으둜). μ£Όμ–΄μ§„ λ°μ΄ν„°μ—μ„œ 잘 ν•˜λŠ” 것이 μ΅œμ„ μ΄λ‹€.

RL은 λŒ€μ‹ μ— λͺ©μ μ„ μ°Ύμ•„λ‚΄λŠ”λ° μ§‘μ€‘ν•˜κΈ° λ•Œλ¬Έμ— μ΅œμ ν™”μ™€ κ΄€λ ¨μžˆλ‹€.

κ·Έλž˜μ„œ R.Sutton 의 λ§λŒ€λ‘œ Learning으둜 데이터λ₯Ό μ΄μš©ν•΄ μš°λ¦¬κ°€ λ³΄λŠ” λ°©μ‹κ³ΌλŠ” λ‹€λ₯Ό 수 μžˆμ§€λ§Œ ν™˜κ²½μ„ 이해할 수 있게 ν•΄μ£Όκ³  μ΄ν•΄ν•œ λ‚΄μš©μ„ λ°”νƒ•μœΌλ‘œ Search을 μˆ˜ν–‰ν•΄μ•Ό ν•  것이닀. (data + optimization )

Reward λ₯Ό μ–΄λ–»κ²Œ ν•  것인가

μž”μ— μžˆλŠ” 물을 λ”°λ₯΄λŠ” 것 처럼 인식이 μ–΄λ €μš΄ λ¬Έμ œλ„ μžˆμ§€λ§Œ, μ•„μ£Ό κΈ΄ μ‹œκ°„ λ™μ•ˆ ν•œ λ‘λ²ˆ 밖에 이루어지지 μ•ŠλŠ” 보상듀 (μ‘Έμ—…, 취직 λ“±λ“±)은 μ μ ˆν•˜κ²Œ μ„€μ •ν•˜κΈ°λ„ μ–΄λ ΅κ³  이후에 κ³Όμ •μ—μ„œ 보상이 μ΄λ£¨μ–΄μ§€λŠ” κ²½μš°κ°€ λ§Žλ‹€.

또, 동물듀 같은 κ²½μš°λŠ” μ—¬λŸ¬ μ‹œλ„λ₯Ό 톡해 사λƒ₯을 λ°°μš°λŠ” 것이 μ•„λ‹ˆλΌ λ³ΈλŠ₯적 ν˜Ήμ€ λ‹€λ₯Έ 동물듀을 κ΄€μ°°ν•˜λ©° 사λƒ₯법을 μŠ΅λ“ν•œλ‹€.

κ·Έλž˜μ„œ μ΅œκ·Όμ—λŠ” Imitation Learning μ΄λ‚˜ Inverse Learning 기법듀을 μ‚¬μš©ν•œλ‹€.

μ΅œκ·Όμ— 많이 λ°œμ „ν•œ Pre-train λͺ¨λΈμ„ μ‚¬μš©ν•˜κΈ°λ„ ν•œλ‹€. LLM 을 톡해 이미지λ₯Ό μ²˜λ¦¬ν•˜κ³  이λ₯Ό 톡해 얻은 지식을 λ‘œλ΄‡μ— λ„£μ–΄μ€€λ‹€.

λ‚¨μ•„μžˆλŠ” Challenges

λ§Žμ€ 데이터λ₯Ό ν•™μŠ΅μ‹œν‚€λŠ” 방법과 RL을 μ‚¬μš©ν•˜λŠ” 방식 λͺ¨λ‘ 근래의 λ§Žμ€ 연ꡬ가 μ§„ν–‰λ˜μ—ˆμ§€λ§Œ, 데이터와 RL 을 λͺ¨λ‘ μ‚¬μš©ν•˜λŠ” ν˜μ‹ μ μΈ κ΅¬μ‘°λŠ” 아직 μ—†μŒ.

deep RL 은 보톡 느리고 λ³΄μƒν•¨μˆ˜λ‚˜ 예츑이 μ–΄λ–€ 방식이어야 ν•˜λŠ”μ§€ 아직 λͺ…ν™•ν•˜μ§€ μ•Šλ‹€.


Lecture 2. Imitation Learning

https://rail.eecs.berkeley.edu/deeprlcourse/deeprlcourse/static/slides/lec-2.pdf

Supervised Learning of Behaviors

보톡 observation κ³Ό state λ₯Ό ν˜Όμš©ν•˜μ—¬ μ‚¬μš©ν•˜μ§€λ§Œ state λŠ” ν•΄λ‹Ή μ‹œμ μ—μ„œμ˜ λͺ¨λ“  정보λ₯Ό ν¬ν•¨ν•˜κ³  μžˆλŠ” μͺ½μ— 가깝고 observation 은 κ·ΈλŸ¬ν•œ state μ—μ„œ 얻을 수 μžˆλŠ” μ •λ³΄λ‘œ ꡬ뢄해야 ν•œλ‹€.

κ·Έλ¦Όμ—μ„œμ˜ λŠ” observation λ‘œλΆ€ν„° μ–΄λ– ν•œ action λ₯Ό μ„ νƒν•˜κ²Œ ν•˜λŠ” policy 이닀.

Markov property 에 μ˜ν•΄ λŠ” κΉŒμ§€μ— λͺ¨λ“  정보λ₯Ό λ‹΄κ³  μžˆλ‹€κ³  κ°€μ •ν•œλ‹€.

Imitation Learning

μ „λ¬Έκ°€μ˜ 행동을 기반으둜 λ³΄μƒν•¨μˆ˜λ₯Ό μ„€μ •ν•˜μ—¬ policy λ₯Ό μ°ΎλŠ” 방법

ALVINN: https://proceedings.neurips.cc/paper/1988/file/812b4ba287f5ee0bc9d43bbf5bbe87fb-Paper.pdf

ν•˜μ§€λ§Œ μ΄λŸ¬ν•œ 방식은 μ‰½κ²Œ μ‹€νŒ¨ν•œλ‹€. μ‹œκ°„μ΄ 지남에 따라 잘λͺ»λœ 선택 ( mistakes ) κ°€ λˆ„μ λ˜κΈ°λ„ ν•˜κ³ , μ–΄λ–€ λ²”μœ„κΉŒμ§€ μ „λ¬Έκ°€μ˜ 행동을 λͺ¨λ°©ν•΄μ•Ό ν•˜λŠ”μ§€ λͺ¨ν˜Έν•˜κ³  변칙적인 상황에 μ·¨μ•½ν•˜λ‹€.

supervised learning μ—μ„œλŠ” μ΄λŸ¬ν•œ μ„±ν–₯이 λ‚˜νƒ€λ‚˜μ§€ μ•ŠλŠ”λ‹€. 3 개의 카메라λ₯Ό μ΄μš©ν•΄ 쒌/μš°μΈ‘μ— 이미지가 λ“€μ–΄μ˜€λŠ” κ²½μš°μ—λŠ” μ°¨λŸ‰μ˜ steering 을 μ‘°μ •ν•˜λ„λ‘ ν•œ 방식은 잘 λ„λ‘œλ₯Ό λ”°λΌκ°ˆ 수 μžˆμ—ˆλ‹€. λ˜ν•œ, μ΄μ „μ—μ„œλŠ” mistake κ°€ 생기면 κ΄€μΈ‘ν•˜μ§€ λͺ»ν•œ μƒˆλ‘œμš΄ ν™˜κ²½μ— λ†“μ˜€λ˜ 문제λ₯Ό data λ₯Ό augment ν•˜μ—¬ ν•΄κ²°ν•˜μ˜€λ‹€.

Why does behavioral cloning fail? A bit of theory

μ–΄λ–»κ²Œ ν•΄μ•Ό ν•™μŠ΅λœ λ₯Ό μ’‹κ²Œ λ§Œλ“€ 수 μžˆμ„κΉŒ?

ν•™μŠ΅ν•œ action 의 likelihood λ₯Ό μ΅œλŒ€ν™” ν•˜λŠ” 것은 아닐 것이닀.

μ΄λ ‡κ²Œ ν•˜λ©΄ μš΄μ „μžκ°€ μ‹€μ œλ‘œ λ³΄μ•˜λ˜ observation μ—μ„œ μ·¨ν–ˆλ˜ action 에 높은 ν™•λ₯ λΆ„포λ₯Ό ν• λ‹Ήν•˜κ²Œ 되고, μ΄λŠ” μ•½κ°„μ˜ λ‹€λ₯Έ μƒν™©μ—μ„œ mistake λ₯Ό μœ λ°œν•œλ‹€.

κ·Έλž˜μ„œ μš°λ¦¬λŠ” μ•„λž˜μ™€ 같이 cost ν•¨μˆ˜λ₯Ό μ •μ˜ν•΄λ³Ό 수 μžˆλ‹€.

μ·¨ν•œ action 이 μš΄μ „μžκ°€ μ·¨ν–ˆλ˜ action κ³Ό λ™μΌν•˜λ©΄ cost λ₯Ό 0으둜 ν•˜κ³ , 이 외에 κ²½μš°μ—λŠ” 1둜 λ‘λŠ” 것이닀. 이 경우 μš΄μ „μžκ°€ deterministic policy μž„μ„ κ°€μ •ν•œλ‹€.

μ‰½κ²Œν•˜μžλ©΄, mistake λ₯Ό μΌμœΌν‚€λ©΄ cost λ₯Ό λ°›κ²Œλ˜λŠ” 것이닀.

이제 λͺ©ν‘œλŠ” state 의 ν™•λ₯  λΆ„ν‘œμ—μ„œ κΈ°λŒ€λ˜λŠ” cost λ₯Ό μ΅œμ†Œν™” ν•˜λŠ” 것이닀.

Some analysis

전체 horizon μ‹œκ°„μ„ 라고 ν•˜μž. 그리고 ν•™μŠ΅λœ state 라면 () μš΄μ „μžμ™€ λ‹€λ₯Έ action 을 μ·¨ν•  ν™•λ₯ μ„ μ΄ν•˜λΌκ³  ν•˜μž.

κ·Έλ ‡λ‹€λ©΄ μ™Έμ€„νƒ€κΈ°μ²˜λŸΌ ꡉμž₯히 μ’‹μ§€ μ•Šμ€ κ²°κ³Όκ°€ λ‚˜νƒ€λ‚  것이닀.

ν•œ 번의 mistake λ₯Ό μ €μ§€λ₯΄λ©΄ 더이상 μš΄μ „μžκ°€ λ³΄μ•˜λ˜ state 에 μžˆμ§€ μ•ŠκΈ° λ•Œλ¬Έμ— 더이상 μ–΄λ–»κ²Œ ν• μ§€ λͺ¨λ₯΄κΈ° λ•Œλ¬Έμ΄λ‹€.

μ΄λŠ” cost κ°€ unbounded λ˜μ–΄ μžˆλŠ” ν™•λ₯ μ΄κΈ° λ•Œλ¬Έμ— 전체 cost 에 λŒ€ν•΄ bound λ₯Ό μ„€μ •ν•΄μ£Όμ–΄μ•Ό ν•œλ‹€.

첫 λΈ”λ‘μ—μ„œλŠ”(첫 번째 timestamp) 적어도 의 mistake λ₯Ό μ €μ§€λ₯΄κ²Œ 될 것이닀. mistake λ₯Ό μ €μ§€λ₯΄μ§€ μ•ŠμœΌλ©΄ λ‹€μŒ λΈ”λ‘μœΌλ‘œ λ„˜μ–΄κ°€κ²Œ 되고, μ΄λŸ¬ν•œ 과정이 반볡되며 κΈ‰μˆ˜λ₯Ό ꡬ성할 수 있게 λœλ‹€.

각 κ°€ 개 μžˆμœΌλ―€λ‘œ 전체 order λŠ” κ°€ λœλ‹€. μ΄λŠ” μ΅œμ•…μ— 경우, μ‹œκ°„μ΄ 지남에 따라 quadratic (제곱)으둜 μ‹€μˆ˜λ₯Ό μ €μ§€λ₯Ό ν™•λ₯ μ΄ μ˜¬λΌκ°μ„ μ˜λ―Έν•œλ‹€.

More general analysis

이제 λͺ¨λ“  state κ°€ training set 에 μžˆλŠ” 것()이 μ•„λ‹ˆλΌ training set 의 ν™•λ₯  λΆ„ν¬λ‘œλΆ€ν„° μƒ˜ν”Œλ§λ˜μ—ˆλ‹€κ³  ν•˜μž.

그러면 κΈ°λŒ“κ°’μ„ κ³„μ‚°ν•˜λŠ” κ²ƒμœΌλ‘œλ„ μΆ©λΆ„ν•˜κ³  더 ν˜„μ‹€μ μΈ 접근이닀.

DAgger λ₯Ό μ‚¬μš©ν•˜λ©΄ 둜 λ§Œλ“€μ–΄μ£Όκ³  λ₯Ό μ–»κ²Œλœλ‹€.

λ§Œμ•½ 인 κ²½μš°μ—λŠ” mistake λ₯Ό μ €μ§€λ₯΄μ§€ μ•Šμ„ ν™•λ₯ κ³Ό μ €μ§€λ₯Ό ν™•λ₯ λ‘œ λ‚˜λ‰˜κ²Œ λœλ‹€.

첫 번째 term 은 κ΅¬ν•˜κΈ° μ‰½μ§€λ§Œ 두 번째 term 의 λŠ” κ½€ λ³΅μž‘ν•˜λ‹€.

이제 μ•„λž˜ μˆ˜μ‹μ΄ 잘 μ΄ν•΄λ˜μ§€ μ•Šμ•˜λ‹€. 각 ν™•λ₯  λΆ„ν¬μ˜ μ΅œλŒ€ 차이λ₯Ό λͺ¨λ“  state 에 λŒ€ν•΄ λ”ν•˜λ©΄ 2 μ—¬μ„œ λ‹€μŒκ³Ό 같이 μ •λ¦¬λœλ‹€κ³  ν•œλ‹€.

λ₯Ό μ΄μš©ν•˜λ©΄ κ²°κ΅­ λŠ” μ΄ν•˜κ°€ λœλ‹€.

이λ₯Ό λ°”νƒ•μœΌλ‘œ μš°λ¦¬κ°€ μ§„μ§œ μ‚΄νŽ΄λ³΄κ³  싢은 cost 의 κΈ°λŒ“κ°’μ„ μ•Œμ•„λ³΄μž.

λͺ¨λ“  μ—μ„œ μ·¨ν•  action 의 cost λ₯Ό λͺ¨λ‘ λ”ν•œ 것을 μˆ˜μ‹μœΌλ‘œ ν‘œν˜„ν•œ 것인데, λ₯Ό 둜 λ°”κΎΈκ³  와 의 곱을 λ°”κΉ₯으둜 λΉΌλ‚΄μ–΄ bound λ₯Ό κ΅¬ν•΄λ³΄μž.

μ „μ œμ‘°κ±΄κ³Ό μœ„ν•΄μ„œ ꡬ해놓은 λΆ€λ“±μ‹μœΌλ‘œ λ°”λ‘œ μ–»μ–΄λ‚Ό 수 μžˆλ‹€. 이λ₯Ό 에 λŒ€ν•΄ 계산해주면 이 λœλ‹€.

κ²°λ‘ μ μœΌλ‘œλŠ” λ§ˆμ°¬κ°€μ§€λ‘œ 의 μ‹œκ°„λ³΅μž‘λ„κ°€ 됨을 μ•Œ 수 μžˆλ‹€.

μ™œ 이런 μ’‹μ§€ μ•Šμ€ κ²°κ³Όκ°€ λ‚˜νƒ€λ‚ κΉŒ? Imitation learning μ—μ„œλŠ” mistake λ₯Ό λ‹€μ‹œ λ³΅κ΅¬ν•˜λŠ” 방법을 λ°°μš°μ§€ μ•ŠκΈ° λ•Œλ¬Έμ΄λ‹€.

λ§Œμ•½ ν•™μŠ΅ν•œ state 의 뢄포가 더 λ„“λ‹€λ©΄, μ•½κ°„μ˜ mistake λ₯Ό ν•˜λ”λΌλ„ μ—¬μ „νžˆ μ΄λŸ¬ν•œ 뢄포 μ•ˆμ— μžˆμ„ κ²ƒμ΄λ―€λ‘œ 쑰금 더 잘 λ°°μš΄λŒ€λ‘œ λ‚˜μ•„κ°ˆ 수 μžˆμ„ 것이닀.

μ—¬κΈ°μ—μ„œ μƒκΈ°λŠ” λͺ¨μˆœμ μ€ imitation learning 이 데이터가 mistake λ₯Ό 같이 κ°€μ§€κ³  μžˆμ„ λ•Œ 더 쒋은 μ„±λŠ₯을 λ‚Ό 수 μžˆλ‹€λŠ” 것이닀.