我使用一个非常简单的MLP,只有一个隐藏层来估算期权价格。
除了神经网络的实际输出之外,我还想知道关于6个输入参数之一的输出值(数据样本的每一行)的偏导数,这样得到的值可以被解释为输出相对于输入参数变化的百分比变化。
由于我对Keras和神经网络一般都很陌生,所以我自己无法找到问题的解决方案。
# Create Model
model = Sequential()
model.add(Dense(6, input_dim=6)) #input layer
model.add(Dense(10, activation=relu)) #hidden layer
model.add(Dense(1, activation=linear)) #output layer
# Compile Model
model.compile(loss='mse', optimizer='adam', metrics=['mae'])
# Train model
model.fit(X_train, Y_train, epochs=50, batch_size=10 verbose=2, validation_split=0.2)
# Predict Values
Y_pred = model.predict(X_test, batch_size=10)