Функції активації

Вступ до Deep Learning з Keras

Miguel Esteban

Data Scientist & Founder

Вступ до Deep Learning з Keras

Вступ до Deep Learning з Keras

Вступ до Deep Learning з Keras

Вступ до Deep Learning з Keras

Вступ до Deep Learning з Keras

Вплив функцій активації

Вступ до Deep Learning з Keras

Вступ до Deep Learning з Keras

Вступ до Deep Learning з Keras

Яку функцію активації обрати?

  • Немає чарівної формули
  • Різні властивості
  • Залежить від задачі
  • Мета шару має значення
  • ReLU — гарний перший вибір
  • Sigmoid не радять для глибоких моделей
  • Налаштовуйте експериментами

Вступ до Deep Learning з Keras

Порівняння функцій активації

# Set a random seed
np.random.seed(1)

# Return a new model with the given activation def get_model(act_function): model = Sequential() model.add(Dense(4, input_shape=(2,), activation=act_function)) model.add(Dense(1, activation='sigmoid')) return model
Вступ до Deep Learning з Keras

Порівняння функцій активації

# Activation functions to try out
activations = ['relu', 'sigmoid', 'tanh']

# Dictionary to store results
activation_results = {}

for funct in activations: model = get_model(act_function=funct) history = model.fit(X_train, y_train, validation_data=(X_test, y_test), epochs=100, verbose=0) activation_results[funct] = history
Вступ до Deep Learning з Keras

Порівняння функцій активації

import pandas as pd

# Extract val_loss history of each activation function
val_loss_per_funct = {k:v.history['val_loss'] for k,v in activation_results.items()}

# Turn the dictionary into a pandas dataframe val_loss_curves = pd.DataFrame(val_loss_per_funct)
# Plot the curves val_loss_curves.plot(title='Loss per Activation function')
Вступ до Deep Learning з Keras

Давайте потренуємось!

Вступ до Deep Learning з Keras

Preparing Video For Download...