WO2023233858A1 - ニューラルネットワークの計算装置及び計算方法 - Google Patents

ニューラルネットワークの計算装置及び計算方法 Download PDF

Info

Publication number
WO2023233858A1
WO2023233858A1 PCT/JP2023/015901 JP2023015901W WO2023233858A1 WO 2023233858 A1 WO2023233858 A1 WO 2023233858A1 JP 2023015901 W JP2023015901 W JP 2023015901W WO 2023233858 A1 WO2023233858 A1 WO 2023233858A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
value
neural network
formula
weighting coefficient
Prior art date
Application number
PCT/JP2023/015901
Other languages
English (en)
French (fr)
Inventor
真琴 平野
勇也 徳田
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Publication of WO2023233858A1 publication Critical patent/WO2023233858A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning

Definitions

  • the present invention relates to a computing device and a computing method for modeling plants, industrial equipment, etc. using neural networks.
  • neural networks lack explainability and interpretability for the calculated prediction results, and it is difficult to explain why the prediction results were obtained in an easy-to-understand manner, so the processing related to prediction becomes a black box. It's gone. For this reason, this has become a bottleneck when introducing neural networks in industrial fields that handle plants, industrial equipment, etc., where accountability is required.
  • a neural network has multiple layers each made up of one or more nodes, and the nodes of different layers are connected by edges.
  • each node transforms input using a nonlinear function called an activation function.
  • the nodes defined in each layer are connected by edges to all the nodes defined in the next layer. Because of these characteristics, the mathematical expressions expressed by neural networks become complex nonlinear functions. This point is the main reason why neural networks become black boxes.
  • Patent Document 1 An example of a conventional neural network is disclosed in Patent Document 1.
  • the nonlinear and complicated mathematical formulas of conventional neural networks are simplified, and modeling can be performed using mathematical formulas that are easy for users to understand.
  • An object of the present invention is to provide a neural network calculation device and calculation method that can model a modeling target using mathematical formulas based on physical laws.
  • a neural network calculation device is connected to a device in which a first sensor and a second sensor are installed, and includes a structure optimization unit that inputs a detection value of the first sensor, and a neural network. and a structural formula conversion unit that derives a prediction formula that is a formula representing a relationship between the detected value of the first sensor and a predicted value of the detected value of the second sensor.
  • the neural network includes a node having a value expressed by a mathematical expression including a power, in which the output value of the node is the base and the exponent is a weighting coefficient set to an edge connected to the node.
  • the structure optimization unit calculates the structure of the neural network and the weighting coefficient from the detection value of the first sensor.
  • the structural formula converting unit derives a mathematical formula having a term including the power as the prediction formula, using the structure of the neural network and the weighting coefficients calculated by the structural optimization unit.
  • the neural network calculation method is executed by a calculation device connected to a device in which a first sensor and a second sensor are installed, and the calculation device inputs a detected value of the first sensor.
  • a prediction formula that is a mathematical formula representing a relationship between the detected value of the first sensor and a predicted value of the detected value of the second sensor, in which the calculation device uses a neural network; and a structural formula conversion step for deriving .
  • the neural network includes a node having a value expressed by a mathematical expression including a power, in which the output value of the node is the base and the exponent is a weighting coefficient set to an edge connected to the node.
  • the calculation device calculates the structure of the neural network and the weighting coefficient from the detection value of the first sensor.
  • the calculation device uses the structure of the neural network and the weighting coefficients calculated in the structural optimization step to derive a mathematical formula having a term including the exponentiation as the prediction formula.
  • FIG. 1 is a diagram showing the configuration of a neural network calculation device according to a first embodiment of the present invention
  • FIG. A schematic diagram showing the structure of a neural network used by a calculation device to derive a mathematical formula (prediction formula).
  • FIG. 3 is a flow diagram showing the flow of processing performed by the computing device.
  • FIG. 3 is a diagram illustrating a configuration example of some data (constraint conditions related to input/output signals) stored in a structural constraint condition storage unit. The figure which shows the example of a structure of some data (constraint conditions regarding the presence or absence of an edge of the node responsible for calculating the sum in the intermediate layer) stored in the structural constraint storage unit.
  • FIG. 4 is a flow diagram of the process performed by the NN structure optimization unit in S6 of FIG.
  • FIG. 3 is a schematic diagram showing the structure of a neural network used by the calculation device to derive a mathematical formula (prediction formula) in Example 2 of the present invention.
  • the neural network calculation device and calculation method according to the present invention it is possible to model input-output relationships for modeling targets such as plants and industrial equipment using mathematical formulas based on physical laws. Therefore, the user can check whether the neural network obtained by the present invention matches the physical characteristics of the modeling target, improving the explainability and interpretability of the prediction results calculated by the neural network. be able to.
  • the calculation device models equipment such as plants and industrial equipment, uses data of values detected by sensors installed in this equipment (sensor detection values), and uses a neural network to detect sensors.
  • a formula is derived that expresses the relationship between the value and the predicted value of the detected value of the other sensor installed in the device (predicted detected value of the other sensor).
  • the device to be modeled is modeled using this formula.
  • the calculation method according to this embodiment is a neural network calculation method executed by the calculation device according to this embodiment.
  • the neural network may be referred to as "NN".
  • FIG. 1 is a diagram showing the configuration of a neural network calculation device according to this embodiment.
  • the computing device 1 is connected to the device 3 via a control system 4 that controls the device 3 to be modeled.
  • the device 3 is modeled using the formula derived by the calculation device 1.
  • a plurality of sensors 31 are installed in the device 3.
  • the control system 4 includes a control device 41 and a sensor data storage section 42.
  • the control device 41 is a device equipped with control logic for inputting data from a sensor 31 (for example, a detection value of the sensor 31) provided in the device 3 and outputting a control signal for the device 3.
  • the sensor data storage unit 42 is composed of a storage device, and stores data of the sensor 31 (sensor data) input by the control device 41.
  • the calculation device 1 is composed of a computer, includes an arithmetic processing device such as a CPU, and a storage device such as a memory, and executes the calculation method according to the present embodiment.
  • the calculation device 1 is connected to an input/output device 2 and a device 3, and includes an input/output control section 11, a structural constraint condition storage section 12, a NN structure constraint setting section 15, and a structural optimization condition storage section as functional components.
  • section 13 an NN structure optimization section 16, an analysis result storage section 17, and a structural formula conversion section 14.
  • the computing device 1 inputs data from the device 3 in which a plurality of sensors 31 are installed.
  • the calculation device 1 inputs the detected value of the sensor 31 as data (sensor data) of the sensor 31 installed in the device 3, and calculates the predicted value of the detected value of the sensor 31 and the detected value of other sensors 31 (other sensors 31 (predicted detected value).
  • the other sensor 31 is a sensor 31 that is installed in the device 3 and is different from the sensor 31 that inputs a detected value as sensor data.
  • the input/output device 2 is an input device for a user to input information into the computing device 1, and is an output device equipped with a screen that displays data calculated by the computing device 1 and information input by the user.
  • the input/output control unit 11 performs processing for inputting information input by a user using the input/output device 2 and processing for displaying data and information on the input/output device 2.
  • the structural constraint storage unit 12 is composed of a storage device, and stores constraint conditions regarding the input/output signals of the NN and constraints regarding the presence or absence of edges between each node, which are input by the user using the input/output device 2. do.
  • the NN structure constraint setting unit 15 includes an input/output signal setting unit 151 and an edge constraint setting unit 152, and performs a process of setting constraints on the structure of the NN used for calculation.
  • the input/output signal setting unit 151 inputs the constraint regarding the input/output signal of the NN stored in the structural constraint condition storage unit 12, and sets this constraint as a constraint during NN calculation.
  • the edge constraint setting unit 152 inputs the constraint condition regarding the presence or absence of an edge between each node stored in the structure constraint condition storage unit 12, and sets this constraint condition as a constraint condition when determining the structure of the NN. .
  • the structural optimization condition storage unit 13 is composed of a storage device, and stores structural optimization conditions input by the user using the input/output device 2.
  • the structure optimization conditions are, for example, the upper limit of the number of terms in the mathematical expression that the calculation device 1 finds, the range of initial values of the weighting coefficients of the NN, and the number of NN structures to be tried.
  • the NN structure optimization section 16 inputs the structure optimization conditions from the structure optimization condition storage section 13 and also inputs the sensor data of the device 3 from the sensor data storage section 42, and applies the constraints set by the NN structure constraint setting section 15. Using the conditions, a process is performed to calculate the structure of the NN and the weighting coefficients. In calculating the weighting coefficients, the NN structure optimization unit 16 updates the weighting coefficients until the weighting coefficients converge, as will be described later.
  • the analysis result storage unit 17 is composed of a storage device, and stores the NN structure (for example, presence or absence of edges between each node) and weighting coefficient values calculated by the NN structure optimization unit 16.
  • the analysis result storage unit 17 stores the structure of the NN and the value of the weighting coefficient every time the value of the weighting coefficient converges in the calculation of the weighting coefficient by the NN structure optimization unit 16.
  • the analysis result storage unit 17 can also store the structure of the NN and the weighting coefficients obtained while the weighting coefficient values are converging (that is, when the weighting coefficient values are not converging).
  • the structural formula conversion unit 14 uses the structure of the NN and the values of the weighting coefficients stored in the analysis result storage unit 17 to create a formula representing the relationship between the input signal and the output signal, that is, the detected value of the sensor 31 and the other sensor 31.
  • a mathematical formula (prediction formula) expressing the relationship between the predicted detection value and the predicted detected value is derived.
  • the structural formula converter 14 derives a prediction formula every time the NN structure optimizer 16 updates the weighting coefficients. That is, the structural formula conversion unit 14 not only derives a prediction formula using the value of the weighting coefficient when the weighting coefficient has converged, but also derives the predictive formula using the value of the weighting coefficient when the weighting coefficient has not converged. It is also possible to derive
  • the calculation device 1 includes the above-mentioned components, and calculates the mathematical formula (prediction formula) expressed by the NN, that is, models the device 3 and calculates the relationship between the detected value of the sensor 31 and the predicted detected values of other sensors 31. It is possible to derive a prediction formula representing
  • FIG. 2 is a schematic diagram showing the structure of a NN used by the calculation device 1 to derive a mathematical formula (prediction formula).
  • the NN has three layers: an input layer, a hidden layer, and an output layer.
  • the parts represented by lines are called edges, and the parts represented by circles are called nodes.
  • the output layer has one node.
  • edges represented by thick lines are edges that the NN in this example has, and edges represented by thin lines are edges that the NN in this example does not have.
  • the NN in this embodiment has a structure in which only some nodes are connected by edges between layers, and only edges are represented by thick lines.
  • a conventional NN has edges represented by thick lines and edges represented by thin lines in FIG. 2, and has a structure in which all nodes are connected by edges between layers.
  • the NN in this embodiment can be considered to have a structure in which edges represented by thin lines in the conventional NN are deleted.
  • the input signal is a detection value of the sensor 31.
  • node j in the input layer outputs xj as an output value.
  • Each edge is assigned a weighting factor w(j,i).
  • j and i indicate nodes j and i located at both ends of the edge. That is, w(j, i) represents a weighting coefficient set to an edge connecting node j in the input layer and node i in the intermediate layer.
  • w(j, i) represents a weighting coefficient set to an edge connecting node j in the input layer and node i in the intermediate layer.
  • is a function that outputs 0 if the edges between nodes are not connected, and outputs 1 if the edges are connected.
  • all nodes are not connected by edges between layers, but are connected by edges. Only the nodes in the section are connected by edges.
  • Node i in the intermediate layer inputs the output value xj of node j in the input layer as an input value, uses this input value xj as the base, and uses the weighting coefficient w set on the edge connecting node j and node i. It has a value expressed as a mathematical expression including a power, which is used as an exponent. Then, the node i in the intermediate layer has a node that calculates the sum h of these powers and a node that calculates the product z of these powers, as expressed by equations (1) and (2). In the example shown in FIG.
  • the number m of nodes for calculating the sum h and the number k of nodes for calculating the product z can be arbitrarily determined, and are set to a sufficient number to represent the mathematical expression.
  • the weighting coefficient set for the edge connecting the node i in the intermediate layer and the node in the output layer is denoted by w'j.
  • the output layer nodes output an output value y.
  • the output value y is a value calculated using a mathematical formula (prediction formula) expressed by the NN.
  • the output value y is obtained by calculating not only the sum h but also the product z for the node i in the intermediate layer. By also calculating the product z, a more accurate formula based on physical laws can be obtained.
  • the main differences between the NN used by the computing device 1 according to this embodiment and the conventional general NN are the following three points.
  • the first point is to calculate the output value y by performing a power calculation using the input value xj of the NN as the base and the weighting coefficient w(j, i) as the exponent, as shown in equations (1) to (3).
  • This is the point to seek.
  • Physical laws are generally expressed in mathematical expressions that include power terms. In this example, by expressing the formula expressed by the NN as a formula that includes a power term, with the input value as the base and the weighting coefficient as the exponent, modeling using formulas based on physical laws is possible. .
  • a node in the intermediate layer calculates the product z using the values calculated at each edge (the value of the power calculation) as input.
  • the product z As described above, by calculating not only the sum h but also the product z, it is possible to more accurately obtain a mathematical expression based on physical laws.
  • the calculation device 1 according to the present embodiment has the above-mentioned features and can express a mathematical formula (physical formula) representing a physical characteristic as shown in equation (3) as a prediction formula. Therefore, in the calculation device 1 according to the present embodiment, the user can easily understand the reason why the output value of the NN (predicted detection value of the sensor 31) is obtained, and the explainability and interpretability of the output value are improved. can be done.
  • FIG. 3 is a flow diagram showing the flow of processing performed by the computing device 1. The flow of processing of the calculation device 1 that derives a mathematical formula using the NN described above will be explained using FIG. 3.
  • the input/output signal setting section 151 of the NN structure constraint setting section 15 inputs the constraint conditions regarding the input/output signals of the NN from the structure constraint condition storage section 12, and sets the input constraints as the constraints for NN calculation. do.
  • FIG. 4 is a diagram showing a configuration example of some data stored in the structural constraint storage unit 12.
  • FIG. 4 shows, as an example, constraint conditions regarding the input/output signals of the NN, among the data stored in the structural constraint condition storage unit 12.
  • This constraint specifies which sensor 31 each of the input signal and output signal to be used is a signal by the name of the sensor 31.
  • the constraint condition is that the predicted detection value of sensor Z, which is the output signal, is calculated by the NN from the detection values (actual measurement values) of sensors A to D, etc., which are input signals.
  • the input signal is a signal from a plurality of sensors, and the output signal is a signal from one sensor. This corresponds to the input layer and output layer nodes of the NN shown in FIG.
  • Constraint data regarding the input/output signals of the NN is set in advance by the user using the input/output device 2 and is stored in the structural constraint condition storage unit 12.
  • the edge constraint setting section 152 of the NN structure constraint setting section 15 inputs the constraint condition regarding the presence or absence of an edge between each node from the structure constraint condition storage section 12, and uses the input constraint condition to determine the structure of the NN. Set as a constraint condition.
  • 5A to 5C are diagrams showing configuration examples of some data stored in the structural constraint storage unit 12.
  • 5A to 5C show, as an example, constraint conditions regarding the presence or absence of edges between nodes (constraint conditions when determining the structure of the NN) among the data stored in the structural constraint condition storage unit 12. ing.
  • the symbol "x" in the table indicates that there is no edge between nodes. Edges exist between nodes to which the symbol "x" is not attached.
  • FIG. 5C shows an example of constraint conditions regarding the presence or absence of an edge between each node, such as between which nodes an edge connecting a node in the intermediate layer and a node in the output layer exists and which nodes do not exist. .
  • Data on constraints regarding the presence or absence of edges between nodes is set in advance by the user using the input/output device 2 and is stored in the structural constraint storage unit 12.
  • the user can set this constraint condition according to the signal detected by the sensor 31, for example.
  • This constraint condition defines edges to be deleted from the conventional NN in order to facilitate consistency with physical laws in the NN in this embodiment.
  • the NN structure optimization section 16 inputs the structure optimization conditions from the structure optimization condition storage section 13.
  • the structural optimization conditions are NN learning conditions set in advance by the user.
  • FIG. 6 is a diagram showing a configuration example of the structural optimization conditions stored in the structural optimization condition storage unit 13.
  • FIG. 6 shows, as structural optimization conditions, the upper limit of the number of formula terms, the initial value range of the weighting coefficient, and the number of NN structures to be tried.
  • the upper limit value of the number of formula terms represents the upper limit value of the number of terms in the formula (prediction formula) derived by the calculation device 1.
  • the initial value range of the weighting coefficient represents the range of the initial value of the weighting coefficient w, which is set during the NN learning process (convergence calculation of the weighting coefficient w).
  • the NN structure optimization unit 16 sets the initial value of the weighting coefficient w in accordance with this initial value range of the weighting coefficient in a learning process to be described later.
  • the number of NN structures to try represents the number of times the calculation device 1 derives a mathematical formula.
  • the NN structure optimization unit 16 derives a formula by changing the pattern of the presence or absence of edges between nodes (that is, by changing the structure of the NN), as will be described later. The number of times this pattern is changed to derive a formula is determined by the number of NN structures to be tried.
  • the NN structure optimization unit 16 inputs sensor data of the device 3 by inputting time-series data from the sensor data storage unit 42 regarding the input signal stored in the structural constraint storage unit 12.
  • the NN structure optimization unit 16 determines the structure of the NN through a learning process, and calculates the weighting coefficient w corresponding to the determined NN structure, thereby determining the optimum structure representing the relationship between the input signal and the output signal.
  • Determine NN For example, error backpropagation processing is used for learning of the NN. The details of the process performed in S6 will be described below with reference to FIG.
  • FIG. 8 is a flow diagram of the process performed by the NN structure optimization unit 16 in S6 of FIG. 3.
  • the learning process of the NN in the computing device 1 according to the present embodiment is a flow consisting of a double loop, as shown in FIG.
  • the outer loop (S11 to S16) is a process for determining the structure of the NN, that is, the presence or absence of edges between each node.
  • this process for edges specified as existing in the constraint conditions regarding the presence or absence of edges between each node (FIGS. 5A to 5C) stored in the structural constraint condition storage unit 12, whether or not the edge exists is determined. (that is, whether or not to delete the edge).
  • the number of times the NN structure optimization unit 16 changes the pattern of presence/absence of edges between each node (ie, NN structure) follows the number of NN structures to be tried (FIG. 6), which is a structure optimization condition.
  • the inner loop (S14 to S15) is a process of determining the weighting coefficient w for the structure of the NN determined in the outer loop.
  • the convergence determination condition for this weighting coefficient w is that the rate of change of the difference (loss) between the predicted detection value of the sensor 31 output by the NN and the detection value (actual measurement value) of this sensor 31 is equal to or less than a threshold value.
  • This threshold value can be arbitrarily determined by the user in advance.
  • the NN structure and weighting coefficient w that are finally determined by the NN structure optimization unit 16 are obtained under the conditions that minimize the loss.
  • the NN structure optimization unit 16 determines the structure of the NN and calculates the weighting coefficient w will be explained along the flowchart of FIG. 8.
  • the NN structure optimization unit 16 determines that the number of NN structures tried so far (that is, the number of times the calculation device 1 has derived a formula) is the number of NN structures to be tried set by the user as a structure optimization condition. Determine if it is smaller than the number. As long as the number of NN structures tried so far is smaller than the number of NN structures to try set by the user, the processes of S12 to S16 are performed.
  • the NN structure optimization unit 16 uses Bayesian optimization to optimize the NN structure (i.e., between each node) so as to satisfy the upper limit of the number of formula terms set by the user as a structure optimization condition. the presence or absence of edges).
  • the NN structure optimization unit 16 causes these edges to exist for edges that are specified by the user and stored in the structural constraint storage unit 12 and are determined to exist under the constraint conditions regarding the presence or absence of edges between each node. Determine whether or not to delete it (whether to delete it or not).
  • Bayesian optimization is a processing method for efficiently searching for solutions using statistical methods.
  • the NN structure optimization unit 16 can determine the edges to be deleted from the NN by determining the presence or absence of edges between each node so as to satisfy the set upper limit of the number of formula terms. That is, edges to be deleted from the NN in order to reduce the number can be specified by the user as a constraint condition (structural constraint storage unit 12) regarding the presence or absence of edges between each node, and also by the NN structure optimization unit 16. You can ask for it.
  • the NN structure optimization unit 16 determines the structure of the NN (the presence or absence of edges between each node) by Bayesian optimization so as to satisfy the set upper limit of the number of formula terms. .
  • the NN structure optimization unit 16 sets the initial value of the weighting coefficient w assigned to each edge for the NN structure determined in S12.
  • This initial value can be set to any value, but as described above, it is a value that follows the initial value range of the weighting coefficient set by the user as a structural optimization condition.
  • the NN structure optimization unit 16 performs NN learning processing, that is, convergence calculation of the weighting coefficient w.
  • This convergence calculation consists of a process of updating the weighting coefficient w using equations (4) to (7) (described later) (S15), and a process of determining convergence based on the rate of change of loss (S14). .
  • equation (4) is used as the equation for updating the weighting coefficient w.
  • w is the weighting coefficient
  • loss is the predicted detection value of the sensor 31 output by the NN and this sensor This is the difference from the detected value (actually measured value) of No. 31.
  • is an arbitrary constant called a learning rate, and its value is fixed at, for example, 0.001.
  • equation (6) is used as the equation for updating the weighting coefficient w.
  • the NN structure optimization unit 16 repeatedly updates the weighting coefficient w using equations (4) to (7) shown above, and determines the final value of the weighting coefficient w.
  • Equations (6) and (7) cannot be used when the output value x of the node in the input layer, that is, the detected value of the sensor 31, is negative. Therefore, equation (8) may be used instead of equation (6), and equation (9) may be used instead of equation (7). Equations (8) and (9) can also be used when the detected value of the sensor 31 is negative.
  • the NN structure optimization unit 16 After updating the weighting coefficient w in S15, the NN structure optimization unit 16 determines whether the value of the weighting coefficient w has converged in S14.
  • the NN structure optimization unit 16 determines that the rate of change of the difference (loss) between the predicted detection value of the sensor 31 output by the NN and the detection value (actual measurement value) of this sensor 31 is equal to or less than the threshold value, as described above. Determine whether The rate of change in loss is the rate of change in loss before and after updating the weighting coefficient w. If the change rate of loss is less than or equal to the threshold value, the NN structure optimization unit 16 determines that the value of the weighting coefficient w has converged, and executes the process of S16.
  • the NN structure optimization unit 16 stores the data of the NN structure when the loss is the minimum and the weighting coefficient w with respect to the loss obtained for the NN structure determined so far.
  • the NN structure optimization unit 16 determines that the NN structure with the minimum loss is the optimal structure, and stores the data of the NN structure and the weighting coefficient w at this time.
  • the NN structure optimization unit 16 uses not only the final NN structure data and weighting coefficient w obtained when the value of the weighting coefficient w converges, but also the NN structure data obtained during the convergence. and the weighting coefficient w are also stored.
  • the NN structure optimization unit 16 stores data on the NN structure (presence or absence of edges between each node) obtained in the process of S6 and the weighting coefficient w in the analysis result storage unit 17.
  • FIG. 9 is a diagram showing an example of the structure of data stored in the analysis result storage section 17.
  • the analysis result storage unit 17 stores data of the NN structure and the value of the weighting coefficient w, which are obtained when the value of the weighting coefficient w has converged and when it has not converged.
  • the numerical values entered in the table represent the weighting coefficient w corresponding to each edge, and the symbol "x" in the table indicates that no edge exists between nodes.
  • the structural formula conversion unit 14 uses the data of the NN structure stored in the analysis result storage unit 17 and the value of the weighting coefficient w to create a mathematical formula expressing the relationship between the input signal and the output signal according to equation (3). That is, a mathematical formula (prediction formula) representing the relationship between the detected value of sensor 31 and the predicted detected value of other sensors 31 is derived. Equation (3) includes power terms in h and z, as shown in equations (1) and (2). Therefore, the calculation device 1 is capable of modeling using equations based on physical laws using equation (3).
  • the input/output device 2 displays the following screen according to a command from the computing device 1.
  • FIG. 10 is an example of a screen where the user sets constraints regarding input and output signals of the NN.
  • Constraint conditions regarding input/output signals of the NN are stored in the structural constraint condition storage unit 12, and are conditions that specify which sensor 31 each of the input signal and output signal to be used comes from by the name of the sensor 31. be.
  • the user specifies which sensor 31 the output signal is from in the used output value item 101.
  • the computing device 1 displays a list of sensors 31 installed in the device 3 on the screen of the input/output device 2, and the user selects one sensor 31 to be designated as an output from this list.
  • the user also specifies which sensor 31 the input signal is from in the input value field 102.
  • the user selects multiple sensors 31. As shown in FIG. 10, the selected sensor 31 is displayed in a different color.
  • FIG. 11 is an example of a screen where the user sets constraints regarding the presence or absence of edges between each node.
  • the constraint condition regarding the presence or absence of an edge between each node is stored in the structural constraint condition storage unit 12, and is a condition for specifying an edge to be deleted from the NN.
  • the user specifies the presence or absence of edges for these edges in items 201 and 202 regarding edges connecting nodes in the input layer and nodes in the intermediate layer.
  • Item 201 is an item regarding an edge related to a node responsible for calculating the sum h.
  • Item 202 is an item regarding an edge related to a node responsible for calculating the product z.
  • the user specifies the presence or absence of an edge for these edges in an item 203 regarding edges connecting intermediate layer nodes and output layer nodes.
  • a check mark in the table indicates that an edge to be deleted has been specified. For example, the user can add or remove a check mark by clicking on the table with a mouse cursor.
  • FIG. 12 is an example of a screen where the user sets structural optimization conditions.
  • the structural optimization conditions are stored in the structural optimization condition storage unit 13, and include the upper limit of the number of formula terms, the initial value range of the weighting coefficient, and the number of NN structures to be tried.
  • the user specifies the upper limit of the number of terms in the formula derived by the calculation device 1 in the upper limit value of the number of formula terms item 301.
  • the user specifies the range of the initial value of the weighting coefficient w to be set during the learning process of the NN (convergence calculation of the weighting coefficient w) in the item 302 of initial value range of the weighting coefficient.
  • the user specifies the number of times (the number of patterns) that the computing device 1 should derive the formula by changing the pattern of the presence or absence of edges between each node.
  • FIG. 13 is an example of a screen that outputs the mathematical formula (prediction formula) derived by the calculation device 1.
  • Item 401 displays the signal value (detected value) of the sensor 31 specified by the user in the constraint conditions regarding input/output signals of the NN.
  • Item 402 displays the mathematical formula (prediction formula) derived when the convergence calculation of the weighting coefficient w of the NN is completed. This formula is a formula when the loss is minimum throughout the entire processing flow performed by the calculation device 1.
  • Item 403 displays the formula derived during the convergence calculation of the weighting coefficient w for each iteration of the convergence calculation.
  • Item 403 displays the formula derived during the convergence calculation, that is, the formula derived using the value of the weighting coefficient when the weighting coefficient has not converged. This is because it is not necessarily optimal. The details of this phenomenon will be explained below.
  • Modeling such as NN generally has the problem of overfitting.
  • Overfitting is a phenomenon in which a model is created that overfits the data given for learning, resulting in large errors for other data. Therefore, although the prediction error (for example, loss in this embodiment) is the minimum, the obtained formula may not comply with physical laws due to overlearning.
  • the problem caused by overfitting can be solved by displaying the formula derived in the middle of the convergence calculation, that is, the formula when the loss is not the minimum. can.
  • the relationship between the detected value of the sensor 31 installed in the equipment 3 such as a plant or equipment 3 and the predicted detected value of other sensors 31 is determined based on physical laws. It can be modeled as a mathematical formula. This allows the user to easily check whether the modeled NN matches the physical characteristics of the target device 3, and improves the explainability and interpretability of the prediction results calculated by the NN. .
  • a neural network (NN) calculation device and calculation method according to a second embodiment of the present invention will be described.
  • the difference between Example 1 and Example 2 lies in the mathematical formula (prediction formula) that can be expressed by the NN.
  • a formula having a linear sum of terms including powers is derived as shown in Equation (3), but in the second embodiment, a formula having a power of a linear sum is derived.
  • Example 2 differs from Example 1 in the following, differences between Example 2 and Example 1 will be mainly explained.
  • the differences are the structure of the NN, the calculation process and learning process of the NN, and the screen that outputs the calculation results of the calculation device 1.
  • FIG. 14 is a schematic diagram showing the structure of the NN used by the calculation device 1 to derive a mathematical formula (prediction formula) in this embodiment.
  • the structure of the NN in this example differs from the structure of the NN in Example 1 (Fig. 2) in that the calculation processing is handled by the edge part from the input layer to the intermediate layer, and the edge part from the intermediate layer to the output layer is responsible. The difference is that the calculation process is swapped.
  • Each edge is assigned a weighting factor w(j,i).
  • j and i indicate nodes j and i located at both ends of the edge. That is, w(j, i) represents a weighting coefficient set to an edge connecting node j in the input layer and node i in the intermediate layer.
  • the values calculated at each edge are input, and the sum h or product z of these values is calculated. Expressed numerically, it is as follows.
  • is a function that outputs 0 if edges between nodes are not connected, and outputs 1 if edges are connected. In this embodiment, as in the first embodiment, not all nodes between layers are connected by edges, but only some nodes are connected by edges.
  • the number m of nodes for calculating the sum h and the number k of nodes for calculating the product z can be arbitrarily determined, and are set to a sufficient number to represent the mathematical expression.
  • the weighting coefficient set for the edge connecting the node i in the intermediate layer and the node in the output layer is denoted by w'j.
  • the output layer nodes output an output value y.
  • the differences between the second embodiment and the first embodiment regarding the calculation processing and learning processing of the NN will be explained.
  • the difference is the formula used for convergence calculation of the weighting coefficient w.
  • the weighting coefficient w is updated using equations (13) to (18) described later.
  • equation (13) is used as the equation for updating the weighting coefficient w.
  • w is the weighting coefficient
  • loss is the predicted detection value of the sensor 31 output by the NN and this sensor This is the difference from the detected value (actually measured value) of No. 31.
  • is the learning rate.
  • equation (14) is used as the equation for updating the weighting coefficient w.
  • equation (15) is used as the equation for updating the weighting coefficient w.
  • equation (16) is used as the equation for updating the weighting coefficient w.
  • Equation (17) may be used instead of Equation (13), and Equation (18) may be used instead of Equation (14). Equations (17) and (18) can also be used when the output value h or z of the intermediate layer node is negative.
  • FIG. 15 is an example of a screen that outputs the mathematical formula (prediction formula) derived by the calculation device 1 in this embodiment.
  • Item 502 displays the mathematical formula (prediction formula) derived when the convergence calculation of the weighting coefficient w of the NN is completed.
  • Item 503 displays the formula derived during the convergence calculation of the weighting coefficient w for each iteration of the convergence calculation.
  • the formats of the formulas displayed in the items 502 and 503 are different from the formats of the formulas displayed in the items 402 and 403 (FIG. 13) in the first embodiment.
  • a mathematical expression is displayed in a form having a power of a linear sum.
  • the relationship between the detected value of the sensor 31 installed in the equipment 3 such as a plant or equipment and the predicted detected values of other sensors 31 can be modeled as a mathematical formula based on physical laws. This allows the user to easily check whether the modeled NN matches the physical characteristics of the target device 3, and improves the explainability and interpretability of the prediction results calculated by the NN. .
  • the present invention is not limited to the above embodiments, and various modifications are possible.
  • the above-mentioned embodiments have been described in detail to explain the present invention in an easy-to-understand manner, and the present invention is not necessarily limited to embodiments having all the configurations described.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

