使用tensorflow.data.Dataset構造batch數據集(具體用法在下一篇博客介紹)


import tensorflow as tf
import numpy as np

def _parse_function(x):
    num_list = np.arange(10)
    return num_list

def _from_tensor_slice(x):

    return tf.data.Dataset.from_tensor_slices(x)

softmax_data = tf.data.Dataset.range(1000) # 構造一個隊列
softmax_data = softmax_data.map(lambda x:tf.py_func(_parse_function, [x], [tf.int32]))# 將數據進行傳入
softmax_data = softmax_data.flat_map(_from_tensor_slice) #將數據進行平鋪, 將其變為一維的數據,from_tensor_slice將數據可以輸出
softmax_data = softmax_data.batch(1) #構造一個batch的數量
softmax_iter = softmax_data.make_initializable_iterator() # 構造數據迭代器
softmax_element = softmax_iter.get_next() # 獲得一個batch的數據
sess = tf.Session()
sess.run(softmax_iter.initializer) # 數據迭代器的初始化操作
print(sess.run(softmax_element)) # 實際獲得一個數據
print(sess.run(softmax_data))

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM