[CS231n] Introduction to Deep Learning for Computer Vision

Nam Eun-Ji·2021년 1월 1일
0

CS231n

목록 보기
1/8
post-custom-banner

컴퓨터 비전

  • 시각적 데이터에 대한 인식과 추론
  • 시각적 데이터가 증가함에 따라 중요성이 더 커지고 있다.
  • 자율주행, 가상현실, 드론 등

딥러닝

  • 계층적 학습 알고리즘
  • 머신러닝의 하위 집합이며, 컴퓨터비전을 교차한다.



컴퓨터 비전의 역사

Hubel and Wiesel, 1959

고양이에게 전극을 쥐어주고 고양이의 뇌에 전극을 넣어 시각데이터를 처리하는 뒷부분의 시각피질에 넣었고, 이 전극을 통해 고양이의 시각 피질에 있는 개별 뉴런의 신경활동을 기록할 수 있었다. 고양이에게 여러 사진을 보여주었지만, 고양이는 슬라이드의 움직이는 수직 바를 보았을 때 뇌에서 신경 세포 활동을 일으켰다.


Larry Roberts, 1963

물체와 이미지의 기하학을 이해하기 시작하면서 사물들을 기하학적으로 시각화


MIT The Summer Vision Project, 1966

visual system의 중요한 부분을 구성하는데 여름 근로자를 효과적으로 사용하려는 시도.
카메라와 컴퓨터를 연결하여 카메라가 바라보는 장면을 컴퓨터가 인식하는 시도를 하였고, 이것을 컴퓨터 비전의 시초로 보는 사람들도 있다.


David Marr, 1970s

시각적 표현 단계에 아이디어를 제안(이미지를 취하고 시각적 세계의 마지막인 3차원 표현에 도달하기 위해 여러 과정을 거쳐야 한다는 것)


Recognition via Parts, 1970s

단순한 블록 세계를 넘어서 어떻게 현실 세계의 대상을 인식하고 표현할 수 있을까? 라는 질문이 시작되었다. 그래서 나온 아이디어가 일반화된 실린더(generalized cylinder), 그림구조(pictorial structure)이다. 이 두가지 모두 다 기본 개념이 모든 객체가 단순한 기하학적 기본 요소로 구성된다는 것. 즉, 어떤 표현이라도 객체의 복잡한 구조를 더 단순한 형태로 표현할 수 있다는 것이다.


John Canny, 1986

edge 검출 알고리즘 개발(edge를 통해 사물을 인식)
참고


David Lowe, 1987

가장자리를 일치시켜 물체 이미지를 인식하는 메커니즘을 제안


Recognition via Grouping, 1990s

그룹화를 통해 개체 인식


SIFT, David Lowe, 1999

Scale-Invariant Feature Transform
feature 기반의 물체 인식.

다양한 scale에서의 이미지의 feature들을 찾은 다음 각 feature에 대해서 그 점들을 설명할 수 있는 방향과 크기 정보를 담은 값들을 그 지점에서 정해준다. 그 다음 앞서서 계산해둔 DB의 feature와 target의 feature의 거리를 비교하여서 매칭시켜준 뒤 매칭된 점들을 Hough transform을 통해 inlier와 outlier를 구분해서 정확하게 매칭이 되게 해준다. 그 후 마지막으로 Least mean square를 이용하여 매칭이 제대로 이루어져 있는지 검증을 하게 된다.


Viola and Jones, 2001

얼굴 인식(AdaBoost 알고리즘 사용)
이를 신문에 발표하고 후지필름은 실시간 얼굴 탐지가 가능한 최초의 디지털카메라를 출시.
참고 1
참고 2
참고 3


PASCAL Visual Object Challenge, 2001

객체 인식의 진행 상황을 측정할 수 있는 벤치마크 데이터셋.
20개의 객체 클래스들로 구성된 데이터셋이며 기차, 비행기, 사람 등이 있고 데이터셋의 범주 당 수천에서 수만가지의 이미지로 구성되며 field마다 testing set에 대해 테스트를 하고 진행 상황을 확인하는 알고리즘 개발.


AlexNet, 2012

딥러닝 CNN의 일종.
CNN(Convolutional Neural Network)모델이 다른 알고리즘을 물리치고 ImageNet Challenge의 우승을 차지하였다. 2011년도 우승 모델의 오차율이 25.8%였고, 2012년의 오차율은 16.4%로 오차율이 확 낮아졌기 때문.

