Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 这个代码有什么问题,为什么这个代码中的损失没有减少?_Python_Tensorflow_Deep Learning_Loss Function_Vgg Net - Fatal编程技术网

Python 这个代码有什么问题,为什么这个代码中的损失没有减少?

Python 这个代码有什么问题,为什么这个代码中的损失没有减少?,python,tensorflow,deep-learning,loss-function,vgg-net,Python,Tensorflow,Deep Learning,Loss Function,Vgg Net,我已经在tensorflow中实现了VGG-16,VGG-16是一个相当深的网络,因此损失肯定会减少。但在我的代码中,它并没有减少。 但当我一次又一次地在同一批上运行模型时,损失就减少了。任何想法,为什么会发生这样的事情 VGG网络是从 在狗与猫的数据集上进行训练,图像大小为224x224x3 网络参数如下: lr_比率:0.001 批量大小=16 查找代码@ 输出如下: 我假设您正在遵循您链接的Simonyan&Zisserman论文中的架构变体E,然后我发现您的代码存在一些问题: 对所有隐藏

我已经在tensorflow中实现了VGG-16,VGG-16是一个相当深的网络,因此损失肯定会减少。但在我的代码中,它并没有减少。 但当我一次又一次地在同一批上运行模型时,损失就减少了。任何想法,为什么会发生这样的事情

VGG网络是从

在狗与猫的数据集上进行训练,图像大小为224x224x3

网络参数如下:

lr_比率:0.001 批量大小=16

查找代码@

输出如下:


我假设您正在遵循您链接的Simonyan&Zisserman论文中的架构变体E,然后我发现您的代码存在一些问题:

对所有隐藏层使用activation='relu'

最大池应该在2x2窗口上完成,因此在池层中使用pool_size=[2,2],而不是pool_size=[3,3]

将pool13与conv13正确连接:


我没有任何可供测试的GPU,但如果迭代次数足够多,损失应该会减少。

每当我的NN没有学习时,我都会从这个开始并通过它来完成。另外,您的代码缺少一些缩进。@EdgarH很抱歉,缩进是错误的,因为StackOverflow不支持一次性使用代码节。所以我把代码段放到了代码部分,我想这破坏了缩进。你可以把你的代码放到gistgist.github.com并在这里提供链接。谢谢你的评论,我按照你的建议修改了代码,因为我犯了明显的错误,但这对我没有帮助,损失仍然没有减少。
pool13 = tf.layers.max_pooling2d(conv13, [2, 2], 2, name='pool13')