Abstract

In this work we address the task of semantic image segmentation with Deep Learning and make three main contributions that are experimentally shown to have substantial practical merit. First, we highlight convolution with upsampled filters, or ‘atrous convolution’, as a powerful tool in dense prediction tasks. Atrous convolution allows us to explicitly control the resolution at which feature responses are computed within Deep Convolutional Neural Networks. It also allows us to effectively enlarge the field of view of filters to incorporate larger context without increasing the number of parameters or the amount of computation. Second, we propose atrous spatial pyramid pooling (ASPP) to robustly segment objects at multiple scales. ASPP probes an incoming convolutional feature layer with filters at multiple sampling rates and effective fields-of-views, thus capturing objects as well as image context at multiple scales. Third, we improve the localization of object boundaries by combining methods from DCNNs and probabilistic graphical models. The commonly deployed combination of max-pooling and downsampling in DCNNs achieves invariance but has a toll on localization accuracy. We overcome this by combining the responses at the final DCNN layer with a fully connected Conditional Random Field (CRF), which is shown both qualitatively and quantitatively to improve localization performance. Our proposed “DeepLab” system sets the new state-of-art at the PASCAL VOC-2012 semantic image segmentation task, reaching 79.7% mIOU in the test set, and advances the results on three other datasets: PASCAL-Context, PASCAL-Person-Part, and Cityscapes. All of our code is made publicly available online.


이 논문에서는 딥러닝에서의 의미론적 객체 분할 작업과 세 가지의 주요 기여에 대해 설명한다.

첫 번째, dense한 예측(예를 들면, pixel 단위의 예측)에서 강력한 도구인 'atrous convolution'을 강조한다.

Atrous Convolution은 깊은 합성곱 신경망에서 계산되는 특징 반응을 명확하게 제어할 수 있다.

또한, 계산량을 증가시키는 파라미터 수의 증가 없이 큰 맥락을 통합할 수 있는 필터의 관점을 효율적으로 크게 사용할 수 있다.

두 번째, 여러 크기로 객체를 견고하게 세분화 할 수 있는 ASPP(Atrous Spatial Pyramid Pooling)을 제안한다.

ASPP는 다중 샘플링 속도와 효율적인 FOV(Field of View)에서 필터를 사용하여 들어오는 컨볼루션 피처 레이어를 조사하며, 다양한 크기의 이미지 맥락뿐만 아니라 객체를 캡쳐할 수도 있다.

세 번째, DCNN과 확률적 그래프 모델을 방법을 결합하여 객체 경계의 제역화를 개선한다.

일반적으로 DCNN에서 다운샘플링과 맥스풀링의 조합은 불변성이라는 장점을 가지고 있지만, 지역화 정확도에 좋지 않다.

우리는 이러한 문제를 CRF(fully connected Conditional Random Field)를 사용하여 해결하려 한다.

우리가 제안한 'DeepLab' 시스템은 PASCAL VOC-2012에서 SOTA를 달성하였으며, PASCAL-Context, PASCAL-Person, Cityscapes에서 향상된 결과를 얻었다.


요약

  • Semantic Segmentation에서 사용하는 대표적 평가 방법 IOU --> TP / (TP + FP + FN)
  •  atours convolution = Dilated convolution, 기존 컨볼루션에서 픽셀간 거리를 하나 띄워서 필터를 만드는 것
  • 이들의 장점은 receptive field의 크기는 키울 수 있지만, 파라미터는 급격히 증가하지 않는다는 것이다.
  • 확률적 그래프 모델은 CRF는 픽셀이 위치, RGB상으로 비슷한데 Label이 다르면 패널티를 주어 이를 최소화하게 한다. 자세한건 논문의 수식이나 PR12 동영상을 참고. 이를 사용하면 다음과 같이 객체의 경계를 자세하게 구분지을 수 있음

  • dilated convolution을 사용하면 풀링을 사용하지 않아도 receptive field를 크게 가져가면서 좋은 성능을 얻을 수 있다. 이는 풀링의 장점 중 하나인 파라미터 감소의 효과도 있다.
  • 제안한 ASPP는 Dilated Convolution만으로는 다양한 크기를 보기 힘들며, 이는 resolution(이미지 크기) 유지를 위해 사용한다. 따라서 우리는 Spatial Pyramid Pooling으로 다양한 input 크기를 다루어서 성능 향상을 꽤한다.

 

