在tensorflow中实现去除不足一个batch的数据

2022-10-09,,,

我就废话不多说了,直接上代码吧!

#-*- coding:utf-8 -*-
import tensorflow as tf
import numpy as np
 
value1 = tf.placeholder(dtype=tf.float32)
value2 = tf.placeholder(dtype=tf.float32)
value3 = value1 + value2
 
#定义的dataset有参数,只能使用参数化迭代器
dataset = tf.data.dataset.range(10)
# 定义参数化迭代器
dataset = dataset.shuffle(100)
dataset = dataset.apply(tf.contrib.data.batch_and_drop_remainder(3)) #每个batch3个数据,不足3个舍弃
iterator = dataset.make_initializable_iterator()
next_element = iterator.get_next()
 
with tf.session() as sess:
  # 需要用参数初始化迭代器
  for i in range(2):
    sess.run(iterator.initializer)
    while true:
      try:
        value = sess.run(next_element)
        result = sess.run(value3,feed_dict={value1:value,value2:value})
        print(result)
      except tf.errors.outofrangeerror:
        print("end of epoch %d" % i)
        break

以上这篇在tensorflow中实现去除不足一个batch的数据就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

《在tensorflow中实现去除不足一个batch的数据.doc》

下载本文的Word格式文档,以方便收藏与打印。