Python 这个代码有什么问题,为什么这个代码中的损失没有减少?
我已经在tensorflow中实现了VGG-16,VGG-16是一个相当深的网络,因此损失肯定会减少。但在我的代码中,它并没有减少。 但当我一次又一次地在同一批上运行模型时,损失就减少了。任何想法,为什么会发生这样的事情 VGG网络是从 在狗与猫的数据集上进行训练,图像大小为224x224x3 网络参数如下: lr_比率:0.001 批量大小=16 查找代码@ 输出如下: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,然后我发现您的代码存在一些问题: 对所有隐藏
我假设您正在遵循您链接的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')