Reference

https://www.youtube.com/watch?v=JiC78rUF4iI&list=PLWKf9beHi3Tg50UoyTe6rIm20sVQOH1br&index=4
Chen, L. C., Papandreou, G., Kokkinos, I., Murphy, K., & Yuille, A. L. (2017). Deeplab: Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs. IEEE transactions on pattern analysis and machine intelligence, 40(4), 834-848.

Abstract

Automatically describing the content of an image is a fundamental problem in artificial intelligence that connects computer vision and natural language processing. In this paper, we present a generative model based on a deep recurrent architecture that combines recent advances in computer vision and machine translation and that can be used to generate natural sentences describing an image. The model is trained to maximize the likelihood of the target description sentence given the training image. Experiments on several datasets show the accuracy of the model and the fluency of the language it learns solely from image descriptions. Our model is often quite accurate, which we verify both qualitatively and quantitatively. For instance, while the current state-of-the-art BLEU-1 score (the higher the better) on the Pascal dataset is 25, our approach yields 59, to be compared to human performance around 69. We also show BLEU-1 score improvements on Flickr30k, from 56 to 66, and on SBU, from 19 to 28. Lastly, on the newly released COCO dataset, we achieve a BLEU-4 of 27.7, which is the current state-of-the-art.


이미지의 내용을 설명하는 것은 컴퓨터 비전과 자연어처리를 연결하는 인공지능의 근본적인 문제이다.

이 논문에서는 컴퓨터 비전과 기계 번역의 최근 발전된 기술을 혼합한 깊은 순환 아키텍쳐에 기반이 되고 있으며 이미지를 설명하는 자연어 문장을 생성가능한 생성 모델을 소개한다. 

모델은 주어진 학습이미지를 설명하는 문장을 목표로 liklihood를 최대화하게끔 훈련되어진다.

몇 가지 데이터셋에서의 실험은 모델의 정확성과 이미지 설명으로부터 학습한 언어의 유창성을 보여준다.

본 연구의 모델은 상당히 정확하며 질적, 양적으로 검증되었다.

예를 들면, BLEU-1 score에서 SOTA가 25였다면 우리의 모델은 59나 된다.(인간 69)

우리는 또한 Flickr30k를 사용하여 BLEU-1에서 56 -> 66, SBU 19 -> 28, COCO에서 BLEU-4 27.7을 달성했다.


요약

  • 이미지의 설명을 뽑기 위해 첫 부분에서 GoogleNet을 쓰고, 뒤에 LSTM을 이어붙인 구조를 사용하였다.

  • 모델 구조에서 LSTM으로 이어주기 직전에 이미지 벡터 공간을 워드 벡터 공간으로 매핑시켜주는 레이어를 추가하였다.
  • 이 논문은 word2vec의 사용을 강조하고 있다.(시기 상 나온지 얼마 안된 시점)
  • 기존에 문장 생성 시에 워드 벡터 공간에서 가장 확률이 높은 단어를 사용하는 샘플링 방법을 사용하는데, 이 논문은 이 방법을 사용하지 않고 BeamSearch 기법을 활용하였다. 이 기법은 k 개(논문에서는 20개)의 후보를 항상 유지하여 가장 마지막 단계에서 후보를 선택함. k를 1로 두는 것보다 20으로 두는게 좀 더 성능이 좋았다. 하지만 높을수록 오버피팅의 문제가 심각하였으며, 이 때문에 실제 대회에서는 3으로 줄여서 사용했다.
  • BLEU-n 평가 방식은 문장에서 단어가 몇개나 정확한가를 평가하는 지표인데, 이미지 캡션에서는 잘 맞지 않는 지표일 수 있다. 예를 들어 BLEU-3은 연속적인 3개의 단어가 얼마나 정확한가에 대한 것 뿐만 아니라 1, 2개의 연속적인 단어에 대해서도 확인하는 것이다. n이 증가할 수록 어려워진다.
  • 학습 시에 오버피팅이 심했는데 이를 해결하기 위해, CNN 부분은 사전 학습 모델을 사용하고 워드 임베딩 벡터는 초기화하지 않고 사용했더니 더 잘되었다. 추가적으로 드롭아웃과 앙상블을 활용했다. 
  • 2 단계 학습을 사용했는데, 처음 단계는 Inception 모델의 가중치를 동결시키고 학습시킨 후에 두번째로 Fine-Tune을 수행하였다. 
  • 논문이 아닌 대회를 위해서 모델에 일정 부분을 변경하여 참여하게 되었는데, 먼저 Fine-Tune 시에 LSTM를 일정 수준까지 학습한 뒤에 CNN의 Fine-Tune을 수행하였다.

 

