딥러닝 성능 향상

2021. 8. 16. 16:33AI/Deep learning

    목차
반응형

1. gradient vanishing 

역전파 시 층이 늘면서 error 값이 희석됨

General Activation function : sigmoid (0~1), tansig (-1~1)

output이 [0, 1]로 국한됨 (비선형적이고 작아짐)

sigmoid는 거의 0~1 사이 값으로 변환

sigmoid는 미분하면 값이 거의 0에 가까워서(saturation) 에러 역전파가 잘 되지 않음

그래서 층이 길어질 수록 앞단의 weight 적용 값이 작아짐

 

ReLU (Rectified Linear Unit)

부분적인 activation 가능

큰 값은 그대로 보냄

미분이 용이함: 1

 

AlexNet에 적용

이것을 적용하니 학습 성능이 비약적 향상

 

Leaky ReLU

음수 영역에서 약간의 선형 함수 (slope가 낮음)

 

 

2. Overfitting

Layer, node가 많아질 수록 overfitting이 됨

 

1) Regularization

cost function에 weight의 총합도 추가

weight 값이 크다 -> 모든 node가 actived

모든 node를 만족해야 출력을 주겠다 -> 과적합 여지가 많다

 

2) Dropout

ex. 귀를 check하는 node

tail 보는 node, furry 보는 노드

claws, mischievous 보는 node등등 여러 node 존재 시, 

 

random하게 노드들의 연결을 제거 (weight을 0으로)

 

학습별로 

정 노드만 활성화 해서 학습

다음 학습때 또 다른 노드만 활성화 해서 학습

 

random하게 특정 node의 영향성을 없애면서 학습

-> 이렇게 하면 overfitting이 낮아지더라 라는 것

 

MNist에 대해 5%이상의 성능 향상

 

NIST에 대해 regularization와 dropout 적용 시 99.8% 인식률

반응형