활성화 함수

Keras로 시작하는 딥 러닝

Miguel Esteban

Data Scientist & Founder

Keras로 시작하는 딥 러닝

Keras로 시작하는 딥 러닝

Keras로 시작하는 딥 러닝

Keras로 시작하는 딥 러닝

Keras로 시작하는 딥 러닝

활성화 함수의 영향

Keras로 시작하는 딥 러닝

Keras로 시작하는 딥 러닝

Keras로 시작하는 딥 러닝

어떤 활성화 함수를 쓸까?

  • 만능 공식은 없음
  • 속성이 서로 다름
  • 문제 유형에 따라 다름
  • 각 층의 목표에 따라 선택
  • ReLU가 좋은 시작점
  • 심층 모델에는 시그모이드 비권장
  • 실험으로 튜닝

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
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
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')
Keras로 시작하는 딥 러닝

Vamos praticar!

Keras로 시작하는 딥 러닝

Preparing Video For Download...