일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- DeepLearning
- cnn 역사
- Deep Learning
- fast r-cnn
- libtorch
- SVM margin
- SVM 이란
- pytorch project
- EfficientNet
- computervision
- CS231n
- TCP
- yolo
- 데이터 전처리
- RCNN
- pytorch
- Faster R-CNN
- pytorch c++
- Object Detection
- yolov3
- cs231n lecture5
- self-supervision
- svdd
- 서포트벡터머신이란
- 논문분석
- CNN
- SVM hard margin
- support vector machine 리뷰
- Computer Vision
- darknet
- Today
- Total
목록CS231n (7)
아롱이 탐험대
이번 강의에서는 Covolution nueral network가 실전에서는 어떻게 사용이 되는지 알아보자 시작하기 앞서 lecture10은 cnn이 아닌 rnn에 대한 내용을 담고 있기 때문에 pass 하겠다. 오늘 배울 내용들이다. 크게 3가지 chapter로 구성이 되는데 첫 번 재는 data, 두 번째는 convolution, 마지막으로는 hardware 측면에서 알아보겠다. 자 그럼 Data Augmentation에 대해 알아보자 일반적인 CNN에서는 모델에 image와 label이 들어가고, forward, backward path를 통해 loss를 구하고 줄인다. Data augmentation에서는 아래와 같이 image의 원본을 변형하는 과정이 쓰인다. Data augmentation은 이..
Lecture 9에서는 cnn을 보다 더 시각적인 자료와 함께 이해하는 시간이다. 우선 CNN이 무엇을 하는지 알아보는 방법은 여러 가지지만 우선은 Activation map을 보며 이해해보자. 우선 오른쪽에 있는 alex net에 존재하는 pool 5 layer에서 임의의 뉴런을 취한 후 train을 돌린다. 해당 layer에서 추출한 임의의 뉴런들 중 어떤 뉴런이 가장 활발하게 활성화되는지 실험을 하는 과정이다. 실험의 결과는 왼쪽의 그림과 같이 특정 객체가 있는 local에서 뉴런들이 활발히 activation 되는 것을 볼 수 있다. 2번째 방법은 kernel을 visualize하는 방법이다. 이는 garber filter를 이용한 결과이다. garber filter는 edge와 같은 featur..
이전까지는 cnn의 동작원리에 대해 알아보았고, 오늘부터는 cnn의 많은 종류 중 하나인 Spatial Localization and Detection에 대해 알아보자. 참고로 이번 챕터에서는 몇 개의 논문이 나오는데 이는 cs231n 분석에서 생략하고 논문 리뷰 카테고리에 있는 논문 리뷰를 링크를 줄 테니 참고 바란다. CNN을 크게 보면 4가지 종류가 있다. 전체적으로 본다면 오른쪽으로 갈수록 컴퓨터 입장으로써 더 어렵다고 생각하면 된다. 우선 맨 왼쪽에 위치한 classification부터 보자. classification은 단순히 사진을 input으로 받으면 cnn이 이에 해당하는 label을 붙어준다. 두 번째인 classification+localization은 앞서 설명한 classifica..
지난 시간에 이어서 lecture 5를 살펴보자 우선 수업을 시작하기 전 실전에서 train을 어떻게 하는지에 대해 설명을 하였다. CNN을 train하려면 가장 필요한 건 막대한 데이터이다. 하지만 이 데이터들을 구하기도 힘들도 구했다 해도 train과 test 하는데 오랜 시간과 비용이 필요하다. 따라서 tensor flow, pytorch 같은 deep learning 모듈에서는 기본적인 finetuning 된 학습된 파라미터를 제공한다. (github이나 다른 사이트에서도 찾기 쉽다.) 따라서 우리가 가진 데이터는 너무 적은데, 우선 image net이라는 open data 웹사이트에 접속하여 image net data를 기반으로 학습을 시킨다. 그 후 우리가 가지고 있는 소량의 데이터로 fine..
지난 시간 loss function과 gradient descent에 이어서 설명하겠다. input과 weight를 곱해 bias를 더한 후 loss function을 통과하여 loss를 구하는 과정을 computation graph를 통해 시각적으로 표현하였다. 여기서는 max function을 이용하여 total loss를 구하였다. computation graph는 눈으로 보기에는 이해하기 쉽고 간단하지만, 계산적인 측면에서는 수만수억 개의 뉴런을 모두 이렇게 계산하기에는 많은 한계점들이 존재한다. 아래는 2020년 기준으로 잘 사용하지는 않지만 유명했던 network들이다. 간단한 예시의 module을 살펴보자. 우선 왼쪽에서 오른쪽 방향으로 가는 것을 FP(forward path)라 하고, 한국..
lecture 3에서는 lecture 2에 이어서 loss function과 optimization에 대해 리뷰하겠다. 우선 이번 챕터에서는 유명한 loss function인 SVM과 softmax에 대해 설명한다. 지난 시간에 이어서 input에 weight를 곱하고, bias를 더함으로써 3개의 label에 대해 loss를 결과 값을 구하였다. 이 결괏값들을 loss function을 통해 loss를 도출하게 되는데 우선 처음 알아볼 loss function는 SVM이다. SVM은 위와 같이 정의되며 첫 번째 cat에 대한 loss는 계산을 하면 2.9가 된다. car에 대한 loss는 0이다. flog가 10.9으로써 loss가 가장 크고, 이는 인식률이 별로 좋지 않다는 것을 의미한다. 또한 fu..
본 정리에 앞서 현재 cs231n은 3 회독을 했지만 마지막 Lecture까지는 보질 못했다. 이번 기회에 다시 처음부터 cs231n을 공부하며 기본기를 다지려고 한다. https://www.youtube.com/watch?v=3QjGtOlIiVI&list=PL1Kb3QTCLIVtyOuMgyVgT-OeW0PYXl3j5를 보며 공부하며 리뷰하였고, 어느 정도 deep learning에 대해 안다고 가정하고 글을 작성하겠다. 만약 밑바닥부터 시작하는 딥러닝을 안 봤으면 먼저 이 책을 본 후 cs231n을 공부하길 바란다. 본인은 처음부터 cs231n을 보며 공부를 하다가 한동한 힘들었다. (cs231n은 스탠퍼드 대학원 강의입니다.) Lecture 1은 기본적인 오리엔테이션이니 시간이 남을 경우 보는 것을 ..