Abstract

Much of the recent progress made in image classification research can be credited to training procedure refinements, such as changes in data augmentations and optimization methods. In the literature, however, most refinements are either briefly mentioned as implementation details or only visible in source code. In this paper, we will examine a collection of such refinements and empirically evaluate their impact on the final model accuracy through ablation study. We will show that, by combining these refinements together, we are able to improve various CNN models significantly. For example, we raise ResNet-50’s top-1 validation accuracy from 75.3% to 79.29% on ImageNet. We will also demonstrate that improvement on image classification accuracy leads to better transfer learning performance in other application domains such as object detection and semantic segmentation.


data augmentation이나 optimization의 변화와 같은 학습 절차 정제는 이미지 분류문제의 진전에 큰 도움을 주었다.

그러나 문헌에서 대부분의 정제는 간략하게 언급되거나 코드에서만 볼 수 있다.

이 논문은 다양한 정제에 대해 설명하고 간략하게 최종 모델의 정확도에 어떤 영향을 끼치는지 경험적으로 평가한다.

이러한 것들을 혼합하여 사용한 결과 다양한 CNN모델에서 성능향상을 보여주었다.

예를 들어, ResNet-50's top-1 validation accuracy가 75.3%에서 79.29%로 향상되었다.(ImageNet)

우리는 또한, object detection, semantic segmentation과 같은 다른 분야에서도 transfer learning이 좋은 결과를 도출해낸다는 것을 증명한다.


요약

  • 최근 몇년간 가파르게 accuracy가 증가해왔지만, 핵심적인 것은 model architecture가 아니라 loss functions, data preprocessing과 같은 것(refinements)이 핵심이었다. 
  • weight regularization은 쓰는게 좋으나, bias regularization은 효과가 안좋다.
  • 32-bit floating point(FP)보다 16FP가 gradient를 표현하는데에 더 효율적이어서 속도와 정확도 측면에서 우수하다. 
  • Learning rate decay는 당연히 사용하는 것이 좋다.
  • transfer learning은 어느 도메인에서도 outperforming했다.

 

Reference

He, T., Zhang, Z., Zhang, H., Zhang, Z., Xie, J., & Li, M. (2019). Bag of tricks for image classification with convolutional neural networks. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 558-567).

Abstract

How can we perform efficient inference and learning in directed probabilistic models, in the presence of continuous latent variables with intractable posterior distributions, and large datasets? We introduce a stochastic variational inference and learning algorithm that scales to large datasets and, under some mild differentiability conditions, even works in the intractable case. Our contributions is two-fold. First, we show that a reparameterization of the variational lower bound yields a lower bound estimator that can be straightforwardly optimized using standard stochastic gradient methods. Second, we show that for i.i.d. datasets with continuous latent variables per datapoint, posterior inference can be made especially efficient by fitting an approximate inference model (also called a recognition model) to the intractable posterior using the proposed lower bound estimator. Theoretical advantages are reflected in experimental results.


대규모 데이터셋과 난해한 사후분포에 연속적인 잠재변수가 존재할 때, 확률적 모델을 어떻게 효율적으로 학습시키고 추론할 것인가?

우리는 대규모 데이터셋으로 확장되는 확률적 가변 추론 및 학습 알고리즘을 소개하고, 미분이 힘든 상황에서도 다뤄본다.

contribution은 2가지이다.

첫번째는 variational lower bound의 reparameterization이 확률 경사법을 통해 최적화되어 질 수 있다.

두번째는 데이터 당 연속 잠재변수를 가지는 i.i.d. 데이터셋같은 경우에 제안된 lower bound estimator를 이용하여 대략적인 추론 모델(인식 모델이라고도 불림)을 다루기 힘든 posterior에 fit함으로써 특히 효율적인 추론을 생성해낼 수 있다.

이론적 이점은 experimental results에 나와있다.


