cs231n - Lecture 1 | Introduction to Convolutional Neural Networks for Visual Recognition

Jeonghwan Kim·2023년 1월 26일
0

CV

목록 보기
1/5
post-thumbnail

cs231n 강의 중 'Lecture 1 | Introduction to Convolutional Neural Networks for Visual Recognition'을 정리한 내용이다.

Computer Vision - Visual(시각적) data에 대한 공부

  • 센서(카메라 등)의 발달과 증가로 visual data가 폭발적으로 증가했다.
  • 인터넷 상의 대부분을 차지하는 visual data를 활용하고 이해하는 것은 중요하고 활용가치가 높다.
  • 매우 빠른 속도로 생성되는 visual data를 사람이 파악하는 것은 불가능하므로 visual data를 이해하는 알고리즘, 기술을 발전시키는 것이 필요하다.
  • Computer VIsion은 다양한 field와 관련이 있다.

History of Computer Vision

  • 5억 4천만년 전 - Evoultion’s Big Bang

    • 동물의 종이 폭발적으로 증가한 시점이 있는데, 눈이 발달하며 생존을 위한 정보를 얻을 수 있게 되어 빠르게 진화했다.
  • 16, 18 세기 - Camera’s obscura

    • 빛을 모으는 구멍과 정보를 모아 사영하는 동물의 눈 구조와 유사한 pinhole camra theory를 기반으로 해 카메라의 개념이 등장했다.
  • 1959년 - Hubel & Wiesel

    • 인간의 뇌와 유사한 뇌를 가진 고양이 실험을 통해 ‘포유류의 visual processing mechanism’을 연구했다.
    • 고양이 뇌의 주요 visual cortex(피질) 뒷쪽에 전극을 달아 어떤 자극이 뉴런을 반응하게 하는지 확인했다.
    • Simple cells는 빛의 방향에 반응한다.
    • Complex Cells는 빛의 방향과 움직임에 반응한다.
    • Hypercomplex cells는 끝 지점의 움직임에 반응한다.
  • 1963년 - Block world (Larry Roberts)

    • Computer Vision의 첫 PhD 논문, visual world를 간단한 기하학적 형상으로 단순화하였다.
  • 1966년 - The summer vision project (MIT)

    • Visual system 연구에 큰 영향을 끼친 주요한 프로젝트이다.
  • 1970년 대 - Daivd Marr

    • vision이 무엇이고, 컴퓨터가 visual world를 인식하기 위해 어떤 알고리즘을 개발해야하는지에 대한 내용을 담은 컴퓨턴 비전 책을 썼다.
    • 첫 단계 Primary Sketch: 모서리, 직선, 곡선 경계 등을 다룬다.
    • 두번째 단계 2.5-D Sketch: 표면, 깊이, layer, visual scene의 불연속성 등을 다룬다.
    • 세번째 단계 3-D model Representataion: 표면과 부피에 대해 계층적으로 정리된 모습을 볼 수 있다.
    • vision이 무엇인가에 대한 이상적 개념을 정립했고, 이해하기에 직관적인 방식이라 Computer Vision 분야에 큰 영향을 끼쳤다.
  • 1973, 1979년 - Pictorial Stucture, Generalized Cylinder

    • Block world를 넘어 실제 세계의 물체를 인식하기 위해 연구를 진행하기 시작했다.
    • 모든 물체는 간단한 기하학적 기초 요소들로 구성되어있다는 생각을 기반으로 한 두 연구가 등장했다.
    • 사람을 실린더 모양의 요소들의 합으로 단순하게 인식하였다.
  • 1987년 - David Lowe

    • 면도기를 선과 모서리, 직선들의 조합으로 인식해 현실 세계를 재인식하고자 노력했다.

  • 물체를 인식하는 것은 매우 복잡하기에 위의 연구들의 노력에도 불구하고 큰 발전을 이루지 못하는 어려움을 겪어, 먼저 object segmentation을 진행했다.

    • 픽셀들을 그룹별로 구분해 이미지를 의미있는 영역들로 나누었다.
  • 1997년 - Normalized Cut (Shu & Malik)

    • graph theory 알고리즘을 이용해 image segmentation을 진행했다.
  • 1999년 - “SIFT” & Object Recognition (David Lowe)

    • 형태의 변화에 구애받지 않고 특징을 파악할 수 있는 알고리즘을 개발했다.
  • 2001년 - Face Detection (Viola & Jones)

    • 머신러닝 기술이 발달하며 특히 AdaBoost 알고리즘을 통해 실시간 얼굴 인식을 가능케 했다.
  • 2006년 - Fujifilm에서 실시간 얼굴 탐지기를 지닌 디지털 카메라를 생산했다.

    • 빠른 속도로 과학 연구에서 실제 세계에 활용할 수 있게 되었다.
  • 2006년 - Spatial Pyramid Matching (Lazebnik, Schmid & Ponce)

    • 이미지의 영역별로 특징을 추출하고 조합한 후 Support Vector Machine 알고리즘을 적용했다.
  • 2009년 - Deformable Part Model (Felzenswalb, McAllester, Ramanan)

    • 특징을 조합해 사람을 보다 더 잘 인식하게 해주었다.
  • 2006 ~ 2012년 - PASCAL Visual Object Challenge

    • 20가지의 물체 종류로 구성된 데이터셋을 갖고 알고리즘을 개발해서 물체를 탐지하는 퍼포먼스를 꾸준히 향상시켰다.
  • 비슷한 무렵, ImageNet이 발달했다.

    • 인터넷에서 수억개의 이미지를 다운로드해 WordNet로 정리하고, 여러 엔지니어링 기법을 통해 최종적으로 2만 2천개의 카테고리를 가진 1400만 이미지로 정리했다.
    • 2009년 Large Scale Visual Recognition Chllaenge을 통해 classification과 관련된 Computer Vision 알고리즘을 발달시켰다.
      • 이미지에서 5개의 label을 추출하는 것으로, 매년 오류가 크게 감소했다.
        • 2012년에 오류가 크게 줄었는데, 이는 Convolutional Neural Network(CNN) 모델 덕분이다.
        • 2012년 이전부터 비슷한 개념이 존재했는데, 최근들어 화제가 되는 이유는 1) GPU 등 computation 장치의 발전, 2) 이용가능한 데이터의 증가때문이다.
        • CNN 이후 다양하게 발전하였다.

0개의 댓글