ARITHMETIC DEVICE AND METHOD FOR CONTROLLING THE SAME
According to one embodiment, an arithmetic device, includes a first processing layer and a second processing layer, each configured to perform an arithmetic operation on input data and constituting a part of a multi-layer neural network configured to perform corrections by an error backward propagation scheme; a detour path that connects an input and an output of the second processing layer; and an evaluation unit configured to evaluate operation results of the first and the second processing layers.
1 . An arithmetic device, comprising:
a first processing layer and a second processing layer, each configured to perform an arithmetic operation on input data and constituting a part of a multi-layer neural network configured to perform corrections by an error backward propagation scheme;
a detour path that connects an input and an output of the second processing layer;
an evaluation unit configured to evaluate operation results of the first and the second processing layers;
a correction unit configured to correct weight coefficients relating to the first and the second processing layers based on evaluation results of the evaluation unit; and
a storage unit configured to store the operation results of the first and the second processing layers, a first weight coefficient relating to the first processing layer, and a second weight coefficient relating to the second processing layer, wherein
in a case where the first weight coefficient relating to the first processing layer is corrected, the multi-layer neural network is configured to supply a first operation result of the first processing layer via the detour path without performing arithmetic operations of at least one of forward propagation and backward propagation of the second processing layer, the evaluation unit is configured to evaluate the first operation result of the first processing layer, the correction unit is configured to correct the first weight coefficient relating to the first processing layer based on an evaluation result of the evaluation unit, and the storage unit is configured to store the first operation result of the first processing layer and the first weight coefficient relating to the first processing layer.
2 . The arithmetic device according to claim 1 , wherein
the first processing layer is configured to perform an arithmetic operation on the input data, and the second processing layer is configured to perform an arithmetic operation on output data of the first processing layer, and
in a case where the weight coefficients relating to the first and the second processing layers are corrected, the first weight coefficient relating to the first processing layer and the second weight coefficient relating to the second processing layer are corrected in order of appearance.
3 . The arithmetic device according to claim 1 , wherein
in a case where the second weight coefficient relating to the second processing layer is corrected, an operation result of the first weight coefficient relating to the first processing layer before correction is used.
4 . The arithmetic device according to claim 1 , wherein
in a case where the second weight coefficient relating to the second processing layer is corrected, an operation result of the first weight coefficient relating to the first processing layer after correction is used.
5 . The arithmetic device according to claim 1 , wherein the multi-layer neural network is configured to classify a content of the input data by using the first weight coefficient relating to the first processing layer and the second weight coefficient relating to the second processing layer stored in the storage unit.
6 . The arithmetic device according to claim 1 , wherein the evaluation unit is configured to evaluate the operation results of the first and the second processing layers by using truth data stored in the storage unit.
7 . The arithmetic device according to claim 1 , further comprising:
a third processing layer configured to perform an arithmetic operation on the input data and constituting a part of the multi-layer neural network; and
a second detour path that connects an input and an output of the third processing layer, wherein
the output of the second processing layer is connected to the input of the third processing layer,
the evaluation unit is configured to evaluate operation results of the first to the third processing layers,
the correction unit is configured to correct weight coefficients relating to the first to the third processing layers based on an evaluation result of the evaluation unit, and
the storage unit is further configured to store the operation results of the first to the third processing layers, the first weight coefficient relating to the first processing layer, the second weight coefficient relating to the second processing layer, and a third weight coefficient relating to the third processing layer, and wherein
in a case where the first weight coefficient relating to the first processing layer is corrected, the multi-layer neural network is configured to supply the operation result of the first processing layer via the second detour path without performing arithmetic operations of at least one of forward propagation and backward propagation of the second and the third processing layers, the evaluation unit is configured to evaluate the operation result of the first processing layer, the correction unit is configured to correct the first weight coefficient relating to the first processing layer based on the evaluation result of the evaluation unit, and the storage unit is configured to store the operation result of the first processing layer and the weight coefficient relating to the first processing layer.
8 . The arithmetic device according to claim 7 , wherein
the first processing layer is configured to perform an arithmetic operation on the input data, the second processing layer is configured to perform an arithmetic operation on output data of the first processing layer, and the third processing layer is configured to perform an arithmetic operation on output data of the second processing layer, and
in a case where the weight coefficients relating to the first, the second, and the third processing layers are corrected, the first weight coefficient relating to the first processing layer, the second weight coefficient relating to the second processing layer, and the third weight coefficient relating to the third processing layer are corrected in order of appearance.
9 . The arithmetic device according to claim 7 , wherein
in a case where the third weight coefficient relating to the third processing layer is corrected, an operation result of the second weight coefficient relating to the second processing layer before correction is used.
10 . The arithmetic device according to claim 7 , wherein
in a case where the third weight coefficient relating to the third processing layer is corrected, an operation result of the second weight coefficient relating to the second processing layer after correction is used.
11 . A method for controlling an arithmetic device comprising:
a first processing layer and the second processing layer, each configured to perform an arithmetic operation on input data and constituting a part of a multi-layer neural network configured to perform corrections by an error backward propagation scheme;
a detour path that connects an input and an output of the second processing layer;
an evaluation unit configured to evaluate operation results of the first and the second processing layers;
a correction unit configured to correct weight coefficients relating to the first and the second processing layers based on evaluation results of the evaluation unit; and
a storage unit configured to store the operation results of the first and the second processing layers, a first weight coefficient relating to the first processing layer, and a second weight coefficient relating to the second processing layer,
the method comprising: in a case where correcting the first weight coefficient relating to the first processing layer, supplying, by the multi-layer neural network, a first operation result of the first processing layer via the detour path without performing arithmetic operations of at least one of forward propagation and backward propagation of the second processing layer; evaluating, by the evaluation unit, the first operation result of the first processing layer; correcting, by the correction unit, the first weight coefficient relating to the first processing layer based on an evaluation result of the evaluation unit; and storing, by the storage unit, the first operation result of the first processing layer and the first weight coefficient relating to the first processing layer.
12 . The method according to claim 11 , wherein
the first processing layer is configured to perform an arithmetic operation on the input data, and the second processing layer is configured to perform an arithmetic operation on output data of the first processing layer, and
in a case where the weight coefficients relating to the first and the second processing layers are corrected, the first weight coefficient relating to the first processing layer and the second weight coefficient relating to the second processing layer are corrected in order of appearance.
13 . The method according to claim 11 , wherein
in a case where the second weight coefficient relating to the second processing layer is corrected, an operation result of the first weight coefficient relating to the first processing layer before correction is used.
14 . The method according to claim 11 , wherein
in a case where the second weight coefficient relating to the second processing layer is corrected, an operation result of the first weight coefficient relating to the first processing layer after correction is used.
15 . The method according to claim 11 , wherein the multi-layer neural network is configured to classify a content of the input data by using the first weight coefficient relating to the first processing layer and the second weight coefficient relating to the second processing layer stored in the storage unit.
16 . The method according to claim 11 , wherein the evaluation unit is configured to evaluate the operation results of the first and the second processing layers by using truth data stored in the storage unit.
17 . The method according to claim 11 , further comprising:
a third processing layer configured to perform an arithmetic operation on the input data and constituting a part of the multi-layer neural network; and
a second detour path that connects an input and an output of the third processing layer, wherein
the output of the second processing layer is connected to the input of the third processing layer,
the evaluation unit is configured to evaluate operation results of the first to the third processing layers, and
the correction unit is configured to correct weight coefficients relating to the first to the third processing layers based on an evaluation result of the evaluation unit, and
the storage unit further is configured to store the operation results of the first to the third processing layers, the first weight coefficient relating to the first processing layer, the second weight coefficient relating to the second processing layer, and a third weight coefficient relating to the third processing layer, and wherein
in a case where the first weight coefficient relating to the first processing layer is corrected, the multi-layer neural network is configured to supply the operation result of the first processing layer via the second detour path without performing arithmetic operations of at least one of forward propagation and backward propagation of the second and the third processing layers, the evaluation unit is configured to evaluate the operation result of the first processing layer, the correction unit is configured to correct the first weight coefficient relating to the first processing layer based on the evaluation result of the evaluation unit, and the storage unit is configured to store the operation result of the first processing layer and the weight coefficient relating to the first processing layer.
18 . The method according to claim 17 , wherein
the first processing layer is configured to perform an arithmetic operation on the input data, the second processing layer is configured to perform an arithmetic operation on output data of the first processing layer, and the third processing layer is configured to perform an arithmetic operation on output data of the second processing layer, and
in a case where the weight coefficients relating to the first, the second, and the third processing layers are corrected, the first weight coefficient relating to the first processing layer, the second weight coefficient relating to the second processing layer, and the third weight coefficient relating to the third processing layer are corrected in order of appearance.
19 . The method according to claim 17 , wherein
in a case where the third weight coefficient relating to the third processing layer is corrected, an operation result of the second weight coefficient relating to the second processing layer before correction is used.
20 . The method according to claim 17 , wherein
in a case where the third weight coefficient relating to the third processing layer is corrected, an operation result of the second weight coefficient relating to the second processing layer after correction is used.