## 1 Introduction  
Clouds cover more than half of the globe surface. Most cloud-related research, such as climate modeling, weather forecasting, meteorology study, solar energy research, and satellite communication [1; 2; 3; 4; 5], need to analyze cloud characteristics, in which cloud categorization plays an essential role. At present, professional observers categorize cloud types; it is a time-consuming task, and some problems cannot be well handled by human observers [6]; therefore, automatic classification of clouds is a much-needed task. Much research has been conducted on this topic. Similar with all other image classification tasks, there are two main types of feature representation approaches for cloud image classification: hand-crafted features and deep learning features [7]. In other words, traditional machine learning approaches and deep learning approaches [8]. Firstly, we review the traditional machine learning approaches. [PERSON] and [PERSON] [9] used five feature extraction methods (autocorrection, co-occurrence matrices, edge frequency, [PERSON]'s features, and primitive length) and applied the k-nearest neighbor and neural network to identify the cloud types. [PERSON] and [PERSON] [10] applied Fourier transform, statistical measurements, and pixel computation to extract image features. [PERSON] et al. [11] predefined statistical features to describe color and texture, and then used a k-nearest neighbor classifier. [PERSON] et al. [12] proposed an illumination-invariant completed local ternary pattern descriptor to deal with illumination variations. [PERSON] et al. [13] extracted some cloud structure features from segment images and edge images and used a simple classifier, which is called the rectangle method. [PERSON] et al. [14] developed a texture classification technique with a salient local binary pattern. [PERSON] et al. [15] used a weighted local binary descriptor. [PERSON] et al. [16] proposed a modified texton-based approach that integrated both color and texture information to categorize cloud image patches. [PERSON] et al. [17] used duplex norm-bounded sparse coding to classify cloud type; they extracted local descriptors from an input cloud image and then formed a holistic representation leveraging normal-bounded sparse coding and max-pooling strategy. [PERSON] et al. [18] combined texture feature and manifold features; the manifold features extracted on symmetric positive define (SPD) matrix space that can describe the non-Euclidean geometric characteristics of the infrared images; then, used a support vector machine (SVM) classifier. [PERSON] et al. also [19] proposed manifold kernel sparse coding and dictionary learning with three steps: feature extraction, dictionary learning, and classification. [PERSON] et al. [20] proposed a feature extraction method with a local binary pattern. However, most of the traditional machine learning approaches which are based on hand-crafted features rely on careful choice of features, and it is necessary to find their empirical parameters; and accurate cloud classification of these methods has not been achieved satisfactorily. In recent times, the revolution of computing capacity has supported the development of deep learning; in particular, deep learning with convolutional neural network (CNN) has shown outstanding performance in image classification [21]. CNN models are able to extract features from the image data, so there is no need for any feature extraction method. [PERSON] et al. [22, 23] improved feature extraction using a CNN by resorting to the deep convolutional visual features and the Fisher vector and then used an SVM classifier. [PERSON] et al. [24] proposed a CNN model to extract features using different pooling strategies and used a multi-label linear SVM classifier. [PERSON] et al. [25] used a trained CNN to extract local features from part summing maps based on feature maps called deep visual information for multi-view ground-based cloud recognition.