自定义损失函数
来源:3-5 实战自定义损失函数与DenseLayer回顾
Quicklock
2020-03-14
老师,您好!我在做一个医学图像分割的项目,想用DICE作为metrics和loss,我在github上找到了DICE的函数,但是放在这里后就报错了,需要加上from keras import backend as K,然后改回原来的样子,即K.flatten。
老师,请问这个报错是什么原因和怎么解决?
还有就是我也查了tensorflow的文档,请问有哪个loss和metrics是用于做医学图像分割比较合适的?
写回答
1回答
-
同学你好:
从错误文本 "Using a tf.Tensor as a Python bool is not allowed in Graph execution. Use Eager execution or decorate this function with @tf.function"来看,
你的代码没有开eager mode,所以不是tf2.0+的版本。要解决这个问题,你需要使用tf2.0的版本,或者在dice_coet_loss的方法上加上@tf.function
而在tensorflow的实现中,应该没有特别的专门针对图像分割的loss函数,你可以参考一些开源资料自行实现:
https://blog.csdn.net/wangdongwei0/article/details/84576044
012020-03-14
相似问题