我现在正在学习使用 Keras 进行深度学习,并且要在 Keras 上实现深度学习模型,您需要设置初始化程序以设置其初始权重。
from keras.models import Sequential
from keras.layers import Dense
model = Sequential()
model.add(Dense(12, input_dim=8, kernel_initializer="random_uniform"))
可以采用kernel_initializer其他东西,例如random_normal,它使用高斯分布,不是均匀分布,并且zero,它实际上将所有权重设置为 0。
但是,我不明白您为什么喜欢在初始化程序中设置不同的权重。具体来说,与将所有初始权重设置为 0 相比,它有什么优势,这对于像我这样的新手来说听起来更自然?
此外,如果需要,是否应该始终将初始权重设置为一个很小的值(例如0.05)?