ImageNet Classification with Deep Convolutional Neural Networks 0. Abstract ImageNet LSVRC-2010에서 1.2m개의 고해상도 이미지에 대해 1000개의 클래스로 분류하기 위해 large, deep convolutional neural network를 학습 test data에서 이전 SOTA 모델보다 좋은 top-1과 top-5 error rates에서 37.5%와 17.0%를 기록 `AlexNet`에는 약 6,000만개의 파라미터와 65만 개의 neurons가 5개의 convolutional layers로 구성 이에 더해 max-pooling layers와 1000-way softmax로 구성된 3개의 fully-connected l..
성능 최적화 데이터를 사용한 성능 최적화 일반적으로 ML/DL 알고리즘은 데이터양이 많을수록 성능이 좋기 때문에 가능한 많은 데이터를 수집 많은 데이터를 수집할 수 없다면 직접 데이터를 만들어 사용 활성화 함수로 시그모이드(0~1의 값), 하이퍼볼릭 탄젠트(-1~1의 값) 등을 사용하여 데이터셋 범위를 조정 정규화, 규제화, 표준화 등도 성능 향상에 도움 알고리즘을 사용한 성능 최적화 ML/DL을 위한 다양한 알고리즘 중 유사한 용도의 알고리즘들을 선택하여 모델을 훈련시켜 보고 최적의 성능을 보이는 알고리즘을 선택해야 한다. 알고리즘 튜닝을 위한 성능 최적화 모델을 하나 선택하여 훈련시키려면 다양한 하이퍼파라미터를 변경하면서 훈련시키고 최적의 성능을 도출해야 한다. 진단 : 성능 향상이 어느 순간 멈췄을..
가중치 초기화(Weight Initialization) 신경망을 학습할 때 손실 함수에서 출발 위치를 결정하는 방법이 모델 `초기화(initialization)`이다. 특히 가중치는 모델의 파라미터에서 가장 큰 비중을 차지하기 때문에 가중치의 초기화 방법에 따라 학습 성능이 크게 달라질 수 있다. 상수 초기화 신경망의 가중치를 모두 0으로 초기화하여 뉴런의 가중치가 0이면 가중 합산 결과는 항상 0이 되고, 활성 함수는 가중 합산 결과인 0을 입력받아서 늘 같은 값을 출력한다. 예를 들어 활성 함수가 ReLU나 하이퍼볼릭 탄젠트면 출력은 0이 되고 시그모이드면 출력은 항상 0.5가 된다. 0이 아닌 다른 값의 경우에도 만약 가중치를 모두 같은 상수로 초기화하면 신경망에 `대칭성(symmetry)`이 생겨..
Paper ImageNet Classification with Deep Convolutional Neural Networks(NIPS 2012) 본 논문의 코드 구현은 깃허브에서 확인 가능합니다. 0. Abstract ImageNet LSVRC-2010 대회에서 120만 개의 고해상도 이미지를 1000개의 다른 이미지로 분류하기 위해 크고 깊은 convolutional neural network를 훈련시켰다. 테스트 데이터에서 이전의 SOTA 모델보다 나은 37.5%, 17.0%의 top-1 error rate와 top-5 error rate를 달성했다. 6천만 개의 파라미터들과 650,000개의 뉴런으로 구성된 neural network는 5개의 convolutional layers로 구성되며, 그 중..