Reference

Vinyals, O., Toshev, A., Bengio, S., & Erhan, D. (2015). Show and tell: A neural image caption generator. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 3156-3164).

ABSTRACT

This paper introduces WaveNet, a deep neural network for generating raw audio waveforms. The model is fully probabilistic and autoregressive, with the predictive distribution for each audio sample conditioned on all previous ones; nonetheless we show that it can be efficiently trained on data with tens of thousands of samples per second of audio. When applied to text-to-speech, it yields state-of-the-art performance, with human listeners rating it as significantly more natural sounding than the best parametric and concatenative systems for both English and Mandarin. A single WaveNet can capture the characteristics of many different speakers with equal fidelity, and can switch between them by conditioning on the speaker identity. When trained to model music, we find that it generates novel and often highly realistic musical fragments. We also show that it can be employed as a discriminative model, returning promising results for phoneme recognition.


이 논문은 audio waveforms를 생성하기 위한 WaveNet을 소개한다.

이 모델은 완전히 확률적이고 오토리그레시브하며, 각 오디오 샘플에 대한 예측 분포를 이전 모든 샘플에 맞춰 조정한다; 그럼에도 불구하고 우리는 초당 수만개의 오디오 샘플을 사용하여 효율적으로 학습이 가능하다는 것을 보여준다. 

TTS (text-to-speech)에 적용하면 최첨단 성능을 얻을 수 있으며, 청취자는 영어와 만다린 모두를 위한 최고의 파라메트릭 및 연결 시스템보다 훨씬 더 자연스러운 소리로 평가한다.

단일 WaveNet은 동일한 충실도로 서로 다른 말하는 사람들의 특징을 잡아낼 수 있고, 그들의 본질(남자 목소리, 여자 목소리 등등)을 전환하여 사용할 수 있다.

음악을 학습했을 때,  새롭고 현실적인 음악적 요소를 잘 생성한다는 것을 볼 수 있었다.

또한, 음소 인식에 대해 좋은 결과를 보여주는 적대적 모델로서 사용할 수 있다.


요약

  • 이 논문은 확률의 marginalization과 같이 이를 스태킹한 컨볼루션 형태로 표현하겠다는 것이 핵심이다.(Stack of Causal Convolutional Layers)

  • 위의 그림을 보면, 이전의 샘플을 컨볼루션에 사용하는 것을 볼 수 있다. 예를 들어, input에서 hidden layer로 넘어갈 때 hidden layer는 각각 2개의 파란색 점을 사용함.
  • 하지만 위의 그림에서의 방법은 receptive field가 작기때문에 dilated 방법을 사용한다.

  • 아키텍쳐는 다음과 같다.

  • 마지막으로 Conditional WaveNet은 아래 그림과 같이 h에 어떠한 조건을 걸겠다는 것을 의미한다.

  • 두 가지가 있는데, 먼저 Global Conditioning은 목소리와 같은 경우 남자 목소리는 시간이 지나도 남자 목소리이므로, 전체 타임스텝에 같은 조건을 다루도록 한다.

  • Local Conditioning은 Condition이 시간에 따라 변하는 것이다. 이는 매우 천천히 변하는 데이터(ex: 텍스트 데이터, 텍스트 데이터는 음성 데이터에 비해 변화가 더 적음)에 적용하기 위해 transposed CNN을 사용하여 크기를 맞춰주고 1x1 CNN으로 더해주게 된다.(밑의 그림에서 V * y에서 y 부분)

 

