Learning apparatus, trained model generation method, classification apparatus, classification method, and computer-readable recording medium
The learning apparatus for machine learning a score function to be used for two-class classification includes a score function optimization unit that updates, by setting, as an index, a total value of a value obtained by multiplying an AUC by a weight λ which is a positive real number and a value obtained by multiplying a pAUC by a weight (1−λ), a parameter of the score function through machine learning that is performed, using training data, so as to maximize the index, while decreasing the value of the weight λ. The AUC indicates an area of a region on a horizontal axis side of a curve obtained by changing a threshold for determining a positive example and a negative example in the score function. The pAUC is a value of the AUC when the value of the false positive rate is set to a specific fixed value.
1 . A learning apparatus for machine learning a score function to be used for two-class classification, the learning apparatus comprising:
at least one processor; and
at least one memory,
wherein the at least one processor is configured to execute:
a score calculation unit configured to calculate a score for each piece of training data by inputting the training data to the score function; and
a score function optimization unit configured to:
identify a set of negative example training data that will be a false positive with respect to a specific fixed value of a false positive rate, based on the calculated scores; and
update a parameter of the score function through machine learning that is performed so as to maximize the index,
wherein the index is calculated by setting a weight for a pair of a positive example training data and a negative example training data to 1 when the negative example training data is within the identified set, and setting the weight for the pair to λ, which is a positive real number, when the negative example training data is not within the identified set,
wherein the update is performed while decreasing the value of the weight λ over a course of the machine learning,
wherein the index thereby represents a total value of a value obtained by multiplying an AUC by the weight λ and a value obtained by multiplying a pAUC by a weight (1−λ),
wherein the AUC indicates an area of a region on a horizontal axis side of a curve obtained by changing a threshold for determining a positive example and a negative example in the score function and setting a vertical axis as a true positive rate and a horizontal axis as a false positive rate, and
wherein the pAUC is a value of the AUC when the value of the false positive rate is set to a specific fixed value, and indicates an area of a region enclosed by the curve, the horizontal axis, and the vertical axis that passes through the fixed value.
2 . The learning apparatus according to claim 1 , further comprising:
a score calculation unit configured to calculate a score for each piece of the training data by inputting the training data to the score function,
wherein the score function optimization unit:
sets a weight for a pair with the training data of the positive example to 1, for the training data of the negative example which will be a false positive with respect to a false positive rate that has been set in advance, and sets a weight for a pair with the training data of the positive example to λ, for the training data of the negative example which will not be a false positive with respect to the false positive rate that has been set in advance; and
updates the parameter of the score function, while decreasing the value of the weight λ.
3 . A trained model generation method performed by a computer for machine learning a score function to be used for two-class classification, the trained model generation method comprising:
calculating a score for each piece of training data by inputting the training data to the score function;
identifying a set of negative example training data that will be a false positive with respect to a specific fixed value of a false positive rate, based on the calculated scores; and
updating a parameter of the score function through machine learning that is performed, so as to maximize the index,
wherein the index is calculated by setting a weight for a pair of a positive example training data and a negative example training data to 1 in a case where the negative example training data is within the identified set, and setting the weight for the pair to λ, which is a positive real number, in a case where the negative example training data is not within the identified set,
wherein the update is performed while decreasing the value of the weight λ over a course of the machine learning,
wherein the index thereby represents a total value of a value obtained by multiplying an AUC by the weight λ and a value obtained by multiplying a pAUC by a weight (1−λ),
wherein the AUC indicates an area of a region on a horizontal axis side of a curve obtained by changing a threshold for determining a positive example and a negative example in the score function and setting a vertical axis as a true positive rate and a horizontal axis as a false positive rate, and
wherein the pAUC is a value of the AUC when the value of the false positive rate is set to a specific fixed value, and indicates an area of a region enclosed by the curve, the horizontal axis, and the vertical axis that passes through the fixed value.
4 . The trained model generation method according to claim 3 , further comprising:
calculating a score for each piece of the training data by inputting the training data to the score function,
wherein the updating of the parameter of the score function comprises:
setting a weight for a pair with the training data of the positive example to 1, for the training data of the negative example which will be a false positive with respect to a false positive rate that has been set in advance, and setting a weight for a pair with the training data of the positive example to λ, for the training data of the negative example which will not be a false positive with respect to the false positive rate that has been set in advance; and
updating the parameter of the score function, while decreasing the value of the weight λ.
5 . A non-transitory computer-readable recording medium that includes a program, recorded thereon, for machine learning a score function to be used for two-class classification, the program including instructions that cause a computer to carry out:
calculating a score for each piece of training data by inputting the training data to the score function;
identifying a set of negative example training data that will be a false positive with respect to a specific fixed value of a false positive rate, based on the calculated scores; and
updating a parameter of the score function through machine learning that is performed so as to maximize the index,
wherein the index is calculated by setting a weight for a pair of a positive example training data and a negative example training data to 1 when the negative example training data is within the identified set, and setting the weight for the pair to λ, which is a positive real number, when the negative example training data is not within the identified set,
wherein the update is performed while decreasing the value of the weight λ over a course of the machine learning,
wherein the index thereby represents a total value of a value obtained by multiplying an AUC by the weight λ and a value obtained by multiplying a pAUC by a weight (1−λ),
wherein the AUC indicates an area of a region on a horizontal axis side of a curve obtained by changing a threshold for determining a positive example and a negative example in the score function and setting a vertical axis as a true positive rate and a horizontal axis as a false positive rate, and
wherein the pAUC is a value of the AUC in a case where the value of the false positive rate is set to a specific fixed value, and indicates an area of a region enclosed by the curve, the horizontal axis, and the vertical axis that passes through the fixed value.
6 . The non-transitory computer-readable recording medium according to claim 5 , wherein the program causes the computer to carry out:
calculating a score for each piece of the training data by inputting the training data to the score function; and
in the updating the parameter of the score function:
setting a weight for a pair with the training data of the positive example to 1, for the training data of the negative example which will be a false positive with respect to a false positive rate that has been set in advance, and setting a weight for a pair with the training data of the positive example to λ, for the training data of the negative example which will not be a false positive with respect to the false positive rate that has been set in advance; and
updating the parameter of the score function, while decreasing the value of the weight λ.