티스토리 뷰


해당 글은 Stanford CS class  CS231n: Convolutional Neural Networks for Visual Recognition 강의를 기반으로 하고 있습니다.

(출처 :http://cs231n.stanford.edu/syllabus.html) Video 강의와 강의 note를 가지고 정리하고 있습니다.





Introductory lecture


1. Image Classification 

  • Motivation&Example

Image Classification problem: the task of assigning an input image one label from a fixed set of categories.

입력으로 들어오는 이미지가 있고, 정해진 카테고리도 있는 상태입니다. 입력으로 들어온 이미지의 pixel value를 바탕으로 해당 이미지가 어느 카테고리에 해당하는지 예측하는 것을 목표로 하는 문제가 바로 Image Classification problem이라고 할 수 있습니다. 이미지를 보고 어떤 카테고리에 해당하는지 분류하는 것이 사람에게는 참 쉬운 일이지만, 기계에 분류 능력을 학습시키는 것은 생각보다 어려운 일입니다.


예를 들어, 고양이 그림이 있다고 생각해볼까요.

고양이 그림 입력을 받으면 기계는 단순히 이를 3차원의 배열로 인식하게 됩니다. width * height * 3 array로 말이죠.

얘를 들어 가로 2, 세로 2, RGB 값을 가지는 이미지의 경우, 총 2 * 2 * 3 array가 기계에 인풋됩니다.




(사진출처: https://kr.mathworks.com/help/matlab/math/multidimensional-arrays.html?requestedDomain=www.mathworks.com)


위의 사진을 보면 row dimension, column dimension, page dimension 까지 3 dimension을 가지고 있군요. (RGB 3dimension data의 예는 아닙니다. RGB는 0부터 255까지의 값을 갖습니다.

3차원의 숫자 배열을 보고, 기계는 해당 이미지가 고양이인지, 개인지, 검은 봉지는 아닌지... 구분해야하는 것입니다.



  • Challenges 

'고양이 그림의 pixel은 A이다'라고 정해져있다면 기계도 쉽게 분류를 해낼 수 있을 것입니다. 그러나 그렇지 않기에 기계가 이미지를 보고 클래스 분류하는 일이 매우 어려운 것이겠죠?


어려운 이유를 정리하자면,   

      • Viewpoint variation: 같은 고양이 사진이라도 보는 각도에 따라 모양이 달라지고, 그에 따라 pixel value들도 달라집니다.

      • Scale variation: 같은 고양이더라도 아기와 함께 있는 사진에서의 고양이와 서장훈씨 옆에 있는 고양이의 크기는 확연히 달라보이죠!

      • Deformation: deformation은 같은 object들도 포즈와 포지션에 따라 다르게 보이는 것을 생각하면 됩니다. 고양이의 예로는 고양이 액체설에 따라 몸을 쭉 피고있는 고양이와 식빵을 굽고있는 고양이를 생각하면 됩니다. 사람들 눈에는 둘다 고양이지만, 기계는 숫자 값으로 이를 구분한다는 것을 생각합시다. 두가지 다른 포즈를 취한 고양이는 명백히 다른 pixel 값을 가지게 될 것이고, 기계는 '이 두개가 같은 카테고리에 들어갈 것인가?'를 공부해야만(training) 알 수 있습니다.

      • Occlusion: object의 전체가 아닌 고양이의 귀나 코, 시옷입같은 부분만이 이미지에 나타날 수도 있고

      • Illumination conditions: 빛에 따라, 조명에 따라 같은 장소, 같은 object도 다르게 보일 수도 있고

      • Background clutter: 배경과 object가 색이 유사하거나 패턴이 유사하여 pixel값이 비슷하다면, 경계를 구분하기 어려워집니다. 

      • Intra-class variation: 한 카테고리내에서 그 object의 모양이 다양할 수 있습니다. 예를 들어, 의자의 경우 학교 의자와 사무실 의자 등을 생각해보면 알 수 있습니다. 같은 의자 카테고리이지만 모양에 있어서 차이가 나타납니다.




"A good image classification model must be invariant to the cross product of all these variations, while simultaneously retaining sensitivity to the inter-class variations."


좋은 classification 모델은 앞의 variation 요소들에 상관없이 분류를 해내고, 같은 카테고리로 분류한 이미지들에 대해서도 sensitivity를 유지해야합니다. 


* Sensitivity(=Recall): True Positive rate


실제 True 클래스 중에서, 실제로 True 클래스라고 분류된 샘플의 수



 


 Actual class

 

 

 True

False 

 Predicted class

 True

 TP

FP 

 False

 FN

TN 








공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함