モデリングの対象に対して物理則に基づいた数式を用いてモデリングができるニューラルネットワークの計算装置を提供する。本発明による計算装置(1)は、第1と第2のセンサ(31)が設置された機器(3)に接続されており、第1のセンサ(31)の検出値を入力する構造最適化部(16)と、ニューラルネットワーク(NN)を用いて、第1のセンサ(31)の検出値と、第2のセンサ(31)の検出値の予測値との関係を表す数式である予測式を導出する構造数式変換部(14)とを備える。NNは、ノードの出力値を底とし、ノードに繋がるエッジに設定された重み係数を指数部とする、べき乗を含む数式で表される値を持つノードを含む。構造最適化部(16)は、第1のセンサ(31)の検出値から、NNの構造と重み係数を算出する。構造数式変換部(14)は、構造最適化部(16)が算出したNNの構造と重み係数を用いて、予測式としてべき乗を含む項を持つ数式を導出する。

Description

ニューラルネットワークの計算装置及び計算方法
 本発明は、プラントや産業機器などに対し、ニューラルネットワークを用いてモデリングをする計算装置と計算方法に関する。
 プラントや産業機器などでは、それらをモデリングすることにより制御や診断が行われることがある。プラントや産業機器などをモデリングする際には、それらが持つ特性を基にした物理則に準じた形でのモデリングが多く行われている。しかし、物理モデリングは、作業工数が多い上に、その精度が作業者の専門知識に大きく依拠する。このため、物理モデリングを代替する手段として、ニューラルネットワークなどの数理モデルを用いたモデリング方法がある。この方法を用いると、十分な量のデータが用意できれば自動でモデリングを行える上に、高精度な予測結果を算出することが期待できる。
 しかし、ニューラルネットワークは、物理モデリングと異なり、算出した予測結果に対する説明性と解釈性が乏しく、予測結果が得られた理由を理解しやすく説明するのが難しいため、予測に係る処理がブラックボックス化してしまっている。このため、説明責任が求められる、プラントや産業機器などを扱う産業分野において、ニューラルネットワークを導入する際のボトルネックとなっている。
 このような背景から、一般技術者にも理解が容易な解釈性の高いニューラルネットワークが望まれている。
 ニューラルネットワークは、1つまたは複数のノードで構成された層を複数有し、異なる層のノードがエッジで接続されている。一般的なニューラルネットワークでは、各ノードにおいて、活性化関数と呼ばれる非線形関数を用いて、入力に対する変換を行う。また、各層に定義されたノードは、次層に定義された全てのノードに対してエッジで接続されている。これらの特徴から、ニューラルネットワークが表現する数式は、複雑な非線形関数となる。この点が、ニューラルネットワークがブラックボックス化している主な原因である。
 従来のニューラルネットワークの例は、特許文献1に開示されている。特許文献1に開示されたニューラルネットワークでは、従来のニューラルネットワークが持つ非線形で複雑な数式を簡素化しており、ユーザーの理解が容易な数式でモデリングすることが可能である。
