앎을 경계하기

Vision 6

Vision Transformer 모델들은 왜 데이터셋이 많아야할까? Inductive bias

Transformer를 vision task를 위해 도입한 논문들을 보면 이런 말을 자주 본다. 트랜스포머 모델들이 CNN 기반 모델보다 inductive bias가 부족하다. Inductive bias가 뭔데..? 구글에 그대로 검색해보면 다음과 같이 설명한다. 학습 알고리즘의 귀납적 편향은 학습자가 경험하지 않은 주어진 입력의 출력을 예측하는 데 사용하는 가정의 집합입니다. 기계 학습에서 특정 목표 출력을 예측하는 방법을 배울 수있는 알고리즘을 구성하는 것을 목표로합니다. 대충 억지로 이해해보면,, 경험하지 않은 입력에 대한 예측을 위해 사용하는 가정이다.. 즉, 학습하지 않은 데이터가 들어갔을 때 잘 예측하기 위한 가정이구나! 이게 Transformer랑 CNN이랑 무슨 상관인지 이해하려면 CNN의..

[YOLO 정독] YOLO v1

YOLO는 "You Only Look Once"라는 논문으로 세상에 나오게 되었다. 작명센스가 미쳤다.. You only live once 아님 ^^ YOLO의 핵심은 "one stage object detection"이라는 것이다. YOLO가 발표되기전 최신논문이었던 R-CNN 계열은 바운딩박스 후보군을 생성하는 region propose part와 bounding box 정보를 예측하는 Bounding box regressor와 해당 바운딩박스의 클래스를 분류하는 classfier를 따로 따로 나눠서 학습시킨다. 이것을 two-stage object detection이라고 함. 아무튼 그러다보니 R-CNN은 학습이 느리고 최적화가 어렵다. (각 역할마다 모델을 다 따로따로 분리해놨으니 당연히 최적화가..

[Pytorch Tutorials] Image and Video - Transfer Learning for Computer Vision Tutorial

이번 튜토리얼에서는 transfer learning(전이학습)을 사용하여 image classification용 CNN을 어떻게 학습하는지를 배운다.transfer learning의 두 가지 주요 시나리오는 다음과 같다.Finetuning the convnet랜덤 초기화 대신, imagenet 데이터셋으로 학습된 모델같이 pretrained network를 사용하여 네트워크를 초기화한다.ConvNet as fixed feature extractor마지막 fully connected layer를 제외한 모든 레이어의 weight를 고정시키고, 마지막 fully connected layer를 랜덤 weight로 새롭게 구성하고 그것만 학습시킨다.from __future__ import print_functi..

Machine Learning 2021.03.16

[Pytorch Tutorials] Image and Video - Torchvision object detection finetuning tutorial

Torchvision object detection finetuning tutorial 이 튜토리얼에선 pre-trained된 Mask R-CNN을 finetuning한다. 데이터셋은 보행자 detection, segmentation을 위한 Penn-Fudan database를 사용한다. 345개 보행자 인스턴스가 있는 170개 이미지로 구성되어있다. 데이터셋 만들기 데이터셋은 torch.utils.data.Dataset클래스를 상속해서 __len__과 __getitem__을 구현해야한다. __getitem__은 다음을 반환한다. image : height, width 사이즈의 PIL Image (width, height가 아님을 주의해야한다.) target : dictionary boxes : N개의 ..

Machine Learning 2021.03.11

Hierarchical multi-scale attention for semantic segmentation

ABSTRACTsemantic segmentation의 성능을 개선시키기 위해 Multi-scale inference를 사용한다. 여러 스케일의 이미지가 네트워크를 통과하고 그 결과가 averaging 또는 max pooling 연산을 통해 결합된다. 이 논문에서는 multi-scale로 예측한 결과를 결합하기 위해 attention을 사용하는 접근법을 소개한다. 특정 스케일들로 예측하는 것은 특정 고장난 형태를 해결하는 데 더 효과적이다. 그리고 네트워크는 더 나은 예측을 하기 위해서 이러한 스케일들을 선호하는 것을 학습한다. 이 논문에서 사용되는 attention mechanism은 계층적이다. 이 방법은 다른 최근 접근법들보다 학습하는데 대략 4배 더 메모리 효율적이다. 게다가 학습할 때 더 크게 ..

1. Intro(1)

1.1 디지털 영상 처리란?영상은 2차원 함수f(x, y)로 정의될 수 있으며, x와 y는 공간 좌표이고 좌표 쌍(x,y)에서 f의 진폭을 영상의 밝기 또는 그레이 레벨이라고 한다.x, y, f의 밝기 값이 모두 유한하며 이산적으로 표현되는 영상을 디지털 영상이라고 한다.디지털 영상은 유한한 수의 요소들로 구성된다. 요소는 특정 위치와 값을 갖는다. 이 요소를 pixel, 화소라고 부른다.디지털 영상 처리가 포함하는 것입력과 출력이 영상인 프로세스영상으로부터 속성들을 추출하는 프로세스개별 객체 인식1.2 디지털 영상 처리 기원디지털 영상의 처음 응용 중 하나는 신문 산업이었으나 초기 디지털 영상에는 컴퓨터가 관련되어 있지 않기 때문에 정의상 디지털 영상 처리로 간주하지 않는다.컴퓨터의 진보Bell 연구소..