요약

  • generative model의 가장 classic한 방법이라고 할 수 있다.
  • variance inference는 우리가 가진 데이터의 복잡한 확률분포를 직접 추정하기는 어려우니 이와 비슷한 분포로 근사하겠다는 의미이다.
  • KL-divergence는 P와 Q의 분포의 거리에 대한 식이다.
  • p(x)를 풀어보면 L(lower bound) + KL-divergence로 풀어놓을 수 있는데, 이때 L을 최대화시키면 p(x)를 maximum하는 것과 같게 된다.
  • reparametriczation이란, backprop시에 sampling하는 부분은 미분을 할 수 없기때문에 바깥으로 빼주어서 결과를 도출한다. 밖으로 빼낸다고해서 결과가 달라지진 않는다.

 

Reference

Kingma, D. P., & Welling, M. (2013). Auto-encoding variational bayes. arXiv preprint arXiv:1312.6114.

Abstract

A very simple way to improve the performance of almost any machine learning algorithm is to train many different models on the same data and then to average their predictions [3]. Unfortunately, making predictions using a whole ensemble of models is cumbersome and may be too computationally expensive to allow deployment to a large number of users, especially if the individual models are large neural nets. Caruana and his collaborators [1] have shown that it is possible to compress the knowledge in an ensemble into a single model which is much eas- ier to deploy and we develop this approach further using a different compression technique. We achieve some surprising results on MNIST and we show that we can significantly improve the acoustic model of a heavily used commercial system by distilling the knowledge in an ensemble of models into a single model. We also introduce a new type of ensemble composed of one or more full models and many specialist models which learn to distinguish fine-grained classes that the full models confuse. Unlike a mixture of experts, these specialist models can be trained rapidly and in parallel.


머신러닝 알고리즘의 성능을 향상하는 간단한 방법은 동일한 데이터에 대해 다른 모델을 학습시키고 그들이 예측한 값을 평균내는 것이다.

불행하게도 앙상블을 통해 모델 예측을 얻는 것은 특히 개별 모델이 클 경우에 많은 사용자에게 배치시킬 경우 큰 계산비용이 들고, 거추장스럽다.

Caruana의 팀은 앙상블을 통해 얻는 결과를 배치하기 훨씬 쉬운 단일모델로 압축하는 것이 가능하다는 것을 보여주었고, 우리는 다른 압축 기법을 사용하여 이 접근법을 더 발전시켰다.

우리는 MNIST에서 놀라운 결과를 얻었고, 모델의 앙상블 결과를 하나의 모델로 distilling함으로써 많이 사용되는 상업 시스템의 음향 모델을 크게 개선할 수 있다는 것을 보여준다.

또한 하나 이상의 풀 모델로 구성된 새로운 유형의 앙상블과 전체 모델이 혼동하는 세분화 된 클래스를 구별하는 많은 전문가 모델을 소개합니다.

전문가의 혼합과 다르게 이러한 모델은 신속하고 parallel하게 학습되어질 수 있다.

 


요약

  • 이전에 Hinton 교수님은 앙상블 시에 각 모델의 구성을 다르게 하는 것 보다는 서로의 initial parameter을 다르게하여 학습시키는게 더 효과적이라고 말한적이 있다. 
  • 앙상블 모델은 매번 실행하기에는 시간이 오래걸리기 때문에(예를 들어, vgg를 이용하는 경우는 너무 무거워서 smartphone에 사용하기가 힘듬) 앙상블 모델의 정보를 싱글모델(shallow하면서도 good performance인)에 이전하는 것을 'Distilling'이라고 한다.
  • 이를 행하는 방법은 크게 3가지가 있다.
  1. 첫번째 방법은, 데이터가 많지 않은 경우 앙상블은 일반화가 잘 되도록 학습되나 그렇지 않은 경우는 overfit이 될 확률이 높다. 하지만 데이터가 많다면 overfit될 가능성이 줄어들고 결과도 좋을 것이다. 이러한 가정을 바탕으로 훈련 데이터를 많게 하기 위해 oversampling을 하게 되는데 이때 만들어지는 데이터는 label이 없는 상태로 만들어진다. 이떄 미리 학습된 앙상블 모델을 이용하여 label을 predict하고 이를 훈련데이터로 사용한다. 
  2. 두번째 방법은, 각 데이터의 분포를 알면 predict의 결과가 더 좋지 않을까라는 생각에서 출발하게 된다. 이때도 위와 같이 oversampling을 하기 때문에 label을 붙여줘야 하는데, 이전에 사용된 앙상블 모델을 통해 최종 결과값이 아닌 logit값을 label을 주면 class의 분포를 학습하게 되어 좋은 결과를 얻을 수 있게 된다.
  3. 세번째 방법은 Hinton교수님이 제안한 방법이다. 이 방법은 softmax를 사용하게 되는데, Temperature라는 개념을 도입하게 된다. 이는 전체 확률의 합이라고 할 수 있는데 softmax같은 경우는 모든 확률의 합이 1이므로 Temperature = 1을 뜻하게 된다. 이때 문제는 Temperature가 1일 경우에 class확률이 높은 것은 전부 1의 근처에 있고, 나머지는 0에 가깝게 되므로 분포를 알기 어렵게 된다. 따라서 분포를 알기 위해 보통 T = (2, 5)의 범위를 사용한다고 한다. 하지만 반대로 T가 너무 높으면 모든 class에 대해 유사한 확률값을 가지게 되어 분포의 의미가 없어지게 된다. 그래서 적당한 T를 사용해야 한다. 또한, 이때 loss에서는 기존의 cross_entropy의 indicator(1 or 0이 들어가는 부분)대신에 T를 통해 얻어진 확률값으로 대체하였다. 

 

