Teacher-student network-based strong convective cloud cluster identification method and device
Through the semi-supervised learning method of the teacher-dual student network, supervised and unsupervised training are performed using multi-source satellite data to generate pseudo labels to assist the student network, which solves the problems of uneven label quality and high cost in the existing technology and achieves efficient identification of strong convective clouds.
Patent Information
- Application Number
- CN202510989830.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-17
- Publication Date
- 2025-10-17
- Estimated Expiration
- 2045-07-17
AI Technical Summary
Existing methods for identifying severe convective clouds rely on manually labeled features, which have uneven label quality and high costs. In addition, the classification accuracy decreases with seasonal changes or regional migration. Deep learning models rely too heavily on labels and lack generalization capabilities.
A semi-supervised learning method based on a teacher-dual student network is adopted. Pseudo labels are generated by the teacher network to assist the student network training. Supervised and unsupervised training are performed by combining multi-source satellite data to reduce dependence on labels and improve the model generalization ability.
The accuracy and generalization ability of severe convective cloud cluster identification are improved, the dependence on labels is reduced, and the cost of manual labeling is reduced.
Smart Images

Figure CN120495796B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of meteorological monitoring, in particular to a strong convective cloud cluster identification method and device based on a teacher-double student network. BACKGROUND
[0002] Strong convective cloud cluster identification refers to identifying the position and contour of a strong convective cloud cluster on given observation data. If a strong convective cloud cluster can be accurately identified as early as possible, researchers can make weather forecasts by predicting the development and movement of the cloud cluster, which is of great significance for improving the ability of strong convective weather forecasting and disaster prevention and reduction. Geostationary meteorological satellites have unique advantages due to their high temporal and spatial resolution and wide observation range, so the present application is based on FY-4A spectral data.
[0003] In the field of meteorological satellite remote sensing, traditional strong convective cloud cluster identification methods mainly include threshold discrimination method and traditional machine learning method. The threshold discrimination method mainly includes spectral threshold method, spatial feature threshold method and hybrid threshold model. Among them, the spectral threshold method sets the critical value of visible light, infrared and water vapor band reflectivity / brightness temperature, and realizes cloud cluster boundary identification based on multi-spectral features; the spatial feature threshold method combines cloud top texture features (such as gray level co-occurrence matrix parameters) and morphological parameters (such as cloud cluster roundness and gradient change rate) to construct a multi-dimensional spatial discrimination criterion; the hybrid threshold model fuses multi-source satellite observation data to establish a dynamic weight threshold decision system. However, due to the influence of seasonal circulation characteristics and geographical latitude and longitude differences, it is difficult to construct a universal threshold system. In order to solve the adaptability defects of the threshold method, traditional machine learning methods are gradually developed and applied. This method constructs a feature engineering including spectral channel data, texture feature parameters and morphological indexes, and uses random forest, support vector machine, logistic regression and other algorithms for supervised classification. Although the classification accuracy is improved compared with the threshold method, the traditional machine learning method still has bottlenecks: 1) feature engineering depends on meteorological expert experience, and effective feature combinations need to be manually selected; 2) when the data volume is large and the algorithm is complex, the calculation efficiency is low; 3) the model generalization ability is insufficient, and when the application scene changes with the seasons or region migration, the classification accuracy greatly decreases.
[0004] With the rapid development of deep learning in recent years, it can handle high-dimensional data and nonlinear relationships, learn complex scene features, and bring new opportunities and challenges to severe convective cloud identification. Among them, semantic segmentation is a key task in computer vision, which aims to assign a class label to each pixel in an image. Severe convective cloud identification can be regarded as a semantic segmentation task, which uses convolutional neural networks to extract features of input multispectral data, learns multi-scale and intrinsic features of data, and restores feature maps to the resolution of the original image through upsampling and other techniques, thereby realizing pixel-level severe convective cloud region classification. The data fusion capability of the severe convective cloud identification model based on deep learning does not need to be screened by experts, and the recognition accuracy and computing efficiency are greatly increased, which has strong application potential. Among many semantic segmentation models, the U-Net neural network is suitable for training with less data. It learns deep features of data step by step through multi-layer downsampling, restores the feature map to the original image resolution through upsampling, and at the same time, through the jump connection, fuses deep features and shallow features, so that the model can still achieve accurate pixel-level segmentation under the condition of less training data. However, at present, the severe convective cloud identification method based on deep learning has the problems of less label, inaccurate labeling, subjective and high cost of manual labeling, etc., which leads to low recognition accuracy.
[0005] Based on the U-Net network structure, in order to reduce the dependence of the model on labeled data and improve the tolerance to incorrect labels, a teacher-student network based on semi-supervised learning is designed for severe convective cloud identification. The model consists of three U-Net networks representing the teacher network and the student network, each network including an encoder, a decoder and a jump connection structure, which jointly undertake supervised and unsupervised tasks. The supervised part is that two students are supervised by CloudSat and Himawari-8 cloud classification labels to learn data features under multiple labels. The unsupervised part is that the unlabeled data is input into the teacher network and the student network after enhancement, and the pseudo-label obtained by the teacher network is used as the label of the student network, which learns the characteristics of the data itself to reduce the dependence of the model on labels, and uses data enhancement disturbance to improve the generalization ability of the model. SUMMARY
[0006] Therefore, it is necessary to provide a severe convective cloud identification method and device based on a teacher-student network in view of the technical problems of uneven label quality and high cost of manual labeling of existing severe convective cloud identification methods.
[0007] A severe convective cloud identification method based on a teacher-student network, the method comprising:
[0008] The multi-source satellite data are acquired and preprocessed to obtain a labeled data set and an unlabeled data set, and the labeled data set is divided into a training sample set, a test sample set and a verification sample set.
[0009] A strong convective cloud cluster recognition model is constructed and trained, the strong convective cloud cluster recognition model is a teacher-double student network model, and includes one teacher network and two student networks with the same structure, the training process of the strong convective cloud cluster recognition model is a semi-supervised mode, the training process specifically includes: supervised training of the two student networks by using the training sample set, and calculation of a supervised loss, unsupervised training of the teacher network and the two student networks by using the unlabeled data set, and calculation of an unsupervised loss, determination of a total loss according to the supervised loss and the unsupervised loss, updating of student network parameters and teacher network parameters according to the total loss by using a stochastic gradient descent algorithm and an exponential moving average algorithm respectively, testing of the trained strong convective cloud cluster recognition model by using the verification sample, fine tuning of the student network parameters and the teacher network parameters, and obtaining of the trained teacher network and student networks.
[0010] The data in the test sample set are input into the trained teacher network to obtain a strong convective cloud cluster recognition result.
[0011] A strong convective cloud cluster recognition device based on a teacher-double student network, the device includes:
[0012] A training sample determination module is configured to acquire multi-source satellite data and pre-process the data to obtain a labeled data set and an unlabeled data set, and divide the labeled data set into a training sample set, a test sample set and a verification sample set.
[0013] A model construction and training module is configured to construct a strong convective cloud cluster recognition model and train the model, the strong convective cloud cluster recognition model is a teacher-double student network model, and includes one teacher network and two student networks with the same structure, the training process of the strong convective cloud cluster recognition model is a semi-supervised mode, the training process specifically includes: supervised training of the two student networks by using the training sample set, and calculation of a supervised loss, unsupervised training of the teacher network and the two student networks by using the unlabeled data set, and calculation of an unsupervised loss, determination of a total loss according to the supervised loss and the unsupervised loss, updating of student network parameters and teacher network parameters according to the total loss by using a stochastic gradient descent algorithm and an exponential moving average algorithm respectively, testing of the trained strong convective cloud cluster recognition model by using the verification sample, fine tuning of the student network parameters and the teacher network parameters, and obtaining of the trained teacher network and student networks.
[0014] A strong convective cloud cluster recognition module is configured to input data in a test sample set into a trained teacher network to obtain a strong convective cloud cluster recognition result.
[0015] The strong convective cloud recognition method and device based on the teacher-double student network, the method comprises the following steps: acquiring multi-source satellite data and pre-processing to obtain a labeled data set and an unlabeled data set; a strong convective cloud recognition model is constructed and trained; the strong convective cloud recognition model is a teacher-double student network model, which comprises one teacher network and two student networks with the same structure; the training process of the strong convective cloud recognition model is in a semi-supervised manner; test samples are input into the trained teacher network to obtain a strong convective cloud recognition result. The two student networks in the supervised part learn data features under multiple labels respectively; the unlabeled data is input into the teacher network and the student network after being enhanced, the pseudo-label obtained by the teacher network is used as the label of the student network, the data itself is learned to reduce the dependence of the model on the label, and the generalization ability of the model is improved by using data enhancement disturbance to improve the strong convective cloud recognition accuracy. BRIEF DESCRIPTION OF DRAWINGS
[0016] Figure 1 A flowchart of a strong convective cloud recognition method based on a teacher-double student network in an embodiment;
[0017] Figure 2 A strong convective cloud recognition model based on a teacher-double student network in another embodiment;
[0018] Figure 3 A UNet network structure diagram in another embodiment;
[0019] Figure 4 A weak enhancement flowchart in another embodiment;
[0020] Figure 5 A dynamic noise enhancement flowchart in another embodiment;
[0021] Figure 6 A spectral sharpening enhancement flowchart in another embodiment;
[0022] Figure 7 An enhancement effect diagram in another embodiment. DETAILED DESCRIPTION
[0023] In order to make the purpose, technical scheme and advantages of the present application clearer, the present application will be further described in detail below in combination with the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and do not limit the present application.
[0024] In one embodiment, as shown in Figure 1 a strong convective cloud recognition method based on a teacher-double student network is provided, the method comprising the following steps:
[0025] Step 1: Obtain multi-source satellite data and preprocess to obtain a labeled dataset and an unlabeled dataset, and divide the labeled dataset into a training sample set, a test sample set, and a validation sample set.
[0026] Specifically, first, FY-4A spectral data is read and interpolated, then FY-4A spectral data, CloudSat cloud classification data, and Himawari-8 cloud classification data are time-matched, then spatial matching is performed to generate CloudSat labels and masks and Himawari-8 labels and masks. Then the spectral data is radiometrically calibrated, and the brightness temperature and brightness temperature difference are calculated, as well as the corresponding mean and standard deviation, to generate a labeled dataset and an unlabeled dataset. Finally, the labeled dataset is divided into a training sample set, a validation sample set, and a test sample set according to a fixed ratio.
[0027] Step 2: Construct a strong convective cloud cluster recognition model and train it; the strong convective cloud cluster recognition model is a teacher-student network model, including one teacher network and two student networks with the same structure; the training process of the strong convective cloud cluster recognition model is semi-supervised; the training process specifically includes: using the training sample set to supervise the training of the two student networks and calculating the supervised loss; using the unlabeled dataset to unsupervisedly train the teacher network and the two student networks and calculating the unsupervised loss; determining the total loss according to the supervised loss and the unsupervised loss; updating the student network parameters and the teacher network parameters using the random gradient descent algorithm and the exponential moving average algorithm respectively according to the total loss, and using the validation sample to test the trained strong convective cloud cluster recognition model to fine-tune the student network parameters and the teacher network parameters to obtain the trained teacher network and student networks.
[0028] Specifically, three identical networks are constructed, which are two student networks and one teacher network, and are initialized; the normalized and spliced labeled training sample set is input into the two student networks, supervised training is performed through feature extraction and reconstruction, and the supervised loss is calculated; the unlabeled training set is subjected to weak enhancement, dynamic noise enhancement, and spectral sharpening enhancement, and after normalization and splicing, it is input into the teacher network and the two student networks, unsupervised training is performed through feature extraction and reconstruction, the output of the teacher network is discriminated by a threshold to generate pseudo labels, and the unsupervised loss and the total loss are calculated; the student network parameters and the teacher network parameters are updated by the random gradient descent algorithm and the exponential moving average algorithm respectively, the previous steps are repeated, and the teacher network parameters are saved. The teacher-student strong convective cloud cluster recognition model is as shown in Figure 2 .
[0029] Step 3: Input the data in the test sample set into the trained teacher network to obtain the strong convective cloud cluster recognition result.
[0030] The method includes: acquiring multi-source satellite data and pre-processing to obtain a labeled data set and an unlabeled data set; constructing a strong convective cloud cluster identification model and training the same; the strong convective cloud cluster identification model is a teacher-student network model, including one teacher network and two student networks with the same structure; the training process of the strong convective cloud cluster identification model is a semi-supervised mode; and the test sample is input into the trained teacher network to obtain a strong convective cloud cluster identification result. The two student networks in the supervised part learn data features under multiple labels respectively; the unlabeled data is input into the teacher network and the student network after being enhanced, the pseudo-label obtained by the teacher network is used as the label of the student network, the data features are learned to reduce the dependence of the model on the label, the generalization ability of the model is improved by using data enhancement disturbance, and the strong convective cloud cluster identification accuracy is improved.
[0031] In one of the embodiments, the acquiring multi-source satellite data and pre-processing to obtain a labeled data set and an unlabeled data set includes: reading and interpolating FY-4A spectral data; performing time matching on the interpolated FY-4A spectral data, CloudSat cloud classification data and Himawari-8 cloud classification data to obtain time mapping of the FY-4A spectral data and the CloudSat cloud classification data and the Himawari-8 cloud classification data; according to the time mapping, finding the corresponding CloudSat 2B-CLDCLASS data of the FY-4A spectral data to perform spatial matching and generate CloudSat labels and masks; according to the time mapping, finding the corresponding Himawari-8 L2 level CLP data to perform spatial matching and generate Himawari-8 labels and masks; performing radiation calibration on the interpolated FY-4A spectral data, calculating the mean and standard deviation of the brightness temperature and the brightness temperature difference, and generating a labeled data set with the FY-4A spectral data as the sample and the CloudSat and Himawari-8 cloud classification data as the label and an unlabeled data set with the FY-4A spectral data as the sample.
[0032] Specifically, in step 1-1, the FY-4A satellite base data is read and interpolated: according to the satellite data format, the 6.5 μm, 10.7 μm, 12.0 μm and 13.3 μm band spectral data are read and decoded to obtain a spectral data block, and the data block is interpolated into a regular network data of meteorological elements.
[0033] In step 1-2, the multi-source data is spatio-temporally matched to generate two kinds of labels and masks: the L1 level data of FY-4A, the CloudSat cloud classification data and the Himawari-8 cloud classification data are spatio-temporally matched to generate CloudSat labels and corresponding masks Himawari-8 labels generated by interpolation and the corresponding mask .
[0034] Step 1-2-1, Time matching FY-4A, CloudSat cloud classification data and Himawari-8 cloud classification data: First, time match the L1 level data of FY-4A and the CloudSat cloud classification data and the Himawari-8 cloud classification data, to obtain the time mapping of the FY-4A spectral data and the CloudSat cloud classification data and the Himawari-8 cloud classification data.
[0035] Step 1-2-2, Spatial matching, generating CloudSat labels and masks: According to the time mapping of step 1-2-1, find the corresponding CloudSat 2B-CLDCLASS data (single or multiple) of FY-4A satellite for spatial matching. First, according to the CloudSat satellite data format, read the time, cloud layer type data and latitude and longitude data of the polar orbit satellite track in the CloudSat cloud classification data, and convert the time to universal time. Traverse the track profile, select the cloud top type value in the spectral data range under the condition of cloud, and assign 0 value under the condition of no cloud, process the original multi-layer cloud data into single-layer cloud top type data; the cloud type data outside the spectral data range is ignored. Then, for all cloud top type data within the corresponding FY-4A spectral data start and end time, convert the FY-4A latitude and longitude grid to grid polygon, and perform spatial connection with the cloud classification data. Count the number of deep convective cloud regions in each grid, and mark the grid as a strong convective cloud cluster region when the number of deep convective clouds in the grid is greater than or equal to 4, otherwise as a non-strong convective cloud cluster region, to finally generate CloudSat-strong convective cloud cluster labels ; at the same time, the area outside the track profile and the default value in the profile are considered as invalid data, represented by 0, and the numerical part in the profile is considered as valid data, represented by 1, to generate a mask .
[0036] Step 1-2-3, Spatial matching, generating Himawari-8 labels and masks: According to the time mapping of step 1-2-1, find the corresponding Himawari-8 L2 level CLP data of FY-4A satellite for spatial matching. According to the Himawari-8 satellite data format, read the CLTYPE (cloud type) data block from the Himawari-8 L2 level CLP file, and interpolate it to a higher resolution latitude and longitude grid by the nearest neighbor interpolation method, that is, to a grid with the same size as the FY-4A latitude and longitude grid after interpolation in step 1-1, and regard the deep convective region therein as a strong convective region, to obtain Himawari-8-strong convective cloud cluster labels ; at the same time, the data that cannot identify the cloud type region and the default value region are considered as invalid data region, and a mask is generated .
[0037] Step 1-3, radiation calibration, calculate brightness temperature difference and corresponding mean and standard deviation, generate labeled data set and unlabeled data set: extract the calibration table of the corresponding waveband in the FY-4A spectral data block in step 1-1, process the spectral data block from the storage value to the brightness temperature value or the albedo through the calibration table, and obtain the channel 12 brightness temperature value with the center wavelength of 10.7 μm , and calculate the brightness temperature difference between channel 9 with the center wavelength of 6.5 μm and channel 12 , the brightness temperature difference between channel 13 with the center wavelength of 12.0 μm and channel 12 , and the brightness temperature difference between channel 14 with the center wavelength of 13.3 μm and channel 12 . Calculate the mean and standard deviation of the processed data, and finally generate a labeled data set with FY-4A spectral data as samples and CloudSat and Himawari-8 cloud classification data as labels, and an unlabeled data set with FY-4A spectral data as samples; Step 1-4, divide the labeled data set: divide the labeled data set L into training set , validation set and test set according to the proportions of 70%, 15% and 15%. The unlabeled data set remains unchanged, and all are part of the training data, while ensuring that the samples in U do not repeat with the samples in and .
[0038] Step 1-3-1, radiation calibration, calculate brightness temperature difference: according to step 1-1, obtain the interpolated digital storage value, read the radiation calibration table in the satellite HDF file , and through the radiation calibration table of each channel, the storage value of the visible / near-infrared waveband can be converted into albedo, and the storage value of the infrared waveband can be converted into brightness temperature. And calculate the brightness temperature difference between channel 9 and channel 12 , the brightness temperature difference between channel 13 and channel 12 , and the brightness temperature difference between channel 14 and channel 12 .
[0039] Step 1-3-2, calculate mean and standard deviation: according to the brightness temperature and brightness temperature difference obtained in step 1-3-1, calculate the mean and standard deviation of each brightness temperature and brightness temperature difference.
[0040] Step 1-3-3, generating a labeled dataset and an unlabeled dataset: according to the CloudSat labels and masks obtained in step 1-2-2 and the Himawari-8 labels and masks obtained in step 1-2-3, a labeled dataset and an unlabeled dataset are obtained . The samples of the labeled dataset are the brightness temperature and brightness temperature difference data corresponding to the label time, and each sample has two labels, respectively and . The unlabeled dataset is composed of the remaining unlabeled brightness temperature and brightness temperature difference data.
[0041] In one of the embodiments, the teacher network and the two student networks are three identical UNet networks, and the UNet network includes an encoder and a decoder. The UNet network is as shown in Figure 3 .
[0042] In one of the embodiments, the supervised training process includes: from the training sample set, a labeled training subset of a preset batch size is extracted in a batch training manner; after standard normalization is performed on the labeled training subset, the samples are stacked along the channel dimension; the stacked result is input into the encoders of the first student network and the second student network to obtain first encoder features and second encoder features; the first encoder features are input into the decoder of the first student network to perform label data feature reconstruction to obtain a first category distribution probability matrix; the second encoder features are input into the decoder of the second student network to perform label data feature reconstruction to obtain a second category distribution probability matrix; according to the first category distribution probability matrix, the labels and masks of CloudSat and Himawari, binary cross entropy loss calculation is performed to obtain a first supervision loss; according to the second category distribution probability matrix, the labels and masks of CloudSat and Himawari, binary cross entropy loss calculation is performed to obtain a second supervision loss; the first supervision loss and the second supervision loss are added to obtain a supervision loss.
[0043] In one of the embodiments, the unsupervised training process comprises: according to the unlabeled data set, adopting batch training, and batch extracting an unlabeled training subset; performing weak enhancement and two kinds of strong enhancement on the unlabeled training subset respectively, and then performing standard normalization processing to obtain a weak enhancement training subset, a first strong enhancement training subset and a second strong enhancement training subset; stacking the weak enhancement training subset, the first strong enhancement training subset and the second strong enhancement training subset along the channel dimension to obtain weak enhancement stacked features, first strong enhancement stacked features and second strong enhancement stacked features; inputting the weak enhancement stacked features, the first strong enhancement stacked features and the second strong enhancement stacked features into the encoders of the teacher network, the first student network and the second student network respectively to obtain teacher encoding features, first student encoding features and second student encoding features; taking the teacher encoding features, the first student encoding features and the second student encoding features as inputs of the decoders of the teacher network, the first student network and the second student network respectively, and performing unlabeled data feature reconstruction through the decoders to obtain a teacher network class distribution probability matrix, a first student network class distribution probability matrix and a second student network class distribution probability matrix; generating pseudo labels and masks according to the teacher network class distribution probability matrix by using a threshold method; performing binary cross entropy loss calculation according to the pseudo labels, the masks and the first student network class distribution probability matrix to obtain a first unsupervised loss; performing binary cross entropy loss calculation according to the pseudo labels, the masks and the second student network class distribution probability matrix to obtain a second unsupervised loss; and adding the first unsupervised loss and the second unsupervised loss to obtain an unsupervised loss.
[0044] In one of the embodiments, the threshold method is used to generate pseudo labels and masks according to the teacher network class distribution probability matrix, which comprises: dividing the first student network class distribution probability matrix by a temperature parameter, and then passing it through a Sigmoid activation function to obtain a binary classification probability; calculating the maximum value of the difference between the binary classification probability and 1 minus the binary classification probability, and comparing the maximum value with a preset threshold; marking the pixels greater than or equal to the preset threshold as 1, and marking the pixels less than the preset threshold as 0 to obtain a high confidence mask.
[0045] In one of the embodiments, the total loss is:
[0046] ;
[0047] wherein, the total loss is, the unsupervised loss is, the unsupervised loss weight is, the supervised loss is.
[0048] In one of the embodiments, the process of updating the student network parameters by using the stochastic gradient descent algorithm comprises:
[0049] According to the total loss, the error back propagation is carried out by the stochastic gradient descent algorithm, and the network parameters of and are updated and the unsupervised loss weight , and the student network parameter update formula is:
[0050] ;
[0051] Wherein, is the network parameter to be updated, is the learning rate, is the partial derivative of the loss function to the parameter, which is used to indicate the adjustment direction of the parameter.
[0052] In one of the embodiments, the process of updating the student network parameter by using the exponential moving average algorithm includes: weighted average of two student network parameters, exponential moving average is used to update the teacher network parameter; The teacher network parameter update formula is:
[0053] ;
[0054] ;
[0055] Wherein, is the decay rate; is the weighted average value of the two student network parameters, , are two student network parameters, is the student network parameter weight, is the current teacher network parameter, is the last round of teacher network parameter.
[0056] Specifically, step 2-1, using three same UNet networks, a teacher-double student network model is constructed, and the initialization is as follows: the teacher network and the two student networks use UNet network, the encoder and decoder of the network are constructed, and the training parameters of the network are initialized by using Orthogonal orthogonal , and , set the unsupervised loss item weight . Initialize the network hyperparameters.
[0057] Step 2-1-1, construct the encoder Encoder: the encoder Encoder is composed of an input module and four down-sampling modules. The data batch size of the input encoder is B, the channel number is C1, the height is H1, and the width is W1. The output after the encoder is a feature map with batch size B, channel number C2, height H2 and width W2.
[0058] Step 2-1-1-1, construct the input module : The input module consists of two convolution blocks before and after , respectively and Each convolution block contains a convolution layer , one layer and an activation layer , where the convolutional layer Convolution kernel size , convolution step size , fill size , filling method .
[0059] The output as Input; output feature map number =64, output feature map width .
[0060] Step 2-1-1-2, construct the downsampling module : The downsampling module includes a pooling layer and two convolutional blocks , respectively and . The pooling kernel of the pooling layer , pooling step size Each convolution block contains a convolution layer , one layer and an activation layer , where the convolutional layer Convolution kernel size , convolution step size , fill size , filling method .
[0061] The output as Input, The output as Input; output feature map number =128, output feature map width .
[0062] Step 2-1-1-3, construct the downsampling module : The downsampling module includes a pooling layer and two convolutional blocks , respectively and . The pooling kernel of the pooling layer , pooling step size Each convolution block contains a convolution layer , a normalization layer and an activation layer , wherein the convolution layer has a convolution kernel size , a convolution stride , a padding size and a padding method .
[0063] The output of is taken as the input of , and the output of is taken as the input of ; the number of output feature maps = 256, and the output feature map width .
[0064] Step 2-1-1-4, constructing a down-sampling module : The down-sampling module includes a pooling layer and two convolution blocks , respectively denoted as and . The pooling layer has a pooling kernel and a pooling stride . Each convolution block contains a convolution layer , a normalization layer and an activation layer , wherein the convolution layer has a convolution kernel size , a convolution stride , a padding size and a padding method .
[0065] The output of is taken as the input of , and the output of is taken as the input of ; the number of output feature maps = 512, and the output feature map width .
[0066] Step 2-1-1-5, constructing a down-sampling module : The down-sampling module includes a pooling layer and two convolution blocks , respectively denoted as and . The pooling layer has a pooling kernel and a pooling stride . Each convolution block contains a convolution layer , a normalization layer and an activation layer , where the convolutional layer Convolution kernel size , convolution step size , fill size , the filling method is .
[0067] The output as Input, The output as Input; output feature map number =1024, output feature map width .
[0068] Step 2-1-2: Construct the decoder. The decoder consists of four upsampling modules and an output module. The input data to the decoder is the feature map output from step 2-1-1 with batch size B, number of channels C2, height H2, and width W2, as well as the output feature map of the downsampling layer corresponding to the upsampling layer. The output after passing through the decoder is a probability distribution with batch size B, number of channels C3, height H3, and width W3.
[0069] Step 2-1-2-1, construct upsampling module : The upsampling module includes an interpolation upsampling layer and two convolutional blocks , respectively and .in Space multiples , upsampling algorithm Each convolution block contains a convolution layer , one layer and an activation layer , where the convolutional layer Convolution kernel size , convolution step size , fill size , the filling method is .
[0070] The input is According to the output of and The difference in the output feature map size will be The output feature map is padded to The same size, and then superimpose the two along the channel dimension, and the output superimposed feature map is used as Input, The output as Input; output feature map number =512, output feature map width .
[0071] Step 2-1-2-2, construct upsampling module : The upsampling module includes an interpolation upsampling layer and two convolutional blocks , respectively and .in Space multiples , upsampling algorithm Each convolution block contains a convolution layer , one layer and an activation layer , where the convolutional layer Convolution kernel size , convolution step size , fill size , the filling method is .
[0072] The input is According to the output of and The difference in the output feature map size will be The output feature map is padded to The same size, and then superimpose the two along the channel dimension, and the output superimposed feature map is used as Input, The output is Input; output feature map number =256, output feature map width .
[0073] Step 2-1-2-3, construct upsampling module : The upsampling module includes an interpolation upsampling layer and two convolutional blocks , respectively and .in Space multiples , upsampling algorithm Each convolution block contains a convolution layer , one layer and an activation layer , where the convolutional layer Convolution kernel size , convolution step size , fill size , the padding method is .
[0074] The input of the output of . According to the difference between the feature map sizes of and , the output feature map of is padded to the same size as , and then the two are stacked along the channel dimension, and the stacked feature map is output as the input of , the output of is input into ; the number of output feature maps =128, and the output feature map width .
[0075] Step 2-1-2-4, construct the up-sampling module : The up-sampling module includes an interpolation up-sampling layer and two convolutional blocks , respectively denoted as and . Among them, the spatial multiple of is , and the up-sampling algorithm is . Each convolutional block includes a convolutional layer , a normalization layer and an activation layer , wherein the convolutional layer has a convolutional kernel size , a convolutional step size , and a padding size , and the padding method is .
[0076] The input of the output of . According to the difference between the feature map sizes of and , the output feature map of is padded to the same size as , and then the two are stacked along the channel dimension, and the stacked feature map is output as the input of , the output of is input into ; the number of output feature maps =64, and the output feature map width .
[0077] Step 2-1-2-5, construct the output module : The output module is a convolutional layer with a convolutional kernel .
[0078] input is the output of ; the number of output feature maps =1, the output feature map width .
[0079] Step 2-1-3, initialize network parameters and hyperparameters: initialize network parameters, and use Orthogonal orthogonal initialization for all parameters in the network model; initialize model hyperparameters, and use a random gradient descent optimizer to train the model, set the parameter of the size of a batch of data added to the training in the labeled data set , set the parameters of the relative sizes of the labeled data set and the unlabeled data set , the weak noise intensity coefficient , the strong noise intensity coefficient , the channel importance weight , the sharpening intensity , the temperature parameter , the pseudo-label confidence threshold , the learning rate , the maximum number of iterations for training , the student network parameter weight , the decay rate of the exponential moving average .
[0080] Step 2-2, supervised training and calculation of supervised loss: use the labeled training set obtained from step 1-4 , use batch training, and extract a labeled training subset with a size of , standardize and stack along the channel dimension, and input into and for supervised training with CloudSat data and Himawari-8 data as labels, respectively, and calculate the supervised loss and , respectively, using the two labels as true values, and obtain the supervised loss .
[0081] Step 2-2-1, normalize and splice label data: for the labeled training data set obtained in step 1-4 , extract a labeled training subset with a size of , and extract the multi-channel sample , . According to the mean and standard deviation of each channel obtained in step 1-3-2, standardize each channel. Then stack the normalized data along the channel dimension to obtain , [ ] represents the splicing of multiple channel data, the size of the spliced sample data remains unchanged, and the number of channels is expanded to four times the original number, and the superimposed data is respectively input into and .
[0082] Step 2-2-2, extract label data features: after obtaining the multi-channel data in step 2-2-1, input the data into the encoder Encoder of the network, first extract the features through the input layer, then perform convolution on the output (initially ) of the previous stage and the corresponding convolution kernel , batch standardization , activation , maximum pooling , repeat four times, and finally output the encoder feature , the calculation formula is as follows:
[0083] First convolution: ;
[0084] Second convolution: ;
[0085] Downsampling: ;
[0086] Wherein, represents the encoder located at the jth level, represents the jth downsampling, is the scaling factor, is the translation factor.
[0087] Step 2-2-3, reconstruct the label data features: according to the features obtained in step 2-2-2, input the features into the network decoder Decoder, fuse the output (initially ) of the previous stage and the corresponding features, and perform convolution, batch normalization, activation, and repeat four times. Then, through the output layer convolution, finally obtain the class distribution probability matrix, and the calculation formula is as follows:
[0088] Upsampling: ;
[0089] First convolution: ;
[0090] Second convolution: ;
[0091] Output layer: ;
[0092] Wherein, denotes the upsampling at the i-th level, is a scaling factor, is a translation factor.
[0093] are output by and respectively. and two results.
[0094] Step 2-2-4, calculate the supervised loss and , get the supervised loss : get and by step 2-2-3, according to the labels and masks of CloudSat and Himawari, respectively, calculate the binary cross entropy loss, the calculation method is as follows:
[0095] ,
[0096] ,
[0097] ;
[0098] wherein, is the Sigmoid activation function. and represent the labels and masks of CloudSat, and represent the labels and masks of Himawari. denotes the batch size of the label data.
[0099] Step 2-3, unsupervised training and calculating unsupervised loss: take the unlabeled training data set obtained from step 1-3-3 , adopt the batch training method, and extract an unlabeled training subset with a size of in batches. After the data are respectively subjected to weak enhancement and two kinds of strong enhancement, and then respectively subjected to standard normalization and superposition along the channel dimension, they are input into , and , respectively. The output results of the network are judged by the threshold to generate high-confidence pseudo labels. and generate and respectively. With the pseudo labels generated by the network as the true value, the unsupervised losses and , to obtain the unsupervised loss term . Finally, according to the weight of the unsupervised loss term , the total loss is calculated.
[0100] Step 2-3-1, enhancing, normalizing and splicing unlabeled data: for the unlabeled training data set obtained in step 1-3-3 , a batch of unlabeled training subsets with a size of are extracted, and the multi-channel samples , in them are extracted. After the data are subjected to weak enhancement and two kinds of strong enhancement respectively, according to the mean and standard deviation of each channel obtained in 1-3-2, the standard normalization of each channel is performed. Then the normalized data are stacked along the channel dimension to obtain , and , respectively. [ ] represents the splicing of multiple channel data, the size of the spliced sample data remains unchanged, and the number of channels is expanded to four times the original number. Then the three kinds of data are respectively input into
[0101] Step 2-3-1-1, batch extraction of unlabeled training subsets: the unlabeled training data set obtained in step 1-3-3 , a batch of unlabeled training subsets with a size of are extracted, and the multi-channel samples , in them are extracted.
[0102] Step 2-3-1-2, weak enhancement of unlabeled data: according to the obtained in step 2-3-1-1, first, the data are randomly rotated by 0°, 90°, 180° and 270°. Then weak noise is injected into the data to obtain the weakly enhanced data , and the calculation formula is as follows:
[0103] ;
[0104] wherein represents the channel data, represents the number of rotations (90° each time), is the weak noise intensity coefficient, represents a normally distributed noise with a mean of 0 and a standard deviation of times the standard deviation of the data. The weak enhancement flow chart is shown in Figure 4 .
[0105] Step 2-3-1-3, dynamic noise enhancement of unlabeled data: according to the data obtained in step 2-3-1-1 , first, the data is randomly rotated by 0°, 90°, 180°, and 270° through random rotation. Then, dynamic noise based on band importance is added to the data respectively , the noise intensity is inversely proportional to the importance of the band. To ensure the noise intensity, the maximum and minimum noise and are set. The data obtained after enhancement is , and the calculation formula is as follows:
[0106] ;
[0107] ;
[0108] wherein, represents the data of the cth channel, represents the importance weight of the cth channel, and represent the maximum and minimum noise, is the strong noise intensity coefficient. represents a normally distributed noise with a mean of 0 and a standard deviation of . The dynamic noise enhancement flow chart is shown in . Figure 5
[0109] Step 2-3-1-4, spectral sharpening enhancement of unlabeled data: according to the data obtained in step 2-3-1-1 , first, the data is randomly rotated by 0°, 90°, 180°, and 270° through random rotation. Then, two channels are added to the two sides of the multi-channel data along the channel dimension in a reflective padding manner. A one-dimensional sharpening kernel is constructed, and the spectral features of different bands of each pixel are sharpened by sliding the sharpening kernel along the channel direction to enhance the data , and the calculation formula is as follows:
[0110] ; ;
[0111] wherein, represents the data of the cth channel, represents the sharpening intensity. The spectral sharpening enhancement flow chart is shown in . Figure 6
[0112] Step 2-3-1-5, normalization and splicing of unlabeled data: according to the mean and standard deviation of each channel obtained in step 1-3-2 , the weak enhancement and the strong enhancement results for each channel are obtained by step 2-3-1-2, step 2-3-1-3, step 2-3-1-4. Each enhancement result is normalized by standardization, and then the normalized data is stacked along the channel dimension to obtain , [ ] represents the splicing of multiple channel data, the size of the spliced sample data remains unchanged, and the number of channels is expanded to four times the original number. Then, the three kinds of data are respectively input into , and . The enhancement effect is shown in Figure 7 , the first column in Figure 7 is the original image, the second column is the weak enhancement effect image, the third column is the Cloudsat enhancement effect image, and the fourth column is the Himawari enhancement effect image.
[0113] Step 2-3-2, extract the feature of unlabeled data: after obtaining the enhanced multi-channel data in step 2-3-1, input the data into the encoder Encoder of the network, first extract the feature through the input layer, then perform convolution on the output (initially ) and the corresponding convolution kernel , batch standardization , activation , maximum pooling , repeat four times, and finally output the encoder feature , the calculation formula is as follows:
[0114] First convolution: ;
[0115] Second convolution: ;
[0116] Downsampling: .
[0117] Wherein, represents the encoder located at the jth level, represents the jth level of downsampling, is the scaling factor, is the translation factor.
[0118] Step 2-3-3, reconstruct the feature of unlabeled data: according to the feature obtained in step 2-3-2, input the feature into the network decoder Decoder, fuse the output (initially ) and the corresponding feature, and then perform convolution, batch normalization, activation, and repeat four times. Then, through the output layer convolution, finally obtain the category distribution probability matrix, and the calculation formula is as follows:
[0119] Up-sampling: ;
[0120] First convolution: ;
[0121] Second convolution: ;
[0122] Output layer: .
[0123] wherein, denotes the up-sampling at the jth stage, is a scaling factor, is a shift factor.
[0124] Three results, , and are output respectively. , and
[0125] Step 2-3-4, threshold method generates pseudo label: according to the obtained in 2-3-3, first, divide by the temperature parameter (pseudo label temperature) to control the smoothness of the probability distribution, and obtain . Then through the Sigmoid activation function, the probability of binary classification is obtained, and the maximum of and is calculated, and the maximum is compared with the threshold , greater than or equal to the threshold, the pixel is marked as 1, otherwise 0, to obtain the high confidence mask , the calculation formula is as follows:
[0126] ;
[0127] ;
[0128]
[0129] Step 2-3-5, calculate unsupervised loss and , get unsupervised loss term and total loss : according to step 2-3-3, obtain and , according to step 2-3-4, obtain pseudo label and mask , and perform binary cross entropy loss calculation to obtain unsupervised loss and , add up to get the supervision loss term , and then through the loss term weight Weighted summation gives the total loss , calculated as follows:
[0130] ;
[0131] ;
[0132] ;
[0133] ;
[0134] in, , is the Sigmoid activation function. and Represents the pseudo labels generated by the teacher network and mask . Indicates the batch size of unlabeled data .
[0135] Step 2-4, update network parameters: According to the total loss obtained in step 2-3, back propagate the error through the stochastic gradient descent algorithm, update the student network parameters, and use the weighted average parameter The average of the two student network parameters is calculated, and the teacher network parameters are updated using the exponential moving average algorithm. After every five iterations, the validation sample set is input into the student network to evaluate the current model performance and save the best model.
[0136] Step 2-4-1, the stochastic gradient descent algorithm updates the student network parameters: according to the loss obtained in step 2-3 , error back propagation is performed through the stochastic gradient descent algorithm to update and Network parameters , and the unsupervised loss weight , the update formula is as follows:
[0137] ;
[0138] in, are the network parameters to be updated, is the learning rate, It is the bias vector of the loss function on the parameter, indicating the adjustment direction of the parameter.
[0139] Step 2-4-2, exponential moving average algorithm updates teacher network parameters: through student network parameter weight The weighted calculation of the student network parameter average, the application of the exponential moving average to update the teacher network parameters, and the calculation formula are as follows:
[0140] ;
[0141] ;
[0142] wherein, is the decay rate, which is generally set to 0.99 or 0.999.
[0143] Step 2-4-3, save network parameters: input the verification sample set into the student network every five iterations, evaluate the current model effect, and save the best model.
[0144] It should be understood that, although Figure 1 the steps in the flowchart of the method are displayed in sequence according to the direction of the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, Figure 1 At least part of the steps in may include multiple sub-steps or multiple stages, which are not necessarily executed at the same time, but can be executed at different times, and the execution order of these sub-steps or stages is not necessarily sequential, but can be alternately executed with other steps or at least part of the sub-steps or stages of other steps.
[0145] In one embodiment, a strong convective cloud cluster identification device based on a teacher-double student network is provided, comprising a training sample determination module, a model construction and training module, and a strong convective cloud cluster identification module, wherein:
[0146] The training sample determination module is configured to obtain multi-source satellite data and perform preprocessing to obtain a labeled data set and an unlabeled data set, and divide the labeled data set into a training sample set, a test sample set, and a verification sample set.
[0147] The model construction and training module is configured to construct and train a severe convective cloud cluster recognition model. The severe convective cloud cluster recognition model is a teacher-student network model, which includes one teacher network and two student networks with the same structure. The training process of the severe convective cloud cluster recognition model is in a semi-supervised manner. The training process specifically includes: supervised training of the two student networks by using a training sample set, and calculation of a supervised loss; unsupervised training of the teacher network and the two student networks by using an unlabeled data set, and calculation of an unsupervised loss; determination of a total loss according to the supervised loss and the unsupervised loss; updating of the student network parameters and the teacher network parameters by using a stochastic gradient descent algorithm and an exponential moving average algorithm according to the total loss, respectively; testing of the trained severe convective cloud cluster recognition model by using a verification sample, fine-tuning of the student network parameters and the teacher network parameters, and obtaining of the trained teacher network and student networks.
[0148] The severe convective cloud cluster recognition module is configured to input data in a test sample set into the trained teacher network to obtain a severe convective cloud cluster recognition result.
[0149] In one of the embodiments, the training sample determination module is further configured to read and interpolate FY-4A spectral data; perform time matching on the interpolated FY-4A spectral data, CloudSat cloud classification data, and Himawari-8 cloud classification data to obtain time mapping of the FY-4A spectral data and the CloudSat cloud classification data and the Himawari-8 cloud classification data; perform spatial matching on the CloudSat 2B-CLDCLASS data corresponding to the FY-4A spectral data according to the time mapping to generate CloudSat labels and masks; perform spatial matching on the corresponding Himawari-8 L2-level CLP data according to the time mapping to generate Himawari-8 labels and masks; perform radiation calibration on the interpolated FY-4A spectral data, and calculate the mean and standard deviation of the brightness temperature and the brightness temperature difference to generate a label data set with the FY-4A spectral data as samples and the CloudSat and Himawari-8 cloud classification data as labels, and an unlabeled data set with the FY-4A spectral data as samples.
[0150] In one of the embodiments, the teacher network and the two student networks in the model construction and training module are three identical UNet networks, and the UNet network includes an encoder and a decoder.
[0151] In one of the embodiments, the supervised training process in the model construction and training module includes: adopting batch training from the training sample set, batch extracting a label training subset with a preset batch size; performing standard normalization on the label training subset and then stacking along the channel dimension; inputting the stacking result into the encoders of the first student network and the second student network to obtain first encoder features and second encoder features; inputting the first encoder features into the decoder of the first student network to perform label data feature reconstruction to obtain a first category distribution probability matrix; inputting the second encoder features into the decoder of the second student network to perform label data feature reconstruction to obtain a second category distribution probability matrix; performing binary cross entropy loss calculation according to the first category distribution probability matrix, the labels and masks of CloudSat and Himawari to obtain a first supervision loss; performing binary cross entropy loss calculation according to the second category distribution probability matrix, the labels and masks of CloudSat and Himawari to obtain a second supervision loss; and adding the first supervision loss and the second supervision loss to obtain a supervision loss.
[0152] In one of the embodiments, the unsupervised training process in the model construction and training module includes: according to the unlabeled data set, adopting batch training to batch extract an unlabeled training subset; performing standard normalization on the unlabeled training subset after weak enhancement and two kinds of strong enhancement to obtain a weak enhancement training subset, a first strong enhancement training subset and a second strong enhancement training subset; stacking the weak enhancement training subset, the first strong enhancement training subset and the second strong enhancement training subset along the channel dimension to obtain weak enhancement stacking features, first strong enhancement stacking features and second strong enhancement stacking features; inputting the weak enhancement stacking features, the first strong enhancement stacking features and the second strong enhancement stacking features into the encoders of the teacher network, the first student network and the second student network to obtain teacher encoding features, first student encoding features and second student encoding features; inputting the teacher encoding features, the first student encoding features and the second student encoding features as inputs of the decoders of the teacher network, the first student network and the second student network, respectively, to perform unlabeled data feature reconstruction through the decoders to obtain a teacher network category distribution probability matrix, a first student network category distribution probability matrix and a second student network category distribution probability matrix; generating pseudo labels and masks by threshold method according to the teacher network category distribution probability matrix; performing binary cross entropy loss calculation according to the pseudo labels, the masks and the first student network category distribution probability matrix to obtain a first unsupervised loss; performing binary cross entropy loss calculation according to the pseudo labels, the masks and the second student network category distribution probability matrix to obtain a second unsupervised loss; and adding the first unsupervised loss and the second unsupervised loss to obtain an unsupervised loss.
[0153] In one embodiment, the model building and training module is further used to divide the first student network category distribution probability matrix by the temperature parameter and then obtain the binary classification probability through the Sigmoid activation function; calculate the maximum value of the binary classification probability and the difference between 1 and the binary classification probability, and compare the maximum value with a preset threshold; mark pixels greater than or equal to the preset threshold as 1, and mark pixels less than the preset threshold as 0, to obtain a high confidence mask.
[0154] In one embodiment, the total loss in the model building and training module is:
[0155] ;
[0156] in, Loss is the total loss, is the unsupervised loss, is the unsupervised loss weight, To monitor losses.
[0157] In one embodiment, the process of updating the student network parameters using the stochastic gradient descent algorithm includes:
[0158] According to the total loss, the error is back-propagated through the stochastic gradient descent algorithm to update and Network parameters and unsupervised loss weights , the student network parameter update formula is: ;
[0159] in, are the network parameters to be updated, is the learning rate, It is the bias vector of the loss function on the parameter, which is used to indicate the adjustment direction of the parameter.
[0160] In one embodiment, the model building and training module is further used to perform a weighted average of the two student network parameters and update the teacher network parameters using an exponential moving average; the teacher network parameter update formula is:
[0161] ;
[0162] ;
[0163] in, is the decay rate; is the weighted average of the two student network parameters, 、 are the two student network parameters respectively, is the student network parameter weight, is the current teacher network parameter, teacher network parameters of the previous round.
[0164] For specific limitations of the strong convective cloud cluster identification apparatus based on the teacher-double student network, reference can be made to the limitations of the strong convective cloud cluster identification method based on the teacher-double student network in the foregoing, which will not be described herein again. Each module in the strong convective cloud cluster identification apparatus based on the teacher-double student network can be realized by software, hardware, and a combination thereof in whole or in part. Each module described above can be embedded in or independent of a processor in a computer device in hardware form, or can be stored in a memory in a computer device in software form, so as to be called and executed by a processor to perform the operations corresponding to each module.
[0165] Each technical feature of the above embodiments can be combined arbitrarily. To make the description concise, all possible combinations of each technical feature in the above embodiments are not described, however, as long as the combination of the technical features does not exist contradictory, it should be considered as the scope of the present disclosure.
[0166] The above embodiments only express several implementation manners of the present application, and the description is more specific and detailed, but it should not be understood as a limitation on the scope of the present application. It should be pointed out that, for those skilled in the art, without departing from the concept of the present application, a number of modifications and improvements can be made, which are all within the protection scope of the present application.
Claims
1. A severe convective cloud identification method based on a teacher-student network, characterized by: The method comprises: Acquire multi-source satellite data and perform preprocessing to obtain a labeled dataset and an unlabeled dataset, and divide the labeled dataset into: a training sample set, a validation sample set, and a test sample set; A strong convective cloud recognition model is constructed and trained; the strong convective cloud recognition model is a teacher-dual student network model, including a teacher network and two student networks with identical structures; the training process of the strong convective cloud recognition model is semi-supervised; the training process specifically includes: using a training sample set to perform supervised training on the two student networks and calculating the supervised loss; using an unlabeled data set to perform unsupervised training on the teacher network and the two student networks and calculating the unsupervised loss; determining the total loss based on the supervised loss and the unsupervised loss; using a stochastic gradient descent algorithm to update the student network parameters based on the total loss, and using an exponential moving average algorithm to update the teacher network parameters; using a verification sample to test the trained strong convective cloud recognition model, and fine-tuning the student network parameters and the teacher network parameters to obtain trained teacher network and student network; The data in the test sample set is input into the trained teacher network to obtain the severe convective cloud cluster recognition result.
2. The method for identifying severe convective clouds based on a teacher-student network according to claim 1 is characterized in that: Acquire multi-source satellite data and preprocess them to obtain labeled and unlabeled datasets, including: Read and interpolate FY-4A spectral data; The interpolated FY-4A spectral data, CloudSat cloud classification data, and Himawari-8 cloud classification data are time-matched to obtain the time mapping between the FY-4A spectral data, CloudSat cloud classification data, and Himawari-8 cloud classification data. Based on the time mapping, the CloudSat 2B-CLDCLASS data corresponding to the FY-4A spectral data are searched for spatial matching to generate CloudSat labels and masks; According to the time mapping, find the corresponding Himawari-8 L2 level CLP data for spatial matching and generate Himawari-8 labels and masks; The interpolated FY-4A spectral data are radiometrically calibrated, and the mean and standard deviation of the brightness temperature and brightness temperature difference are calculated. A labeled dataset with FY-4A spectral data as samples and CloudSat and Himawari-8 cloud classification data as labels and an unlabeled dataset with FY-4A spectral data as samples are generated.
3. The method for identifying severe convective clouds based on a teacher-student network according to claim 1, characterized in that: The teacher network and the two student networks are three identical UNet networks, and the UNet network includes an encoder and a decoder.
4. The method for identifying severe convective clouds based on a teacher-student network according to claim 3 is characterized in that: The supervised training process includes: Batch training is used to extract label training subsets of a preset batch size from the training sample set; Performing standard normalization on the label training subset and then superimposing them along the channel dimension; Input the superposition result into the encoders of the first student network and the second student network to obtain the first encoder feature and the second encoder feature; Input the first encoder feature into the decoder of the first student network to reconstruct the label data feature to obtain the first category distribution probability matrix; Input the second encoder features into the decoder of the second student network to reconstruct the label data features to obtain the second category distribution probability matrix; Calculate the binary cross entropy loss based on the first category distribution probability matrix, the labels and masks of CloudSat and Himawari to obtain the first supervised loss; According to the second category distribution probability matrix, the labels and masks of CloudSat and Himawari, a binary cross entropy loss is calculated to obtain the second supervision loss; The first supervised loss and the second supervised loss are added together to obtain the supervised loss.
5. The method for identifying severe convective clouds based on a teacher-student network according to claim 3, characterized in that: The unsupervised training process includes: Based on the unlabeled dataset, unlabeled training subsets are extracted in batches using a batch training method; The unlabeled training subset is subjected to weak enhancement and two strong enhancements, and then subjected to standard normalization processing to obtain a weak enhancement training subset, a first strong enhancement training subset, and a second strong enhancement training subset; Superimposing the weakly enhanced training subset, the first strongly enhanced training subset, and the second strongly enhanced training subset along the channel dimension to obtain weakly enhanced superposition features, first strongly enhanced superposition features, and second strongly enhanced superposition features; Inputting the weakly enhanced superposition feature, the first strongly enhanced superposition feature, and the second strongly enhanced superposition feature into the encoders of the teacher network, the first student network, and the second student network, respectively, to obtain a teacher encoding feature, a first student encoding feature, and a second student encoding feature; The teacher coding feature, the first student coding feature, and the second student coding feature are used as inputs of decoders of the teacher network, the first student network, and the second student network, respectively, and unlabeled data features are reconstructed by the decoders to obtain a teacher network category distribution probability matrix, a first student network category distribution probability matrix, and a second student network category distribution probability matrix; Generate pseudo labels and masks using a threshold method based on the teacher network category distribution probability matrix; Performing a binary cross entropy loss calculation based on the pseudo-label, the mask, and the first student network category distribution probability matrix to obtain a first unsupervised loss; Calculating a binary cross entropy loss based on the pseudo label, the mask, and the second student network category distribution probability matrix to obtain a second unsupervised loss; The first unsupervised loss and the second unsupervised loss are added together to obtain an unsupervised loss.
6. The method for identifying severe convective clouds based on a teacher-student network according to claim 5, characterized in that: Generate pseudo labels and masks using a threshold method based on the teacher network category distribution probability matrix, including: The first student network category distribution probability matrix is divided by the temperature parameter and then activated by the Sigmoid function to obtain the binary classification probability; Calculating a maximum value of a difference between the binary classification probability and 1 minus the binary classification probability, and comparing the maximum value with a preset threshold; Pixels with a value greater than or equal to a preset threshold are marked as 1, and pixels with a value less than the preset threshold are marked as 0, thereby obtaining a high-confidence mask.
7. The method for identifying severe convective clouds based on a teacher-student network according to claim 1, characterized in that: The total loss is: in, Loss is the total loss, is the unsupervised loss, is the unsupervised loss weight, To monitor losses.
8. The method for identifying severe convective clouds based on a teacher-student network according to claim 1, characterized in that: The process of updating the student network parameters using the stochastic gradient descent algorithm includes: According to the total loss, the error is back-propagated through the stochastic gradient descent algorithm to update and Network parameters , and the unsupervised loss weight , the student network parameter update formula is: in, are the network parameters to be updated, is the learning rate, It is the bias vector of the loss function on the parameter, which is used to indicate the adjustment direction of the parameter.
9. The method for identifying severe convective clouds based on a teacher-student network according to claim 1, characterized in that: The process of updating the teacher network parameters using the exponential moving average algorithm includes: The two student network parameters are weighted averaged, and the teacher network parameters are updated using exponential moving average. The teacher network parameter update formula is: ; in, is the decay rate; is the weighted average of the two student network parameters, 、 are the two student network parameters respectively, is the student network parameter weight, is the current teacher network parameter, are the teacher network parameters of the previous round.
10. A severe convective cloud cluster identification device based on a teacher-student network, characterized in that: The device comprises: The training sample determination module is used to obtain multi-source satellite data and perform preprocessing to obtain a labeled data set and an unlabeled data set, and divide the labeled data set into: a training sample set, a test sample set, and a validation sample set; A model construction and training module is used to construct a strong convective cloud cluster recognition model and perform training; the strong convective cloud cluster recognition model is a teacher-dual student network model, including a teacher network and two student networks with the same structure; the training process of the strong convective cloud cluster recognition model is a semi-supervised method; the training process specifically includes: using a training sample set to supervise the two student networks and calculate the supervised loss; using an unlabeled data set to unsupervisedly train the teacher network and the two student networks and calculate the unsupervised loss; determining the total loss based on the supervised loss and the unsupervised loss; using a stochastic gradient descent algorithm to update the student network parameters based on the total loss, using an exponential moving average algorithm to update the teacher network parameters, using a verification sample to test the trained strong convective cloud cluster recognition model, and fine-tuning the student network parameters and the teacher network parameters to obtain trained teacher network and student network; The strong convective cloud cluster recognition module is used to input the data in the test sample set into the trained teacher network to obtain the strong convective cloud cluster recognition result.
Citation Information
Patent Citations
Hyperspectral image classification method and system based on dual-student network collaborative learning
CN118230067A
Domain adaptation semantic segmentation method and system based on deep learning
CN120198661A