학습후기

딥러닝 정리

아침은간장계란밥 2022. 9. 27.

* 딥러닝은 스케일링을 항상 요구한다.

 

- layer = Dense(1 , input_shape = (n_features,))

   input_shape는 분석단위의 구조이다.

1차원: (feature수, )

2차원:(row, columns)

 

*아래와같은 그림은

(11,) 으로 표현되는 1차원이다.

대충그렸다.

 

- model.compile.(optimizer=Adam(lr=0.01), loss='mse')

compile은 어떤지표(mse)로 오차를 평가하고, 어떤 방법으로 파라미터를 최적화 할 것인지를 선언하는 부분이다.

여기선 파라미터를 최적화하는 방법을 Adam으로하고

회귀모델은 보통 'mse(mean squared error)'를 쓴다.

2진 분류는: binary_crossentropy

다중 분류: categorical_crossentropy, sparse_categorical_crossentropy

lr(Learning rate)은 오차를 줄이기위해 파라미터를 조정할 양조절 비율이다.

 

- history = model.fit(x_train, y_train,

epochs = 100,

batch_size = 32,

validation_split =0.2).history

 

batch_size 는 전체 데이터를 나눠서 학습을 한다.(메모리&시간문제 등)

그냥 default값으로 냅두는걸 권장 혹은 2의 제곱승으로 한다.

epochs는 학습횟수,

validation_split 은 학습데이터(x_train, y_train)에서 80%는 모델을 학습시키고 ,20%는 validation(오차계산)을 수행한다.

 

위의 실행결과

mse를 줄이는방향으로 학습하면서 loss(train의 오차)와 val_loss(validation의 오차)를 보여준다.

 

 

MAE : 모델이 Y를 예측했는데, 평균 ??? 오차가 난다.

MAPE: 모델이 Y를 예측했는데, 평균 오차율이 ??? 이다.

 

 

Activation Function

-Sigmoid : -무한대에 가까울수록 0, +무한대에 가까울수록 1

-Relu : 값이 0보다 작으면 안넘기고, 크면 그대로 넘긴다.

 

히든레이어는 Activation Function이 필요하고, 일반적으로 relu를 많이쓴다.

 

Hidden layer에서는 의미있는 새로운특징(New features)이 만들어진다

댓글