Reference

Hinton, G., Vinyals, O., & Dean, J. (2015). Distilling the knowledge in a neural network. arXiv preprint arXiv:1503.02531.

Abstract

When integrating computational tools such as automatic segmentation into clinical practice, it is of utmost importance to be able to assess the level of accuracy on new data, and in particular, to detect when an automatic method fails. However, this is difficult to achieve due to absence of ground truth. Segmentation accuracy on clinical data might be different from what is found through cross-validation because validation data is often used during incremental method development, which can lead to overfitting and unrealistic performance expectations. Before deployment, performance is quantified using different metrics, for which the predicted segmentation is compared to a reference segmentation, often obtained manually by an expert. But little is known about the real performance after deployment when a reference is unavailable. In this paper, we introduce the concept of reverse classification accuracy (RCA) as a framework for predicting the performance of a segmentation method on new data. In RCA we take the predicted segmentation from a new image to train a reverse classifier which is evaluated on a set of reference images with available ground truth. The hypothesis is that if the predicted segmentation is of good quality, then the reverse classifier will perform well on at least some of the reference images. We validate our approach on multi-organ segmentation with different classifiers and segmentation methods. Our results indicate that it is indeed possible to predict the quality of individual segmentations, in the absence of ground truth. Thus, RCA is ideal for integration into automatic processing pipelines in clinical routine and as part of large-scale image analysis studies.


automatic segmentation과 같은 실행 프로그램을 실전에 통합시킬때는 특히 프로그램이 잘 작동하지 않는 경우 새로운 데이터에 대한 정확도를 검출할 수 있어야한다. 

그러나 새로운 데이터에는 정답에 대한 기준이 제시되지 않기 때문에 이를 행하기가 어렵다.

향상된 방법을 개발하는 동안에 validation data가 자주 사용되기 때문에 임상 데이터에 대한 Segmentation 정확도가 교차 검증을 통해 확인된 것과 다를 수 있으며 과적합하고 비현실적인 성능 기대치를 일으킬 수 있다.

사용되기 이전에 성능은 다른지표를 사용하여 정량화되며 예측된 Segmentation은 전문가에 의해 수동으로 획득되는(직접 손으로 segmentation시킨 데이터) 참조 Segmentation과 비교되어진다.

그러나 참조 데이터를 사용할 수 없는 경우에는 사용한 후에 실제 성능에 대해서는 알 수가 없다.

이 논문에서는 새로운 데이터에 대해 segmentation 방법의 성능을 예측할 수 있는 프레임워크인 reverse classification accuracy(RCA)의 개념에 대해 소개한다.

RCA는 실제 데이터로 이용가능한 참조 이미지들로 평가된 reverse 분류기를 새로운 이미지로 학습시켜 예측된 segmentation을 얻을 수 있다.

만약 예측된 segmentation의 좋은 질을 가지고 있다면 reverse classifier는 참조 이미지에 대해서도 좋은 성능을 가질 것이다.

