본문 바로가기

728x90

boostcamp AI tech

(73)
Naive-Bayse Classifier 1. Bag-of-Words Sentence "I really like studying artificial intelligence" Vocabularies I = [1, 0, 0, 0, 0, 0] really = [0, 1, 0, 0, 0, 0] like = [0, 0, 1, 0, 0, 0] studying = [0, 0, 0, 1, 0, 0] artificial = [0, 0, 0, 0, 1, 0] intelligence = [0, 0, 0, 0, 0, 1] Bag-of-words vector "I really really like studying artificial intelligence" [1, 2, 1, 1, 1, 1] 2. Naive-Bayse Classifier document d, class..
Short history of Generative model - 이미지의 한 픽셀이 (r,g,b)를 갖는다고 하면 한 픽셀이 가질 수 있는 값의 경우의 수는 256*256*256이다. - 이 경우의 확률 분포로 표현하기 위한 파라미터 수는 256*256*256-1개이다. 너무 많다. - 10 by 10 이미지라면 (256*256*256-1)^100 -1 개의 파라미터가 필요하다. - 그럼 채널 수를 줄인 흑백 (28,28) 이미지라고 했을 때 이미지가 가질 수 있는 경우의 수는 2^784 가지나 된다. 이 모든 경우의 수를 판단하기 위해서는 파라미터 수가 2^784-1개 필요하다. 역시 너무 많다. - 이런 간단한 이미지에 대해서도 이미지가 가질 수 있는 전체 경우의 수를 고려한 확률분포를 모델이 학습하는 것은 거의 불가능 하다. - 만약에 픽셀끼리의 값이 ind..
Transformer The Illustrated Transformer Discussions: Hacker News (65 points, 4 comments), Reddit r/MachineLearning (29 points, 3 comments) Translations: Arabic, Chinese (Simplified) 1, Chinese (Simplified) 2, French 1, French 2, Italian, Japanese, Korean, Persian, Russian, Spanish 1, Spanish 2, jalammar.github.io - 너무 중요하기 때문에 attention is all you need 논문 리뷰에서 자세히 추가로 다뤄보겠다. - 지금은 brief understanding을 목표로 한..
Short History of Sequential Model - sequential model들의 발전 흐름과 동작 개념을 간략하게 알아본다. Naive sequence model - p(x_t | x_{t-1}, x_{t-2}, ...) - 이전 입력들이 주어졌을 때 다음에 나올 데이터의 확률을 구한다. Autoregressive model - p(x_t | x_{t-1}, x_{t-2}, ..., x_{t-r}) - 매 순간 모든 입력을 조건으로 주면 계산이 힘드니 past timespan을 고정한다. Markov model (first-order autoregressive model) - p(x_1, ...., x_t) = p(x_t | x_{t-1}) * p(x_{t-1} | x_{t-2}) * ... * p(x_2 | x_1) * p(x_1) - 현재는 ..
Short History of Detection Model - semantic segmentation이 픽셀을 객체의 일부분으로 분류한다면 detection은 객체의 bounding box를 찾는 문제이다. - detection model들의 발전 흐름과 동작 개념을 간략하게 알아본다. 1. R-CNN - 가장 간단한 방법으로 R-CNN이 있다. - input image에서 특정 알고리즘을 통해 예를들어 2000개의 patch를 뽑아낸 다음 (물론 크기를 맞추기위해 crop,resize도 필요하다) CNN layer를 거치게 하여 feature를 뽑아낸다. 이 feature들로 사람이니? 고양이니? 나무니?를 SVM으로 분류하는 것이다. - 그럼 input이미지에서 object의 위치를 잡을 수 있을 것이다. - 가장 간단한 만큼 문제가 있다. 2000개의 pa..
Short History of Semantic Segmentation - 이제까지 봤던 image classification과는 다른 segmentation task의 문제들을 AI가 어떻게 풀고 있는지 살펴본다. - semantic segmentation model들의 발전 흐름과 동작 개념을 간략하게 알아본다. - 각 픽셀들이 고양이에 속하는지 배경에 속하는지 분류한다고 생각하면 된다. 1. Convolutionalization - 우리가 보통 떠올리는 이미지 분류 문제를 푸는 모델은 이렇게 생겼다. 맨 마지막에 dense layer를 통해 flatten한 input을 label 수만큼의 차원으로 바꿔준다. - (4,4,16)을 flatten시키면 dense layer의 input tensor의 길이는 256이 된다. label이 10개라면 총 파라미터 수는 2560개..
AlexNet, VGGNet, GoogleLeNet, ResNet, DenseNet 1. AlexNet - Image Classification task에서 당시 매년 1등을 차지했던 모델이다. - 당시에는 더 많은 파라미터를 학습시키고 싶ㅇgpu 메모리 크기의 한계 때문에 모델을 반으로 나눠서 각 gpu에 학습을 시켰다. - ReLU activation, drop, data augmentation 등 지금에서는 많이 익숙한 기법이지만 당시에는 새로운 시도였다. - 현재에 와서는 일반적으로 잘 되는 모델의 standard를 만들었다고 볼 수 있다. - sigmoid, tanh에서 발생하는 vanishing gradient 문제를 ReLU를 통해 극복했다. 2. VGGNet - 특징을 뽑자면 3 by 3 kernel을 사용했고 dropout(0.5)를 사용했다. - alexnet이 11 ..
Regularization - generalization을 높이기 위한 노력들에 대해 알아보자. - testset에서의 성능을 낮추지 않으면서 training에서 학습을 방해하는 개념이다. Early stopping - validation loss가 커지는 지점 전에서 학습을 멈춘다. Weight decay, Parameter Norm Penalty - 네트워크의 parameter들의 크기가 작으면 작을수록 좋다. - function space에서 뉴럴 네트워크가 만들어내는 함수가 부드러우면 generalization에 더 좋다는 가정이 깔려있다. - 그래서 loss를 줄일때, 학습 파라미터들의 크기도 함께 줄이는 방법이다. Data Augmentation - 데이터가 아주아주아주 많으면 generalization에는 반드시 좋다..

728x90