Deep Learning
Lecture 13 | Generative Models Unsupervised Learning 지도학습 데이터 x를 레이블 y에 매핑시키는 함수를 배우는 것 비지도 학습 레이블이 없는 학습 데이터만 가지고 데이터에 숨어있는 기본적인 구조를 학습시키는 것 비지도 학습이 인기있는 이유 레이블이 없기 때문에 데이터의 비용이 적다. 데이터의 숨겨진 구조를 잘 찾는다면 visual world의 구조를 이해할 수 있는 아주 좋은 발판이 된다. Generative Models 비지도 학습 중 하나인 생성모델에 대해서 알아보자 목적 동일한 분포에서 새로운 샘플들을 생성해 내는 것 비지도 학습의 핵심문제는 학습 데이터의 근본이 되는 분포를 추정하는 것이다. 비지도 학습은 크게 2가지로 나뉜다. Explicit densi..
Lecture 12 | Visualizing and Understanding Overview 지금까지는 CNN 아키텍처를 어떻게 설계할 것인가를 배웠다면 오늘은 CNN내부는 어떻게 생겼는 지를 알아볼것이다. 즉, Conv-net은 어떻게 동작할까?, CNN이 도대체 어떤 종류의 것들을 찾고 있는 걸까? 목차 Activations: Nearest neighbors, Dimensionality reduction, Maximal patches, Occlusion Gradients: Saliency maps, Class visualization, Fooling images, feature inversion Fun: DeepDream, Style transfer Visualize filters 우리는 단순히 각각..
Lecture 11 | Detection and Segmentation Computer Vision Tasks Semantic Segmentation → 입력은 이미지이고 출력은 이미지의 모든 픽셀에 카테고리를 정한다. classification처럼 카테고리가 있지만 이미지 전체가 아니라 각각의 픽셀에 카테고리가 매겨진다. Classification + Localization → 이미지 분류 + 이미지 내에 객체가 어디에 있는지 네모박스를 그리는 것, Localization문제에서는 이미지내에 하나의 객체가 존재한다고 가정한다. 따라서 기본적으로 이미지내에 객체 하나만 찾아서 레이블을 매기고 위치를 찾아낸다. Object Detection → object detection의 task는 이미지에 나타나는 ..
Lecture 10 | Recurrent Neural Networks RNN(Recurrent Nueral Network) RNN의 형태 RNN은 input, output의 형태에 따라 쓰임이 다르다. 종류 one to one: Vanilla Neural Network, 입력하나가 hidden layer를 거쳐 하나의 출력을 내보냄 one to many: Image captioning, 입력은 이미지와 같은 단일입력, 출력은 caption과 같은 가변출력 many to one: Sentiment Classification, 입력은 텍스트와 같은 가변입력, 출력은 하나의 감정과같은 단일 출력 many to many: Machine Translation, 가변입력과 가변출력 many to many: Vide..
Lecture 9 | CNN Architectures CNN Architectures AlexNet VGG GoogLeNet ResNet AlexNet 최초의 large scale CNN이다. 기존의 LeNet과 상당히 유사하고 레이어만 많아졌다. AlexNet의 구조 AlexNet의 구조는 다음과 같다. Details/Restrospective 활성화함수로 ReLU를 사용하였다. local response normalization layer를 사용하여 정규화 작업을 수행하였다. data augmentation을 사용하였다. dropout: 0.5 batchsize: 128 SGD Momentum: 0.9 Learning rate: 1e-2, reduced by 10 L2 weight decay: 5e-..
Lecture 7 | Training Neural Networks II Optimization 다음과 같이 손실함수를 나타냈을때 Optimization은 loss를 어떻게 줄이는지에 대한 방법이다. SGD(Stochastic Gradient Descent) 우리가 잘 알고있는 SGD에는 몇 가지 문제점들이 있다. 문제점 High condition number problem Local minima, Sandle point Noisy estimate 1. High condition number problem SGD의 첫 번째 문제점은 Loss가 수직 방향의 가중치 변화에 훨씬 더 민감하게 반응한다는 것이다. SGD는 다음과 같은 gradient vector를 갖는다. 이렇게 gradient가 수직 방향의 더..
Lecture 6 | Training Neural Networks I Training Neural Networks 목차 Activation Functions Data Preprocessing Weight Initialization Batch Normalization Babysitting the Learning Process Hyperparameter Optimization Activation Functions 활성화함수란? 활성화 함수는 다음과 같이 선형 결합 이후 나온 값들을 더한 후 비선형적인 변환을 하기위해 사용된다. 더보기 비선형변환?선형변환과 비선형 변환의 예시는 다음과 같다. 위와 같이 선형변환을 통해 좌표계는 일정한 규칙을 가지고 변환을 하기때문에 모든 점들이 똑같이 변화한다. 이와 다르게 ..
Lecture 5 | Convolutional Neural Networks Convolutional Neural Networks AI history Frank Rosenblatt (~1957): Perceptron을 처음 만듬 Widrow and Hoff (~1960): Multilayer Perceptron Network Rumelhart (1986): First time back-propagation became popular (처음으로 학습을 시킨다는 개념을 도입) Abdel-rahman Mohamed, George Dahl, Geoffrey Hinton (2010): Acoustic Modeling using Deep Belief Networks (음향 모델링) George Dahl, Dong Y..
Lecture 4 | Introduction to Neural Networks Backpropagation (역전파) Computation graphs 💡 Computation graph는 단순히 계산과정을 그래프로 나타낸 것이다. 위에 수식에서는 score function, loss function(SVM)을 그래프화 시킨것이다. backpropagation은 gradient를 얻기 위해 computation graph내부의 모든 변수에 대해 chain rule을 recursive하게 사용한다. 지금까지 배운 gradient를 구하는 방법을 다음과 같은 것들에 어떻게 적용할지 생각해보자. 배운것들을 적용할려니 막막할 것 이다. 하지만 backpropagation을 사용하면 쉽게 해결할 수 있다. Bac..



