正如标题所示,我需要帮助来编写基于VGG-16的FCN-8模型的损失函数。我尝试参考TensorFlow指南进行图像分割,并使用了以下代码
final_model.compile(optimizer='adam',
loss=tf.nn.softmax_cross_entropy_with_logits(labels=Y, logits=activation),
metrics=['accuracy'])
但是,我得到的错误是
ValueError: No gradients provided for any variable: ['block1_conv1/kernel:0', 'block1_conv1/bias:0', 'block1_conv2/kernel:0', 'block1_conv2/bias:0', 'block2_conv1/kernel:0', 'block2_conv1/bias:0', 'block2_conv2/kernel:0', 'block2_conv2/bias:0', 'block3_conv1/kernel:0', 'block3_conv1/bias:0', 'block3_conv2/kernel:0', 'block3_conv2/bias:0', 'block3_conv3/kernel:0', 'block3_conv3/bias:0', 'block4_conv1/kernel:0', 'block4_conv1/bias:0', 'block4_conv2/kernel:0', 'block4_conv2/bias:0', 'block4_conv3/kernel:0', 'block4_conv3/bias:0', 'block5_conv1/kernel:0', 'block5_conv1/bias:0', 'block5_conv2/kernel:0', 'block5_conv2/bias:0', 'block5_conv3/kernel:0', 'block5_conv3/bias:0', 'fc5/kernel:0', 'fc5/bias:0', 'fc6/kernel:0', 'fc6/bias:0', 'score_fr/kernel:0', 'score_fr/bias:0', 'score2/kernel:0', 'score2/bias:0', 'score_pool4/kernel:0', 'score_pool4/bias:0', 'score4/kernel:0', 'score4/bias:0', 'score_pool3/kernel:0', 'score_pool3/bias:0', 'upsample/kernel:0', 'upsample/bias:0'].
研究了一下之后,我发现它可能是由损失函数引起的。因此,是的,关于如何编写损失函数的任何建议都将不胜感激。