WO2021064787A1 - 学習システム、学習装置、および学習方法 - Google Patents

学習システム、学習装置、および学習方法 Download PDF

Info

Publication number
WO2021064787A1
WO2021064787A1 PCT/JP2019/038498 JP2019038498W WO2021064787A1 WO 2021064787 A1 WO2021064787 A1 WO 2021064787A1 JP 2019038498 W JP2019038498 W JP 2019038498W WO 2021064787 A1 WO2021064787 A1 WO 2021064787A1
Authority
WO
WIPO (PCT)
Prior art keywords
dnn
label
student
training data
feature amount
Prior art date
Application number
PCT/JP2019/038498
Other languages
English (en)
French (fr)
Inventor
亮 高本
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to US17/762,418 priority Critical patent/US20220343163A1/en
Priority to JP2021550747A priority patent/JP7468540B2/ja
Priority to PCT/JP2019/038498 priority patent/WO2021064787A1/ja
Publication of WO2021064787A1 publication Critical patent/WO2021064787A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Definitions

  • the present invention relates to a learning system and a learning device including a deep neural network, and a learning method using the deep neural network.
  • DNN Deep Neural Network
  • CNN Convolutional Neural Network
  • DNN Many parameters are used in DNN. As a result, the amount of calculation by the computer that realizes DNN increases. As a result, it is difficult to apply DNN to mobile terminals and the like whose computing power (calculation speed and storage capacity) is relatively low.
  • distillation model compression as a method of reducing the calculation cost while suppressing the decrease in accuracy.
  • the model is first trained, for example by a supervised learning method, to create a supervised model.
  • a student model which is a smaller model separate from the teacher model, is then trained using the output of the teacher model instead of the correct label (see, eg, Patent Document 1).
  • the label may contain noise.
  • the noisy teacher data affects the accuracy of the DNN.
  • Patent Document 1 describes a student model trained using the output of the teacher model instead of the correct label, but Patent Document 1 does not consider teacher data containing noise.
  • Non-Patent Document 1 also describes a student model trained using the output of the teacher model instead of the correct label. However, in Non-Patent Document 1, no countermeasures for teacher data containing noise have been examined.
  • An object of the present invention is to provide a learning system, a learning device, and a learning method capable of efficiently causing a student DNN to learn information learned by a teacher DNN.
  • the learning system is a learning system using a teacher DNN and a student DNN having a size smaller than the size of the teacher DNN, and is a teacher DNN feature amount extraction means for extracting the feature amount of each of a plurality of training data.
  • a teacher DNN estimation value calculation means for calculating the first estimation value of each label corresponding to each of the plurality of training data
  • a student DNN feature amount extraction means for extracting the feature amount of each of the plurality of training data.
  • the label corresponding to the training data is noisy.
  • the feature amount extracted by the teacher DNN feature amount extraction means and the feature amount extracted by the student DNN feature amount extraction means while reducing the influence of the noise label correction means for determining whether or not the label contains noise and the label containing noise. Includes an update means that updates the weights in the student DNN so that there is no difference with.
  • the learning device is a learning device that uses a student DNN, and is a student DNN feature amount extracting means for extracting a feature amount of input data and a student DNN for calculating a plurality of estimated values of labels corresponding to the input data.
  • a teacher DNN feature extraction means that includes an estimate calculation means and an output integration means that integrates a plurality of estimated values, and the weight of the student DNN feature extraction means extracts each feature of a plurality of training data.
  • the teacher DNN estimate calculation means that calculates the first estimate of each label corresponding to each of the training data, the label corresponding to the training data and the label corresponding to the training data make noise based on the label corresponding to the training data and the first estimate.
  • the learning method according to the present invention is a learning method using a teacher DNN and a student DNN having a size smaller than the size of the teacher DNN, and each feature amount of a plurality of training data is extracted as a teacher DNN feature amount.
  • the first estimated value of each label corresponding to each of the plurality of training data is calculated, the feature amount of each of the plurality of training data is extracted as the student DNN feature amount, and the feature amount of each label corresponding to each of the plurality of training data is extracted.
  • the second estimated value is calculated, and based on the label corresponding to the training data and the first estimated value, it is determined whether or not the label corresponding to the training data is a label containing noise, and the extracted teacher DNN feature amount.
  • the weight in the student DNN is updated so that there is no difference between the and the student DNN feature amount.
  • the recording medium is a computer-readable recording medium in which a learning program is stored, and the learning program includes a process of extracting each feature amount of a plurality of training data as a teacher DNN feature amount, and a plurality of trainings.
  • the processor is made to execute the process of updating the weight in the student DNN so that there is no difference between the teacher DNN feature amount and the student DNN feature amount.
  • the information learned by the teacher DNN can be efficiently learned by the student DNN.
  • the learning system of the first embodiment is a learning system to which the distillation method is applied.
  • FIG. 1 is a block diagram showing a configuration example of a learning system.
  • the learning system 200 of the present embodiment includes a data reading unit 201, a label reading unit 202, a teacher DNN feature amount extraction unit 203, a teacher DNN estimated value calculation unit 204, a student DNN feature amount extraction unit 205, and a student DNN. It includes an estimated value calculation unit 206, a student DNN feature amount learning unit 207, a noise label correction unit 208, a student DNN learning unit 209, an output integration unit 210, and an output unit 211.
  • Data such as images, sounds, and sentences are input to the data reading unit 201.
  • the input data is temporarily saved in the memory.
  • the data reading unit 201 outputs the input data to the teacher DNN feature amount extraction unit 203 and the student DNN feature amount extraction unit 205.
  • the label corresponding to the data input to the data reading unit 201 is input to the label reading unit 202.
  • the input label is temporarily saved in the memory.
  • the label reading unit 202 outputs the input label to the noise label correction unit 208 and the student DNN learning unit 209.
  • the teacher DNN feature amount extraction unit 203 converts the data input from the data reading unit 201 into the feature amount of the scalar array.
  • the teacher DNN estimated value calculation unit 204 calculates the label estimated value using the feature amount of the scalar array input from the teacher DNN feature amount extraction unit 203.
  • the student DNN feature amount extraction unit 205 converts the data input from the data reading unit 201 into the feature amount of the scalar array in the same manner as the teacher DNN feature amount extraction unit 203.
  • the student DNN estimated value calculation unit 206 calculates the label estimated value using the feature amount of the scalar array input from the student DNN feature amount extraction unit 205. Student DNN estimate calculation unit 206 outputs a plurality of estimates for statistical averaging. The student DNN estimated value calculation unit 206 outputs an estimated value of the output from the noise label correction unit 208, an estimated value of the output from the teacher DNN estimated value calculation unit 204, and the like.
  • the student DNN feature amount learning unit 207 receives the feature amount from each of the teacher DNN feature amount extraction unit 203 and the student DNN feature amount extraction unit 205, and calculates a function of the difference between them. Then, the student DNN feature learning unit 207 calculates a gradient that reduces the value of the function. Gradients are used to update the weights of the student DNN.
  • the noise label correction unit 208 compares the label value input from the label reading unit 202 with the label estimated value input from the teacher DNN estimation value calculation unit 204.
  • the noise label correction unit 208 regards a label having a large difference between the label value and the estimated label value as an erroneous label (label containing noise).
  • the noise label correction unit 208 corrects an incorrect label.
  • a correction method for example, it is conceivable to use the label estimation value input from the teacher DNN estimation value calculation unit 204 as the correction label as it is.
  • the correction method is not limited to the method of using the label estimation value from the teacher DNN estimation value calculation unit 204 as the correction label as it is, and other methods may be used.
  • the student DNN learning unit 209 inputs a label from the label reading unit 202, inputs a label estimated value from the teacher DNN estimated value calculation unit 204, and inputs a correction label from the noise label correction unit 208. Further, the student DNN learning unit 209 inputs a label estimated value from the student DNN estimated value calculation unit 206.
  • the student DNN learning unit 209 may refer to, for example, the label estimated value from the teacher DNN estimated value calculation unit 204 and the label estimated value from the student DNN estimated value calculation unit 206 (from the teacher DNN estimated value calculation unit 204) while referring to the correction label. Calculate the difference from the estimated value of the output of.
  • the student DNN learning unit 209 calculates a gradient that reduces the value of the function and uses it to update the weight of the student DNN. As functions, for example, mean square error, mean absolute value error, and Wing-Loss can be used.
  • the output integration unit 210 receives the output from the student DNN estimate value calculation unit 206 and integrates the values.
  • an integration method for example, there is a statistical average.
  • the output unit 211 inputs the output from the output integration unit 210 at the time of operation (application phase) after the training phase (learning phase) is completed, and outputs it as an estimated value of the student DNN.
  • the teacher DNN (including the teacher DNN feature extraction unit 203 and the teacher DNN estimate calculation unit 204) is of a relatively large size with a sufficient number of parameters to achieve the required accuracy in learning. It is a DNN model.
  • ResNet and Wider ResNet which have a large number of channels, can be used as an example.
  • the size of the DNN model corresponds to, for example, the number of parameters, but may also correspond to the number of layers, the feature map size, and the kernel size.
  • the size of the student DNN (including the student DNN feature amount extraction unit 205, the student DNN estimated value calculation unit 206, the student DNN feature amount learning unit 207, and the student DNN learning unit 209) is smaller than the size of the teacher DNN.
  • the number of parameters in student DNN is relatively small.
  • the number of parameters in the student DNN is less than the number of parameters in the teacher DNN.
  • the student DNN is, for example, a DNN model of a small size that can be actually mounted on a device that is supposed to be mounted.
  • the student DNN501 Mobile Net, ResNet with a sufficiently reduced number of channels, and Wider ResNet can be considered.
  • FIG. 2 is an explanatory diagram showing an example of learning a student DNN from a teacher DNN.
  • An example of training (learning) a student DNN with a small number of parameters will be described by using the output of the teacher DNN with a large number of parameters instead of the correct label with reference to FIG.
  • the student DNN301 inputs data from the data reading unit 310.
  • the feature amount extraction unit 321 converts the data into a feature amount.
  • the estimated value calculation unit 331 converts the feature amount into the estimated value 341.
  • the data reading unit 310, the feature amount extraction unit 321 and the estimated value calculation unit 331 correspond to the data reading unit 201, the student DNN feature amount extraction unit 205, and the student DNN estimated value calculation unit 206 in the learning system 200 shown in FIG. To do. That is, the learning system 300 is the same system as the learning system 200 shown in FIG. 1, although the expression method is different.
  • the teacher DNN 302 inputs data from the data reading unit 310.
  • the feature amount extraction unit 322 converts the data into a feature amount.
  • the estimated value calculation unit 332 converts the feature amount into the estimated value 342.
  • the data reading unit 310, the feature amount extraction unit 322, and the estimated value calculation unit 332 correspond to the data reading unit 201, the teacher DNN feature amount extraction unit 203, and the teacher DNN estimated value calculation unit 204 in the learning system 200 shown in FIG. To do.
  • the error signal calculation unit 350 calculates an error signal from each of the obtained feature quantities and each converted estimated value. Then, the learning system 300 updates the weights by backpropagation for updating the network parameters of the student DNN301.
  • the processing of the error signal calculation unit 350 is executed by the student DNN learning unit 209.
  • FIG. 3 is an explanatory diagram showing an example of the teacher DNN model.
  • the teacher DNN 401 in the teacher DNN model 400 includes a feature amount extraction unit 406 and an estimated value calculation unit 407.
  • the feature amount extraction unit 406 includes a plurality of hidden layers 404.
  • the hidden layer consists of a plurality of nodes 403. Each node has a corresponding weight parameter.
  • the weight parameters are updated by learning.
  • the data is supplied from the data reading unit 402.
  • the feature amount extracted by the feature amount extraction unit 406 is output to the estimated value calculation unit 407 from the final layer of the feature amount extraction unit 406.
  • the estimated value calculation unit 407 converts the input feature amount into the label estimated value 405.
  • the data reading unit 402, the feature amount extraction unit 406, and the estimated value calculation unit 407 are the data reading unit 201, the teacher DNN feature amount extraction unit 203, and the teacher DNN estimated value calculation unit 204 in the learning system 200 shown in FIG. Corresponds to.
  • FIG. 4 is an explanatory diagram showing an example of a student DNN model.
  • the student DNN 501 in the student DNN model 500 includes a feature amount extraction unit 506 and an estimated value calculation unit 507.
  • the feature amount extraction unit 506 includes a plurality of hidden layers 504.
  • the hidden layer consists of a plurality of nodes 503. Each node has a corresponding weight parameter.
  • the weight parameters are updated by learning.
  • the feature amount extracted by the feature amount extraction unit 506 is output to the estimated value calculation unit 507 from the final layer of the feature amount extraction unit 506.
  • the estimated value calculation unit 507 converts the input feature amount into a plurality of label estimated values 505.
  • the data reading unit 502, the feature amount extraction unit 506, and the estimated value calculation unit 507 are the data reading unit 201, the student DNN feature amount extraction unit 205, and the student DNN estimated value calculation unit 206 in the learning system 200 shown in FIG. Corresponds to
  • the learning system 300 determines the first DNN model as the teacher DNN model (step S110).
  • the teacher DNN includes a teacher DNN feature amount extraction unit 203 and a teacher DNN estimate value calculation unit 204.
  • the learning system 300 initializes the second DNN model as the student DNN model (step S120).
  • an initial value is given using a normally distributed random number having an average of 0 and a variance of 1.
  • the student DNN model includes a student DNN feature amount extraction unit 205, a student DNN estimated value calculation unit 206, a student DNN feature amount learning unit 207, and a student DNN learning unit 209.
  • the learning system 300 receives a set of labeled training data as inputs of the teacher DNN model and the student DNN model (step S130).
  • the data reading unit 201 and the label reading unit 202 input the labeled training data.
  • the data reading unit 201 and the label reading unit 202 may be integrated.
  • training data means labeled training data.
  • the teacher DNN401 and the student DNN501 calculate the output using the subset of the received training data (step S140).
  • the output of the teacher DNN estimation value calculation unit 204 corresponds to the output of the teacher DNN 401. Further, the output of the student DNN estimation value calculation unit 206 corresponds to the output of the student DNN 501.
  • erroneous label data (noise label) of the training data is determined using the output of the teacher DNN401 (step S150).
  • the noise label correction unit 208 determines whether or not the label in the training data is incorrect.
  • the output of the student DNN 501 is evaluated by being compared with the output of the teacher DNN 401 and the modified training data label (corrected label) (step S160).
  • the student DNN learning unit 209 evaluates.
  • step S165 it is determined whether or not to repeat the processes of steps S140 to S160 using a certain criterion.
  • a criterion for example, it is conceivable to calculate the mean square error between the output of student DNN501 and the label, and the value exceeds (or falls below) a certain threshold value.
  • the student DNN learning unit 209 executes the determination process of step S165.
  • step S165 When it is determined to repeat in step S165, the weight parameter of the student DNN 501 (specifically, the weight of the node in the layer constituting the student DNN feature amount extraction unit 205) is set based on the evaluation in the learning system 300. It is updated (step S170). In step S165, if it is not determined to repeat, i.e., if it is determined to end the training, the learning system 300 provides the trained student DNN501 (step S180).
  • the student DNN model 500 is the target of implementation. Providing a trained student DNN 501 means that a viable student DNN 501 has been determined for the device.
  • the first DNN model which is large enough to train the data set, is adopted as the teacher model and trained.
  • a weight learned by using a random number or some data set is set as an initial value.
  • a subset of the data set is given to the teacher DNN feature extraction unit 203.
  • the output value y output from the teacher DNN estimation value calculation unit 204 is compared with the label value y label.
  • a function of the difference between the output value y output and the label value y label for example, the mean square error ( ⁇ (y output ⁇ y label ) 2 / N) is calculated.
  • the comparison process and the calculation process are executed by, for example, the teacher feature amount learning unit (not shown in FIG. 1).
  • the gradient is calculated using error back propagation, etc. in the direction of decreasing the value of the function, and the weight parameter is updated by the stochastic gradient descent method, etc.
  • the process of calculating the gradient and updating the weight parameters continues until certain criteria, such as the output and label mean square error, fall below a certain threshold.
  • the teacher DNN401 is obtained by the above processing.
  • the gradient calculation and the weight parameter update process are executed by, for example, the teacher feature amount learning unit (not shown in FIG. 1).
  • the student DNN501 is also set with a weight that has been learned using a random number or some data set as an initial value.
  • a subset of the data set is given to the teacher DNN feature extraction unit 203 and the student DNN feature extraction unit 205.
  • teacher , y student, i are calculated. Since the student DNN estimation value calculation unit 206 outputs a plurality of data, the subscript i is added to the output value.
  • the student DNN feature learning unit 207 calculates a function of the difference between z teacher and z student , for example, a mean square error ( ⁇ (z student ⁇ z teacher ) 2 / N). If the dimensions of the feature quantity outputs z teacher and z student of the teacher DNN 401 and the student DNN 501 are different, the student DNN feature quantity learning unit 207 aligns the dimensions of both. For example, the student DNN feature learning unit 207 causes an appropriate CNN to act on the feature output of the teacher DNN. For example, the output of the intermediate layer, which is intended to align the dimensions, is supplied to the convolutional layer, and the dimensions are adjusted by the convolutional operation.
  • the output of the teacher DNN estimation value calculation unit 204 is used by the noise label correction unit 208 for label correction.
  • the noise label correction unit 208 When determining whether or not it is a noise label, for example, the estimated value of the teacher DNN401 is compared with the label value, and if the difference is smaller than a certain threshold value, it is considered to be the correct label, and the difference is greater than the certain threshold value. There is a way to consider it as an incorrect label (noise label) when it is large.
  • the student DNN learning unit 209 calculates the gradient by using error back propagation or the like in the direction of decreasing the value of the calculated function of the plurality of differences.
  • the student DNN learning unit 209 updates the weight parameter by a stochastic gradient descent method or the like.
  • the student DNN learning unit 209 combines the feature amount extracted by the teacher DNN feature amount extraction unit 203 with the feature amount extracted by the student DNN feature amount extraction unit 205 while reducing the influence of the label containing noise. Update the weights in the student DNN so that there is no difference.
  • Student DNN501 is obtained by the above processing.
  • the output integration unit 210 calculates, for example, the statistical average of the output.
  • the output unit 211 outputs it as a final estimated value.
  • the student DNN 501 uses the student DNN feature amount learning unit 207 to learn the output of the student DNN feature amount extraction unit 205 so as to reproduce the output of the teacher DNN feature amount extraction unit 203.
  • the learning system can efficiently make the student DNN learn the information learned by the teacher DNN.
  • the output of the final layer of the DNN feature extraction unit corresponds to the basis vector in the case of the linear regression apparatus. Being able to reproduce the basis vector means that the feature extractor of the teacher DNN401 has been completely reproduced. Learning is generally easy if the basis vector can be reproduced.
  • the teacher DNN401 implicitly learns the correctness of the training data label in the learning process. Then, in the teacher DNN 401, the noise label correction unit 208 compares the output of the teacher DNN estimation value calculation unit 204 with the label data supplied from the label reading unit 202, so that the input label is an erroneous label. This is because it guesses whether or not and corrects the wrong label.
  • the output of the DNN includes a random statistical error, because in the present embodiment, the student DNN 501 outputs a plurality of results, and the output integration unit 210 takes the statistical average of those outputs.
  • Embodiment 2 In the learning system of the second embodiment, the student DNN 501 receives the output from any layer other than the final layer in the teacher DNN 401.
  • FIG. 6 is a block diagram showing a configuration example of the learning system.
  • the learning system 600 of the second embodiment includes a data reading unit 201, a label reading unit 202, a teacher DNN feature amount extraction unit 203, a teacher DNN estimation value calculation unit 204, a student DNN feature amount extraction unit 205, and the like. It includes a student DNN estimation value calculation unit 206, a student DNN feature amount learning unit 207, a noise label correction unit 208, a student DNN learning unit 209, an output integration unit 210, and an output unit 211.
  • the learning system 600 further includes a student DNN intermediate feature learning unit 612.
  • the student DNN intermediate feature amount learning unit 612 inputs the output from any layer other than the final layer from the teacher DNN feature amount extraction unit 203 and the student DNN feature amount extraction unit 205.
  • the student DNN intermediate feature learning unit 612 calculates a function of their difference.
  • the student DNN intermediate feature learning unit 612 calculates a gradient that reduces the function of the difference and uses it to update the weight of the student DNN.
  • the configuration other than the student DNN intermediate feature amount learning unit 612 is the same as the configuration of the learning system 200 of the first embodiment.
  • FIG. 7 is an explanatory diagram showing an example of the DNN learning system of the second embodiment.
  • the learning system 700 of the present invention has the student DNN 701 and the teacher DNN 702, similarly to the learning system 300 shown in FIG. including.
  • the learning system 700 is the same system as the learning system 600 shown in FIG. 6, although the expression method is different.
  • Student DNN701 inputs data (training data) from the data reading unit 310.
  • the feature amount extraction unit 321 converts the data into a feature amount.
  • the estimated value calculation unit 331 converts the feature amount into the estimated value 341.
  • the teacher DNN702 inputs data (training data) from the data reading unit 310.
  • the feature amount extraction unit 322 converts the data into a feature amount.
  • the estimated value calculation unit 332 converts the feature amount into the estimated value 342.
  • the error signal calculation unit 750 calculates the error signal from the obtained feature amount of the final layer, the feature amount of the intermediate layer, and each estimated value.
  • the learning system 700 then updates the weights by backpropagation to update the network parameters of the student DNN701.
  • the learning system 600 performs the same processing as the processing of the learning system 200 of the first embodiment shown in the flowchart of FIG. However, in the present embodiment, the processes of steps S140 and S160 are different from the processes in the first embodiment.
  • step S140 the student DNN501 (specifically, the student DNN estimation value calculation unit 206) also executes a process of inputting a feature amount (intermediate feature amount) from the intermediate layer in the teacher DNN401.
  • the student DNN 501 inputs a feature amount from one or a plurality of predetermined intermediate layers.
  • step S160 the student DNN501 (specifically, the student DNN learning unit 209) also executes a process of comparing the feature amount from the intermediate layer in the teacher DNN401 with the feature amount from the intermediate layer in the student DNN501.
  • more knowledge of the teacher DNN401 can be transmitted to the student DNN501 by having the student DNN501 learn the intermediate feature amount of the teacher DNN401.
  • the learning systems 200 and 600 of each of the above embodiments can be applied to devices that handle regression problems.
  • the object detector is constructed with DNN
  • the position of the object can be treated as a regression problem.
  • the postures of the human body and objects can also be treated as regression problems.
  • Each function (each processing) in each of the above embodiments can be realized by a computer having a processor such as a CPU (Central Processing Unit) or a memory.
  • a program for carrying out the method (processing) in the above embodiment may be stored in a storage device (storage medium), and each function may be realized by executing the program stored in the storage device on the CPU. Good.
  • FIG. 8 is a block diagram showing an example of a computer having a CPU.
  • the computer is implemented in the learning system.
  • the CPU 1000 realizes each function in each of the above embodiments by executing the process according to the program stored in the storage device 1001. That is, the computer has the teacher DNN feature amount extraction unit 203, the teacher DNN estimated value calculation unit 204, the student DNN feature amount extraction unit 205, the student DNN estimated value calculation unit 206, and the student DNN feature amount shown in FIGS.
  • the functions of the learning unit 207, the noise label correction unit 208, the student DNN learning unit 209, and the output integration unit 210 are realized.
  • the storage device 1001 is, for example, a non-transitory computer readable medium.
  • Non-temporary computer-readable media include various types of tangible storage media. Specific examples of non-temporary computer-readable media include magnetic recording media (for example, hard disk drives), magneto-optical recording media (for example, magneto-optical disks), CD-ROMs (Compact Disc-Read Only Memory), and CD-Rs (CD-Rs). Compact Disc-Recordable), CD-R / W (Compact Disc-ReWritable), semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM).
  • magnetic recording media for example, hard disk drives
  • magneto-optical recording media for example, magneto-optical disks
  • CD-ROMs Compact Disc-Read Only Memory
  • CD-Rs Compact Disc-Recordable
  • CD-R / W Compact Disc-ReWritable
  • semiconductor memory for example, mask ROM, PROM (Pro
  • the program may also be stored on various types of temporary computer-readable media (transitory computer readable medium).
  • the program is supplied to the temporary computer-readable medium, for example, via a wired or wireless communication path, that is, via an electrical signal, an optical signal, or an electromagnetic wave.
  • the memory 1002 is realized by, for example, a RAM (Random Access Memory), and is a storage means for temporarily storing data when the CPU 1000 executes a process.
  • a mode in which a program held by the storage device 1001 or a temporary computer-readable medium is transferred to the memory 1002 and the CPU 1000 executes processing based on the program in the memory 1002 can be assumed.
  • FIG. 9 is a block diagram showing a main part of the learning system according to the present invention.
  • the learning system 800 includes a teacher DNN feature amount extraction means 801 (for example, a teacher DNN feature amount extraction unit 203) that extracts each feature amount of a plurality of training data, and a label corresponding to each of the plurality of training data.
  • teacher DNN estimate calculation means 802 for example, teacher DNN estimate calculation unit 204 for calculating an estimate
  • student DNN feature extraction means 803 for example, student DNN for extracting features of each of a plurality of training data.
  • the noise label correction means 805 for example, the noise label correction unit 208) for determining whether or not the label corresponding to the training data is a label containing noise based on the corresponding label and the first estimated value, and the noise are included.
  • An update means 806 that updates the weights in the student DNN so that there is no difference between the feature amount extracted by the teacher DNN feature amount extraction means 801 and the feature amount extracted by the student DNN feature amount extraction means 803 while reducing the influence of the label. (For example, student DNN learning department 209).
  • FIG. 10 is a block diagram showing a main part of the learning device according to the present invention.
  • the learning device 900 includes a student DNN feature amount extracting means 803 (for example, a student DNN feature amount extraction unit 205) that extracts a feature amount of input data, and a student DNN estimation that calculates a plurality of estimated values of labels corresponding to the input data.
  • the value calculation means 804 for example, the student DNN estimation value calculation unit 206) and the output integration means 807 (for example, the output integration unit 210) for integrating a plurality of estimated values are provided, and the weight of the student DNN feature amount extraction means 803 is increased.
  • the teacher DNN feature amount extraction means 801 (for example, the teacher DNN feature amount extraction unit 203) for extracting the feature amount of each of the plurality of training data, and the first estimated value of each label corresponding to each of the plurality of training data is calculated.
  • Teacher DNN estimate calculation means 802 (for example, teacher DNN estimate calculation unit 204), based on the label corresponding to the training data and the first estimated value, is the label corresponding to the training data a label containing noise?
  • It is updated by the teacher DNN910 including the update means 806 (eg, student DNN learning unit 209) that updates the weights in the student DNN so that there is no difference from the feature quantities extracted by the 803.
  • a learning system that uses a teacher DNN (Deep Neural Network) and a student DNN whose size is smaller than the size of the teacher DNN.
  • a teacher DNN feature extraction means for extracting features of each of a plurality of training data
  • a teacher DNN estimate calculation means for calculating the first estimate of each label corresponding to each of the plurality of training data
  • Student DNN feature extraction means for extracting features of each of the plurality of training data
  • a student DNN estimate calculation means for calculating a second estimate for each label corresponding to each of the plurality of training data
  • a noise label correcting means for determining whether or not the label corresponding to the training data is a label containing noise based on the label corresponding to the training data and the first estimated value.
  • the weight in the student DNN is set so that there is no difference between the feature amount extracted by the teacher DNN feature amount extracting means and the feature amount extracted by the student DNN feature amount extracting means.
  • a learning system characterized by having an update means for updating.
  • the updating means calculates the value of the function by reducing the influence of the label containing noise in the function representing the difference between the plurality of the first estimated values and the plurality of the second estimated values.
  • the learning system of Appendix 1 that updates the weights of the nodes in the layers constituting the student DNN according to the calculation result.
  • the updating means is the learning system of Appendix 2, which calculates a gradient that reduces the value of the function and updates the weight by the gradient descent method.
  • a learning device that uses student DNN.
  • Student DNN feature extraction means for extracting features of input data
  • a student DNN estimate calculation means that calculates a plurality of estimates of labels corresponding to the input data, and It is provided with an output integration means for integrating the plurality of estimates.
  • the weight of the student DNN feature extraction means Teacher DNN feature extraction means for extracting features of each of a plurality of training data,
  • a teacher DNN estimate calculation means for calculating the first estimate of each label corresponding to each of the plurality of training data.
  • a noise label correcting means for determining whether or not the label corresponding to the training data is a label containing noise based on the label corresponding to the training data and the first estimated value, and the influence of the label containing noise.
  • a teacher including an updating means for updating the weight in the student DNN so that there is no difference between the feature amount extracted by the teacher DNN feature amount extracting means and the feature amount extracted by the student DNN feature amount extracting means.
  • a learning device characterized by being updated by DNN.
  • a learning method using a teacher DNN and a student DNN having a size smaller than the size of the teacher DNN Each feature of a plurality of training data is extracted as a teacher DNN feature, A first estimate for each label corresponding to each of the plurality of training data was calculated. Each feature of the plurality of training data is extracted as a student DNN feature, A second estimate for each label corresponding to each of the plurality of training data was calculated. Based on the label corresponding to the training data and the first estimated value, it is determined whether or not the label corresponding to the training data is a label containing noise.
  • a learning method characterized in that the weight in the student DNN is updated so that the difference between the extracted teacher DNN feature amount and the student DNN feature amount disappears.
  • Appendix 7 In a function representing the difference between the plurality of first estimated values and the plurality of second estimated values, the influence of the label containing noise is reduced, the value of the function is calculated, and the value of the function is calculated according to the calculation result.
  • Appendix 8 The learning method of Appendix 7 in which a gradient for reducing the value of the function is calculated and the weight is updated by the gradient descent method.
  • the learning program The process of extracting the features of each of the multiple training data as the teacher DNN features, and The process of calculating the first estimated value of each label corresponding to each of the plurality of training data, and A process of extracting each feature of the plurality of training data as a student DNN feature, and The process of calculating the second estimated value of each label corresponding to each of the plurality of training data, and A process of determining whether or not the label corresponding to the training data is a label containing noise based on the label corresponding to the training data and the first estimated value.
  • a recording medium that causes a processor to execute a process of updating weights in the student DNN so that there is no difference between the extracted teacher DNN feature amount and the student DNN feature amount.
  • the learning program is The value of the function is calculated by reducing the influence of the label containing the noise in the function representing the difference between the plurality of the first estimated values and the plurality of the second estimated values, and the student according to the calculation result.
  • the recording medium of Appendix 10 which causes a processor to execute a process of updating the weights of nodes in the layers constituting the DNN.
  • the learning program is The recording medium of Appendix 11 which calculates a gradient that reduces the value of the function and causes the processor to execute a process of updating the weight by the gradient descent method.
  • the learning program is A recording medium according to any one of Appendix 10 to Appendix 12, which causes a processor to execute a process of correcting the label when it is determined that the label corresponding to the training data is a label containing noise.
  • Appendix 15 The computer calculates the value of the function by reducing the influence of the label containing noise in the function representing the difference between the plurality of first estimated values and the plurality of second estimated values.
  • the learning program of Appendix 14 for executing a process of updating the weights of nodes in the layer constituting the student DNN according to the result.
  • Appendix 16 To the computer The learning program of Appendix 15 that calculates a gradient that reduces the value of the function and executes a process of updating the weight by the gradient descent method.

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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

