본문 바로가기

전체 글

Overfitting (과적합)을 막는 방법- Regularization(정규화) Overfitting ( 과적합) 을 방지하기 위해서 여러가지 기법들이 사용되고 있습니다. 이것을 통상적으로 정규화한다 하고 Regularization 이라고 합니다. 우선 Overfitting( 과적합) 에 대해 간단히 말씀드리겠습니다. 데이터가 주어지고 학습모델을 그 데이터에 너무 딱 맞게 학습한것을 Overfitting (과적합) 이라 합니다. 모델이 Overfitting 이 되면 새로운 데이터가 들어오면 예측결과가 달라질수 있습니다. 그래서 모델을 학습할때 어느정도 일반화 된 모델을 설계해야합니다. 그러면 Overfittimg 을 피하기 위하여 사용되는 정규화기법에는 무엇이 있을까요? 정말 많은 정규화 방법이 있는데 이중 Dropout , Weight Decay 에 대해서 살펴 보도록 하겠습니다... 더보기
신경망을 깊게 쌓아보자 !! VGG Net (VERY DEEP CONVOLUTIONALNETWORKSFORLARGE-SCALEIMAGERECOGNITION 논문 리뷰) VGGNet의 논문인 VERY DEEP CONVOLUTIONALNETWORKSFORLARGE-SCALEIMAGERECOGNITION 에서는 3 X 3 Convolution filter만을 사용해서 CNN의 모델 layer를 깊게 쌓아 , large- scale image에서의 정확도를 높였다라고 요약할수 있습니다. 1. ConvNet configuration 1) Architecture Input image 는 224 x 224 를 사용하였습니다. Input image의 전처리로는 각각의 픽셀에서 mean RGB 값을 뺴는것만 하였습니다. Convolution Filter : 필터중 가장 작은 3 x 3 Conv.Filter 만 사용하였습니다. (Stride 는 1 사용) Pooling Layer : 5.. 더보기
CNN의 원조 계승자 : AlexNet (논문 리뷰포함 : ImageNet Classification with Deep Convolutional Neural Networks) CNN 의 기본 Architecure인 Conv-Pool-Conv-Pool-FC-FC를 따르면서 사이사이에 LRN(Local Response Nomalization)이라는 정규화를 넣은 AlexNet에 대한 논문리뷰를 진행하겠습니다. 논문에 사용된 기법등 하나하나가 딥러닝에서 많이 사용되는것이기 때문에 각각을 따로 공부하는것도 매우 도움이 됩니다. ( Drop out , Pooling , Normalization ,Weight decay 등등) Alexnet의 특징 1. Activation function 으로 ReLU사용. 이 논문이 나오던 당시에는 Activation function으로 tanh 나 sigmoid 함수를 많이 사용하였는데 , ReLU를 사용함으로써 좀더 빠르고 error rate가 낮.. 더보기
ResNet 이란 무엇인가?(논문리뷰 포함 : Deep Residual Learning for Image Recognition) 안녕하세요 이번 포스팅은 Deep Residual Learning for Image Recognition에 대한 논문리뷰가 포함되어 있습니다. ResNet 의 큰특징은 Network을 깊게 쌓기 위해서 Residual learning을 활용하였습니다. 보통 신경망을 깊게 쌓을수록 특징을 잘 파악하여 , 성능이 좋아진다라고 직관적으로 생각할수 있습니다. 일반적으로 CNN 에서 레이어가 깊어질수록 채널의수가 많아지고 너비와 높이는 줄어듭니다. VGG 네트워크는 ResNet 이 나오기전에 작은필터를 이용해 레이어를 깊게 사용하여 우수한 성능을 나타내었습니다. 하지만 아래의 실험결과를 보면 깊게 쌓은 네트워크에서 어느시점이 지나면 Training / Test 에러가 많이 나타남을 보여주게 됩니다. 논문에서는 이.. 더보기
CNN 이란 무엇인가? CNN은 Convolution neural network 의 약자이며 이미지 분석에 자주 사용됩니다. 간단히 말하면 Convolution Filter를 통해 반복되는 패턴을 학습하는 것 입니다. CNN의 구조 CNN은 Feature 을 추출하는 단계와 그 이후 FC layer에 연결하여 Softmax를 통해 분류를 진행하는 2단계로 나누게 됩니다. Feature Extraction : 합성곱을 통한 Feature map 추출 Classification : FC ( Fully connet ) Layer를 통해 이미지 분류 우선 Feature 추출에 관한 합성곱에 대해 이야기를 해보고 , FC layer와 연결하기 위한 Pooling 에 대해 이야기 해보겠습니다. 그전에 CNN에 사용되는 이미지에 대해서 좀.. 더보기
딥러닝이란 무엇인가? 안녕하세요 , 초등학생도 이해 할수 있도록 딥러닝에 대해 정리해 보았습니다. 딥러닝은 기계학습(Machine Learning)의 한분야 입니다. 기계학습은 데이터와 해답을 입력하면 이것을 바탕으로 규칙을 찾아냅니다. 찾아낸 규칙을 통해 새로운 데이터를 넣어 새로운 값을 예측하게 됩니다. 딥러닝은 이러한 규칙을 여러개의 층으로 쌓아 만든 것입니다. 딥러닝의 구조 Input - Hidden Layer - Output 의 기본구조를 가지며 층을 여러개로 할수 록 Hidden layer 의 층이 많아진다. 기본적으로 각각의 층은 선형 구조를 가지지고 가중치 * 입력 + bias 의 형태인 y = w*x + b 의 꼴을 취하게 된다. 아래는 y1 = x1*W1 + x2*W2+x3*W3 +b 의 형태로 사용됩니다... 더보기