Research(22)
-
[CV Study] Learning Deep Features for Discriminative Localization (CVPR '16)
Motivation 이미지 분류 문제를 풀면서 딥러닝 모델이 과연 어떤 정보에 기반하여 이러한 분류 결과를 냈을까라는 궁금증을 가질 수 있다. 아래의 그림은 "Visualizing and Understanding Convolution Networks"라는 논문에서 가져온 것으로, 완전히 학습된 모델에서 각 layer의 feature map을 시각화 한 것이다. 이와 같은 이전 연구들에서는 CNN 모델의 얕은 층에서는 대상의 edge와 같은 간단한 정보를 찾아내고 깊은 layer에서는 보다 고차원적인 feature를 추출한다는 것을 밝혀냈지만, 모델이 어떤 정보를 통해서 최종적인 분류 결과를 냈는지는 알 수가 없다. Classification 문제를 풀기 위해 모델을 학습하는 동시에 input 이미지의 중..
2020.05.31 -
[CV Study] Spatial Transformer Networks (NIPS '15)
Motivation: 딥러닝 학습시에 왜곡된 이미지를 데이터셋으로 활용하려면 어떻게 해야할까? 이미지의 왜곡을 자동으로 disentangle 해줄 수는 없을까? Introduction 기존 CNN의 한계 CNN은 spatially invariant하지 못하다. 즉 scale, rotation, translation과 같은 위치/공간 상의 변화에 대해서 제대로 대응하지 못한다. Local max pooling을 통해서 이러한 점을 어느 정도 완화할 수도 있지만 pooling size가 작을 수록 그 효과는 미미해진다. 이를 해결하기 위한 것이 Spatial Transformer! Pooling layer와의 차이점은? Pooling layer는 pooling size가 fix 되어 있고 그 범위가 매우 한..
2020.05.30 -
[CVPR 2020] Designing Network Design Spaces
페이스북 AI 리서치 팀이 2020년도 CVPR에 발표한 논문이다. 기존의 NAS(Neural Architecture Search) 계열 논문들은 고정된 design space 내에서 최적의 뉴럴넷 인스턴스를 찾기 위한 탐색을 하는 것이 일반적이었다. 하지만 이 논문에서는 상당히 새로운 패러다임의 AutoML 방식을 제시한다. 바로 NAS와 같이 개별 네트워크 인스턴스 하나를 찾는 것이 아니라 design principle 자체를 탐색하는 것이다! Introduction LeNet => AlexNet => VGG => ResNet과 같이 뉴럴넷이 발전해온 과정을 보면, 뉴럴넷 모델의 점진적인 발전은 연구자들이 성능 개선에 도움이 될 법한 insight를 얻은 뒤에 그러한 insight를 잘 반영할 수 있..
2020.05.08 -
[ASPLOS 2020] PatDNN: Achieving Real-Time DNN Execution on Mobile Devices with Pattern-based Weight Pruning
Paper Link: https://arxiv.org/pdf/2001.00138.pdf 높은 성능의 모바일 기기들이 등장함에 따라서 데스크탑에서만 동작하던 딥러닝 어플리케이션들을 모바일에서 서빙할 수 있는 가능성이 열렸다. 이에 따라 모바일 딥러닝 inference를 위한 여러 연구들이 진행되고 있는데 이 논문 역시 그와 관련한 내용을 다룬다. 비록 모바일 기기의 computing power가 상당히 올라가긴 했으나, real-time inference를 가능케 하는 정도의 성능을 내긴 쉽지 않다. 그래서 weight pruning, quantization과 같은 경량화 방식을 적용하여 서빙하는 것이 일반적이다. 이 논문에서는 quantization은 다루지 않고 있고, pruning에만 초점을 두고 있..
2020.05.03 -
PyTorch IR에 관하여
PyTorch IR Reference Link: https://github.com/pytorch/pytorch/wiki/PyTorch-IR PyTorch는 SSA 기반의 IR을 사용한다. In compiler design, static single assignment form (often abbreviated as SSA form or simply SSA) is a property of an intermediate representation (IR), which requires that each variable is assigned exactly once, and every variable is defined before it is used. Graph는 일반적으로 프로그램 representation에 ..
2020.03.05 -
[ASPLOS 2020] SwapAdvisor: Push Deep Learning Beyond the GPU Memory Limit via Smart Swapping
뉴럴넷의 깊이(layer의 수)와 넓이(레이어 당 파라미터 수)가 커질 수록 더 좋은 accuracy를 얻을 수 있다는 건 여러 연구를 통해서 밝혀진 사실이다. 하지만 GPU 메모리의 한계로 인해서 마냥 큰 모델을 만들 수만은 없다. 이 논문에서는 GPU 메모리 한계를 극복하기 위한 한 가지 방법으로 dataflow graph가 주어졌을 때 operator scheduling, memory allocation, swap decision을 자동으로 생성한다. 1. Introduction 이전의 연구들은 GPU 메모리 사용량을 줄이기 위해서 더 적은 floating point precision을 사용하거나, quantization을 통해서 더 sparse한 모델 파라미터를 생성하는 compression 기법..
2020.03.01