特開2002-42106号公報
 特許文献1に開示された技術などの従来のニューラルネットワークでは、ニューラルネットワークがブラックボックス化しているという課題の解決には至っていない。例えば、特許文献1に開示されたニューラルネットワークでは、数式を簡素化してユーザーの理解を容易にしているが、出力値を表す数式はあくまでも近似式であり、必ずしも物理則に準じたモデリングが行われていない。このため、特許文献1でのニューラルネットワークでは、モデリングの対象の背景にある物理則との整合性をとることが困難である。
 本発明の目的は、モデリングの対象に対して物理則に基づいた数式を用いてモデリングができるニューラルネットワークの計算装置と計算方法を提供することである。
 本発明による、ニューラルネットワークの計算装置は、第1のセンサと第2のセンサが設置された機器に接続されており、前記第1のセンサの検出値を入力する構造最適化部と、ニューラルネットワークを用いて、前記第1のセンサの前記検出値と、前記第2のセンサの検出値の予測値との関係を表す数式である予測式を導出する構造数式変換部とを備える。前記ニューラルネットワークは、ノードの出力値を底とし、前記ノードに繋がるエッジに設定された重み係数を指数部とする、べき乗を含む数式で表される値を持つノードを含む。前記構造最適化部は、前記第1のセンサの前記検出値から、前記ニューラルネットワークの構造と前記重み係数を算出する。前記構造数式変換部は、前記構造最適化部が算出した前記ニューラルネットワークの構造と前記重み係数を用いて、前記予測式として前記べき乗を含む項を持つ数式を導出する。
 本発明による、ニューラルネットワークの計算方法は、第1のセンサと第2のセンサが設置された機器に接続された計算装置に実行され、前記計算装置が、前記第1のセンサの検出値を入力する構造最適化工程と、前記計算装置が、ニューラルネットワークを用いて、前記第1のセンサの前記検出値と、前記第2のセンサの検出値の予測値との関係を表す数式である予測式を導出する構造数式変換工程とを有する。前記ニューラルネットワークは、ノードの出力値を底とし、前記ノードに繋がるエッジに設定された重み係数を指数部とする、べき乗を含む数式で表される値を持つノードを含む。前記構造最適化工程では、前記計算装置が、前記第1のセンサの前記検出値から、前記ニューラルネットワークの構造と前記重み係数を算出する。前記構造数式変換工程では、前記計算装置が、前記構造最適化工程で算出した前記ニューラルネットワークの構造と前記重み係数を用いて、前記予測式として前記べき乗を含む項を持つ数式を導出する。
 本発明によると、モデリングの対象に対して物理則に基づいた数式を用いてモデリングができるニューラルネットワークの計算装置と計算方法を提供することができる。
