CS231N
Image Classification
yuuuun
2022. 5. 26. 16:27
반응형
Image Classification: A core task in Computer Vision
- 컴퓨터가 이미지를 볼 때, 사람이 인식한 것과 다름(Semantic Gap)
- 조명에 따라 컴퓨터가 이미지를 인식하지 못할 수 있음
- deformation - 흉칙한 모습이라 하는데 일반적이 모습이 아니라 다른 모습일 때를 의미하는 듯
- occlusion: 객체의 일부만 보임
- background clutter: 객체와 백그라운드랑 차이가 안 보임
- intraclass variation: 다르게 생긴 여러 객체가 존재
Data-Driven Approach
- 객체의 특징(선의 방향 등)을 파악해서 일반화시키기 어려움 존재 -> 데이터 중심 접근 방식 활용!
- 이미지와 클래스 정보 수집
- 분류기 학습을 위한 머신러닝 사용
- 새로운 이미지에 대한 평가
분류기 종류
- Nearest Neighbor
- 학습: 모든 데이터와 클래스 정보 기억 O(1)
- 예측: 학습 데이터와 가장 유사한 클래스로 예측 O(N)
- 거리 계산 방법(Distance Metric)
- L1 distance = $d_1(I_1, I_2) = \sum_p |I_1^p - I_2^p|$
- 예측에 느리기 때문에 성능이 좋지 않음
- K-Nearest Neighbors
- K개의 가까운 점들에서 투표하기
- 거리 계산 방법(Distance Metric)
- L1 distance = $d_1(I_1, I_2) = \sum_p |I_1^p - I_2^p|$
- L2 distnace = $d_2(I_1, I_2) = \sqrt{sum_p (I_1^p - I_2^p)^2}$
Hyperparameters
- K-Nearest Neighbors
- 에서 어떤 k와, distance metric를 이용해야 가장 성능이 좋을지 판별
- 학습이 아닌 사람이 설정해주는 값
- 하이퍼파라미터 선택하는 방법
학습 데이터에서 가장 잘 동작하는 하이퍼파라미터 선택-> k=1이 항상 좋은 값을 가질 것임테스트 데이터에서 가장 잘 동작하는 하이퍼파라미터 선택-> 새로운 데이터에 대해서 성능이 낮을 가능성이 매우 높음- train, val, test로 데이터셋을 나눈 뒤 val에 가장 잘 동작하는 하이퍼파라미터 선택
- Cross-Validation
이미지에서의 k-NN
- distance를 활용하는 것은 성능이 낮게 나오기 때문에 사용하지 않음
Linear Classification
- 데이터들의 특징을 파악하고 W로 저장
예시
- 이미지들을 분리하기 위한 선형 분류기
선형 분류기를 사용하기 어려운 예시
반응형