Reference

Oord, A. V. D., Dieleman, S., Zen, H., Simonyan, K., Vinyals, O., Graves, A., ... & Kavukcuoglu, K. (2016). Wavenet: A generative model for raw audio. arXiv preprint arXiv:1609.03499.

ABSTRACT

Despite recent advances, memory-augmented deep neural networks are still limited when it comes to life-long and one-shot learning, especially in remembering rare events. We present a large-scale life-long memory module for use in deep learning. The module exploits fast nearest-neighbor algorithms for efficiency and thus scales to large memory sizes. Except for the nearest-neighbor query, the module is fully differentiable and trained end-to-end with no extra supervision. It operates in a life-long manner, i.e., without the need to reset it during training.

Our memory module can be easily added to any part of a supervised neural network. To show its versatility we add it to a number of networks, from simple convolutional ones tested on image classification to deep sequence-to-sequence and recurrent-convolutional models. In all cases, the enhanced network gains the ability to remember and do life-long one-shot learning. Our module remembers training examples shown many thousands of steps in the past and it can successfully generalize from them. We set new state-of-the-art for one-shot learning on the Omniglot dataset and demonstrate, for the first time, life-long one-shot learning in recurrent neural networks on a large-scale machine translation task.


최근 기술 발전에도 불구하고, 깊은 신경망의 one-shot learning과 liefe-long learning에서는 여전히 희귀 이벤트에 대해서 제한적이다. 

우리는 이를 딥러닝에서도 원활하게 사용할 수 있도록 하는 large-scale life-long memory module을 소개한다.

이 모듈은 효율성을 위한 빠른 최근접 이웃 알고리즘을 사용하여 큰 메모리 크기로 확장한다.

최근접 이웃 쿼리를 제외하고, 모듈은 완전히 미분가능하며 어떠한 감독 없이 엔드-투-엔드 방식으로 학습할 수 있다.

life-long의 관점에서 작동하며, 학습하는 동안 재설정이 필요하지 않다.

우리가 제안한 메모리 모듈은 지도학습에 쉽게 추가될 수 있다. 

모듈의 다양성을 확인해보기 위해 이미지 분류에서 간단한 컨볼루션, 심층 시퀀스-시퀀스, 순환-컨볼루션 모델에 추가해본다.

모든 경우에서 life-long one-shot learning을 실현할 수 있었다.

이 모듈은 과거의 수천 단계에서 보았던 훈련 샘플을 기억하고, 이를 성공적으로 일반화할 수 있다. 

우리는 Omniglot 데이터셋에서 이를 사용해보았고, 대규모 기계 번역 작업에서 순환신경망을 사용하여 이를 최초로 사용해보았다.


요약

  • 먼저 rare events란, 어떤 데이터셋에서 매우 희귀하게 나타나는 데이터를 의미한다. 
  • 기존의 신경망은 이러한 rare evenets를 기억하기에는 그래디언트 기반에서 매우 학습이 느리기 때문에 잘 반영되지 않는 문제점이 있다. 따라서 이 논문의 핵심은 신경망에 메모리 모듈을 합친다는 것이다.

  • 메모리 모듈은 Key(신경망의 활성화 층 값), Value(Ground Truth의 레이블), Age(실제 이 아이템이 어느정도 저장되어 있는지 추적될 수 있도록 하는 값)으로 이루어져 있다. 
  •  메모리를 사용하기 위해 쿼리를 날리는데, 여기서 쿼리는 key-size만큼의 벡터를 의마한다.
  • 메모리 모듈의 학습과 업데이트는 맞은 경우, 틀린 경우로 나뉘어진다. 맞은 경우는 키값과 쿼리를 합쳐서 새로 업데이트를 하고, 틀린 경우는 여유 공간을 찾아서 그곳의 K, V, A를 다시 계산한다.
  • 이 모듈은 어려운 문자로 구성되어 있는 omniglot 데이터셋과 번역에서 좋은 성능을 보여주었으며, 여러 레이어에 연결하여 편리하게 사용할 수 있다.

 

Reference

Kaiser, Ł., Nachum, O., Roy, A., & Bengio, S. (2017). Learning to remember rare events. arXiv preprint arXiv:1703.03129.