本発明の実施例1による、ニューラルネットワークの計算装置の構成を示す図。 計算装置が数式(予測式)の導出に用いるニューラルネットワークの構造を表した概略図。 計算装置が行う処理の流れを示すフロー図。 構造制約条件記憶部に記憶されている一部のデータ(入出力信号に関する制約条件)の構成例を示す図。 構造制約条件記憶部に記憶されている一部のデータ(中間層で和の計算を担うノードのエッジの有無についての制約条件)の構成例を示す図。 構造制約条件記憶部に記憶されている一部のデータ(中間層で積の計算を担うノードのエッジの有無についての制約条件)の構成例を示す図。 構造制約条件記憶部に記憶されている一部のデータ(中間層のノードと出力層のノードとを繋ぐエッジの有無についての制約条件)の構成例を示す図。 構造最適化条件記憶部に記憶されている構造最適化条件の構成例を示す図。 センサデータ格納部に格納されているセンサデータの構成例を示す図。 NN構造最適化部が図3のS6で行う処理のフロー図。 解析結果格納部に格納されているデータの構成例を示す図。 ユーザーがニューラルネットワークの入出力信号に関する制約条件を設定する画面の例。 ユーザーが各ノード間のエッジの有無についての制約条件を設定する画面の例。 ユーザーが構造最適化条件を設定する画面の例。 実施例1において、計算装置が導出した数式(予測式)を出力する画面の例。 本発明の実施例2において、計算装置が数式(予測式)の導出に用いるニューラルネットワークの構造を表した概略図。 実施例2において、計算装置が導出した数式(予測式)を出力する画面の例。
 本発明によるニューラルネットワークの計算装置と計算方法では、プラントや産業機器などのモデリングの対象に対し、物理則に基づいた数式を用いて入出力の関係性をモデリングできる。このため、ユーザーは、本発明により得られたニューラルネットワークが、モデリングの対象の物理特性と合致しているかを確認することができ、ニューラルネットワークが算出した予測結果に対する説明性と解釈性を向上させることができる。
 以下、本発明の実施例によるニューラルネットワークの計算装置と計算方法について、図面を参照して説明する。なお、本明細書で用いる図面において、同一のまたは対応する構成要素には同一の符号を付け、これらの構成要素については繰り返しの説明を省略する場合がある。
 本発明の実施例1による、ニューラルネットワークの計算装置と計算方法について説明する。本実施例による計算装置は、プラントや産業機器などの機器をモデリングの対象とし、この機器に設置されたセンサが検出した値(センサの検出値)のデータを用い、ニューラルネットワークにより、センサの検出値と、機器に設置された他のセンサの検出値の予測値(他のセンサの予測検出値)との関係を表す数式を導出する。モデリングの対象の機器は、この数式によりモデリングされる。本実施例による計算方法は、本実施例による計算装置に実行される、ニューラルネットワークの計算方法である。
 以下の説明では、ニューラルネットワークを「NN」と表記することもある。
 図1は、本実施例による、ニューラルネットワークの計算装置の構成を示す図である。計算装置1は、モデリングの対象の機器3を制御する制御システム4を介して、機器3に接続されている。
 機器3は、計算装置1が導出した数式によりモデリングされる。機器3には、複数のセンサ31が設置されている。
 制御システム4は、制御装置41とセンサデータ格納部42を備える。制御装置41は、機器3に備え付けられたセンサ31のデータ(例えば、センサ31の検出値)を入力し、機器3の制御信号を出力するための制御ロジックを実装した装置である。センサデータ格納部42は、記憶装置で構成されており、制御装置41が入力したセンサ31のデータ(センサデータ)を格納する。
 計算装置1は、コンピュータで構成されており、CPUなどの演算処理装置とメモリなどの記憶装置を備え、本実施例による計算方法を実行する。計算装置1は、入出力装置2と機器3に接続されており、機能的な構成要素として、入出力制御部11、構造制約条件記憶部12、NN構造制約設定部15、構造最適化条件記憶部13、NN構造最適化部16、解析結果格納部17、及び構造数式変換部14を備える。
 計算装置1は、複数のセンサ31が設置された機器3のデータを入力する。計算装置1は、機器3に設置されたセンサ31のデータ(センサデータ)としてセンサ31の検出値を入力し、センサ31の検出値と他のセンサ31の検出値の予測値(他のセンサ31の予測検出値)との関係を表す数式を導出する。他のセンサ31とは、機器3に設置されており、センサデータとして検出値を入力したセンサ31と異なるセンサ31である。
 入出力装置2は、ユーザーが計算装置1に情報を入力するための入力装置であるとともに、計算装置1が計算したデータやユーザーが入力した情報を表示する画面を備える出力装置である。
 以下、計算装置1の構成要素について簡単に説明し、詳細な説明は後述する。
 入出力制御部11は、入出力装置2を用いてユーザーが入力した情報を入力する処理と、入出力装置2にデータや情報を表示するための処理を行う。
 構造制約条件記憶部12は、記憶装置で構成されており、ユーザーが入出力装置2を用いて入力した、NNの入出力信号に関する制約条件と各ノード間のエッジの有無についての制約条件を記憶する。
 NN構造制約設定部15は、入出力信号設定部151とエッジ制約設定部152を備え、計算に使用するNNの構造についての制約条件を設定する処理を行う。入出力信号設定部151は、構造制約条件記憶部12に記憶されているNNの入出力信号に関する制約条件を入力し、この制約条件をNN計算時の制約条件として設定する。エッジ制約設定部152は、構造制約条件記憶部12に記憶されている各ノード間のエッジの有無についての制約条件を入力し、この制約条件をNNの構造を決定する際の制約条件として設定する。
 構造最適化条件記憶部13は、記憶装置で構成されており、入出力装置2を用いてユーザーが入力した構造最適化条件を記憶する。構造最適化条件は、例えば、計算装置1が求める数式の項数の上限値、NNの重み係数の初期値の範囲、及び試行するNNの構造の数である。
 NN構造最適化部16は、構造最適化条件記憶部13から構造最適化条件を入力するとともに、センサデータ格納部42から機器3のセンサデータを入力し、NN構造制約設定部15が設定した制約条件を用いて、NNの構造と重み係数を算出する処理を行う。NN構造最適化部16は、重み係数の算出において、後述するように、重み係数が収束するまで重み係数を更新する。
 解析結果格納部17は、記憶装置で構成されており、NN構造最適化部16が算出したNNの構造(例えば、各ノード間のエッジの有無)と重み係数の値を格納する。解析結果格納部17は、NN構造最適化部16による重み係数の算出において重み係数の値が収束するごとに、NNの構造と重み係数の値を格納する。また、解析結果格納部17は、重み係数の値が収束する途中で得られた(すなわち、重み係数の値が収束していないときの)NNの構造と重み係数を格納することもできる。
 構造数式変換部14は、解析結果格納部17が格納したNNの構造と重み係数の値を用いて、入力信号と出力信号の関係を表す数式、すなわち、センサ31の検出値と他のセンサ31の予測検出値との関係を表す数式(予測式)を導出する。構造数式変換部14は、NN構造最適化部16が重み係数を更新するごとに予測式を導出する。すなわち、構造数式変換部14は、重み係数が収束したときの重み係数の値を用いて予測式を導出するだけでなく、重み係数が収束していないときの重み係数の値を用いて予測式を導出することもできる。
 計算装置1は、以上のような構成要素を備え、NNが表現する数式(予測式)、すなわち、機器3をモデリングし、センサ31の検出値と他のセンサ31の予測検出値との関係を表す予測式を導出することができる。
 ここで、計算装置1が数式(予測式)の導出に用いるNNの構成を説明する。
 図2は、計算装置1が数式(予測式)の導出に用いるNNの構造を表した概略図である。NNは、入力層、中間層、及び出力層の3層を備える。NNを構成する要素として、線で表されている部分をエッジ、丸で表されている部分をノードと呼ぶ。図2に示す例では、入力層は、添え字jで示されるn個のノードを有し(j=1~n)、中間層は、添え字iで示される(m+k)個のノードを有し(i=1~(m+k))、出力層は、1個のノードを有する。
 なお、図2において、太い線で表されているエッジは、本実施例でのNNが持つエッジであり、細い線で表されているエッジは、本実施例でのNNが持たないエッジである。本実施例でのNNは、層の間で一部のノードだけがエッジで接続されており、太い線で表されているエッジだけを持つ構造を有する。従来のNNは、図2の太い線で表されているエッジと細い線で表されているエッジを有し、層の間で全てのノードがエッジで接続されているという構造を有する。本実施例でのNNは、従来のNNにおいて細い線で表されているエッジが削除された構造を有すると考えることができる。
 入力層にあるノードjには、n個の入力信号の値xj(j=1~n)が入力値として設定される。入力信号は、センサ31の検出値である。そして、入力層にあるノードjは、xjを出力値として出力する。
 次に、入力層から中間層への計算を説明する。各エッジには、重み係数w(j,i)が割り当てられている。jとiは、エッジの両端に位置するノードjとノードiを示す。すなわち、w(j,i)は、入力層にあるノードjと中間層にあるノードiを接続するエッジに設定された重み係数を表す。各エッジでは、入力層にあるノードの出力xj(J=1~n)を底とし、重み係数w(j,i)を指数部とする、べき乗を計算する。
 中間層では、各エッジで計算された値を入力し、これらの和hまたは積zを計算する。数式で表すと以下になる。
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000002
δは、各ノード間のエッジが繋がれていない場合は0、繋がれている場合は1を出力する関数である。本実施例では、エッジ制約設定部152(図1)が設定した、各ノード間のエッジの有無についての制約条件に従い、層の間で全てのノードがエッジで接続されているのではなく、一部のノードだけがエッジで接続されている。
 中間層にあるノードiは、入力層にあるノードjの出力値xjを入力値とし入力し、この入力値xjを底とし、ノードjとノードiとを繋ぐエッジに設定された重み係数wを指数部とする、べき乗を含む数式で表される値を持つ。そして、中間層にあるノードiは、式(1)と式(2)で表されるように、このべき乗の和hを計算するノードと、このべき乗の積zを計算するノードとを有する。図2に示す例では、中間層のノードのうち、前半のm個(i=1~m)のノードiは、式(1)で和hを計算し、後半のk個(i=(m+1)~(m+k))のノードiは、式(2)で積zを計算する。和hを計算するノードの数mと積zを計算するノードの数kは、任意に定めることができ、数式を表すのに十分な数を設定しておく。
 次に、中間層から出力層への計算を説明する。出力層には、1個のノードしか存在しない。中間層にあるノードiと出力層にあるノードを繋ぐエッジに設定された重み係数を、w’jで示す。出力層のノードは、出力値yを出力する。出力値yは、NNが表現する数式(予測式)で計算された値である。
 以上に説明した構造をもつNNが表現する数式(予測式)は、式(3)の形式、すなわち、べき乗を含む項の線形和を有する形式で表される。