学習システム800は、複数の訓練データの各々の特徴量を抽出する教師DNN特徴量抽出手段801と、複数の訓練データの各々に対応する各ラベルの第1推定値を計算する教師DNN推定値計算手段802と、複数の訓練データの各々の特徴量を抽出する生徒DNN特徴量抽出手段803と、複数の訓練データの各々に対応する各ラベルの第2推定値を計算する生徒DNN推定値計算手段804と、訓練データに対応するラベルと第1推定値とに基づいて、訓練データに対応するラベルがノイズを含むラベルであるか否か判定するノイズラベル修正手段805と、ノイズを含むラベルの影響を低下させながら、教師DNN特徴量抽出手段801が抽出した特徴量と生徒DNN特徴量抽出手段803が抽出した特徴量との差がなくなるように生徒DNNにおける重みを更新する更新手段806とを含む。

Description

学習システム、学習装置、および学習方法
 本発明は、ディープニューラルネットワークを含む学習システムおよび学習装置、ならびに、ディープニューラルネットワークを用いる学習方法に関する。
 ディープニューラルネットワーク(以下、DNN(Deep Neural Network )は、中間層が複数の層からなるニューラルネットワークである。DNNの一例として、2以上の隠れレイヤを有するCNN(Convolutional Neural Network)がある。
 DNNにおいて、多くのパラメータが使用される。それに起因して、DNNを実現する計算機での計算量が多くなる。その結果、計算機の能力(演算速度や記憶容量)が比較的低い携帯端末などにDNNを適用することは難しい。
 計算コストを下げるために、すなわち、計算量を減らすために、隠れレイヤの数を減らしたり、隠れレイヤにおけるノード数を減らしてDNNの次元数を減らすことが考えられる。隠れレイヤの数やノード数が減ることによって、DNNモデルのサイズを小さくすることができる。しかし、DNNモデルのサイズが小さくなることによって計算量は少なくなるが、DNNの精度は低下する。
 精度の低下を押さえつつ計算コストを下げる手法として、モデル圧縮としての蒸留という手法がある。蒸留では、まず、例えば教師あり学習の方法でモデルが訓練され、教師モデルが作成される。次いで、教師モデルとは別のよりサイズが小さいモデルである生徒モデルが、教師モデルの出力を正解ラベルの代わりに使用して訓練される(例えば、特許文献1参照)。
 なお、非特許文献1にも、蒸留が紹介されている。
特表2017-531255号公報
G. Chen et al., "Learning Efficient Object Detection Models with Knowledge Distillation", 31st International Conference on Neural Information Processing Systems (NIPS2017)
 教師データにおいて、ラベルにノイズが含まれることがある。ノイズが含まれた教師データは、DNNの精度に影響を与える。特許文献1には、教師モデルの出力を正解ラベルの代わりに使用して訓練された生徒モデルが記載されているが、特許文献1において、ノイズが含まれた教師データは、考慮されていない。
 非特許文献1にも、教師モデルの出力を正解ラベルの代わりに使用して訓練された生徒モデルが記載されている。しかし、非特許文献1において、ノイズが含まれた教師データに対する対応策は検討されていない。
 本発明は、教師DNNが学んだ情報を効率よく生徒DNNに学習させることができる学習システム、学習装置、および学習方法を提供することを目的とする。
 本発明による学習システムは、教師DNNと、教師DNNのサイズよりも小さいサイズの生徒DNNとを使用する学習システムであって、複数の訓練データの各々の特徴量を抽出する教師DNN特徴量抽出手段と、複数の訓練データの各々に対応する各ラベルの第1推定値を計算する教師DNN推定値計算手段と、複数の訓練データの各々の特徴量を抽出する生徒DNN特徴量抽出手段と、複数の訓練データの各々に対応する各ラベルの第2推定値を計算する生徒DNN推定値計算手段と、訓練データに対応するラベルと第1推定値とに基づいて、訓練データに対応するラベルがノイズを含むラベルであるか否か判定するノイズラベル修正手段と、ノイズを含むラベルの影響を低下させながら、教師DNN特徴量抽出手段が抽出した特徴量と生徒DNN特徴量抽出手段が抽出した特徴量との差がなくなるように生徒DNNにおける重みを更新する更新手段とを含む。
 本発明による学習装置は、生徒DNNを使用する学習装置であって、入力データの特徴量を抽出する生徒DNN特徴量抽出手段と、入力データに対応するラベルの複数の推定値を計算する生徒DNN推定値計算手段と、複数の推定値を統合する出力統合手段とを備え、生徒DNN特徴量抽出手段の重みが、複数の訓練データの各々の特徴量を抽出する教師DNN特徴量抽出手段、複数の訓練データの各々に対応する各ラベルの第1推定値を計算する教師DNN推定値計算手段、訓練データに対応するラベルと第1推定値とに基づいて、訓練データに対応するラベルがノイズを含むラベルであるか否か判定するノイズラベル修正手段、およびノイズを含むラベルの影響を低下させながら、教師DNN特徴量抽出手段が抽出した特徴量と生徒DNN特徴量抽出手段が抽出した特徴量との差がなくなるように生徒DNNにおける重みを更新する更新手段を含む教師DNNによって更新される。
 本発明による学習方法は、教師DNNと、教師DNNのサイズよりも小さいサイズの生徒DNNとを使用する学習方法であって、複数の訓練データの各々の特徴量を教師DNN特徴量として抽出し、複数の訓練データの各々に対応する各ラベルの第1推定値を計算し、複数の訓練データの各々の特徴量を生徒DNN特徴量として抽出し、複数の訓練データの各々に対応する各ラベルの第2推定値を計算し、訓練データに対応するラベルと第1推定値とに基づいて、訓練データに対応するラベルがノイズを含むラベルであるか否か判定し、抽出された教師DNN特徴量と生徒DNN特徴量との差がなくなるように生徒DNNにおける重みを更新する。
 本発明による記録媒体は、学習プログラムが格納されたコンピュータ読み取り可能な記録媒体であって、学習プログラムは、複数の訓練データの各々の特徴量を教師DNN特徴量として抽出する処理と、複数の訓練データの各々に対応する各ラベルの第1推定値を計算する処理と、複数の訓練データの各々の特徴量を生徒DNN特徴量として抽出する処理と、複数の訓練データの各々に対応する各ラベルの第2推定値を計算する処理と、訓練データに対応するラベルと第1推定値とに基づいて、訓練データに対応するラベルがノイズを含むラベルであるか否か判定する処理と、抽出された教師DNN特徴量と生徒DNN特徴量との差がなくなるように生徒DNNにおける重みを更新する処理とをプロセッサに実行させる。
 本発明によれば、教師DNNが学んだ情報を効率よく生徒DNNに学習させることができる。
第1の実施形態の学習システムの構成例を示すブロック図である。 第1の実施形態における教師DNNから生徒DNNを学習させる例を示す説明図である。 教師DNNモデルの例を示す説明図である。 生徒DNNモデルの例を示す説明図である。 第1の実施形態の学習システムの動作を示すフローチャートである。 第2の実施形態の学習システムの構成例を示すブロック図である。 第2の実施形態における教師DNNから生徒DNNを学習させる例を示す説明図である。 CPUを有するコンピュータの一例を示すブロック図である 学習システムの主要部を示すブロック図である。 学習装置の主要部を示すブロック図である。
実施形態1.
 以下、本発明の第1の実施形態を、図面を参照して説明する。第1の実施形態の学習システムは、蒸留の手法が適用された学習システムである。
 図1は、学習システムの構成例を示すブロック図である。本実施形態の学習システム200は、データ読み込み部201と、ラベル読み込み部202と、教師DNN特徴量抽出部203と、教師DNN推定値計算部204と、生徒DNN特徴量抽出部205と、生徒DNN推定値計算部206と、生徒DNN特徴量学習部207と、ノイズラベル修正部208と、生徒DNN学習部209と、出力統合部210と、出力部211とを含む。
 データ読み込み部201には、例えば画像や音声、文章等のデータが入力される。なお、入力されたデータは、一時的にメモリに保存される。その後、データ読み込み部201は、教師DNN特徴量抽出部203および生徒DNN特徴量抽出部205に、入力されたデータを出力する。
 ラベル読み込み部202には、データ読み込み部201に入力されたデータに対応するラベルが入力される。なお、入力されたラベルは、一時的にメモリに保存される。ラベル読み込み部202は、ノイズラベル修正部208および生徒DNN学習部209に、入力されたラベルを出力する。
 教師DNN特徴量抽出部203は、データ読み込み部201から入力されたデータをスカラ配列の特徴量に変換する。
 教師DNN推定値計算部204は、教師DNN特徴量抽出部203から入力されるスカラ配列の特徴量を用いてラベル推定値を計算する。
 生徒DNN特徴量抽出部205は、教師DNN特徴量抽出部203と同様に、データ読み込み部201から入力されたデータをスカラ配列の特徴量に変換する。
 生徒DNN推定値計算部206は、生徒DNN特徴量抽出部205から入力されるスカラ配列の特徴量を用いてラベル推定値を計算する。生徒DNN推定値計算部206は、統計平均のために複数の推定値を出力する。生徒DNN推定値計算部206は、ノイズラベル修正部208からの出力の推定値や、教師DNN推定値計算部204からの出力の推定値等を出力する。
 生徒DNN特徴量学習部207は、教師DNN特徴量抽出部203と生徒DNN特徴量抽出部205とのそれぞれから特徴量を受け取り、それらの差の関数を計算する。そして、生徒DNN特徴量学習部207は、関数の値を小さくする勾配を計算する。勾配は、生徒DNNの重みを更新するために用いられる。
 ノイズラベル修正部208は、ラベル読み込み部202から入力されたラベル値と、教師DNN推定値計算部204から入力されるラベル推定値とを比較する。ノイズラベル修正部208は、ラベル値とラベル推定値との差が大きなラベルを誤っているラベル(ノイズを含むラベル)と見なす。
 ノイズラベル修正部208は、誤っているラベルを修正する。修正方法として、例えば、教師DNN推定値計算部204から入力されるラベル推定値をそのまま修正ラベルとして用いることが考えられる。なお、修正方法は、教師DNN推定値計算部204からのラベル推定値をそのまま修正ラベルとして用いる方法に限定されず、他の方法が用いられてもよい。
 生徒DNN学習部209は、ラベル読み込み部202からラベルを入力し、教師DNN推定値計算部204からラベル推定値を入力し、ノイズラベル修正部208から修正ラベルを入力する。また、生徒DNN学習部209は、生徒DNN推定値計算部206からラベル推定値を入力する。生徒DNN学習部209は、例えば、修正ラベルを参照しつつ、教師DNN推定値計算部204からのラベル推定値と生徒DNN推定値計算部206からのラベル推定値(教師DNN推定値計算部204からの出力の推定値)との差を計算する。生徒DNN学習部209は、関数の値を小さくする勾配を計算し、生徒DNNの重みの更新に用いる。関数として、例えば、平均二乗誤差、平均絶対値誤差、Wing-Lossが使用可能である。
 出力統合部210は、生徒DNN推定値計算部206から出力を受け取り、その値を統合する。統合方法として、例えば統計平均がある。
 出力部211は、訓練フェーズ(学習フェーズ)が終了した後の運用(適用フェーズ)時に、出力統合部210からの出力を入力し、生徒DNNの推定値として出力する。
 なお、出力統合部210および出力部211は、適用フェーズで活用されるので、訓練フェーズでは存在しなくてもよい。
 また、教師DNN(教師DNN特徴量抽出部203および教師DNN推定値計算部204が含まれる。)は、要求される精度を学習で実現するのに十分な数のパラメータを持つ比較的大きなサイズのDNNモデルである。教師モデルとして、一例として、チャンネル数の多いResNetやWider ResNetが使用可能である。DNNモデルのサイズは、例えば、パラメータ数に相当するが、層数、特徴マップサイズ、カーネルサイズに相当してもよい。
 また、生徒DNN(生徒DNN特徴量抽出部205、生徒DNN推定値計算部206、生徒DNN特徴量学習部207および生徒DNN学習部209を含む。)のサイズは、教師DNNのサイズよりも小さい。例えば、生徒DNNにおけるパラメータ数は比較的少ない。生徒DNNにおけるパラメータ数は、教師DNNにおけるパラメータ数よりも少ない。生徒DNNは、例えば、実装が想定されるデバイスに実際に実装されることが可能な程度の小さなサイズのDNNモデルである。生徒DNN501として、一例として、Mobile Netやチャンネル数を十分減少させたResNetやWider ResNetが考えられる。
 図2は、教師DNNから生徒DNNを学習させる例を示す説明図である。図2を参照して、パラメータ数が多い教師DNNの出力を正解ラベルの代わりに使用して、パラメータ数が小さい生徒DNNを訓練する(学習させる)例を説明する。
 学習システム300において、生徒DNN301は、データ読み込み部310からデータを入力する。特徴量抽出部321は、データを特徴量に変換する。推定値計算部331は、特徴量を推定値341に変換する。データ読み込み部310、特徴量抽出部321および推定値計算部331は、図1に示された学習システム200におけるデータ読み込み部201、生徒DNN特徴量抽出部205および生徒DNN推定値計算部206に対応する。すなわち、学習システム300は、表現方法が異なっているが、図1に示された学習システム200と同様のシステムである。
 また、教師DNN302は、データ読み込み部310からデータを入力する。特徴量抽出部322は、データを特徴量に変換する。推定値計算部332は、特徴量を推定値342に変換する。データ読み込み部310、特徴量抽出部322および推定値計算部332は、図1に示された学習システム200におけるデータ読み込み部201、教師DNN特徴量抽出部203および教師DNN推定値計算部204に対応する。
 学習システム300において、誤差信号計算部350は、得られた各特徴量と、変換された各推定値とから誤差信号を計算する。そして、学習システム300は、生徒DNN301のネットワークパラメータを更新するための逆伝搬によって重みを更新する。
 なお、図1に示された学習システム200では、誤差信号計算部350の処理は、生徒DNN学習部209によって実行される。
 図3は、教師DNNモデルの例を示す説明図である。
 教師DNNモデル400における教師DNN401は、特徴量抽出部406と、推定値計算部407とを含む。特徴量抽出部406は、複数の隠れレイヤ404を含む。隠れレイヤは、複数のノード403からなる。各ノードは、対応する重みパラメータを有する。重みパラメータは学習により更新される。
 データは、データ読み込み部402から供給される。特徴量抽出部406によって抽出された特徴量は、特徴量抽出部406の最終層から推定値計算部407に出力される。推定値計算部407は、入力した特徴量をラベル推定値405に変換する。
 なお、データ読み込み部402、特徴量抽出部406および推定値計算部407は、図1に示された学習システム200におけるデータ読み込み部201、教師DNN特徴量抽出部203および教師DNN推定値計算部204に対応する。
 図4は、生徒DNNモデルの例を示す説明図である。
 生徒DNNモデル500における生徒DNN501は、特徴量抽出部506と、推定値計算部507とを含む。特徴量抽出部506は、複数の隠れレイヤ504を含む。隠れレイヤは、複数のノード503からなる。各ノードは、対応する重みパラメータを有する。重みパラメータは学習により更新される。
 特徴量抽出部506によって抽出された特徴量は、特徴量抽出部506の最終層から推定値計算部507に出力される。推定値計算部507は、入力した特徴量を複数のラベル推定値505に変換する。
 なお、データ読み込み部502、特徴量抽出部506および推定値計算部507は、図1に示された学習システム200におけるデータ読み込み部201、生徒DNN特徴量抽出部205および生徒DNN推定値計算部206に対応する
 次に、図5のフローチャートを参照して第1の実施形態の学習システム300の動作を説明する。
 まず、学習システム300は、第1DNNモデルを教師DNNモデルとして決定する(ステップS110)。図1に示された構成例では、教師DNNには、教師DNN特徴量抽出部203および教師DNN推定値計算部204が含まれる。
 次に、学習システム300は、第2DNNモデルを生徒DNNモデルとして初期化する(ステップS120)。初期化に際して、例えば、平均0、分散1の正規分布する乱数を用いて初期値を与える。図1に示された学習システム200では、生徒DNNモデルには、生徒DNN特徴量抽出部205、生徒DNN推定値計算部206、生徒DNN特徴量学習部207および生徒DNN学習部209が含まれる。
 そして、学習システム300は、1組のラベル付き訓練データを、教師DNNモデルと生徒DNNモデルとの入力として受け取る(ステップS130)。図1に示された学習システム200では、データ読み込み部201およびラベル読み込み部202が、ラベル付き訓練データを入力する。なお、データ読み込み部201とラベル読み込み部202とは、一体化されていてもよい。また、以下の説明において、訓練データは、ラベル付き訓練データを意味する。
 学習システム300において、教師DNN401および生徒DNN501は、受け取った訓練データの部分集合を使用して、出力の計算を行う(ステップS140)。
 図1に示された学習システム200では、教師DNN推定値計算部204の出力が、教師DNN401の出力に相当する。また、生徒DNN推定値計算部206の出力が、生徒DNN501の出力に相当する。
 次に、学習システム300において、教師DNN401の出力を用いて訓練データの誤ったラベルデータ(ノイズラベル)が判定される (ステップS150)。図1に示された学習システム200では、ノイズラベル修正部208が、訓練データにおけるラベルが誤っているか否か判定する。
 学習システム300において、生徒DNN501の出力が、教師DNN401の出力および修正された訓練データのラベル(修正ラベル)と比較されることによって評価される(ステップS160)。図1に示された学習システム200では、生徒DNN学習部209が、評価を行う。
 学習システム300において、ある判定基準を用いてステップS140~ステップS160の処理を繰り返すか否か決定される(ステップS165)。判定基準として、例えば生徒DNN501の出力とラベルとの平均二乗誤差を計算し、その値があるしきい値を上回る(または、下回る)ことが考えられる。図1に示された学習システム200では、生徒DNN学習部209が、ステップS165の判定処理を実行する。
 ステップS165において、繰り返すと判定された場合には、学習システム300において、評価に基づいて生徒DNN501の重みパラメータ(具体的には、生徒DNN特徴量抽出部205を構成するレイヤにおけるノードの重み)が更新される(ステップS170)。ステップS165において、繰り返すと判定されなかった場合、すなわち、訓練を終了すると判定された場合には、学習システム300は、訓練された生徒DNN501を提供する(ステップS180)。
 なお、例えば携帯端末などのデバイスにDNNが実装される場合には、生徒DNNモデル500が実装の対象である。訓練された生徒DNN501を提供するということは、デバイスに実行可能な生徒DNN501が決定されたことを意味する。
 次に、図1を参照して、より具体的な実施例を説明する。
 回帰問題として学習させたいデータセットとラベルとを用意する。そしてデータセットを学習させるのに十分に大きなサイズの第1DNNモデルを教師モデルとして採用し学習をさせる。
 教師モデルには、例えば乱数や何らかのデータセットを用いて学習済みの重みが初期値として設定されている。学習時に、データセットの部分集合が教師DNN特徴量抽出部203に与えられる。教師DNN推定値計算部204からの出力値youtputと、ラベルの値ylabelとが比較される。出力値youtputとラベルの値ylabelとの差の関数、例えば平均二乗誤差(Σ(youtput-ylabel/N)が計算される。なお、比較の処理および計算の処理は、例えば、図1には示されていない教師特徴量学習部によって実行される。
 そして、関数の値を減少させる方向に、誤差逆伝播等を用いて勾配が計算され、確率的勾配降下法等によって重みパラメータが更新される。勾配の計算および重みパラメータの更新の処理は、ある判定基準、例えば出力とラベルの平均二乗誤差があるしきい値以下になるまで続けられる。以上の処理によって教師DNN401が得られる。なお、勾配の計算および重みパラメータの更新の処理は、例えば、図1には示されていない教師特徴量学習部によって実行される。
 生徒DNN501にも、教師DNN401と同様に乱数や何らかのデータセットを用いて学習済みの重みが初期値として設定されている。
 学習時に、データセットの部分集合が、教師DNN特徴量抽出部203と生徒DNN特徴量抽出部205とに与えられる。教師DNN特徴量抽出部203および生徒DNN特徴量抽出部205の最終層(図3参照)の値zteacher、zstudentと、教師DNN推定値計算部204および生徒DNN推定値計算部206の出力yteacher、ystudent,iとが計算される。生徒DNN推定値計算部206は、複数のデータを出力するので、出力の値に添え字iが付されている。
 生徒DNN特徴量学習部207は、zteacher、zstudentの差の関数、例えば平均二乗誤差(Σ(zstudent-zteacher/N)を計算する。なお、生徒DNN特徴量学習部207は、教師DNN401と生徒DNN501との各特徴量出力zteacher、zstudentの出力の次元が異なる場合は、両者の次元を揃える。例えば、生徒DNN特徴量学習部207は、適当なCNNを教師DNNの特徴量出力に作用させる。例えば、次元を揃えることが意図される中間層の出力を畳み込み層に供給し、畳み込み演算によって次元が調整される。
 教師DNN推定値計算部204の出力は、ノイズラベル修正部208においてラベルの修正に用いられる。ノイズラベルであるか否かを判定する場合、例えば教師DNN401の推定値とラベルの値とを比較し、差があるしきい値より小さければ正しいラベルであるとみなし、差があるしきい値より大きいときには誤ったラベル(ノイズラベル)であると見なす方法がある。
 生徒DNN学習部209は、例えばi=1の生徒DNN推定値計算部206の出力ystudent,1と、教師DNN推定値計算部204の出力yteacherとの平均二乗誤差(Σ(ystudent,1-yteacher/N)を計算する。また、生徒DNN学習部209は、i=2の生徒DNN推定値計算部206の出力ystudent,2とラベルの値ylabelとの差の関数を、ノイズラベル修正部208の結果を反映して計算する。
 例えば、生徒DNN学習部209は、重み付き平均二乗誤差(Σw(y student,1-y teacher/N)を計算し、誤ったラベルと判定されたラベルに対して重みw=0を、それ以外のラベルに対してw=1を設定する。
 その後、生徒DNN学習部209は、計算された複数の差の関数の値を減少させる方向に、誤差逆伝播等を用いて勾配を計算する。また、生徒DNN学習部209は、確率的勾配降下法等により重みパラメータを更新する。以上のように、生徒DNN学習部209は、ノイズを含むラベルの影響を低下させながら、教師DNN特徴量抽出部203が抽出した特徴量と生徒DNN特徴量抽出部205が抽出した特徴量との差がなくなるように生徒DNNにおける重みを更新する。
 なお、重みパラメータの更新に関する処理は、ある判定基準、例えば出力とラベルの平均二乗誤差があるしきい値以下になるまで続けられる。以上のような処理によって生徒DNN501が得られる。
 学習が終了した後に、生徒DNN501が推定値を出力するときには、出力統合部210は、例えば出力の統計平均を計算する。出力部211は、それを最終推定値として出力する。
 次に、第1の実施形態の学習システムの効果を説明する。
 本実施形態では、生徒DNN501は、生徒DNN特徴量学習部207を用いて、生徒DNN特徴量抽出部205の出力を教師DNN特徴量抽出部203の出力を再現するように学習する。その結果、学習システムは、教師DNNの学んだ情報を効率よく生徒DNNに学習させることができる。一般に、教師DNN401を再現するように生徒DNN501を学習させる場合、教師DNN401のどの出力を学習させるかについて自由度がある。DNNの特徴量抽出部の最終層の出力は、線形回帰装置の場合の基底ベクトルに相当する。基底ベクトルを再現できることは、教師DNN401の特徴抽出器が完全に再現されたことを意味する。基底ベクトルを再現できれば、一般に学習は容易である。
 また、誤ったラベルに起因する学習の困難を減らすことが可能になる。なぜなら、教師DNN401は、学習の過程で訓練データのラベルの正誤を暗に学習する。そして、教師DNN401において、ノイズラベル修正部208が、教師DNN推定値計算部204の出力とラベル読み込み部202から供給されたラベルデータとを比較することによって、入力されたラベルが誤ったラベルである否か推測し、誤ったラベルを修正するからである。
 さらに、生徒DNN501の出力の統計的誤差を減らすことが可能になる。一般に、DNNの出力には、ランダムな統計的誤差が含まれるが、本実施形態では、生徒DNN501は複数の結果が出力され、出力統合部210がそれらの出力の統計平均を取るからである。
実施形態2.
 第2の実施形態の学習システムでは、生徒DNN501は、教師DNN401における最終層以外の任意の層からの出力を受け取る。
 本実施形態による学習システムの構成を説明する。図6は、学習システムの構成例を示すブロック図である。第2の実施形態の学習システム600は、データ読み込み部201と、ラベル読み込み部202と、教師DNN特徴量抽出部203と、教師DNN推定値計算部204と、生徒DNN特徴量抽出部205と、生徒DNN推定値計算部206と、生徒DNN特徴量学習部207と、ノイズラベル修正部208と、生徒DNN学習部209と、出力統合部210と、出力部211とを含む。学習システム600は、さらに、生徒DNN中間特徴量学習部612を含む。
 生徒DNN中間特徴量学習部612は、教師DNN特徴量抽出部203と、生徒DNN特徴量抽出部205とから最終層以外の任意の層からの出力を入力する。生徒DNN中間特徴量学習部612は、それらの差の関数を計算する。生徒DNN中間特徴量学習部612は、その差の関数を小さくする勾配を計算し、生徒DNNの重みの更新に用いる。
 生徒DNN中間特徴量学習部612以外の構成は、第1の実施形態の学習システム200の構成と同じである。
 図7は、第2の実施形態のDNNの学習システムの例を示す説明図である本発明の学習システム700は、図2に示された学習システム300と同様に、生徒DNN701と、教師DNN702とを含む。なお、学習システム700は、表現方法が異なっているが、図6に示された学習システム600と同様のシステムである。
 図7を参照して、パラメータ数が多い教師DNNの出力を正解ラベルの代わりに使用して、パラメータ数が小さい生徒DNNを訓練する(学習させる)例を説明する。
 生徒DNN701は、データ読み込み部310からデータ(訓練データ)を入力する。特徴量抽出部321は、データを特徴量に変換する。推定値計算部331は、特徴量を推定値341に変換する。
 教師DNN702は、データ読み込み部310からデータ(訓練データ)を入力する。特徴量抽出部322は、データを特徴量に変換する。推定値計算部332は、特徴量を推定値342に変換する。
 学習システム700において、誤差信号計算部750は、得られた最終層の特徴量と、中間層の特徴量と、各推定値とから誤差信号を計算する。そして、学習システム700は、生徒DNN701のネットワークパラメータを更新するための逆伝搬によって重みを更新する。
 学習システム600は、図5のフローチャートに示された第1の実施形態の学習システム200の処理と同様の処理を行う。ただし、本実施形態では、ステップS140,S160の処理が、第1の実施形態における処理とは異なる。
 すなわち、ステップS140で、生徒DNN501(具体的には、生徒DNN推定値計算部206)は、教師DNN401における中間層から特徴量を(中間特徴量)入力する処理も実行する。教師DNN401において複数の中間層が存在する場合には、生徒DNN501は、あらかじめ定められた1または複数の中間層から特徴量を入力する。
 また、ステップS160で、生徒DNN501(具体的には、生徒DNN学習部209)は、教師DNN401における中間層から特徴量と、生徒DNN501における中間層から特徴量とを比較する処理も実行する。
 本実施形態では、教師DNN401の中間特徴量を生徒DNN501に学習させることによって、より多くの教師DNN401の知識を生徒DNN501に伝えることができる。
 上記の各実施形態の学習システム200,600は、回帰問題を取り扱うデバイスに適用可能である。一例として、物体検出器をDNNで構築する場合、物体の位置を回帰問題として取り扱うことができる。また、人体、物体の姿勢も回帰問題として取り扱うことが可能である。
 上記の各実施形態における各機能(各処理)を、CPU(Central Processing Unit )等のプロセッサやメモリ等を有するコンピュータで実現可能である。例えば、記憶装置(記憶媒体)に上記の実施形態における方法(処理)を実施するためのプログラムを格納し、各機能を、記憶装置に格納されたプログラムをCPUで実行することによって実現してもよい。
 図8は、CPUを有するコンピュータの一例を示すブロック図である。コンピュータは、学習システムに実装される。CPU1000は、記憶装置1001に格納されたプログラムに従って処理を実行することによって、上記の各実施形態における各機能を実現する。すなわち、コンピュータは、図1,図7に示された教師DNN特徴量抽出部203、教師DNN推定値計算部204、生徒DNN特徴量抽出部205、生徒DNN推定値計算部206、生徒DNN特徴量学習部207、ノイズラベル修正部208、生徒DNN学習部209、および出力統合部210の機能を実現する。
 記憶装置1001は、例えば、非一時的なコンピュータ可読媒体(non-transitory computer readable medium )である。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium )を含む。非一時的なコンピュータ可読媒体の具体例として、磁気記録媒体(例えば、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Compact Disc-Read Only Memory )、CD-R(Compact Disc-Recordable )、CD-R/W(Compact Disc-ReWritable )、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM )、フラッシュROM)がある。
 また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium )に格納されてもよい。一時的なコンピュータ可読媒体には、例えば、有線通信路または無線通信路を介して、すなわち、電気信号、光信号または電磁波を介して、プログラムが供給される。
 メモリ1002は、例えばRAM(Random Access Memory)で実現され、CPU1000が処理を実行するときに一時的にデータを格納する記憶手段である。メモリ1002に、記憶装置1001または一時的なコンピュータ可読媒体が保持するプログラムが転送され、CPU1000がメモリ1002内のプログラムに基づいて処理を実行するような形態も想定しうる。
 図9は、本発明による学習システムの主要部を示すブロック図である。学習システム800は、複数の訓練データの各々の特徴量を抽出する教師DNN特徴量抽出手段801(例えば、教師DNN特徴量抽出部203)と、複数の訓練データの各々に対応する各ラベルの第1推定値を計算する教師DNN推定値計算手段802(例えば、教師DNN推定値計算部204)と、複数の訓練データの各々の特徴量を抽出する生徒DNN特徴量抽出手段803(例えば、生徒DNN特徴量抽出部205)と、複数の訓練データの各々に対応する各ラベルの第2推定値を計算する生徒DNN推定値計算手段804(例えば、生徒DNN推定値計算部206)と、訓練データに対応するラベルと第1推定値とに基づいて、訓練データに対応するラベルがノイズを含むラベルであるか否か判定するノイズラベル修正手段805(例えば、ノイズラベル修正部208)と、ノイズを含むラベルの影響を低下させながら、教師DNN特徴量抽出手段801が抽出した特徴量と生徒DNN特徴量抽出手段803が抽出した特徴量との差がなくなるように生徒DNNにおける重みを更新する更新手段806(例えば、生徒DNN学習部209)とを備える。
 図10は、本発明による学習装置の主要部を示すブロック図である。学習装置900は、入力データの特徴量を抽出する生徒DNN特徴量抽出手段803(例えば、生徒DNN特徴量抽出部205)と、入力データに対応するラベルの複数の推定値を計算する生徒DNN推定値計算手段804(例えば、生徒DNN推定値計算部206)と、複数の推定値を統合する出力統合手段807(例えば、出力統合部210)とを備え、生徒DNN特徴量抽出手段803の重みが、複数の訓練データの各々の特徴量を抽出する教師DNN特徴量抽出手段801(例えば、教師DNN特徴量抽出部203)、複数の訓練データの各々に対応する各ラベルの第1推定値を計算する教師DNN推定値計算手段802(例えば、教師DNN推定値計算部204)、訓練データに対応するラベルと第1推定値とに基づいて、訓練データに対応するラベルがノイズを含むラベルであるか否か判定するノイズラベル修正手段805(例えば、ノイズラベル修正部208)、およびノイズを含むラベルの影響を低下させながら、教師DNN特徴量抽出手段801が抽出した特徴量と生徒DNN特徴量抽出手段803が抽出した特徴量との差がなくなるように生徒DNNにおける重みを更新する更新手段806(例えば、生徒DNN学習部209)を含む教師DNN910によって更新される。
 上記の実施形態の一部または全部は、以下の付記のようにも記載され得るが、以下に限定されるわけではない。
(付記1)教師DNN(Deep Neural Network )と、該教師DNNのサイズよりも小さいサイズの生徒DNNとを使用する学習システムであって、
 複数の訓練データの各々の特徴量を抽出する教師DNN特徴量抽出手段と、
 複数の前記訓練データの各々に対応する各ラベルの第1推定値を計算する教師DNN推定値計算手段と、
 複数の前記訓練データの各々の特徴量を抽出する生徒DNN特徴量抽出手段と、
 複数の前記訓練データの各々に対応する各ラベルの第2推定値を計算する生徒DNN推定値計算手段と、
 前記訓練データに対応するラベルと前記第1推定値とに基づいて、前記訓練データに対応するラベルがノイズを含むラベルであるか否か判定するノイズラベル修正手段と、
 前記ノイズを含むラベルの影響を低下させながら、前記教師DNN特徴量抽出手段が抽出した特徴量と前記生徒DNN特徴量抽出手段が抽出した特徴量との差がなくなるように前記生徒DNNにおける重みを更新する更新手段と
 を備えることを特徴とする学習システム。
(付記2)前記更新手段は、複数の前記第1推定値と複数の前記第2推定値との差を表す関数において前記ノイズを含むラベルの影響を低下させて、前記関数の値を計算し、計算結果に応じて、前記生徒DNNを構成するレイヤにおけるノードの重みを更新する
 付記1の学習システム。
(付記3)前記更新手段は、前記関数の値を小さくする勾配を計算し、勾配降下法で重みを更新する
 付記2の学習システム。
(付記4)前記ノイズラベル修正手段は、前記訓練データに対応するラベルがノイズを含むラベルであると判定したときに、該ラベルを修正する
 付記1から付記3のいずれかの学習システム。
(付記5)生徒DNNを使用する学習装置であって、
 入力データの特徴量を抽出する生徒DNN特徴量抽出手段と、
 前記入力データに対応するラベルの複数の推定値を計算する生徒DNN推定値計算手段と、
 前記複数の推定値を統合する出力統合手段とを備え、
 前記生徒DNN特徴量抽出手段の重みが、
 複数の訓練データの各々の特徴量を抽出する教師DNN特徴量抽出手段、
 複数の前記訓練データの各々に対応する各ラベルの第1推定値を計算する教師DNN推定値計算手段、
 前記訓練データに対応するラベルと前記第1推定値とに基づいて、前記訓練データに対応するラベルがノイズを含むラベルであるか否か判定するノイズラベル修正手段、および
 前記ノイズを含むラベルの影響を低下させながら、前記教師DNN特徴量抽出手段が抽出した特徴量と前記生徒DNN特徴量抽出手段が抽出した特徴量との差がなくなるように前記生徒DNNにおける重みを更新する更新手段を含む教師DNNによって更新される
 ことを特徴とする学習装置。
(付記6)教師DNNと、該教師DNNのサイズよりも小さいサイズの生徒DNNとを使用する学習方法であって、
 複数の訓練データの各々の特徴量を教師DNN特徴量として抽出し、
 複数の前記訓練データの各々に対応する各ラベルの第1推定値を計算し、
 複数の前記訓練データの各々の特徴量を生徒DNN特徴量として抽出し、
 複数の前記訓練データの各々に対応する各ラベルの第2推定値を計算し、
 前記訓練データに対応するラベルと前記第1推定値とに基づいて、前記訓練データに対応するラベルがノイズを含むラベルであるか否か判定し、
 抽出された教師DNN特徴量と前記生徒DNN特徴量との差がなくなるように前記生徒DNNにおける重みを更新する
 ことを特徴とする学習方法。
(付記7)複数の前記第1推定値と複数の前記第2推定値との差を表す関数において前記ノイズを含むラベルの影響を低下させて、前記関数の値を計算し、計算結果に応じて、前記生徒DNNを構成するレイヤにおけるノードの重みを更新する
 付記6の学習方法。
(付記8)前記関数の値を小さくする勾配を計算し、勾配降下法で重みを更新する
 付記7の学習方法。
(付記9)前記訓練データに対応するラベルがノイズを含むラベルであると判定したときに、該ラベルを修正する
 付記6から付記8のいずれかの記載の学習方法。
(付記10)学習プログラムが格納されたコンピュータ読み取り可能な記録媒体であって、
 前記学習プログラムは、
 複数の訓練データの各々の特徴量を教師DNN特徴量として抽出する処理と、
 複数の前記訓練データの各々に対応する各ラベルの第1推定値を計算する処理と、
 複数の前記訓練データの各々の特徴量を生徒DNN特徴量として抽出する処理と、
 複数の前記訓練データの各々に対応する各ラベルの第2推定値を計算する処理と、
 前記訓練データに対応するラベルと前記第1推定値とに基づいて、前記訓練データに対応するラベルがノイズを含むラベルであるか否か判定する処理と、
 抽出された教師DNN特徴量と前記生徒DNN特徴量との差がなくなるように前記生徒DNNにおける重みを更新する処理と
 をプロセッサに実行させる記録媒体。
(付記11)前記学習プログラムは、
 複数の前記第1推定値と複数の前記第2推定値との差を表す関数において前記ノイズを含むラベルの影響を低下させて、前記関数の値を計算し、計算結果に応じて、前記生徒DNNを構成するレイヤにおけるノードの重みを更新する処理をプロセッサに実行させる付記10の記録媒体。
(付記12)前記学習プログラムは、
 前記関数の値を小さくする勾配を計算し、勾配降下法で重みを更新する処理をプロセッサに実行させる付記11の記録媒体。
(付記13)前記学習プログラムは、
 前記訓練データに対応するラベルがノイズを含むラベルであると判定したときに、該ラベルを修正する処理をプロセッサに実行させる
 付記10から付記12のいずれかの記録媒体。
(付記14)コンピュータに、
 複数の訓練データの各々の特徴量を教師DNN特徴量として抽出する処理と、
 複数の前記訓練データの各々に対応する各ラベルの第1推定値を計算する処理と、
 複数の前記訓練データの各々の特徴量を生徒DNN特徴量として抽出する処理と、
 複数の前記訓練データの各々に対応する各ラベルの第2推定値を計算する処理と、
 前記訓練データに対応するラベルと前記第1推定値とに基づいて、前記訓練データに対応するラベルがノイズを含むラベルであるか否か判定する処理と、
 抽出された教師DNN特徴量と前記生徒DNN特徴量との差がなくなるように前記生徒DNNにおける重みを更新する処理と
 を実行させるための学習プログラム。
(付記15)コンピュータに、複数の前記第1推定値と複数の前記第2推定値との差を表す関数において前記ノイズを含むラベルの影響を低下させて、前記関数の値を計算し、計算結果に応じて、前記生徒DNNを構成するレイヤにおけるノードの重みを更新する処理を実行させる付記14の学習プログラム。
(付記16)コンピュータに、
 前記関数の値を小さくする勾配を計算し、勾配降下法で重みを更新する処理を実行させる付記15の学習プログラム。
(付記17)コンピュータに、
 前記訓練データに対応するラベルがノイズを含むラベルであると判定したときに、該ラベルを修正する処理を実行させる
 付記14から付記16のいずれかの学習プログラム。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 200,600,700  学習システム
 201,310,402  データ読み込み部
 202  ラベル読み込み部
 203  教師DNN特徴量抽出部
 204  教師DNN推定値計算部
 205  生徒DNN特徴量抽出部
 206  生徒DNN推定値計算部
 207  生徒DNN特徴量学習部
 208  ノイズラベル修正部
 209  生徒DNN学習部
 210  出力統合部
 211  出力部
 300  学習システム
 301,501,701  生徒DNN
 302,401,702  教師DNN
 350,750  誤差信号計算部
 403,503  ノード
 404,504  隠れレイヤ
 500  生徒DNNモデル
 612  生徒DNN中間特徴量学習部
 800  学習システム
 801  教師DNN特徴量抽出手段
 802  教師DNN推定値計算手段
 803  生徒DNN特徴量抽出手段
 804  生徒DNN推定値計算手段
 805  ノイズラベル修正手段
 806  更新手段
 807  出力統合手段
 900  学習装置
 910  教師DNN

Claims (13)

  1.  教師DNN(Deep Neural Network )と、該教師DNNのサイズよりも小さいサイズの生徒DNNとを使用する学習システムであって、
     複数の訓練データの各々の特徴量を抽出する教師DNN特徴量抽出手段と、
     複数の前記訓練データの各々に対応する各ラベルの第1推定値を計算する教師DNN推定値計算手段と、
     複数の前記訓練データの各々の特徴量を抽出する生徒DNN特徴量抽出手段と、
     複数の前記訓練データの各々に対応する各ラベルの第2推定値を計算する生徒DNN推定値計算手段と、
     前記訓練データに対応するラベルと前記第1推定値とに基づいて、前記訓練データに対応するラベルがノイズを含むラベルであるか否か判定するノイズラベル修正手段と、
     前記ノイズを含むラベルの影響を低下させながら、前記教師DNN特徴量抽出手段が抽出した特徴量と前記生徒DNN特徴量抽出手段が抽出した特徴量との差がなくなるように前記生徒DNNにおける重みを更新する更新手段と
     を備えることを特徴とする学習システム。
  2.  前記更新手段は、複数の前記第1推定値と複数の前記第2推定値との差を表す関数において前記ノイズを含むラベルの影響を低下させて、前記関数の値を計算し、計算結果に応じて、前記生徒DNNを構成するレイヤにおけるノードの重みを更新する
     請求項1記載の学習システム。
  3.  前記更新手段は、前記関数の値を小さくする勾配を計算し、勾配降下法で重みを更新する
     請求項2記載の学習システム。
  4.  前記ノイズラベル修正手段は、前記訓練データに対応するラベルがノイズを含むラベルであると判定したときに、該ラベルを修正する
     請求項1から請求項3のうちのいずれか1項に記載の学習システム。
  5.  生徒DNNを使用する学習装置であって、
     入力データの特徴量を抽出する生徒DNN特徴量抽出手段と、
     前記入力データに対応するラベルの複数の推定値を計算する生徒DNN推定値計算手段と、
     前記複数の推定値を統合する出力統合手段とを備え、
     前記生徒DNN特徴量抽出手段の重みが、
     複数の訓練データの各々の特徴量を抽出する教師DNN特徴量抽出手段、
     複数の前記訓練データの各々に対応する各ラベルの第1推定値を計算する教師DNN推定値計算手段、
     前記訓練データに対応するラベルと前記第1推定値とに基づいて、前記訓練データに対応するラベルがノイズを含むラベルであるか否か判定するノイズラベル修正手段、および
     前記ノイズを含むラベルの影響を低下させながら、前記教師DNN特徴量抽出手段が抽出した特徴量と前記生徒DNN特徴量抽出手段が抽出した特徴量との差がなくなるように前記生徒DNNにおける重みを更新する更新手段を含む教師DNNによって更新される
     ことを特徴とする学習装置。
  6.  教師DNNと、該教師DNNのサイズよりも小さいサイズの生徒DNNとを使用する学習方法であって、
     複数の訓練データの各々の特徴量を教師DNN特徴量として抽出し、
     複数の前記訓練データの各々に対応する各ラベルの第1推定値を計算し、
     複数の前記訓練データの各々の特徴量を生徒DNN特徴量として抽出し、
     複数の前記訓練データの各々に対応する各ラベルの第2推定値を計算し、
     前記訓練データに対応するラベルと前記第1推定値とに基づいて、前記訓練データに対応するラベルがノイズを含むラベルであるか否か判定し、
     抽出された教師DNN特徴量と前記生徒DNN特徴量との差がなくなるように前記生徒DNNにおける重みを更新する
     ことを特徴とする学習方法。
  7.  複数の前記第1推定値と複数の前記第2推定値との差を表す関数において前記ノイズを含むラベルの影響を低下させて、前記関数の値を計算し、計算結果に応じて、前記生徒DNNを構成するレイヤにおけるノードの重みを更新する
     請求項6記載の学習方法。
  8.  前記関数の値を小さくする勾配を計算し、勾配降下法で重みを更新する
     請求項7記載の学習方法。
  9.  前記訓練データに対応するラベルがノイズを含むラベルであると判定したときに、該ラベルを修正する
     請求項6から請求項8のうちのいずれか1項に記載の学習方法。
  10.  学習プログラムが格納されたコンピュータ読み取り可能な記録媒体であって、
     前記学習プログラムは、
     複数の訓練データの各々の特徴量を教師DNN特徴量として抽出する処理と、
     複数の前記訓練データの各々に対応する各ラベルの第1推定値を計算する処理と、
     複数の前記訓練データの各々の特徴量を生徒DNN特徴量として抽出する処理と、
     複数の前記訓練データの各々に対応する各ラベルの第2推定値を計算する処理と、
     前記訓練データに対応するラベルと前記第1推定値とに基づいて、前記訓練データに対応するラベルがノイズを含むラベルであるか否か判定する処理と、
     抽出された教師DNN特徴量と前記生徒DNN特徴量との差がなくなるように前記生徒DNNにおける重みを更新する処理と
     をプロセッサに実行させる記録媒体。
  11.  前記学習プログラムは、
     複数の前記第1推定値と複数の前記第2推定値との差を表す関数において前記ノイズを含むラベルの影響を低下させて、前記関数の値を計算し、計算結果に応じて、前記生徒DNNを構成するレイヤにおけるノードの重みを更新する処理をプロセッサに実行させる請求項10記載の記録媒体。
  12.  前記学習プログラムは、
     前記関数の値を小さくする勾配を計算し、勾配降下法で重みを更新する処理をプロセッサに実行させる請求項11記載の記録媒体。
  13.  前記学習プログラムは、
     前記訓練データに対応するラベルがノイズを含むラベルであると判定したときに、該ラベルを修正する処理をプロセッサに実行させる
     請求項10から請求項12のうちのいずれか1項に記載の記録媒体。
PCT/JP2019/038498 2019-09-30 2019-09-30 学習システム、学習装置、および学習方法 WO2021064787A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/762,418 US20220343163A1 (en) 2019-09-30 2019-09-30 Learning system, learning device, and learning method
JP2021550747A JP7468540B2 (ja) 2019-09-30 2019-09-30 学習システム、学習装置、および学習方法
PCT/JP2019/038498 WO2021064787A1 (ja) 2019-09-30 2019-09-30 学習システム、学習装置、および学習方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/038498 WO2021064787A1 (ja) 2019-09-30 2019-09-30 学習システム、学習装置、および学習方法

Publications (1)

Publication Number Publication Date
WO2021064787A1 true WO2021064787A1 (ja) 2021-04-08

Family

ID=75337760

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/038498 WO2021064787A1 (ja) 2019-09-30 2019-09-30 学習システム、学習装置、および学習方法

Country Status (3)

Country Link
US (1) US20220343163A1 (ja)
JP (1) JP7468540B2 (ja)
WO (1) WO2021064787A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113283578A (zh) * 2021-04-14 2021-08-20 南京大学 一种基于标记风险控制的数据去噪方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11853392B2 (en) * 2021-11-30 2023-12-26 International Business Machines Corporation Providing reduced training data for training a machine learning model
CN116030323B (zh) * 2023-03-27 2023-08-29 阿里巴巴(中国)有限公司 图像处理方法以及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "You can see the mistake in labeling! ?", THE LABELLIO BLOG, KYOCERA COMMUNICATION SYSTEMS (KCCS), 4 July 2019 (2019-07-04), pages 1 - 11, XP055811668, Retrieved from the Internet <URL:https://www.kccs.co.jp/labellio_blog_ja/2019/07/rps.html> [retrieved on 20191210] *
ROMERO ADRIANA, BALLAS NICOLAS, KAHOU SAMIRA EBRAHIMI, CHASSANG ANTOINE, GATTA CARLO, BENGIO YOSHUA: "itNets: Hints for Thin Deep Nets", ARXIV, 27 March 2015 (2015-03-27), pages 1 - 13, XP055349753, Retrieved from the Internet <URL:https://arxiv.org/pdf/1412.6550v4> [retrieved on 20191210] *
YUZUPEPPER: "Making Deep Neural Networks Robust to Label Noise: A Loss Correction Approach", A LOSS CORRECTION APPROACH,, 20 August 2017 (2017-08-20), Qiita, pages 2233 - 2241, XP033249566, Retrieved from the Internet <URL:https://qiita.com/yuzupepper/items/bl55b3487118626f62f2> [retrieved on 20191210] *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113283578A (zh) * 2021-04-14 2021-08-20 南京大学 一种基于标记风险控制的数据去噪方法

Also Published As

Publication number Publication date
JPWO2021064787A1 (ja) 2021-04-08
US20220343163A1 (en) 2022-10-27
JP7468540B2 (ja) 2024-04-16

Similar Documents

Publication Publication Date Title
CN111523621B (zh) 图像识别方法、装置、计算机设备和存储介质
US11081105B2 (en) Model learning device, method and recording medium for learning neural network model
US9870768B2 (en) Subject estimation system for estimating subject of dialog
WO2021064787A1 (ja) 学習システム、学習装置、および学習方法
US11264044B2 (en) Acoustic model training method, speech recognition method, acoustic model training apparatus, speech recognition apparatus, acoustic model training program, and speech recognition program
US20220405682A1 (en) Inverse reinforcement learning-based delivery means detection apparatus and method
US10395646B2 (en) Two-stage training of a spoken dialogue system
US9189750B1 (en) Methods and systems for sequential feature selection based on significance testing
US11456003B2 (en) Estimation device, learning device, estimation method, learning method, and recording medium
CN112465138A (zh) 模型蒸馏方法、装置、存储介质及设备
KR20200128938A (ko) 모델 학습 방법 및 장치
US20210065011A1 (en) Training and application method apparatus system and stroage medium of neural network model
JPWO2018207334A1 (ja) 画像認識装置、画像認識方法および画像認識プログラム
JPWO2018062265A1 (ja) 音響モデル学習装置、その方法、及びプログラム
CN113987196A (zh) 一种基于知识图谱蒸馏的知识图谱嵌入压缩方法
CN111737439B (zh) 一种问题生成方法及装置
CN110930996A (zh) 模型训练方法、语音识别方法、装置、存储介质及设备
US10741184B2 (en) Arithmetic operation apparatus, arithmetic operation method, and computer program product
CN112819050A (zh) 知识蒸馏和图像处理方法、装置、电子设备和存储介质
Nakamachi et al. Text simplification with reinforcement learning using supervised rewards on grammaticality, meaning preservation, and simplicity
US12033658B2 (en) Acoustic model learning apparatus, acoustic model learning method, and program
US20150006151A1 (en) Model learning method
WO2021064931A1 (ja) ナレッジトレース装置、方法、および、プログラム
KR20200120987A (ko) 상관관계 점수 행렬 생성 알고리즘을 이용한 인공 신경망 기반의 장소 인식 장치 및 방법
CN114970732A (zh) 分类模型的后验校准方法、装置、计算机设备及介质

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: 19947550

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021550747

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: 19947550

Country of ref document: EP

Kind code of ref document: A1