강화 학습의 특성
행위자의 학습의 특성
- 시행 착오를 통해 학습
- 지도학습처럼 미리 준비된 데이터가 없음
- 행위자가 직접 행동하고, 그 결과로 데이터가 생겨남
- 따라서 어떤 행동을 하느냐에 따라 어떤 데이터를 얻는지가 달라짐
- 학습의 단서는 보상(reward) 하나뿐
- 보상은 행동의 결과가 얼마나 좋았는지를 나타내는 숫자
- 보상 피드백은 아래 세 가지 특성 때문에 정답보다 다루기 어려움
| 특성 | 설명 |
|---|---|
| 순차적 sequential | 자료가 한 방에 주어지지 않음. 행동에 대한 보상이 여러 스텝 뒤에 나타날 수 있음 |
| 평가적 evaluative | 좋은 행동인지는 알 수 있으나, 옳은 행동인지는 알 수 없음. 지도학습에는 정답이 제공됨 |
| 표본 추출된 sampled | 모든 상태, 행동을 다 해볼 수 없음. 표본(부분집합)만 접근 가능 |
순차적 피드백
- 지금의 행동이 다음 상태를 바꾸고, 다음 상태가 다시 다음 행동에 영향을 줌
- 바둑) 한 수의 결과는 대국이 끝나야 승패로 드러남
- 운전) 지금 차선을 바꾼 결과가 몇 분 뒤의 정체로 나타날 수 있음
- 눈앞의 보상만 보고 행동하면 장기적으로 손해를 볼 수 있음
평가적 피드백
- 지도학습: "정답은 B였다"라고 알려줌. 틀린 만큼 정답 쪽으로 고치면 됨
- 강화학습: "이번 행동은 +3점"이라고만 알려줌
- +3점이 잘한 것인지, 다른 행동을 했다면 +10점이었을지는 알 수 없음
- 더 좋은 행동이 있는지 알려면 다른 행동도 직접 해봐야 함
- 투자) 매수해서 5% 수익을 냈어도, 그것이 최선의 선택이었는지는 알 수 없음
표본 추출된 피드백
- 상태와 행동의 조합은 대개 셀 수 없이 많음
- 바둑의 가능한 국면 수는 우주의 원자 수보다 많음
- 행위자는 실제로 겪어 본 일부 경험만으로 배워야 함
- 겪어 보지 못한 상황에서도 잘 행동하려면 경험을 일반화할 수 있어야 함
기여도 할당(credit assignment)
- 어떤 행동이 나중의 보상에 기여했는지 판단해야 하는 문제
- 순차적 피드백 때문에 생기는 문제
- 시간 차원을 강조하여 (temporal) Credit Assignment Problem, 줄여서 CAP라고도 함
- 예시: 체스에서 첫 번째 수가 게임의 승리에 얼마나 기여했는지 평가
- 수십 수를 둔 뒤 승리라는 보상 하나만 받음
- 결정적인 한 수 덕분인지, 상대의 실수 덕분인지, 초반 포석 덕분인지 보상만으로는 알 수 없음
- 어려움:
- 시간 지연: 행동과 보상 사이에 시간 간격이 존재
- 다양한 경로: 동일한 보상에 도달할 수 있는 여러 행동 경로가 존재
- 복잡한 상호작용: 행동들이 서로 영향을 미침
해결의 방향
- 보상을 받기 전의 행동들에게 보상을 나누어 줌
- 보상에 가까운 행동일수록 더 많이, 먼 행동일수록 적게 나누는 방식이 흔함(할인)
- 각 상태나 행동이 앞으로 얼마나 보상을 가져올지 예측하는 값(가치)을 학습
- 가치를 알면 최종 결과를 기다리지 않고도 각 행동을 평가할 수 있음
- 이후에 배울 할인, 가치 함수, 시간차 학습 등이 모두 이 문제를 다루는 방법
탐색(exploration)
- 보상을 얻을 행동을 직접 찾아야 하는 문제
- 평가적, 표본 추출된 피드백 때문에 생기는 문제
- 정답이 주어지지 않으므로, 시도해 보지 않은 행동이 좋은지는 알 수 없음
- 예시: 새 동네의 식당 고르기
- 처음 간 식당이 괜찮았다고 계속 그곳만 가면, 더 좋은 식당을 영영 모름
- 새 식당을 계속 시도하면, 맛없는 식사를 여러 번 해야 함
탐색과 활용의 균형
- 탐색(exploration): 잘 모르는 행동을 시도하여 정보를 얻음
- 활용(exploitation): 지금까지 알기로 가장 좋은 행동을 선택하여 보상을 얻음
- 둘은 서로 충돌함
- 탐색만 하면 배운 것을 써먹지 못함
- 활용만 하면 처음 찾은 그럭저럭 괜찮은 행동에 갇힐 수 있음
- 보통 학습 초기에는 탐색을 많이, 학습이 진행될수록 활용을 많이 함
- 대표적인 방법: 대부분은 가장 좋은 행동을 고르고, 가끔 무작위 행동을 하는 ε-탐욕(ε-greedy)
지도학습과 비교
| 지도학습 | 강화학습 | |
|---|---|---|
| 데이터 | 미리 주어짐 | 행동하면서 직접 수집 |
| 피드백 | 정답 | 보상(점수) |
| 피드백 시점 | 입력마다 즉시 | 여러 스텝 뒤에 올 수 있음 |
| 고유한 문제 | 없음 | 기여도 할당, 탐색 |
퀴즈
행위자의 학습에서 데이터 접근 방식에 대한 설명으로 올바른 것을 모두 고르세요.
퀴즈를 풀려면 대화형 기능을 불러와야 합니다.