본문 바로가기

데이터 과학 관련 스터디/cs231n12

cs231n 12강 visualizing & Understanding 요약 가장 먼저 CNN안에서 어떤 일들이 일어나고 있는지를 시각화해보는 것에 대해 공부합니다. 먼저 First Layer의 filter들을 시각화합니다. AlexNet을 보면 어떤 패턴들이 명확히 보입니다. 이미지 내의 edge같은 특징들을 뽑아내기 위함입니다. 이제 이 필터들이 layer가 깊어지면서, 합성곱이 이뤄지고 점점 더 복잡해집니다. 나중에 깊은 layer의 필터들을 보면 직관적으로는 이해할 수 없는 필터들이 되죠. 이렇게 layer가 깊어질수록 이해하기 힘든 필터들이 나오고 필터도 많아지죠. 저는 정형 데이터를 딥러닝할 때의 블랙박스의 문제가 CNN에서 이렇게 이어진다고 이해했습니다. 필터를 거치면서 하나하나의 feature map들이 이미지 내에서 각각 어떤 부분의 전문가가 된다고 한 적이 있었.. 2020. 12. 26.
cs231n 11강 Detection and Segmentation요약 벌써 11강입니다. 오늘은 컴퓨터 비전중에서도 몇가지 task로 단순히 image classification이 아니라 아이디어가 결합된 모델들을 봅니다. 우선 강의하면서 계속 본 기본적인 이미지 분류를 보면, 이미지 데이터를 입력 -> 네트웍을 거치면서 feature vector 반환 -> 1000개의 카테고리별 스코어 출력 이었습니다. 위 네가지 task의 모델들을 살펴봅니다. Segmentation, localization, object detection에 대해서 공부합니다. Sementic Segmentation을 살펴봅시다. 객체가 아닌 픽셀을 분류하는 task입니다. 위 슬라이드 그대로 이미지의 모든 픽셀을 카테고리별로 분류하게 됩니다. cow는 픽셀 덩어리로 분류해버립니다. 2마리인지도 모르고.. 2020. 12. 26.
cs231n 10강 Recurrent Neural Networks 요약 10장은 시계열 데이터에서 많이 쓰이는 RNN에 대해서 공부합니다. 이제껏 배운 보통의 뉴럴넷은 입력값 1개 -> 출력값 1개 였습니다. 입력값이 많거나 출력값이 많을 수도 있죠. RNN은 이럴때 쓰입니다. one to many는 지난 강의에서 언급한 적이 있는 이미지 캡셔닝에서 많이 쓰입니다. many to one은 감정 분류에 많이 쓰인다고 합니다. 뉴스 카테고리 분석에서도 많이 쓰이죠 아마 입력 데이터가 sequential한 문장들일 겁니다. 중간에 hidden state가 많은 many to many는 Machine Translation 번역 머신에 많이 쓰인다고 합니다. 언어 -> 언어로 번역해주는 역할 마지막 many to many는 매 프레임 마다 값이 입력되고, 출력이 돼야하는 비디오에 쓰.. 2020. 12. 12.
cs231n 9강 CNN Architectures 요약 9강은 CNN 아키텍쳐를 이용했던 모델들을 구체적으로 파헤쳐봅니다. LeNet AlexNet VGG GoogLeNet ResNet 특히 이미지넷에서 우승했던 모델들을 위주로 살펴봅니다. 먼저 일전에도 언급했던 LeNet부터 살펴봅시다. LeNet은 처음으로 성공한 instantiation 중에 1개였습니다. 이미지를 넣으면 5x5필터를 적용한 ConV층이 있고, Pooling 레이어를 거쳐서 FC 레이어로 넘어갔죠. 이 간단한 구조로 숫자인식에 성공했습니다. 지난 강의에서도 했던 내용이죠? 다음으로는 2012년 놀라운 성과를 보인 AlexNet입니다. AlexNet은 처음으로 large scale로 구성한 CNN이었습니다. 2012 컴피티션에 참가해서 이전의 모든 non deep learning 모델들을.. 2020. 12. 5.
cs231n 7강 Training Neural Networks, Part 2 정리 7강 Neural NetworksTraining Neural Networks, Part 2를 포스팅하겠습니다. 내용이 점점 깊어질수록 어려워지네요. 지난 강의에서 많은 것들을 배웠습니다. 이번 강의는 지난강의의 연장선인 part 2부분입니다. 강의의 교수가 다시 바뀌면서 새로운 교수가 지난 6강에서의 첨언합니다. 지난 시간 배웠던 데이터 전처리입니다. zero - centered에 대해서 첨언합니다. 일단 선형분류인 위와같은 상황이 있습니다. 왼쪽의 데이터처럼 데이터가 normalization이 안되어 있고, zero centered가 되어있지 않으면, 선이 조금만 틀어져도 오분류의 위험이 더욱 크죠. (0,0에서 그리는 저 분류 함수가 10도 정도만 틀어진다고 생각해보세요. 오분류가 쉽게 일어날 것입니.. 2020. 12. 2.
cs231n 6강 Training Neural Network 1 정리 이제 6강입니다. 우리는 지난 강의에서 CNN의 틀을 배웠습니다. 이제는 NN을 학습하는 과정을 2강에 걸쳐서 배웁니다. 일단 지난 강의부터 복기합시다. 우리는 지난 강의에서 가중치 w를 곱해주어 Liner model로 wx+b인 퍼셉트론을 배웠습니다. layer를 쌓아 올려 Neural Network를 만들었고, FC layer앞에 Covolutional layer를 쌓아서 CNN의 구조까지 배웠습니다. Convolutional layer는 이렇게 필터로 이미지의 공간 정보들을 갖고 있는, activation map들을 생성해냈습니다. 그렇게 FC층에 넣어 모델을 만들고 optimization을 진행했습니다. 이번 강의부터 앞으로 2강 동안 Training Neural Network을 배웁니다. 목차는.. 2020. 11. 21.
cs231n 5강 Convolutional Neural Networks 드디어 이 강의의 타이틀인 CNN의 구조를 살펴봅니다. 우선 먼저 CNN의 역사를 보겠습니다. CNN의 역사 CNN 아키텍쳐 우리는 저번 시간에 활성화 함수를 이용한 퍼셉트론에 은닉층을 추가하여 비선형 모델인 Neural Network을 배웠습니다. 오늘은 그 중에서도 바로 Convolutional Neural Network을 배웁니다. CNN의 전체적인 구조입니다. 먼저 CNN의 역사를 살펴봅시다. 먼저 1957년으로 거슬러갑니다. 57년에는 단일 퍼셉트론인 마크1이 개발되었습니다. score 함수만을 이용한 모델이었습니다. 1 or 0 만을 내뱉는 함수를 이용했기 때문에 Back propagation은 불가능했습니다. 1960년대에는 multi layer를 이용한 모델이 개발되었습니다. NN의 시초이.. 2020. 11. 7.
cs231n 4강 Introduction to Neural Networks정리 3강까지는 Loss function(손실 함수)의 정의를 알아보고 종류도 살펴봤습니다. 우리는 이 손실함수를 최소로하는 방향으로 가중치 W를 수정하는 optimization의 개념도 배웠습니다. 이번 4강은 가중치 W를 수정하는 방식에 대해 여러가지 예시로 자세히 살펴본 뒤, Neural Network의 개념을 배웁니다. 3가지 예시를 통한 Back propagation Neural Network 우선 우리가 3강에서 배운 것을 복기합니다. 이미지를 분류하기 위한 각 class별 스코어를 알려주는 scores function인 Wx를 배웠습니다. 그리고 Loss function(손실 함수)도 힌지로스와 cross-entropy 2가지를 배웠는데 여기서 과적합을 방지하기위한 규제항도 배웠습니다. 2번째 슬.. 2020. 10. 31.
cs231n 3강 Loss Functions and Optimization요약 3강입니다. 목차는 아래와 같습니다. overview Loss function : SVM Loss(Hinge Loss) & Cross entropy Loss(soft max) Optimization 지난 강의에서는 6가지 Semantic Gap으로 이미지 데이터를 분류하는 데에 어려움이 있으며, NN&KNN을 살펴보며 Linear classification의 원리만 살펴보았습니다. 우선 지난 2강에서 뉴럴 네트웍의 기본 단위인 Linear Classifier를 배웠습니다. 픽셀을 1차원 array배열로 바꾼 뒤, 가중치 W를 곱하고 bias를 더해 각 클래스별 스코어를 산출합니다. 아직 최적의 가중치 W를 구하는 방법을 모르기 때문에 이번 강의는 이 부분에 집중합니다. loss function을 정의하는.. 2020. 10. 24.