imagenet
참고 사이트




딥러닝의 역사

Perceptron, 1958

비교적 정확히 기술된, 계산에 의한 최초의 신경망 모델

Perceptron이 실패한 이유는 무엇이가?
http://www.aistudy.com/neural/perceptron.htm
https://en.wikipedia.org/wiki/Perceptron
http://www.cs.cmu.edu/~10701/slides/Perceptron_Reading_Material.pdf
simple perceptron은 많은 종류의 패턴(여러 단계의 패턴)을 인식하도록 훈련시킬 수 없다는 것이 입증되었다. 그 후에 3개 또는 그 이상의 layer 를 가진 신경망이 simple perceptron보다 훨씬 더 강력한 power 를 가진다는 것이 인식되었다. 즉 한 개나 두 개의 layer를 가진 simple perceptron은 선형 분리가능한 패턴만을 학습할 수 있다는 것이다.


Minsky and Papert, 1969

퍼셉트론이 XOR function을 구현하지 못함을 알려줌, 다층 퍼셉트론은 가능


Neocognitron: Fukushima, 1980

  • Hubel과 Wiesel의 뉴런의 계층적 처리에서 영감을 받았다.
  • 컨볼루션과 매우 유사
  • 후쿠시마에서 개발한 neocon neutron이라고 하는 제안시스템.
    컨볼루션과 풀링에 대한 올바른 아이디어를 가지고 있었지만, 알고리즘을 훈련할 실제적인 방법이 없었다.
    이 시스템에는 많은 학습과 내부의 모든 뉴런 사이에 많은 연결을 설정해야했는데, 후쿠시마에는 데이터를 기반으로한 시스템에서 자유 가중치 매개 변수를 모두 적절하게 설정하는 것을 배우는 효율적인 알고리즘이 없었기 때문이다.

네오코그니트론은 많은 셀들로 이루어진 층들이 여러개 모여 구성된 계층적 다층 네트워크이다. 이 네트워크는 셀들 사이에 가변적인 연결을 가지고 있으며, 학습에 의하여 패턴을 인식할 수 할 수 있는 능력을 가지고 있다. 학습 과정이 끝난 후에 네트워크에서 가장 높은 단계에 있는 셀들의 반응은 패턴인식의 최종 결과를 보여주며, 입력패턴의 범주에 대응하는 오직 하나의 셀만이 반응을 나타낸다. 네트워크에서의 패턴인식이 패턴들 사이의 모양에 있어서 유사성에 근간을 두고 수행되며, 입력패턴들의 일그러짐이나 크기의 변화, 위치의 이동에 크게 영향을 받지 않는다.


backpropagation: Rumelhart, Hinton, and Williams, 1986

다층 퍼셉트론을 훈련시키기 위해 역전파 알고리즘(backpropagation algorithm) 소개
이 알고리즘으로 인해 Multi Layer Network에서의 학습이 가능하다는 것이 알려져, 암흑기에 있던 Neural Network 학계가 다시 관심을 받게 되었다.

Backpropagation이 가져다 준 장점은 무엇이가?


Convolutional Networks: LeCun et al, 1998

현대의 Convolutional networks와 가장 비슷함
수표에 손으로 쓴 숫자를 인식했다.


Deep Learning: 2006

신경망의 여러 계층을 의미하는 딥러닝이 등장
딥이라는 용어는 신경망의 여러 계층을 의미


2012(AlexNet) to Present: Deep Learning Explosion, 2012

2012년을 기준으로 딥러닝 연구가 기하급수적으로 증가하기 시작
활용 : Image Classification, Image Retrieval, Object Detection, Image Retrieval, Pose Recognition, Playing Atari games, Medical Imaging, Galaxy Classification, Whale recognition, Image Captioning 등

왜 갑자기 증가하기 시작?
1. Algorithms
2. Data
90년대에는 인터넷이 널리 사용되기 전이라 많은 양의 데이터를 수집하기 어려웠으나, 2010년대에 들어서 많은 데이터셋이 확보할 수 있었기 때문이다.
3. Computation 컴퓨터의 계산능력, GPU의 등장




참고
CS231n 강의동영상
https://thebook.io/006939/ch01/01-02/
https://mikail0205.tistory.com/2?category=863717
https://salkuma.files.wordpress.com/2014/04/sifteca095eba6ac.pdf

profile
한 줄 소개가 자연스러워지는 그날까지
post-custom-banner

0개의 댓글