각 다른 분류기와 다른 segmentation방법을 통한 multi-organ 방식으로 우리의 접근법을 검증한다.

실제 데이터가 없어도 개개의 segmentation 품질을 예측할 수 있다는 것을 보여준다.

따라서 RCA는 임상 루틴 및 대규모 이미지 분석 연구의 부분으로서 자동 처리 파이프라인에 통합하는 것이 이상적이다.


요약

  • 자동 세분화(Automatic Segmentation)등의 실무 문제에서 새로운 데이터에 대한 정확도를 평가하는 방법이 필요하다
  • 하지만 의료 데이터 등 검증용 데이터(Ground truth data)를 구하기 어려운 경우, 평가는 매우 어렵다. 제대로 된 평가가 이루어 지지 않은 경우 모델이 오버피팅 될 가능성이 높다
  • 이 상황에 대한 타개책으로 RCA(Reverse Classification Accuracy)를 통해 정확도를 판단한다.
  • 이미지 갯수가 적고, 레이블링이 있는 데이터가 적은 경우에 먼저 레이블이 있는 데이터로 cv를 통해 학습시킨 다음 테스트 데이터에 대한 값을 예측시킨다(가짜정답). 테스트 데이터와 가짜정답을 모델에 다시 학습시킨다.(RCA)

 

Reference

Valindria, V. V., Lavdas, I., Bai, W., Kamnitsas, K., Aboagye, E. O., Rockall, A. G., ... & Glocker, B. (2017). Reverse classification accuracy: predicting segmentation performance in the absence of ground truth. IEEE transactions on medical imaging, 36(8), 1597-1606.

 

Abstract

Cracks are among the most commonly found road surface degradations, requiring periodical road surveys for monitoring pavement quality. Images of road pavement surface can be automatically processed, typically employing segmentation algorithms to identify cracks. However, a set of distinct connected components often result, leading to the detection of several independent crack segments, although they may belong to the same pavement surface defect. This is often observed for cracks that exhibit a longer linear development or present several branches. This paper presents a new strategy to identify cracks on images captured during road pavement surveys, even when those cracks appear with a complex shape. The proposed crack segmentation algorithm includes two stages: (i) selection of prominent crack seeds”, adopting an efficient segmentation procedure, after appropriate image smoothing, minimizing the detection of false positives; (ii) iterative binary pixel classification, into the crack or non-crack classes, extendingthe “seeds” to identify the complete crack shape. The paper also tests the combination of the proposed two stage crack segmentation with three smoothing techniques, to evaluate their suitability for crack detection. As a final step the system classifies the identified cracks as longitudinal, transversal or miscellaneous types. Tests performed with images acquired from different types of sensors (active and non-active), show improved crack segmentation results.


균열은 가장 흔히 발견되는 도로 문제이며 정기적인 조사가 필요하다.

도로 이미지는 균열을 식별하는 segmentation 알고리즘을 사용하여 자동적으로 프로세스화 할 수 있다.

그러나 동일한 포장 표면 결함에 속할지라도, 서로 다른 균열일 수 있다.

이러한 현상은 여러 갈래로 쪼개져 있거나 긴 균열에서 주로 발생한다.

이 논문은 도로 조사기간에 모아진 이미지들에 나타나는, 복잡한 모양을 포함한 균열을 인식하는 새로운 전략을 제시한다.

2가지 단계로 이루어져 있다.

  1. 적절한 image smoothing 적용 후 false positive를 최소화하는 효율적인 segmentation procedure를 채택하는 crack seed 선택
  2. crack, non-crack class로 이루어진 binary-pixel classification을 진행하여 seed를 확장하여 균열 모양 식별.

균열 탐지에 대한 안정성을 평가하기 위해 3가지 smoothing 기법에 새로 제안한 2가지 단계를 혼합시켰다.

최종 단계로서 시스템은 종, 횡 또는 기타 균열로 분류한다.

active, non-active로 이루어진 이미지로 테스트하였으며 향상된 결과를 도출했다.


 

Reference

Oliveira, H., & Correia, P. L. (2017). Road surface crack detection: Improved segmentation with pixel-based refinement. In 2017 25th European Signal Processing Conference (EUSIPCO) (pp. 2026-2030). IEEE.