Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.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
Java 如何在DL4J中加载Keras模型文件,该文件是使用自定义丢失函数在Python中训练的_Java_Python_Keras_Dl4j - Fatal编程技术网

Java 如何在DL4J中加载Keras模型文件,该文件是使用自定义丢失函数在Python中训练的

Java 如何在DL4J中加载Keras模型文件,该文件是使用自定义丢失函数在Python中训练的,java,python,keras,dl4j,Java,Python,Keras,Dl4j,我使用的是一个Keras模型,它是在DL4J的Java过程中用Python训练的。这通常工作得很好,但现在改为使用自定义损失函数 该模型使用Python进行训练,并带有一个自定义损失函数: model = load_model('modelFile' , custom_objects={'loss': my_custom_loss_function(weight)}) 我尝试在Java中与dl4j(版本:1.0.0-beta6)一起使用它来加载模型: String modelFile = "&

我使用的是一个Keras模型,它是在DL4J的Java过程中用Python训练的。这通常工作得很好,但现在改为使用自定义损失函数

该模型使用Python进行训练,并带有一个自定义损失函数:

model = load_model('modelFile' , custom_objects={'loss': my_custom_loss_function(weight)})
我尝试在Java中与dl4j(版本:1.0.0-beta6)一起使用它来加载模型:

String modelFile = "<location of hdf5 file on disk>";
MultiLayerNetwork multiLayerNetwork = KerasModelImport.importKerasSequentialModelAndWeights(modelFile);
我如何在java中给它一个loss函数?或者有没有一种方法可以在不给它损失函数的情况下加载它


谢谢

不幸的是,自beta6起,DL4J不支持为keras导入注册自定义丢失功能

如果您只想加载经过训练的模型进行推理,您应该能够通过将keras中的损失函数更改为支持的函数之一(请参阅)来解决问题,然后再次导出它

org.deeplearning4j.nn.modelimport.keras.exceptions.UnsupportedKerasConfigurationException: 
Unknown Keras loss function loss. Please file an issue at https://github.com/eclipse/deeplearning4j/issues.