Batch Normalization의 활용성 (공부한 자료 정리)

인공신경망의 문제점

보통 인공 신경망 이라고하면 대게 입력층-은닉층-출력층으로 나눠져있는 fully connected layer를 많이 떠올린다. 이렇게 구조화된 신경망은 연산을 할때 내적행렬곱을 통해 weighted sum을 계산후 비선형 함수를 적용시켜 아웃풋값들을 출력 하게된다. 이 계산과정을 각 레이어마다 거친다하여 순전파 (feedforward)라고 하는데, 이 과정시 hyperparameter(한국말로는 초모수)들이 출력층에서 지대한 영향을 미치게된다. 순전파 인공신경망에서 hyperparameter란 은닉층의 갯수와 각 은닉층당 뉴런들의 갯수를 뜻한다. 이런 hypermarater들을 계속해서 튜닝함과 동시에 오차 역전파를 통해서 인공신경망은 알맞는값을 내어놓는다. 인공신경망에서 하이퍼파라미터들은 여러 복잡한 계산을 가능케 하는데 이 초모수들이 너무 많으면 흔히말하는 과적합(overfitting)의 문제를 일으킬수있다.

Read More

합성곱 신경망을 이용한 CIFAR-100데이터셋 이미지 분류

Intro

Google에서 제공하는 Colab환경에서 합성곱 신경망 ML모델을 구현해봤다.
Colab이 무료로 제공하는 12시간의 Tesla-K80 GPU의 성능을 시험해 보려는 목적도 있지만 그냥한번 CNN을 제대로 학습시키기 위한 내부 architecture의 효율적인 배치를 공부 혹은 실험을 해보려는 목적이 더 크다. Dataset은 CIFAR에서 교육용으로 무료로 제공하는 이미지 데이터로 학습시켜 보았다. 프레임워크는 tensorflow 1.6.0부터 제공하는 tf.keras를 이용했다.

Read More