전체 글 142

[Reinforcement Learning / review article / not use tensorflow] Policy Gradient (CartPole)

[Reinforcement Learning] Policy Gradient (CartPole) 포스팅 즉 https://medium.com/@awjuliani/super-simple-reinforcement-learning-tutorial-part-2-ded33892c724을 tensorflow 을 사용하지 않고 python 의 numpy 를 이용해 코딩해봤습니다. python 3.6123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596..

Deep learning 2017.04.08

[Supervised Learning / python / not use tensorflow] MNIST - Softmax regression

tensorflow 을 사용하지 않고 numpy 을 이용하여 MNIST - Softmax regression 을 구현해봤습니다. (MNIST 이미지를 가져오는 부분에서는 tensorflow 의 소스 사용)코드는 tensorflow 에서 제공하는 tutorial 과 그 내용이 같습니다.[TensorFlow] MNIST For ML Beginners - Softmax regression python 3.612345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455import numpy as npfrom tensorflow.examples.tutorials.mnist import input..

Deep learning 2017.03.28

[Reinforcement Learning / review article / c++] Policy Gradient (Two-armed Bandit)

깊은 이해를 위해 [Reinforcement Learning] Policy Gradient (Two-armed Bandit) 포스팅의 코드즉 https://medium.com/@awjuliani/super-simple-reinforcement-learning-tutorial-part-1-fd544fab149#.ywa46v109이 분의 코드를 c++ 를 사용하여 코딩을 해봤습니다.그동안 tensorflow 가 해주었던 부분 특히 블랙박스같은 부분을 직접 구현해보는 일은 공부에 많은 도움이 될 것 같네요.제 코드와 원래 코드의 유일한 차이점은 weights 를 처음 초기화 할 때 1이 아닌 2로 했다는 부분입니다. 최초 값을 1으로 초기화할 경우 ln 에 넣었을 때 0이 나와 훈련이 되지 않았습니다. mai..

Deep learning 2017.03.26

[Reinforcement Learning / learn article] Policy Gradient (CartPole)

이번에는 슬롯 머신에 이어 gym 의 CartPole 이라는 게임 환경으로 policy-based 강화 학습을 공부해보는 포스팅입니다.https://medium.com/@awjuliani/super-simple-reinforcement-learning-tutorial-part-2-ded33892c724#.oqhwtd198 CartPole 은 좌우 입력으로 막대기의 중심을 맞춰 오랜 시간 막대기를 쓰러뜨리지 않는 것이 목표인 게임입니다.https://gym.openai.com/envs/CartPole-v0 CartPole 은 앞선 포스팅의 게임에 비해 다음과 같은 조건이 추가된 게임입니다.- Observations: 막대기가 현재 어디에 있는지 그리고 균형을 맞추기 위해 막대기의 각도를 알 필요가 있습니다..

Deep learning 2017.03.15

[Reinforcement Learning / learn article] Policy Gradient (Contextual Bandits)

이번 포스팅에서는 지난 포스팅에 이어 상태 개념을 넣은 강화 학습입니다.https://medium.com/emergent-future/simple-reinforcement-learning-with-tensorflow-part-1-5-contextual-bandits-bff01d1aad9c#.x98hikkmi 지난 포스팅에서 기술한 일반적으로 강화 학습에 사용되는 문제들의 특징 중 첫 번째와 세 번째 특징이 포함된 강화 학습이 될 것입니다. - 다른 행동(action)은 다른 보상(reward)을 가지고 온다- 보상은 시간에 의해 지연된다. 동일한 결과를 가지고 오더라도 시간이 더 오래 걸리는 방법이 더 낮은 보상을 받게 됩니다.- 어떤 행동에 대한 보상은 환경(environment)의 상태(state)에..

Deep learning 2017.03.07

[Reinforcement Learning / learn article] Policy Gradient (Two-armed Bandit)

Part 0 — Q-Learning Agents 에 이어 다음 포스팅은 Part 1 — Two-Armed Bandit 입니다.https://medium.com/@awjuliani/super-simple-reinforcement-learning-tutorial-part-1-fd544fab149#.16gx1aycu Two-Armed Bandit 은 두 개의 팔을 가진 노상강도 즉 슬롯 머신을 이야기합니다. 슬롯 머신을 노상강로라 표현한 점이 재미있네요.이 포스팅에서는 Policy Gradient 이라는 방법을 설명하기 위해 슬롯 머신이라는 간단한 게임을 이용했습니다.일반적으로 강화 학습에 사용되는 문제는 다음과 같은 특징을 가지고 있습니다.- 다른 행동(action)은 다른 보상(reward)을 가지고 온다..

Deep learning 2017.02.27

[Reinforcement Learning / learn article] Q-Learning

2015년 Deepmind 팀에서 네이처에 발표한 Human-level control through deep reinforcement learning 을 공부하기 위해 기초 지식인 Q-Learning 을 공부하기 위해 자료를 찾던 중 https://medium.com/emergent-future/simple-reinforcement-learning-with-tensorflow-part-0-q-learning-with-tables-and-neural-networks-d195264329d0#.3q19hd14u위 블로그를 찾게 되어 이 분의 코드를 이용하여 공부를 해봤습니다. 강화 학습(Reinforcement Learning)은 행동에 따른 보상을 지급하여 좋은 점수를 획득하기 위한 행동을 하게 만드는 학습..

Deep learning 2017.02.23

[Supervised Learning / TensorFlow tutorial] Deep MNIST for Experts (CNN)

Deep MNIST for Experts tutorial 에서는 학습 효과를 높이기 위해 Convolutional Neural Network (CNN) 이라는 모델을 사용합니다.https://www.tensorflow.org/tutorials/mnist/pros/ https://en.wikipedia.org/wiki/Convolutional_neural_networkhttps://en.wikipedia.org/wiki/Deep_learninghttps://ko.wikipedia.org/wiki/%EB%94%A5_%EB%9F%AC%EB%8B%9D CNN 은 입력 데이터를 그대로 사용하지 않고 데이터를 가공하고 sub sampling 하여 학습할 데이터를 줄이는 방법으로 2차원 입력 데이터에 적합하여 영상과..

Deep learning 2017.02.04

[Supervised Learning / TensorFlow tutorial] MNIST deep neural network with summaries

MNIST For ML Beginners 에서 작성한 모델의 경우 그 정확도가 92% 정도가 됩니다.다음 TensorFlow tutorial 에서 조금 더 높은 정확도가 나오는 딥러닝 기초 모델을 안내해줍니다.https://github.com/tensorflow/tensorflow/blob/56fc8834c736878af34f00caa95e7d4a57ab01d2/tensorflow/examples/tutorials/mnist/mnist_with_summaries.py 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717..

Deep learning 2017.01.30

[Supervised Learning / TensorFlow tutorial] MNIST For ML Beginners - Softmax regression

MNIST 는 softmax (multinomial logistic) regression 으로 풀 수 있는 가장 기초적인 문제 중에 하나입니다.MNIST 의 각 이미지는 손으로 쓴 0~9 사이의 숫자이며 정답은 10가지 경우 중 하나이고이미지의 각 픽셀 중 글자가 쓰여진 부분으로 학습을 하여 값을 구하기 위한 식(solution)의 변수가 일정한 값으로 수렴할 수 있기 때문에 regression analysis 로 풀 수 있으며 각 값이 0과 1 사이의 값으로 이루어지는 softmax regression 을 통해 어떤 특정 숫자일 가능성을 얻을 수 있습니다. softmax regression 이란 linear regression 와 같이 딥러닝에서 사용되는 기본 개념으로 linear regression ..

Deep learning 2017.01.24