이번에는 MobileNet v1 논문에 대해서 간단하게 리뷰해보려고 한다. 1. Intro AlexNet 이후로 CV분야는 딥러닝 네트워크를 중심으로해서 많은 발전을 이뤄냈다고 언급한다. Network의 연구는 대부분 더 깊게 쌓고, 복잡하게 구성하여 parameter수를 늘려 performance를 증가시키는 방향으로 진행되고 발전해왔다고 한다. 하지만 그것이 size, speed 관점에서는 더 효율적이라고 말할 수는 없다는 것이 이 논문의 핵심이다. 로보틱스, 자율주행, AI가 탑재된 앱 등 다양한 Recognition Task에서 제한된 플랫폼(하드웨어 성능)에서 빠른 정보전달이 중요하다고 말한다. 이 논문에서는 작은 parameter를 통한 size와 low latency를 목적으로 두 개의 Hy..
지금까지 AlexNet, VGGNet, ResNet, DenseNet을 리뷰해봤다. 모델의 성능을 올리기위해 개선했던 방향은 여러가지가 있지만 크게 Layer의 Depth를 깊게하거나 각 Layer의 width(feature 수)를 크게 하거나 Resolution을 높이는 방향으로 전개되었다. efficientnet은 3가지 조건에 대한 적절한 비율을 찾아내어 적은 epoch으로 높은 성능을 보여주는 이름 그대로의 효율적이면서 높은 성능을 보여주었다. 그래서 이번에는 EfficientNet 논문을 리뷰해보려고 한다. 1. Abstract 이 논문은 model scaling과 Depth, width, resolution의 적절한 비율을 통해 더 좋은 성능을 이끌어낼 수 있음을 연구했다. 그래서 효율적인 c..
실생활문제를 해결하기위해 머신러닝, 딥러닝 모델이 많이 활용되고 있다. 이번 글에서는 분류(Classification)문제에서 자주사용되는 Loss Function인 Cross Entropy에 대해서 알아보려고 한다. 먼저 알아야될 개념인 정보량과 엔트로피에 대해서 간단하게 알아보자 1. 정보량 $H = -\log p(x)$로 구할 수 있으며 여기서 $p(x)$ 는 어떤 사건 $x$의 확률을 의미한다. 예를 들어 이해해보자 '해가 동쪽에서 뜬다'라는 사건에 대해서 지구의 공전, 자전 등이 바뀌지 않는 이상 확률값은 1이다. 따라서 $H = 0$ 이다. 합리적이다. why? 너무나 당연한거라 우리가 얻을 정보가 없기 때문이다. '내일 서울에 비가 온다.'라는 사건에 대해서 우리가 확률 값을 계산할 수 있다..
논문을 바탕으로 간단하게 구현해보자! 1. Setup import numpy as np import torch import torch.nn as nn import torchvision import torchvision.transforms as transforms from torch.utils.data import DataLoader import torch.optim as optim import time import random import torch.backends.cudnn as cudnn seed = 2022 torch.manual_seed(seed) torch.cuda.manual_seed(seed) torch.cuda.manual_seed_all(seed) np.random.seed(seed) c..
ImageNet에서 분류대회 기준 2위를 한 모델로 AlexNet보다 더 깊은 layer를 쌓으면서 간단한 구조로 설계되어 지금까지도 자주 사용되는 모델이다. CNN 모델에서 중요한 모델 중 하나인 만큼 간단하게 리뷰해보자! 1. Abstract Convolutional Network depth에 대한 연구를 진행했으며 3x3 Conv를 활용해 더 깊은 depth의 Network를 설계하여 이전 SOTA모델 보다 높은 성능의 Performance를 보여주었다.(16-19 layers) 다른 데이터셋에서도 일반적인 퍼포먼스를 보여줬으며, 컴퓨터 비전의 많은 연구에서 이용할 수 있도록 만들었다. (특히 U-Net 같은 Semantic Segmentation 모델의 backbone) 2. Intro 컴퓨터 비..
Computer Vision(CV) 를 공부한다면 CNN은 당연히 공부할 것이고, 가장 기본적인 Network인 AlexNet을 공부하지 않는다는 것은 우리나라 사람이 우리역사를 모르는 것과 같다. 그만큼 AlexNet을 알고가는 것은 매우 중요하다고 볼 수 있다. 그럼 간단하게 알아보자 1. Abstract AlexNet이 발표 전까지도 ImageNet의 1000개 클래스를 갖는 이미지 분류를 위해 large and deep Convolutional Neural Network를 학습시켜왔다고 언급한다. AlexNet은 이전 SOTA모델보다 높은 성능을 보여줬고, 다섯개의 Conv layers와 Max Pooling, 3개의 fully connected layers with final 1000-way s..