CS231n은 딥러닝 분야 중 Computer Vision에 대한 강의이다.
위의 그림에서 볼 수 있는 것과 같이 Computer Vision은 다양한 분야와 관련되어있다.
본격적으로 Computer Vision 강의를 시작하기에 앞서
오늘의 주제는 아래와 같다.
Today's Agenda
- A brief history of computer vision (CV 역사)
- CS231n overview (개요)
과거 생물들에게는 눈이 존재하지 않았다. 즉, 비전이 존재하지 않았다.
그러나 매우 짧은 기간내에 동물 종의 수가 폭발했다.
그 이유를 비전(시각)에서 찾았다.
시각 발달에 의해 먹이활동이 좀 더 적극적으로 변했고
생물들은 포식자로부터 살아남아야 했다.
본격적으로 비전(시각)은
진화론적인 군비 경쟁과 생물들은 살아남기 위해 빠르게 진화하면서 발전하였다.
MIT 비전 과학자인 David Marr는
그가 생각하는 비전과 우리가 어떻게 생각하는지에 대해,
그리고 컴퓨터가 시각적 세계를 어떻게 인식하는지에 대해
70년대 후반에 책으로 출판하였다.
여기서 설명하고 있는 컴퓨터 비전의 과정은
먼저, 물체를 인식하고 선, 곡선, 경계 등으로 표현된다.
그리고 표면을 갖게되고 최종적으로 3D 모델을 얻게 된다.
컴퓨터 과학자들은 사물을 어떻게 인식하고 표현할 수 있는지 생각해보았다.
어떤 두 과학자는 위와 같이 설명하였다.
하나는 "일반화 된 실린더", 하나는 "그림 구조"라고 한다.
기본 개념은 같았다.
"모든 객체는 단순한 기하학적으로 구성된다."
개체를 더 단순한 모양과 기하학적 구성의 모음으로 만드려 노력하였다.
학자들은 수많은 연구에도 불구하고 특별한 진전이 없었다.
그러다 비전문제의 해결책으로 이미지 분할이 나온다.
그것은 이미지를 찍고 픽셀을 의미있는 영역으로 그룹화하는 작업이다.
이미지 분할로 사람을 인식할 수 있게 되었고
이의 발전으로 Face Detection이라는 성과를 거두었다.
그 이후, 2000년대 들어서서
PASCAL, ImageNet의 Challenge 등 여러 프로젝트들이 나타났다.
위 프로젝트들을 통해서 이미지 인식은 오류율을 점차 줄여나갔다.
특히, 2012년에 오류율이 10%가까이 하락했는데
이 때 우승한 알고리즘이 CNN(convolutional neural network)이다.
CNN 알고리즘은 점점 발전하여 사람의 오차율보다 더 낮은 수치를 기록하였다.
CS231n은 image classification에 초점을 맞출 것이다.
CNN은 이제 object recognition에서 가장 중요한 도구가 되었다.
2010년의 알고리즘에서 주목해야할 점은
여전히 계층적이라는 것, 여전히 가장자리를 감지하고 있는 것, 여전히 불변의 개념을 갖고 있는 것이다.
2012년에 이를 획기적으로 발전시켰다.
7개의 layer를 갖고있는 CNN을 만들었다.
(지금은 AlexNet으로 알려졌고, 당시에는 Supervision이라고 함)
이 후에도 ImageNet의 우승 알고리즘은 신경망이었다.
CNN은 이 때 처음 등장한 것이 아니다.
아래와 같이 90년대의 모델과 유사한 모습은 보인다.
성능이 발달된 컴퓨터와 수많은 데이터들이 위의 결과를 만들었다고 할 수 있다.
이번 강의를 통해
컴퓨터 비전의 역사에 대해서 간략하게 알 수 있었고,
컴퓨터 비전이라는 분야가 매우 흥미롭고 유용하다는 것을 알았다.
컴퓨터 비전 기술은 의료진단이나 자율 주행, 로봇공학 같이
여러 기술에 접목시켜 미래의 세상을 더 좋은 세상으로 만들 수 있다.
앞으로 남은 강의 또한 열심히 수강하도록 할 것이다 :)
(참고자료)
leechamin.tistory.com/search/cs231n
taeyoung96.github.io/categories/CS231n/
'ML & DL > CS231n (Stanford Univ.)' 카테고리의 다른 글
[CS231n] Lecture 6 | Training Neural Networks I (0) | 2020.11.28 |
---|---|
[CS231n] Lecture 5 | Convolutional Neural Networks (0) | 2020.11.14 |
[CS231n] Lecture 4 | Introduction to Neural Networks (0) | 2020.11.14 |
[CS231n] Lecture 3 | Loss Functions and Optimization (0) | 2020.10.24 |
[CS231n] Lecture 2 | Image Classification (0) | 2020.10.14 |
댓글