Tensorflow中製作tfrecord資料集

2021-08-29 20:44:25 字數 1355 閱讀 9009

tensorflow提供統一的格式來儲存資料,tfrecord。使得在之後的系統中可以更加方便的處理,實際問題的資料往往有很多格式和屬性,用tfrecord格式可以統一不同原始資料格式,並且更加有效的管理不同屬性。

import tensorflow as tf

import os

import cv2 as cv

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]))

#開啟資料夾,資料夾名稱則為標籤

file_path="/home/zw/資料集/flower_photos"

#os.walk()返回file_dirs位址和下屬子資料夾位址

sub_dirs=[x[:] for x in os.listdir(file_path)]

sub_dirs=sub_dirs[1:]

filrname="/home/zw/資料集/flower_photos.tfrecords"

writer=tf.python_io.tfrecordwriter(filrname)

for i,sub_dir in enumerate(sub_dirs):

picpath="/home/zw/資料集/flower_photos"+"/"+sub_dir

sub_dir_pic=[x[:] for x in os.listdir(picpath)]

print(sub_dir_pic)

for j in sub_dir_pic:

print(i,j)

pic_path="/home/zw/資料集/flower_photos"+"/"+sub_dir+"/"+j

image=cv.imread(pic_path)

img=cv.resize(image,dsize=(600,600))

#cv.imshow('img',img)

#cv.waitkey(200)

img_raw=img.tobytes()

example=tf.train.example(features=tf.train.features(feature=))

writer.write(example.serializetostring())

#cv.destroyallwindows()

writer.close()

深度學習 tensorflow入門 tf讀入資料

同步讀取資料 import tensorflow as tf 模擬一下同步先處理資料,然後才能取訓練資料 tensorflow中,執行操作有依賴性 1 首先定義佇列 q tf.fifoqueue 3,tf.float32 放入一些資料 enq many q.enqueue many 0.1,0.2,...

tf 損失函式 TensorFlow裡面損失函式

2 交叉熵 交叉熵 crossentropy 也是loss演算法的一種,一般用在分類問題上,表達的意識為 輸入樣本屬於某一類的概率 其表示式如下,其中y代表真實值分類 0或1 a代表 值。在tensorflow中常見的交叉熵函式有 sigmoid交叉熵 softmax交叉熵 sparse交叉熵 加權...

tensorflow製作tfrecord格式資料集

encoding utf 8 import os import tensorflow as tf from pil import image cwd os.getcwd classes 製作二進位制資料 defcreate record writer tf.python io.tfrecordwri...