【TensorFlow】数据处理(队列和多线程)

本文介绍了在TensorFlow中如何进行数据处理,包括使用FIFOQueue和RandomShuffleQueue,以及如何利用enqueue/dequeue函数进行操作。同时,讲解了tf.Coordinator的使用,它能协调多进程停止,并通过should_stop()和request_stop()控制线程。此外,还展示了如何借助tf.QueueRunner和tf.Coordinator管理多线程队列操作。
摘要由CSDN通过智能技术生成

项目已上传至 GitHub —— queue-threading

Queue


TensorFlow 提供了两种列队

  • FIFOQueue:先进先出队列
  • RandomShuffleQueue:随机出队队列

修改队列状态的函数主要有

  • enqueue():入队
  • enqueue_many():将多个元素入队
  • dequeue():出队

以下代码示范了怎么使用这些函数(以下所有代码都实现自《TensorFlow:实战Google深度学习框架》

import tensorflow as tf

# 创建一个先进先出队列,指定队列最多保存两个元素,类型为整数
q = tf.FIFOQueue(2, 'int32')

# 初始化队列中的元素
init = q.enqueue_many(([0, 10], ))

# 执行出队操作
x = q.dequeue()

# 将元素+1后入队
y = x + 1
q_inc = q.enqueue([y])

with tf.Session() 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值