Как сделать нормализацию диапазона на определенном слое Keras

Ниже представлена ​​моя модель, которую я использую для мультиклассовой классификации.

model = Sequential()
model.add(Dense(6, input_dim = input_dim , activation = 'relu'))
model.add(Dense(3, activation = 'softmax'))
adam = optimizers.Adam(learning_rate=0.001)
model.compile(loss = 'categorical_crossentropy' , optimizer = 'adam' , metrics = ['accuracy'] )

Я хотел нормализовать диапазон вывода, создаваемого первым слоем, то есть слоем с активацией relu, между 0 и 1. Я проверил слои нормализации, доступные в Keras, но, насколько я читал, они выдают результат со средним значением 0 и stddev 1.

Я не уверен, какова процедура выполнения пользовательской нормализации на слое в Keras.


person Gunjan Arora    schedule 14.06.2020    source источник
comment
вы можете использовать сигмовидную активацию, которая выталкивает ваш вывод в [0,1] вместо relu   -  person Marco Cerliani    schedule 14.06.2020


Ответы (1)


Я бы рекомендовал использовать сигмовидную функцию, так как это будет отображать вывод на [0,1], тогда как relu отображает между (0, inifinity]

person traderbot    schedule 15.06.2020