반응형

분류 전체보기 270

[ICLR 2017] DSD: Dense-Sparse-Dense Training For Deep Neural Networks

Paper Link: https://arxiv.org/abs/1607.04381 Github: x Introduction ICLR 2017에 게재된 논문입니다. 이 논문에서는 pre-trained network를 pruning을 통해 sparse하게 만든 뒤 re-dense하게 만들었더니 성능이 향상됐음을 보이는 실험적인 논문입니다. 저자가 Song.Han이라는 분으로 이전의 리뷰한 논문의 연장선상에 있다고 볼 수 있는데요. 당시에 pruning을 60%가량 했음에도 불구하고 약간의 accuracy 향상이 있다는 것에 착안하여 pruning을 통해서 feature extraction을 잘 해주는 weight들을 골라냈으니 이걸 갖고서 training을 하면 더 나은 accuracy 향상을 보일 수 있지 ..

Matrix Tiling

이번 포스팅에서는 GPU에서 매우 큰 matrix를 효율적으로 연산하게 해주는 최적화 기법인 matrix tiling에 대해서 알아보겠습니다. 이는 matrix-matrix multiplication의 효율을 높여주기 위해 사용됩니다. 우선 matrix tiling을 해주기 위해서는 input matrix 2개와 result matrix를 tiling해주어야 합니다. 그리고 난 뒤에는 이들을 tile단위로 multiplication을 해주어 result matrix에 저장해줍니다. 이걸 열과 행단위로 matrix 전체를 계산해주면 됩니다. 이에 대한 pseudo-code는 다음과 같습니다. 이렇게 tiled matrix multiplication을 해주면 전체 matrix가 GPU memory에 fit하..

컴퓨터/Etc 2019.11.19

[ICLR 2018] Model Compression via Distillation and Quantization 간단한 소개 및 스터디 후기

Paper Link : https://arxiv.org/abs/1802.05668 Github : https://github.com/antspy/quantized_distillation 스터디에서 발표했다. Quantized Knowledge Distillation 관한 내용이었는데, 관련 배경지식이 많이 부족해서 힘들었다. KD는 심플하게 Teacher Network의 soft label로 Student Network를 training 시키는 것으로 알고 있다. 이 과정이 Knowledge Transfer이고 이때 생기는 loss를 Distillation Loss라고 한다. 그런데 Quantization을 공부한다면 다음과 같은 생각을 해볼 수 있을 것이다. 적정 Criteria에 따라서 student..

[ISCA 2017] Scalpel: Customizing DNN Pruning to the Underlying Hardware Parallelism

Paper Link : https://ieeexplore.ieee.org/document/8192500 Github : https://github.com/jiecaoyu/scalpel-1 Introduction ISCA에 2017년에 게재된 논문입니다. 이 논문에서는 network pruning을 함에도 불구하고 실제로는 inference시에 퍼포먼스가 떨어지는 것을 지적한 뒤 하드웨어의 병렬성에 최적화하여 pruning 하는 기법을 소개합니다. 병렬성 수준에 따라 SIMD-aware pruning, Node pruning을 소개하며 5개의 DNN에 대해 3가지 하드웨어 플랫폼에 따른 실험을 통해 기존의 방법들을 얼마나 outperform 하는지 보여줍니다. 전통적인 pruning의 경우 가장 많이 이야..

MLE (Maximum Likelihood Estimation)

Intro 우리는 흔히 머신러닝 공부를 하다보면 MLE, MAP를 접해보게 될 기회가 많습니다. 다른 기초가 없이 공부를 할 때 MLE, MAP와 같은 것을 접한다면 꽤나 난감합니다. 머신러닝, neural network를 갖고 우리가 원하는 것은 training data를 갖고 그게 DNN, CNN, RNN이든 뭐든간에 적당한 함수를 하나 잘 근사하는 것입니다. 하지만 이걸 확률의 관점으로 본다면 우리는 true probability distribution을 찾는 과정으로 생각을 할 수가 있습니다. 그러면 우린 여기서 이 distribution을 표현하는 parameter를 어떻게 찾을 것인가에 대한 need가 생기는데, 여기서 MLE나 MAP라는 방법론을 사용합니다. MLE 압정을 던졌을 때 압정이 ..

