전체 글
-
리눅스 빠른 압축프로그래밍 2021. 7. 8. 23:33
리눅스에서 일반적인 압축 명령은 다음과 같다. tar -cvf [파일명.tar] [폴더명] 문제는 파일의 수가 매우 많은 경우 CPU의 단일 코어만 사용하여 압축을 진행하기 때문에 매우 느리다. 따라서 다중 코어를 이용해 빠르게 압축하면 시간을 매우 단축할 수 있다. 다중 코어를 이용한 압축 명령은 다음과 같다. tar -I pigz -cf [파일명.tar.gz] [폴더명] 아래와 같이 다중 코어를 잘 사용함을 확인할 수 있다. 압축을 푸는 방법은 tar -zxvf [파일명.tar.gz] 이다.
-
-
Knowledge Distillation머신러닝, 딥러닝 공부 2021. 2. 1. 18:39
1. Knowledge Distillation Knowledge distillation은 NIPS 2014에 제출된 "Distilling the Knowledge in a Neural Network"라는 논문에서 제시된 개념이다. 간단하게 큰 모델(Teacher Network)로부터 증류한 지식을 작은 모델(Student Network)로 transfer 하는 일련의 과정이다. Knowledge distillation은 작은 네트워크가 큰 네트워크와 비슷한 성능을 낼 수 있도록 하는 것이 목적이다. 2. Knowledge Distillation의 구조 $L=\left(1-\alpha\right)L_{CE}\left(\sigma\left(Z_s\right),\ \hat{y}\right)+2\alpha T^..
-
Scale Invariant Feature Transform (SIFT)컴퓨터 비전 공부 2021. 1. 12. 22:32
SIFT는 Scale Invariant Feature Transform의 약자이며 2004년 British Columbia 대학교 D.Lowe에 의해 처음 발표됐다. SIFT는 이미지의 스케일 및 회전에 불변이다. 이 알고리즘은 특허를 받았기 때문에 OpenCV의 Non-free 모듈에 포함되어 있다. Scale-space peak Selection Scale-space 현존하는 물체는 특정한 scale에서만 의미가 있다. 탁자 위 각설탕은 우리에게 완벽한 정육면체로 보이지만 우주적인 scale에서 보면 이는 존재하지 않는 것과 같다. 이처럼 사물의 multi-scale 특성은 자연에서 꽤 흔하다. 이미지의 scale space은 입력 이미지와 다른 scale에서 Gaussian kernel (Blurr..
-
Feature Pyramid Networks머신러닝, 딥러닝 공부 2021. 1. 5. 13:27
1. Introduction Object detection에서 다양한 스케일의 물체를 감지하는 것은 어려운 일이다. 특히 작은 물체의 경우가 그러한데 이는 아래 그림과 같이 이미지를 서로 다른 스케일로 적용하여 해결할 수 있다. 단순하게 이미지를 다양한 크기로 resize 하고 각 이미지마다 feature를 추출하여 detection을 하는 것이다. 하지만 여러 스케일 이미지를 처리하는 데 시간이 많이 걸리고 메모리 요구량이 커서 이를 End-to-End로 학습하는 것은 어려운 일이다. 다른 방법으로는 단일 이미지에서 convolution 연산을 통해 resolution이 낮은 feature를 추출하고, 이를 이용해 prediction을 수행하는 것이 있다. 이는 연산량 측면에서는 유리하지만 결과적으로 ..
-
Monocular Depth Estimation 논문 정리논문 정리 2020. 12. 1. 18:04
1. Structured Attention Guided Convolutional Neural Fields for Monocular Depth Estimation [CVPR 2018] Conditional Random Field (CRF)을 모델에 적용한다. 또한 multi-scale feature들을 학습하기 위해 attention mechanism을 사용한다. 데이터셋은 NYU Depth V2와 KITTI 데이터셋에서 평가된다. Contribution은 다음과 같이 요약된다. Front-end CNN과 multi-scale CRF을 통합하여 모델을 end-to-end로 학습할 수 있다. Attention mechanism을 통해 multiple-scale feature로부터 structured info..
-
Non-local Neural Networks머신러닝, 딥러닝 공부 2020. 7. 4. 14:07
1. Introduction 일반적인 Convolutional neural network의 경우 넓은 receptive field를 확보하기 위해 convolution를 여러 개 쌓거나 pooling layer를 통해 봐야 하는 영상의 크기를 줄인다. 하지만 이러한 방식은 receptive field 측면에서 크게 효율적인 방법은 아니다. 충분한 receptive field를 확보하기 위해선 네트워크 깊이가 상당히 깊어져야 하므로 효율적이지 못하다. 저자는 2000년대 초반에 소개된 상당히 좋은 성능을 보여주는 노이즈 제거 필터인 Non-local Means Filter (NLM Filter)에서 아이디어를 얻어 기존의 convolution의 local 한 특성을 보완해 줄 수 있는, 한 번의 연산이 영..
-
Understanding GRU Networks [번역]머신러닝, 딥러닝 공부 2020. 5. 29. 19:06
이 글에서는 정말 매혹적인 유형의 신경망에 대해 매우 간단하고 이해하기 쉬운 설명을 제공하려고 한다. Cho, et al. 2014 년에 GRU (Gated Recurrent Unit)는 표준 recurrent neural network의 vanishing gradient problem를 해결하는 것을 목표로 한다. GRU는 LSTM의 변형으로 간주될 수 있다. 두 가지 모두 비슷하게 설계되고 경우에 따라 동일한 결과를 제공하기 때문이다. Recurrent Neural Networks에 익숙하지 않은 경우 간단한 소개를 읽는 것이 좋다. LSTM에 대한 이해를 돕기 위해 많은 사람들이 Christopher Olah의 글을 추천한다. 이 글은 GRU와 LSTM을 명확히 구분하기 위함이다. How do GR..