Abstract

How can we explain the predictions of a black-box model? In this paper, we use influence functions — a classic technique from robust statistics — to trace a model’s prediction through the learning algorithm and back to its training data, thereby identifying training points most responsible for a given prediction. To scale up influence functions to modern machine learning settings, we develop a simple, efficient implementation that requires only oracle access to gradients and Hessian-vector products. We show that even on non-convex and non-differentiable models where the theory breaks down, approximations to influence functions can still provide valuable information. On linear models and convolutional neural networks, we demonstrate that influence functions are useful for multiple purposes: understanding model behavior, debugging models, detecting dataset errors, and even creating visually-indistinguishable training-set attacks.


블랙박스 모델의 예측을 어떻게 설명할까요?

본 논문에서는 고전적인 통계 기법을 사용하여 학습 알고리즘을 통해 얻어진 모델의 예측을 영향 함수를 사용하여 추적해보고, 주어진 예측을 주는 모델이 또다른 학습 데이터를 받았을 때 어떤 영향을 보이는지 알아본다.(즉 훈련 데이터에서 해당 데이터를 없앴을 때, 예측에 어떤 영향을 끼치는가?)

현대 머신러닝을 위한 영향함수의 확장을 위해서, 간단히 Hessian-vector 내적과 그래디언트를 요구하는 방법을 개발하였다.

학습에 부정적 영향을 끼치는 non-convex나 non-differentialble의 특성을 가지고 있는 모델이 여전히 가치있는 정보를 제공할 수 있음을 영향 함수를 통해 확인하였다.

선형 모델이나 컨볼루션 신경망에서 영향 함수가 다양한 목적에 있어 유용하다는 점을 증명하였다: 모델의 행동 이해, 모델 디버깅, 데이터셋 에러 감지, 시각적으로 구분 불가능한 훈련 세트의 에러.


요약

  • 이 논문은 모델이 에측할 때, 대체 왜 그런 예측을 만들었는지에 대한 질문의 답변을 생각해본 논문이다.
  • 이 논문은 영향 함수를 사용하여 각 모델이 어떤 훈련 데이터에서 가장 영향을 받는지에 대한 예시를 밑의 그림에서 볼 수 있다. SVM은 픽셀단위에 예민함을 보이며, 예시 사진을 보면 주황색이 많이 들어간 사진들이 해당한다.(두 번째 행, 단순 주황색) 하지만 본 논문에서 사용된 Inception, 신경망의 경우는 표현을 학습하기 때문에 좀 더 복잡한 사진이 영향을 끼치는 것을 볼 수 있다.(세 번째 행, 주황색, 물고기 등) 

  • 논문에서는 모델 파라미터에 대한 영향력, loss에 대한 영향력, input space의 변화에 대한 영향력에 대해 설명한다.

'

  • 위의 예는 로지스틱 회귀에서 7과 1을 구분하는 문제이다. 초록색은 Training과 test가 7, 빨강색은 Training 1, test 7인 것을 의미한다. (a)는 각각 위의 식에서 train loss, Hessian, train_loss + Hessian을 빼본 것의 결과이다. (b)와 같은 경우는 테스트 이미지가 7일 때, 오른쪽 이미지를 7이라고 훈련시킨 경우에는 왼쪽 이미지를 예측하기가 힘들어진다는 것을 의미한다.  
  • Loss가 non-convex이면, quadratic loss로 가정하고 했더니 잘된다. 

  • Loss가 미분 불가능하면, 근사를 해서 미분 가능한 함수로 바꾸면 된다. 이 경우에는 대충 근사해도 잘되는 걸 확인할 수 있었다.

  • 영향 함수는 각각의 훈련 데이터에 대한 영향을 알아볼 수 있으며, 도메인 미스매치를 디버깅할 수 있다. 또한, mislabel 문제에 대해서도 잡아낼 수 있는 장점이 있다.

 

Reference

Koh, P. W., & Liang, P. (2017, August). Understanding black-box predictions via influence functions. In Proceedings of the 34th International Conference on Machine Learning-Volume 70 (pp. 1885-1894). JMLR. org.