- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试向我的神经网络提供存储在 TFRecords 中的数据。数据是使用 inputs() 提取的,与 tensorflow 网页上的提取方式类似。它返回的数据是两个张量。当我尝试eval()张量以便我可以使用 feed_dict 通过我的模型发送它们时,我的计算机只是坐着不执行任何操作。代码不会返回错误,我的系统监视器让我相信除了我的 GPU 内存几乎已满之外没有发生任何事情。
image = tf.placeholder("float32", [None, 30000])
image_batch, label_batch = inputs(train_dir, True, batch_size, hm_epochs, one_hot_labels=True)
print(image_batch)
with tf.Session().as_default() as sess:
tf.global_variables_initializer().run()
results = sess.run(image_batch)
print(results)
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcurand.so locally
Tensor("input/shuffle_batch:0", shape=(100, 30000), dtype=float32)
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:937] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties:
name: GeForce GTX 960
major: 5 minor: 2 memoryClockRate (GHz) 1.342
pciBusID 0000:01:00.0
Total memory: 3.94GiB
Free memory: 3.38GiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0: Y
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 960, pci bus id: 0000:01:00.0)
**编辑:**我的输入函数。
def inputs(train_dir, train, batch_size, num_epochs, one_hot_labels=False):
if not num_epochs: num_epochs = None
filename = os.path.join(train_dir,
TRAIN_FILE if train else VALIDATION_FILE)
with tf.name_scope('input'):
filename_queue = tf.train.string_input_producer(
[filename], num_epochs=num_epochs)
image, label = read_and_decode(filename_queue)
if one_hot_labels:
label = tf.one_hot(label, 2, dtype=tf.int32)
example_batch, label_batch = tf.train.shuffle_batch(
[image, label], batch_size=batch_size, num_threads=1,
capacity=1000,
# Ensures a minimum amount of shuffling of examples.
min_after_dequeue=10)
return example_batch, label_batch
最佳答案
TL;DR: 尝试在初始化变量之后、尝试评估 input_batch
之前添加以下行:
tf.train.start_queue_runners(sess)
在没有看到 inputs()
的实现的情况下很难确定,但张量名称 "input/shuffle_batch"
表明该函数正在使用以下方式构建输入tf.train.shuffle_batch()
功能。
许多用于输入处理的 TensorFlow 函数都会在内部创建预取队列,包括 tf.train.shuffle_batch()。这些预取队列最初是空的,并且您的 sess.run(input_batch) 调用可能会被阻塞,等待将元素放入这些队列中。目前,这种情况通常发生的方式是使用“队列运行线程”,它是当您调用 tf.train.start_queue_runners()
时启动的一个或多个后台线程的名称。 .
这是 TensorFlow 中较为复杂的领域之一,我们正在努力改进。同时,您可以在 threading and queues in TensorFlow 上找到文档。有用。
关于python - sess.run(Tensor()) 不执行任何操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41276012/
在 tensorflow 中,如果我们想要运行多个操作,如果我们将列表中的操作传递给单个 sess.run() 与我们使用多个 sess.run() 但只向每个操作传递一个操作? 示例: #!/usr
我尝试通过以下代码来训练我的模型。 sess.run([train_op, model.global_step, model.loss, model.prediction], feed_dict) 但
我正在训练 CNN,我相信我使用了 sess.run()导致我的训练速度非常慢。 本质上,我使用 mnist数据集... from tensorflow.examples.tutorials.mnis
我有一些扩展名为 *.sess 的 session 文件。如何在 Linux/Windows 上打开它?我尝试使用普通的文本编辑器,但我得到了部分垃圾值和部分实际文本。谢谢! 最佳答案 我希望您正在尝
使用 tf print documentation 我写的 print_op = tf.print("tensors:", cut_points[0,0,:], output_stream=s
我正在尝试向我的神经网络提供存储在 TFRecords 中的数据。数据是使用 inputs() 提取的,与 tensorflow 网页上的提取方式类似。它返回的数据是两个张量。当我尝试eval()张量
我想对单个 sess.run() 调用执行多个梯度下降步骤。每次调用的输入都是固定的,因此我只需要传递一次。 我该怎么做?我有一个想法,但我不确定它是否会在每一步重新计算梯度(而是应用第一个梯度 N
我在 Koa 中使用 Passport.js,我注意到当生成 session cookie 时,它被称为 koa:sess并包含编码为 Base64 的 session 信息。然而,还有另一个 c
我正在测试tensorflow队列系统,并且我有一个简单的tensorflow程序,它使用队列来处理输入。示例程序代码为 import tensorflow as tf import numpy as
我正在尝试逐批训练我的模型,因为我找不到任何示例来说明如何正确地训练它。这是我所能做的,我的任务是找到如何在 Tensorflow 中逐批训练模型。 queue=tf.FIFOQueue(capaci
我试着玩了一下 tensorflow,但似乎我做错了什么,我制作的小程序: import tensorflow as tf x = tf.placeholder(tf.float64) y = tf.
我是 Tensorflow 新手,遇到了一个问题。当我的程序到达 x_batch = sess.run(X_mb) 时,它被卡住了(因此,它可以打印 1 和 2,但无法打印 4。我猜这是一个无限循环)
我一直以为变量赋值是在给sess.run的列表中的所有操作之后完成的,但是下面的代码在不同的执行中返回不同的结果。似乎随机运行列表中的操作并在列表中的操作运行后分配变量。 a = tf.Variabl
所以,这可能是一个愚蠢或显而易见的问题,但请耐心等待。我是一名数学专业的学生,我已经进入最后一年了,一直在学习使用神经网络来取乐。我不是程序员,所以错误是我经常遇到的事情。通常我可以把它们整理出来
我在 tensorflow 下运行 python 程序。当我输入sess.run()时,命令行提示我NameError: name 'sess' is not defined print(sess.r
我在 Python v2.7 中使用 tensorflow 0.8.0。我的 IDE 是 PyCharm,我的操作系统是 Linux Ubuntu 14.04 我注意到以下代码会导致我的计算机死机和/
下面的代码会挂起(只有 CTRLz 让我退出)。 import tensorflow as tf import cifar10 # from https://github.com/tensorflow
sess.graph 和 tf.get_default_graph() 在 tensorboard 中给出相同的结果。根据手册,我不太清楚它们之间有什么区别。有人可以帮忙解释一下区别吗? anybob
这些帖子确实有数千篇,但我还没有看到一篇能解决我的确切问题的帖子。如果存在,请随时关闭。 我知道列表在 Python 中是可变的。因此,我们不能将列表存储为字典中的键。 我有以下代码(因为不相关而省略
我是 tensorflow 的新手。我有一些我想理解的代码。有没有办法在 sess.run 中获取“feed_dict”的所有可能输入的列表? feed_dict 的结构是始终相同还是取决于 sess
我是一名优秀的程序员,十分优秀!