본문 바로가기

전체 글46

Autoencoder (오토인코더) 이번 포스팅을 시작으로 single autoencoder부터 다양한 autoencoder를 포스팅 할 예정입니다. Autoencoder는 역사적으로도 굉장히 중요한 의미가 있습니다. 다층신경망 학습시 기울기 소실문제와 가중치 초기 값에 영향을 많이 받아 학습이 어려운 문제가 있었는데 G. E. Hinton, 2006에 의해서 Restrited Boltzmann Machine을 이용하여 가중치 초기값을 구축하고, 기울기 강하법을 적용햇더니 학습이 잘 된다는 것이 밝혀져 deep learning의 부흥을 이끌었기 때문입니다. 하지만 사실 현대 딥러닝 생태계에서는 학습방법의 발전으로 과거처럼 RBM으로 초기 값을 지정하진 않습니다. 또한 현대에 이르러선 autoencoder는 처음엔 비지도 학습 (unsupe.. 2020. 1. 14.
Comparison with Tabular Methods 이번 포스팅에서는 강화학습의 가치함수를 추정하고 순차적 의사결정을 할 수 있는 tabular methods (DP ((1), (2)), MC ((1), (2)), TD)을 비교해보도록 하겠습니다. Update Rules 먼저 핵심이 되는 업데이트 규칙을 살펴보겠습니다. 하기 업데이트 규칙은 control에 대한 것만 기술했습니다. 구체적인 내용 및 prediction은 위에 걸어둔 링크를 타고 들어가면 확인할 수 있습니다. [ Dynamic Programming ] $$v(s)\leftarrow \underset{a}{\operatorname{max}}\sum_{s',r}\mathbb{P}\left(s',a\left|\right. s,a\right)\left[r+\gamma v(s')\right]$$[ .. 2019. 12. 20.
RNN Tensorflow + Keras 이번 포스팅은 Tensorflow의 keras를 이용하여 RNN의 다양한 구조를 구현해보는 것이 목표입니다. RNN에는 크게 세 가지 방법이 있는데 simple RNN, LSTM, GRU가 있습니다. 이번 실습은 simple RNN을 이용하여 many-to-one, many-to-many, stacked many-to-one, stacked many-to-many 네 가지를 살펴보겠습니다. simple RNN을 이용하여 설명하지만 단순히 아래 등장할 코드에서 simple RNN을 LSTM, GRU로 바꾸어 주면 내용은 같기때문에 응용하는데 큰 문제는 없을 것 입니다. import numpy as np import tensorflow as tf from tensorflow import keras Dimen.. 2019. 12. 7.
Tabular Temporal Difference Learning - Sarsa, Q-learning, Double Q-learning Reinforcement Learning/Tabular Methods에 있는 이전 글에서 Dynamic Programming, Monte Carlo Learning을 알아보았습니다. 위 두 가지 방법은 역사적으로 중요한 방법으로, 각각의 장점을 취한 방법이 Temporal Difference Learning (TD)입니다. 또한 강화학습에서 가장 중요한 방법과 학습의 컨샙은 TD라고 할 수 있습니다. 이번 포스팅에서는 Tabular Methods 세 가지 방법 중 마지막인 TD에 대하여 살펴보겠습니다. Temporal Difference Learning DP 와 MC의 장단점 DP 장점: 최종 상태에 도달하지 않더라도 그때 그때 발생하는 보상을 이용하여 가치함수 업데이트가 가능하다. 단점1: Model-.. 2019. 11. 11.
Monte Carlo Methods in RL (2) 이번 포스팅에서는 저번 포스팅에 이어서 몬테카를로 방법에 대해 알아보겠습니다. 특히 저번 포스팅에선 개념과 on-policy 방법이 주였다면, 이번 포스팅에서는 off-policy 방법을 살펴보겠습니다. Monte Carlo Iteration (Off-policy) Off-policy Learning Off-policy Learning은 목표 정책 (Target Policy, $\pi$)와 행동 정책 (Behavior Policy, $b$)를 구별하여 학습하는 방법을 일컫습니다. 즉 에이전트가 움직일 때는 행동 정책을 따라서 움직이지만, 거기에서 얻어진 보상으로는 목표 정책을 학습하는 것 입니다. 행동 정책을 별도로 운용함으로써 탐색과 활용의 균형을 유지할 수 있습니다. Off-policy learnin.. 2019. 11. 1.
Monte Carlo Methods in RL (1) 이번 포스팅에선 Monte Carlo 추정법을 이용하여 가치 함수를 추정하는 방법을 소개하고자합니다. 개요 이전 포스팅에서 DP를 이용하여 가치함수를 계산하는 방법을 살펴보았습니다. 몬테카를로 방법에 들어가기 앞서 왜 우리가 공부해야되는지 가벼운 동기부여를 하겠습니다. 바로 앞문장에 '계산'이라는 말에 하이라이트되어 있듯 엄연히 DP는 주어진 정책과 모델을 알고있는 상황에 대하여 가치함수를 계산한 것이기 때문에 '학습'을 했다고 보기 어렵습니다. 다시 바로 앞 문장에선 모델을 알고 있는 상황을 대전제로 했습니다. 즉, 모델을 알고 있어야만 DP로 가치함수를 계산할 수 있습니다. 하지만 실제로 대부분의 상황에선 모델을 알 수 없기 때문에 적용하기 힘듭니다. 진정한 의미의 학습과 모델을 모르는 상황에서도 가.. 2019. 10. 30.