Near-surface wind speed prediction method based on self-supervised neural network
By using the WindNet model with a self-supervised neural network and combining it with the CMIP6 dataset for two-stage training and data cleaning, the problem of wind speed prediction difficulties caused by global climate models is solved, the accuracy and reliability of near-surface wind speed prediction are improved, and wind energy stability assessment is supported.
Patent Information
- Application Number
- CN202510296859.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-13
- Publication Date
- 2026-01-13
AI Technical Summary
Existing wind speed data is affected by factors such as low resolution of global climate models, large parametric simulation errors, and uncertainty of truncation errors, which makes it difficult to reconstruct and predict the spatial distribution of near-surface wind speeds, affecting the assessment of wind energy stability and reliability, and increasing the uncertainty of scientific research and policy making.
The WindNet model, employing a self-supervised neural network structure, is used for near-surface wind speed prediction through a two-stage training strategy, including self-supervised pre-training and fine-tuning training. Data cleaning and quality assessment are performed using the CMIP6 dataset. Encoder and Decoder modules are used to extract spatial distribution features of wind speed, and the model is optimized using mean squared error and Adam optimization algorithms.
It improves the accuracy of near-surface wind speed prediction, corrects the simulation bias of global climate models, enhances the accuracy of wind speed prediction, and facilitates the effectiveness of wind energy assessment and scientific research.
Smart Images

