问题标签 [tf-slim]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
5676 浏览

tensorflow - 使用 tfslim 解码 tfrecord

我在 CPU 上使用 Python 2.7.13 和 Tensorflow 1.3.0。

我想使用 DensNet(https://github.com/pudae/tensorflow-densenet)来解决回归问题。我的数据包含 60000 张 jpeg 图像,每个图像有 37 个浮动标签。我通过以下方式将数据保存到 tfrecords 文件中:

`


我通过以下方式对其进行解码:


到目前为止一切都很好。但是当我使用下面的命令来解码 TFRecord 文件时:


我收到以下错误。

INFO:tensorflow:向协调器报告错误:,断言失败:[无法将字节解码为 JPEG、PNG、GIF 或 BMP] [[节点:case/If_0/decode_image/cond_jpeg/cond_png/cond_gif/Assert_1/Assert = Assert[ T=[DT_STRING], summarize=3, _device="/job:localhost/replica:0/task:0/cpu:0"](case/If_0/decode_image/cond_jpeg/cond_png/cond_gif/is_bmp, case/If_0/ decode_image/cond_jpeg/cond_png/cond_gif/Assert_1/Assert/data_0)]] INFO:tensorflow:Caught OutOfRangeError。停止训练。INFO:sensorflow:训练完毕!将模型保存到磁盘。


要使用 Densenet 解决我的问题,我应该首先修复此错误。谁能帮我解决这个问题。此代码非常适用于 https://github.com/pudae/tensorflow-densenet/tree/master/datasets 上的鲜花、MNIST 和 CIFAR10 等数据集,但不适用于我的数据。

0 投票
2 回答
1655 浏览

tensorflow - 如何定期评估 TF-Slim 中模型的性能?

我正在尝试使用DensNet解决 TF-Slim 的回归问题。我的数据包含 60000 张 jpeg 图像,每个图像有 37 个浮动标签。我将数据分成三个不同的 tfrecords 文件,分别是训练集 (60%)、验证集 (20%) 和测试集 (20%)。

我需要在训练循环期间评估验证集并制作一个类似image的图。在 TF-Slim 文档中,他们只是分别解释了训练循环和评估循环。我可以在训练循环完成后评估验证集或测试集。正如我所说,我需要在培训期间进行评估。

我尝试使用 slim.evaluation.evaluation_loop 函数而不是 slim.evaluation.evaluate_once。但这无济于事。

我也尝试了evaluation.evaluate_repeatedly。

在这两个函数中,它们只是从 checkpoint_dir 读取最新的可用检查点并显然在等待下一个,但是当生成新的检查点时,它们根本不执行。

我在 CPU 上使用 Python 2.7.13 和 Tensorflow 1.3.0。

任何帮助将不胜感激。

0 投票
1 回答
587 浏览

python - Tensorflow:为什么inception_v3预测在评估中是Nan?

我的模型中有一部分是 inception_v3:

我用 训练它is_training=True,而不是保存我的模型。当我在新的执行中评估我的模型时,我设置了is_training=False

问题是预测的输出几乎是 NAN。

如果我设置is_training=True,模型运行良好;在预测中我的 NAN 为零。

假和真有什么区别?我发现这个值作用于 dropout 和 batch_norm。

对于辍学

对于批处理规范

我该如何解决这个问题?

谢谢。

0 投票
2 回答
2132 浏览

python - 如何在 GPU 上运行 Tensorflow 文件?

您知道如何在 GPU 上运行“eval_image_classifier.py”吗?我应该更改任何功能或进行任何修改吗?或者是否存在任何其他特定功能用于在 GPU 上进行评估?

我已经可以在 GPU 上运行“train_image_classifier.py”,因为具有用于在 CPU 和 GPU 之间切换的相关标志:

我确实尝试将同一行添加到eval_image_classifier.py,但没有效果。我正在使用 Python 2.7.13 和 Tensorflow 1.3.0 。

我也尝试使用一些代码,例如 Tensorflow 教程:

我以这种方式修改了代码:

当我运行这段代码时,我遇到了这个错误:

0 投票
1 回答
1028 浏览

tensorflow - 如何在 TF-Slim 的 eval_image_classifier.py 中打印预测?

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/slim/python/slim/evaluation.py

嗨,大家好!

我想通过使用 tensorflow slim 获得批量图像的分类预测结果。

很长时间以来我尝试了很多方法,但我未能将“预测”打印或写入 aaa.txt 等文件。怎么办?

先感谢您。

0 投票
0 回答
675 浏览

tensorflow - 使用 TF-SLIM 解析序列化字符串示例

我正在尝试使用TF-SLIM dataset classes解析数据。

我将两个图像组合成一个 640x480x6 numpy 数组(因为我组合了两个图像的 RGB 通道)并将它们序列化以将它们保存到.tfrecords文件中。这是执行此操作的代码。

其中 img_pair 是一个640x480x6的numpy 数组,而 flo 是一个640x480x2的numpy 数组。

现在我想阅读这些例子。这是我到目前为止从 tf-slim flower.py (已更新以适合我)示例中获得的内容。

这里的问题是image/img_pair 和 image/flo是二进制字符串。据我所知,它们首先需要转换为张量才能将它们作为 item_handlers 提供。

像这样。

我不知道如何将它解析回具有相同形状的张量,即 img_pair 为 640x480x6,flo 为 640x480x2。

我得到一个错误。

0 投票
1 回答
1184 浏览

tensorflow - 使用多个 GPU 和 tensorflow.slim.learning 进行分布式训练

我了解 TensorFlow 支持分布式训练。

我找到num_clones了,train_image_classifier.py这样我就可以在本地使用多个 GPU。

如何在不同主机上使用多个 GPU?

0 投票
2 回答
1113 浏览

tensorflow - 在张量流检查点修改张量的形状

我有一个张量流检查点,在使用常规例程重新定义与它对应的图形后,我可以加载该检查点tf.train.Saver()saver.restore(session, 'my_checkpoint.ckpt').

但是,现在,我想修改网络的第一层以接受形状的输入 say[200, 200, 1]而不是[200, 200, 10].

为此,我想将第一层对应的张量的形状从[3, 3, 10, 32](3x3 内核,10 个输入通道,32 个输出通道)修改为[3, 3, 1, 32]通过第三维求和。

我怎么能那样做?

0 投票
2 回答
905 浏览

tensorflow - 在创建“TFRecord”文件之前调整 JPG 的大小?

我正在构建一个模型来使用tf.slim它来运行 AVA 数据集——32GB 大小,大约 256K JPG 图像。针对全分辨率图像,我创建了 20 个 TFRecord用于训练的分片文件,每个文件大小为1.54 GB.

在训练期间,我的预处理步骤将(256,256,3)在提取随机裁剪的(224,224,3). 如果我在创建文件之前调整 JPG 图像TFRecord的大小,文件大小会缩小到28 MB.

除了额外的时间,如果我在创建 JPG 文件之前调整其大小,我的方法是否还有其他问题TFRecords

0 投票
2 回答
1061 浏览

python - 为什么 `optimizer.minimize()` 不使用 `tf.slim.learning.train()` 返回损失?

我正在使用tf-slim微调网络,vgg16. 我想通过对最后一层应用不同的学习率来手动操作梯度。但是当我尝试使用opt.minimize(), ortf.gradients()并且opt.apply_gradients()None在摘要报告中获得损失值时

为什么此代码路径train_op起作用:

但是手动创建train_op失败并出现以下异常(例如total_lossis None):

我在这里做错了什么?