본문 바로가기

Developer/Machine Learning11

[Tensorflow] 학습 모델 저장하고 불러오는 방법 (Saver, Restore) 저는 주로 Jupyter notebook으로 작업을 합니다. 때문에 창을 끄거나 컴퓨터를 끄는 등 종료를 시키게 되면, 한번 학습했던 모델이 다 사라지게 되는데요. 우리가 만든 모델을 실생활에 사용하기 위해서는 학습 모델을 저장하고, 또 불러와서 사용할 수 있어야합니다. MNIST 데이터셋에 대해 다룬 포스팅을 기준으로, 학습 모델을 저장하고 불러오는 방법에 대해 알아보겠습니다. 학습 모델 저장하기 위 포스팅에서 모델 중간에 아래 코드가 있습니다. 텐서플로우의 Saver을 통해 모델을 저장할 수 있습니다. 1234567# 모델 저장을 위한 부분import ossave_file = './model_mnist.ckpt'SAVER_DIR = "modelMNIST"saver = tf.train.Saver()ch.. 2020. 1. 13.
[Tensorflow] MNIST 데이터셋 CNN 기본 예제 지난 포스팅에서 CIFAR-10 데이터셋을 다루는 법에 대해 알아보았습니다. 자세한 포스팅은 여기에서 확인하실 수 있습니다. 이번에는 그보다 더 기본학습예제인 MNIST 데이터셋에 대해 알아보고, CNN 예제 코드를 살펴보겠습니다. MNIST DATASET? 머신러닝을 공부할 때 아주 유용한 데이터셋입니다. 손글씨로 이루어진 숫자(0~9) 흑백 이미지들이며, 28x28 픽셀 크기로 그 크기는 작습니다. CIFAR 데이터보다 훨씬 가볍기 때문에 이런저런 알고리즘을 테스트하기 편합니다. 특히 집에서 일반 컴퓨터로 작업할 때는 CIFAR보단 MNIST가 가볍고 좋은 것 같네요. CNN 딥러닝 모델 코드는 아주 단순합니다. 기본적인 CNN 레이어를 두층 만들어놨는데요. 정확도는 거의 1에 수렴할만큼 탁월한 성능.. 2020. 1. 12.
Tensorflow Vanilla CNN 예제 연습 - CIFAR 10 한동안 텐서플로우를 놓고 있다가 최근에 회사에서 작업하는 일이 있어 다시 공부하게 되었습니다. 그동안 회귀분석 정도만 필요했기에 딥러닝 알고리즘들을 사용해볼 기회가 적었는데, 이번 기회에 덕분에 손에 잡게 되었네요 :) 이번에 공부해본 예제는 CIFAR 10 입니다. CIFAR 10? CIFAR 10은 32x32사이즈의 RGB 이미지 데이터셋으로, 10가지의 레이블이 붙어있습니다. 작은 이미지지만, 머신러닝 알고리즘을 통해 10개의 레이블로 예측해보는 연습을 할 수 있습니다. 다만 데이터셋이 확실히 MNIST보다는 무겁기 때문에, 처음 연습하시는 분이라면 먼저 MNIST를 한 뒤에 해보시는 걸 추천드립니다. (원리는 동일합니다. 다만 RGB 3레이어가 껴있다는 데서 벡터 연산만 약간~ 다를 뿐입니다) 전.. 2019. 12. 30.
Tensorflow CPU/GPU 목록 확인하기 텐서플로우로 코드를 짜다보면, 가끔 with.device로 특정 CPU 또는 GPU를 지정할 때가 있습니다. 본인이 쓰고 있는 하드웨어에 있는 디바이스 목록을 확인하는 방법이 있는데요. 아래와 같이 코드를 입력하시면, 현재 디바이스에서 사용가능한 cpu/gpu 목록을 볼 수 있습니다. 12from tensorflow.python.client import device_libprint(device_lob.list_loca_devices())cs 저 같은 경우, 아래와 같이 프린트 내역이 나타나네요. [name: "/device:CPU:0" device_type: "CPU" # ... 중략 . name: "/device:GPU:0" # ... ] 2019. 12. 30.
#7. Tensorflow로 linear regression cost 최소화 구현하기 본 포스팅은 인프런에서 제공되는 "모두를 위한 딥러닝 - 기본적인 머신러닝과 딥러닝 강좌"를 참고하여 만들어졌습니다. 인프런 URL: https://www.inflearn.com/텐서플로우를 통해, 선형회귀에서 cost 최소화를 구현해보자. 》》》 Tensorflow 로 linear regression 구현하기.먼저 cost가 어떻게 생겨먹었는지 그래프로 보도록 하자. 일단 아래 깃허브에서 코드는 따왔다.https://github.com/hunkim/DeepLearningZeroToAll/blob/master/lab-03-1-minimizing_cost_show_graph.py 참고로 matplotlib은, 그래프를 띄우기 위해 가져오는 라이브러리로, 아래와 같이 콘솔창에서 미리 설치가 필요하다. pyt.. 2017. 11. 26.
#6. Linear Regression의 cost 최소화 알고리즘 본 포스팅은 인프런에서 제공되는 "모두를 위한 딥러닝 - 기본적인 머신러닝과 딥러닝 강좌"를 참고하여 만들어졌습니다. 인프런 URL: https://www.inflearn.com/지난 강의 때 배웠던 linear regression 관련, cost 최소화하는 알고리즘의 원리에 대해 알아보자. 》》》 Linear Regression cost minimization Algorithm지난 포스팅에서, 그냥 optimization으로 포장해놨던 최소화 알고리즘의 원리는 무엇일까?간단하게, hypothesis 식을 아래와 같이 정의하자.H(x) = Wxcost(W) = ∑((H(x) - y)^2) / 개수즉, W 하나의 상수에 대한 함수가 되겠다. 그렇다면, cost는 어떻게 생긴 함수인가? W에 대한 cost .. 2017. 11. 25.