이미지 분류를 위한 알고리즘 만들기 어렵다. 과거 attempts: find edges, corners..
⇒ 따라서, Data-driven approach : collect dataset, Use ML to train, Evaluate on new images.
CIFAR10 : dataset with 10 categories, 50k train images, 10k test images
Nearest Neighbor
Nearest Neighbor : (따로 train 필요 없음.) 새로운 데이터(흰색)을 어디로 분류할거냐? 가장 가까운 1개의 데이터의 분류를 따라감. K=3이면, 흰색과 가장 가까운 3개의 데이터를 보고 따라감.

그림 참조 : K-최근접 이웃(K-Nearest Neighbor) 쉽게 이해하기 - 아무튼 워라밸 (hleecaster.com)
N개의 데이터가 있을때
Train : O(1) //training할필요 없으므로
Predict : O(N)
Distance는
L1 Distance (Manhattan) : 좌표축에 영향.
L2 Distance (Euclidean)
KNN의 hyperparameter:
- Number of K
- Distance방식 : L1 vs. L2
⇒ 뭐가 좋은지는 없으며 문제에 dependent하다.
Setting Hyperparameter
Idea1: split data into train, validation, test
Idea2: cross-validation (but, 비용때문에 많이 사용 안함)

K-NN : 이미지에 사용 안함
- Very slow
- Distance metric on pixels are not informative. (눈을 가리거나, shift시키거나, 색상 바꿔도 distance값 동일하게 구성해서 만들 수 있는 걸 보면, 이 distance metric이 그리 좋지는 않다는 걸 이야기함)

3. Curse of dimensionality
Linear Classification (선형분류기)
: 추후에 이게 NN의 기본 개념으로 들어가게 됨
- Parametric Approach
Input(Image : 32x32x3:3092) ⇒ f(x,W) ⇒ 10 numbers of giving class score
파라미터(W)가 있기에 이전의 KNN과는 다르게 training이 필요하며 이때 많은 컴퓨팅이 필요함. 그러나 나중에 test는 computing이 많이 필요하지 않아 모바일등에서 가능함.
f(x,W) = Wx + b //10개의 class score가 나옴.
(10x1) = (10x3072) (3027x1) + (10x1)


문제 : 범주당 1개의 단일 template이 사용된다. 따라서 car라도 이미지의 각도나 색상이나 다르더라도 평균내어 하나의 템플릿으로 만든다.

한계점 : 아래의 경우들에 대해서는 선 하나로 분류가 안됨.

'AI' 카테고리의 다른 글
| cs231n Deep Learning for Computer Vision 3.Loss Functions and Optimization (0) | 2023.06.24 |
|---|---|
| cs231n Deep Learning for Computer Vision 1.Introduction (0) | 2023.06.18 |
| 논문 Deep Learning for Time Series Anomaly Detection: A Survey (0) | 2023.06.06 |
| AI 세부 분야별 최신 trend 및 논문 찾는 방법 (0) | 2023.06.06 |
| Kernel Density Estimation을 이용한 Anomaly Detection (0) | 2023.06.04 |