我在 Python/Keras 中有以下神经网络:

input_img = Input(shape=(784,))

encoded = Dense(1000, activation='relu')(input_img)  # L1
encoded = Dense(500, activation='relu')(encoded)     # L2
encoded = Dense(250, activation='relu')(encoded)     # L3
encoded = Dense(2, activation='relu')(encoded)       # L4

decoded = Dense(20, activation='relu')(encoded)      # L5
decoded = Dense(400, activation='relu')(decoded)     # L6
decoded = Dense(100, activation='relu')(decoded)     # L7
decoded = Dense(10, activation='softmax')(decoded)   # L8

mymodel = Model(input_img, decoded)

我想做的是在第 4~7 层中的每一层都有一个神经元为常数 1(以实现偏置项),即它没有输入,具有固定值 1,并且完全连接到下一层。有没有一种简单的方法可以做到这一点?非常感谢!

最佳答案

您可以创建常量输入张量:

constant_values = np.ones(shape)
constant = Input(tensor=K.variable(constant_values))

话虽如此,正如@gionni 所指出的,您的用例(偏见)听起来像是您应该简单地使用默认值 use_bias=True

关于python - 如何在 Keras 中实现恒定神经元?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45387638/

10-12 22:14