我正在研究使用CNN作为特征提取器和完全连接的块进行分类的图像类增量分类器方法。Keras中的自定义丢失函数
首先,我对VGG每训练网络进行了微调以完成一项新任务。一旦网络接受了新任务的培训,我就会为每个班级存储一些示例,以避免在新班级可用时遗忘。
当有些类可用时,我必须计算包含新类的范例的范例的每个输出。现在添加零为老班的输出,并添加对应于每一个新类的新类输出我有我的新标签,即标签: 如果3个新的类别进入....
老班型输出: [0.1, 0.05, 0.79, ..., 0 0 0]
新类型输出:[0.1, 0.09, 0.3, 0.4, ..., 1 0 0]
**最后的输出对应于类。
我的问题是,我可以如何改变一个自定义的损失函数来培训新的类? ,我想要实现的损失函数被定义为:
其中蒸馏损失对应于老的类的输出以避免遗忘,和分类损失对应于新的类。
如果你能提供我一个代码样本来改变keras中的损失函数将是很好的。
谢谢!!!!!
okaay,这正是IW如寻找,非常感谢你! – Eric
@Daniel你可以检查这个问题类似于上面,但不能如何实现是如何实现的是https://stackoverflow.com/questions/49088206/w-categorical-crossentropy-function-keras-tensorflow –