如何在Keras中创建自定义损失函数,包括神经网络输出相对于输入的导数?

我正在寻找训练一个神经网络来满足一个常微分方程。我已经使用keras顺序模型构建了这样的神经网络。
import keras
from keras.models import Sequential
from keras.layers import Dense
from keras.layers.advanced_activations import LeakyReLU,PReLU
model = Sequential()
model.add(Dense(output_dim = 20,init = 'uniform',activation = 'relu',input_dim = 1,use_bias=True))
model.add(Dense(output_dim = 20,use_bias=True))
model.add(Dense(output_dim = 1,init='uniform',activation='sigmoid'))`

现在,我希望神经网络的输出满足以下微分方程:

dy/dx+y=x

其中x介于0和1之间。 假设N代表构造的神经网络的输出,我想要以下损失函数

∑(dN/dx_i+N-x_i)^2

如何使用Keras顺序模型做到这一点?

okam6hz 回答:如何在Keras中创建自定义损失函数,包括神经网络输出相对于输入的导数?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3123431.html

大家都在问