Hàm kích hoạt

Nhập môn Deep Learning với Keras

Miguel Esteban

Data Scientist & Founder

Nhập môn Deep Learning với Keras

Nhập môn Deep Learning với Keras

Nhập môn Deep Learning với Keras

Nhập môn Deep Learning với Keras

Nhập môn Deep Learning với Keras

Tác động của hàm kích hoạt

Nhập môn Deep Learning với Keras

Nhập môn Deep Learning với Keras

Nhập môn Deep Learning với Keras

Chọn hàm kích hoạt nào?

  • Không có công thức thần kỳ
  • Thuộc tính khác nhau
  • Phụ thuộc vào bài toán
  • Mục tiêu của từng tầng
  • ReLU là lựa chọn đầu tiên tốt
  • Không khuyến nghị sigmoid cho mô hình sâu
  • Điều chỉnh bằng thực nghiệm

Nhập môn Deep Learning với Keras

So sánh các hàm kích hoạt

# 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
Nhập môn Deep Learning với Keras

So sánh các hàm kích hoạt

# 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
Nhập môn Deep Learning với Keras

So sánh các hàm kích hoạt

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')
Nhập môn Deep Learning với Keras

Ayo berlatih!

Nhập môn Deep Learning với Keras

Preparing Video For Download...