Где я должен определить производную от пользовательской функции активации в Keras

Я новичок в Python, глубоком обучении и нейронных сетях. Я сделал кастомную функцию активации. Что я хочу знать, когда делаю настраиваемую функцию активации, которая является корнем из сигмоида, где я должен определить производную для моей настраиваемой функции активации?

Я пробовал читать об автоматическом дифференцировании. но я не уверен, что keras автоматически является производным от моей пользовательской сигмовидной кишки?

моя пользовательская функция активации в keras / Activation.py

def tempsigmoid(x, temp=1.0):
    return K.sigmoid(x/temp)

моя модель

def baseline_model():
    # create model
    model = Sequential()
    model.add(Conv2D(101, (5, 5), input_shape=(1, 28, 28), activation='relu'))
    model.add(MaxPooling2D(pool_size=(2, 2)))
    model.add(Dropout(0.2))
    model.add(Flatten())
    model.add(Dense(128, activation='relu'))
    model.add(Dense(num_classes, activation='tempsigmoid'))
    # Compile model
    model.compile(loss='mse', optimizer='adam', metrics=['accuracy'])
    return model

person astri    schedule 24.04.2019    source источник


Ответы (2)


Да, Keras использует автоматическую дифференциацию, поскольку поддерживает только серверные части с этой функцией (например, TensorFlow).

Таким образом, вам вообще не нужно определять градиент или производную, они будут вычислены автоматически.

person Dr. Snoopy    schedule 24.04.2019
comment
Благодарю за ваш ответ. Вау, знаете ли вы, что ресурс хорошо читается для автоматической дифференциации? Я знал, что в других фреймворках DL, таких как chainer, этого нет. И я хочу знать, как насчет pytorch. - person astri; 25.04.2019
comment
Есть ли ссылка на какую-либо документацию, подтверждающую, что Keras автоматически использует производную? - person Albert; 01.10.2019

Вы можете определить настраиваемую метрику для запуска в том же сценарии.

Расценки давать не нужно '', вы можете просто написать:

model.add(Dense(num_classes, activation=tempsigmoid))
person Timbus Calin    schedule 24.04.2019
comment
спасибо за ваш ответ. В чем разница пользовательской функции активации в том же скрипте и в главном файле Activation.py. - person astri; 25.04.2019
comment
Я просто хотел убедиться, что у вас получилось реализовать функцию активации, и только потом переместить ее в другой скрипт - person Timbus Calin; 25.04.2019