Performance prediction method, program, and apparatus
Converting one-dimensional array data to two-dimensional array data and training a CNN model addresses the accuracy issues in neural network predictions, enhancing the learning of local correlations and improving performance prediction accuracy.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-03
- Publication Date
- 2026-03-13
AI Technical Summary
Neural network models struggle to accurately predict performance characteristics such as airflow, static pressure, and efficiency from blade shape parameters due to the input being provided as a one-dimensional array, which hinders the learning of local correlations.
A method that converts one-dimensional array data into two-dimensional array data by duplicating and arranging parameter values, followed by training a machine learning model, specifically a CNN, to improve prediction accuracy.
The conversion to two-dimensional array data enhances the prediction accuracy of performance characteristics by allowing the CNN model to better learn local correlations, resulting in improved predictive performance.
Smart Images

Figure 2026046647000001_ABST
Abstract
Description
[Technical Field]
[0001] Embodiments of the present invention relate to a performance prediction method, program, and apparatus. [Background technology]
[0002] There are neural network models that predict performance characteristics such as airflow, static pressure, and efficiency from blade shape parameters, including blade dimensions, for blowers. However, since blade shape parameters are input to the neural network as a one-dimensional array, the network may not be able to learn local correlations between these parameters. Therefore, there is still room for improvement in the accuracy of performance predictions. [Prior art documents] [Patent Documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2023-028246 [Patent Document 2] Japanese Patent Publication No. 2020-126601 [Patent Document 3] Special Publication No. 2022-500745 [Non-patent literature]
[0004] [Non-Patent Document 1] "Blower Performance Prediction Technology Utilizing Surrogate Models," Toshiba Review, Vol. 78, No. 2 (March 2023), p. 24. [Overview of the Initiative] [Problems that the invention aims to solve]
[0005] The problem that this invention aims to solve is to provide a performance prediction method, program, and apparatus that improve the accuracy of performance prediction. [Means for solving the problem]
[0006] The performance prediction method according to the embodiment includes a conversion step, a training step, and a prediction step. The conversion step converts one-dimensional array data including a plurality of parameter values arranged in one dimension into two-dimensional array data in which the plurality of parameter values are arranged in two dimensions by replicating and arranging all or part of the plurality of parameter values. The training step trains a machine learning model based on training data including the two-dimensional array data and performance data corresponding to the one-dimensional array data, and generates a learned model that inputs the two-dimensional array data and outputs predicted performance data. The prediction step applies two-dimensional array data to be processed to the learned model to generate predicted performance data of the processing target.
Brief Description of Drawings
[0007] [Figure 1] Figure showing the hardware configuration of the performance prediction device [Figure 2] Figure showing the processing procedure of the performance prediction process [Figure 3] Figure schematically showing the conversion from one-dimensional array parameter values to two-dimensional array data [Figure 4] Figure showing the network configuration of the CNN model [Figure 5] Figure showing the processing procedure of the conversion process from one-dimensional array data to two-dimensional array data [Figure 6] Figure schematically showing a specific example of the processing procedure shown in FIG. 5 [Figure 7] Figure schematically showing the processing process of comparing the prediction accuracies of the performance data of the CNN model and the DNN model [Figure 8] Figure showing an overview of the training of the DNN model according to Example 1 [Figure 9] Figure showing an overview of the training of the CNN model according to Example 1 [Figure 10] It is a figure showing the prediction accuracy of the DNN model according to Example 1. [Figure 11] It is a figure showing the prediction accuracy of the CNN model according to Example 1. [Figure 12]This figure shows the relationship between predicted and true performance data from the CNN model in Example 2, broken down by array pattern and performance parameter values (pressure, efficiency, and noise). [Figure 13] A diagram showing an overview of the training of the one-dimensional CNN model according to Example 3. [Figure 14] This figure shows the relationship between predicted and actual performance data for Example 3, broken down by performance parameter values (pressure, efficiency, and noise) for each model. [Figure 15] This diagram schematically shows the processing steps for comparing the prediction accuracy of performance data between the CNN model and the DNN model according to Example 4. [Figure 16] Figure showing the prediction accuracy of the DNN model and CNN model according to Example 4. [Figure 17] Diagram showing the processing procedure for model training related to modified models. [Modes for carrying out the invention]
[0008] The performance prediction method, program, and apparatus related to this embodiment will be described below with reference to the drawings.
[0009] Figure 1 shows the hardware configuration of the performance prediction device 1 according to this embodiment. As shown in Figure 1, the performance prediction device 1 is a computer having a processor 11, ROM (Read Only Memory) 12, RAM (Random Access Memory) 13, auxiliary storage device 14, input device 15, display device 16, and communication device 17. Data and various signals are transmitted and received between the processor 11, ROM 12, RAM 13, auxiliary storage device 14, input device 15, display device 16, and communication device 17 via a bus.
[0010] The processor 11 is an integrated circuit that controls the overall operation of the performance prediction device 1. For example, the processor 11 includes a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a DSP (Digital Signal Processor), and / or an FPU (Floating-Point Unit). The processor 11 may also include internal memory and I / O interfaces. The processor 11 performs various processes by interpreting and calculating programs pre-stored in the ROM 12 or auxiliary storage device 14, etc. The processor 11 may be partially or entirely implemented by hardware such as an ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array).
[0011] ROM12 is a non-volatile memory that stores various types of data. For example, ROM12 stores data and settings used by the processor 11 when it performs various processes. ROM12 may also have a non-temporary computer-readable storage medium that stores programs executed by the processor 11.
[0012] RAM13 is volatile memory used for reading and writing data. RAM13 temporarily stores data used by the processor 11 when it performs various processes. RAM13 provides the work area for the processor 11.
[0013] The auxiliary storage device 14 is a non-volatile memory that stores various types of data. For example, the auxiliary storage device 14 stores data and settings used by the processor 11 when it performs various processes, and data generated by various processes performed by the processor 11. The auxiliary storage device 14 is composed of an HDD (Hard Disk Drive), an SSD (Solid State Drive), an integrated circuit storage device, etc. The auxiliary storage device 14 may also have a non-temporary computer-readable storage medium that stores programs executed by the processor 11.
[0014] The input device 15 receives various operation inputs from the operator. The input device 15 can include a keyboard, mouse, various switches, touchpad, touch panel display, etc. Electrical signals corresponding to the received operation inputs are supplied to the processor 11.
[0015] The display device 16 displays various data according to the control of the processor 11. The display device 16 can be a CRT (Cathode-Ray Tube) display, a liquid crystal display, an organic EL (Electro-Luminescence) display, an LED (Light-Emitting Diode) display, a plasma display, or any other display as appropriate. The display device 16 may also be a projector.
[0016] The communication device 17 includes a communication interface such as a network interface card (NIC) for data communication with various devices connected to the performance prediction device 1 via a network. Electrical signals may be supplied from a computer connected via the communication device 17 or from an input device provided by that computer, and various data may be displayed on a display device provided by a computer connected via the communication device 17. However, for the sake of simplicity in the following explanation, unless otherwise specified, the source of the electrical signals will be the input device 15, and the destination for the display of various data will be the display device 16. The input device 15 can be replaced by a computer connected via the communication device 17 or from an input device provided by that computer, and the display device 16 can be replaced by a display device provided by a computer connected via the communication device 17.
[0017] The performance prediction device 1 does not need to include all of the processor 11, ROM 12, RAM 13, auxiliary storage device 14, input device 15, display device 16, and communication device 17. Some of the ROM 12, RAM 13, auxiliary storage device 14, input device 15, display device 16, and communication device 17 may be omitted as needed. The performance prediction device 1 may be equipped with any additional hardware devices useful for executing the processing according to this embodiment. The performance prediction device 1 does not need to consist of a single physical computer; it may consist of a computer system having multiple computers connected communicably via wired or network lines. The assignment of the series of processes according to this embodiment to the multiple processors 11 implemented in each of the multiple computers can be arbitrarily configured. All processors 11 may execute all processes in parallel, or specific processes may be assigned to one or some of the processors 11, and the series of processes according to this embodiment may be executed by the entire computer system.
[0018] The processor 11 performs at least a conversion step, a training step, and a prediction step. The conversion step converts one-dimensional array data, which contains multiple parameter values arranged in one dimension, into two-dimensional array data, in which multiple parameter values are arranged in two dimensions, by duplicating and arranging the multiple parameter values. The one-dimensional array data is input data containing multiple parameter values arranged in one dimension. The multiple parameter values represent multiple values corresponding to process parameters related to the target product. The performance data includes the values of one or more performance parameters used to evaluate the performance of the product.
[0019] The training process involves training a machine learning model based on training data that includes two-dimensional array data and performance data corresponding to one-dimensional array data, thereby generating a trained model that takes two-dimensional array data as input and outputs predictive performance data. Predictive performance data refers to the performance data output from the trained model. The performance data and / or predictive performance data include parameter values for one or more performance parameters used to evaluate the product's performance.
[0020] The machine learning model is typically assumed to be a CNN (Convolutional Neural Network) model. In this embodiment, the CNN model means a neural network model having at least convolutional layers. The CNN model may also have other network layers such as pooling layers and fully connected layers. In addition, the training process may involve training a DNN (Deep Neural Network) model as the machine learning model. In this embodiment, the DNN model means a neural network model having fully connected layers but no convolutional layers.
[0021] The prediction process involves applying the trained model to the target 2D array data to generate prediction performance data. The target 2D array data can be transformed from the target 1D array data in the transformation process.
[0022] The following describes the processing procedure for the performance prediction process performed by the processor 11 of the performance prediction device 1.
[0023] Figure 2 shows the processing procedure for performance prediction. The performance prediction method shown in Figure 2 is started when the processor 11 reads a performance prediction program from the auxiliary storage device 14, interprets it, and executes it.
[0024] First, the processor 11 acquires one-dimensional array data and performance data corresponding to that one-dimensional array data (step SA1). The combination of one-dimensional array data and performance data constitutes training samples used to train a machine learning model. Multiple training samples are acquired in step SA1.
[0025] When step SA1 is performed, the processor 11 converts the one-dimensional array data into two-dimensional array data (step SA2). Step SA2 is performed for each of the multiple training samples. In step SA2, the processor 11 converts the multiple process parameter values into two-dimensional array data by duplicating and arranging all of the multiple process parameter values.
[0026] Figure 3 schematically illustrates the conversion from one-dimensional array parameters to two-dimensional array data. Here, the process parameter value is "X n This is written as "n = n". "n" is an index that identifies the type of process parameter, and 1 ≤ n ≤ N. "N" is the total number of types of process parameters, and "N" is a natural number greater than or equal to 2. Figure 3 illustrates the case where the total number of types of process parameters is 4 (N=4).
[0027] As shown in Figure 3, a one-dimensional array parameter is N-dimensional data containing N process parameter values Xn arranged in one dimension. In this embodiment, the arrangement direction of the process parameter values Xn in the one-dimensional array parameter is the horizontal (row) direction. In this case, "N" means the number of elements in the horizontal direction of the one-dimensional array parameter, and the one-dimensional array data has N process parameter values Xn arranged along the horizontal direction without overlapping parameter types.
[0028] The two-dimensional array data has N × M parameter values Xn arranged in a two-dimensional space defined by the horizontal row direction and the vertical row direction perpendicular to the horizontal row direction. "M" represents the number of copies of the N process parameter values Xn, or in other words, the number of elements in the vertical row direction of the two-dimensional array data. "M" is a natural number greater than or equal to 2, and in Figure 3, it is assumed to be 4, the same as "N", as one row.
[0029] In step SA2, the processor 11 may duplicate multiple process parameter values Xn in the vertical direction and rearrange them horizontally. In this case, it is desirable that the process parameter values Xn be arranged so that there is no overlap in parameter types in both the horizontal and vertical directions. For example, the order of process parameter values Xn in the first horizontal row shown in Figure 3 is (X2, X3, X1, X4) from left to right, but this order does not exist in the second, third, or fourth horizontal rows. In another example, the order of process parameter values Xn in the second vertical column is (X3, X1, X2, X4) from top to bottom, but this order does not exist in the first, third, or fourth vertical columns. By avoiding overlap in parameter types in both the horizontal and vertical directions in this way, it becomes possible to increase the variation in the arrangement patterns of parameter types within the application range (receptive field) of the filtering process by the convolutional layer of the CNN model described later, and consequently, it becomes possible to improve the prediction accuracy of the performance of the CNN model. Details of the conversion process from one-dimensional array data to two-dimensional array data will be described later.
[0030] The parameter type array pattern for the two-dimensional array data is common to all training samples. The parameter type array pattern is stored in the auxiliary storage device 14.
[0031] Once step SA2 is performed, processor 11 trains the CNN model based on the 2D array data and performance data (step SA3). First, let's explain the network configuration of the CNN model.
[0032] Figure 4 shows the network configuration of a CNN model. As shown in Figure 4, the CNN model takes two-dimensional array data as input and outputs prediction performance data. The CNN model has an input layer, a convolutional layer, a pooling layer, a flattening layer, and an output layer.
[0033] The input layer takes two-dimensional array data as input. The convolutional layer performs convolution on the input data using multiple filters and outputs multiple feature maps, which are two-dimensional distributions of feature values. The number of output feature maps corresponds to the number of filters. The application range 41 of each filter is also called the receptive field. For each of the multiple filters, the convolutional layer applies the filter to the input data while changing the application range 41 by a predetermined stride and performs the convolution operation. The convolutional layer extracts, emphasizes, or suppresses local two-dimensional array patterns specific to each filter from the two-dimensional array of parameter values included in the application range 41. The matrix size of the application range 41 is not limited to 2x2 and can be set to any size. The weights of multiple positions within the same filter are common.
[0034] The pooling layer reduces the feature values within the pooling region 42 of the feature map output from the convolutional layer using a predetermined reduction method while changing the pooling region 42, thereby generating a reduced map, which is a two-dimensional distribution of the reduced values. As an example of the reduction method, mean pooling, which calculates the average value of multiple feature values within the pooling region 42, may be used. However, the reduction method is not limited to mean pooling; maximum pooling, which calculates the maximum value of multiple feature values within the pooling region 42, minimum pooling, which calculates the minimum value, or any other method for calculating the reduced value may also be used.
[0035] The flattening layer performs a flattening process to convert a 2D reduced map into a 1D map, generating 1D reduced value data. The output layer performs a performance calculation process to calculate performance values based on the 1D reduced value data, generating predicted performance data Y. The predicted performance data Y is output as a vector containing the parameter values of one or more performance parameters.
[0036] The network configuration of the CNN model described above is just one example; any network configuration capable of performing convolution on 2D array data and outputting prediction performance data is acceptable. For example, a CNN model may have a configuration in which blocks containing convolutional layers and pooling layers are connected in series. Additionally, a network layer that performs zero-padding to expand the matrix size of the feature map or reduced map may be provided.
[0037] In step SA3, the processor 11 performs supervised learning on the CNN model based on multiple training samples to generate a trained CNN model. Specifically, it inputs the 2D array data of each of the multiple training samples into the untrained CNN model and sequentially performs convolution by a convolutional layer, reduction by a pooling layer, flattening by a flattening layer, and performance calculation by an output layer to calculate predicted performance data.
[0038] Next, processor 11 calculates the error between the prediction performance data and the correct prediction data included in the training samples, and updates the network parameters of the CNN model based on the calculated error. Specifically, the network parameters include weights and biases assigned to network layers such as convolutional layers. Processor 11 repeats the process of calculating prediction performance data and updating network parameters while changing the training samples until predetermined termination conditions are met. The termination conditions can be set to reaching a predetermined number of iterations, reaching a predetermined accuracy for the prediction performance data, or any other arbitrary condition. Stochastic gradient descent, Adam, or any other arbitrary optimization method can be used. Learning parameters such as the learning rate, batch size, and activation function can also be set arbitrarily.
[0039] If the termination condition is met, the network parameters for that iteration are stored in the auxiliary storage device 104 as trained network parameters. The CNN model to which the trained network parameters are assigned is used as the trained CNN model. The trained CNN model may also be stored in the auxiliary storage device 104.
[0040] When step SA3 is performed, the processor 11 acquires the one-dimensional array data to be processed (step SA4). The one-dimensional array data to be processed refers to the one-dimensional array data for which the prediction performance data will be calculated.
[0041] When step SA4 is performed, the processor 11 converts the one-dimensional array data to be processed into two-dimensional array data (step SA5). In step SA5, the processor 11 reads the array pattern of the parameter type from the auxiliary storage device 14 and converts the one-dimensional array data to be processed into two-dimensional array data according to the read array pattern. This makes it possible to use the same array pattern during training and inference, improving the accuracy of calculating prediction performance data. The converted two-dimensional array data is called the two-dimensional array data to be processed.
[0042] When step SA5 is performed, the processor 11 applies the two-dimensional array data to be processed to the trained CNN model to generate predictive performance data for the data to be processed (step SA6). In step SA6, the processor 11 reads the trained CNN model from the auxiliary storage device 14, inputs the two-dimensional array data to be processed into the read trained CNN model, and sequentially performs convolution processing by the convolutional layer, reduction processing by the pooling layer, flattening processing by the flattening layer, and performance calculation processing by the output layer to calculate predictive performance data for the data to be processed.
[0043] When step SA6 is performed, the processor 11 displays the prediction performance data to be processed on the display device 16 (step SA7). The method of displaying the prediction performance data to be processed is not particularly limited. The processor 11 may display the one-dimensional array data and / or two-dimensional array data to be processed together with the prediction performance data to be processed. The processor 11 may also attach a label to the prediction performance data to be processed to indicate that it is data predicted by a CNN model and display it.
[0044] With this, the performance prediction process by processor 11 is completed.
[0045] Next, the details of the conversion process from one-dimensional array data to two-dimensional array data by the processor 11 will be described. The conversion process sequentially generates M arrays by arranging N parameter values in an order based on a predetermined algorithm in each of the M columns of a two-dimensional space defined in the first and second directions. Here, the parameter values of the first array or the second array are rearranged so that there is no overlap in parameter types between adjacent first and second arrays with respect to a predetermined direction other than the first direction (hereinafter referred to as the check direction), thereby generating two-dimensional array data.
[0046] Figure 5 shows the processing steps for converting one-dimensional array data to two-dimensional array data. Figure 6 is a schematic diagram illustrating a specific example of the processing steps shown in Figure 5. In Figures 5 and 6, the first direction is the horizontal direction, the second direction is the vertical direction, and the check direction is also the vertical direction. In Figure 6, the total number of parameter types N is 4, and the total number of columns M is 4. That is, the two-dimensional space defined by the first and second directions has 4 × 4 pixels.
[0047] As shown in Figure 5, the processor 11 processes N process parameter values X of one-dimensional array data. n Place the first row (step SB1). Process parameter values X are arranged in the first row. n The order can be any order, such as the original order. For example, as shown in Figure 6, the order of N process parameter values X is (X2, X3, X1, X4) from column 1 to column 4. n It is placed in the first row.
[0048] When step SB1 is performed, the processor 11 has N process parameter values X n The random number generator duplicates and places the m-th row (step SB2). m is set sequentially from 2 to M. Initially, m is set to 2. When m=2, the processor 11 generates a process parameter value X of one of the four parameter types using the random number generator. n Generates the generated process parameter value Xn Place it in the blank pixel of the first vertical column in the second horizontal row. Next, the processor 11 uses the random number generator to generate the process parameter value X of any one of the remaining three parameter types n and place the generated process parameter value X n in the blank pixel of the second vertical column in the second horizontal row. Similarly, the processor 11 places the process parameter value X n in the blank pixel of the third vertical column and the fourth vertical column in the second horizontal row. As a result, the parameter value X is arranged in the second horizontal row in the order according to the random number generator n . As a result, as shown in 2 of FIG. 6, it is assumed that N parameter values X are arranged in the second horizontal row in the order of (X1, X3, X4, X2). n
[0049] When step SB2 is performed, the processor 11 determines whether there is duplication of parameter types in the vertical direction (check direction) between the (m - 1)-th horizontal row and the m-th horizontal row (step SB3). The presence or absence of duplication is determined for all vertical columns. For example, as shown in 2 of FIG. 6, for the second vertical column, since the parameter types of the first horizontal row and the second horizontal row are both X3 and are the same, it is determined that there is duplication. On the other hand, for the other first, third, and fourth vertical columns, the parameter types of the first horizontal row and the second horizontal row are different, and it is determined that there is no duplication.
[0050] If it is determined that there is duplication in at least one vertical column (step SB4: YES), the processor 11 rearranges the process parameter values X in the m-th horizontal row so as to avoid duplication in the vertical direction (step SB5). The method of rearrangement is not particularly limited. As an example, the processor 11 may rearrange the N process parameter values X in the second horizontal row again in the order according to the random number generator, or may exchange the process parameter value X between the pixel determined to have duplication and the pixel adjacent to it in the horizontal direction. For example, as shown in 3 of FIG. 6, the process parameter value X is exchanged between the pixel of the first vertical column and the pixel of the second vertical column in the second horizontal row n n n n By swapping them, duplication of parameter types in the vertical direction is avoided.
[0051] If step SB5 is performed or if it is determined that there are no duplicates (step SB4: NO), the processor 11 determines whether the m-th row to be processed is the last M-th row, i.e., whether m=M (step SB6). If it is determined that m=M is not (step SB6: NO), the processor 11 shifts the m-th row to be processed down by one column, i.e., executes m=m+1 (step SB7). The processor 11 repeats steps SB2 to SB6 for the m-th row to be processed in the same way until it is determined in step SB6 that the m-th row to be processed is the last M-th row. This outputs the 2D array data.
[0052] For example, as shown in Figure 6, 4, the processor 11 has N process parameter values X n The random number generator duplicates these values and places them in the third row, and in step SB3, it is determined whether there is any overlap in parameter types in the vertical direction (step SB2). In the case of 4 in Figure 6, it is determined that there is overlap in parameter types in the second and fourth columns (step SB4: YES), so the processor 11, as shown in 5 in Figure 6, processes the N process parameter values X in the third row. n The order is rearranged (step SB5). Next, the processor 11 has N process parameter values X as shown in 6 of Figure 6. n The random number generator duplicates the result and places it in the last, fourth row (Step SB2). In the case of 6 in Figure 6, it is determined that there are no vertical duplicates in any of the vertical columns (Step SB4: NO).
[0053] If it is determined that the mth row to be processed is the last mth row (step SB6: YES), the processor 11 outputs the two-dimensional array data (step SB8).
[0054] With the above steps, the conversion process from one-dimensional array data to two-dimensional array data is complete.
[0055] According to the algorithm described above, N parameter values X n By arranging them in a two-dimensional space, it is possible to generate two-dimensional array data without overlapping parameter types in the horizontal and vertical directions. By avoiding overlapping parameter types in the horizontal and vertical directions, the parameter values X in the application range 41 of the convolution process can be generated. n This makes it possible to increase the diversity of the array, and consequently, to improve the prediction accuracy of performance data.
[0056] Note that the above conversion process is just one example, and various steps can be deleted, added, and / or modified. For example, N parameter values X n The row in which the first parameter X is placed is not limited to the first row, but can be the Mth row or any other row. Another example is N parameters X n Although they are supposed to be arranged horizontally, they may also be arranged vertically.
[0057] Regarding other aspects, in the above conversion process, the checking direction for determining duplicate parameter types was assumed to be vertical, but it may also be diagonal. Furthermore, the checking direction is not limited to one direction, but may be two directions, such as vertical and diagonal. The range for determining duplicate parameter types (hereinafter referred to as the duplicate detection range) is not limited to two adjacent pixels with respect to the checking direction as described above, but may be set to any rectangular area consisting of a number of pixels less than or equal to the number of parameter types. In this case, the processor 11 arranges multiple parameter values in the two-dimensional array data such that the array patterns of parameter types contained in a rectangular area of a predetermined size do not overlap at any position. For example, when N=4, a square area of 2 pixels vertically × 2 pixels horizontally can be set as the duplicate detection range. In this case, since the duplicate detection range can avoid the overlap of parameter types, it becomes possible to avoid diagonal overlaps, which were permitted in the algorithms of Figures 5 and 6, which avoided the overlap of parameter types only in the vertical direction.
[0058] Next, an embodiment of this example will be described.
[0059] <Example 1> Example 1 compares the prediction accuracy of performance data between a CNN model and a DNN model.
[0060] Figure 7 schematically shows the processing steps for comparing the prediction accuracy of performance data between a CNN model and a DNN model. The product in Example 1 is a centrifugal blower. As shown in Figure 7, there are five process parameters: airflow Q, outlet angle θ, number of blades N, blade length L, and blade height L. There are three performance parameters: pressure, efficiency, and performance. Each of the three performance parameter values is derived based on the five process parameter values.
[0061] 659 samples were prepared, each representing a combination of process parameter values and performance parameter values. Of these, 454 were used as training samples, and the remaining 165 were used as test samples. The DNN and CNN models were trained based on the training samples, and the prediction accuracy of the DNN and CNN models was validated based on the test samples.
[0062] Figure 8 shows an overview of the training of the DNN model according to Example 1. As shown in Figure 8, the DNN model has two hidden layers. The hidden layers are fully connected layers and have seven nodes. Network parameters, called weights, are assigned to the connections between the nodes. The DNN model was trained using supervised learning based on 454 training samples to take five process parameter values X (airflow Q, outlet angle θ, number of blades N, blade length L, blade height L) as input and output three performance parameter values Y (pressure, efficiency, noise). The learning rate was 0.05, the batch size was 26, and the ReLU activation function was used for the hidden layers.
[0063] Figure 9 shows an overview of the training of the CNN model according to Example 1. As shown in Figure 9, the CNN model has convolutional layers and pooling layers. Two blocks, which are combinations of convolutional and pooling layers, are linked together. The number of filters in the convolutional layer is 16 for the first block and 32 for the second block. The matrix size of the receptive field of the convolutional layer is 3x3, and the matrix size of the pooling region of the pooling layer is 2x2. The CNN model was trained using supervised learning based on 454 training samples to take five types of process parameter values X (airflow Q, outlet angle θ, number of blades N, blade length L, blade height L) as input and output three types of performance parameter values Y (pressure, efficiency, noise). The input 2D array data has an array pattern (scattered array) with no overlap of parameter types in the vertical and horizontal directions. The scattered array allows for some overlap in the diagonal direction. The learning rate was 0.05, the batch size was 26, and the activation function used was ReLU.
[0064] Figure 10 shows the prediction accuracy of the DNN model. Figure 11 shows the prediction accuracy of the CNN model. Figures 10 and 11 show the coefficient of determination R per training iteration when using training samples. 2 This graph shows the performance parameters for each type, and Figures 10 and 11 show the coefficient of determination R for each training iteration when using test samples. 2 These are graphs showing the relationship between each type of performance parameter. Figures 10 and 11-3 show the relationship between the predicted and true values of the performance parameter pressure, Figures 10 and 11-4 show the relationship between the predicted and true values of the performance parameter efficiency, and Figures 10 and 11-5 show the relationship between the predicted and true values of the performance parameter noise. The true value refers to the correct predicted data within the sample.
[0065] As can be seen by comparing Figure 10 and Figure 11, for both the training and test samples, the CNN model has a higher coefficient of determination R than the DNN model for all performance parameter values. 2 This is good. In particular, the coefficient of determination of noise R 2The DNN model has a score of 0.8723, while the CNN model has a score of 0.9124, indicating a significant improvement.
[0066] <Example 2> Example 2 verifies the dependence of the CNN model on the prediction accuracy of the parameter type array pattern in 2D array data. The product, process parameters, and performance parameters in Example 2 are the same as in Example 1.
[0067] Figure 12 shows the relationship between predicted and true performance data from a CNN model, broken down by array pattern and performance parameter type (pressure, efficiency, and noise). The top row of Figure 12 shows a random array. A random array is an array pattern where there is no overlap of parameter types in the vertical and horizontal directions, but there is overlap of parameter types limited to a part of the diagonal direction. The middle row of Figure 12 shows a horizontal array. A horizontal array is an array pattern where there is no overlap of parameter types in the vertical and diagonal directions, but there is overlap of parameter types in the horizontal direction. The bottom row of Figure 12 shows a diagonal array. A diagonal array is an array pattern where there is no overlap of parameter types in the horizontal and vertical directions, but there is overlap of parameter types in all diagonal directions.
[0068] Compared to the performance parameter values of the DNN model in Figure 12, the prediction accuracy for noise improves for all arrangement patterns. For the random arrangement, the prediction accuracy improves for all performance parameter values of pressure, efficiency, and noise compared to the DNN model, and the prediction accuracy for efficiency, in particular, improves significantly. Therefore, it can be seen that the random arrangement has higher prediction accuracy than the horizontal and diagonal arrangements.
[0069] <Example 3> Example 3 verifies the difference in prediction accuracy between one-dimensional array data and two-dimensional array data for a CNN model. The product, process parameters, and performance parameters for Example 3 are the same as those for Example 1.
[0070] Figure 13 shows an overview of the training of a one-dimensional CNN model according to Example 3. As shown in Figure 13, the one-dimensional CNN model, like the two-dimensional CNN model shown in Figure 9, has an input layer, a convolutional layer, a pooling layer, a flattening layer, and an output layer. The input layer receives one-dimensional array data in which five types of process parameter values X (airflow Q, outlet angle θ, number of blades N, blade length L, blade height L) are arranged in one dimension. The convolutional layer performs one-dimensional convolution. The receptive field matrix size of the convolutional layer is 3. The pooling layer performs one-dimensional pooling. The pooling region matrix size of the pooling layer is 2. Two blocks of convolutional and pooling layers are connected in series. The number of filters in the convolutional layer is 64 in both the first and second blocks. The one-dimensional CNN model was trained using supervised learning based on 454 training samples to take five process parameter values X (airflow Q, outlet angle θ, number of blades N, blade length L, blade height L) arranged in one dimension as input and output three performance parameter values Y (pressure, efficiency, noise). The learning rate was 0.05, the batch size was 26, and the ReLU activation function was used.
[0071] Figure 14 shows the relationship between predicted and true performance data for each model and performance parameter value (pressure, efficiency, and noise). The model in the upper part of Figure 14 is the DNN model shown in Figure 8, the model in the middle part of Figure 14 is the 1D CNN model shown in Figure 13, and the model in the lower part of Figure 14 is the 2D CNN model shown in Figure 9. Comparing the upper and middle parts of Figure 14, the 1D CNN model shows improved accuracy only for noise compared to the DNN model. Comparing the middle and lower parts of Figure 14, the 2D CNN model shows improved accuracy for pressure, efficiency, and noise compared to the 1D CNN model. This is expected to be partly because the 2D model takes 2D array data as input, while the 1D model takes 1D array data as input, allowing the 2D model to extract various local array patterns of process parameter types compared to the 1D model.
[0072] <Example 4> Example 4 verified the prediction accuracy of the DNN model and CNN model for different products, process parameters, and performance parameters than those in Examples 1, 2, and 3.
[0073] Figure 15 schematically shows the processing steps for comparing the prediction accuracy of performance data between the CNN model and the DNN model according to Example 4. The product according to Example 4 is concrete. As shown in Figure 15, there are eight process parameters: mass fraction of component 1 (cement), mass fraction of component 2 (blast furnace slag), mass fraction of component 3 (fly ash), mass fraction of component 4 (water), mass fraction of component 5 (high-performance water-reducing agent), mass fraction of component 6 (coarse aggregate), mass fraction of component 7 (fine aggregate), and elapsed years. There is one performance parameter: pressure strength. One performance parameter value is derived based on the eight process parameter values.
[0074] 1030 samples were prepared, each representing a combination of process parameter values and performance parameter values. Of these, 782 were used as training samples, and the remaining 248 were used as test samples. The DNN and CNN models were trained based on the training samples, and the prediction accuracy of the DNN and CNN models was validated based on the test samples.
[0075] Figure 16 shows the prediction accuracy of the DNN model and CNN model according to Example 4. The upper part of Figure 16 is a graph showing the relationship between the predicted and true values of the compression strength, which is a performance parameter value of the DNN model, and the lower part of Figure 16 is a graph showing the relationship between the predicted and true values of the compression strength, which is a performance parameter value of the CNN model. As shown in Figure 16, the coefficient of determination R of the DNN model 2 The coefficient of determination R for the CNN model is 0.8802. 2 Since the value is 0.9006, it can be seen that the CNN model has better prediction accuracy than the DNN model for the process parameters and performance parameters related to Example 4.
[0076] (modified version) The training process for the modified model generates a first trained model having fully connected layers but no convolutional layers. If the performance of the first trained model does not reach the standard, a second trained model having convolutional layers is generated. The model training process for the modified model is described in detail below. The first trained model represents a DNN model, and the second trained model represents a CNN model.
[0077] Figure 17 shows the processing steps for the model training process related to the modified example. As shown in Figure 17, first the processor 11 trains a DNN model based on one-dimensional array data to generate a trained DNN model (step SC1). The DNN model can be trained using supervised learning based on training samples, as described above.
[0078] Once step SC1 is performed, the processor 11 evaluates the performance of the trained DNN model (step SC2). Specifically, the processor 11 applies samples to the trained DNN model and calculates parameter values for evaluating the performance of the trained DNN model. These parameter values include the coefficient of determination R 2 It is possible to use any indicator, such as accuracy rate.
[0079] When step SC2 is performed, the processor 11 determines whether the performance meets the criteria (step SC3). Specifically, the processor 11 determines whether the parameter values for performance evaluation calculated in step SC2 exceed the reference values. If the parameter values exceed the reference values, the performance is determined to meet the criteria; if the parameter values fall below the reference values, the performance is determined to not meet the criteria.
[0080] If the performance is determined to meet the criteria in step SC3 (step SC3: YES), the processor 11 outputs the trained DNN model (step SC4). The output trained DNN is used to generate predictive performance data.
[0081] If the performance is determined to be below the standard in step SC3 (step SC3: NO), the processor 11 trains a CNN model based on 2D array data to generate a trained CNN model (step SC5). The CNN model can be trained using supervised learning based on training samples, as described above.
[0082] When step SC5 is performed, processor 11 outputs the trained CNN model (step SC6). The output trained CNN is used to generate prediction performance data. In addition to the trained CNN model, a trained DNN model may also be output.
[0083] When step SC4 or SC6 is performed, the model training process for the modified model is completed.
[0084] As described above, the input to the DNN model is one-dimensional array data, while the input to the CNN model is two-dimensional array data. Therefore, the training load is expected to be lighter for the DNN model than for the CNN model. Furthermore, the performance of the DNN model and the CNN model may differ depending on the type of process parameters and performance parameters. In the modified version, the DNN model is trained first, and only if the performance of the DNN model does not reach the standard is the CNN model trained. Therefore, if the performance of the DNN model reaches the standard, it becomes possible to obtain a machine learning model with good accuracy with a light load. In addition, it becomes possible to generate an appropriate machine learning model depending on the type of process parameters and performance parameters.
[0085] Thus, according to the above embodiment, it becomes possible to provide a performance prediction method, program, and apparatus that improve the accuracy of performance prediction.
[0086] While several embodiments of the present invention have been described, these embodiments are presented as examples only and are not intended to limit the scope of the invention. These novel embodiments can be carried out in a variety of other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims of the invention and its equivalents. [Explanation of Symbols]
[0087] 1...Performance prediction device, 11...Processor, 12...ROM, 13...RAM, 14...Auxiliary storage device, 15...Input device, 16...Display device, 17...Communication device.
Claims
1. A conversion step involves converting one-dimensional array data containing multiple parameter values arranged in one dimension into two-dimensional array data in which the multiple parameter values are arranged in two dimensions by duplicating and arranging the multiple parameter values, A training step of training a machine learning model based on training data including the two-dimensional array data and performance data corresponding to the one-dimensional array data, thereby generating a trained model that takes the two-dimensional array data as input and outputs predictive performance data, A prediction step in which the two-dimensional array data to be processed is applied to the pre-trained model to generate prediction performance data for the target of processing, A performance prediction method comprising the following:
2. The performance prediction method according to claim 1, wherein the conversion step arranges the plurality of parameter values such that there is no overlap in the parameter types in each column and row of the two-dimensional array data.
3. The performance prediction method according to claim 1, wherein the conversion step arranges the plurality of parameter values in the two-dimensional array data such that the array patterns of parameter types contained in a rectangular area of a predetermined size do not overlap at any position.
4. The aforementioned one-dimensional array data has N (where N is a natural number) parameter values arranged in one dimension as the plurality of parameter values. The aforementioned two-dimensional array data has N × M (where M is a natural number) parameter values arranged in a two-dimensional space defined by a first direction and a second direction orthogonal to the first direction. The aforementioned conversion process is M arrays are sequentially generated by arranging the N parameter values in each of the M columns of the two-dimensional space in an order based on a predetermined algorithm, and the two-dimensional array data is generated by rearranging the parameter values of the first array or the second array so that there is no overlap in parameter types between adjacent first and second arrays in a predetermined direction other than the first direction. The performance prediction method according to claim 1.
5. The performance prediction method according to claim 1, wherein the machine learning model is a convolutional neural network including a convolutional layer that performs convolution processing on the two-dimensional array data with a plurality of filters.
6. The aforementioned training process is, As the aforementioned trained model, a first trained model having fully connected layers but no convolutional layers is generated. If the performance of the first trained model does not reach the standard, a second trained model having a convolutional layer is generated as the trained model. The performance prediction method according to claim 1.
7. The aforementioned multiple parameter values include multiple values corresponding to multiple process parameters relating to the product, The performance data and / or the predicted performance data include the values of one or more performance parameters used to evaluate the performance of the product. The performance prediction method according to claim 1.
8. The aforementioned plurality of process parameters include at least two of the following in the centrifugal blower product: airflow, outlet angle, number of blades, blade length, and blade height. The one or more performance parameters include pressure, efficiency and / or noise. The performance prediction method according to claim 7.
9. In the processor, A conversion function that converts one-dimensional array data containing multiple parameter values arranged in one dimension into two-dimensional array data in which the multiple parameter values are arranged in two dimensions by duplicating and arranging the multiple parameter values, A training function that trains a machine learning model based on training data including the two-dimensional array data and performance data corresponding to the one-dimensional array data, and generates a trained model that takes the two-dimensional array data as input and outputs predictive performance data, A prediction function that applies the two-dimensional array data to be processed to the aforementioned trained model to generate prediction performance data for the aforementioned processing target, A performance prediction program that makes this possible.
10. One-dimensional array data containing multiple parameter values arranged in one dimension is converted into two-dimensional array data in which the multiple parameter values are arranged in two dimensions by duplicating and arranging the multiple parameter values. A machine learning model is trained based on training data including the two-dimensional array data and performance data corresponding to the one-dimensional array data, and a trained model is generated that takes the two-dimensional array data as input and outputs predictive performance data. The two-dimensional array data to be processed is applied to the aforementioned trained model to generate predictive performance data for the target data. A performance prediction device equipped with a processor.
Citation Information
Patent Citations
Fault detecting method and fault detecting device
JP2020126601A
Computer-implemented methods, computer program products and systems for anomaly detection and / or predictive maintenance
JP2022500745A
Creation method of quality prediction model, quality prediction method, operation condition presentation method, creation device of quality prediction model, quality prediction device, and operation condition presentation device
JP2023028246A