Figure JPOXMLDOC01-appb-M000003
式(3)では、中間層のノードiについて和hだけでなく積zについても計算することで、出力値yを求める。積zについても計算することで、より正確に物理則に基づく数式を得ることができる。
 本実施例による計算装置1が使用するNNと従来の一般的なNNの違いは、主に以下の3点である。
 第1点は、式(1)~(3)に示すように、NNの入力値xjを底とし、重み係数w(j,i)を指数部とする、べき乗計算をして出力値yを求める点である。物理則は、一般に、べき乗の項を含む数式で表されることが多い。本実施例では、NNが表現する数式を、入力値を底とし重み係数を指数部とする、べき乗の項を含む数式で表すことで、物理則に基づいた数式を用いたモデリングが可能である。
 第2点は、式(2)に示すように、中間層のノードで、各エッジで計算された値(べき乗計算の値)を入力とした積zを計算する点である。上述したように、和hだけを計算するのではなく積zについても計算することで、より正確に物理則に基づく数式を得ることができる。
 第3点は、層の間で一部のノードだけがエッジで接続されており、全てのノードにエッジが繋がっているわけではない点である。エッジがどのノードに繋がっているか、すなわち層の間でノードがどのノードに接続されているかというNNの構造は、式(1)~(3)のδで決定される。NNの構造として、各層のノードを繋ぐエッジの数が増えると、NNが表現する数式も複雑化する。従って、エッジを減らすことで、数式を簡素化することができる。本実施例では、層の間でノードが一部のノードだけに対して接続されているので、エッジを減らしてNNが表現する数式を簡素化し、物理則との整合性をとるのを容易にすることができる。
 本実施例による計算装置1は、以上のような特徴を備え、式(3)に示したような物理特性を表す数式(物理式)を予測式として表現することができる。このため、本実施例による計算装置1では、NNの出力値(センサ31の予測検出値)が得られた理由をユーザーが容易に理解することができ、出力値に対する説明性と解釈性を向上させることができる。
 図3は、計算装置1が行う処理の流れを示すフロー図である。図3を用いて、上記で説明したNNを用いて数式を導出する計算装置1の処理の流れを説明する。
 S1で、ユーザーが入出力装置2を用いて、数式を導出するための計算の実行を計算装置1に命令すると、NN構造制約設定部15は、入出力制御部11を通してこの計算の実行命令を取得する。
 S2で、NN構造制約設定部15の入出力信号設定部151は、NNの入出力信号に関する制約条件を構造制約条件記憶部12から入力し、入力した制約条件をNN計算時の制約条件として設定する。
 図4は、構造制約条件記憶部12に記憶されている一部のデータの構成例を示す図である。図4には、一例として、構造制約条件記憶部12に記憶されているデータのうち、NNの入出力信号に関する制約条件を示している。この制約条件は、使用する入力信号と出力信号のそれぞれが、どのセンサ31の信号であるかを、センサ31の名前で特定する。図4に示した例では、NNにより、入力信号であるセンサA~Dなどの検出値(実測値)から、出力信号であるセンサZの予測検出値を算出する、という制約条件を示している。入力信号は、複数のセンサの信号であり、出力信号は、1つのセンサの信号とする。これは、図2に示したNNの入力層と出力層のノードに対応する。
 NNの入出力信号に関する制約条件のデータは、ユーザーが事前に入出力装置2を用いて設定し、構造制約条件記憶部12に記憶されている。
 図3の説明に戻る。
 S3で、NN構造制約設定部15のエッジ制約設定部152は、各ノード間のエッジの有無についての制約条件を構造制約条件記憶部12から入力し、入力した制約条件をNNの構造を決定する際の制約条件として設定する。
 図5A~5Cは、構造制約条件記憶部12に記憶されている一部のデータの構成例を示す図である。図5A~5Cには、一例として、構造制約条件記憶部12に記憶されているデータのうち、各ノード間のエッジの有無についての制約条件(NNの構造を決定する際の制約条件)を示している。図5A~5Cにおいて、表中の記号「×」は、ノード間でエッジが存在しないことを示している。記号「×」が付されていないノード間には、エッジが存在する。
 図5Aと図5Bは、入力層のノードと中間層のノードとを繋ぐエッジが、どのノード間で存在し、どのノード間で存在しないかという、各ノード間のエッジの有無についての制約条件の例を示す。図5Aには、式(1)で示した和hの計算を担うノード、すなわち図2に示した中間層のノードi(i=1~m)に関するノードを示している。図5Bには、式(2)で示した積zの計算を担うノード、すなわち図2に示した中間層のノードi(i=(m+1)~(m+k))に関するノードを示している。
 図5Cは、中間層のノードと出力層のノードとを繋ぐエッジが、どのノード間で存在し、どのノード間で存在しないかという、各ノード間のエッジの有無についての制約条件の例を示す。
 各ノード間のエッジの有無についての制約条件のデータは、ユーザーが事前に入出力装置2を用いて設定し、構造制約条件記憶部12に記憶されている。ユーザーは、例えばセンサ31が検出する信号に応じて、この制約条件を設定することができる。上述したように、従来のNNでは、層の間で全てのノードがエッジで接続されている。この制約条件は、本実施例でのNNにおいて、物理則との整合性をとるのを容易にするために、従来のNNから削除するエッジを定める条件である。
 図3の説明に戻る。
 S4で、NN構造最適化部16は、構造最適化条件を構造最適化条件記憶部13から入力する。構造最適化条件は、ユーザーが予め設定した、NNの学習条件である。
 図6は、構造最適化条件記憶部13に記憶されている構造最適化条件の構成例を示す図である。図6には、構造最適化条件として、数式項数の上限値、重み係数の初期値範囲、及び試行するNN構造の数を示している。
 数式項数の上限値は、計算装置1が導出する数式(予測式)の項数の上限値を表す。
 重み係数の初期値範囲は、NNの学習処理(重み係数wの収束計算)の際に設定する、重み係数wの初期値の範囲を表す。NN構造最適化部16は、後述する学習処理において、この重み係数の初期値範囲に従って、重み係数wの初期値を設定する。
 試行するNN構造の数は、計算装置1が数式を導出する回数を表す。NN構造最適化部16は、後述するように、各ノード間のエッジの有無のパターンを変えて(すなわち、NNの構造を変えて)数式を導出する。このパターンを変えて数式を導出する回数が、試行するNN構造の数で定められる。
 図3の説明に戻る。
 S5で、NN構造最適化部16は、構造制約条件記憶部12に記憶された入力信号について、時系列データをセンサデータ格納部42から入力することで、機器3のセンサデータを入力する。
 図7は、センサデータ格納部42に格納されているセンサデータの構成例を示す図である。センサデータ格納部42には、NNの入力信号となる、それぞれのセンサ31の検出値が、時系列の形式で格納されている。
 図3の説明に戻る。
 S6で、NN構造最適化部16は、学習処理によって、NNの構造を決定し、決定したNNの構造に対応する重み係数wを算出することで、入力信号と出力信号の関係を表す最適なNNを決定する。NNの学習には、例えば、誤差逆伝播処理を用いる。以下、図8を用いて、S6で行う処理の詳細を説明する。
 図8は、NN構造最適化部16が図3のS6で行う処理のフロー図である。本実施例による計算装置1におけるNNの学習処理、すなわち数式を導出する処理は、図8に示すように、二重のループで構成されたフローである。
 外側のループ(S11~S16)は、NNの構造、すなわち各ノード間のエッジの有無を決定する処理である。この処理では、構造制約条件記憶部12に記憶されている、各ノード間のエッジの有無についての制約条件(図5A~5C)において存在すると指定されたエッジについて、エッジを存在させないか存在させるか(すなわち、エッジを削除するか否か)を決定する。NN構造最適化部16が、各ノード間のエッジの有無のパターン(すなわち、NN構造)を変える回数は、構造最適化条件である試行するNN構造の数(図6)に従う。
 内側のループ(S14~S15)は、外側のループで決定されたNNの構造に対して、重み係数wを決定する処理である。この重み係数wの収束判定条件は、NNが出力するセンサ31の予測検出値とこのセンサ31の検出値(実測値)との差(loss)の変化率が、閾値以下となることである。この閾値は、ユーザーが予め任意に定めることができる。
 NN構造最適化部16が最終的に決定するNNの構造と重み係数wは、lossが最小となる条件で得られたものである。
 以下、図8のフローに沿って、NN構造最適化部16がNNの構造を決定して重み係数wを算出する処理について説明する。
 S11で、NN構造最適化部16は、今までに試行したNN構造の数(すなわち、計算装置1が数式を導出した回数)が、構造最適化条件としてユーザーに設定された試行するNN構造の数より小さいかを判断する。今までに試行したNN構造の数が、ユーザーに設定された試行するNN構造の数より小さい間は、S12~S16の処理を行う。
 S12で、NN構造最適化部16は、ベイズ最適化を用いて、構造最適化条件としてユーザーに設定された数式項数の上限値を満足するように、NNの構造(すなわち、各ノード間のエッジの有無)を決定する。NN構造最適化部16は、ユーザーが指定して構造制約条件記憶部12が記憶している、各ノード間のエッジの有無についての制約条件において存在するとされたエッジについて、これらのエッジを存在させるか否か(削除しないかするか)を決定する。ベイズ最適化とは、統計的な手法を用いて効率よく解を探索するための処理方法である。本実施例では、探索解であるNNの構造と、その評価値であるlossとの関係を用いて、各ノード間のエッジの有無のパターンを変えて(すなわち、NNの構造を変えて)統計的に探索範囲を決定することにより、最適化処理の効率化を図る。
 NN構造最適化部16は、設定された数式項数の上限値を満足するように各ノード間のエッジの有無を決定することで、NNから削除するエッジを定めることができる。すなわち、数を減らすためにNNから削除するエッジは、各ノード間のエッジの有無についての制約条件(構造制約条件記憶部12)としてユーザーが指定することができるとともに、NN構造最適化部16が求めることができる。
 各ノード間のエッジの有無と最終的に導出する数式の項数との関係は、中間層と出力層の間のエッジの数に依存する。図2に示した中間層のノードiのうち、前半のm個(i=1~m)のノードiについては、入力値の和hを計算するので、数式の項数は、出力層に繋がった中間層のノードと入力層のノードとを繋ぐエッジの総数となる。後半のk個(i=(m+1)~(m+k))のノードiについては、入力値の積zを計算するので、数式の項数は、出力層に繋がった中間層のノードの数となる。
 以上のようにNNの構造が決まれば、導出される数式の項数も一意に決まる。この性質を利用して、NN構造最適化部16は、ベイズ最適化により、設定された数式項数の上限値を満足するように、NNの構造(各ノード間のエッジの有無)を決定する。
 S13で、NN構造最適化部16は、S12で決定されたNN構造に対し、各エッジに割り付けられている重み係数wの初期値を設定する。この初期値は、任意の値に設定することができるが、前記したように、構造最適化条件としてユーザーに設定された重み係数の初期値範囲に従う値である。
 次に、NN構造最適化部16は、NNの学習処理、すなわち重み係数wの収束計算を行う。この収束計算は、後述する式(4)~(7)を用いて、重み係数wを更新する処理(S15)と、lossの変化率に基づいて収束判定を行う処理(S14)で構成される。
 以下に、S15の重み係数wを更新する処理の詳細を説明する。重み係数wを更新するのに用いられる式は、式(4)~(7)の4つある。これは、出力層と中間層のノードの組と中間層と入力層のノードの組という2組に対し、中間層の和hを計算するノードi(i=1~m)と積zを計算するノードi(i=(m+1)~(m+k))という2種類のノードがあるので、これらの組み合わせに応じて式が4つある。式(4)~(7)と後述する式(8)~(9)では、矢印の右側にあるwに更新前のwを代入し、矢印の右側にある式で得られた値を更新後のw(矢印の左側にあるw)とすることを示している。
 出力層と中間層のノードの組におけるノードi(i=1~m)に繋がるエッジでは、重み係数wを更新するための式として、式(4)を用いる。前記したように、wは重み係数、hは式(1)で示した中間層のノードi(i=1~m)の出力値、lossはNNが出力するセンサ31の予測検出値とこのセンサ31の検出値(実測値)との差である。ηは、学習率と呼ばれる任意の定数であり、値が例えば0.001と固定されている。
