问题标签 [tensorflow-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.
tensorflow - slim.fully_connected:使用 Tensor.shape 指定 `num_outputs`
我想用这样tf.slim.fully_connected
的东西:
但是,当我这样做时,我得到一个错误:
ValueError:
num_outputs
应该是 int 或 long,得到 49。
h*w*c
是类型tensorflow.python.framework.tensor_shape.Dimension
。
有没有办法做到这一点,事先不知道whc
,而不必开始一个会话来确定它们?
python - 尝试使用未初始化的值 InceptionV3/Mixed_6d/Branch_3/Conv2d_0b_1x
我修改了 Inception V3 网络(删除了一些层模块),并创建了 6 个类训练数据,每个类 1 个图像。当我执行训练时,我得到了错误
tensorflow.python.framework.errors_impl.FailedPreconditionError: Attempting to use uninitialized value InceptionV3/Mixed_6d/Branch_3/Conv2d_0b_1x1/weights [[Node: InceptionV3/Mixed_6d/Branch_3/Conv2d_0b_1x1/weights/read = Identity[T=DT_FLOAT, _class=[” loc:/Branch_3/Conv2d_0
火车代码:
错误堆栈跟踪:
回溯(最近一次通话最后):
文件“/home/xzy/PycharmProjects/network/train_inception.py”,第 89 行,在 train()
文件“/home/xzy/PycharmProjects/network/train_inception.py”,第 71 行,在 train()
_, train_loss = sess.run([train_op, loss], feed_dict={x: example.eval(), y_:实验室})文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py”,第 889 行,运行 run_metadata_ptr)
文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py”,第 1120 行,在 _run feed_dict_tensor、options、run_metadata)
文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py”,第 1317 行,在 _do_run 选项中,run_metadata)
_do_call raise type(e)(node_def, op, message) 中的文件“/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py”,第 1336 行
tensorflow.python.framework.errors_impl.FailedPreconditionError: Attempting to use uninitialized value InceptionV3/Mixed_6d/Branch_3/Conv2d_0b_1x1/weights [[Node: InceptionV3/Mixed_6d/Branch_3/Conv2d_0b_1x1/weights/read = Identity[T=DT_FLOAT, _class=[” loc:@InceptionV3/Mixed_6d/Branch_3/Conv2d_0
怎么了?有人能给我一些想法吗,谢谢?
TensorFlow 版本:1.5.0-dev20171206,python 2.7,Ubuntu 16.04。
python-2.7 - reshape 的输入是一个有 89401 个值的张量,但请求的形状有 268203
重新训练时,我使用形状为 [299,299] 的图像(均为 jpeg 编码)inception_v3 network
创建文件以用于训练数据。TFrecorde
我只得到step=0
结果,然后我得到如下错误。
tensorflow.python.framework.errors_impl.InvalidArgumentError:reshape 的输入是一个具有 89401 个值的张量,但请求的形状有 268203
[[Node: Reshape = Reshape[T=DT_UINT8, Tshape=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](DecodeRaw, Reshape/shape)]]
89401=299x299,268023 = 299x299x3。我的创建 TFrecorde 代码是:
此外,我的班级是每班 6、32 张图像。batch_size = 32。我在训练前打印图像矩阵大小为'2680203'。输出日志为:
为什么我只得到step=0
结果。然后我得到错误。堆栈跟踪是:
为什么?能不能给点思路,谢谢
tensorflow - 在 CNN 的图像管道中使用 `tf.to_float()` 或 `tf.image.convert_image_dtype()`?
我正在tf.slim
使用此文件作为模板vgg_preprocessing.py修改示例。
tf.slim
当我使用笔记本 ( slim_walkthrough.ipynb )中的剪辑从 TFRecord 文件中读取数据时,我得到一张颜色失真的图像。当预处理脚本使用tf.to_float()
将图像张量从 更改为tf.uint8
时,就会发生这种情况tf.float32
。
image = tf.image.convert_image_dtype(image, dtype=tf.float32)
通过 CNN 运行后,这些差异是否重要?如果是这样,哪一个更适合Vgg16
图像处理管道?如果我切换到不同的预训练模型有关系Inception
吗?
这是完整的方法:
python - 将数据读入 TensorFlow 并使用 TF-slim 创建数据集
我需要从 .txt 文件中读取许多“图像”,并想用它们生成一个 tensorflow 数据集。目前,我使用 numpy.loadtxt 读取每个矩阵,并创建一个形状为 [N_matrices, height, width, N_channels] 的数组,以及一个带有每个矩阵标签的类似数组。
我通过使用从这两个数组创建一个张量流数据集
我现在想使用以下函数从该数据集创建批次(如此处所做):
但是,这给了我以下错误:
文件“/home/.local/lib/python3.5/site-packages/tensorflow/contrib/slim/python/slim/data/dataset_data_provider.py”,第 85 行,init dataset.data_sources,
AttributeError:“TensorSliceDataset”对象没有属性“data_sources”
为什么我会收到此错误,我该如何解决?我还认为有更好的方法来处理从 txt 文件到 tensorflow(或 tensorflow-slim)的输入,但我发现这方面的信息很少。如何以更好的方式生成我的数据集?
python - 如何在重新训练时初始化 tensorflow.contrib.slim 完全连接层的权重和偏差?
在保存并训练了张量流图之后,我将其恢复为使用不同的损失函数进行重新训练,如下所示:
当我尝试left_output_val
通过调用来计算 的值时,上面的代码给出了以下错误sess.run
。
这让我有点惊讶,因为:
我使用以下行初始化了所有变量:
这可能是因为未按照此处的建议使用此行初始化权重和偏差:Uninitialized value error while using Adadelta optimizer in Tensorflow
我在以下几行中初始化权重和偏差:
在运行会话和计算
left_output_val
我很欣赏在这里解决我的问题的任何想法。
tensorflow-slim - Tensorflow Object_detection API 的可视化不起作用
当我使用Object_detection的API时,我按照说明进行操作,一切都很好。但是,当我开始测试我的图片时,我遇到了一个问题,似乎名为“visualize_boxes_and_labels_on_image_array”的函数(在57行)没有'不工作。这是我的源代码
当我运行此代码时,图像确实显示了,但没有任何改变,图片中没有检测到区域,也没有其他信息。输入图片与输出图片相同。但是当我在 Debug 时,我发现 soucres 、 classes 、 box 等变量确实有值。
有人可以帮助我吗?谢谢!!!
我的 Tensorflow 版本是 1.4.0 , CUDA 8.0 在 Ubuntu 16.04
tensorflow - 如何在 tensorflow tfrecords 中增加数据?
我使用 tfrecords 存储数据,并使用 API 将它们作为张量读取Dataset
,然后使用Estimator
API 执行训练。现在,我想对数据集中的每个项目进行在线数据增强,但尝试了一段时间后,我找不到出路。我想要随机翻转、随机旋转等机械手。
我正在按照本教程中给出的说明使用自定义估计器,这是我的 CNN,但我不确定数据增强步骤发生在哪里。
tensorflow - 如何在 tensorflow 中的自定义操作/层之后添加 slim.batch_norm?
我有一个旨在构建架构的功能
所以,我的功能是
我对吗?我可以is_training
像上面的函数那样设置吗?如果没有,你能帮我解决吗?
tensorflow-slim - tf.contrib.slim.prefetch_queue 在 tensorflow 中做了什么
我看到了一个使用 tensorflow 训练 cifar10 数据的例子: https ://github.com/tensorflow/models/tree/master/tutorials/image/cifar10
该代码使用 tf.train.batch 从多个单个图像生成一批图像,并使用 prefetch_queue 创建一个批处理队列。我知道当训练数据很大时,有必要使用队列来预取数据。我猜 tf.train.batch 在内部维护一个队列(因为它有一个容量参数)。由于 tf.train.battch 中已经维护了一个批处理队列,是否有必要使用 tf.contrib.slim.prefetch_queue 创建另一个队列?tf.contrib.slim.prefetch_queue 到底做了什么?
cifar-10 示例代码的关键部分如下所示: