기존의 이미지 분류 프로세스
Image → Classify → Result (물체의 종류)
한계점
- 카메라 각도의 변환
- 조명 문제
- 배경과 물체가 제대로 구분되지 않는 경우
- 폐색: 물체가 다른 사물에 제대로 가려져서 보이지 않는 경우
CNN 이전의 이미지 분류 방법
Image → Find Edge → Find Corner → Result
Data driven approach
- 데이터 수집
- 수집한 데이터를 위한 분류기 개발
- 테스트 셋에서의 검증
Distance metric to compare images
- L1 Distance
- 좌표계에 따라서 거리 값이 달라질 수 있음
- 각각의 벡터가 특징을 가지고 있을 때 사용
- L2 Distance
- 특정 벡터가 일반적이고 요소들간의 실질적인 의미를 살 모를 때 사용
Setting Hyperparameter
- Idea 1: 트레인 데이터에서 성능이 좋은 값 :cross_mark:
- Idea 2: 학습과 테스트 셋으로 데이터를 나누어 테스트에서 잘 동작하는 값 :cross_mark:
- Idea 3: train, test, validation 으로 나누어 학습 진행 (o)
- Idea 4: cross validation (전체 학습데이터셋 중 train 셋과 validation 셋을 바꿔가며 검증) [데이터셋이 적을 때 사용] (o)
KNN 알고리즘
KNN 알고리즘은 머신러닝에서 지도 학습 중하나로 거리기반 분류분석 모델임, 데이터로부터 거리가 가까운 K 개의 다른 데이터의 레이블을 참조하여 분류하는 알고리즘으로 거리를 측정할 때 L2 Distance 를 사용함
이미지 처리, 영상에서 글자 인식 얼굴인식, 영화, 음악, 상품 추천 알고리즘으로도 사용
장점
- 단순하고 효율적
- 기저 데이터 분포에 대한 가정하지 않음
- 훈련 단계가 빠름
- 수치 기반 데이터 분류 작업에서 성능이 좋음
단점
- 모델을 생성하지 않아 특징과 클래스간 관계를 이해하기 어려움
- 적절한 k 의 선택이 필요함
- 데이터가 많아지면 분류 단계가 느림
KNN 알고리즘을 이미지에서 사용하지 않는 이유
- 연산이 매우 느리기 때문
- 단순히 픽셀값 만으로는 이미지 정보를 충분히 나타내지 못하기 때문에
Linear Classification
선을 이용해 집단을 두개 이상으로 구분함
Image → f(x,W) → Label
한계점
홀짝과 같은 반정성 문제는 Linear Classification 으로 풀기힘든 문제임
'인공지능 > cs231n' 카테고리의 다른 글
[cs231n] - chapter4 (0) | 2024.01.21 |
---|