Figure JPOXMLDOC01-appb-M000004
 出力層と中間層のノードの組におけるノードi(i=(m+1)~(m+k))に繋がるエッジでは、重み係数wを更新するための式として、式(5)を用いる。前記したように、zは式(2)で示した中間層のノードi(i=(m+1)~(m+k))の出力値である。
Figure JPOXMLDOC01-appb-M000005
 中間層と入力層のノードの組におけるノードi(i=1~m)に繋がるエッジでは、重み係数wを更新するための式として、式(6)を用いる。前記したように、xは、入力層にあるノードj(j=1~n)の出力値である。
Figure JPOXMLDOC01-appb-M000006
 中間層と入力層のノードの組におけるノードi(i=(m+1)~(m+k))に繋がるエッジでは、重み係数wを更新するための式として、式(7)を用いる。
Figure JPOXMLDOC01-appb-M000007
 NN構造最適化部16は、以上に示した式(4)~(7)を用いて重み係数wの更新を繰り返し、最終的な重み係数wの値を決定する。
 式(6)、(7)は、入力層にあるノードの出力値x、すなわちセンサ31の検出値が負の場合には使えない。そこで、式(6)の代わりに式(8)を用いてもよく、式(7)の代わりに式(9)を用いてもよい。式(8)、(9)は、センサ31の検出値が負の場合にも対応できる。
