본문 바로가기
  • Let's go grab a data
Data/TensorFlow

MNIST 데이터 집합 읽어오기, 이미지로 나타내기

by pub-lican-ai 2017. 4. 14.
반응형

MNIST 데이터 집합 읽어오기, 이미지로 나타내기


MNIST 데이터는 머신 러닝 분야에서 광범위하게 사용되는 손글씨 숫자 0~9가 흑백으로 저장된 이미지


[데이터 다운로드]

http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz, train-labels-idx1-ubyte.gz, t10k-images-idx3-ubyte.gz, t10k-labels-idx1-ubyte.gz)


[입력을 도와주는 스크립트 다운로드]

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/tutorials/mnist/input_data.py



Python 스크립트와 동일한 폴더에 input_data.py 파일을 넣고, 데이터 파일들은 압축된 상태로 동일한 폴더내에 폴더를 만들어서 넣음

#MNIST데이터 손글씨 아라비아 숫자 0~9 데이터

#http://yann.lecun.com/exdb/mnist/ 에서 학습 데이터, 테스트 데이터 다운로드 가능

#데이터 input은 아래 스크립트 활용 https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/tutorials/mnist

import input_data

import numpy as np

import matplotlib.pylab as plt

mnist_images = input_data.read_data_sets("./mnist_data", one_hot=False)

Extracting ./mnist_data/train-images-idx3-ubyte.gz

Extracting ./mnist_data/train-labels-idx1-ubyte.gz
Extracting ./mnist_data/t10k-images-idx3-ubyte.gz
Extracting ./mnist_data/t10k-labels-idx1-ubyte.gz

#train객체에 담긴 첫 10개 이미지와 Label(실제 값)를 리턴

pixels,real_values=mnist_images.train.next_batch(10)

print("list of values loaded..",real_values)

#pixels에는 읽어들인 픽셀을 담고 있는 행렬, real_value는 labeling된 실제 숫자 값

list of values loaded.. [7 3 4 6 1 8 1 0 9 8]


example_to_visualize = 5

print("element N "+str(example_to_visualize+1)+" of the list plotted")

#위에서 본 6번째로 보이는 엘리먼트가 보일꺼야

element N 6 of the list plotted

image = pixels[example_to_visualize,:]

image = np.reshape(image,[28,28])

plt.imshow(image)

plt.show()



출처: 텐서플로 입문 _ 잔카를로 자코네

반응형