本文主要是介绍[tf 2.0] padded_batch_use,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
参考:
- tf2.0中输出 不用sess.run
https://stackoom.com/question/3nd25/%E5%BB%BA%E8%AE%AE%E5%9C%A8tensorflow-%E4%B8%AD%E8%B0%83%E8%AF%95-tf-data-Dataset-%E6%93%8D%E4%BD%9C - padded_batch用法
https://blog.csdn.net/z2539329562/article/details/89791783
import tensorflow as tf
x = [[1, 0, 0],[2, 3, 0],[4, 5, 6],[7, 8, 0],[9, 0, 0],[0, 1, 0]]padded_shapes=(tf.TensorShape([None]))
dataset = tf.data.Dataset.from_tensor_slices(x)
def rd(dataset):# 如何输出成[1 0 0]具体数值的形式dataset_iter = dataset.__iter__()
# for i in range(len(x)):while(True):try:print(dataset_iter.next())except:return
# 切片之后的 dataset
rd(dataset)
dataset = dataset.padded_batch(2, padded_shapes=padded_shapes)
# batch_size=2 后的dataset
rd(dataset)
#output
tf.Tensor(
[[1 0 0][2 3 0]], shape=(2, 3), dtype=int32)
tf.Tensor(
[[4 5 6][7 8 0]], shape=(2, 3), dtype=int32)
tf.Tensor(
[[9 0 0][0 1 0]], shape=(2, 3), dtype=int32)
dataset = tf.data.Dataset.range(100)
#
# rd(dataset)
# dataset = dataset.map(lambda x: tf.fill([tf.cast(x, tf.int32)], x)
# dataset = dataset.padded_batch(4, padded_shapes=[None])
dataset = dataset.map(lambda x: tf.fill([tf.cast(x, tf.int32)], x))
dataset<MapDataset shapes: (None,), types: tf.int64>
dataset = dataset.padded_batch(4, padded_shapes=[None])
dataset
<PaddedBatchDataset shapes: (None, None), types: tf.int64>
rd(dataset)
这篇关于[tf 2.0] padded_batch_use的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!