어떻게 cifar10을 tfrecords로 전환합니까
1268 단어 에세이
import tensorflow as tf
import pickle
import os
path = r'your cifar10 address'
def unpickle(file):
with open(file,'rb') as f:
dict = pickle.load(f,encoding='bytes')
return dict
def _int64_feature(value):
return tf.train.Feature(int64_list=tf.train.Int64List(value=[value]))
def _bytes_feature(value):
return tf.train.Feature(bytes_list=tf.train.BytesList(value=[value]))
def restore(inputfilename,outputfilename):
dict = unpickle(inputfilename)
# dict: include [b'batch_label', b'labels', b'data', b'filenames']
# we just choose labels and data. And we choose restore it by int64
# labels:[10000,1]
labels= dict[b'labels']
#images:[10000,3072]
images = dict[b'data']
writer = tf.python_io.TFRecordWriter(outputfilename)
for i in range(10000):
image_raw = images[i].tostring()
example = tf.train.Example(features=tf.train.Features(feature={
'raw_image':_bytes_feature(image_raw),
'label':_int64_feature(labels[i])
}))
writer.write(example.SerializeToString())
filenames = [os.path.join(path,'data_batch_%d' %i) for i in range(1,6)]
for filename in filenames:
restore(filename,filename+'.tfrecord')
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
시간 형식 변환, "2018-07-12T07:45:0.000Z"와 유사 = > 2018-07-11 15:45:29정의: 호출 tip: 제가 vue에서 사용한 것도 시간 뒤에 추가할 수 있습니다.split(‘T’)[0]...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.