Figure CN121328262A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of surface wind speed prediction, and particularly relates to a near-surface wind speed prediction method based on a self-supervised neural network. BACKGROUND
[0002] The existing wind speed data is affected by many factors such as low resolution of global climate models (GCMs), large parameterization simulation errors, and high truncation error uncertainty, which makes it difficult to reconstruct and predict the spatial distribution of near-surface wind speed, and further makes the conclusions related to wind have great uncertainty. Such uncertainty can seriously affect the evaluation of wind energy stability and reliability. At the same time, it also increases the uncertainty of scientific research and affects the effectiveness of policy making and practical application. Therefore, it is necessary to design a near-surface wind speed prediction method based on a self-supervised neural network. SUMMARY
[0003] In order to overcome the shortcomings of the prior art, the purpose of the present application is to provide a near-surface wind speed prediction method based on a self-supervised neural network.
[0004] To achieve the above purpose, the present application provides the following scheme:
[0005] The present application provides a near-surface wind speed prediction method based on a self-supervised neural network, comprising:
[0006] constructing a near-surface wind speed prediction model;
[0007] training the near-surface wind speed prediction model based on a preset data set;
[0008] predicting the near-surface wind speed based on the trained model.
[0009] Preferably, the near-surface wind speed prediction model is a WindNet model, which is composed of an Encoder module and a Decoder module.
[0010] Preferably, the preset data set is a CMIP6 data set.
[0011] Preferably, the near-surface wind speed prediction model is trained based on the preset data set, specifically:
[0012] pre-training the near-surface wind speed prediction model based on a self-supervised method;
[0013] fine-tuning the pre-trained near-surface wind speed prediction model.
[0014] Preferably, the near-surface wind speed prediction model is pre-trained based on a self-supervised method, specifically:
[0015] The CMIP6 dataset was acquired and cleaned. The near-surface daily average wind speed data in the cleaned CMIP6 dataset were divided into a series of regular and non-overlapping patch sets. A uniform distribution strategy was adopted to randomly select some patches for masking processing according to a sampling ratio of 0.5.
[0016] The processed patch is converted into tokens, and position encoding is added during the conversion process. The tokens are then sent to the Encoder module.
[0017] The feature map output by the Encoder module is parsed and reconstructed into a patch that matches the original input size. In the decoding stage, a residual connection mechanism is introduced to merge the input patch with the feature map generated by the Encoder module. The merged features are then converted back into tokens and a position index is added for the Decoder module to decode.
[0018] During the pre-training process, we used mean squared error as the loss function, which is:
[0019]
[0020] In the formula, y represents the predicted wind speed due to shading from the model. masked,j The value represents the actual wind speed observation that was blocked, and M represents the number of blocked observations.
[0021] Preferably, the pre-trained near-surface wind speed prediction model is fine-tuned, specifically as follows:
[0022] Based on the pre-trained model parameters, the daily average wind speed matrix in the CMIP6 dataset is converted into a token vector according to the pre-trained transformation method, and then input into the near-surface wind speed prediction model to complete the reconstruction of the wind speed data.
[0023] The loss function for fine-tuning training is defined as follows:
[0024]
[0025] In the formula, and y i These represent the wind speed values predicted by the model and the actual observed values, respectively, and N is the number of wind speed observation points in the entire study area;
[0026] During fine-tuning training, the Adam optimization algorithm is used to update parameters, and the learning rate is dynamically adjusted during training. The batch size during training is set to 16.
[0027] Preferably, the data cleaning steps for the CMIP6 dataset include:
[0028] The data in the CMIP6 dataset is initially formatted and standardized to obtain standardized data;
[0029] The standardized data was imputed using the K-nearest neighbor interpolation method to obtain the imputed data, and the number of missing values was recorded.
[0030] The clustering-based outlier detection method performs outlier detection and cleaning on the imputed data to obtain cleaned data and records the number of outliers.
[0031] The cleaned data is evaluated for data quality. If the evaluation results meet the preset quality requirements, the cleaned CMIP6 dataset is output. Otherwise, the missing value imputation, outlier detection and cleaning steps are continued.
[0032] Preferably, the cleaned data undergoes a data quality assessment, and if the assessment results meet preset quality requirements, the cleaned CMIP6 dataset is output; otherwise, missing value imputation, outlier detection, and cleaning are performed, including:
[0033] The overall data cleaning score is determined based on the number of outliers and the number of missing values; the formula for calculating the overall data cleaning score is as follows: Where Q is the overall data cleaning score, ranging from 0 to 1, with higher values indicating better data quality; N missing N represents the number of missing values. outliers N represents the number of outliers. total σ is the total number of data points in the dataset, μ is the standard deviation of the cleaned data, α, β, and γ are weighting coefficients, representing the degree of influence of missing value handling, outlier handling, and data distribution characteristics on the comprehensive score, respectively.
[0034] Preferably, the weighting coefficients are set to: α = 0.4, β = 0.4, γ = 0.2.
[0035] According to specific embodiments provided by the present invention, the present invention discloses the following technical effects:
[0036] This invention provides a near-surface wind speed prediction method based on a self-supervised neural network. The method includes: constructing a near-surface wind speed prediction model; training the near-surface wind speed prediction model based on a preset dataset; and predicting near-surface wind speed based on the trained model. This method employs a self-supervised neural network structure, combined with existing gridded ground datasets, to correct simulation biases in global climate models, improve the prediction accuracy of near-surface wind speed, and is easy to use. Attached Figure Description
[0037] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0038] Figure 1 A flowchart of the method provided in an embodiment of the present invention;
[0039] Figure 2 This is a schematic diagram of the WindNet model structure. Detailed Implementation
[0040] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0041] The purpose of this invention is to provide a near-surface wind speed prediction method based on a self-supervised neural network. The method uses a self-supervised neural network structure and combines it with existing gridded ground datasets to correct simulation biases in global climate models, improve the prediction accuracy of near-surface wind speed, and is easy to use.
[0042] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0043] Figure 1 The method flowchart provided in the embodiments of the present invention is as follows: Figure 1 As shown, this invention provides a near-surface wind speed prediction method based on a self-supervised neural network, comprising:
[0044] Step 100: Construct a near-surface wind speed prediction model;
[0045] Step 200: Train the near-surface wind speed prediction model based on the preset dataset;
[0046] Step 300: Predict near-surface wind speed based on the trained model.
[0047] The near-surface wind speed prediction model is the WindNet model, which consists of an Encoder module and a Decoder module, both of which are based on the Vision Transformer (VIT) architecture.
[0048] The preset dataset is the CMIP6 dataset.
[0049] In step 200, the near-surface wind speed prediction model is trained based on a pre-set dataset, specifically as follows:
[0050] In order to enable the deep learning model to fully capture these complex spatial characteristics, we adopted a two-stage training strategy;
[0051] The first stage involves pre-training a near-surface wind speed prediction model based on a self-supervised method.
[0052] The second stage involves fine-tuning the pre-trained near-surface wind speed prediction model.
[0053] Model architecture diagram and training process illustration as follows Figure 2 As shown.
[0054] The near-surface wind speed prediction model is pre-trained based on a self-supervised method, specifically as follows:
[0055] Obtain the CMIP6 dataset and divide the near-surface daily average wind speed data in the CMIP6 dataset into a series of regular and non-overlapping patch sets. During the sampling process, in order to ensure the effectiveness of network training and avoid continuous large areas being covered at the same time, a uniform distribution strategy is adopted to randomly select some patches for occlusion processing according to a sampling ratio of 0.5.
[0056] The processed patch is converted into tokens, and position encoding is added during the conversion process to ensure that the spatial position information of each small block is preserved. The tokens are then sent into the Encoder module, which consists of a 12-layer Transformer structure.
[0057] The feature map output by the Encoder module is parsed and reconstructed into a patch that matches the original input size. To supplement the details that may be lost during the encoding stage, a residual connection mechanism is introduced in the decoding stage to merge the input patch with the feature map generated by the Encoder module. The merged features are then converted back into tokens, and a position index is added for the Decoder module to decode. The decoder consists of an 8-layer Transformer structure, which is responsible for processing these tokens and ultimately predicting the previously masked small patches. Through this design, WindNet, after pre-training, has the ability to extract the spatial distribution features of wind speed, thus effectively identifying potential patterns of wind speed changes.
[0058] In the pre-training process, we used mean squared error as the loss function because this stage mainly evaluates the model's ability to predict the masked patches. Therefore, the loss on the masked patches is calculated as follows:
[0059]
[0060] In the formula, y represents the predicted wind speed due to shading from the model. masked,j The value represents the actual wind speed observation that was blocked, and M represents the number of blocked observations.
[0061] Optionally, the steps for cleaning the CMIP6 dataset include:
[0062] The data in the CMIP6 dataset is initially formatted and standardized to obtain standardized data;
[0063] The standardized data was imputed using the K-nearest neighbor interpolation method to obtain the imputed data, and the number of missing values was recorded.
[0064] The clustering-based outlier detection method performs outlier detection and cleaning on the imputed data to obtain cleaned data and records the number of outliers.
[0065] The cleaned data is evaluated for data quality. If the evaluation results meet the preset quality requirements, the cleaned CMIP6 dataset is output. Otherwise, the missing value imputation, outlier detection and cleaning steps are continued.
[0066] In this embodiment, the K-nearest neighbor interpolation method is used. First, the K nearest neighbors of each data point are calculated (K can be adjusted according to the size and distribution of the dataset). The wind speed values of the K neighbors are then weighted and averaged to fill in the missing values.
[0067] Optionally, this embodiment uses a clustering-based outlier detection method to identify outliers. The specific steps are as follows:
[0068] The DBSCAN algorithm is used to cluster wind speed data, with appropriate ε (neighborhood radius) and MinPts (minimum number of points) set.
[0069] Noise points (i.e., points that are not classified) in the clustering results are considered outliers.
[0070] We further used the Z-score method to standardize each data point and set a threshold (such as 3) to identify outliers.
[0071] Furthermore, this embodiment dynamically adjusts the cleaning strategy based on the data distribution characteristics. The specific steps are as follows:
[0072] Calculate the distribution characteristics of the data (such as mean, standard deviation, skewness, kurtosis, etc.).
[0073] Different cleaning strategies can be set based on the distribution characteristics. For example, for skewed data, different thresholds can be used to identify outliers.
[0074] After cleaning, the cleaned data is evaluated using data quality assessment metrics (such as data integrity, accuracy, consistency, etc.) to ensure that the data quality meets the expected standards.
[0075] Preferably, the cleaned data undergoes a data quality assessment, and if the assessment results meet preset quality requirements, the cleaned CMIP6 dataset is output; otherwise, missing value imputation, outlier detection, and cleaning are performed, including:
[0076] The overall data cleaning score is determined based on the number of outliers and the number of missing values; the formula for calculating the overall data cleaning score is as follows: Where Q is the overall data cleaning score, ranging from 0 to 1, with higher values indicating better data quality; N missing N represents the number of missing values. outliers N represents the number of outliers. total σ is the total number of data points in the dataset, μ is the standard deviation of the cleaned data, α, β, and γ are weighting coefficients, representing the degree of influence of missing value handling, outlier handling, and data distribution characteristics on the comprehensive score, respectively.
[0077] Specifically, in this embodiment, the initial value of α can be set to 0.4, representing the importance of handling missing values. The initial value of β can be set to 0.4, representing the importance of handling outliers. The initial value of γ can be set to 0.2, representing the influence of data distribution characteristics.
[0078] As an example, during the data cleaning process, data quality indicators (such as the proportion of missing values, the proportion of outliers, and the skewness and kurtosis of the data distribution) are monitored in real time. The steps for dynamically adjusting the weighting coefficients based on the monitoring results in this embodiment are as follows:
[0079] If the percentage of missing values is higher than a set threshold (e.g., 10%), then increase the value of α and decrease the values of β and γ.
[0080] If the proportion of outliers is higher than a set threshold (e.g., 5%), then increase the value of β and decrease the values of α and γ.
[0081] If the skewness or kurtosis of the data distribution exceeds the normal range, increase the value of γ and decrease the values of α and β.
[0082] The pre-trained near-surface wind speed prediction model was fine-tuned, specifically as follows:
[0083] The near-surface wind speed prediction model was fine-tuned to enable it to reconstruct the wind speed matrix using the CMIP6 dataset. Based on the pre-trained model parameters, the daily average wind speed matrix in the CMIP6 dataset was converted into a token vector according to the pre-trained transformation method and input into the near-surface wind speed prediction model to complete the reconstruction of the wind speed data.
[0084] The goal of this stage is to evaluate the model's ability to reconstruct wind speed across the entire study area. Therefore, the mean square error between the predicted and observed wind speeds was calculated across the entire study area, and the loss function for fine-tuning training was defined as follows:
[0085]
[0086] In the formula, and y i These represent the wind speed values predicted by the model and the actual observed values, respectively, and N is the number of wind speed observation points in the entire study area;
[0087] During training, we used the Adam optimization algorithm to update parameters and dynamically adjusted the learning rate. The data spanned from 1961 to 2014, with data from 1961 to 1999 used as the training dataset and data from 2000 to 2014 used as the test set. To improve computational efficiency, the batch size during training was set to 16, and z-score normalization was performed on the network input. The model was developed based on the PyTorch framework (Paszke, Gross et al. 2019) and ran on an NVIDIA GTX 3060 graphics card equipped with 6GB of video memory.
[0088] The research data used in this invention are described below:
[0089] CN05.1 dataset:
[0090] The CN05.1 gridded dataset, released by the China Meteorological Information Center, integrates observational data from 2416 meteorological stations from 1961 to 2023. It has been processed into a gridded dataset through a series of procedures including quality control, outlier approximation, and spatial interpolation. The dataset has a spatial resolution of 0.25° × 0.25°, covers the entire region, and has been used for evaluating the output of global climate models. Therefore, this invention selects near-surface wind speed data from the CN05.1 dataset as the observational data for the study area.
[0091] CMIP6 pattern dataset:
[0092] Near-surface wind speed data (parental variant marker 'r1i1p1f1') from eight global climate models provided by CMIP6 (Sixth Coupled Model Intercomparison Programme) were selected as input data for the models. Specific information is shown in Table 1. These datasets are available at https: / / esgf-node.llnl.gov / search / cmip6 / . The analysis not only covered historical wind speed data from these climate models but also considered future scenario predictions based on shared socioeconomic pathways (SSPs), including SSP1-2.6, SSP2-4.5, and SSP5-8.5 scenarios. These scenarios integrate different forcing levels of SSPs and representative concentration pathways (RCPs) to simulate multiple possible pathways for future climate change.
[0093] Table 1. Detailed information on eight climate models in CMIP6
[0094]
[0095]
[0096] Other data:
[0097] The ERA5 and JRA55 diurnal reanalysis datasets were used as benchmarks for comparison. Both datasets have a spatial resolution of 0.25° × 0.25° and span from 2004 to 2014. Compared to other reanalysis products, ERA5 better reproduces the spatiotemporal characteristics of observed wind speeds globally and is therefore often considered observational data. The data can be obtained by visiting https: / / cds.climate.copernicus.eu / cdsapp#! / search?type=dataset.
[0098] JRA55 is the second reanalysis project conducted by the Japan Meteorological Agency. By assimilating near-surface wind speed data observed over land into the reanalysis process, it outperforms other reanalysis products in simulating long-term trends in near-surface wind speed and is able to capture trends of weakening wind speeds. The JRA55 dataset can be obtained by visiting https: / / climatedataguide.ucar.edu / climate-data / jra-55.
[0099] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.
[0100] This document uses specific examples to illustrate the principles and implementation methods of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of the present invention. Furthermore, those skilled in the art will recognize that, based on the ideas of the present invention, there will be changes in the specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of the present invention.
Claims
1. A near-surface wind speed prediction method based on a self-supervised neural network, characterized in that, include: Construct a near-surface wind speed prediction model; The near-surface wind speed prediction model was trained based on a pre-set dataset. Near-surface wind speed prediction based on the trained model.
2. The method according to claim 1, characterized in that, The near-surface wind speed prediction model is the WindNet model, which consists of an Encoder module and a Decoder module.
3. The method according to claim 2, characterized in that, The preset dataset is the CMIP6 dataset.
4. The method according to claim 3, characterized in that, The near-surface wind speed prediction model is trained based on a pre-set dataset, specifically as follows: A pre-training method for near-surface wind speed prediction model was used; The pre-trained near-surface wind speed prediction model was fine-tuned.
5. The method according to claim 4, characterized in that, The near-surface wind speed prediction model is pre-trained based on a self-supervised method, specifically as follows: The CMIP6 dataset was acquired and cleaned. The near-surface daily average wind speed data in the cleaned CMIP6 dataset were divided into a series of regular and non-overlapping patch sets. A uniform distribution strategy was adopted to randomly select some patches for masking processing according to a sampling ratio of 0.
5. The processed patch is converted into tokens, and position encoding is added during the conversion process. The tokens are then sent to the Encoder module. The feature map output by the Encoder module is parsed and reconstructed into a patch that matches the original input size. In the decoding stage, a residual connection mechanism is introduced to merge the input patch with the feature map generated by the Encoder module. The merged features are then converted back into tokens and a position index is added for the Decoder module to decode. During the pre-training process, we used mean squared error as the loss function, which is: In the formula, y represents the predicted wind speed due to shading from the model. masked,j The value represents the actual wind speed observation that was blocked, and M represents the number of blocked observations.
6. The method according to claim 5, characterized in that, The pre-trained near-surface wind speed prediction model was fine-tuned, specifically as follows: Based on the pre-trained model parameters, the daily average wind speed matrix in the CMIP6 dataset is converted into a token vector according to the pre-trained transformation method, and then input into the near-surface wind speed prediction model to complete the reconstruction of the wind speed data. The loss function for fine-tuning training is defined as follows: In the formula, and y i These represent the wind speed values predicted by the model and the actual observed values, respectively, and N is the number of wind speed observation points in the entire study area; During fine-tuning training, the Adam optimization algorithm is used to update parameters, and the learning rate is dynamically adjusted during training. The batch size during training is set to 16.
7. The method according to claim 5, characterized in that, The steps for cleaning the CMIP6 dataset include: The data in the CMIP6 dataset is initially formatted and standardized to obtain standardized data; The standardized data was imputed using the K-nearest neighbor interpolation method to obtain the imputed data, and the number of missing values was recorded. The clustering-based outlier detection method performs outlier detection and cleaning on the imputed data to obtain cleaned data and records the number of outliers. The cleaned data is evaluated for data quality. If the evaluation results meet the preset quality requirements, the cleaned CMIP6 dataset is output. Otherwise, the missing value imputation, outlier detection and cleaning steps are continued.
8. The method according to claim 7, characterized in that, The cleaned data undergoes a data quality assessment. If the assessment results meet the preset quality requirements, the cleaned CMIP6 dataset is output; otherwise, missing value imputation, outlier detection, and cleaning are performed, including: The overall data cleaning score is determined based on the number of outliers and the number of missing values; the formula for calculating the overall data cleaning score is as follows: Where Q is the overall data cleaning score, ranging from 0 to 1, with higher values indicating better data quality; N missing N represents the number of missing values. outliers N represents the number of outliers. total σ is the total number of data points in the dataset, μ is the standard deviation of the cleaned data, α, β, and γ are weighting coefficients, representing the degree of influence of missing value handling, outlier handling, and data distribution characteristics on the overall score, respectively.
9. The method according to claim 8, characterized in that, The weighting coefficients are set to: α = 0.4, β = 0.4, γ = 0.2.