1강 - 강화학습이란
강화학습 = Trial and Error을 통해 학습하는 방법
순차적 의사 결정 문제 = 시간 순서대로 주어진 상황에서 목적에 도달하기 위한 행동을 취하고, 그에 변화한 상황을 근거로 다시 행동을 취한다.
보상 == 피드백 = 의사 결정을 했을 때 잘 했는지 못했는지를 알려주는 수치(스칼라 값)
보상은 지연될 수 있으며, 어떤 행동으로 인해 보상으로 주어졌는지 판단을 나중에 할 수 있다.
강화학습 목적 = 누적 보상의 최대화
에이전트 == 학습자 = 현재상황 St에서 At를 결정한다. 그럼 그에 따른 보상 R(t+1)을 받고 다음 상태S(t+1)의 정보를 받는다.
환경 = 에이전트를 제외한 모든 요소
강화 학습의 장점 - 병렬성, 자가학습
2강 - 마르코프 결정 프로세스
마르코프 프로세스 == MP = 상태(S)가 있고, 상태의 변화를 확률적(P)으로 정의한다.
미래는 오직 현재에 의해 결정되며, 즉 St이전의 S(t-1)은 영향을 주지 못한다. St는 한장의 사진도 될 수 있지만 10장의 사진도 될 수 있다. 어떻게 정의하느냐에 따라 다르다.
마르코프 리워드 프로세스 == MRP = MP에 보상(R)의 개념이 추가되었다.
감쇠인자(0~1)가 추가되어 미래의 보상을 얼마나 중요하게 여길지 알려주는 파라미터가 있다. -> 리턴이 과도하게 커지는 현상 방지, 미래의 불확실성 반영
에피소드 = S0 시작 ~ ST 끝 까지 가는 여정
리턴 == Gt = t시점부터 에피소드가 끝날 때 까지 받는 보상의 합 -> 강화학습은 리턴을 최대화 하도록 학습
밸류 평가 = 현재 상태에서 미래에 받을 보상을 평가 == Gt의 기댓값(확률) 측정
상태 가치 함수 = 임의 상태 S의 밸류 평가
마르코프 결정 프로세스 == MDP = MRP에 액션(A)의 개념이 추가되었다.
상태 가치 함수 = 에이전트의 정책에 따라 리턴(G)이 바뀐다. => 정책의 현재 가치 파악 가능하다.
정책 함수 = 현재 상태(S)에서 어떤 액션(A)을 취할지 선택해준다. => 액션의 결정
액션 가치 함수 = 현 상태(S)에서 액션(A)의 가치 평가 => 어떤 액션이 좋은지 알려준다. -> 최선 액션의 나열 == 정책
Prediction = 정책이 주어졌을 때 각 상태의 벨류를 평가하는 문제
Control = 최적 정책을 찾는 문제
MDP에서 최적 정책이 최소 한개 존재한다고 수학적으로 증명되어 있다.
3강 - 벨만 방정식
벨만 방정식 = 시점 t와 t+1사이의 벨류의 관계 및 가치 함수와 정책 함수 사이의 관계도 다룬다.
여기서 우린 무조건 보상함수 (r)과 전이확률(P)를 알아야 한다.
대부분 MDP를 모르기 때문에 경험에 의한 학습을 진행한다. = model free
MDP를 알 때 = model based
최적 밸류 = 최고 값의 상태 가치 함수 v, 액션 가치 함수 q -> 최적 정책을 따를 때 보상의 총합이 가장 크다. -> 최적 정책을 따르면 최고 값의 상태 가치 함수, 액션 가치 함수를 얻을 수 있다.
4강 - MDP를 알 때의 플래닝
여기서 k는 시점이다. 이전의 t와는 다르다.
그리드 월드에서 4방향을 다 갈 수 있다고 하면 4방향의 테이블의 가치v가 확률 p에 곱해지고(그리드 월드라면 보통 1이다.), 감쇠인자에 곱해져서 보상과 더한 뒤 또 4방향이므로 정책의 0.25를 곱해서 나오게 된다.
이 행동이 k가 무한에 수렴한다면 최적의 정책이 구해지게 된다.
최적의 정책 = 최고의 v를 계속해서 따라가기 => 여기선 Greedy policy : 미래를 생각하지 않고 당장 다음 칸의 가치가 가장 큰 것을 선택
정책 평가 = 고정된 정책에 대해 각 상태의 가치 v를 구한다.
정책 개선 = 정책 평가의 결과에 따라 새로운 그리디 정책 선정
수렴할때 까지 반복한 것을 또 최적의 정책을 찾을 때 까지 반복해야 하므로 반복 횟수가 너무 많다!
빠르게 정책 평가하여 정책 새건이 빨라지지만 진동이 커진다. Like SGD
모든 액션에 대한 최대값을 사용한다.
5강 - MDP 모를 때 벨류 평가하기
모든 상태에서의 보상을 모른다 => 가보기 전(경험)에는 모른다.
몬테카를로 학습 == MC = 여러번 경험하여 확률을 알아낸다. (대수의 법칙 Law of large numbers)
보상 r과 전이 확률 P를 모르는 상황 == MDP를 모른다 = model free
가치 함수 계산 = St에서 여러번 리턴을 구한 후 평균 취하기
여기까진 한꺼번에 업데이트하고, 조금씩 업데이트 하는 방식도 있다.
a = 1/n, 1-a = (n-1)/n
a는 초기엔 크고, 점점 작아지는게 효과적이다.
Temporal Difference 학습 == TD => 에피소드가 끝나지 않아도 계산할 수 있다.
추측을 추측으로 업데이트하자, 미래의 추측으로 과거의 추측을 업데이트
여기도 S(t+1)을 현재 상태로 본다. 업데이트를 반복하다보면 수렴한다.
TD : 상태의 변화가 일어나자마자 테이블의 값을 업데이트
명확한 종료 조건이 없거나, 하나의 에피소드가 길어지면 TD를 사용한다.
편향성 (bias) - MC가 우세
MC : 여러개의 평균을 구하므로 편향되지 않는다.
TD : 충분히 진행되기 전에 편향되어 위험하다.
분산 (variance) - 변동성 - TD가 우세
MC : 에피소드가 끝나야 업데이트하기 때문에 다양한 값을 가질 수 있어 분산이 크다.
TD : 한 샘플만 보고 업데이트하기 때문에 분산이 적다.
n - step TD = TD에서 여러 스텝을 진행하고 난 뒤 추측치를 이용
스텝을 무한으로 간다면 MC와 비슷해진다. => N이 클수록 bias는 줄고, variance는 커진다.
6강 - MDP 모를 때 최고의 정책 찾기
몬테카를로 컨트롤
반복적 정책 평가를 사용할 수 없는 이유 : r과 P를 모른다. => 벨만 기대 방정식을 사용할 수 없다.
정책 개선 단계에서 그리디 정책을 만들 수 없다. => 전이확률 P를 모르기 때문에 액션 a를 취했을 때 어떤 상태 S에 도달할 지 모른다.
해결 == 평가 자리에 MC, V대신 Q 사용, 확률적 그리디 사용
1. MC를 통해 v를 구할 수 있다.
2. v 대신에 액션가치 함수 q를 이용한다. => MC를 통해 q를 구하여 새로운 그리디 정책을 만든다.
3. 확률적 그리디를 사용하여 다양한 경험을 통해 최적 길을 찾는다.
입실론은 처음에는 크다가 점점 작아진다. => 학습을 진행하면서 값이 정확해지면 랜덤값이 필요없기 때문이다.
'인공지능 > 공부' 카테고리의 다른 글
딥러닝 개요 복습 2 (0) | 2024.03.28 |
---|---|
강화학습 과제 1 최종 - N Step TD 구현하기 (12) | 2024.03.27 |
생성형 인공지능 퀴즈 4 (2) | 2024.03.27 |
생성형 인공지능 4주차 Transformer 5차시 - Transformer 동작 원리 (0) | 2024.03.27 |
생성형 인공지능 4주차 Transformer 4차시 - Multi-Head Attention 다중머리 주의 (0) | 2024.03.26 |