AI
[5강] Convolutional Neural Networks
[5강] Convolutional Neural Networks
2020.11.07이번에는 Convolutional Layer에 대해 배울 것이다. 먼저 CNN의 역사를 알아보자. 1957년 Frank Rosenblatt가 Mark I Perceptron machine 을 개발했다. 이 기계는 perceptron이라고 불리는 알고리즘을 구현한 최초의 기계인데, 이 알고리즘은 우리가 배운 Wx + b 와 유사한 함수를 사용하고 가중치 W를 update하는backprop과 유사한 update rule이 존재했다 하지만 출력 값이 0 또는 1이다. 그리고 1960년에는 Widrow와 Hoff가 최초의 Multilayer Perceptron Network였던 Adaline and Madaline을 개발했다. Neural network layers와 비슷한 모양을 했지만 backprob가튼 학..
[4강] Introduction to Neural Networks
[4강] Introduction to Neural Networks
2020.10.31오늘 강의 내용은 backpropagation과 neural network 이다. classifer를 어떻게 정의하는지는 함수 f를 통해 알 수 있다. x가 입력값이고 weights W를 파라미터로 가지로 있고 출력값(output)은 분류하고자 하는 클래스에 대한 score vector이다. 또한, loss function도 배웠는데 loss function은 데이터 항의 조합으로 이루어져 있는데 정규화 항을 포함하고 있다. 정규화 항은 얼마나 우리의 모델이 단순한지 더 나은 일반화를 위해 적합한 단순 모델을 가지고 있는지를 표현하게 해준다. 또한, 우리는 최적의 loss를 갖게 하는 파라미터 W를 찾고자 했다. 그래서 loss function의 W에 관한 gradient를 찾았다. 최적화를 통해 gra..
[3강] Loss Functions and Optimization
[3강] Loss Functions and Optimization
2020.10.30이번 시간에는 W를 어떻게 정할까를 고민하고 최적의 W를 구하는 방법에 대해 이야기할 예정이다. 지난시간 임의의 W를 가지고 이미지에 대한 10개의 클래스 스코어를 계산했다. 밑에 예시를 보면 왼쪽에 고양이 이미지에 대해 고양이 클래스는 2.9 스코어를 준 반면 개구리 클래스는 3.7 스코어를 줬다. 우리는 정답 클래스가 제일 높은 클래스 스코어를 주기를 바란다. 그러므로 임의의 W를 가지고 만든 이 분류기는 잘 동작하지 않는 것을 알 수 있다. 중간에 자동차 이미지에 대한 클래스들의 스코어를 보면 여기서는 자동차 클래스가 다른 클래스들 보다 6.04로 제일 높은 스코어를 줬는데 이것은 좋은 예시이다. 하지만 개구리 이미지는 개구리 클래스가 -4.34라는 다른 클래스의 점수보다도 낮은 점수를 줬기 때문에..
[2강] Image Classification
[2강] Image Classification
2020.10.17Image classficiation은 컴퓨터 비전에서 핵심과제이며 CS231n 강의에서 우리가 주로 다룰 문제이다. Image classificiation 과정에서 첫 단계는 시스템이 이미지를 입력 받는 것이다. 예를 들어 고양이 사진을 입력 받는다고 해보자. 시스템에는 이미 강아지, 고양이, 트럭, 또는 비행기 같이 미리 정해놓은 카테고리나 라벨 집합이 존재한다. 그러므로 컴퓨터가 해야하는 일은 이미지(고양이)를 보고 어떤 카테고리에(고양이 카테고리) 속할지 고르는 것이다. 이 것은 우리 뇌에게는 매우 쉬운 문제이지만, 기계에게는 아주 어려운 문제다. 컴퓨터에게 고양이 이미지는 아주 큰 격자 모양의 숫자집합으로 보인다. 그리고 각 픽셀은 세 개의 숫자로 표현되는데 각각 red, green, blue를..
[0강] 딥러닝 기초 이론 스터디 - CS231n
[0강] 딥러닝 기초 이론 스터디 - CS231n
2020.10.10Standford University 의 CS231n: Convolutional Neural Networks for Visual Recognition 강의를 매주 들으며 스터디한 내용 (번역 및 정리)을 매주 블로그에 포스팅 할 계획이다. 🕵️♂️ 강의 소개 컴퓨터 비전은 이제 우리 사회에서 어디서나 볼 수 있게 되었다 - 검색, 이미지 이해, 앱, 의학, 드론, 자율주행차 등... 이런 프로그램들의 핵심은 이미지 분류 (image classification = 단일 객체 분류), 로컬라이제이션 (localization = 단일 객체 위치 정보 파악), 인식 (detection = 여러 객체에 대해 classification과 localization 동시 수행)과 같은 시각적 인식(Visual Reco..
[1강] Introduction to Convolutional Neural Networks for Visual Recognition
[1강] Introduction to Convolutional Neural Networks for Visual Recognition
2020.10.10이 강의는 Computer Vision (컴퓨터 비전)에 관한 강의다. 소개 1. Computer Vision 이란? 말 그대로, Visual data (시각 데이터)에 대한 연구다. 2. 왜 이 공부를 해야 할까? 지난 몇 년간 시각 데이터의 양이 어마어마하게 많아졌기 때문이다! 우리 옆에는 카메라가 1개 또는 3개까지 달린 스마트폰이 항상 존재한다. 이런 센서들을 통해 엄청난 양의 시각 데이터가 만들어지는 것이다. CISCO는 2015년 연구에서 2017년에는 인터넷 트래픽의 80% 이상이 비디오일 것이라고 예상했다 (이미지와 같은 다른 타입의 시각데이터를 빼고 오직 비디오만 고려). 그러므로 인터넷에 돌아다니는 대부분의 데이터는 시각 데이터다. 우리는 이 데이터를 이해하고 활용할 수 있는 알고리즘을..