이 글은 제가 공부한 것을 정리한 글입니다. 잘못된 내용이 있다면 댓글로 지적 부탁드립니다. 감사합니다. Coarse-grained classification 과 Fine-grained classification 의 차이 Coarse-grained 의 사전적 정의는 "결이 거친", "조잡한" 입니다. 곡식을 낱알로 분리하는 작업을 "grain" 이라고 할 수 있는데, 이를 거칠고 큼직큼직하게 할지, 곱고 세밀하게 할지에 따라서 Coarse 와 Fine 으로 나누어 표현한다고 이해할 수 있습니다. Coarse-grained classification Coarse-grained classification 은 Cifar10, Cifar100, MNIST 등의 데이터셋을 사용해 classification 하는 ..
이 글은 제가 공부한것을 정리한 글입니다. 잘못된 내용이 있다면 댓글로 지적 부탁드립니다. 감사합니다. Classification 과 Authentication 의 차이에 대해 알고 싶은데 검색을 해봐도 도통 마땅한 글이 없어서 정리해봅니다. Classification Classification 은 이전에 작성해둔 두 글로 설명을 대신합니다. Classification 과 Regression 딥러닝 객체 검출 용어 정리 Deep learning Object detection terminology Authentication Face Recognition 을 통해 Authentication 을 설명하겠습니다. Classification 과 Authentication 은 각각 Closed-set face re..
Improved Knowledge Distillation via Teacher Assistant 은 AAAI 2020에 제출된 논문입니다. 저자 중에는 딥마인드 소속도 있습니다. key Idea 이 논문의 핵심 아이디어를 잘 설명하고 있는 그림입니다. 저자는 기존의 Knowledge Distillation 의 Teacher, Student(이하 T, S) 관계 사이에 중간 크기의 모델인 Teacher Assistant(이하 TA) 모델을 사용하여 여러번 Distillation 을 반복하면 S 의 성능을 더 높일 수 있음을 보여주고 있습니다. Model Structure CNN 과 ResNet 을 사용하여 실험을 하는대, ResNet 은 ResNet 논문에서 제시한 형태 그대로를 사용하고, CNN 은 아래..
ICCV 2019 에 발표된 논문 Similarity-Preserving Knowledge Distillation 을 리뷰합니다. 이 글의 내용을 이해하기 위해서는 Knowledge distillation 이 무엇인지 이해가 필요합니다. 아래 링크를 참조해주세요.Knowledge Distillation 이란? Similarity-Preserving Knowledge Distillation 논문의 Abstract 에서 KD 의 목적, 이 논문의 Contribution, Key Idea, 효과 혹은 결과를 파악할 수 있습니다. 앞에서 KD 의 목적은 이미 설명했습니다. 이 논문의 Contribution 은 Key Idea 에 대한 설명 이후에 자세하게 설명하는 것이 더 이해를 쉽게 할 수 있습니다. Key ..
제가 공부한 내용을 정리하는 글입니다. 잘못된 내용이 있다면 지적 부탁드립니다. 감사합니다. 일반적인 pooling 은 한 채널 안에서만 이루어지지만, Cross-Channel Pooling 은 이름 그대로 pooling 을 채널을 넘어 하겠다는 것입니다. 위 그림처럼 3개의 채널에 첫번째 값이 각각 1,7,5 일 경우 Cross Channel Pooling 을 Max 조건으로 하게 되면 오른쪽 같이 가장 큰 값 한개만 취하게 되는 것입니다. Cross Channel Pooling 을 하면 feature map 의 크기는 변하지 않고, 채널 수만 줄이는 dimension reduction 의 효과를 볼 수 있습니다. 이 외에도 Dimension reduction 을 위해서 사용할 수 있는 방법은 Poin..
제가 공부한 내용을 정리하는 글입니다. 제가 보려고 쓰는 글이기 때문에 아래는 작성의 편의상 반말로 작성했습니다. RMSProp 이전 AdaGrad 설명에서 언급했듯이 AdaGrad 는 최소값에 도달하기 전에 학습률을 0에 수렴하게 만들 수도 있다. AdaGrad 가 간단한 convex function 에선 잘 동작하지만, 복잡한 다차원 곡면 함수를 (상대적으로)잘 탐색하도록 설계되지 않기도 했고. 기울기의 단순한 누적만으로는 충분하지 않은 셈이다. RMSProp 은 기울기를 단순 누적하지 않고 지수 가중 이동 평균 Exponentially weighted moving average 를 사용하여 최신 기울기들이 더 크게 반영되도록 하였다. 이전 AdaGrad 의 h 에 새로운 hyper parameter..
제가 공부한 내용을 정리하는 글입니다. 제가 나중에 다시 보기 위해 작성하는 것이므로 본문은 편의상 반말로 작성했습니다. 잘못된 내용이 있다면 지적 부탁드립니다. 감사합니다. Momentum Momentum 은 Gradient descent(이하 GD) 기반의 optimization algorithm 이다. 수식으로 표현하면 아래와 같다. L : loss function value W : weights η : learning rate α : 가속도 같은 역할을 하는 hyper parameter, 0.9 등 1 이하의 값을 취함. 자세한 것은 아래에 설명. v 는 일종의 가속도(혹은 속도) 같은 개념으로 생각하는 것이 이해에 더 도움이 될 것 같다. v 의 영향으로 인해 가중치가 감소하던 (혹은 증가하던)..
제가 공부한 내용을 정리하는 글입니다. 작성의 편의를 위해 아래는 반말로 작성하였습니다. 잘못된 내용이 있다면 지적 부탁드립니다. 감사합니다. Batch Normalization 배치 정규화의 목적 Batch normalization 을 설명하기 전에 Nomalization 이 무엇인지 먼저 이해해야 한다. Normalization 에 대한 설명은 아래 링크로 대체한다. Normalization 설명 글 링크 위 글에선 입력 데이터를 왜 정규화해야 하는지 설명했다. 딥러닝 모델의 구조를 단순화하여 설명하면 흔히들 입력층 → 은닉층 → 출력층으로 묘사한다. 입력층의 입력 데이터는 쉽게 normalization 할 수 있지만, 입력층을 지나서 만나게 되는 layer 들의 입력은 normalization 하기..
이 글은 제가 공부한 내용을 하나씩 정리하는 글입니다. 주로 제 기준에서 기초적인, 제가 까먹지 않을 만한 부분은 자세하게 쓰지 않습니다. 이러한 부분은 틈틈이 내용을 추가할 예정입니다. 예를들어 이 글의 현재 버전에서는 최소제곱법의 계산 방법등은 기술하지 않았습니다. 내용 중 잘못된 부분이 있다면 지적해주시길 부탁드립니다. 감사합니다. 기계학습 문제는 Classification(분류) 와 Regression(회귀) 로 나뉩니다. Classification(분류) Classification 은 이전 글인 딥러닝 용어 정리에 나름 잘 정리되어 있다고 생각합니다. Image classification 을 예로 들어 간단히 한줄로 요약하면 Image 안에 존재하는 객체 Object 의 종류를 구분하는 것입니다..
제가 공부한 내용을 정리한 글입니다. 제가 나중에 다시 볼려고 작성한 글이다보니 편의상 반말로 작성했습니다. 잘못된 내용이 있다면 지적 부탁드립니다. 감사합니다. Normalization Data Normalization 은 데이터의 범위를 사용자가 원하는 범위로 제한하는 것이다. 이미지 데이터의 경우 픽셀 정보를 0~255 사이의 값으로 가지는데, 이를 255로 나누어주면 0~1.0 사이의 값을 가지게 될 것이다. 위의 예를 수식으로 간단하게 쓴다면, (정규화하고자 하는 값 - 데이터 값들 중 최소값) / (데이터 값들 중 최대값 - 데이터 값들 중 최소값) 이다. 다른 방법으로는 (정규화하고자 하는 값 - 데이터의 평균) / 데이터의 표준편차 가 있다. 두번째 경우는 Standardization 이라..
제가 공부한 내용을 정리한 글입니다. 제가 나중에 다시 볼려고 작성한 글이다보니 편의상 반말로 작성했습니다. 잘못된 내용이 있다면 지적 부탁드립니다. 감사합니다. Validation Cross Validation 을 이해하려면 먼저 Validation 을 이해해야 합니다. Model 을 학습시킨 뒤 평가할 때 Test 와 Validation 이라는 2가지의 Phase 가 있습니다. Test 는 Unseen data 가 입력되었을 때, 학습결과와 유사한 결과가 나오는지 확인하는 과정입니다. Generalization(일반화) 성능을 평가한다고 할 수 있죠. Model 이 Overfitting(과적합) 되었는지 확인한다고 할 수 있습니다. Validation 은 Model 의 Hyper parameter(사..
제가 공부한 내용을 정리한 글입니다. 제가 나중에 다시 볼려고 작성한 글이다보니 편의상 반말로 작성했습니다. 잘못된 내용이 있다면 지적 부탁드립니다. 감사합니다. 원본 이미지 위에 Bounding box 를 추가하여 아래 설명에 대한 이해를 돕고자 한다[1]. Recall Recall 은 인식/탐지 기술의 분야에서 학술적으로 검출율을 의미한다. 맨 위의 이미지로 예를 들자면, 이미지 안에는 총 6마리의 동물이 존재하지만, 객체(object) 로서 검출(detected) 된 것은 3마리 뿐이다. 직관적으로 recall 은 검출율(detection rate) 라고 이해할 수도 있다. 즉 recall 은 객체들을 얼마나 빠뜨리지 않고 잘 찾아내는가에 대한 평가 지표이다. recall = tp / (tp + f..
공부를 하다 보면 용어의 정의에 대해서 정확히 알아야 할 필요가, 그리고 정리해두어야 할 필요를 느끼게 됩니다. 잘 정리해서 저장하고 저와 같은 필요를 느낄 분들의 불편함도 줄이고자 블로그에 정리합니다. 아래 사용되는 이미지들은 포스트 최하단에 출처를 표시하였고, 용어들은 필자가 알고 있던 내용들을 바탕으로 작성하였습니다. 혹시 오류가 있다면 리플로 알려주시기 바랍니다.모든 용어는 처음 사용시 한글과 영어를 혼용하여 읽는 이를 돕고, 이후 재사용시 한쪽 언어만 사용하였습니다. 다만 한글로 번역을 모르는 경우는 영어로만 표기하였습니다. 이하는 작성의 편의상 반말로 썼습니다. Classification, Localization, Object Detection, Semantic segmentation[1] C..