WO2022003824A1 - 学習装置、学習方法および記録媒体 - Google Patents
学習装置、学習方法および記録媒体 Download PDFInfo
- Publication number
- WO2022003824A1 WO2022003824A1 PCT/JP2020/025663 JP2020025663W WO2022003824A1 WO 2022003824 A1 WO2022003824 A1 WO 2022003824A1 JP 2020025663 W JP2020025663 W JP 2020025663W WO 2022003824 A1 WO2022003824 A1 WO 2022003824A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- neural network
- prediction probability
- incorrect answer
- answer class
- network model
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/094—Adversarial learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0499—Feedforward networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
Definitions
- the present invention relates to a learning device, a learning method and a recording medium.
- Non-Patent Document 1 As a countermeasure against the hostile sample (Adversarial Example), in the technique described in Non-Patent Document 1, in order to prevent multiple models from being similarly deceived, learning is made so that multiple models can easily output various classification results. I do.
- the amount of calculation is small when training is performed so that a plurality of models can easily output various classification results.
- the order of the computational complexity of the function used to obtain the output diversity of the model (neural network) is O (Lm 2 + m 3 ). It is preferable to be able to calculate the functions used to obtain the output diversity of the model in orders smaller than this order.
- An example of an object of the present invention is to provide a learning device, a learning method, and a recording medium capable of solving the above problems.
- the learning device includes an incorrect answer prediction calculation unit that obtains an incorrect answer class prediction probability vector excluding the elements of the correct answer class from the prediction probability vector of the neural network model for the supervised learning data.
- the update unit that learns the neural network model so that the value of the objective function including the diversity function whose value becomes smaller as the angle formed by the incorrect answer class prediction probability vectors of the two neural network models becomes smaller. And, including.
- the learning method is to obtain an incorrect answer class prediction probability vector excluding the elements of the correct answer class from the prediction probability vector of the neural network model for the supervised training data, and the two neural networks. It includes learning the neural network model so that the value of the objective function including the diversity function whose value becomes smaller as the angle formed by the incorrect answer class prediction probability vector of the network model becomes smaller.
- the recording medium obtains the incorrect answer class prediction probability vector excluding the elements of the correct answer class from the prediction probability vector of the neural network model for the supervised training data from the computer, and 2
- the training of the neural network model is performed so that the value of the objective function including the diversity function whose value becomes smaller as the angle formed by the incorrect answer class prediction probability vector of the two neural network models becomes smaller.
- It is a recording medium for recording a program for executing.
- the amount of calculation required for learning so that a plurality of models can easily output various classification results can be relatively small.
- FIG. 1 is a schematic block diagram showing an example of the configuration of the learning device according to the embodiment.
- the learning device 10 includes an input / output unit 11, a prediction unit 12, a multiple prediction loss calculation unit 13, a diversity calculation device 100, an objective function calculation unit 14, and an update unit 15.
- the learning device 10 learns the neural network models f 1 , ..., F n .
- n is a positive integer indicating the number of neural network models to be learned by the learning device 10.
- the combination of the neural network models f 1 , ..., F n is also referred to as a neural network model set.
- the learning device 10 trains the neural network model so that the output as the neural network model set has diversity. As a result, it is expected that the neural network model set will be constructed robustly against the hostile sample (Adversarial Example).
- the hostile sample referred to here is a sample (data to be classified into a class) to which a minute noise that cannot be recognized by humans is added.
- a hostile sample image the processing is unnoticed or difficult to notice with the naked eye.
- robustness here means that it is difficult to make a mistake with respect to a hostile sample, that is, it is difficult to classify a normal sample, which is the original sample of the hostile sample, into a class other than the correct answer class.
- the output of the neural network model is decided by majority. By doing so, you can get the correct answer.
- the possibility that the neural network models f 1 , ..., F n are uniformly deceived can be reduced.
- the input data may be a hostile sample even if the correct answer class cannot be specified. can.
- the input / output unit 11 inputs / outputs data to / from the outside of the learning device 10.
- the input / output unit 11 includes neural network models f 1 , ..., f n , initial values of parameters ⁇ 1 , ..., ⁇ n of each neural network model, training data X, correct answer label Y, and hyperparameters. Accepts inputs with ⁇ and ⁇ values.
- Neural network model f i (i is an integer of 1 ⁇ i ⁇ n) may have include a plurality of parameters, the parameter theta i may be configured as a vector of a plurality of parameters. Further, the configuration and the number of parameters may be different for each of the neural network models f 1 , ..., And f n , and the number of elements may be different for each of the parameters ⁇ 1 , ..., ⁇ n.
- the input / output unit 11 outputs the values of the parameters ⁇ 1 , ..., ⁇ n that have been updated by learning. Learning updated parameter ⁇ 1 by, ..., the value of ⁇ n, the parameter value ⁇ '1, ..., ⁇ ' also referred to as n.
- the learning apparatus 10 the parameter values ⁇ '1, ..., ⁇ ' in addition to the output of n, or alternatively, a neural network model f 1, ..., and f n, the parameter values ⁇ '1, ..., ⁇ ' It may function as a classifier by using n and may receive data input and output a classification result.
- the input / output unit 11 may have a communication function such as being configured to include a communication device, and may transmit / receive data to / from another device.
- the input / output unit 11 may be configured to include an input device such as a keyboard and a mouse, and may receive data input by a user operation in addition to or instead of receiving data.
- the input / output unit 11 may be configured to include a display screen such as a liquid crystal panel or an LED (Light Emitting Diode) panel, and may display data in addition to or instead of transmitting data.
- the prediction unit 12 is based on the neural network models f 1 , ..., f n and the training data X, and the prediction probability vectors f 1 (X, ⁇ 1 ), ..., f n (X, ⁇ n ) of each neural network model. Is calculated and output.
- the prediction probability vector referred to here is the output of the neural network model, and indicates the prediction probability of each class. That is, the neural network model f i (i is an integer from 1 ⁇ i ⁇ n) on the input data, for each class, classification target to be linked to the data and outputs the probability of belonging to that class.
- Prediction unit 12 calculates the output of the neural network model f i for the input training data X under parameter theta i, outputs as a prediction probability vector f i (X, ⁇ i) .
- the multiple prediction loss calculation unit 13 of the neural network model f 1 , ..., f n based on the prediction probability vectors f 1 (X, ⁇ 1 ), ..., f n (X, ⁇ n ) and the correct label Y.
- An index value indicating the magnitude of the error between the prediction result and the correct label is calculated and output.
- the function for calculating the index value indicating the magnitude of the error between the prediction result of the neural network model f 1 , ..., f n and the correct answer label is called the multiple prediction loss function ECE.
- the value of the multiple prediction loss function ECE is referred to as multiple prediction loss.
- the predicted loss of f i and l i, multiprediction loss function ECE may be the average value of l i.
- Cross entropy may be used for l i.
- the multiple prediction loss calculation unit 13 calculates the multiple prediction loss using the multiple prediction loss function ECE represented by the equation (1).
- “1 Y” indicates a one-hot vector in which the Y-th element is 1 and the other elements are 0.
- -Log (1 Y f i (X , ⁇ i)) indicates the predicted loss by cross entropy in the neural network model f i, represented as -log (p i (Y)) .
- p i (Y) is the predicted probability of the neural network model f i outputs the true label Y (correct class).
- the multiple prediction loss function ECE is not limited to that shown in the equation (1).
- Various functions whose error becomes smaller as the output of the neural network model gets closer to the correct answer can be used as the multiple prediction loss function ECE.
- the learning device 10 learns the neural network models f 1 , ..., F n so that the value of the multiple prediction loss function ECE becomes small, so that the accuracy of the classification by the neural network models f 1 , ..., f n can be improved. It gets higher.
- the diversity calculation device 100 is a neural network model f 1 , ..., f n based on the prediction probability vectors f 1 (X, ⁇ 1 ), ..., f n (X, ⁇ n ) and the correct label Y. Calculate the index value of output diversity.
- the function for calculating the index value of the diversity of the outputs of the neural network models f 1 , ..., F n is called the diversity function ED.
- the diversity function ED a function whose value decreases as the output diversity of the neural network models f 1 , ..., F n increases is used. That is, the larger the variation of the prediction probability vectors f 1 (X, ⁇ 1 ), ..., F n (X, ⁇ n ) for the same training data X, the smaller the value of the diversity function ED.
- the diversity calculation device 100 may be configured as a part of the learning device 10. Alternatively, the diversity calculation device 100 may be configured as a device different from the learning device 10.
- the objective function calculation unit 14 calculates the value of the objective function based on the value of the multiple prediction loss function ECE calculated by the multiple prediction loss calculation unit 13, the ED output from the diversity calculation device 100, and the values of the hyperparameters ⁇ and ⁇ . calculate.
- the update unit 15 learns the neural network models f 1 , ..., F n. Specifically, the update unit 15 reduces the difference between the output of the neural network and the correct label based on the value of the objective function calculated by the objective function calculation unit 14, and the similarity between the neural network models is reduced. The values of the parameters ⁇ 1 , ..., ⁇ n of the neural network model are updated so as to be smaller.
- the updater 15 calculates the values of the parameters ⁇ 1 , ..., ⁇ n that reduce the value of the objective function based on the gradient method, using the differential coefficients of each parameter of the neural network of the objective function. May be good.
- the learning method used by the update unit 15 is not limited to a specific method. As a method for the updating unit 15 to learn the neural network models f 1 , ..., F n , various methods for reducing the value of the objective function can be used.
- FIG. 2 is a schematic block diagram showing an example of the configuration of the diversity calculation device 100.
- the diversity calculation device 100 includes an incorrect answer prediction calculation unit 101, a normalization unit 102, and an angle calculation unit 103.
- the diversity calculation device 100 receives the prediction probability vectors f 1 (X, ⁇ 1 ), ..., f n (X, ⁇ n ) and the correct answer label Y as inputs from the prediction unit 12.
- a number from 1 to n is associated with the class, and this number is used to refer to class 1, ..., Class n.
- the prediction probabilities of class 1 to the prediction probabilities of class n are arranged in order as vector elements. It shall be.
- Y indicates the number of the correct class.
- the method of class identification, the method of presenting the correct answer class, and the configuration of the prediction probability vector are not limited to specific ones.
- the f i (X, ⁇ i) the elements corresponding to the correct answer label, that is, the Y-th incorrect class prediction probability elements except the vector f 1 Y (X, ⁇ 1 ), ... , F n Y (X, ⁇ n ) is calculated and output.
- the normalization unit 102 normalizes and outputs the incorrect answer class prediction probability vector f 1 Y (X, ⁇ 1 ), ..., F n Y (X, ⁇ n ).
- the diversity calculator 100 determines the value of the diversity function ED (indicator value of diversity) based on the incorrect answer class prediction probability vector f 1 Y (X, ⁇ 1 ), ..., f n Y (X, ⁇ n). This is to exclude the influence of the magnitude of the vector when calculating.
- the normalization unit 102 may perform L2 normalization, but the present invention is not limited to this.
- the diversity calculation device 100 may not include the normalization unit 102. That is, the normalization of the incorrect answer class prediction probability vectors f 1 Y (X, ⁇ 1 ), ..., F n Y (X, ⁇ n ) by the normalization unit 102 is not essential.
- the normalization unit 102 L2 normalizes the incorrect answer class prediction probability vectors f 1 Y (X, ⁇ 1 ), ..., F n Y (X, ⁇ n )
- the calculation is performed as in Eq. (2).
- the angle calculation unit 103 calculates and outputs the value of the diversity function ED.
- the function represented by the equation (3) can be used as the diversity function ED.
- the " ⁇ " in the equation (3) indicates the inner product of the vectors.
- the angle calculation unit 103 determines the cosine similarity of the incorrect answer class prediction probability vectors for all combinations of the two incorrect answer class prediction probability vectors in the neural network models f 1 , ..., F n. Is calculated as an index value of diversity.
- the angle calculation unit 103 may calculate the average of the inner products instead of the sum of the inner products of the normalized incorrect answer class prediction probability vectors as in the equation (4).
- Incorrect class prediction probability vector f i Y (X, ⁇ i ) and f j Y (X, ⁇ j ) may use a function whose value decreases as the angle between them increases.
- the evaluation value of the magnitude of the angle formed by the incorrect answer class prediction probability vector is calculated only for a partial combination of two neural network models out of all the neural network models to be trained. You may use the included function.
- the angle calculation unit 103 includes an evaluation value of the magnitude of the angle formed by the incorrect answer class prediction probability vector of the neural network model adjacent to each other by the identification number. The value of ED may be calculated.
- the calculation of the evaluation value of the magnitude of the angle used for the diversity function ED is not limited to the cosine similarity, and can be various functions whose value becomes smaller as the angle is larger.
- FIG. 3 is a flowchart showing an example of the processing performed by the learning device 10.
- the input / output unit 11 acquires the values of n neural network models f 1 , ..., f n , parameters ⁇ 1 , ..., ⁇ n , training data X, correct label Y, hyperparameters ⁇ and ⁇ . (Step S10).
- the prediction unit 12 calculates the prediction probability vectors f 1 (X, ⁇ 1 ), ..., F n (X, ⁇ n ) of each neural network model (step S20).
- the multiple prediction loss calculation unit 13 calculates the error between the prediction probability vectors f 1 (X, ⁇ 1 ), ..., F n (X, ⁇ n ) and the correct answer, and calculates the average value between the models. Therefore, the value of the multiple prediction loss function ECE is calculated (step S31).
- the diversity calculation device 100 determines the incorrect answer class prediction probability vector f 1 Y based on the prediction probability vector f 1 (X, ⁇ 1 ), ..., f n (X, ⁇ n) and the correct answer label Y. (X, ⁇ 1 ), ..., f n Y (X, ⁇ n ) are calculated, and the score based on the angle formed by these vectors is calculated as a numerical value of diversity (diversity function ED) (step S32).
- the objective function calculation unit 14 calculates the objective function loss based on the multiple prediction loss function ECE, the diversity function ED, and the values of the hyperparameters ⁇ and ⁇ (step S4).
- the update unit 15 updates the network parameters ⁇ 1 , ..., ⁇ n according to the value of the differential coefficient when the objective function loss is differentiated by the network parameters ⁇ 1 , ..., ⁇ n (step S5). That is, the updating unit 15, network parameters theta after update '1, ..., ⁇ ' calculates the n.
- the learning device 10 ends the process of FIG.
- the learning device 10 repeats the process of FIG.
- the learning device 10 may repeat the process of FIG. 3 a predetermined number of times.
- the learning device 10 may repeat until the magnitude of the decrease rate of the objective function converges to a predetermined magnitude or less.
- the incorrect answer prediction calculation unit 101 removes the elements of the correct answer class from the prediction probability vectors of the neural network models f 1 , ..., F n for the training data X, and the incorrect answer class prediction probability vector f 1 Y (X). , ⁇ 1 ), ..., f n Y (X, ⁇ n ). Updating unit 15, the value of the objective function loss comprising two diversity function ED that as the value is greater angle decreases the incorrect class prediction probability vector of the neural network model to smaller, the neural network model f 1 , ..., learn f n.
- Updating unit 15 so as to reduce the value of the objective function loss, neural network model f 1, ..., by performing learning of f n, it decreases the value of the loss function included in the objective function loss, neural network model It is expected that the classification accuracy by f 1 , ..., F n will be high.
- the updating unit 15 so as to reduce the value of the objective function loss, neural network model f 1, ..., by performing learning of f n, decreases the value of the diversity function included in the objective function loss, It is expected that the output of the neural network models f 1 , ..., F n (the output of the neural network set) will be diverse. By diversifying the outputs of the neural network models f 1 , ..., F n , it is expected to be robust against hostile samples.
- the update unit 15 uses a function based on the evaluation value of the angle formed by the incorrect answer class prediction probability vector between the two neural network models as the diversity function, so that the amount of calculation in learning is relatively small. Is expected.
- the number of neural network models is m
- the number of output vector classes is L
- the function used to obtain the output diversity of the neural network model is described.
- the amount of calculation is on the order of O (Lm 2 + m 3 ), whereas according to the learning device 10, O (Lm 2 ) is sufficient.
- the diversity function is an evaluation value of the magnitude of the angle formed by the class prediction probability vector for all combinations of two neural network models out of all the neural network models f 1 , ..., F n to be trained. Including operations.
- the learning device 10 can evaluate the diversity of the output of the neural network model with higher accuracy, and it is expected that the diversity of the output of the neural network model can be easily obtained.
- the diversity function includes an operation of the cosine similarity of the two incorrect answer class prediction probability vectors as an evaluation value of the magnitude of the angle formed by the two incorrect answer class prediction probability vectors.
- the diversity function also calculates the average of the cosine similarity of the incorrect class prediction probability vectors of the two neural network models for all combinations of the two neural network models of all the neural network models to be trained. Includes operations to be performed. In this way, the learning device 10 obtains the average of the cosine similarity in the calculation of the diversity function, so that the value magnitude of the diversity function can be prevented from increasing or decreasing according to the number of neural network models, and the objective function can be prevented. It is possible to avoid changing the degree of influence of the diversity function in.
- FIG. 5 is a schematic block diagram showing another example of the configuration of the learning device according to the embodiment.
- the learning device 500 includes an incorrect answer prediction calculation unit, 501, and an update unit 502.
- the incorrect answer prediction calculation unit 501 obtains an incorrect answer class prediction probability vector excluding the elements of the correct answer class from the prediction probability vector of the neural network model for the supervised learning data.
- the update unit 502 learns the neural network model so that the value of the objective function including the diversity function whose value becomes smaller as the angle formed by the incorrect answer class prediction probability vectors of the two neural network models becomes smaller. conduct.
- the value of the diversity function included in the objective function becomes small, and the output diversity of the neural network model can be obtained. Is expected. Diversified output of neural network models is expected to be robust against hostile samples.
- the update unit 502 uses a function based on the evaluation value of the angle formed by the incorrect answer class prediction probability vector between the two neural network models as the diversity function, so that the amount of calculation in learning is relatively small. Is expected.
- the number of neural network models is m
- the number of output vector classes is L
- the function used to obtain the output diversity of the neural network model is described.
- the amount of calculation is on the order of O (Lm 2 + m 3 ), whereas according to the learning device 500, O (Lm 2 ) is sufficient.
- FIG. 6 is a flowchart showing an example of the processing procedure in the learning method according to the embodiment.
- the incorrect answer class prediction probability vector excluding the elements of the correct answer class from the prediction probability vector of the neural network model for the supervised learning data is obtained (step S501).
- the neural network model is trained so that the value of the objective function including the diversity function whose value becomes smaller as the angle formed by the incorrect answer class prediction probability vector of the two neural network models becomes smaller. (Step S502).
- the amount of calculation in learning can be relatively small in that a function based on the evaluation value of the angle formed by the incorrect answer class prediction probability vector is used as the diversity function between the two neural network models.
- the number of neural network models is m
- the number of output vector classes is L
- the function used to obtain the output diversity of the neural network model is described. While the amount of calculation is on the order of O (Lm 2 + m 3 ), according to the process shown in FIG. 6, O (Lm 2 ) is sufficient.
- FIG. 7 is a diagram showing an example of the configuration of the information processing apparatus 300 according to at least one embodiment.
- the information processing apparatus 300 includes a CPU (Central Processing Unit) 301, a ROM (Read Only Memory) 302, a RAM (Random Access Memory) 303, and a program group 304 loaded in the RAM 303.
- a storage device 305 for storing a program group 304, a drive device 306 for reading and writing a recording medium 310 outside the information processing device 300, a communication interface 307 for connecting to a communication network 311 outside the information processing device 300, and data input / output. Includes an input / output interface 308 that performs the above, and a path 309 that connects each component.
- a part or all of the learning device 10 described above, or a part or all of the learning device 500 may be realized by, for example, the information processing device 300 as shown in FIG. 7 executing a program.
- it can be realized by the CPU 301 acquiring and executing the program group 304 that realizes the functions of the above-mentioned processing units.
- the program group 304 that realizes the functions of each part of the learning device 10 or the learning device 500 is stored in, for example, a storage device 305 or a ROM 302 in advance, and the CPU 301 loads the learning device 30 into the RAM 303 and executes the program as needed.
- the program group 304 may be supplied to the CPU 301 via the communication network 311 or may be stored in the recording medium 310 in advance, and the drive device 306 may read the program and supply the program to the CPU 301.
- FIG. 7 shows an example of the configuration of the information processing apparatus 300, and the configuration of the information processing apparatus 300 is not exemplified in the above-mentioned case.
- the information processing device 300 may be configured from a part of the above-mentioned configuration, such as not having the drive device 306.
- the prediction unit 12 When the learning device 10 is mounted on the information processing device 300, the prediction unit 12, the multiple prediction loss calculation unit 13, the objective function calculation unit 14, the update unit 15, the incorrect answer prediction calculation unit 101, the normalization unit 102, and the angle.
- the operation of the calculation unit 103 is stored in, for example, a storage device 305 or a ROM 302 in the form of a program.
- the CPU 301 reads the program from the storage device 305 or the ROM 302, expands it into the RAM 303, and executes the above processing according to the program.
- the CPU 301 secures a storage area in the RAM 303 according to the program.
- the communication interface 307 executes the communication according to the control of the CPU 301.
- the input / output unit 11 accepts data input such as data input by user operation
- the input / output interface 308 executes acceptance of data input.
- the input / output interface 308 may be configured to include input devices such as a keyboard and a mouse to accept user operations.
- the input / output interface 308 executes the output of the data.
- the input / output interface 308 may be configured to include a display screen such as a liquid crystal panel or an LED panel to display data.
- the operations of the incorrect answer prediction calculation unit 501 and the update unit 502 are stored in, for example, the storage device 305 or the ROM 302 in the form of a program.
- the CPU 301 reads the program from the storage device 305 or the ROM 302, expands it into the RAM 303, and executes the above processing according to the program.
- the CPU 301 secures a storage area in the RAM 303 according to the program.
- the communication interface 307 executes the communication according to the control of the CPU 301.
- the input / output interface 308 executes acceptance of data input.
- the input / output interface 308 may be configured to include input devices such as a keyboard and a mouse to accept user operations.
- the input / output interface 308 executes the output of the data.
- the input / output interface 308 may be configured to include a display screen such as a liquid crystal panel or an LED panel to display data.
- the learning device 10 and the program for executing all or part of the processing performed by the learning device 500 are recorded on a computer-readable recording medium, and the program recorded on the recording medium is recorded on the computer. You may process each part by loading it into the system and executing it.
- the term "computer system” as used herein includes hardware such as an OS and peripheral devices.
- the "computer-readable recording medium” includes a flexible disk, a magneto-optical disk, a portable medium such as a ROM (Read Only Memory) and a CD-ROM (Compact Disc Read Only Memory), and a hard disk built in a computer system. It refers to a storage device such as.
- the above-mentioned program may be for realizing a part of the above-mentioned functions, and may be further realized for realizing the above-mentioned functions in combination with a program already recorded in the computer system.
- the embodiment of the present invention may be applied to a learning device, a learning method, and a recording medium.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
学習装置が、教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求める不正解予測算出部と、2つの前記ニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、前記ニューラルネットワークモデルの学習を行う更新部と、を含む。
Description
本発明は学習装置、学習方法および記録媒体に関する。
敵対的サンプル(Adversarial Example)に対する対策として、非特許文献1に記載の技術では、複数のモデルが同様に騙されることを防ぐために、複数のモデルが多様な分類結果を出力し易くなるように学習を行う。
Tianyu Pang、外4名、"Improving Adversarial Robustness via Promoting Ensemble Diversity"、arXiv:1901.08846、2019年、https://arxiv.org/abs/1901.08846
複数のモデルが多様な分類結果を出力し易くなるように学習を行う際の計算量が少ないことが好ましい。
例えば、上記の非特許文献1では、モデル(ニューラルネットワーク)の出力の多様性を得るために用いる関数の計算量のオーダーが、O(Lm2+m3)となる。このオーダーよりも小さいオーダーで、モデルの出力の多様性を得るために用いる関数の計算を行えることが好ましい。
例えば、上記の非特許文献1では、モデル(ニューラルネットワーク)の出力の多様性を得るために用いる関数の計算量のオーダーが、O(Lm2+m3)となる。このオーダーよりも小さいオーダーで、モデルの出力の多様性を得るために用いる関数の計算を行えることが好ましい。
本発明の目的の一例は、上記の問題を解決することができる学習装置、学習方法および記録媒体を提供することである。
本発明の第1の態様によれば、学習装置は、教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求める不正解予測算出部と、2つの前記ニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、前記ニューラルネットワークモデルの学習を行う更新部と、を含む。
本発明の第2の態様によれば、学習方法は、教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求めることと、2つの前記ニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、前記ニューラルネットワークモデルの学習を行うことと、を含む。
本発明の第3の態様によれば、記録媒体は、コンピュータに、教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求めることと、2つの前記ニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、前記ニューラルネットワークモデルの学習を行うことと、を実行させるためのプログラムを記録する記録媒体である。
上記した学習装置、学習方法および記録媒体によれば、複数のモデルが多様な分類結果を出力し易くなるように学習を行う際の計算量が比較的少なくて済む。
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
<実施形態における構成の説明>
図1は実施形態にかかる学習装置の構成の一例を表す概略ブロック図である。
図1に示す構成で、学習装置10は、入出力部11と、予測部12と多重予測損失算出部13と多様性算出装置100と目的関数算出部14と更新部15とを含む。
図1は実施形態にかかる学習装置の構成の一例を表す概略ブロック図である。
図1に示す構成で、学習装置10は、入出力部11と、予測部12と多重予測損失算出部13と多様性算出装置100と目的関数算出部14と更新部15とを含む。
学習装置10は、ニューラルネットワークモデルf1、…、fnの学習を行う。ここで、nは、学習装置10による学習対象のニューラルネットワークモデルの個数を示す正の整数である。ニューラルネットワークモデルf1、…、fnの組み合わせをニューラルネットワークモデル集合とも称する。
学習装置10は、ニューラルネットワークモデル集合としての出力に多様性を持たせるように、ニューラルネットワークモデルの学習を行う。これにより、ニューラルネットワークモデル集合が、敵対的サンプル(Adversarial Example)に対してロバスト(Robust)に構築されることが期待される。
ここでいう敵対的サンプルは、人間が認識できない程度の微小なノイズが加えられたサンプル(クラス分類対象データ)である。例えば、敵対的サンプル画像の場合、肉眼では加工に気付かないか、あるいは気付くことが困難である。
また、ここでいうロバストは、敵対的サンプルに対して間違いにくいこと、すなわち、敵対的サンプルの元のサンプルである正常サンプルに対する正解クラス以外のクラスへの分類が生じづらいことである。
また、ここでいうロバストは、敵対的サンプルに対して間違いにくいこと、すなわち、敵対的サンプルの元のサンプルである正常サンプルに対する正解クラス以外のクラスへの分類が生じづらいことである。
例えば、学習装置10の学習によるニューラルネットワークモデル集合が分類結果のクラスを複数出力し、それら複数のクラスのうち正解クラスを出力するニューラルネットワークモデルが最も多い場合、ニューラルネットワークモデルの出力の多数決をとることで、正解を得られる。その際、ニューラルネットワークモデル集後の出力が多様になることで、ニューラルネットワークモデルf1、…、fnが一様に騙される可能性を軽減できる。
また、学習装置10の学習によるニューラルネットワークモデル集合が分類結果のクラスを複数出力することで、仮に正解クラスを特定できない場合でも、入力データが敵対的サンプルである可能性があることを示すことができる。
入出力部11は、学習装置10の外部との間でデータの入出力を行う。
例えば、入出力部11は、ニューラルネットワークモデルf1、…、fnと、各ニューラルネットワークモデルのパラメータθ1、…、θnの初期値と、訓練データXと、正解ラベルYと、ハイパーパラメータαおよびβの値との入力を受け付ける。
例えば、入出力部11は、ニューラルネットワークモデルf1、…、fnと、各ニューラルネットワークモデルのパラメータθ1、…、θnの初期値と、訓練データXと、正解ラベルYと、ハイパーパラメータαおよびβの値との入力を受け付ける。
ニューラルネットワークモデルfi(iは、1≦i≦nの整数)が複数のパラメータを含んでいてもよく、パラメータθiが、複数のパラメータのベクトルとして構成されていてもよい。また、ニューラルネットワークモデルf1、…、fnの各々で構成およびパラメータの個数が異なっていてもよく、パラメータθ1、…、θnの各々で要素数が異なっていてもよい。
また、入出力部11は、学習による更新済みのパラメータθ1、…、θnの値を出力する。学習による更新済みのパラメータθ1、…、θnの値を、パラメータ値θ’1、…、θ’nとも表記する。
あるいは、学習装置10が、パラメータ値θ’1、…、θ’nの出力に加えて、あるいは代えて、ニューラルネットワークモデルf1、…、fnと、パラメータ値θ’1、…、θ’nとを用いて分類器として機能し、データの入力を受けてクラス分類結果を出力するようにしてもよい。
あるいは、学習装置10が、パラメータ値θ’1、…、θ’nの出力に加えて、あるいは代えて、ニューラルネットワークモデルf1、…、fnと、パラメータ値θ’1、…、θ’nとを用いて分類器として機能し、データの入力を受けてクラス分類結果を出力するようにしてもよい。
入出力部11がデータの入出力を行う方法は、特定の方法に限定されない。例えば、入出力部11が、通信装置を含んで構成されるなど通信機能を有し、他の装置とデータの送受信を行うようにしてもよい。あるいは、入出力部11が、キーボードおよびマウス等の入力デバイスを含んで構成され、データの受信に加えて、あるいは代えて、ユーザ操作によるデータの入力を受け付けるようにしてもよい。また、入出力部11が、液晶パネルまたはLED(Light Emitting Diode)パネル等の表示画面を含んで構成され、データの送信に加えて、あるいは代えて、データを表示するようにしてもよい。
予測部12はニューラルネットワークモデルf1、…、fnと訓練データXとに基づいて、各ニューラルネットワークモデルの予測確率ベクトルf1(X,θ1)、…、fn(X,θn)を算出し、出力する。
ここでいう予測確率ベクトルは、ニューラルネットワークモデルの出力であり、各クラスの予測確率を示す。すなわち、ニューラルネットワークモデルfi(iは、1≦i≦nの整数)は、データの入力に対して、クラス毎に、そのデータに紐付けられる分類対象がそのクラスに属する確率を出力する。予測部12は、パラメータθiのもとでの訓練データXの入力に対するニューラルネットワークモデルfiの出力を算出し、予測確率ベクトルfi(X,θi)として出力する。
ここでいう予測確率ベクトルは、ニューラルネットワークモデルの出力であり、各クラスの予測確率を示す。すなわち、ニューラルネットワークモデルfi(iは、1≦i≦nの整数)は、データの入力に対して、クラス毎に、そのデータに紐付けられる分類対象がそのクラスに属する確率を出力する。予測部12は、パラメータθiのもとでの訓練データXの入力に対するニューラルネットワークモデルfiの出力を算出し、予測確率ベクトルfi(X,θi)として出力する。
多重予測損失算出部13は、予測確率ベクトルf1(X,θ1)、…、fn(X,θn)と正解ラベルYとに基づいて、ニューラルネットワークモデルf1、…、fnの予測結果と正解ラベルとの誤差の大きさを示す指標値を算出し、出力する。ニューラルネットワークモデルf1、…、fnの予測結果と正解ラベルとの誤差の大きさを示す指標値を計算する関数を、多重予測損失関数ECEと称する。多重予測損失関数ECEの値を多重予測損失と称する。
例えば、fiの予測損失をliとし、多重予測損失関数ECEはliの平均値としてもよい。liには交差エントロピーを用いるようにしてもよい。この場合、多重予測損失算出部13は、式(1)で示される多重予測損失関数ECEを用いて多重予測損失を算出する。
「1Y」は、Y番目の要素が1で他の要素が0であるワンホットベクトル(One-Hot Vector)を示す。「-log(1Yfi(X,θi))」は、ニューラルネットワークモデルfiにおける交差エントロピーによる予測損失を示し、-log(pi(Y))と表される。ここで、pi(Y)は、ニューラルネットワークモデルfiが正解ラベルY(正解のクラス)について出力する予測確率である。
ただし、多重予測損失関数ECEは式(1)に示すものに限定されない。ニューラルネットワークモデルの出力が正解に近いほど誤差が小さくなるいろいろな関数を、多重予測損失関数ECEとして用いることができる。
学習装置10が、多重予測損失関数ECEの値が小さくなるようにニューラルネットワークモデルf1、…、fnの学習を行うことで、ニューラルネットワークモデルf1、…、fnによるクラス分類の精度が高くなる。
ただし、多重予測損失関数ECEは式(1)に示すものに限定されない。ニューラルネットワークモデルの出力が正解に近いほど誤差が小さくなるいろいろな関数を、多重予測損失関数ECEとして用いることができる。
学習装置10が、多重予測損失関数ECEの値が小さくなるようにニューラルネットワークモデルf1、…、fnの学習を行うことで、ニューラルネットワークモデルf1、…、fnによるクラス分類の精度が高くなる。
多様性算出装置100は、予測確率ベクトルf1(X,θ1)、…、fn(X,θn)と、正解ラベルYとに基づいて、ニューラルネットワークモデルf1、…、fnの出力の多様性の指標値を算出する。ニューラルネットワークモデルf1、…、fnの出力の多様性の指標値を計算する関数を、多様性関数EDと称する。多様性関数EDとして、ニューラルネットワークモデルf1、…、fnの出力の多様性が大きいほど値が小さくなる関数を用いる。すなわち、同じ訓練データXに対して、予測確率ベクトルf1(X,θ1)、…、fn(X,θn)のばらつきが大きいほど、多様性関数EDの値が小さくなる。
学習により多様性関数EDの値を小さくすることで予測確率ベクトルf1(X,θ1)、…、fn(X,θn)を多様的にし、敵対的サンプルの入力に対してニューラルネットワークモデルf1、…、fnがロバストになる効果がある。
図1の例のように、多様性算出装置100が学習装置10の一部として構成されていてもよい。あるいは、多様性算出装置100が学習装置10とは別の装置として構成されていてもよい。
図1の例のように、多様性算出装置100が学習装置10の一部として構成されていてもよい。あるいは、多様性算出装置100が学習装置10とは別の装置として構成されていてもよい。
目的関数算出部14は多重予測損失算出部13が算出する多重予測損失関数ECEの値と多様性算出装置100からの出力であるEDとハイパーパラメータαおよびβの値に基づいて目的関数の値を算出する。目的関数は例えばloss=αECE―βEDとすることができる。
更新部15は、ニューラルネットワークモデルf1、…、fnの学習を行う。具体的には、更新部15は、目的関数算出部14が算出する目的関数の値に基づいて、ニューラルネットワークの出力と正解ラベルとの差が小さくなるよう、且つニューラルネットワークモデル間の類似度が小さくなるように、ニューラルネットワークモデルのパラメータθ1、…、θnの値を更新する。
例えば、更新部15が、目的関数のニューラルネットワークの各パラメータによる微分係数を用いて、勾配法に基づいて目的関数の値を小さくするパラメータθ1、…、θnの値を算出するようにしてもよい。ただし、更新部15が用いる学習方法は特定の方法に限定されない。更新部15がニューラルネットワークモデルf1、…、fnの学習を行う方法として、目的関数の値を小さくするいろいろな方法を用いることができる。
図2は多様性算出装置100の構成の一例を表す概略ブロック図である。図2に示す構成で、多様性算出装置100は、不正解予測算出部101と、正規化部102と、角度算出部103とを含む。
多様性算出装置100は、予測部12から予測確率ベクトルf1(X,θ1)、…、fn(X,θn)と、正解ラベルYを入力として受け付ける。
多様性算出装置100は、予測部12から予測確率ベクトルf1(X,θ1)、…、fn(X,θn)と、正解ラベルYを入力として受け付ける。
ここで、クラスに1からnまでの番号が紐付けられており、この番号を用いてクラス1、…、クラスnと称するものとする。また、予測確率ベクトルf1(X,θ1)、…、fn(X,θn)の各々では、ベクトルの要素として、クラス1の予測確率からクラスnの予測確率までが順に並んでいるものとする。Yは、正解のクラスの番号を示すものする。
ただし、クラスの識別方法、正解クラスの提示方法、および、予測確率ベクトルの構成は、特定のもの限定されない。
ただし、クラスの識別方法、正解クラスの提示方法、および、予測確率ベクトルの構成は、特定のもの限定されない。
不正解予測算出部101は、各fi(X,θi)の正解ラベルに対応する要素、すなわちY番目の要素を除いた不正解クラス予測確率ベクトルf1
Y(X,θ1)、…、fn
Y(X,θn)を算出し出力する。
正規化部102は不正解クラス予測確率ベクトルf1 Y(X,θ1)、…、fn Y(X,θn)を正規化し出力する。多様性算出装置100が不正解クラス予測確率ベクトルf1 Y(X,θ1)、…、fn Y(X,θn)に基づいて多様性関数EDの値(多様性の指標値)を算出する際に、ベクトルの大きさの影響を除外するためである。
正規化部102は不正解クラス予測確率ベクトルf1 Y(X,θ1)、…、fn Y(X,θn)を正規化し出力する。多様性算出装置100が不正解クラス予測確率ベクトルf1 Y(X,θ1)、…、fn Y(X,θn)に基づいて多様性関数EDの値(多様性の指標値)を算出する際に、ベクトルの大きさの影響を除外するためである。
正規化部102が行う正規化として、ベクトルに対するいろいろな正規化を用いることができる。例えば、正規化部102がL2正規化を行うようにしてもよいが、これに限定されない。あるいは、多様性算出装置100が正規化部102を備えていなくてもよい。すなわち、正規化部102による不正解クラス予測確率ベクトルf1
Y(X,θ1)、…、fn
Y(X,θn)の正規化は必須ではない。
正規化部102が不正解クラス予測確率ベクトルf1 Y(X,θ1)、…、fn Y(X,θn)をL2正規化する場合は、式(2)のように計算する。
正規化部102が不正解クラス予測確率ベクトルf1 Y(X,θ1)、…、fn Y(X,θn)をL2正規化する場合は、式(2)のように計算する。
角度算出部103は多様性関数EDの値を算出し出力する。例えば、正規化部102がL2正規化する場合、多様性関数EDとして式(3)に示される関数を用いることができる。
式(3)の「・」は、ベクトルの内積を示す。
角度算出部103は、式(3)に基づいて、ニューラルネットワークモデルf1、…、fnにおける2つの不正解クラス予測確率ベクトルの全ての組み合わせについての、不正解クラス予測確率ベクトルのコサイン類似度の総和を、多様性の指標値として算出する。不正解クラス予測確率ベクトルのばらつきが大きいほどコサイン類似度が小さくなり、多様性の指標値(多様性関数EDの値)が小さくなる。
あるいは、角度算出部103が、式(4)のように、正規化された不正解クラス予測確率ベクトルの内積の総和に代えて、内積の平均を算出するようにしてもよい。
角度算出部103は、式(3)に基づいて、ニューラルネットワークモデルf1、…、fnにおける2つの不正解クラス予測確率ベクトルの全ての組み合わせについての、不正解クラス予測確率ベクトルのコサイン類似度の総和を、多様性の指標値として算出する。不正解クラス予測確率ベクトルのばらつきが大きいほどコサイン類似度が小さくなり、多様性の指標値(多様性関数EDの値)が小さくなる。
あるいは、角度算出部103が、式(4)のように、正規化された不正解クラス予測確率ベクトルの内積の総和に代えて、内積の平均を算出するようにしてもよい。
式(3)または式(4)の例のように、多様性関数EDとして、2つのニューラルネットワークモデルfiとfjと(i、jは、1≦i<j≦nを満たす正の整数)の不正解クラス予測確率ベクトルfi
Y(X,θi)とfj
Y(X,θj)とのなす角度が大きいほど値が小さくなる関数を用いるようにしてもよい。
また、式(3)、(4)は何れも、学習対象の全てのニューラルネットワークモデルf1、…、fnのうちの2つのニューラルネットワークモデルfiとfjとの全ての組み合わせについて、不正解クラス予測確率ベクトルfi
Y(X,θi)とfj
Y(X,θj)とのなす角度の大きさの評価値の演算を含む多様性関数EDの例に該当する。
ただし、多様性関数EDとして、学習対象の全てのニューラルネットワークモデルのうちの2つのニューラルネットワークモデルの一部の組み合わせのみについて、不正解クラス予測確率ベクトルのなす角度の大きさの評価値の演算を含む関数を用いるようにしてもよい。
例えば、角度算出部103が、式(5)の例のように、識別番号で隣同士のニューラルネットワークモデルの不正解クラス予測確率ベクトルのなす角度の大きさの評価値の演算を含む多様性関数EDの値を計算するようにしてもよい。
例えば、角度算出部103が、式(5)の例のように、識別番号で隣同士のニューラルネットワークモデルの不正解クラス予測確率ベクトルのなす角度の大きさの評価値の演算を含む多様性関数EDの値を計算するようにしてもよい。
多様性関数EDに用いる、角度の大きさの評価値の演算はコサイン類似度に限定されず、角度が大きいほど値が小さくなるいろいろな関数とすることができる。
<学習装置の動作の説明>
図3は、学習装置10が行う処理の一例を表すフローチャートである。
まず、入出力部11は、n個のニューラルネットワークモデルf1、…、fn、パラメータθ1、…、θnの値、訓練データX、正解ラベルY、ハイパーパラメータαおよびβの値を取得する(ステップS10)。
図3は、学習装置10が行う処理の一例を表すフローチャートである。
まず、入出力部11は、n個のニューラルネットワークモデルf1、…、fn、パラメータθ1、…、θnの値、訓練データX、正解ラベルY、ハイパーパラメータαおよびβの値を取得する(ステップS10)。
次に、予測部12は、各ニューラルネットワークモデルの予測確率ベクトルf1(X,θ1)、…、fn(X,θn)を算出する(ステップS20)。
次に、多重予測損失算出部13は、予測確率ベクトルf1(X,θ1)、…、fn(X,θn)と正解との誤差を算出し、モデル間の平均値を算出することで、多重予測損失関数ECEの値を算出する(ステップS31)。
次に、多重予測損失算出部13は、予測確率ベクトルf1(X,θ1)、…、fn(X,θn)と正解との誤差を算出し、モデル間の平均値を算出することで、多重予測損失関数ECEの値を算出する(ステップS31)。
次に、多様性算出装置100は、予測確率ベクトルf1(X,θ1)、…、fn(X,θn)と正解ラベルYとに基づいて、不正解クラス予測確率ベクトルf1
Y(X,θ1)、…、fn
Y(X,θn)を算出し、これらのベクトルがなす角度に基づくスコアを多様性の数値(多様性関数ED)として算出する(ステップS32)。
次に、目的関数算出部14は多重予測損失関数ECEと、多様性関数EDと、ハイパーパラメータαおよびβの値とに基づいて目的関数lossを算出する(ステップS4)。
最後に、更新部15は目的関数lossをネットワークパラメータθ1、…、θnで微分したときの微分係数の値に従ってネットワークパラメータθ1、…、θnを更新する(ステップS5)。すなわち、更新部15は、更新後のネットワークパラメータθ’1、…、θ’nを算出する。
最後に、更新部15は目的関数lossをネットワークパラメータθ1、…、θnで微分したときの微分係数の値に従ってネットワークパラメータθ1、…、θnを更新する(ステップS5)。すなわち、更新部15は、更新後のネットワークパラメータθ’1、…、θ’nを算出する。
ステップS4の後、学習装置10は、図3の処理を終了する。
学習装置10は、図3の処理を繰り返し行う。例えば、学習装置10が、図3の処理を所定回数繰り返すようにしてもよい。あるいは、学習装置10が、目的関数の減少率の大きさが所定の大きさ以下に収束するまで繰り返すようにしてもよい。
学習装置10は、図3の処理を繰り返し行う。例えば、学習装置10が、図3の処理を所定回数繰り返すようにしてもよい。あるいは、学習装置10が、目的関数の減少率の大きさが所定の大きさ以下に収束するまで繰り返すようにしてもよい。
以上のように、不正解予測算出部101は、訓練データXに対するニューラルネットワークモデルf1、…、fnの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルf1
Y(X,θ1)、…、fn
Y(X,θn)を求める。更新部15は、2つのニューラルネットワークモデルの不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数EDを含む目的関数lossの値をより小さくするように、ニューラルネットワークモデルf1、…、fnの学習を行う。
更新部15が、目的関数lossの値を小さくするように、ニューラルネットワークモデルf1、…、fnの学習を行うことで、目的関数lossに含まれる損失関数の値が小さくなり、ニューラルネットワークモデルf1、…、fnによる分類精度が高くなると期待される。
また、更新部15が、目的関数lossの値を小さくするように、ニューラルネットワークモデルf1、…、fnの学習を行うことで、目的関数lossに含まれる多様性関数の値が小さくなり、ニューラルネットワークモデルf1、…、fnの出力(ニューラルネットワーク集合の出力)の多様性が得られると期待される。ニューラルネットワークモデルf1、…、fnの出力が多様になることで、敵対的サンプルに対してロバストになることが期待される。
かつ、更新部15が、多様性関数として、2つのニューラルネットワークモデルの間において不正解クラス予測確率ベクトルがなす角度の評価値に基づく関数を用いる点で、学習における計算量が比較的少なくて済むと期待される。
例えば、ニューラルネットワークモデルの個数をm個とし、出力ベクトルのクラスの個数(クラス数)をL個として、上記の非特許文献1では、ニューラルネットワークモデルの出力の多様性を得るために用いる関数の計算量がO(Lm2+m3)のオーダーとなるのに対し、学習装置10によれば、O(Lm2)で済む。
例えば、ニューラルネットワークモデルの個数をm個とし、出力ベクトルのクラスの個数(クラス数)をL個として、上記の非特許文献1では、ニューラルネットワークモデルの出力の多様性を得るために用いる関数の計算量がO(Lm2+m3)のオーダーとなるのに対し、学習装置10によれば、O(Lm2)で済む。
また、多様性関数は、学習対象の全てのニューラルネットワークモデルf1、…、fnのうちの2つのニューラルネットワークモデルの全ての組み合わせについて、クラス予測確率ベクトルのなす角度の大きさの評価値の演算を含む。
これにより、学習装置10では、ニューラルネットワークモデルの出力の多様性をより高精度に評価することができ、ニューラルネットワークモデルの出力の多様性を得やすいと期待される。
これにより、学習装置10では、ニューラルネットワークモデルの出力の多様性をより高精度に評価することができ、ニューラルネットワークモデルの出力の多様性を得やすいと期待される。
また、多様性関数は、2つの不正解クラス予測確率ベクトルのなす角度の大きさの評価値の演算として、それら2つの不正解クラス予測確率ベクトルのコサイン類似度の演算を含む。
これにより、学習装置10では、2つの不正解クラス予測確率ベクトルのなす角度の大きさの評価の際に、2つの不正解クラス予測確率ベクトルそれぞれの大きさの影響を除外することができる。この点で、学習装置10では、ニューラルネットワークモデルの出力の多様性をより高精度に評価することができ、ニューラルネットワークモデルの出力の多様性を得やすいと期待される。
これにより、学習装置10では、2つの不正解クラス予測確率ベクトルのなす角度の大きさの評価の際に、2つの不正解クラス予測確率ベクトルそれぞれの大きさの影響を除外することができる。この点で、学習装置10では、ニューラルネットワークモデルの出力の多様性をより高精度に評価することができ、ニューラルネットワークモデルの出力の多様性を得やすいと期待される。
また、多様性関数は、2つのニューラルネットワークモデルの不正解クラス予測確率ベクトルのコサイン類似度の、学習対象の全てのニューラルネットワークモデルのうちの2つのニューラルネットワークモデルの全ての組み合わせについての平均を算出する演算を含む。
このように、学習装置10が、多様性関数の計算でコサイン類似度の平均を求めることで、多様性関数の値大きさがニューラルネットワークモデルの個数に応じて増減することを回避でき、目的関数における多様性関数の影響の度合いが変化することを回避できる。
このように、学習装置10が、多様性関数の計算でコサイン類似度の平均を求めることで、多様性関数の値大きさがニューラルネットワークモデルの個数に応じて増減することを回避でき、目的関数における多様性関数の影響の度合いが変化することを回避できる。
図5は、実施形態にかかる学習装置の構成のもう1つの例を示す概略ブロック図である。
図5に示す構成で、学習装置500は、不正解予測算出部と501と、更新部502とを備える。
かかる構成で、不正解予測算出部501は、教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求める。更新部502は、2つのニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、ニューラルネットワークモデルの学習を行う。
図5に示す構成で、学習装置500は、不正解予測算出部と501と、更新部502とを備える。
かかる構成で、不正解予測算出部501は、教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求める。更新部502は、2つのニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、ニューラルネットワークモデルの学習を行う。
更新部502が、目的関数の値を小さくするように、ニューラルネットワークモデルの学習を行うことで、目的関数に含まれる多様性関数の値が小さくなり、ニューラルネットワークモデルの出力の多様性が得られると期待される。ニューラルネットワークモデルの出力が多様になることで、敵対的サンプルに対してロバストになることが期待される。
かつ、更新部502が、多様性関数として、2つのニューラルネットワークモデルの間において不正解クラス予測確率ベクトルがなす角度の評価値に基づく関数を用いる点で、学習における計算量が比較的少なくて済むと期待される。
例えば、ニューラルネットワークモデルの個数をm個とし、出力ベクトルのクラスの個数(クラス数)をL個として、上記の非特許文献1では、ニューラルネットワークモデルの出力の多様性を得るために用いる関数の計算量がO(Lm2+m3)のオーダーとなるのに対し、学習装置500によれば、O(Lm2)で済む。
例えば、ニューラルネットワークモデルの個数をm個とし、出力ベクトルのクラスの個数(クラス数)をL個として、上記の非特許文献1では、ニューラルネットワークモデルの出力の多様性を得るために用いる関数の計算量がO(Lm2+m3)のオーダーとなるのに対し、学習装置500によれば、O(Lm2)で済む。
図6は実施形態にかかる学習方法における処理手順の一例を示すフローチャートである。図6に示す処理で、教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求める(ステップS501)。そして、2つの前記ニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、前記ニューラルネットワークモデルの学習を行う(ステップS502)。
目的関数の値を小さくするように、ニューラルネットワークモデルの学習を行うことで、目的関数に含まれる多様性関数の値が小さくなり、ニューラルネットワークモデルの出力の多様性が得られると期待される。ニューラルネットワークモデルの出力が多様になることで、敵対的サンプルに対してロバストになることが期待される。
かつ、多様性関数として、2つのニューラルネットワークモデルの間において不正解クラス予測確率ベクトルがなす角度の評価値に基づく関数を用いる点で、学習における計算量が比較的少なくて済むと期待される。
例えば、ニューラルネットワークモデルの個数をm個とし、出力ベクトルのクラスの個数(クラス数)をL個として、上記の非特許文献1では、ニューラルネットワークモデルの出力の多様性を得るために用いる関数の計算量がO(Lm2+m3)のオーダーとなるのに対し、図6に示す処理によれば、O(Lm2)で済む。
例えば、ニューラルネットワークモデルの個数をm個とし、出力ベクトルのクラスの個数(クラス数)をL個として、上記の非特許文献1では、ニューラルネットワークモデルの出力の多様性を得るために用いる関数の計算量がO(Lm2+m3)のオーダーとなるのに対し、図6に示す処理によれば、O(Lm2)で済む。
<ハードウェアの構成について>
図7は、少なくとも1つの実施形態に係る情報処理装置300の構成の一例を示す図である。図7に示す構成で、情報処理装置300は、CPU(Central Processing Unit)301と、ROM(Read Only Memory)302と、RAM(Random Access Memory)303と、RAM303にロードされるプログラム群304と、プログラム群304を格納する記憶装置305と、情報処理装置300外部の記録媒体310の読み書きを行うドライブ装置306と、情報処理装置300外部の通信ネットワーク311と接続する通信インタフェース307と、データの入出力を行う入出力インタフェース308と、各構成要素を接続するパス309とを含む。
図7は、少なくとも1つの実施形態に係る情報処理装置300の構成の一例を示す図である。図7に示す構成で、情報処理装置300は、CPU(Central Processing Unit)301と、ROM(Read Only Memory)302と、RAM(Random Access Memory)303と、RAM303にロードされるプログラム群304と、プログラム群304を格納する記憶装置305と、情報処理装置300外部の記録媒体310の読み書きを行うドライブ装置306と、情報処理装置300外部の通信ネットワーク311と接続する通信インタフェース307と、データの入出力を行う入出力インタフェース308と、各構成要素を接続するパス309とを含む。
上述した学習装置10の一部又は全部、あるいは、学習装置500の一部または全部を、例えば図7で示すような情報処理装置300がプログラムを実行することで実現するようにしてもよい。その場合、上述した各処理部の機能を実現するプログラム群304をCPU301が取得して実行することで実現することができる。学習装置10または学習装置500が有する各部の機能を実現するプログラム群304は、例えば、予め記憶装置305やROM302に格納されており、必要に応じてCPU301がRAM303にロードして実行する。なお、プログラム群304は通信ネットワーク311を介してCPU301に供給されてもよいし、予め、記録媒体310に格納されており、ドライブ装置306が該プログラムを読みだしてCPU301に供給してもよい。
なお、図7は情報処理装置300の構成の一例を示しており、情報処理装置300の構成は上述した場合に例示されない。例えば、情報処理装置300は、ドライブ装置306を有さないなど、上述した構成の一部から構成されても構わない。
なお、図7は情報処理装置300の構成の一例を示しており、情報処理装置300の構成は上述した場合に例示されない。例えば、情報処理装置300は、ドライブ装置306を有さないなど、上述した構成の一部から構成されても構わない。
学習装置10が情報処理装置300に実装される場合、予測部12、多重予測損失算出部13、目的関数算出部14、更新部15、不正解予測算出部101、正規化部102、および、角度算出部103の動作は、プログラムの形式で例えば記憶装置305またはROM302に記憶されている。CPU301は、プログラムを記憶装置305またはROM302から読み出してRAM303に展開し、当該プログラムに従って上記処理を実行する。
また、CPU301は、プログラムに従って、記憶領域をRAM303に確保する。入出力部11が他の装置と通信を行う場合、通信インタフェース307がCPU301の制御に従って通信を実行する。入出力部11がユーザ操作によるデータの入力など、データの入力を受け付ける場合、入出力インタフェース308が、データの入力の受付を実行する。例えば、入出力インタフェース308が、キーボードおよびマウスなどの入力デバイスを含んで構成され、ユーザ操作を受け付けるようにしてもよい。入出力部11が、データを表示するなどデータを出力する場合、入出力インタフェース308が、データの出力を実行する。例えば、入出力インタフェース308が、液晶パネルまたはLEDパネル等の表示画面を含んで構成され、データを表示するようにしてもよい。
学習装置500が情報処理装置300に実装される場合、不正解予測算出部501および更新部502の動作は、プログラムの形式で例えば記憶装置305またはROM302に記憶されている。CPU301は、プログラムを記憶装置305またはROM302から読み出してRAM303に展開し、当該プログラムに従って上記処理を実行する。
また、CPU301は、プログラムに従って、記憶領域をRAM303に確保する。学習装置500が他の装置と通信を行う場合、通信インタフェース307がCPU301の制御に従って通信を実行する。学習装置500がユーザ操作によるデータの入力など、データの入力を受け付ける場合、入出力インタフェース308が、データの入力の受付を実行する。例えば、入出力インタフェース308が、キーボードおよびマウスなどの入力デバイスを含んで構成され、ユーザ操作を受け付けるようにしてもよい。学習装置500が、データを表示するなどデータを出力する場合、入出力インタフェース308が、データの出力を実行する。例えば、入出力インタフェース308が、液晶パネルまたはLEDパネル等の表示画面を含んで構成され、データを表示するようにしてもよい。
上記のように、学習装置10、および、学習装置500が行う処理の全部または一部を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
本発明の実施形態は、学習装置、学習方法および記録媒体に適用してもよい。
10 学習装置
11 入出力部
12 予測部
13 多重予測損失算出部
14 目的関数算出部
15 更新部
100 多様性算出装置
101 不正解予測算出部
102 正規化部
103 角度算出部
201 内積総和算出部
11 入出力部
12 予測部
13 多重予測損失算出部
14 目的関数算出部
15 更新部
100 多様性算出装置
101 不正解予測算出部
102 正規化部
103 角度算出部
201 内積総和算出部
Claims (6)
- 教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求める不正解予測算出部と、
2つの前記ニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、前記ニューラルネットワークモデルの学習を行う更新部と、
を含む学習装置。 - 前記多様性関数は、学習対象の全ての前記ニューラルネットワークモデルのうちの2つの前記ニューラルネットワークモデルの全ての組み合わせについて、前記不正解クラス予測確率ベクトルのなす角度の大きさの評価値の演算を含む、
請求項1に記載の学習装置。 - 前記多様性関数は、2つの前記不正解クラス予測確率ベクトルのなす角度の大きさの評価値の演算として、それら2つの不正解クラス予測確率ベクトルのコサイン類似度の演算を含む、
請求項1または請求項2に記載の学習装置。 - 前記多様性関数は、2つの前記ニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのコサイン類似度の、学習対象の全ての前記ニューラルネットワークモデルのうちの2つの前記ニューラルネットワークモデルの全ての組み合わせについての平均を算出する演算を含む、
請求項1に記載の学習装置。 - 教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求めることと、
2つの前記ニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、前記ニューラルネットワークモデルの学習を行うことと、
を含む学習方法。 - コンピュータに、
教師有り学習データに対するニューラルネットワークモデルの予測確率ベクトルから正解クラスの要素を除いた不正解クラス予測確率ベクトルを求めることと、
2つの前記ニューラルネットワークモデルの前記不正解クラス予測確率ベクトルのなす角度が大きいほど値が小さくなる多様性関数を含む目的関数の値をより小さくするように、前記ニューラルネットワークモデルの学習を行うことと、
を実行させるためのプログラムを記録する記録媒体。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US18/012,752 US20230252284A1 (en) | 2020-06-30 | 2020-06-30 | Learning device, learning method, and recording medium |
| PCT/JP2020/025663 WO2022003824A1 (ja) | 2020-06-30 | 2020-06-30 | 学習装置、学習方法および記録媒体 |
| JP2022532887A JP7548308B2 (ja) | 2020-06-30 | 2020-06-30 | 学習装置、学習方法およびプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2020/025663 WO2022003824A1 (ja) | 2020-06-30 | 2020-06-30 | 学習装置、学習方法および記録媒体 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022003824A1 true WO2022003824A1 (ja) | 2022-01-06 |
Family
ID=79315797
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2020/025663 Ceased WO2022003824A1 (ja) | 2020-06-30 | 2020-06-30 | 学習装置、学習方法および記録媒体 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20230252284A1 (ja) |
| JP (1) | JP7548308B2 (ja) |
| WO (1) | WO2022003824A1 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2023102803A (ja) * | 2022-01-13 | 2023-07-26 | ボッシュ株式会社 | データ処理装置、方法及びプログラム |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119806244A (zh) * | 2025-03-12 | 2025-04-11 | 四川吉利学院 | 神经网络驱动的电动车温控策略优化方法及系统 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017091083A (ja) * | 2015-11-06 | 2017-05-25 | キヤノン株式会社 | 情報処理装置、情報処理方法、およびプログラム |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11144718B2 (en) * | 2017-02-28 | 2021-10-12 | International Business Machines Corporation | Adaptable processing components |
| JP6883787B2 (ja) * | 2017-09-06 | 2021-06-09 | パナソニックIpマネジメント株式会社 | 学習装置、学習方法、学習プログラム、推定装置、推定方法、及び推定プログラム |
| WO2020096099A1 (ko) * | 2018-11-09 | 2020-05-14 | 주식회사 루닛 | 기계 학습 방법 및 장치 |
| EP4060645A4 (en) * | 2019-11-11 | 2023-11-29 | Z-KAI Inc. | Learning effect estimation device, learning effect estimation method, and program |
| KR20210069467A (ko) * | 2019-12-03 | 2021-06-11 | 삼성전자주식회사 | 뉴럴 네트워크의 학습 방법 및 장치와 뉴럴 네트워크를 이용한 인증 방법 및 장치 |
-
2020
- 2020-06-30 WO PCT/JP2020/025663 patent/WO2022003824A1/ja not_active Ceased
- 2020-06-30 JP JP2022532887A patent/JP7548308B2/ja active Active
- 2020-06-30 US US18/012,752 patent/US20230252284A1/en active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017091083A (ja) * | 2015-11-06 | 2017-05-25 | キヤノン株式会社 | 情報処理装置、情報処理方法、およびプログラム |
Non-Patent Citations (1)
| Title |
|---|
| DABOUEI, ALI ET AL.: "Exploiting Joint Robustness to Adversarial Perturbations", PROCEEDINGS OF 2020 IEEE /CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR, 13 June 2020 (2020-06-13), pages 1119 - 1128, XP033805025, DOI: 10.1109/CVPR42600.2020.00120 * |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2023102803A (ja) * | 2022-01-13 | 2023-07-26 | ボッシュ株式会社 | データ処理装置、方法及びプログラム |
| JP7769548B2 (ja) | 2022-01-13 | 2025-11-13 | ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング | データ処理装置、方法及びプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JP7548308B2 (ja) | 2024-09-10 |
| US20230252284A1 (en) | 2023-08-10 |
| JPWO2022003824A1 (ja) | 2022-01-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Hardt et al. | Patterns, predictions, and actions: Foundations of machine learning | |
| Fleuret et al. | Comparing machines and humans on a visual categorization test | |
| Chapelle et al. | Choosing multiple parameters for support vector machines | |
| US12217139B2 (en) | Transforming a trained artificial intelligence model into a trustworthy artificial intelligence model | |
| US20140272914A1 (en) | Sparse Factor Analysis for Learning Analytics and Content Analytics | |
| US20220253747A1 (en) | Likelihood Ratios for Out-of-Distribution Detection | |
| US20200334557A1 (en) | Chained influence scores for improving synthetic data generation | |
| Shanthini et al. | RETRACTED ARTICLE: A taxonomy on impact of label noise and feature noise using machine learning techniques: A. Shanthini et al. | |
| WO2020234984A1 (ja) | 学習装置、学習方法、コンピュータプログラム及び記録媒体 | |
| CN117038055B (zh) | 一种基于多专家模型的疼痛评估方法、系统、装置及介质 | |
| Doyen et al. | Hollow-tree super: A directional and scalable approach for feature importance in boosted tree models | |
| WO2022003824A1 (ja) | 学習装置、学習方法および記録媒体 | |
| CN111191781A (zh) | 训练神经网络的方法、对象识别方法和设备以及介质 | |
| Shrivastava et al. | Predicting peak stresses in microstructured materials using convolutional encoder–decoder learning | |
| Kernbach et al. | Machine learning-based clinical prediction modeling--a practical guide for clinicians | |
| US20220405640A1 (en) | Learning apparatus, classification apparatus, learning method, classification method and program | |
| Domeniconi et al. | Composite kernels for semi-supervised clustering | |
| JP2009211123A (ja) | 分類装置、ならびに、プログラム | |
| US20210358317A1 (en) | System and method to generate sets of similar assessment papers | |
| CN115769194A (zh) | 跨数据集的自动数据链接 | |
| RS et al. | Intelligence model for Alzheimer’s disease detection with optimal trained deep hybrid model | |
| Fouad | A hybrid approach of missing data imputation for upper gastrointestinal diagnosis | |
| Novello et al. | Goal-oriented sensitivity analysis of hyperparameters in deep learning | |
| Liu et al. | Evolutionary Voting‐Based Extreme Learning Machines | |
| US20220222585A1 (en) | Learning apparatus, learning method and program |
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: 20942470 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2022532887 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 20942470 Country of ref document: EP Kind code of ref document: A1 |