BOAZ/데이터 분석

6. GAN and Reinforcement Learning

공부중인학생 2022. 8. 26. 03:44

GAN은 생산적 적대 신경망(Generative Adversarial Network)의 약자이며 비지도학습(Unsupervised Learing) 입니다.

 

 

Generator가 위조 데이터를 만들면 Discrminator가 진짜인지 가짜인지 구분을 하여 판별기를 속일 수 있도록 Generator를 훈련해야 합니다. Discriminator는 실제 데이터로 훈련을 진행해야 합니다.

 

Loss function

 

$min_Gmax_D \, V(D,G) = E_{x ~ p_{data}}(x) [log \, D(x)] + E_{z~p_z}(z)[log(1 - D(G(z)))]$

 

실제 데이터 분포에서 샘플링한 데이터 x와 임의의 데이터 분포에서 샘플링한 데이터 z

D(x)는 1이 나오도록 학습하고 D(z)는 0이 나오도록 학습합니다. 

 

- Discriminator는 D이며 $V(D, G)$를 최대화함

- Generator는 G이며 $V(D, G)$를 최소화함

 

즉 GAN의 학습 과정은 다음과 같습니다. Discriminator은 Generator와 기존 확률분포가 얼마나 다른지 판단합니다. Generator는 실제 데이터 확률분포에 맞춰 Discriminator를 속이기 위한 쪽으로 생성 모델을 수정합니다. (Generator의 확률분포와 실제 데이터의 확률분포 차이를 줄여나감)

 

 

 

 

Reinforcement Learning

 

강화학습은 어떤 환경 안에서 정의된 에이전트가 현재의 상태를 관찰하여 선택할 수 있는 행동 중 어떤 것이 최대의 보상을 가져다주는 행동을 학습합니다. 강화학습은 에이전트가 환경으로부터 보상을 받으로써 학습하기 때문에 지도학습과 유사해 보이지만, 사람이 아닌 변화되는 환경으로부터 보상을 받아 학습하는 차이점이 존재합니다.

 

- 동물 훈련과 비슷합니다. 사람이 어떤 것을 원해서 해당 동작을 시키는지는 모르지만 먹이나 칭찬이라는 보상이 존재하기에 상황에 맞는 최적의 행동을 보여 보상을 얻습니다.

 

이제 강화학습 알고리즘을 알아보겠습니다.

 

 

정책 공간을 탐색하는 방법

 

1. 확률적 정책: 어떤 상태에 대한 행동들의 확률분포를 반환

2. 유전 알고리즘: 적자생존의 이론을 기반으로 한 최적화 기법입니다. 좋은 정책을 찾을 때까지 여러 세대에 걸쳐 반복됩니다.

3. 정책 그래디언트: 정책 파라미터에 대한 보상의 그래디언트를 평가한 후 높은 보상을 따르는 그래디언트로 파라미터를 수정하는 최적화 기법입니다.

 

- 그 외에도 각 행동에 대한 확률을 추정하고 추정된 확률에 따라 랜덤 하게 행동하는 신경망 정책이 존재합니다.

 

 

정책 그래디언트 알고리즘은 높은 보상을 얻는 방향의 그라디언트를 따르도록 정책 파라미터를 최적화하는 알고리즘으로 가장 인기 있는 것으로는 REINFORCE 알고리즘이 있습니다.

 

 

 

 

Q-Learning: $Q(s, a) \leftarrow_a r+\gamma \cdot max_{a^'}(X^', a^')$

 

 

 

 

 

Markov chain

 

마르코프 연쇄 과정은 정해진 개수의 상태를 가지고 있습니다. 그리고 각 단계마다 시스템은 상태를 유지하거나 시스템의 상태가 바뀌게 되는데 이를 상태 변화를 전이한다고 합니다. 종료 상태는 다른 상태로의 전이가 더 이상 일어나지 않는 것을 의미합니다.

 

n+1회의 상태는 오직 n회 또는 이전의 일정 기간 상태에만 영향을 받는 것을 의미합니다.(독립시행이 아닌 이전 상태에 영향을 받는다.)

 

 

마르코프 결정 과정은 연쇄 과정과 비슷하지만 다른 점이 있습니다. 각 스탭에서 에이전트는 여러 가능한 행동 중 하나를 선택할 수 있고 전이 확률은 선택된 행동에 따라 달라집니다. 또한 어떤 상태 전이는 보상을 반환합니다. 이때 에이전트의 목적은 시간이 지남에 따라 보상을 최대화하기 위한 정책을 갖는 것입니다.

 

 

 

 

벨만 최적 방정식(Bellman Optimality Equation)

 

벨만 최적 방정식이란 에이전트가 최적으로 행동하면 현재 상태의 최적 가치는 하나의 최적 행동으로 인해 평균적으로 받게 될 보상과 이 행동이 유발할 수 있는 가능한 모든 다음 상태의 최적 가치의 기대치를 합한 것입니다.

 

 

- p는 에이전트가 행동 a를 선택했을 때 상태 s에서 s'으로 전이될 확률

- r은 에이전트가 행동 a를 선택해서 상태 s에서 s'로 전이되었을 때 에이전트가 받을 수 있는 보상

- $\gamma$는 할인 계수

'BOAZ > 데이터 분석' 카테고리의 다른 글

5. RNN and LSTM  (0) 2022.08.24
4. CNN  (0) 2022.08.18
3. Ensemble and Random Forest  (0) 2022.08.09
2. Decision Tree and SVM  (0) 2022.08.03
[핸즈온 머신러닝] 3장  (0) 2022.07.31