Figure JPOXMLDOC01-appb-M000008
Figure JPOXMLDOC01-appb-M000009
 以上の数式(4)~(9)は、NNが学習に用いる誤差逆伝播処理で用いられる数式から導くことができるので、詳細な説明を省略する。
 NN構造最適化部16は、S15で重み係数wを更新したら、S14で重み係数wの値が収束したかを判定する。
 S14で、NN構造最適化部16は、前記したように、NNが出力するセンサ31の予測検出値とこのセンサ31の検出値(実測値)との差(loss)の変化率が、閾値以下であるかを判断する。lossの変化率とは、重み係数wを更新したときの、更新前後でのlossの変化率のことである。NN構造最適化部16は、lossの変化率が閾値以下であれば、重み係数wの値が収束したと判断し、S16の処理を実行する。
 S16で、NN構造最適化部16は、これまでに決定したNNの構造について得られたlossに対し、lossが最小のときのNNの構造のデータと重み係数wを記憶する。NN構造最適化部16は、lossが最小となるNNの構造を最適な構造だと判断し、このときのNNの構造のデータと重み係数wを記憶する。また、NN構造最適化部16は、重み係数wの値が収束したときに得られた最終的なNNの構造のデータと重み係数wだけでなく、収束途中で得られたNNの構造のデータと重み係数wも記憶する。
 図8を用いて説明した以上の処理が、図3のS6で行う処理である。
 図3の説明に戻る。
 S7で、NN構造最適化部16は、S6の処理で得られたNNの構造(各ノード間のエッジの有無)のデータと重み係数wを解析結果格納部17に格納する。
 図9は、解析結果格納部17に格納されているデータの構成例を示す図である。解析結果格納部17には、重み係数wの値が収束したときと収束していないときに得られた、NNの構造のデータと重み係数wの値が格納される。図9において、表中に記入されている数値は、各エッジに対応する重み係数wを表しており、表中の記号「×」は、ノード間でエッジが存在しないことを示している。
 図3の説明に戻る。
 S8で、構造数式変換部14は、解析結果格納部17が格納したNNの構造のデータと重み係数wの値を用いて、式(3)に従い、入力信号と出力信号の関係を表す数式、すなわち、センサ31の検出値と他のセンサ31の予測検出値との関係を表す数式(予測式)を導出する。式(3)には、式(1)と(2)に示されるように、hとzにべき乗の項が含まれている。このため、計算装置1は、式(3)により、物理則に基づいた数式を用いたモデリングが可能である。
 なお、構造数式変換部14は、NN構造最適化部16が重み係数を更新するごとに予測式を導出する。すなわち、構造数式変換部14は、重み係数が収束したときの重み係数の値を用いて予測式を導出するだけでなく、重み係数が収束していないときの重み係数の値を用いて、予測式を導出することもできる。
 以上が、計算装置1が行う処理の流れについての説明である。
 次に、ユーザーが計算装置1を使うときに、入出力装置2が表示する画面の例を説明する。入出力装置2は、計算装置1からの命令により、以下のような画面を表示する。
 図10は、ユーザーがNNの入出力信号に関する制約条件を設定する画面の例である。NNの入出力信号に関する制約条件は、構造制約条件記憶部12に記憶され、使用する入力信号と出力信号のそれぞれが、どのセンサ31の信号であるかを、センサ31の名前で特定する条件である。
 ユーザーは、使用出力値の項目101で、出力信号がどのセンサ31の信号であるかを指定する。例えば、計算装置1は、入出力装置2の画面に、機器3に設置されたセンサ31の一覧を表示し、ユーザーは、この一覧の中から出力に指定するセンサ31を1つ選択する。また、ユーザーは、使用入力値の項目102で、入力信号がどのセンサ31の信号であるかを指定する。入力信号については、ユーザーは、複数のセンサ31を選択する。図10に示すように、選択されたセンサ31は、色が変わって表示される。
 図11は、ユーザーが各ノード間のエッジの有無についての制約条件を設定する画面の例である。各ノード間のエッジの有無についての制約条件は、構造制約条件記憶部12に記憶され、NNから削除されるエッジを指定する条件である。
 ユーザーは、入力層のノードと中間層のノードとを繋ぐエッジについての項目201、202で、これらのエッジに対してエッジの有無を指定する。項目201は、和hの計算を担うノードに関するエッジについての項目である。項目202は、積zの計算を担うノードに関するエッジについての項目である。また、ユーザーは、中間層のノードと出力層のノードとを繋ぐエッジについての項目203で、これらのエッジに対してエッジの有無を指定する。図11において、表中のチェックマークは、削除するエッジが指定されたことを示している。チェックマークの付け外しは、例えば、ユーザーがマウスカーソルで表をクリックすることで行うことができる。
 図12は、ユーザーが構造最適化条件を設定する画面の例である。構造最適化条件は、構造最適化条件記憶部13に記憶され、数式項数の上限値、重み係数の初期値範囲、及び試行するNN構造の数を含む。
 ユーザーは、数式項数の上限値の項目301で、計算装置1が導出する数式の項数の上限値を指定する。ユーザーは、重み係数の初期値範囲の項目302で、NNの学習処理(重み係数wの収束計算)の際に設定する、重み係数wの初期値の範囲を指定する。ユーザーは、試行するNN構造の数の項目303で、計算装置1が、各ノード間のエッジの有無のパターンを変えて数式を導出する回数(パターンの数)を指定する。
 図13は、計算装置1が導出した数式(予測式)を出力する画面の例である。項目401は、ユーザーがNNの入出力信号に関する制約条件で指定したセンサ31の信号値(検出値)を表示する。項目402は、NNの重み係数wの収束計算が終了したときに導出された数式(予測式)を表示する。この数式は、計算装置1が行った処理フローの全体を通して、lossが最小のときの数式である。項目403は、重み係数wの収束計算の途中で導出された数式を、収束計算の繰り返しごとに表示する。
 項目403で、収束計算の途中で導出された数式、すなわち、重み係数が収束していないときの重み係数の値を用いて導出された数式を表示するのは、lossが最小のときの数式が必ずしも最適とは限らないからである。以下に、この現象の詳細を説明する。
 NNなどのモデリングには、一般的に過学習という問題がある。過学習とは、学習用に与えられたデータに過剰にフィッティングしたモデルが作られた結果、それ以外のデータに対する誤差が大きくなる現象をいう。このため、予測誤差(例えば、本実施例ではloss)が最小だが、得られた数式は、過学習が原因で物理則に準じていない場合もあり得る。
 本実施例による計算装置1では、予測誤差の小さいNNを得ることよりも、モデリングの対象の背景にある物理則に準じた数式を導出することを重視する。このため、本実施例による計算装置1では、収束計算の途中の過程で導出された数式、すなわちlossが最小でないときの数式も併せて表示することにより、過学習による問題の解決を図ることができる。
 以上に述べたように、本実施例によれば、プラントや設備機器などの機器3に設置されたセンサ31の検出値と他のセンサ31の予測検出値との関係性を、物理則に基づいた数式としてモデリングできる。これにより、ユーザーは、モデリングされたNNが対象の機器3の物理特性と合致しているかを容易に確認することができ、NNが算出した予測結果に対する説明性と解釈性を向上させることができる。
 本発明の実施例2による、ニューラルネットワーク(NN)の計算装置及び計算方法について説明する。実施例1と実施例2との相違点は、NNが表現できる数式(予測式)にある。実施例1では、式(3)に示すように、べき乗を含む項の線形和を有する形式の数式を導出するが、実施例2では、線形和のべき乗を有する形式の数式を導出する。
 以下では、実施例2について、実施例1との相違点を主に説明する。相違点は、NNの構造、NNの計算処理と学習処理、及び計算装置1の計算結果を出力する画面である。
 初めに、NNの構造について、実施例2の実施例1との相違点を説明する。
 図14は、本実施例において、計算装置1が数式(予測式)の導出に用いるNNの構造を表した概略図である。本実施例でのNNの構造は、実施例1でのNNの構造(図2)と比べて、入力層から中間層におけるエッジ部が担う計算処理と、中間層から出力層におけるエッジ部が担う計算処理とが入れ替わっている点で相違する。
 まず、入力層から中間層への計算を説明する。各エッジには、重み係数w(j,i)が割り当てられている。jとiは、エッジの両端に位置するノードjとノードiを示す。すなわち、w(j,i)は、入力層にあるノードjと中間層にあるノードiを接続するエッジに設定された重み係数を表す。各エッジでは、入力層にあるノードの出力xj(J=1~n)と重み係数w(j,i)の積を計算する。
 中間層では、各エッジで計算された値を入力とし、これらの和hまたは積zを計算する。数式で表すと以下になる。
Figure JPOXMLDOC01-appb-M000010
Figure JPOXMLDOC01-appb-M000011
δは、各ノード間のエッジが繋がれていない場合は0、繋がれている場合は1を出力する関数である。本実施例では、実施例1と同様に、層の間で全てのノードがエッジで接続されているのではなく、一部のノードだけがエッジで接続されている。
 図14に示す例では、中間層のノードのうち、前半のm個(i=1~m)のノードiは、式(10)で和hを計算し、後半のk個(i=(m+1)~(m+k))のノードiは、式(11)で積zを計算する。和hを計算するノードの数mと積zを計算するノードの数kは、任意に定めることができ、数式を表すのに十分な数を設定しておく。
 次に、中間層から出力層への計算を説明する。出力層には、1個のノードしか存在しない。中間層にあるノードiと出力層にあるノードを繋ぐエッジに設定された重み係数を、w’jで示す。出力層のノードは、出力値yを出力する。各エッジでは、中間層にあるノードの出力hi(i=1~m)とzi(i=(m+1)~(m+k))を底とし、重み係数w’jを指数部とする、べき乗を計算する。
 以上に説明した構造をもつNNが表現する数式(予測式)は、式(12)の形式、すなわち、線形和のべき乗を有する形式で表される。
Figure JPOXMLDOC01-appb-M000012
 次に、NNの計算処理と学習処理について、実施例2の実施例1との相違点を説明する。相違点は、重み係数wの収束計算に用いる数式である。実施例2では、後述する式(13)~(18)を用いて、重み係数wを更新する。
 以下に、重み係数wを更新する処理(実施例1での図8のS15に相当)の詳細を説明する。重み係数wを更新するのに用いられる式は、式(13)~(16)の4つある。式が4つあるのは、実施例1で説明したのと同様の理由による。
 出力層と中間層のノードの組におけるノードi(i=1~m)に繋がるエッジでは、重み係数wを更新するための式として、式(13)を用いる。前記したように、wは重み係数、hは式(10)で示した中間層のノードi(i=1~m)の出力値、lossはNNが出力するセンサ31の予測検出値とこのセンサ31の検出値(実測値)との差である。ηは、学習率である。
Figure JPOXMLDOC01-appb-M000013
 出力層と中間層のノードの組におけるノードi(i=(m+1)~(m+k))に繋がるエッジでは、重み係数wを更新するための式として、式(14)を用いる。前記したように、zは式(11)で示した中間層のノードi(i=(m+1)~(m+k))の出力値である。
Figure JPOXMLDOC01-appb-M000014
 中間層と入力層のノードの組におけるノードi(i=1~m)に繋がるエッジでは、重み係数wを更新するための式として、式(15)を用いる。xは、入力層にあるノードj(j=1~n)の出力値である。
Figure JPOXMLDOC01-appb-M000015
 中間層と入力層のノードの組におけるノードi(i=(m+1)~(m+k))に繋がるエッジでは、重み係数wを更新するための式として、式(16)を用いる。
Figure JPOXMLDOC01-appb-M000016
 式(13)の代わりに式(17)を用いてもよく、式(14)の代わりに式(18)を用いてもよい。式(17)、(18)は、中間層ノードの出力値hまたはzが負の場合にも対応できる。
