Hardware fault locating method, device, equipment and storage medium
By acquiring and preprocessing server hardware operation data, and using the LSTM model and Euclidean distance and cosine similarity to accurately locate faulty hardware, the low efficiency problem of traditional methods is solved, and fast and accurate hardware fault location and detailed repair guidance are achieved.
Patent Information
- Application Number
- CN202510830600.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-20
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2045-06-20
AI Technical Summary
Traditional server hardware fault location methods rely on experience and manual troubleshooting, which are inefficient and prone to misjudgment. They make it difficult to quickly and accurately locate faulty hardware and fail to provide detailed repair guidance.
By obtaining the hardware operation data collected by the controller and preprocessing it, the faulty hardware is initially located using transfer learning and the long short-term memory network model (LSTM). The faulty hardware is accurately located by combining Euclidean distance and cosine similarity, obtaining the real-time and historical data features of the faulty hardware, and dynamically adjusting the weights to determine the target fault location.
It can quickly and accurately locate server hardware failures, improve the efficiency and accuracy of fault location, provide detailed repair guidance, and reduce business interruptions and economic losses.
Smart Images

Figure CN120336989B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of fault prediction technology, and in particular to a hardware fault locating method, apparatus, device, and storage medium. Background Art
[0002] In today's digital age, servers, as core devices for data storage, processing, and transmission, are widely used in various fields, including the internet, finance, healthcare, and scientific research. As server performance continues to improve and server architecture becomes increasingly complex, their hardware components are becoming more sophisticated, significantly increasing the probability of hardware failure. A server hardware failure not only causes business interruption and severe economic losses, but can also impact the company's reputation and user experience. Traditional methods for locating server hardware faults rely primarily on the experience and manual troubleshooting of operations and maintenance personnel, which is inefficient and prone to misjudgment. While some existing monitoring systems can monitor some hardware parameters, they lack in-depth analysis and effective utilization of historical data, making it difficult to quickly and accurately locate faulty hardware and unable to provide detailed repair guidance to operations and maintenance personnel.
[0003] Therefore, in view of the shortcomings of the existing technical solutions, the present invention provides a hardware fault locating method. Summary of the Invention
[0004] The present application provides a hardware fault location method, apparatus, device and storage medium to at least solve the problems of business interruption and economic loss caused by traditional reliance on experience and manual troubleshooting methods.
[0005] The present application provides a hardware fault location method, which includes: obtaining hardware operation data corresponding to multiple hardware collected by a controller; preprocessing the multiple hardware operation data according to the importance of the multiple hardware operation data; determining the faulty hardware based on the preprocessed hardware operation data according to transfer learning and long short-term memory network models; obtaining real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extracting data features of the real-time fault data and data features of the historical fault data, and determining real-time vectors and historical vectors; and calculating Euclidean distance and cosine similarity based on dynamic weights according to the real-time vectors and historical vectors of the multiple candidate fault locations to determine the target fault location.
[0006] The present application also provides a hardware fault locating device, which includes: a first processing module for acquiring hardware operation data corresponding to multiple hardware collected by a controller; a second processing module for preprocessing the multiple hardware operation data according to the importance of the multiple hardware operation data; a third processing module for determining the faulty hardware based on the preprocessed hardware operation data according to transfer learning and long short-term memory network models; a fourth processing module for acquiring real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extracting data features of the real-time fault data and data features of the historical fault data, and determining real-time vectors and historical vectors; a fifth processing module for calculating Euclidean distance and cosine similarity based on dynamic weights according to the real-time vectors and historical vectors of the multiple candidate fault locations to determine the target fault location.
[0007] The present application also provides an electronic device, comprising: a memory for storing a computer program; a processor for implementing the following steps when executing the computer program: obtaining hardware operation data corresponding to multiple hardware collected by a controller; preprocessing the multiple hardware operation data according to the importance of the multiple hardware operation data; determining the faulty hardware based on the preprocessed hardware operation data according to transfer learning and long short-term memory network models; obtaining real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extracting data features of the real-time fault data and data features of the historical fault data, and determining real-time vectors and historical vectors; calculating Euclidean distance and cosine similarity based on dynamic weights according to the real-time vectors and historical vectors of the multiple candidate fault locations, and determining the target fault location.
[0008] The present application also provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program, when executed by a processor, implements the following steps: obtaining hardware operation data corresponding to multiple hardware collected by a controller; preprocessing the multiple hardware operation data according to the importance of the multiple hardware operation data; determining the faulty hardware based on the preprocessed hardware operation data according to transfer learning and long short-term memory network models; obtaining real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extracting data features of the real-time fault data and data features of the historical fault data, and determining real-time vectors and historical vectors; calculating Euclidean distance and cosine similarity based on dynamic weights according to the real-time vectors and historical vectors of the multiple candidate fault locations, and determining the target fault location.
[0009] The present application also provides a computer program product, including a computer program, which implements the following steps when executed by a processor: obtaining hardware operation data corresponding to multiple hardware collected by a controller; preprocessing the multiple hardware operation data according to the importance of the multiple hardware operation data; determining the faulty hardware based on the preprocessed hardware operation data according to transfer learning and long short-term memory network models; obtaining real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extracting data features of the real-time fault data and data features of the historical fault data, and determining real-time vectors and historical vectors; calculating Euclidean distance and cosine similarity based on dynamic weights according to the real-time vectors and historical vectors of the multiple candidate fault locations, and determining the target fault location.
[0010] Through the present application, hardware operation data corresponding to multiple hardware collected by the controller are obtained; multiple hardware operation data are preprocessed according to the importance of multiple hardware operation data; based on the preprocessed hardware operation data, the faulty hardware is determined according to transfer learning and long short-term memory network models; real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time are obtained, data features of the real-time fault data and data features of the historical fault data are extracted, and real-time vectors and historical vectors are determined; based on the real-time vectors and historical vectors of multiple candidate fault locations, Euclidean distance and cosine similarity are calculated based on dynamic weights to determine the target fault location. Therefore, the faulty hardware is preliminarily located through the LSTM model, and then the fault location is accurately located by combining the Euclidean distance and cosine similarity. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0012] Figure 1 A flowchart of a hardware fault locating method provided in an embodiment of the present application;
[0013] Figure 2 A schematic diagram of a process for determining a quantile interval in a hardware fault locating method provided in an embodiment of the present application;
[0014] Figure 3 A flowchart illustrating modeling and optimization of a machine learning algorithm for hardware fault location methods provided in an embodiment of the present application;
[0015] Figure 4 A schematic diagram of a hardware fault location process of a hardware fault location method provided in an embodiment of the present application;
[0016] Figure 5 A structural block diagram of a hardware fault locating device provided in an embodiment of the present application;
[0017] Figure 6 This is a diagram of the internal structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0018] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0019] It should be noted that, in the description of this application, the terms "comprises," "includes," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. The terms "first," "second," etc., in this application are used to distinguish similar objects, and are not used to describe a particular order or sequence.
[0020] It should be noted that the terms "S1", "S2", etc. are used only for the purpose of describing the steps and do not specifically refer to the order or sequence, nor are they used to limit this application. They are merely for the convenience of describing the method of this application and should not be understood as indicating the order of the steps. In addition, the technical solutions between the various embodiments can be combined with each other, but this must be based on the fact that ordinary technicians in this field can implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection required by this application.
[0021] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below with reference to the accompanying drawings and specific implementation methods.
[0022] The embodiments of the present application provide a hardware fault locating method, and the method is described in detail in conjunction with the execution flow of the hardware fault locating method.
[0023] S101: Acquire hardware operation data corresponding to multiple hardware collected by a controller.
[0024] Here, the controller may be an OPEN BMC (Open Baseboard Management Controller) or a BMC (Baseboard Management Controller).
[0025] Here, hardware refers to the hardware in the server.
[0026] The hardware operation data corresponding to one hardware may include one data or multiple data.
[0027] Hardware operation data is obtained by collecting sensors. For example, OpenBMC has a dedicated process for collecting sensor data: history-record, which records various sensor data into files.
[0028] Here, the hardware operation data may include CPU (Central Processing Unit) temperature, PSU (Power Supply Unit) temperature, and usage data of various hardware types. Among them, CPU temperature may include CPU temperature, CPU0_Temp, CPU1_Temp, CPU_Margin_Temp, CPU_DIMM_Temp, and CPU_VR_Temp; PSU temperature may include PSU0_Inlet_Temp and PSU1_Inlet_Temp; and usage data of various hardware types may include CPU usage, memory usage, and IO (Input / Output) usage.
[0029] In one embodiment, when collecting sensor data, different attributes and sampling times may be configured for each sensor. For example, a shorter sampling time may be configured for a sensor of particular interest, while a longer sampling time may be configured for a sensor of less particular interest.
[0030] S102: Pre-processing the plurality of hardware operation data according to their importance.
[0031] Here, preprocessing may include normalization, missing value processing, duplicate value processing, outlier detection and processing, standardization, etc.
[0032] The importance of hardware operating data can be determined based on its fault relevance, impact range, controllability of fluctuations, clarity of safety thresholds, and monitoring priority. For example, assuming the hardware operating data is CPU temperature, high temperatures are highly correlated with system downtime, indicating strong fault relevance; it directly impacts system stability and has a wide impact range; under normal operation, it has a narrow, reasonable range, and controllable fluctuations; the manufacturer provides TJMAX (maximum junction temperature), with clear safety thresholds; and most systems have temperature alarm mechanisms, giving it a high monitoring priority. Therefore, CPU temperature is important hardware operating data.
[0033] Specifically, the importance of hardware operation data can be obtained through scoring models, hierarchical analysis method, fuzzy comprehensive evaluation method, machine learning method, etc.
[0034] Specifically, this hardware operation data can be divided into time windows of fixed length to form a continuous sequence. For example, for hardware operation data such as CPU temperature, the temperature data within every 5 minutes can be considered as a sequence segment. In this way, a multidimensional time series dataset containing multiple hardware operation data can be constructed.
[0035] S103: Based on the pre-processed hardware operation data, the faulty hardware is determined according to the transfer learning and long short-term memory network model.
[0036] Here, transfer learning is a machine learning method that aims to apply knowledge learned in one domain or task to a different but related domain or task.
[0037] Among them, the LSTM model is improved and optimized through transfer learning, making the LSTM model a model for classification and diagnosis of server hardware faults.
[0038] Here, the LSTM (Long Short-Term Memory) model is a special recurrent neural network designed to solve the problems of gradient vanishing and gradient exploding in long sequence training.
[0039] Specifically, the network architecture of the LSTM model includes: input layer, LSTM layer and fully connected layer. The input layer is responsible for receiving pre-processed multi-dimensional time series data, and the data dimension n depends on the type of hardware operation data collected. For example, if n parameters such as CPU temperature, memory usage, hard disk read and write rate are collected at the same time, the dimension of the time series data received by the input layer is n, which can ensure that the model can make full use of multi-source hardware operation data for fault diagnosis; the LSTM layer is configured with two layers of LSTM units, each layer contains 128 neurons, and the activation function uses Tanh. The unique gating mechanism of LSTM (including input gate, forget gate, and output gate) enables it to effectively capture long-term dependencies in time series. The input gate determines the degree of retention of the current input information, the forget gate controls the discarding of old information in the cell state, and the output gate determines the final output content. When processing CP When the data on temperature changes over time is collected, LSTM can remember the temperature trend over the past period of time. Even if there are brief fluctuations in the middle, it can accurately determine whether the temperature change is abnormal, thus providing strong support for fault diagnosis. The output layer of the fully connected layer uses the Softmax function, which maps the feature vector output by the LSTM layer to various fault category labels. For example, the fault category settings can be "CPU fault", "power module fault", "memory fault", etc. The Softmax function calculates the probability of each fault category. The category with the highest probability is the fault type predicted by the model, realizing classified diagnosis of server hardware faults.
[0040] S104: Acquire real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extract data features of the real-time fault data and data features of the historical fault data, and determine a real-time vector and a historical vector.
[0041] Here, candidate fault locations refer to specific modules in the faulty hardware where the fault may occur. For example, if the faulty hardware is a CPU, candidate fault locations may be the CPU voltage regulator module, cache, control unit, input / output interface, etc.
[0042] Different fault locations correspond to different fault data.
[0043] Here, the fault data may include various data, such as CPU temperature, CPU usage, etc.
[0044] Among them, a candidate fault location corresponds to a real-time vector and a historical vector. The real-time vector and the historical vector are n-dimensional vectors, including the features of multiple fault data.
[0045] S105: Calculate the Euclidean distance and cosine similarity based on the real-time vectors and historical vectors of the multiple candidate fault locations and the dynamic weights to determine the target fault location.
[0046] Here, the dynamic weight can be dynamically adjusted for the weights of different fault data in different situations.
[0047] Here, Euclidean distance is a common way to measure the absolute distance between two vectors in multidimensional space.
[0048] Here, cosine similarity measures the similarity between vectors by measuring the cosine of the angle between two vectors.
[0049] Among them, the smaller the Euclidean distance between two vectors, the more similar the two vectors are; the larger the cosine similarity between two vectors, the more similar the two vectors are.
[0050] The cosine similarity value range is [-1, 1]. The closer the cosine similarity value is to 1, the more similar vectors X and Y are; the closer the cosine similarity value is to -1, the more opposite the directions are.
[0051] Specifically, after determining the faulty hardware, multiple fault locations corresponding to the faulty hardware and the fault data corresponding to each fault location are obtained from a preset fault association database. Real-time fault data corresponding to each fault location is collected, and the features of the real-time fault data are extracted to obtain a real-time vector. Historical fault data is obtained, and the features of the historical fault data are extracted to obtain a historical vector. The similarity between the real-time vector and the historical vector of each fault location is compared, and the fault location with the greatest similarity between the real-time vector and the historical vector is taken as the target fault location.
[0052] In one embodiment, after determining the target fault location, the corresponding solution is retrieved from the fault association database, and the fault repair is performed according to the instructions provided by the fault association database. For example, these repair instructions are carefully organized and optimized, covering the entire process from preparing repair tools, removing faulty hardware, installing new hardware, and debugging and testing. For example, for CPU failures, the required screwdriver model, the correct order for removing the CPU heat sink, precautions when installing a new CPU, and specific methods and indicators for debugging and testing are clearly listed.
[0053] It should be noted that this application uses the LSTM model to preliminarily locate the faulty hardware, and then combines Euclidean distance and cosine similarity to accurately locate the fault location.
[0054] In some specific implementations, pre-processing the plurality of hardware operation data according to their importance may include:
[0055] Determine quantile intervals corresponding to the multiple hardware operation data according to their importance;
[0056] Preprocess multiple hardware operation data according to the quantile interval.
[0057] Here, quantiles refer to dividing a data set into equal parts. Common quantiles include percentiles, deciles, and quartiles.
[0058] For important hardware operation data (such as CPU temperature and PSU voltage), a narrow quantile range (such as 5%-95%) is selected. This narrow quantile range can eliminate abnormal sensor jump values and retain the detailed differences in the actual business range. For example, if the 95% quantile of the historical CPU temperature data is 75°C and the 5% quantile is 25°C, the feature is normalized to the [0, 1] interval corresponding to [25°C, 75°C]. Extreme values outside this range are treated as noise filtering.
[0059] Among them, for non-important hardware operation data (such as fan speed), a wide quantile range (such as 1%-99%) is selected. Non-important hardware operation data allows a certain range of abnormal fluctuations. The wide quantile range can avoid excessive filtering of normal extreme values (such as the instantaneous high speed when the fan is running at full speed).
[0060] Here, preprocessing can include normalization, mapping each hardware running data to the interval [0, 1] so that different parameters are on the same scale, which helps the model converge faster and improves the training effect. Normalization can be achieved by formula (1):
[0061] (1)
[0062] in, x is the original data, and are the minimum and maximum values of the hardware running data in the data set respectively.
[0063] Specifically, the data set is sorted according to the data size, the hardware operation data is segmented by the quantile interval, the hardware operation data within the quantile interval is obtained, and the hardware operation data within the quantile interval is normalized.
[0064] In one embodiment, after the quantile interval is determined, the F1 value and false alarm rate of the quantile interval on the validation set may be calculated to determine whether the quantile interval meets the requirements.
[0065] In this way, outliers can be removed while retaining the fluctuation details of the data under normal operating conditions.
[0066] In some specific implementations, determining the quantile intervals corresponding to the plurality of hardware operation data according to the importance of the plurality of hardware operation data further includes:
[0067] Obtain the hardware lifecycle and real-time load corresponding to multiple hardware operation data;
[0068] Based on the lifecycle and real-time load of multiple hardware devices, the quantile intervals of multiple hardware operation data are adaptively adjusted.
[0069] Here, the life cycle may include a new machine stage and an aging stage, and the real-time load may include a high load and a low load.
[0070] When the hardware operation data corresponds to new hardware, a conservative quantile range (such as 10%-90%) is used to prevent normal fluctuations during the running-in period from being misjudged as abnormalities. When the hardware operation data corresponds to aging hardware, an aggressive quantile range (such as 5%-95%) is selected to capture subtle changes in early performance degradation.
[0071] Among them, when the hardware corresponding to the hardware operation data is in a high-load scenario (such as big data computing), the quantile interval is automatically widened to prevent the normal peak from being normalized and compressed; when the hardware corresponding to the hardware operation data is in a low-load scenario, the quantile interval is narrowed to sensitively capture tiny anomalies and improve the sensitivity of anomaly detection.
[0072] In one embodiment, the quantile interval may be adjusted by considering factors such as time period, environmental variables, and task type.
[0073] In this way, the robustness and adaptability of normalization can be enhanced by dynamically adjusting the quantile intervals considering the actual situation.
[0074] In some specific implementations, determining faulty hardware based on preprocessed hardware operation data using transfer learning and a long short-term memory network model includes:
[0075] Obtaining general hardware operation data and preprocessing the general hardware operation data;
[0076] Pre-training a preset long short-term memory network model using pre-processed general hardware operation data until the preset long short-term memory network model converges to obtain a first model;
[0077] Fine-tune the first model according to the hardware operation data to obtain the target model;
[0078] The processed hardware operation data is input into the target model and the faulty hardware is output.
[0079] Here, the general hardware operation data may include hardware operation data of servers of various brands and models.
[0080] Fine-tuning is part of transfer learning. Fine-tuning involves training a model using a general dataset and then fine-tuning it to the hardware characteristics and failure modes of a specific server model to better adapt it to the server. Specifically, the underlying LSTM parameters are frozen. These parameters have already been learned during pre-training based on the general hardware operating modes and no further training is required. This only applies to the fully connected layers.
[0081] Specifically, the underlying LSTM parameters are pre-trained using general hardware operation data to obtain a general LSTM model. The corresponding server is determined based on the hardware operation data, and the LSTM model is fine-tuned using approximately 500 sets of hardware operation data of the server to obtain a fine-tuned model.
[0082] Specifically, the general hardware operation data can be preprocessed to determine the quantile interval corresponding to the general hardware operation data based on the importance of multiple general hardware operation data, obtain the hardware life cycle and real-time load corresponding to the multiple general hardware operation data, and adaptively adjust the quantile interval of the multiple general hardware operation data based on the life cycle and real-time load of the multiple hardware. The general hardware operation data can be preprocessed according to the quantile interval.
[0083] In one embodiment, when there are fewer samples of general-purpose hardware operation data, data augmentation techniques can be used to expand the general-purpose hardware operation dataset. For time series data, new samples can be generated through methods such as translation, scaling, and noise addition. For numerical data, variants of generative adversarial networks (GANs), such as conditional generative adversarial networks (CGANs), are used to generate more representative general-purpose hardware operation data samples based on hardware fault types. This allows the model to learn richer fault characteristics during training, improving its ability to diagnose rare faults.
[0084] In one embodiment, a reinforcement learning algorithm can be used for dynamic optimization during the actual operation of the target model. Using fault location accuracy and repair time as reward metrics, the target model continuously adjusts its parameters and decision-making strategies based on the results of each fault diagnosis and repair. For example, if the target model repeatedly misdiagnoses a certain type of fault, the reinforcement learning mechanism will apply negative rewards, prompting the target model to relearn the characteristics of that type of fault, optimize the diagnostic rules, and gradually improve the accuracy and efficiency of diagnosis.
[0085] In this way, the LSTM model can quickly adapt to the characteristics of a specific server model, complete model adaptation with less data, and improve the accuracy and pertinence of diagnosis.
[0086] In some specific embodiments, pre-training a preset long short-term memory network model by running pre-processed general hardware data includes:
[0087] Input the preprocessed hardware operation data into the preset long short-term memory network model to obtain the loss function;
[0088] According to the loss function, determine whether the preset long short-term memory network model converges;
[0089] If convergence is not achieved, the parameters of the preset long short-term memory network model are updated through the optimization algorithm.
[0090] Here, the loss function is used to measure the difference between the model's predicted values and the true values.
[0091] Specifically, the loss function can be a cross entropy loss, which is calculated by formula (2):
[0092] (2)
[0093] Where C is the number of fault categories, y i is the true label (0 or 1), p i is the probability that the model predicts a fault belonging to the i-th category.
[0094] Here, the optimization algorithm calculates the gradient of the loss function with respect to the model parameters and updates the parameters in the opposite direction of the gradient, so that the loss value gradually decreases, thereby making the model's prediction closer and closer to the true value.
[0095] Specifically, the optimization algorithm can be the Adam algorithm, which is an adaptive learning rate method for optimizing neural network weights. It adjusts the learning rate of each parameter in the model by calculating the first-order moment estimate and the second-order moment estimate of the gradient. For example, the learning rate can be set to 0.001. The Adam algorithm can adaptively adjust the learning rate, accelerate model convergence, and improve training efficiency.
[0096] In one embodiment, during the fine-tuning phase, the model may also be trained using a loss function and an optimization algorithm.
[0097] In one embodiment, to prevent model overfitting, Dropout technology is introduced with a dropout probability of 0.3. Dropout randomly drops some neurons during training, preventing the model from over-reliance on certain neurons and enhancing its generalization ability. At the same time, L2 regularization is used with a coefficient of 0.01. L2 regularization constrains weights to make the model smoother and reduce the risk of overfitting caused by excessive weights.
[0098] In this way, the accuracy and generalization ability of the model can be improved.
[0099] In some specific implementations, determining a target fault location by calculating Euclidean distance and cosine similarity based on real-time vectors and historical vectors of multiple candidate fault locations and dynamic weights includes:
[0100] Determine the weights of multiple fault data based on the real-time vector and the historical vector, and calculate the Euclidean distance between the real-time vector and the historical vector;
[0101] Determine the weights of multiple time windows based on the real-time vector and the historical vector, and calculate the cosine similarity between the real-time vector and the historical vector based on the dynamic weights;
[0102] Calculate the similarity scores of multiple candidate fault locations based on Euclidean distance and cosine similarity;
[0103] In response to a similarity score being greater than or equal to a preset score, the candidate fault location with the highest similarity score is selected as the target fault location.
[0104] Here, each candidate fault location corresponds to different fault data, and each candidate fault location corresponds to a vector.
[0105] Among them, the historical vector is selected as the comparison object. The more similar the real-time vector is to the historical vector, the higher the possibility of a similar fault occurring at the current fault location.
[0106] Specifically, the Euclidean distance and cosine similarity between the real-time vector and the historical vector of each candidate fault location are calculated by using the real-time vector, the historical vector and the dynamic weight. The similarity score is obtained by combining the Euclidean distance and the cosine similarity. The similarity score of each candidate fault location is compared to determine whether there is a similarity score greater than or equal to the preset score. If there is a similarity score greater than or equal to the preset score, the candidate fault location with the highest similarity score is selected as the target fault location.
[0107] In one embodiment, it is possible to determine whether to detect sudden faults or predict gradual faults based on demand. When detecting sudden faults, the rate of change of the fault data is detected, and the weights of multiple fault data are determined based on the rate of change of the fault data combined with other factors. The time window is divided into small time periods, divided into millisecond-level windows to capture instantaneous signal jumps, and the weights of the millisecond-level windows are determined. When predicting gradual faults, the rate of change and sliding mean of the fault data are detected, and the weights of multiple fault data are determined based on the rate of change of the fault data and sliding mean combined with other factors. The time window is divided into long time periods, divided into hourly-level windows, and the weights of the hourly-level windows are determined. In this way, sudden faults can be detected or gradual faults can be predicted, the fault response speed can be improved, and the prediction capability can be enhanced.
[0108] In this way, by combining multiple metrics, the accuracy of judgment can be improved and the false alarm rate caused by fluctuations in a single indicator can be reduced.
[0109] In some specific implementations, calculating similarity scores of multiple candidate fault locations based on Euclidean distance and cosine similarity includes:
[0110] The fusion coefficient of Euclidean distance and cosine similarity is calculated through the fault data training set;
[0111] Based on the fusion coefficient, Euclidean distance and cosine similarity, the similarity score is obtained by weighted summation.
[0112] Specifically, the similarity score can be calculated by formula (3):
[0113] (3)
[0114] Among them, β is the fusion coefficient, and its value range is [0, 1]. is the cosine similarity between the real-time vector and the historical vector, d DWED is the Euclidean distance between the real-time vector and the historical vector.
[0115] In one embodiment, the Euclidean distance and the cosine similarity may be fused through an adaptive gating mechanism.
[0116] In this way, the absolute numerical differences and relative change trends of the features are considered at the same time, which improves the comprehensiveness of fault matching; when there is data noise or some sensors fail, the hybrid metric can be compensated by another indicator to reduce the risk of misjudgment.
[0117] In some specific implementations, determining weights of multiple fault data based on the real-time vector and the historical vector, and calculating the Euclidean distance between the real-time vector and the historical vector include:
[0118] Determine the initial weights of the multiple fault data according to their importance;
[0119] determining a corrected weight of the plurality of fault data according to a fault threshold value of the plurality of fault data and / or a correlation coefficient between the plurality of fault data;
[0120] The Euclidean distance between the real-time vector and the historical vector is calculated according to the corrected weights of the multiple fault data.
[0121] Specifically, the Euclidean distance can be calculated by formula (4):
[0122] (4)
[0123] in,w i (0< w i ≤1) is the weight of each fault data, x i and x j are the i-th dimension eigenvalues of real-time fault data and historical fault data respectively.
[0124] In this way, by dynamically adjusting the weight of fault data, it can be adjusted in real time as new fault data accumulates to adapt to changes in hardware architecture.
[0125] In some specific implementations, determining the corrected weights of the plurality of fault data according to the fault thresholds of the plurality of fault data includes:
[0126] Obtaining fault thresholds for multiple fault data;
[0127] Determine sensitivity factors corresponding to the multiple fault data according to the multiple fault data and the fault threshold;
[0128] Based on the sensitivity factors, the corrected weights of the multiple fault data are calculated.
[0129] Here, different fault data corresponds to different fault thresholds, such as the fault threshold of CPU temperature is 90°C.
[0130] Specifically, the sensitivity factor can be calculated using formula (5):
[0131] (5)
[0132] in, x i is the fault data, T i is the fault threshold, and λ is the sensitivity coefficient.
[0133] Among them, different hardware corresponds to different sensitivity coefficients, and the sensitivity coefficients of different hardware are fixed.
[0134] Specifically, the initial weight of each fault data is multiplied by the sensitivity factor to obtain the corrected weight of each fault data.
[0135] In this way, through the sensitivity factor, the weight includes the critical distance information of the fault at the same time, and the impact of the abnormal characteristics is amplified in advance.
[0136] In some specific implementations, determining the corrected weights of the plurality of fault data based on correlation coefficients between the plurality of fault data includes:
[0137] Calculating correlation coefficients between the multiple fault data based on historical fault data of the multiple fault data;
[0138] Based on the correlation coefficient, a correlation matrix is constructed;
[0139] Based on the correlation matrix, the corrected weights of the multiple fault data are calculated.
[0140] Here, the correlation coefficient represents the strength of the association between two pieces of fault data, such as the strength of the association between CPU temperature and CPU usage.
[0141] Specifically, the mutual information or correlation coefficient between parameters is calculated through historical BMC data to generate the correlation matrix C, where C i,j Representation parameters x i and x j The strength of association (0≤ C i,j ≤1).
[0142] Specifically, the corrected weight can be calculated using formula (6):
[0143] (6)
[0144] in, W i and W j Fault data x i and x j The initial weight of is the fault data after association constraint The weight of C i,j Indicates fault data x i and x jA The strength of association.
[0145] In this way, the feature association matrix is introduced to correct the weights to prevent the weight of a single feature from deviating excessively from the importance of its associated features.
[0146] In some specific embodiments, determining weights of multiple time windows based on the real-time vector and the historical vector, and calculating the cosine similarity between the real-time vector and the historical vector based on the dynamic weights includes:
[0147] Based on the preset window size, the real-time vector and historical vector are divided into multiple time windows in chronological order;
[0148] Based on the attention mechanism, the weights of multiple time windows are calculated;
[0149] The cosine similarity between the real-time vector and the historical vector is calculated based on the weights of multiple time windows.
[0150] Specifically, the preset window size may be 5 minutes.
[0151] Specifically, the real-time data and historical data are divided into T windows in chronological order, and the feature vector in each window is expressed as and , where n represents the dimension of the vector, that is, the number of elements in the vector, is a vector X t Each element of represents the value of different features in the time window t; is a vector Y t Each element of represents the value of different features in the time window t.
[0152] Specifically, the Transformer attention mechanism is used to calculate the weight of each time window , reflecting the importance of the window. For example, the weight of the window within 30 minutes before the fault occurs is higher than that of the window in the earlier period.
[0153] Specifically, the cosine similarity can be calculated using the following formula (7):
[0154] (7)
[0155] Where T represents the total number of time windows, is the weight of each time window, ≥0 and ; X t is a real-time vector, Y t is the history vector.
[0156] In this way, different weights are assigned to the features of different time periods, which can accurately match the warning signal before the fault occurs with the peak data when the fault occurs.
[0157] In some specific implementations, calculating similarity scores of multiple candidate fault locations based on Euclidean distance and cosine similarity further includes:
[0158] In response to there not being a similarity score greater than or equal to a preset score, acquiring hardware operation data of the plurality of hardware;
[0159] Cross-verify faulty hardware based on hardware operation data from multiple hardware;
[0160] Based on the cross-validation results, the target fault location is determined.
[0161] Specifically, when locating a CPU fault, if there is no similarity score greater than or equal to the preset score, other relevant data are comprehensively analyzed, such as the PSU output voltage and current data, the memory read and write error rate, etc. If abnormal fluctuations in the PSU output voltage are detected, the inference that a CPU voltage regulator module failure may cause unstable power supply is further verified.
[0162] In this way, by combining the LSTM model with multi-dimensional data cross-validation, the accuracy and efficiency of fault location can be greatly improved.
[0163] In one embodiment, Figure 2 This is a flow chart of determining the quantile interval in the embodiment of the present application, such as Figure 2 As shown, the process of determining the quantile interval in this application includes: collecting hardware operation data, judging whether the hardware operation data is important data, when the hardware operation data is important data, selecting a narrow quantile interval, and when the hardware operation data is unimportant data, selecting a wide quantile interval; dynamically adjusting the quantile interval in combination with the life cycle and real-time load, and generating the final quantile interval through five-fold cross-validation of the quantile interval.
[0164] In one embodiment, Figure 3 This is a flow chart of the machine learning algorithm modeling and optimization process in the embodiment of this application, such as Figure 3 As shown, the machine learning algorithm modeling and optimization process in this application includes: BMC collects data, splits the data to obtain time series data sets, normalizes the data, outputs the fault type probability through the LSTM model, and uses the transfer learning optimization strategy to quickly use specific model servers.
[0165] In one embodiment, Figure 4 This is a flowchart of hardware fault location in an embodiment of the present application, such as Figure 4 As shown, the process of hardware fault location in this application includes: server fault triggering, BMC collects hardware operation data in real time and transmits it to the fault diagnosis module, the fault diagnosis module uses the LSTM model to preliminarily diagnose the fault type and probability, compares the real-time data with the historical data in the fault association database, calculates indicators such as Euclidean distance and cosine similarity, and determines whether the similarity reaches the preset threshold. If the similarity reaches the preset threshold, the faulty hardware is determined. If the similarity does not reach the preset threshold, the PSU output voltage, memory read and write error rate and other multi-dimensional data are comprehensively analyzed for cross-validation to finally determine the faulty hardware.
[0166] It should be understood that although Figure 1-4The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. In addition, Figure 1-4 At least part of the steps may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least part of the sub-steps or stages of other steps.
[0167] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method.
[0168] An embodiment of the present application also provides a hardware fault locating device, which includes: a first processing module 501, used to obtain hardware operation data corresponding to multiple hardware collected by a controller; a second processing module 502, used to preprocess the multiple hardware operation data according to the importance of the multiple hardware operation data; a third processing module 503, used to determine the faulty hardware based on the preprocessed hardware operation data according to transfer learning and long short-term memory network models; a fourth processing module 504, used to obtain real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extract data features of the real-time fault data and data features of the historical fault data, and determine the real-time vector and the historical vector; a fifth processing module 505, used to calculate the Euclidean distance and cosine similarity based on the real-time vectors and historical vectors of the multiple candidate fault locations based on dynamic weights, and determine the target fault location.
[0169] As a preferred implementation method, in the embodiment of the present application, the second processing module is specifically used to: determine the quantile intervals corresponding to multiple hardware operation data based on the importance of multiple hardware operation data; and pre-process the multiple hardware operation data based on the quantile intervals.
[0170] As a preferred implementation method, in an embodiment of the present application, the second processing module is specifically used to: obtain the hardware life cycle and real-time load corresponding to multiple hardware operation data; based on the life cycle and real-time load of multiple hardware, adaptively adjust the quantile intervals of multiple hardware operation data.
[0171] As a preferred implementation method, in the embodiment of the present application, the third processing module is specifically used to: obtain general hardware operation data and pre-process the general hardware operation data; pre-train the preset long short-term memory network model through the pre-processed general hardware operation data until the preset long short-term memory network model converges to obtain a first model; fine-tune the first model according to the hardware operation data to obtain a target model; input the processed hardware operation data into the target model and output the faulty hardware.
[0172] As a preferred implementation method, in the embodiment of the present application, the third processing module is specifically used to: input the preprocessed hardware operation data into the preset long short-term memory network model to obtain a loss function; based on the loss function, determine whether the preset long short-term memory network model has converged; if not, update the parameters of the preset long short-term memory network model through the optimization algorithm.
[0173] As a preferred implementation method, in an embodiment of the present application, the fifth processing module is specifically used to: determine the weights of multiple fault data based on the real-time vector and the historical vector, and calculate the Euclidean distance between the real-time vector and the historical vector; determine the weights of multiple time windows based on the real-time vector and the historical vector, and calculate the cosine similarity between the real-time vector and the historical vector based on the dynamic weight; calculate the similarity scores of multiple candidate fault locations based on the Euclidean distance and the cosine similarity; in response to the existence of a similarity score greater than or equal to a preset score, use the candidate fault location with the highest similarity score as the target fault location.
[0174] As a preferred implementation method, in the embodiment of the present application, the fifth processing module is specifically used to: calculate the fusion coefficient of Euclidean distance and cosine similarity through the fault data training set; and obtain the similarity score through weighted summation based on the fusion coefficient, Euclidean distance and cosine similarity.
[0175] As a preferred implementation manner, in an embodiment of the present application, the fifth processing module is specifically further used to: determine the initial weights of multiple fault data based on the importance of multiple fault data; determine the revised weights of multiple fault data based on the fault thresholds of multiple fault data and / or the correlation coefficients between multiple fault data; and calculate the Euclidean distance between the real-time vector and the historical vector based on the revised weights of multiple fault data.
[0176] As a preferred implementation method, in the embodiment of the present application, the fifth processing module is specifically used to: obtain the fault threshold of multiple fault data; determine the sensitivity factors corresponding to the multiple fault data based on the multiple fault data and the fault threshold; and calculate the corrected weights of the multiple fault data based on the sensitivity factors.
[0177] As a preferred implementation method, in the embodiment of the present application, the fifth processing module is specifically used to: calculate the correlation coefficient between multiple fault data based on the historical fault data of multiple fault data; construct a correlation matrix based on the correlation coefficient; and calculate the corrected weights of multiple fault data based on the correlation matrix.
[0178] As a preferred implementation method, in an embodiment of the present application, the fifth processing module is specifically used to: divide the real-time vector and the historical vector into multiple time windows in chronological order according to a preset window size; calculate the weights of multiple time windows based on the attention mechanism; and calculate the cosine similarity between the real-time vector and the historical vector based on the weights of multiple time windows.
[0179] As a preferred implementation method, in an embodiment of the present application, the fifth processing module is specifically further used to: in response to the absence of a similarity score greater than or equal to a preset score, obtain hardware operation data of multiple hardware; cross-validate the faulty hardware based on the hardware operation data of multiple hardware; and determine the target fault location based on the cross-validation results.
[0180] For the description of the features in the embodiment corresponding to the hardware fault locating device, reference can be made to the relevant description of the embodiment corresponding to the hardware fault locating method, which will not be repeated here.
[0181] The embodiment of the present application further provides an electronic device, which may be a terminal, and its internal structure diagram may be as shown in FIG. Figure 6 As shown. The electronic device includes a processor, a memory, a network interface, a display screen and an input device connected via a system bus. The processor of the electronic device is used to provide computing and control capabilities. The memory of the electronic device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the electronic device is used to communicate with an external terminal via a network connection. When the computer program is executed by the processor, a hardware fault locating method is implemented. The display screen of the electronic device can be a liquid crystal display screen or an electronic ink display screen, and the input device of the electronic device can be a touch layer covering the display screen, or a button, trackball or touchpad provided on the housing of the electronic device, or an external keyboard, touchpad or mouse, etc.
[0182] Those skilled in the art will understand that Figure 6 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the electronic device to which the solution of the present application is applied. The specific electronic device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0183] In one embodiment, a computer device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the following steps are implemented: S1: acquiring hardware operation data corresponding to multiple hardware collected by a controller; S2: preprocessing the multiple hardware operation data according to the importance of the multiple hardware operation data; S3: determining the faulty hardware based on the preprocessed hardware operation data according to transfer learning and a long short-term memory network model; S4: acquiring real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extracting data features of the real-time fault data and data features of the historical fault data, and determining a real-time vector and a historical vector; S5: calculating the Euclidean distance and cosine similarity based on the real-time vectors and historical vectors of the multiple candidate fault locations based on dynamic weights, and determining a target fault location.
[0184] In one embodiment, when the processor executes the computer program, the following steps are further implemented: determining the quantile intervals corresponding to the multiple hardware operation data according to the importance of the multiple hardware operation data; and preprocessing the multiple hardware operation data according to the quantile intervals.
[0185] In one embodiment, when the processor executes the computer program, it also implements the following steps: obtaining the hardware life cycle and real-time load corresponding to multiple hardware operation data; based on the multiple hardware life cycle and real-time load, adaptively adjusting the quantile interval of the multiple hardware operation data.
[0186] In one embodiment, when the processor executes the computer program, it also implements the following steps: obtaining general hardware operation data and preprocessing the general hardware operation data; pre-training a preset long short-term memory network model through the preprocessed general hardware operation data until the preset long short-term memory network model converges to obtain a first model; fine-tuning the first model according to the hardware operation data to obtain a target model; inputting the processed hardware operation data into the target model and outputting the faulty hardware.
[0187] In one embodiment, when the processor executes the computer program, it also implements the following steps: inputting the preprocessed hardware operation data into a preset long short-term memory network model to obtain a loss function; judging whether the preset long short-term memory network model has converged based on the loss function; if not, updating the parameters of the preset long short-term memory network model through an optimization algorithm.
[0188] In one embodiment, when the processor executes the computer program, the following steps are further implemented: determining weights of multiple fault data based on the real-time vector and the historical vector, and calculating the Euclidean distance between the real-time vector and the historical vector; determining weights of multiple time windows based on the real-time vector and the historical vector, and calculating the cosine similarity between the real-time vector and the historical vector based on the dynamic weight; calculating similarity scores of multiple candidate fault locations based on the Euclidean distance and the cosine similarity; in response to a similarity score greater than or equal to a preset score, selecting the candidate fault location with the highest similarity score as the target fault location.
[0189] In one embodiment, when the processor executes the computer program, the following steps are further implemented: calculating a fusion coefficient of Euclidean distance and cosine similarity through a fault data training set; and obtaining a similarity score through weighted summation based on the fusion coefficient, Euclidean distance, and cosine similarity.
[0190] In one embodiment, when the processor executes the computer program, the following steps are further implemented: determining initial weights of the plurality of fault data based on the importance of the plurality of fault data; determining revised weights of the plurality of fault data based on the fault thresholds of the plurality of fault data and / or the correlation coefficients between the plurality of fault data; and calculating the Euclidean distance between the real-time vector and the historical vector based on the revised weights of the plurality of fault data.
[0191] In one embodiment, when the processor executes the computer program, the processor further implements the following steps: obtaining fault thresholds of multiple fault data; determining sensitivity factors corresponding to the multiple fault data based on the multiple fault data and the fault thresholds; and calculating corrected weights of the multiple fault data based on the sensitivity factors.
[0192] In one embodiment, when the processor executes the computer program, it further implements the following steps: calculating the correlation coefficients between the multiple fault data based on the historical fault data of the multiple fault data; constructing a correlation matrix based on the correlation coefficients; and calculating the corrected weights of the multiple fault data based on the correlation matrix.
[0193] In one embodiment, when the processor executes the computer program, it further implements the following steps: dividing the real-time vector and the historical vector into multiple time windows in chronological order according to a preset window size; calculating the weights of the multiple time windows based on the attention mechanism; and calculating the cosine similarity between the real-time vector and the historical vector based on the weights of the multiple time windows.
[0194] In one embodiment, when the processor executes the computer program, the following steps are also implemented: in response to the absence of a similarity score greater than or equal to a preset score, hardware operation data of multiple hardware are obtained; based on the hardware operation data of the multiple hardware, the faulty hardware is cross-validated; and based on the cross-validation results, the target fault location is determined.
[0195] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the following steps are implemented: S1: obtaining hardware operation data corresponding to multiple hardware collected by a controller; S2: preprocessing the multiple hardware operation data according to the importance of the multiple hardware operation data; S3: determining the faulty hardware based on the preprocessed hardware operation data according to transfer learning and long short-term memory network models; S4: obtaining real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extracting data features of the real-time fault data and data features of the historical fault data, and determining real-time vectors and historical vectors; S5: calculating Euclidean distance and cosine similarity based on dynamic weights according to the real-time vectors and historical vectors of the multiple candidate fault locations, and determining the target fault location.
[0196] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: determining the quantile intervals corresponding to the multiple hardware operation data according to the importance of the multiple hardware operation data; and preprocessing the multiple hardware operation data according to the quantile intervals.
[0197] In one embodiment, when the computer program is executed by the processor, the following steps are also implemented: obtaining the hardware life cycle and real-time load corresponding to multiple hardware operation data; and adaptively adjusting the quantile intervals of the multiple hardware operation data based on the multiple hardware life cycle and real-time load.
[0198] In one embodiment, when the computer program is executed by the processor, the following steps are also implemented: obtaining general hardware operation data and preprocessing the general hardware operation data; pre-training a preset long short-term memory network model through the preprocessed general hardware operation data until the preset long short-term memory network model converges to obtain a first model; fine-tuning the first model according to the hardware operation data to obtain a target model; inputting the processed hardware operation data into the target model and outputting the faulty hardware.
[0199] In one embodiment, when the computer program is executed by the processor, the following steps are also implemented: inputting the preprocessed hardware operation data into a preset long short-term memory network model to obtain a loss function; judging whether the preset long short-term memory network model has converged based on the loss function; if not, updating the parameters of the preset long short-term memory network model through an optimization algorithm.
[0200] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: determining the weights of multiple fault data based on the real-time vector and the historical vector, and calculating the Euclidean distance between the real-time vector and the historical vector; determining the weights of multiple time windows based on the real-time vector and the historical vector, and calculating the cosine similarity between the real-time vector and the historical vector based on the dynamic weight; calculating the similarity scores of multiple candidate fault locations based on the Euclidean distance and the cosine similarity; in response to the presence of a similarity score greater than or equal to a preset score, selecting the candidate fault location with the highest similarity score as the target fault location.
[0201] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: calculating the fusion coefficient of Euclidean distance and cosine similarity through the fault data training set; and obtaining a similarity score through weighted summation based on the fusion coefficient, Euclidean distance and cosine similarity.
[0202] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented: determining initial weights of the plurality of fault data based on the importance of the plurality of fault data; determining revised weights of the plurality of fault data based on the fault thresholds of the plurality of fault data and / or the correlation coefficients between the plurality of fault data; and calculating the Euclidean distance between the real-time vector and the historical vector based on the revised weights of the plurality of fault data.
[0203] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: obtaining fault thresholds of multiple fault data; determining sensitivity factors corresponding to the multiple fault data based on the multiple fault data and the fault thresholds; and calculating corrected weights of the multiple fault data based on the sensitivity factors.
[0204] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: calculating the correlation coefficients between the multiple fault data based on the historical fault data of the multiple fault data; constructing a correlation matrix based on the correlation coefficients; and calculating the corrected weights of the multiple fault data based on the correlation matrix.
[0205] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented: according to a preset window size, the real-time vector and the historical vector are divided into multiple time windows in chronological order; based on the attention mechanism, the weights of the multiple time windows are calculated; and according to the weights of the multiple time windows, the cosine similarity between the real-time vector and the historical vector is calculated.
[0206] In one embodiment, when the computer program is executed by the processor, the following steps are also implemented: in response to the absence of a similarity score greater than or equal to a preset score, hardware operation data of multiple hardware are obtained; based on the hardware operation data of the multiple hardware, the faulty hardware is cross-validated; and based on the cross-validation results, the target fault location is determined.
[0207] Those skilled in the art will understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0208] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0209] The above embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that a person skilled in the art could make various modifications and improvements without departing from the spirit of the present application, all of which fall within the scope of protection of the present application. Therefore, the scope of protection of the present patent application shall be determined by the appended claims.
Claims
1. A hardware fault location method, characterized in that: The method comprises: Acquire hardware operation data corresponding to multiple hardware collected by the controller, wherein the hardware operation data includes CPU temperature, PSU temperature and utilization rate data of various hardware types; pre-processing the plurality of hardware operation data according to their importance; Based on the pre-processed hardware operation data, the faulty hardware is identified using transfer learning and long short-term memory network models. Acquire real-time fault data and historical fault data of multiple candidate fault locations of the faulty hardware within a preset time, extract data features of the real-time fault data and data features of the historical fault data, and determine a real-time vector and a historical vector, wherein different fault locations correspond to different fault data; According to the real-time vectors and the historical vectors of the multiple candidate fault locations, based on dynamic weights, calculating the Euclidean distance and cosine similarity to determine the target fault location; The step of calculating the Euclidean distance and cosine similarity based on the real-time vectors and the historical vectors of the multiple candidate fault locations and dynamic weights to determine the target fault location includes: Determining weights of a plurality of fault data according to the real-time vector and the historical vector, and calculating the Euclidean distance between the real-time vector and the historical vector; Determining weights of multiple time windows according to the real-time vector and the historical vector, and calculating cosine similarity between the real-time vector and the historical vector based on dynamic weights; Calculating similarity scores of the multiple candidate fault locations based on the Euclidean distance and the cosine similarity; In response to a similarity score being greater than or equal to a preset score, the candidate fault location with the highest similarity score is used as the target fault location.
2. The hardware fault location method according to claim 1, characterized in that: The pre-processing of the plurality of hardware operation data according to the importance of the plurality of hardware operation data includes: Determining, based on the importance of the plurality of hardware operation data, quantile intervals corresponding to the plurality of hardware operation data; Preprocessing is performed on the plurality of hardware operation data according to the quantile interval.
3. The hardware fault location method according to claim 2, characterized in that: The determining, based on the importance of the plurality of hardware operation data, quantile intervals corresponding to the plurality of hardware operation data further includes: Obtain the hardware lifecycle and real-time load corresponding to multiple hardware operation data; Based on the life cycles and real-time loads of the multiple hardware devices, the quantile intervals of the multiple hardware operation data are adaptively adjusted.
4. The hardware fault location method according to claim 1, wherein: The method of determining faulty hardware based on pre-processed hardware operation data and using transfer learning and long short-term memory network models includes: Acquiring general hardware operation data, and preprocessing the general hardware operation data; Pre-training a preset long short-term memory network model using the pre-processed general hardware operation data until the preset long short-term memory network model converges to obtain a first model; Fine-tuning the first model according to the hardware operation data to obtain a target model; The processed hardware operation data is input into the target model, and the faulty hardware is output.
5. The hardware fault location method according to claim 4, characterized in that: The pre-training of the preset long short-term memory network model by using the pre-processed general hardware running data includes: Inputting the preprocessed hardware operation data into the preset long short-term memory network model to obtain a loss function; Determining whether the preset long short-term memory network model has converged according to the loss function; If not converged, the parameters of the preset long short-term memory network model are updated through the optimization algorithm.
6. The hardware fault location method according to claim 1, characterized in that: Calculating similarity scores of the multiple candidate fault locations according to the Euclidean distance and the cosine similarity includes: Calculating the fusion coefficient of the Euclidean distance and the cosine similarity through the fault data training set; The similarity score is obtained by weighted summation based on the fusion coefficient, the Euclidean distance and the cosine similarity.
7. The hardware fault location method according to claim 1, characterized in that: The determining the weights of the plurality of fault data according to the real-time vector and the historical vector, and calculating the Euclidean distance between the real-time vector and the historical vector, comprises: determining initial weights of the plurality of fault data according to the importance of the plurality of fault data; determining a corrected weight of the plurality of fault data according to the fault thresholds of the plurality of fault data and / or the correlation coefficients between the plurality of fault data; The Euclidean distance between the real-time vector and the historical vector is calculated according to the corrected weights of the plurality of fault data.
8. The hardware fault locating method according to claim 7, characterized in that: Determining, according to the fault thresholds of the plurality of fault data, corrected weights of the plurality of fault data, comprising: Obtaining a fault threshold value of the plurality of fault data; Determining sensitivity factors corresponding to the multiple fault data according to the multiple fault data and the fault threshold; Based on the sensitivity factors, corrected weights of the plurality of fault data are calculated.
9. The hardware fault locating method according to claim 7, characterized in that: Determining, based on correlation coefficients between the plurality of fault data, modified weights of the plurality of fault data, comprising: Calculating correlation coefficients between the plurality of fault data based on historical fault data of the plurality of fault data; constructing a correlation matrix based on the correlation coefficients; Based on the association matrix, corrected weights of the plurality of fault data are calculated.
10. The hardware fault location method according to claim 1, wherein: The step of determining weights of a plurality of time windows according to the real-time vector and the historical vector, and calculating cosine similarity between the real-time vector and the historical vector based on dynamic weights, includes: Dividing the real-time vector and the historical vector into a plurality of time windows in chronological order according to a preset window size; Calculating weights of the multiple time windows based on an attention mechanism; The cosine similarity between the real-time vector and the historical vector is calculated according to the weights of the multiple time windows.
11. The hardware fault location method according to claim 1, wherein: The calculating the similarity scores of the plurality of candidate fault locations according to the Euclidean distance and the cosine similarity further includes: In response to there not being a similarity score greater than or equal to a preset score, acquiring hardware operation data of the plurality of hardware; Cross-verifying the faulty hardware based on the hardware operation data of the multiple hardware; The target fault location is determined according to the cross-validation result.
12. A hardware fault locating device for implementing the hardware fault locating method according to any one of claims 1 to 11, characterized in that: The device comprises: A first processing module is used to obtain hardware operation data corresponding to multiple hardware collected by the controller; A second processing module, configured to pre-process the plurality of hardware operation data according to their importance; The third processing module is used to determine the faulty hardware based on the pre-processed hardware operation data using transfer learning and long short-term memory network models; a fourth processing module, configured to obtain real-time fault data and historical fault data of a plurality of candidate fault locations of the faulty hardware within a preset time, extract data features of the real-time fault data and data features of the historical fault data, and determine a real-time vector and a historical vector; A fifth processing module is configured to calculate the Euclidean distance and the cosine similarity based on the real-time vectors and the historical vectors of the multiple candidate fault locations and the dynamic weight to determine a target fault location.
13. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the hardware fault locating method according to any one of claims 1 to 11 when executing a computer program.
14. A computer-readable storage medium, characterized in that A computer program is stored in a computer-readable storage medium, wherein when the computer program is executed by a processor, the steps of the hardware fault locating method according to any one of claims 1 to 11 are implemented.
Citation Information
Patent Citations
Communication network operation and maintenance fault positioning and tracking method and system
CN119420639A