"Keras"의 두 판 사이의 차이
둘러보기로 가기
검색하러 가기
잔글 (→Layer) |
잔글 (→Optimizer) |
||
57번째 줄: | 57번째 줄: | ||
model.compile(loss='mse', optimizer=RMSprop(lr=0.001), metrics=['accuracy']) | model.compile(loss='mse', optimizer=RMSprop(lr=0.001), metrics=['accuracy']) | ||
− | * adam | + | * adam : 값을 예측할 경우 사용 |
from keras.optimizers import Adam | from keras.optimizers import Adam | ||
2018년 8월 10일 (금) 11:36 판
Keras를 정리 한다.
목차
Model
Layer
from keras.models import Sequential model = Sequential()
Dense
from keras.layers import Dense model.add(Dense(units=128, activation='relu', input_shape=(x_train.shape[1], )))
Activation
은닉층에서 사용하는 Activation
- relu
- linear. 계산된 값을 그대로 출력으로 보냄
출력층에서 사용하는 Activation
- sigmoid. 이진 분류
- softmax. 다중 분류
Loss
- categorical_crossentropy : 분류시 사용
- mse : 값 예측시 사용
model.compile(loss='categorical_crossentropy', optimizer=sgd(lr=0.01, momentum=0.9), metrics=['accuracy']) model.compile(loss='mse', optimizer=sgd(lr=0.01, momentum=0.9), metrics=['accuracy'])
Optimizer
- sgd (확률적 경사 하강법)
- 학습률 (LR, Learning Rate) : 0.1, 0.01
- momentum : 학습률 값을 고정하고 모멘텀 항으로 매개변수의 변경값을 조정
- nesterov : True. 순수한 momentum을 약간 변형함
from keras.optimizers import SGD model.compile(loss='mse', optimizer=SGD(lr=0.01, momentum=0.9, nesterov=True), metrics=['accuracy'])
- adagrad : 학습률을 조정하며 학습
from keras.optimizers import Adagrad model.compile(loss='mse', optimizer=Adagrad(lr=0.01, momentum=0.9, nesterov=True), metrics=['accuracy'])
- adadelta : adagrad을 보완
from keras.optimizers import Adadelta model.compile(loss='mse', optimizer=Adadelta(rho=0.95), metrics=['accuracy'])
- rmsprop : adagrad을 보완
from keras.optimizers import RMSprop model.compile(loss='mse', optimizer=RMSprop(lr=0.001), metrics=['accuracy'])
- adam : 값을 예측할 경우 사용
from keras.optimizers import Adam model.compile(loss='mse', optimizer=Adam(lr=0.001, beta_1=0.9, beta_2=0.999), metrics=['accuracy'])
- adamax
- nadam
참고 문헌
Metrics
- accuracy : 정확도