전체 글110 Keras로 간단한 CNN 구현하기 Keras로 가장 기본적인 mnist를 CNN(convolutional neural network)으로 구현하는 방법을 알아보자. 데이터 다운로드 (x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data() keras가 기본으로 mnist 데이터셋을 지원하기 때문에 바로 사용할 수 있다. load_data()는 s3에 있는 mnist 파일을 다운받아 ~/.keras/datasets 폴더에 캐시 한다. 파일은 .npz 포맷으로 되어 있고, x_train, y_train, x_test, y_test 이름의 배열을 읽어서 tuple로 리턴한다. 데이터 전처리 x_train = x_train.reshape(x_train.shape[0], 28,.. 2019. 11. 13. 알파고의 몬테카를로 방법 바둑에서는 한 수를 두었을 때 그 수의 승률을 판단해야 하는데, 이후에 벌어지는 모든 경우의 수를 탐색할 수가 없다. 이럴 때 몬테카를로(Monte Carlo) 방법을 사용한다. 모든 탐색은 못하지만 빠르게 랜덤 탐색을 반복하면서 통계적인 수치를 얻는 방법이다. 몬테카를로 방법 가장 쉬운 예로 $\pi$를 구하는 방법이 있다. 임의의 정사각형에 점을 찍어 원 안에 포함되는지 판단하는 빠른 탐색을 반복하여 통계적인 $\pi$의 값을 알 수 있다. 실행 횟수를 높일수록 실제 $\pi$값과 일치해가는 것을 볼 수 있다. # 총 개수 -> 원 안에 있는 개수 / 총 개수 * 4 10 -> 2.8 100 -> 3.16 1000 -> 3.028 10000 -> 3.1504 100000 -> 3.13844 10000.. 2019. 11. 10. 알파고의 강화학습 앞에 알파고의 원리에 대해서 간단히 썼던 적이 있는데 알파고의 학습은 인간 고수들이 대국했던 기보를 시작으로 한다. 기보를 입력으로 여러 특징을 더 추출한 뒤 CNN으로 학습시켜 SL policy network를 구한다. 이렇게 학습해서 인간과 얼추 비슷하게 다음 수를 예측할 수 있다. 이렇게 구한 SL policy network를 강화 학습하여 더 좋은 수를 예측하는 RL policy network를 구하고, RL policy network로 현재 형세를 판단하는 value network를 구한다. 여기에서는 강화 학습을 통해 얻는 RL policy network와 value network를 어떤 처리를 통해 구하는지 정리한다. RL policy network 미리 구해둔 SL policy networ.. 2019. 11. 3. 이전 1 ··· 25 26 27 28 29 30 31 ··· 37 다음