tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解


Posted in Python onJune 03, 2020

1.作用

  • dataset.shuffle作用是将数据进行打乱操作,传入参数为buffer_size,改参数为设置“打乱缓存区大小”,也就是说程序会维持一个buffer_size大小的缓存,每次都会随机在这个缓存区抽取一定数量的数据
  • dataset.batch作用是将数据打包成batch_size
  • dataset.repeat作用就是将数据重复使用多少epoch

2.各种不同顺序的区别

示例代码(以下面代码作为说明):

# -*- coding: utf-8 -*-
import tensorflow as tf
import numpy as np
 
dataset = tf.data.Dataset.from_tensor_slices(np.arange(20).reshape((4, 5)))
 
dataset = dataset.shuffle(100)
dataset = dataset.batch(3)
dataset = dataset.repeat(2)
 
sess = tf.Session()
 
iterator = dataset.make_one_shot_iterator()
input_x = iterator.get_next()
 
print(sess.run(input_x))
print(sess.run(input_x))
print(sess.run(input_x))
print(sess.run(input_x))

1.顺序1(训练过程最常用的顺序)

tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解

先看结果:

tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解

解释:相当于把所有数据先打乱,然后打包成batch输出,整体数据重复2个epoch

特点:1.一个batch中的数据不会重复;2.每个epoch的最后一个batch的尺寸小于等于batch_size

2.顺序2

tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解

先看结果:

tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解

解释:相当于把所有数据先打乱,再把所有数据重复两个epoch,然后将重复两个epoch的数据放在一起,最后打包成batch_size输出

特点:1.因为把数据复制两份,还进行打乱,因此某个batch数据可能会重复,而且出现重复数据的batch只会是两个batch交叉的位置;2.最后一个batch的尺寸小于等于batch_size

3.顺序3

tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解

先看结果:

tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解

解释:相当于把所有数据先打包成batch,然后把打包成batch的数据重复两遍,最后再将所有batch打乱进行输出

特点:1.打乱的是batch;2.某些batch的尺寸小于等于batch_size,因为是对batch进行打乱,所以这些batch不一定是最后一个

3.其他组合方式

根据上面几种顺序,大家可以自己分析其他顺序的输出结果

到此这篇关于tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解的文章就介绍到这了,更多相关tensorflow dataset.shuffle、dataset.batch、dataset.repeat内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
进一步了解Python中的XML 工具
Apr 13 Python
python使用wmi模块获取windows下的系统信息 监控系统
Oct 27 Python
Python+Selenium自动化实现分页(pagination)处理
Mar 31 Python
rabbitmq(中间消息代理)在python中的使用详解
Dec 14 Python
Django 限制用户访问频率的中间件的实现
Aug 23 Python
Django框架设置cookies与获取cookies操作详解
May 27 Python
对Django url的几种使用方式详解
Aug 06 Python
python的scipy实现插值的示例代码
Nov 12 Python
在 Python 中接管键盘中断信号的实现方法
Feb 04 Python
Python3中configparser模块读写ini文件并解析配置的用法详解
Feb 18 Python
python3跳出一个循环的实例操作
Aug 18 Python
python中re模块知识点总结
Jan 17 Python
利用python实现平稳时间序列的建模方式
Jun 03 #Python
Python ADF 单位根检验 如何查看结果的实现
Jun 03 #Python
基于Python快速处理PDF表格数据
Jun 03 #Python
PIL.Image.open和cv2.imread的比较与相互转换的方法
Jun 03 #Python
Python3创建Django项目的几种方法(3种)
Jun 03 #Python
Django 实现 Websocket 广播、点对点发送消息的代码
Jun 03 #Python
使用python实现时间序列白噪声检验方式
Jun 03 #Python
You might like
PHP 在线翻译函数代码
2009/05/07 PHP
获取URL文件名后缀
2013/10/24 PHP
php判断当前操作系统类型
2015/10/28 PHP
php实现按天数、星期、月份查询的搜索框
2016/05/02 PHP
PDO::rollBack讲解
2019/01/29 PHP
php+websocket 实现的聊天室功能详解
2020/05/27 PHP
javascript:void(0)的真正含义实例分析
2008/08/20 Javascript
javascript不同页面传值的改进版
2008/09/30 Javascript
ExtJS 2.2.1的grid控件在ie6中的显示问题
2009/05/04 Javascript
javascript 延迟加载技术(lazyload)简单实现
2011/01/17 Javascript
javascript textarea光标定位方法(兼容IE和FF)
2011/03/12 Javascript
JS+CSS实现模仿浏览器网页字符查找功能的方法
2015/02/26 Javascript
js实现精美的银灰色竖排折叠菜单
2015/05/16 Javascript
JQuery中基础过滤选择器用法实例分析
2015/05/18 Javascript
纯javascript实现分页(两种方法)
2015/08/26 Javascript
Jquery修改image的src属性,图片不加载问题的解决方法
2016/05/17 Javascript
jquery做个日期选择适用于手机端示例
2017/01/10 Javascript
微信小程序显示下拉列表功能【附源码下载】
2017/12/12 Javascript
微信小程序scroll-view组件实现滚动动画
2018/01/31 Javascript
详解nodejs通过响应回写的方式渲染页面资源
2018/04/07 NodeJs
JavaScript This指向问题详解
2019/11/25 Javascript
js找出5个数中最大的一个数和倒数第二大的数实现方法示例小结
2020/03/04 Javascript
JavaScript实现随机点名程序
2020/03/25 Javascript
jquery简易手风琴插件的封装
2020/10/13 jQuery
[46:10]2014 DOTA2国际邀请赛中国区预选赛 CnB VS HGT
2014/05/21 DOTA
使用python实现拉钩网上的FizzBuzzWhizz问题示例
2014/05/05 Python
Python中函数的多种格式和使用实例及小技巧
2015/04/13 Python
Linux下使用python自动修改本机网关代码分享
2015/05/21 Python
Python3计算三角形的面积代码
2017/12/18 Python
深入浅析python with语句简介
2018/04/11 Python
Django框架视图函数设计示例
2019/07/29 Python
pytorch 获取层权重,对特定层注入hook, 提取中间层输出的方法
2019/08/17 Python
python词云库wordcloud的使用方法与实例详解
2020/02/17 Python
python爬虫使用正则爬取网站的实现
2020/08/03 Python
详解python3 GUI刷屏器(附源码)
2021/02/18 Python
德国W家官网,可直邮中国的母婴商城:Windeln.de
2021/03/03 全球购物