Distributed learning system and learning data evaluation method
Patent Information
- Application Number
- JP2023130323
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-08-09
- Publication Date
- 2025-02-21
Smart Images

Figure 2025025505000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a distributed learning system and a learning data evaluation method, and in particular to a distributed learning system and a learning data evaluation method suitable for evaluating the contribution of learning data suitable for a distributed computer system to learning in machine learning with teacher data. [Background technology]
[0002] Supervised data-assisted machine learning is a method of using a computer to optimally solve problems by learning from large amounts of training data to optimize the learning model for inference about the problem to be solved.
[0003] In this case, by providing optimal training data, a higher performance learning model can be provided to the user. To achieve this, it is possible to introduce the concept of the contribution of training data to learning.
[0004] A technology that uses the concept of contribution degree for a machine learning system is, for example, Patent Document 1. In the technology described in Patent Document 1, in a machine learning system, evaluation target data is data that is added to or removed from an initial data group, and a contribution degree calculation unit calculates a contribution degree that evaluates the influence of the evaluation target data on the performance of the learning model based on an output value by the learning model and an output value by a re-learned model that is trained by adding or removing the evaluation target data from the initial data group.
[0005] This makes it possible to know whether or not the exclusion and addition of evaluation target data to the training data has a positive or negative impact on the performance of the machine learning model.
[0006] Furthermore, Non-Patent Document 1 discloses a technique for evaluating the influence of a parameter on prediction as an influence function.
[0007] Non-Patent Document 1 states, "We show that influence functions can help human experts prioritize their attention, allowing them to inspect only the examples that actually matter," and "L up,loss (Z i ,Z i ) by Z i This measures the impact of Z i If you delete Z i We measure the influence of Z i with L up,loss (Z i ,Z i ), which approximates the error started on Z i if we remove Z i from the training set) (both in 5.4 Fixing mislabeled examples).
[0008] In addition, Non-Patent Document 2 describes a technique for estimating the impact on the performance of a model obtained by machine learning by excluding a certain computer in machine learning performed through communication between a central server and multiple computers. Non-Patent Document 2 states that "Extensive works have studied the performance guarantee of the global model however, it is still unclear how each individual client influences the collaborative training process. In this work, we defined a new notion, called Fed-Influence, to quantify this influence over the model parameters, and proposed an effective and efficient algorithm to estimate this metric." (Abstracts) and "In centralized learning, the server has full control over the sampling data considered as the evaluation of the influence, whereas in federated learning, the server cannot access the client's data due to privacy requirements.(The server in centralized learning, as the influence evaluator, has the full control over the considered sampling data, while in federated learning, the server would not be able to access clients' raw data because of the privacy requirement).
[0009] Furthermore, non-patent document 3 discloses a technique for distributed optimization using multiple agents. [Prior art documents] [Patent documents]
[0010] [Patent Document 1] Patent Publication No. 2021-149842 [Non-patent literature]
[0011] [Non-Patent Document 1] Pang Wei Koh, et. al., “Understanding Black-box Predictions via InfluenceFunctions”, July 10, 2017, [online], [Retrieved March 29, 2023], Internet URL: https: / / arxiv.org / pdf / 1703.04730.pdf [Non-Patent Document 2] Yihao Xue, et. Al., "Toward Understanding the Influence of Individual Clients in Federated Learning", December 20, 2020, [online], [Retrieved March 29, 2023], Internet URL: https: / / arxiv.org / pdf / 2012.10936.pdf [Non-Patent Document 3] Yuan, Kun, Qing Ling, and Wotao Yin. "On the convergence of decentralized gradient descent." SIAM Journal on Optimization 26.3 (2016):1835-1854.,[online],[Retrieved July 6, 2023], Internet<URL: https: / / arxiv.org / pdf / 1310.7063.pdf> Summary of the Invention [Problem to be solved by the invention]
[0012] Patent Document 1 discloses a system that introduces the concept of contribution to learning data, and Non-Patent Document 1 relates to a technology that evaluates the influence of parameters on predictions using an influence function, but neither of them takes into consideration application to a distributed system in which communication is performed between multiple computers. Also, the machine learning described in Non-Patent Document 2 is a system model that assumes a central server and communicates between the central server and multiple computers.
[0013] Distributed systems that use a central server have concerns that a failure of the central server could cause the entire system to malfunction, and that communication bottlenecks with the central server could reduce the efficiency of system processing.
[0014] An object of the present invention is to provide a distributed learning device and a learning data evaluation method for evaluating the impact on the total performance of machine learning models of all computers obtained by distributed learning when any computer excludes the learning data it stores in a distributed system that does not use a central server. [Means for solving the problem]
[0015] The configuration of the distributed learning system of the present invention is preferably a distributed learning system in which one or more distributed learning devices are connected via a network so as to be able to communicate, wherein the distributed learning devices hold learning data, verification data, and learning model information related to learning, wherein the learning model information includes machine learning model structure information and model parameters, wherein the learned parameters are model parameters that minimize the sum across the distributed learning devices of the distributed learning system of a loss function having the model parameters and the learning data as arguments, wherein the verification data includes one or more pieces of evaluation target data that are not included in the learning data held by each of the distributed learning devices, wherein the distributed learning device receives a delivery value based on the sum of losses of the verification data in each distributed learning device from other distributed learning devices connected to the distributed learning device, and wherein a contribution value in learning to the evaluation target data is estimated based on the gradient of the loss function having the learned parameters and the evaluation target data as arguments, and the delivery value. Effect of the Invention
[0016] According to the present invention, in a distributed system that does not use a central server, it is possible to provide a distributed learning system and a learning data evaluation method that evaluates the impact on the total performance of the machine learning models of all computers obtained by distributed learning when any computer excludes the learning data it stores. [Brief description of the drawings]
[0017] [Figure 1] 1 is a configuration diagram of a distributed learning system according to an embodiment of the present invention. [Diagram 2] FIG. 2 is a functional configuration diagram of a distributed learning device. [Diagram 3] FIG. 2 is a diagram showing the hardware and software configuration of a distributed learning device. [Figure 4] 1 is a flowchart showing a series of processes from learning processing to inference processing in a distributed learning device. [Diagram 5] 13 is a flowchart showing a contribution value estimation process. [Figure 6]FIG. 1 is a diagram showing a graph of a distributed learning system in which distributed learning devices are nodes. [Figure 7A] FIG. 13 is a diagram showing intermediate data received by the distributed learning device of node (n2) in the graph of the distributed learning system. [Figure 7B] FIG. 13 is a diagram showing intermediate data transmitted by the distributed learning device of node (n2) in the graph of the distributed learning system. [Figure 8] FIG. 13 is a diagram showing an example of an equipment appearance data label correction screen. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0018] Hereinafter, an embodiment of the present invention will be described with reference to FIGS.
[0019] This embodiment is based on a system model in which the machine learning task is to determine whether or not there is a defect in an equipment image, and in which multiple computers perform distributed learning in which the computers communicate only with some of the other computers.
[0020] The machine learning of this embodiment is so-called learning with teacher data, and the machine learning model is used for equipment appearance inspection, and the equipment to be inspected is, for example, a building, a bridge, or an infrastructure facility. The learning data of the machine learning is composed of an equipment appearance image captured by a camera or the like and label information (correct answer information) given by a user indicating whether or not the equipment appearance image contains a defect. Equipment defects are, for example, rust, deformation, and cracks found on the equipment appearance. Furthermore, the learning data may include erroneous learning data in which label information indicating a defect is attached to an equipment appearance image that does not contain a defect. The machine learning model is a function that is trained to receive one or more equipment appearance images as input and output True if the equipment image contains a defect, and False if the equipment image does not contain a defect, and is expressed, for example, by a neural network.
[0021] A distributed learning system according to an embodiment of the present invention will be described below with reference to FIGS.
[0022] 1, the distributed learning system of this embodiment has a configuration in which multiple distributed learning devices 100 (in FIG. 1, they are indicated as 100a, 100b, ...) are connected via a network 5. In the system configuration, communication with all other computers may not always be possible due to communication bottlenecks, lack of physical communication paths, and other reasons.
[0023] Next, the functional configuration of the distributed learning device will be described with reference to FIG.
[0024] Distributed learning device 100 is a computer that serves as a distributed learning node in a distributed learning system, and is a device that evaluates the learning contribution of each piece of learning data. As shown in Fig. 2, distributed learning device 100 includes contribution value estimating unit 101, learning data correcting unit 102, learning unit 104, inference unit 105, transmitting unit 110, receiving unit 111, input unit 120, display unit 121, and memory unit 150.
[0025] The contribution value estimation unit 101 is a functional unit that estimates a contribution value by an approximation value of the contribution value in learning of the verification data 202. The learning data correction unit 102 is a functional unit that corrects the learning data based on the result of the calculation by the contribution value estimation unit 101. The learning unit 104 is a functional unit that performs machine learning using the learning data 203. The inference unit 105 is a functional unit that derives a solution by inference for the inferred data using the corrected learning data 204. The transmission unit 110 is a functional unit that transmits intermediate data (described later) of the contribution value estimation unit 101 to another distributed learning device 100 via the network 5. The reception unit 111 is a functional unit that receives intermediate data (described later) from another distributed learning device 100. The input unit 120 is a functional unit that inputs a label for the learning data and the inferred data 205. The display unit 121 is a functional unit that displays the contents of the learning data. The storage unit 150 is a functional unit that stores data used in the distributed learning device 100.
[0026] The storage unit 150 contains model information data 200 , transmission and reception weight vector data 201 , verification data 202 , learning data 203 , corrected learning data 204 , inferred data 205 , and inference result data 206 .
[0027] The model information data 200 is machine learning model structure information and model parameters, and includes learned parameters used in the contribution value estimation unit 101 as described later. The transmission and reception weight vector data 201 is data of transmission and reception weight vectors (described later) used when communicating with other distributed learning devices 100. The verification data 202 is data for verifying the learning data, including at least one piece of data not included in the learning data. The verification data 202 has a sufficient number of data to represent the population of the learning data, and the distributed learning device 100 is used to estimate the change that the exclusion of certain learning data has on the performance for the population of the learning data. The learning data 203 is data that has been learned for inference, and in this embodiment, is image data and labels of the facility. The corrected learning data 204 is data obtained by correcting the learning data 203 based on the result of the contribution value estimation unit 101. The inferred data 205 is data to be inferred, and in this embodiment, is image data of the facility. The inference result data 206 is data indicating the inference result (presence or absence of a defect) for the facility image data.
[0028] Next, the hardware and software configuration of the distributed learning device will be explained with reference to FIG.
[0029] The hardware configuration of distributed learning device 100 is realized by, for example, a general information processing device such as a personal computer shown in FIG.
[0030] Distributed learning device 100 includes a CPU (Central Processing Unit) 302, a main memory device 304, a network I / F (Interface) 306, a display I / F 308, an input / output I / F 310, and an auxiliary memory I / F 312, all of which are connected via a bus.
[0031] The CPU 302 controls each unit of the distributed learning device 100, and loads necessary programs into the main memory device 304 and executes them.
[0032] The main storage device 304 is typically configured as a volatile memory such as a RAM, and stores the programs executed by the CPU 302 and data referenced by the CPU 302.
[0033] The network I / F 306 is an interface for connecting to the network 5 .
[0034] The display I / F 308 is an interface for connecting a display device 320 such as an LCD (Liquid Crystal Display).
[0035] The input / output I / F 310 is an interface for connecting input / output devices. In the example of Fig. 3, a keyboard 330 and a mouse 332 which is a pointing device are connected.
[0036] The auxiliary storage I / F 312 is an interface for connecting an auxiliary storage device such as a hard disk drive (HDD) 350 or a solid state drive (SSD).
[0037] The HDD 350 has a large storage capacity and stores programs for executing the present embodiment. A parameter optimization program 361, a contribution value estimation program 362, a learning data correction program 363, a learning program 364, and an inference program 365 are installed in the distributed learning device 100.
[0038] A parameter optimization program 361, a contribution value estimation program 362, a learning data correction program 363, a learning program 364, and an inference program 365 are programs that execute the functions of the contribution value estimation unit 101, the learning data correction unit 102, the learning unit 104, and the inference unit 105, respectively.
[0039] Hereinafter, the processing of the distributed learning device of the distributed learning system according to one embodiment of the present invention will be described with reference to Figs. 4 to 7B.
[0040] First, the contribution value and data related thereto in the distributed learning device of this embodiment will be described.
[0041] Trained parameter x s * are the optimal model parameters of the machine learning model of the sth computer, and are stored as the model information data 200.
[0042] For any s, the learned parameters x s * is a solution obtained by the learning unit 104 performing optimization shown in the following (Equation 1) using the learning data 202. * ,…,x n * is the sth vector in .
[0043]
number
[0044] where n is the number of computers (nodes) in the entire distributed learning system, and m k is the number of learning data for the kth computer, y k,l is the l-th learning data of the k-th computer, f k is the loss function of the kth computer. Here, argmin is the x1 * ,…,x n * But when ΣΣf on the right hand side is at its minimum value, x1,…,x n The loss function is, for example, a cross-entropy function that takes label information and the output of a neural network as input.
[0045] x in (Equation 1) i is a d-dimensional vector as shown in the following (Equation 2).
[0046]
number
[0047] The model information 200 stores machine learning model structure information and learned parameters calculated by (Equation 1). The machine learning model structure information is, for example, information required to construct the network structure of a neural network.
[0048] As already described, the verification data 202 includes at least one piece of data that is not included in the training data, and the verification data 202 has a sufficient number of pieces of data to represent the population of the training data.
[0049] The transmission and reception weight vector data 201 is data of the transmission and reception weight vector. The transmission and reception weight vector is a vector that is calculated by the weight vector described later when any computer in the distributed learning system transmits or receives the weight vector to or from any other computer including itself. s (t) It is a vector in which the transmit / receive weights, which are scalar values specific to each computer, are arranged for all computers in the order of the computer numbers.
[0050] The transmit / receive weight vector is characterized in that the adjacency matrix formed by using the transmit / receive weight vector stored in an arbitrary s-th computer as the s-th column vector is a doubly stochastic matrix (the sum of the elements in each row and column is 1). For example, a distributed learning system with 5 nodes, n, is represented by an undirected graph as shown in FIG. 6, and the value of each edge is the transmit / receive weight. In this case, the transmit / receive weight used when transmitting / receiving between the s-th computer and the k-th computer is p ks When expressed as above, the adjacency matrix is, for example, as shown in the following (Equation 3).
[0051]
number
[0052] Here, the transmitting and receiving weight vectors are calculated in advance, for example, using the Fastest Mixing Markov Chain method (for example, Stephen Boyd, et al. “Fastest Mixing Markov Chain on a Graph”, https: / / web.stanford.edu / ~boyd / papers / pdf / fmmc.pdf).
[0053] Contribution value ΔF k′,l′ is a scalar value defined by the following (Equation 4).
[0054]
number
[0055] Here, the second term F is the validation loss defined by the following (Equation 5) calculated using the trained parameters in (Equation 1).
[0056]
number
[0057] In addition, y′ k,l is the l-th verification data of the k-th computer.
[0058] In addition, the first term of (Equation 4) F k′,l′ The solution of (Equation 1) when the l'th learning data of the k'th computer (hereinafter referred to as "evaluation target data") is excluded is k The validation loss is calculated by substituting the first parameter of the validation data into the solution of (Equation 1) and F k′,l′ are given by the following (Equation 6) and (Equation 7), respectively.
[0059]
number
[0060]
number
[0061] F in (Equation 7) k′,l′ is the sum of losses obtained by training a machine learning model using training data excluding the l'th training data of the k'th computer, and inputting validation data into the machine learning model obtained by this training. Therefore, when the contribution value in (Equation 4) is a positive value, it means that the data to be evaluated is excluded from the training data, thereby increasing the loss obtained by inputting validation data, that is, the performance of learning by the machine learning model for the validation data is deteriorated, and conversely, when the contribution value is a negative value, it means that the performance of learning by the machine learning model is improved. Due to this property, the contribution value ΔF in (Equation 4) k′,l′ Using this, it is possible to know whether excluding the data to be evaluated has a positive or negative effect on the learning performance of the machine learning model.
[0062] Next, a series of processes from the learning process to the inference process in the distributed learning device will be described with reference to FIG.
[0063] First, the learning unit 104 of the distributed learning device 100 performs a learning process based on the learning data 203 and updates the model information data 200 (S01).
[0064] Next, the contribution value estimating unit 101 of the distributed learning device 100 performs a contribution value estimation process (S02).
[0065] The contribution value estimation process will be described in detail later with reference to FIG.
[0066] Next, the learning data correction unit 102 of the distributed learning device 100 performs a learning data correction process based on the contribution value estimation vector obtained in S02 (S03).
[0067] The contribution value estimation vector will be described in detail later.
[0068] In the learning data correction process, if an element corresponding to the data of the contribution value estimation vector is a negative value (valid for learning), it is stored in the corrected learning data 204 as not requiring correction, and if an element corresponding to the data of the contribution value estimation vector is a positive value or 0 (determined to be undesirable for learning), it is not stored in the corrected learning data 204.
[0069] As a result, only the learning data that is effective for learning is reflected in the corrected learning data 204, and data that is determined to be undesirable for learning is not reflected in the corrected learning data 204.
[0070] Next, the learning unit 104 of the distributed learning device 100 performs re-learning based on the corrected learning data 204 (S04).
[0071] Next, inference unit 105 of distributed learning device 100 inputs inferred data 205 (problem data to be solved) and performs inference processing (S05), and display unit 121 outputs the results.
[0072] In this embodiment, the inferred data 205 is an external image of equipment to be judged, and the inference result data 206 displays an answer as to whether or not the equipment related to the external image of the equipment has a defect.
[0073] Next, the contribution value estimation process will be described with reference to FIG. This process corresponds to S02 in FIG.
[0074] In the contribution value estimation process of this embodiment, the contribution value estimation unit 101 calculates a contribution value estimation vector, which is a vector consisting of the contribution values of the data to be evaluated for all learning data included in the learning data of an arbitrary s-th computer in the distributed learning system.
[0075] First, the contribution value estimation unit 101 acquires the machine learning model structure information and learned parameters of the model information data 200, the training data 203, the validation data 202, and the transmission and reception weight vectors from the transmission and reception weight vector data 201 (S101).
[0076] Next, the contribution value estimation unit 101 calculates the verification loss gradient c s Calculate (S102).
[0077]
number
[0078] Here, ∇ is f s , x s This is an operator that partially differentiates (finds the gradient) with respect to each element of .
[0079] Next, the contribution value estimation unit 101 calculates w s (0) is set (S103).
[0080]
number
[0081] Next, the contribution value estimation unit 101 sets the calculation step index t to 0 for initialization (S104).
[0082] Next, the contribution value estimation unit 101 calculates the contribution value from the kth computer to the wth computer by changing the value of k so as to cover the numbers of all other computers that can communicate with the kth computer. k (t) All computers that receive the value of and can communicate with s (t) The value of is transmitted (S105).
[0083] For example, taking the graph of the distributed learning system in Figure 6 as an example, when node (n2) is the s-th computer, the way in which the computer at node (n2) receives data from other computers is shown in Figure 7A, and the value that the computer at node (n2) sends to other computers is shown in Figure 7B.
[0084] Next, according to the following (Equation 10), w s (t+1) (S106). Note that N s is a set whose elements are the numbers of all the computers with which the sth computer can communicate and its own number s.
[0085] In addition, the ∇ that appears in the second Σ term in (Equation 10) 2 f s x s This is the so-called Hessian matrix, which is the second-order partial derivative of each element of
[0086]
number
[0087] Here, p ks is the transmission / reception weight used by the sth computer when transmitting / receiving to the kth computer as shown in (Equation 3), and α is a positive constant.
[0088] Next, the contribution value estimation unit 101 determines whether the calculation step index t is equal to a predetermined calculation step threshold T (S107). If the calculation step index t is equal to the predetermined calculation step threshold T (S107: YES), or if the calculation step index t is smaller than the calculation step threshold T (S107: NO), the contribution value estimation unit 101 increments the calculation step index t (adds 1) (S108) and returns to S105.
[0089] The calculation step threshold T is set to an appropriate value, taking into consideration the trade-off between the estimation accuracy of the contribution value and the calculation cost. For example, a system administrator may adopt a sufficiently large value based on the experience of operating the system, or the calculation step threshold T may be obtained by a learning system. In addition, the judgment in S107 is performed based on w s (t+1) And w s (t)The criterion may be such that the loop is terminated when the amount of change in becomes smaller than a predetermined threshold.
[0090] Next, the contribution value estimation unit 101 calculates l′ from l′=1 to l′=m according to the following (Equation 11). s (for all the training data of the sth computer), the approximate contribution value is the contribution value estimate ΔF′ s,l′ (S109) The contribution value estimate ΔF′ is calculated. s,l′ is the contribution value ΔF explained in (Equation 7) s,l′ is a value that approximates
[0091]
number
[0092] This results in the contribution value estimation vector ΔF s is a vector whose elements are the contribution value estimates of each data, as shown in the following (Equation 12).
[0093]
number
[0094] By the above process, any s-th computer in the distributed learning system can calculate a contribution value estimation vector.
[0095] Next, the reason why the contribution value can be approximated by the above processing will be explained.
[0096] The solution to (Equation 1) can also be obtained by minimizing the following loss function L with respect to x:
[0097]
number
[0098] where x is the number from x1 to x nis a vertically arranged combined vector, and is the Euclidean norm of ||x||. The solution to (Equation 1) can also be obtained by minimizing the loss function L with respect to x. This means that if we find x that minimizes L(x) defined by vector x, we can obtain the solution x defined by (Equation 1) s * This means that the vectors obtained by arranging and combining the above in the order of s = 1, ..., n are the same. The reason why they are the same is based on equation (8) in Non-Patent Document 3 (Page 8).
[0099] Using this loss function, the approximation calculation method described in Chapter 3 "Stochastic estimation" of Non-Patent Document 1 is used, and an arbitrary s-th computer calculates the x s Here, the intermediate value vector of the approximation calculation method is H~ j -1 v. Also, the intermediate value vector x s The corresponding elements are the intermediate vector H~ j -1 In v, in the joint vector x, the model parameter x in the sth computer s is an element corresponding to the element occupied by
[0100] Based on the above, a description will be given of the relationship between the processing of this embodiment and Non-Patent Document 1. The equations in Non-Patent Document 1 will be shown, and the corresponding explanations will be given below in curly brackets.
[0101] The correspondence on the right side of equation (1) in Non-Patent Document 1 is as follows:
[0102]
number
[0103] Moreover, the correspondence in the third equation of (2) in Non-Patent Document 1 is as follows:
[0104]
number
[0105] The method for obtaining an approximate value of Stest described in Chapter 3 "Stochastic estimation" of Non-Patent Document 1 corresponds to each item in the description of the embodiment as follows. s Focusing on the block components of the vectors for , they correspond to the formulas of the embodiment described on the right side of each line below.
[0106]
number
[0107] Below, the correspondence of (Equation 10) will be explained in detail by further writing down the second-order differential of L(x).
[0108] First, the first derivative of L(x) is as follows:
[0109]
number
[0110] Each block vector is as follows. In this formula, the matrix of transmission and reception weights (p is ) symmetry p is =p si was used.
[0111]
number
[0112] ∇ x The second derivative of L(x) obtained by further differentiating L(x) is as follows.
[0113]
number
[0114] Each of these block matrices can be expressed as follows:
[0115]
number
[0116] where I is the identity matrix.
[0117] Using this to match the recurrence formula described in Non-Patent Document 1 with (Formula 10), we get the following:
[0118]
number
[0119] Next, in the distributed system of this embodiment, w s (t) The mathematical meaning of passing the values will be explained in comparison with the technology described in Non-Patent Document 1.
[0120] The intermediate value of the embodiment is w s (t) In Non-Patent Document 1, test This corresponds to the variable described above, which can be said to be an approximation of the value obtained by multiplying the second-order differential matrix of the loss by the gradient vector of the validation data. In addition, in the distributed system of this embodiment, each w s (t) f included in (Eq. 10) to update s The calculation of the second derivative of can be performed only by the sth computer. On the other hand, each computer s can calculate w s (t) To update, we use the kth computer to k (t) is received via communication.
[0121] Next, the last w of the recurrence formula calculated by (Eq. 10) k (T)The reason why it is appropriate to calculate the contribution value by (Equation 11) based on the calculated contribution value will be explained below.
[0122] The reason is that s test This is because when the value obtained by multiplying the second-order differential matrix of the loss and the gradient vector of the training data is accurately expressed, the approximate contribution value can be considered to be a linear approximation of the contribution value. Below, we will explain based on specific formulas.
[0123] First, consider the following function:
[0124]
number
[0125] When ε=0, the solution that minimizes this function coincides with (Equation 2). When ε=-1, the solution that minimizes this function coincides with (Equation 6). According to Non-Patent Document 1, when ε=-1, the linear approximation around ε=0 of the solution that minimizes this function is as follows:
[0126]
number
[0127] This and the gradient of the validation loss for which we want to calculate the contribution (c1… c n ) (linear approximation) gives the approximate contribution value.
[0128] As described above, since the calculation of the approximate contribution value in this embodiment is equivalent to the approximate calculation method described in Chapter 3, “Stochastic estimation,” of Non-Patent Document 1, the contribution value can be approximated by the processing of this embodiment.
[0129] According to the configuration of the distributed learning device of this embodiment as described above, in distributed learning that does not use a central server, it becomes possible for any computer to know whether or not excluding its own learning data will have a positive or negative impact on the total performance of the machine learning models of all computers.
[0130] The training data correction unit 102 may determine whether or not the training data needs to be corrected, such that if the contribution value estimate is equal to or greater than a criterion value previously determined by a user, correction is necessary, and if it is less than the criterion value, correction is not necessary. At this time, the criterion value is set to be sufficiently close to 0 compared with the average loss value of the validation data.
[0131] For example, the contribution value estimate>criterion value>0.
[0132] In other words, when the contribution value estimate is positive, it can be interpreted as bad training data (data that will improve the training results if it is removed), but if you want to remove only data that is very bad, you can set a judgment criteria value of 0 or more as shown above.
[0133] Furthermore, even if the number of samples in the validation data group is small and there is an error in estimating the change that excluding training data will have on the performance of the population, a criterion value of 0 or more can be set as above. This is because the larger the number of samples in the validation data group, the closer the contribution value estimate is to the contribution value (true contribution value) of the training data to the performance of the population (test data). Therefore, if the number of samples in the validation data group is small, there is a possibility that a large error will occur between the true contribution value and the contribution value estimate calculated using the validation data group. This means that a criterion value of 0 or more can be set as above in order to exclude only data that has such a large adverse effect that these errors can be ignored (contribution value takes a large positive value).
[0134] In the above explanation, the contribution value estimation unit 101 has been described as an arbitrary s-th computer calculating a contribution value for all of its own learning data, but it may also calculate a contribution value for partial learning data that is a part of the learning data instead of all of the learning data. In this case, the contribution value estimation unit 101 acquires the partial learning data that the user has targeted for correction in advance, and in step S109 of the contribution value estimation unit 101, it calculates a contribution value estimation vector for index l'' corresponding to the partial learning data, and the learning data correction unit 101 stores only the partial learning data whose corresponding contribution value estimation value is negative, in the corrected learning data 204, based on the calculated contribution value vector.
[0135] In addition, the images input to the machine learning model are not limited to the example of the equipment exterior image, but may also be images of the exterior of an industrial product or photographs of a document, and the information input to the machine learning model may be table data or time-series information.
[0136] Furthermore, the machine learning model may not be trained to output the presence or absence of defects in the example equipment appearance image, but may be a model used to learn to classify the input equipment appearance image into three or more classes, or may be trained to output position information and class number of objects in the equipment appearance image.
[0137] Furthermore, learning data that is considered to be incorrect learning data is not limited to learning data in which label information indicating the presence of a defect is attached to an image of the exterior of equipment that does not contain a defect, but may also be learning data that is unsuitable for training a machine learning model, such as data in which the exterior of the equipment is not included in the image, the exterior of the equipment is not photographed correctly due to improper focus or blurring, or the image of the exterior of the equipment is a frame of a video in which the video frame contains video compression noise.
[0138] Next, a user interface for correcting the label of the equipment appearance data for the evaluation target will be described with reference to FIG.
[0139] The facility appearance data label correction screen 400 is a screen that presents information including the facility appearance data of the evaluation target data and the contribution value estimate value to the user, and allows the user to correct the label of the facility appearance data.
[0140] When a label is updated from the facility appearance data label correction screen 400, the learning data correction unit 102 changes the label of the corresponding learning data based on the updated, changed label, and stores the learning data with the changed label in the corrected learning data 204.
[0141] As shown in FIG. 8, the facility appearance data label correction screen 400 comprises a facility appearance data display area 410, an evaluation target data information display area 420, a pre-change label information input area 430, a post-change label information display area 440, and a command input area 450.
[0142] In the facility appearance data display area 410, an image of the evaluation target data is displayed.
[0143] The evaluation target data information display area 420 displays information analyzed by the distributed learning device 100 regarding the evaluation target data. For example, a contribution value estimate 421 and an evaluation target data impact evaluation value 422 are displayed. The display of "harmful" in FIG. 8 (when the contribution value estimate is positive) indicates that adding the evaluation target data is undesirable, i.e., it is evaluated that it is preferable to remove it. Conversely, the display of "helpful" (when the contribution value estimate is 0 or negative) indicates that adding the evaluation target data is preferable, i.e., it is not necessary to remove it.
[0144] The pre-display label information display area 430 is an area that displays the label related to the current equipment image data. The post-display label information input area 440 is an area for inputting a selection when the user wants to change the label related to the current equipment image data.
[0145] The command input area 450 is an area that displays user command buttons and allows the user to select one. A register button 451 and a close button 452 are displayed in the command input area 450. When the user wishes to update the label related to the current equipment image data, the user changes the selection of the check button in the post-change label information input area 440 and then presses the register button 451 with a pointing device such as a mouse.
[0146] Using the facility appearance data label correction screen 400, the user can easily correct the label for the data to be evaluated by referring to the contribution value estimate obtained by the distributed learning device 100 and the contents of the target learning data. [Explanation of symbols]
[0147] 5...network, 100...distributed learning device, 101...contribution value estimation unit, 102...learning data correction unit, 104...learning unit, 105...inference unit, 110...transmission unit, 111...reception unit, 120...input unit, 121...display unit, 150...storage unit, 200...model information data, 201...transmission and reception weight vector data, 202...verification data, 203...learning data, 204...corrected learning data, 205...inferred data, 206...inference result data
Claims
1. A distributed learning system in which one or more distributed learning devices are connected to a network so as to be able to communicate with each other, The distributed learning device includes: The training data, The validation data, and retaining learning model information regarding learning; The learning model information includes machine learning model structure information and model parameters, the learned parameters are model parameters that minimize a sum of a loss function having model parameters and learning data of the distributed learning system over a distributed learning device of the distributed learning system, the verification data includes one or more pieces of evaluation target data that are not included in the learning data held by each of the distributed learning devices; the distributed learning device receives a delivery value based on a sum of losses of the verification data in each of the distributed learning devices from the distributed learning device itself and other distributed learning devices connected to the distributed learning device; A distributed learning system comprising: a learning unit that estimates a contribution value in learning for the evaluation target data based on the gradient of a loss function having the trained parameters and the evaluation target data as arguments, and the delivery value.
2. The delivery value is calculated in a number of steps, The delivery value at a step is a sum of weighted values of the delivery value of the distributed learning device in the immediately preceding step and the delivery values received from the distributed learning device itself and other distributed learning devices in the immediately preceding step; a sum of a matrix of second-order derivatives of a loss function having the trained parameters and the training data of the distributed training device as arguments, and a delivery value of the distributed training device in the immediately preceding step, over all training data; 2. The distributed learning system according to claim 1, wherein the learning parameter is calculated based on the trained parameter and a sum of gradients of a loss function of validation data of the distributed learning device over all validation data.
3. 2. The distributed learning system according to claim 1, wherein the learning data is corrected based on an estimated contribution value for the evaluation target data.
4. 2. The distributed learning system according to claim 1, further comprising an input means for displaying an estimated contribution value for said evaluation target data and for correcting said learning data.
5. A method for evaluating learning data in a distributed learning system in which one or more distributed learning devices are connected via a network so as to be able to communicate with each other, comprising the steps of: The distributed learning device includes: The training data, The validation data, and retaining learning model information regarding learning; The learning model information includes machine learning model structure information and model parameters, the learned parameters are model parameters that minimize a sum of a loss function having model parameters and learning data of the distributed learning system over a distributed learning device of the distributed learning system, the verification data includes one or more pieces of evaluation target data that are not included in the learning data held by each of the distributed learning devices; the distributed learning device receiving a transfer value from other distributed learning devices connected to the distributed learning device, the transfer value being based on a sum of losses of validation data in each of the distributed learning devices; The method for evaluating learning data, characterized in that the distributed learning device includes a step of estimating a contribution value in learning for the evaluation target data using the learned parameters and the gradient of a loss function having the evaluation target data as arguments, and the delivery value.
6. The delivery value is calculated in a number of steps, The delivery value at a step is a sum of weighted values of the delivery value of the variance learning device in the immediately preceding step and the delivery value received from another variance learning device in the immediately preceding step; a sum of a matrix of second-order derivatives of a loss function having the trained parameters and the training data of the distributed training device as arguments, and a delivery value of the distributed training device in the immediately preceding step, over all training data; 6. The method for evaluating training data according to claim 5, wherein the calculation is based on the trained parameters and a sum of gradients of a loss function of the validation data of the distributed learning device over all validation data.
Citation Information
Patent Citations
Machine learning system and machine learning method
JP2021149842A