Figure JPOXMLDOC01-appb-M000017
Figure JPOXMLDOC01-appb-M000018
 次に、計算装置1の計算結果を出力する画面について、実施例2の実施例1との相違点を説明する。
 図15は、本実施例において、計算装置1が導出した数式(予測式)を出力する画面の例である。項目502は、NNの重み係数wの収束計算が終了したときに導出された数式(予測式)を表示する。項目503は、重み係数wの収束計算の途中で導出された数式を、収束計算の繰り返しごとに表示する。
 項目502と項目503に表示される数式の形式は、実施例1で項目402と項目403(図13)に表示される数式の形式と、それぞれ相違する。実施例2では、線形和のべき乗を有する形式で数式が表示される。
 以上に述べたように、本実施例では、実施例1で表現できない形式の数式、すなわち、線形和のべき乗を有する形式の数式を導出することができる。このため、本実施例でも、プラントや設備機器などの機器3に設置されたセンサ31の検出値と他のセンサ31の予測検出値との関係性を、物理則に基づいた数式としてモデリングできる。これにより、ユーザーは、モデリングされたNNが対象の機器3の物理特性と合致しているかを容易に確認することができ、NNが算出した予測結果に対する説明性と解釈性を向上させることができる。
 なお、本発明は、上記の実施例に限定されるものではなく、様々な変形が可能である。例えば、上記の実施例は、本発明を分かりやすく説明するために詳細に説明したものであり、本発明は、必ずしも説明した全ての構成を備える態様に限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能である。また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、削除したり、他の構成を追加・置換したりすることが可能である。
 1…計算装置、2…入出力装置、3…機器、4…制御システム、11…入出力制御部、12…構造制約条件記憶部、13…構造最適化条件記憶部、14…構造数式変換部、15…NN構造制約設定部、16…NN構造最適化部、17…解析結果格納部、31…センサ、41…制御装置、42…センサデータ格納部、101…使用出力値の項目、102…使用入力値の項目、151…入出力信号設定部、152…エッジ制約設定部、201、202…入力層と中間層を繋ぐエッジについての項目、203…中間層と出力層を繋ぐエッジについての項目、301…数式項数の上限の項目、302…重み係数の初期値範囲の項目、303…試行するNN構造の数の項目、401…センサの信号値を表示する項目、402…導出された数式を表示する項目、403…収束計算の途中で導出された数式を表示する項目、502…導出された数式を表示する項目、503…収束計算の途中で導出された数式を表示する項目。

Claims (10)

  1.  第1のセンサと第2のセンサが設置された機器に接続されており、
     前記第1のセンサの検出値を入力する構造最適化部と、
     ニューラルネットワークを用いて、前記第1のセンサの前記検出値と、前記第2のセンサの検出値の予測値との関係を表す数式である予測式を導出する構造数式変換部と、
    を備え、
     前記ニューラルネットワークは、ノードの出力値を底とし、前記ノードに繋がるエッジに設定された重み係数を指数部とする、べき乗を含む数式で表される値を持つノードを含み、
     前記構造最適化部は、前記第1のセンサの前記検出値から、前記ニューラルネットワークの構造と前記重み係数を算出し、
     前記構造数式変換部は、前記構造最適化部が算出した前記ニューラルネットワークの構造と前記重み係数を用いて、前記予測式として前記べき乗を含む項を持つ数式を導出する、
    ことを特徴とする、ニューラルネットワークの計算装置。
  2.  前記ニューラルネットワークは、入力層、中間層、及び出力層を備え、
     前記入力層のノードは、前記第1のセンサの前記検出値を入力して出力値として出力し、
     前記中間層のノードは、前記入力層のノードの前記出力値を入力値として入力し、前記入力値を底とし、前記入力層の前記ノードと前記中間層の前記ノードとを繋ぐエッジに設定された重み係数を指数部とする、前記べき乗を含む数式で表される値を持ち、
     前記出力層のノードは、前記予測式で計算された値を出力する、
    請求項1に記載のニューラルネットワークの計算装置。
  3.  前記中間層の前記ノードは、前記べき乗の和を計算する前記ノードと、前記べき乗の積を計算する前記ノードとを有する、
    請求項2に記載のニューラルネットワークの計算装置。
  4.  前記ニューラルネットワークの学習には、誤差逆伝播処理が用いられ、
     前記構造最適化部は、誤差逆伝播処理で用いられる数式から得られた数式を用いて前記重み係数を算出する、
    請求項1に記載のニューラルネットワークの計算装置。
  5.  ユーザーに入力された、前記予測式の項数の上限値、前記重み係数の初期値の範囲、及びノード間のエッジの有無についての条件を記憶する記憶部を備える、
    請求項1に記載のニューラルネットワークの計算装置。
  6.  前記構造最適化部は、ベイズ最適化を用いて、前記記憶部が記憶する前記予測式の項数の上限値を満足するように、各ノード間のエッジの有無を決定する、
    請求項5に記載のニューラルネットワークの計算装置。
  7.  前記構造最適化部は、前記重み係数の算出において、前記重み係数が収束するまで前記重み係数を更新し、
     前記構造数式変換部は、前記構造最適化部が前記重み係数を更新するごとに前記予測式を導出する、
    請求項1に記載のニューラルネットワークの計算装置。
  8.  第1のセンサと第2のセンサが設置された機器に接続された計算装置に実行され、
     前記計算装置が、前記第1のセンサの検出値を入力する構造最適化工程と、
     前記計算装置が、ニューラルネットワークを用いて、前記第1のセンサの前記検出値と、前記第2のセンサの検出値の予測値との関係を表す数式である予測式を導出する構造数式変換工程と、
    を有し、
     前記ニューラルネットワークは、ノードの出力値を底とし、前記ノードに繋がるエッジに設定された重み係数を指数部とする、べき乗を含む数式で表される値を持つノードを含み、
     前記構造最適化工程では、前記計算装置が、前記第1のセンサの前記検出値から、前記ニューラルネットワークの構造と前記重み係数を算出し、
     前記構造数式変換工程では、前記計算装置が、前記構造最適化工程で算出した前記ニューラルネットワークの構造と前記重み係数を用いて、前記予測式として前記べき乗を含む項を持つ数式を導出する、
    ことを特徴とする、ニューラルネットワークの計算方法。
  9.  前記ニューラルネットワークは、入力層、中間層、及び出力層を備え、
     前記入力層のノードは、前記第1のセンサの前記検出値を入力して出力値として出力し、
     前記中間層のノードは、前記入力層のノードの前記出力値を入力値として入力し、前記入力値を底とし、前記入力層の前記ノードと前記中間層の前記ノードとを繋ぐエッジに設定された重み係数を指数部とする、前記べき乗を含む数式で表される値を持ち、
     前記出力層のノードは、前記予測式で計算された値を出力する、
    請求項8に記載のニューラルネットワークの計算方法。
  10.  前記中間層の前記ノードは、前記べき乗の和を計算する前記ノードと、前記べき乗の積を計算する前記ノードとを有する、
    請求項9に記載のニューラルネットワークの計算方法。
PCT/JP2023/015901 2022-06-01 2023-04-21 ニューラルネットワークの計算装置及び計算方法 WO2023233858A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-089466 2022-06-01
JP2022089466A JP2023176898A (ja) 2022-06-01 2022-06-01 ニューラルネットワークの計算装置及び計算方法

Publications (1)

Publication Number Publication Date
WO2023233858A1 true WO2023233858A1 (ja) 2023-12-07

Family

ID=89026272

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/015901 WO2023233858A1 (ja) 2022-06-01 2023-04-21 ニューラルネットワークの計算装置及び計算方法

Country Status (2)

Country Link
JP (1) JP2023176898A (ja)
WO (1) WO2023233858A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10134018A (ja) * 1996-07-08 1998-05-22 Nippon Telegr & Teleph Corp <Ntt> 法則発見方法と装置及び法則発見プログラムを格納した記憶媒体、及びニューラルネット学習方法と装置及びニューラルネット学習プログラムを格納した記憶媒体
CN114036582A (zh) * 2021-10-27 2022-02-11 浙江数秦科技有限公司 一种乘法神经网络模型及隐私计算方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10134018A (ja) * 1996-07-08 1998-05-22 Nippon Telegr & Teleph Corp <Ntt> 法則発見方法と装置及び法則発見プログラムを格納した記憶媒体、及びニューラルネット学習方法と装置及びニューラルネット学習プログラムを格納した記憶媒体
CN114036582A (zh) * 2021-10-27 2022-02-11 浙江数秦科技有限公司 一种乘法神经网络模型及隐私计算方法

Also Published As

Publication number Publication date
JP2023176898A (ja) 2023-12-13

Similar Documents

Publication Publication Date Title
JP7394805B2 (ja) 予測分析用の動作中心型第一原理プロセスモデルの動的構築及びオンライン配備のためのコンピュータシステム及び方法
Xu et al. A conflict-eliminating approach for emergency group decision of unconventional incidents
Xu et al. A maximizing consensus approach for alternative selection based on uncertain linguistic preference relations
EP3767560A1 (en) Future state estimation device and future state estimation method
KR102577188B1 (ko) 목표 시스템에 대한 제어 시스템 생성
JP6947108B2 (ja) データ予測装置、方法、及びプログラム
CN114818549B (zh) 一种物体的流体力学参数计算方法、系统、设备以及介质
KR102054500B1 (ko) 설계 도면 제공 방법
Senn et al. Reducing the computational effort of optimal process controllers for continuous state spaces by using incremental learning and post-decision state formulations
WO2023233858A1 (ja) ニューラルネットワークの計算装置及び計算方法
JPH06332506A (ja) 非線形制御装置
US20220114486A1 (en) Device for and method of automating machine learning
CN112580797B (zh) 一种多模态多标签预测模型的增量学习方法
CN114841461A (zh) 基于时序缺失感知和多源因素融合的空气质量集成预测方法
CN115691814A (zh) 血流动力学仿真模型构建、仿真方法、装置及电子设备
Abad et al. Estimation of expected human attention weights based on a decision field theory model
Angelov et al. Evolving inferential sensors in the chemical process industry
CN114021619A (zh) 基于图结构演化的分类方法及装置
JP2643295B2 (ja) ファジィ制御演算装置およびファジィ推論方法
CN111210877A (zh) 一种推断物性参数的方法及装置
EP3971796A1 (en) Removing undesirable inferences from a machine learning model
CN110633728A (zh) 一种基于蒙特卡洛搜索算法的金融信号挖掘方法与系统
WO2023085195A1 (ja) モデル生成装置、モデル生成方法及びデータ推定装置
WO2022059183A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP4267726B2 (ja) 制御装置における動作信号と操作量との関係を決定する装置、制御装置、データ生成装置、入出力特性決定装置及び相関関係評価装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23815619

Country of ref document: EP

Kind code of ref document: A1