1. tf.unstack(number, axis=0)  表示对数据进行拆分

import tensorflow as tf
import numpy as np data = np.array([[1, 2, 3],
[2, 3, 4],
[4, 5, 6]]) filenames = tf.unstack(data) #表示输入的数据
with tf.Session() as sess:
for filename in filenames:
print(sess.run(filename))
# [1, 2, 3]
# [4, 5, 6]
# [7, 8, 9]

对数据进行合理的解读

import tensorflow as tf
from tensorflow.python.ops import data_flow_ops
import numpy as np # 构造初始的数据
image_paths_placeholder = tf.placeholder(tf.string, shape=(None, 3), name='image_path')
label_paths_placeholder = tf.placeholder(tf.int32, shape=(None, 3), name='labels')
# 构造输入的队列
input_queue = data_flow_ops.FIFOQueue(capacity=3,
dtypes=[tf.string, tf.int32],
shapes=([3, ], [3, ]),
shared_name=None, name=None)
# 将数据放入
enqueue_op = input_queue.enqueue_many([image_paths_placeholder, label_paths_placeholder])
# 进行变量初始化
init = tf.global_variables_initializer() X = np.array([['', '', ''], ['', '', ''], ['', '', '']])
Y = np.array([[1, 1, 1], [2, 2, 2], [3, 3, 3]])
filename_labels = []
with tf.Session() as sess: # 将数据进行打包输出
filenames, labels = input_queue.dequeue()
# print(sess.run(filenames))
images = []
for filename in tf.unstack(filenames): # 将数据集按照axis=0进行拆分
images.append(filename) # 将数据进行拆分, 这里可以对图片进行处理
# print(sess.run(filename))
filename_labels.append([images, labels]) # 将图片和标签进行添加
#
# # 使用图片和标签构造batch_size数据集
image_batch, label_batch = tf.train.batch_join(
filename_labels, batch_size=1,
shapes=[(), ()], enqueue_many=True,
capacity= 4 * 10,
allow_smaller_final_batch=True
)
image_batch = tf.identity(image_batch, 'image_batch')
enqueue_op.run(feed_dict={image_paths_placeholder: X, label_paths_placeholder: Y}) x = sess.run([image_batch])
print(1)
# print(sess.run(image_batch))
# 将数据进行输入

使用data_flow_ops构造batch数据集的更多相关文章

  1. 使用tensorflow.data.Dataset构造batch数据集(具体用法在下一篇博客介绍)

    import tensorflow as tf import numpy as np def _parse_function(x): num_list = np.arange(10) return n ...

  2. RDD弹性分布式数据集的基本操作

    RDD的中文解释是弹性分布式数据集.构造的数据集的时候用的是List(链表)或者Array数组类型/* 使用makeRDD创建RDD */ /* List */ val rdd01 = sc.make ...

  3. 在C#下使用TensorFlow.NET训练自己的数据集

    在C#下使用TensorFlow.NET训练自己的数据集 今天,我结合代码来详细介绍如何使用 SciSharp STACK 的 TensorFlow.NET 来训练CNN模型,该模型主要实现 图像的分 ...

  4. 混合拉普拉斯分布(LMM)推导及实现

    作者:桂. 时间:2017-03-21  07:25:17 链接:http://www.cnblogs.com/xingshansi/p/6592599.html 声明:欢迎被转载,不过记得注明出处哦 ...

  5. 从Encoder到Decoder实现Seq2Seq模型

    https://zhuanlan.zhihu.com/p/27608348 更新:感谢@Gang He指出的代码错误.get_batches函数中第15行与第19行,代码已经重新修改,GitHub已更 ...

  6. 常见算法(logistic回归,随机森林,GBDT和xgboost)

    常见算法(logistic回归,随机森林,GBDT和xgboost) 9.25r早上面网易数据挖掘工程师岗位,第一次面数据挖掘的岗位,只想着能够去多准备一些,体验面这个岗位的感觉,虽然最好心有不甘告终 ...

  7. [代码解析]Mask R-CNN介绍与实现(转)

    文章来源 DFann 版权声明:如果你觉得写的还可以,可以考虑打赏一下.转载请联系. https://blog.csdn.net/u011974639/article/details/78483779 ...

  8. 从时序异常检测(Time series anomaly detection algorithm)算法原理讨论到时序异常检测应用的思考

    1. 主要观点总结 0x1:什么场景下应用时序算法有效 历史数据可以被用来预测未来数据,对于一些周期性或者趋势性较强的时间序列领域问题,时序分解和时序预测算法可以发挥较好的作用,例如: 四季与天气的关 ...

  9. Testing - 测试基础 - 用例

    测试用例 是指对一项特定的软件产品进行测试任务的描述,体现测试方案.方法.技术和策略. 内容包括测试目标.测试环境.输入数据.测试步骤.预期结果.测试脚本等,并形成文档. 每个具体测试用例都将包括下列 ...

随机推荐

  1. shell与其他语言不同点

    1.定义变量时,变量名不加美元符号($,PHP语言中变量需要),如: your_name="w3cschool.cn" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语 ...

  2. Win10 OpenCV3.3.0+VS2013配置大坑,OpenCV解决方案编译报错“找不到python36_d.lib”错误

    今天因为想要用OpenCV做图像识别,小白一个,在网上找到一个教程,但是需要配置OpenCV3.3.0的环境,于是又在网上找OpenCV3.3.0+VS2013(因为我之前已经安过了VS2013),前 ...

  3. LSPro建立PXE环境

    一.安装和配置tftp服务 1.安装tftp-hpa ipkg install tftp-hpa       tftp-hpa主要的配置文件有两个: /opt/etc/xinetd.conf /opt ...

  4. 5、Sersync实时同步实战

    1.实时同步概述 1.什么是实时同步, 只要当前目录发生变化则会触发一个事件,事件触发后将变化的目录同步至远程服务器. 2.为什么要实时同步, 保证数据的连续性, 减少人力维护成本, 解决nfs单点故 ...

  5. 第十四章·Kibana深入-Timelion画图实现系统监控

    什么是Timelion? Timelion使你可以轻松获得以下问题的答案: 1)随着时间的推移,每个唯一的用户会查看多少个页面?2)这个星期五和上周五之间的交通量有什么不同?3)今天有多少日本人口来到 ...

  6. Ansible简单介绍(一)

    一 :ansible简单介绍 此名取自 Ansible 作者最喜爱的<安德的游戏> 小说,而这部小说更被后人改编成电影 -<战争游戏>. 官网地址:https://www.an ...

  7. Datasets and Evaluation Metrics used in Recommendation System

    Movielens and Netflix remain the most-used datasets. Other datasets such as Amazon, Yelp and CiteUli ...

  8. Android异常与性能优化相关面试问题-内存泄漏面试问题讲解

    Java内存泄漏基础知识: Java的内存的分配策略 a.静态存储区:也叫方法区,主要是存放一些静态数据及全局变量等,在程序编译时就已经分配好了,并且在静态存储区中存放的变量在整个程序运行期间都存在. ...

  9. Winform的高DPI问题

    现在的屏幕大部分都是高分屏,在这样的屏幕下开发winfrom软件就需要注意高DPI问题了 1.Form和UserControl的AutoScaleMode设置为Dpi 2.为项目添加应用程序清单文件( ...

  10. Linux之vi文本编辑器

    vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode).输入模式(Insert mode)和末行模式(last line mode),各模式的功能区分如下: 1) 命令 ...