인공지능/Etc 2019.10.12

[NIPS 2015] Learning both Weights and Connections for Efficient Neural Networks

Paper Link : https://arxiv.org/abs/1506.02626 Github : x Introduction 현재 MIT 조교수로 재직중인 Song Han이 Stanford에서 박사과정 중에 쓴 network pruning paper입니다. 그가 제시한 방법은 다음과 같습니다. Strategy 1. Pre-training network 2. Prune weight 3. Fine-tune 4. Iterate 2-3 우선 어떤 weight이 중요한 지 알기 위해 neural network를 training 시킵니다. 그리고 중요하지 않은 weight을 일정 threshold가 넘으면 남겨두고, 넘지 않으면 pruning 시켜줍니다. 그리고 남은 network에 대해서 Fine-tuning을 ..

Model Compression Paper List Read

2019년 목표 50편 정독하기, 10개 Pytorch, tensorflow로 구현해보기(...) 최초 작성 (2019.10.08) 1차 수정 (2019.10.16) 2차 수정 (2019.10.22) 3차 수정 (2019.10.30) 4차 수정 (2019.11.07) 5차 수정 (2019.11.17) 6차 수정 (2019.11.26) 7차 수정 (2019.12.04) 8차 수정 (2019.12.26) 공부한 것 Optimal Brain Damage NIPS 1989 Learning both Weights and Connections for Efficient Neural Networks NIPS 2015 Deep Compression: Comressing Deep Neural Networks with Pr..

[스마트베타] 스마트베타란?

스마트베타란 뭘까? 이는 Investopedia에 따르면 패시브 전략과 액티브 전략의 장점을 결합한 포트폴리오 관리 방법이라고 한다. '효율적인 시장 가설'과 '팩터 투자'의 교차점에 위에 있는 방법이라고 한다. 여기서 '효율적인 시장 가설'이라 함은 베타를 말하고, '팩터 투자'라 함은 알파를 이야기한다. '베타'는 특정 벤치마크를 추종(passive)하는 운용 방식이고, 알파는 벤치마크 대비 초과 수익(active)을 얻기 위한 운용 방식이다. 모두가 생각이 다르겠지만, 특정 벤치마크를 초과하는 수익을 내는 것은 누구에게나 매력적인 일이다. 책에서는 여러 연구들에 의하여 이러한 초과 수익이 특정 팩터들에 의해 발생한다는 것이 알려져 있다고 한다. 이 팩터들은 크게 6가지가 있는데 모멘텀, 퀄리티, 사..

잡동사니 2019.09.26

Information Theory

정보이론은 1948년 Claude Shannon이 이라는 논문을 통해 창시한 이론입니다. Shannon은 어떻게 하면 통신채널 간의 정보를 '잘' 주고받을 수 있을지 고민을 했었습니다. Shannon은 이 논문에서 통신채널의 입력과 출력을 확률변수로 모델링하고 통신채널은 이들 사이의 변환으로 모델링하였습니다. 머신러닝을 공부할 때, 특히 밀도 추정(특히 생성모델)을 공부할 때 KL Divergence라는 용어를 많이 보셨을 겁니다. 간단한 예로 시작하여 self-information, entopy, KL Divegence 등이 무엇인지 알아보도록 하겠습니다. 정보이론에서는 발생 가능성이 적은 사건에 대해서 발생 가능성이 큰 사건을 아는 것보다 더 많은 정보를 얻을 수 있다고 생각합니다. 예를 들어서, "..

인공지능/Etc 2019.08.04
반응형