如何在python中修改神经网络的成本函数



我需要使用包和库为Python中的神经网络创建自己的成本函数。例如,我想创建一个成本函数,它是其中一个隐藏层的输出的函数。

scikit-learn的Keras和MLP不允许这样做。有更好的套餐吗?

在 Keras 中,只有当成本函数是预测 y 和实际 y 的函数时,您才能具有修改的成本函数。我需要更多的灵活性。

您可以创建辅助输出,例如:

import tensorflow as tf
inp = tf.keras.layers.Input(...)
x1 = tf.keras.layers.Dense(..)(inp)
x2 = tf.keras.layers.Dense(...)(x1)
model = tf.keras.Model(inp, [x1, x2])
model.compile(loss=['loss_for_x1', 'loss_for_x2'], 
              optimizer='rmsprop',
              loss_weights=[1., 1.]) # How many the loss function influences 

你可以把它直接应用于第一层。

最新更新