Learning device, learning method, and program
Patent Information
- Application Number
- PCT/JP2023/031454
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-08-30
- Publication Date
- 2025-03-06
Smart Images

Figure JP2023031454_06032025_PF_FP_ABST
Abstract
Description
Learning device, learning method, and program
[0001] The present disclosure relates to a learning device, a learning method, and a program.
[0002] Class estimation technology using ordinal regression (hereinafter abbreviated as "ordinal regression") is a technology that estimates to which class input data belongs among classes whose order is meaningful. Specific examples of ordinal regression include those that estimate the presence or absence and progression of disease using medical images such as X-rays and endoscopic images as input, those that estimate the presence or absence and progression of disease using medical images as well as patient symptoms and test results as input, those that estimate stress and pain intensity using physiological measurements such as heart rate, respiratory rate, and sweat rate or answers to questions as input, those that estimate the depth of each part of an image using a two-dimensional visible light image as input (depth estimation), those that estimate the era in which an image was taken using an image such as a landscape as input, and those that estimate product ratings using product reviews on online shopping sites as input. In these examples, the presence or absence and progression of disease, the intensity of stress and pain, the depth of the image, the era in which the image was taken, and the product rating correspond to the classes, i.e., ordinal labels, estimated by ordinal regression. Ordinal regression is generally considered as a problem of classifying input data X into which of K classes arranged in the order of 1, ..., K it belongs. For example, Patent Document 1 discloses a method of ordinal regression.
[0003] Patent No. 5429940
[0004] Here, in class estimation techniques using ordinal regression, due to the characteristics of ordinal labels, among data belonging to class k, data close to class k-1 in the latent space is likely to be mistaken for class k-1, and data close to class k+1 is likely to be mistaken for class k+1. However, the above-mentioned techniques have the problem that they are unable to perform estimation that reflects the characteristics of ordinal labels, and are unable to generate a learning model that can make estimations with high accuracy.
[0005] Therefore, one of the objectives of the present disclosure is to provide a learning device that can solve the above-mentioned problem of being unable to generate an ordinal regression learning model that can be estimated with high accuracy.
[0006] A learning device according to one aspect of the present disclosure includes: an acquisition unit that acquires, for training data associated with input data and a corresponding class in an order label in which an order of classes into which the input data is classified is set, extended labels that are set according to the corresponding class and in which each class in the order label is divided into a plurality of subclasses, and weights that are set according to the corresponding class and corresponding to each of the subclasses of the extended label; an estimation unit that is configured to calculate, based on the input data, a probability that the class of the input data will exceed each of the subclasses of the extended label in order, and to estimate the class of the order label based on the probability; and a learning unit that trains the estimation unit using a loss based on the probability, the extended label, and the weight. Furthermore, a learning method that is one aspect of the present disclosure is configured to: for training data associated with input data and a corresponding class in an order label in which an order of classes into which the input data is classified is set, obtain extended labels that are set according to the corresponding class and in which each class of the order label is divided into a plurality of subclasses, and weights that are set according to the corresponding class and corresponding to each of the subclasses of the extended label; calculate, based on the input data, a probability that the class of the input data will exceed each of the subclasses of the extended label in order, and train an estimation unit that is configured to estimate the class of the order label based on the probability using a loss based on the probability, the extended label, and the weight.Furthermore, a program according to one aspect of the present disclosure is configured to cause a computer to execute the following processes: for training data associated with input data and a corresponding class in an order label in which an order of classes into which the input data is classified is set, obtain extended labels set according to the corresponding class, in which each class in the order label is divided into a plurality of subclasses, and weights set according to the corresponding class and corresponding to each of the subclasses of the extended label; calculate, based on the input data, a probability that the class of the input data will exceed each of the subclasses of the extended label in order, and train an estimation unit configured to estimate the class of the order label based on the probability using a loss based on the probability, the extended label, and the weight.
[0007] With the above-described configuration, the present disclosure can generate an ordinal regression learning model that can perform estimation with high accuracy.
[0008] FIG. 1 is a block diagram showing the configuration of a learning device according to the present disclosure. FIG. 2 is a flowchart showing the processing operation of a learning device according to the present disclosure. FIG. 3 is a flowchart showing the processing operation of a learning device according to the present disclosure. FIG. 4 is a diagram showing the processing state by a learning device according to the present disclosure. FIG. 5 is a block diagram showing the configuration of a learning device according to the present disclosure. FIG. 6 is a diagram showing the processing state by a learning device according to the present disclosure. FIG. 7 is a flowchart showing the processing operation of a learning device according to the present disclosure. FIG. 8 is a block diagram showing the hardware configuration of a learning device according to the present disclosure. FIG. 9 is a block diagram showing the configuration of a learning device according to the present disclosure.
[0009] First Embodiment A first embodiment of the present disclosure will be described with reference to the drawings. Note that the drawings may be relevant to any embodiment.
[0010] [Configuration] The learning device 1 in this embodiment uses a class estimation technique based on ordinal regression to generate a model through machine learning that estimates which class (ordinal labels) input data belongs to, among classes with meaningful ordinal relationships. Specific examples of ordinal regression include a system that estimates the presence or absence and progression of a disease using medical images such as X-ray images or endoscopic images as input, a system that estimates the presence or absence and progression of a disease using medical images as input as well as patient symptoms and test results, a system that estimates stress or pain intensity using physiological measurements such as heart rate, respiratory rate, and sweat rate or answers to questions as input, a system that estimates the depth of each part of a two-dimensional visible light image as input (depth estimation), a system that estimates the era in which an image such as a landscape was captured as input, and a system that estimates a product rating using product reviews on online shopping sites as input. In this case, the classes of ordinal labels estimated by ordinal regression may correspond to the presence or absence and progression of a disease, the intensity of stress or pain, the depth of the image, the era in which the image was captured, and the rating of a product.
[0011] Ordinal regression is generally considered to be a problem of classifying input data X as belonging to one of K classes constituting ordinal labels arranged in the order of 1, ..., K. In the following, in this embodiment, it is assumed that the input data X is an X-ray image, and each class of the ordinal labels represents one of four stages (K=4) of disease progression estimated based on the X-ray image. The learning device 1 generates a model for classifying input data as belonging to one of the four classes, and further describes an example in which the learning device 1 uses this model to classify new input data.
[0012] The learning device 1 is composed of one or more information processing devices each including a calculation device and a storage device. As shown in FIG. 1 , the learning device 1 includes an information processing unit 10 including a feature extraction unit 11, a class identification unit 12, and a label decoding unit 13, and a parameter correction unit 20 including a label encoding unit 21, a weight creation unit 22, a loss calculation unit 23, and an objective function optimization unit 24. The functions of the feature extraction unit 11, the class identification unit 12, the label decoding unit 13, the label encoding unit 21, the weight creation unit 22, the loss calculation unit 23, and the objective function optimization unit 24 can be realized by the calculation device executing a program for realizing each function stored in the storage device. In this embodiment, as described below, the information processing unit 10 functions mainly as a model (estimation unit) generated by adjusting parameters through machine learning, and the parameter correction unit 20 functions mainly as a learning unit that performs machine learning on the model that is the information processing unit 10. Each component is described in detail below.
[0013] In the following description, it is assumed that training data is prepared in advance, in which input data X is associated with a corresponding class k (corresponding class) in the ordinal label (K=4) of the input data. In other words, in the training data, class k in the ordinal label associated with input data X is used as teacher data. It is assumed that such training data is used during machine learning.
[0014] First, each component of the information processing unit 10 that can be a model generated by adjusting parameters mainly through machine learning will be described.
[0015] The feature extraction unit 11 extracts features from input data. When the input data is an X-ray image, the feature extraction unit 11 extracts features representing image characteristics from the X-ray image. For example, the feature extraction unit 11 extracts the luminance value of each pixel constituting the image, or extracts the average, median, or maximum luminance value for each group of multiple pixels. The feature extraction method may be defined by a human based on knowledge about the data to be classified, or an appropriate calculation method may be learned for each problem using machine learning such as a neural network. In other words, the feature extraction unit 11 may be generated by machine learning in the parameter correction unit 20, as described below.
[0016] The class identification unit 12 (probability calculation unit) estimates the probability that the class of the input data will exceed each class of the ordinal labels in order from the features extracted from the X-ray images, which are the input data, as described above. That is, the class identification unit 12 estimates the probability that the input data will satisfy each class in the ordinal labels, from lowest to highest. At this time, the class identification unit 12 calculates the probability that the class of the input data will exceed each class in the extended labels, which are obtained by further dividing each class of the ordinal labels. That is, an order is also set for each class in the extended labels, and the class identification unit 12 estimates the probability that the input data will satisfy each class in the extended labels, from lowest to highest.
[0017] Here, the extended label is the order label y k For (1<...<k<...<K), it is defined as the following equation 1.
[0018] At this time, the elements (subclasses) of the extended label, that is, the classes (y k- , y k+ ) can be defined as follows: As described above, the extended label is an encoding of the order label by virtually dividing the order label class j into two classes j- and j+ (j-1<j-<j+<j+1), and y (j) k- corresponds to class j-, and y (j)k+ corresponds to class j+. The value of each element of the extended label is set to "1" when class k associated with input data X in the training data exceeds j in the order, and "0" otherwise (does not exceed j). Note that, in this embodiment, the extended label is set by dividing one class of the order label into two classes, but may be set by dividing it into three or more classes.
[0019] For example, when the order label K=4, and the classes corresponding to the input data of the training data are k=1, 2, 3, and 4, the extended labels are set as shown in Equation 3.
[0020] Then, the class identification unit 12 calculates the probability that class k of the input data exceeds each class of the extended label as a vector of probabilities that each element of the extended label is "1" as shown in Expression 4, and is defined as shown in Expression 5. Note that in the following, if the class k to be estimated is unknown, k is omitted.
[0021] The calculation of the probability that each element of the extended label is "1" by the class identification unit 12 is performed by a machine learning model such as a neural network. In other words, the function of calculating the above-mentioned probability by the class identification unit 12 is realized by a machine learning model, and is generated by machine learning in the parameter correction unit 20 described later.
[0022] For example, when K=4, the probability that the expanded label calculated for certain input data exceeds each class can be calculated as shown in Equation 6.
[0023] The label decoding unit 13 (conversion unit) converts the calculated probabilities of the extended label exceeding each class into an order label and estimates the class of the order label. Specifically, the label decoding unit 13 sets a threshold for the number 7 among the elements of the extended label whose probabilities exceed each class, and outputs the number of elements exceeding the threshold plus "1" as the estimated class of the order label. For example, if the threshold is 0.5, in the case of the number 6, the elements corresponding to the number 7 are 0.7, 0.0, and 0.0, and only one of these exceeds the threshold of 0.5, so the class of the order label in this case is "2."
[0024] Next, each component of the parameter correction unit 20, which can be a learning unit that performs machine learning on a model that is mainly the information processing unit 10 described above, will be described in detail.
[0025] The label encoding unit 21 (acquisition unit) receives the order labels of the training data as input and encodes and acquires the augmented labels. That is, the label encoding unit 21 acquires the above-mentioned augmented labels that are set according to the class (corresponding class) of the order labels associated with the input data of the training data. At this time, the details of the encoding method from the order labels to the augmented labels are as described above, and the augmented labels of the class (k=1, 2, 3, or 4) that corresponds to the input data of the training data are acquired from the augmented labels shown in Equation 3.
[0026] The weight creation unit 22 (acquisition unit) receives the order labels of the training data as input and outputs weights corresponding to each class of the extended labels. That is, the weight creation unit 22 acquires weights that are set according to the class (corresponding class) of the order labels associated with the input data of the training data and that correspond to each class (subclass) of the extended labels. The weights acquired here are used to adjust the degree to which errors in each class affect the loss when calculating the loss, which will be described later.
[0027] Specifically, when the class (corresponding class) of the order label associated with the input data in the training data is k, the weight is defined as in Equation 8.
[0028] In this case, each element of the weight is a real number between 0 and 1. Each element of the weight can be determined by a human during training so that errors are tolerated for classes that are close in the latent space to the extended label class j that corresponds to the ordinal label class k in the training data, while errors are relatively emphasized for classes that are farther away in the latent space. For example, the weight can be set to a small value when the positions in the latent space are close, i.e., when the absolute value of the difference between k and j is small, and a large value when the positions in the latent space are farther away, i.e., when the absolute value of the difference between k and j is large, thereby achieving a relationship of relative tolerance and emphasis on errors.
[0029] As an example, for K=4 ordinal label classes (k=1, 2, 3, 4), the weights are set as shown in Equation 9.
[0030] Furthermore, even if classes have similar distances in the latent space, the importance of errors may differ. For example, when estimating the progression of a disease based on X-ray images, an error that estimates the condition to be milder than the actual condition is considered to be less tolerable than an error that estimates the condition to be more severe than the actual condition. In such cases, by increasing the value of the weight element where j≦k, it is possible to incorporate differences in the tolerance of errors into the calculation of loss.
[0031] Furthermore, weights can be determined not only by a human being but also by using a grid search to determine the optimal set. When determining weights using a grid search, multiple candidate values are prepared for each element in the range of 0 to 1. Furthermore, the original training dataset is divided into a training dataset and a validation dataset, and different sets of element values are used to train the training dataset and evaluate the validation dataset, and the set of elements that provides the best performance is used as the optimal weight.
[0032] In this case, candidate values for the grid search may be prepared in the range of 0 to 1, or the range may be narrowed depending on the importance of the error. For example, in an example in which the progression of a disease is estimated based on an X-ray image, candidates may be prepared in the range of 0.5 to 1, inclusive, when j≦k, to reflect that an error in estimating the condition to be milder than the actual condition is not tolerated, and candidates may be prepared in the range of 0 to 0.5, inclusive, when k≦j, to relatively tolerate an error in estimating the condition to be more severe than the actual condition, and the optimal combination may be determined by grid search.
[0033] The loss calculation unit 23 calculates the loss from the probability that the augmented label calculated from the input data of the training data exceeds each class, and the augmented label and weight obtained according to the class (corresponding class) of the ordinal label associated with the input data of the training data. The loss is defined as in Equation 10.
[0034] The first and second terms of the loss are the cross-entropy loss used in ordinal regression, and correspond to classes j- and j+ of the extended labels, respectively. The cross-entropy loss is the degree of error in estimation for the training data, and is calculated for classes j- and j+ from the probability that the extended labels of the training data exceed each class. Furthermore, the loss for class j can be calculated by multiplying the cross-entropy loss corresponding to classes j- and j+ by the weights corresponding to classes j- and j+, respectively, and taking the sum. Then, the loss for each is calculated by changing j from 1 to K-1, and the sum is the loss described in Equation 10.
[0035] The objective function optimization unit 24 modifies the parameters of the machine learning model that constitutes the above-mentioned class identification unit 12 so as to minimize the above-mentioned loss. To modify the parameters, a search algorithm for parameters that minimizes the loss is used, such as stochastic gradient descent, adaptive gradient algorithm, or adaptive moment estimation.
[0036] These components use weights that take into account the tendency of errors in the estimated ordinal labels when calculating the loss, allowing for errors in classes that are close in position in the latent space while relatively emphasizing errors in classes that are farther away. This has the effect of enabling training while reducing the influence of noise, even when the training data contains noise. This effect is based on the fact that ordinal labels, due to the order of the labels, tend to result in more patterns of errors in adjacent classes than in classes that are farther away from the true class.
[0037] Furthermore, among the data belonging to class k, data close to class k-1 in the latent space is likely to be mistaken for class k-1, and data close to class k+1 is likely to be mistaken for class k+1. By utilizing this characteristic, the above effect can be achieved by dividing the class into multiple classes and performing training.
[0038] [Operation] Next, a description will be given of the operation of the above-described learning device 1. First, a description will be given of the operation of the information processing unit 10 performing machine learning on a model using training data.
[0039] The label encoding unit 25 outputs extended labels by dividing each class of the order labels into multiple classes according to the class of the order labels associated with the input data of the training data (step S1 in FIG. 2). For example, when the number of order label classes is K=4, the extended label is a vector of length 6 elements, and when the number of order label classes of the training data is k=2, it becomes as shown in Equation 11.
[0040] Next, the weight generation unit 22 generates weights corresponding to the extended labels according to the class of the order label associated with the input data of the training data (step S2 in FIG. 2). For example, when the order label class is K=4, the weights are vectors of length 6 elements, and when the order label class of the training data is k=2, the weights are as shown in Equation 12.
[0041] Next, the feature extraction unit 11 extracts features from the input training data (step S3 in FIG. 2). If the input data is an X-ray image, features representing the image characteristics are extracted from the X-ray image. For example, the luminance value of each pixel constituting the image is extracted, or the average, median, or maximum luminance value for each group of multiple pixels is extracted.
[0042] Next, the class identification unit 12 estimates the probability that the input data will exceed each class of the extended labels in order from the above-mentioned features (step S4 in FIG. 2). For example, when the number of classes of the ordinal labels is K=4, the probability that the input data will exceed each class of the extended labels is expressed as a vector of length 6 elements, and when the number of classes of the ordinal labels of the training data is k=2, it becomes as shown in Equation 13.
[0043] Next, the loss calculation unit 23 calculates the loss as described above using the above-described probability, extended label, and weight (step S5 in FIG. 2). After that, the objective function optimization unit 24 modifies the parameters of the class identification unit 12 so as to reduce the loss (step S6 in FIG. 2), and repeats the processing of steps S3 to S6 described above until a predetermined condition is satisfied (step S7 in FIG. 2).
[0044] 2, the parameters corrected by the objective function optimization unit 24 are not limited to those of the class identification unit 12. For example, when the feature extraction unit 11 learns an optimal feature extraction method by machine learning, the parameters of the feature extraction unit 11 may be corrected in the same way as the parameters of the class identification unit 12.
[0045] Next, as an operation of the learning device 1 trained by machine learning as described above, an operation of estimating the label of input data by the information processing unit 10 will be mainly described.
[0046] First, when input data for which ordinal labels are to be estimated is input, the feature extraction unit 11 extracts features from the input data (step S11 in FIG. 3). For example, if the input data is an X-ray image, features representing the characteristics of the image are extracted from the X-ray image. In this process, for example, the brightness value of each pixel constituting the image is extracted, or the average, median, or maximum brightness value for each group of multiple pixels is extracted.
[0047] Next, the class identification unit 12 estimates the probability that the input data will exceed each class of the extended label in order from the feature amount (step S12 in FIG. 3).
[0048] Then, the label decoding unit 13 converts the probability that the input data exceeds each class of the extended label into an order label (step S13 in FIG. 3).
[0049] As described above, this embodiment is configured to reduce the influence of errors on neighboring classes that are likely to occur in classifying ordinal labels when calculating the loss, so even if there is an error in the training data, the information processing unit can be trained while reducing the influence of the error. Furthermore, this embodiment is further configured to train using extended labels in which each class of ordinal labels is divided into multiple classes, so that the information processing unit can learn the order relationship in the latent space compared to when extended labels are not used.
[0050] Second Embodiment A second embodiment of the present disclosure will be described with reference to the drawings. Note that the drawings may be relevant to any embodiment.
[0051] [Configuration] In the learning device 1 of this embodiment, as in the first embodiment, the input data X is an X-ray image, the progression of a disease estimated based on the X-ray image is in four stages, i.e., K=4, and the input data is classified into four classes.
[0052] 1, the learning device 1 of this embodiment, like the first embodiment, includes an information processing unit 10 including a feature extraction unit 11, a class identification unit 12, and a label decoding unit 13, and a parameter correction unit 20 including a label encoding unit 21, a weight creation unit 22, a loss calculation unit 23, and an objective function optimization unit 24. Each function of this embodiment will be described in detail below.
[0053] The feature extraction unit 11 extracts features from input data. Details of the feature extraction method are as described in the first embodiment, and therefore will not be described here.
[0054] The class identification unit 12 estimates the probability that the class of the input data exceeds each class of the extended labels from the features extracted from the input data as described above. Details of the method for estimating the probability that the class of the input data exceeds each class of the extended labels are as described in the first embodiment, and therefore will not be described again.
[0055] The label decoding unit 13 converts the calculated probability of the augmented label exceeding each class into an ordinal label. Details of the method for converting the probability of the augmented label exceeding each class into an ordinal label are as described in the first embodiment, and therefore will not be described here.
[0056] The label encoding unit 21 receives the ordinal labels of the training data as input and outputs augmented labels. The details of the method for outputting the augmented labels are the same as those described in the first embodiment, and therefore will not be described here.
[0057] The weight generation unit 22 receives the order labels of the training data as input and outputs weights corresponding to the augmented labels. The weights generated here are used to adjust the degree to which errors in each class affect the loss when calculating the loss. For example, when the class of the order labels for training is k, the weights are defined as shown in Equation 14.
[0058] In this case, weights may be set as shown in Equation 15 by using α, β, and γ, which are real numbers between 0 and 1, as hyperparameters indicating the degree of error tolerance.
[0059] In the settings described above, the smaller α, β, and γ are, the more errors are tolerated. When the classes are not adjacent, the weights are set to 1, meaning no errors are tolerated. On the other hand, when the classes are adjacent, errors are tolerated, with α determining the degree of confusion with adjacent class k−1, β determining the degree of confusion within class k, and γ determining the degree of confusion with class k+1. In other words, a smaller weight is set for class j of the expanded label corresponding to class k of the ordered label, or for class j of the expanded label corresponding to class k of the ordered label and classes adjacent to class j, than for the values of the other classes.
[0060] Here, when K=4, the weights corresponding to k=1, 2, 3, and 4 are as shown in Equation 16.
[0061] The above-mentioned α, β, and γ can be determined in advance by a human, or the optimal combination can be determined by grid search. When determining by grid search, multiple candidate values are prepared for each element in the range of 0 to 1. Furthermore, the original training dataset is divided into a training dataset and a validation dataset, and different combinations of α, β, and γ values are used to train with the training dataset and evaluate with the validation dataset, and the combination of α, β, and γ that produces the best performance is used as the optimal weight.
[0062] In this case, candidate values for the grid search may be prepared in the range of 0 to 1 for all of α, β, and γ, or the range may be narrowed depending on the importance of the error. For example, in an example in which the progression of a disease is estimated based on an X-ray image, candidates for α may be prepared in the range of 0.5 to 1 to reflect that an error in estimating the condition to be milder than the actual condition is not tolerated, candidates for β may be prepared in the range of 0 to 0.5 to reflect that an error within the class is tolerated, and candidates for γ may be prepared in the range of 0 to 0.5 to relatively tolerate an error in estimating the condition to be more severe than the actual condition, and the optimal combination may be determined by grid search.
[0063] The loss calculation unit 23 calculates the loss from the probability that the extended label exceeds each class, the extended label, and the weight. The details of the method for calculating the loss are as described in the first embodiment, and therefore will not be described again.
[0064] The objective function optimization unit 24 modifies the parameters of the machine learning model of the class identification unit 12 so as to minimize the loss. Details of the method for modifying the parameters are as described in the first embodiment, and therefore will not be described here.
[0065] These components use weights that take into account the tendency of ordinal label errors when calculating the loss, allowing for errors in classes that are close in the latent space while relatively emphasizing errors in classes that are farther away. This has the effect of making it possible to train while reducing the influence of noise, even when the training data contains noise. This effect is based on the fact that ordinal labels, due to the order of the labels, tend to result in more patterns of errors in adjacent classes than in classes that are farther away from the true class.
[0066] Furthermore, among the data belonging to class k, data close to class k-1 in the latent space is likely to be mistaken for class k-1, and data close to class k+1 is likely to be mistaken for class k+1. By utilizing this characteristic, the above effect can be achieved by dividing the class into multiple classes and performing training.
[0067] Furthermore, by defining weights using a small number of hyperparameters in the weight creation unit 22, an effect is achieved in that efficient training is possible. For example, in the weight definition in the weight creation unit 22 described in the first embodiment, 2×K×(K−1) parameters must be determined manually or by grid search, whereas in the second embodiment, only three parameters, α, β, and γ, must be determined, thereby achieving the above effect. In other words, when K=4, in the first embodiment, the number of parameters that must be determined manually or by grid search is 24, whereas in the second embodiment, it is 3.
[0068] As described above, this embodiment is configured to reduce the influence of errors on neighboring classes that are likely to occur in classifying ordinal labels when calculating the loss, so even if there is an error in the training data, the information processing unit can be trained while reducing the influence of the error. Furthermore, this embodiment is further configured to train using extended labels in which each class of ordinal labels is divided into multiple classes, so that the information processing unit can learn the order relationship in the latent space compared to when extended labels are not used.
[0069] Furthermore, in this embodiment, the number of parameters used in the weight creation unit 22 that need to be determined by humans or by grid search is limited to a small number of only three, so that the information processing unit 10 can be trained efficiently.
[0070] Third Embodiment A third embodiment of the present disclosure will be described with reference to the drawings. Note that the drawings may be relevant to any of the embodiments.
[0071] [Configuration] In the learning device 1 of this embodiment, as in the first and second embodiments, the input data X is an X-ray image, the progression of a disease estimated based on the X-ray image is in four stages, i.e., K=4, and the input data is classified into four classes.
[0072] 1, the learning device 1 of this embodiment, like the first embodiment, includes an information processing unit 10 including a feature extraction unit 11, a class identification unit 12, and a label decoding unit 13, and a parameter correction unit 20 including a label encoding unit 21, a weight creation unit 22, a loss calculation unit 23, and an objective function optimization unit 24. Each function of this embodiment will be described in detail below.
[0073] The feature extraction unit 11 extracts features from input data. Details of the feature extraction method are as described in the first embodiment, and therefore will not be described here.
[0074] The class identification unit 12 estimates the probability that the class of the input data exceeds each class of the extended labels in order from the features extracted from the input data as described above. At this time, the probability of exceeding each class is calculated for the extended labels obtained by dividing each class of the ordinal labels.
[0075] In this embodiment, the extended label is defined as in Equation 17 for the ordinal label y=k (1< . . . <k< . . . <K).
[0076] In this case, the elements of the extended label can be defined as follows:
[0077] This is the encoding of labels by virtually dividing class j into L classes, each of which is 1 when class k exceeds j and 0 otherwise.
[0078] For example, when K=4 and L=3, the expanded label corresponding to k=2 is as shown in Equation 19.
[0079] The probability that the class of the input data exceeds each class of the order label is obtained as a vector of the probability that each element of the extended label is 1 as shown in Equation 20, and is defined as Equation 21.
[0080] The probability that each element of the extended label is 1 is calculated by a machine learning model such as a neural network. In other words, the function of calculating the above-mentioned probability by the class identification unit 12 is realized by a machine learning model, and is generated by machine learning in the parameter correction unit 20 described later.
[0081] Here, when K=4 and L=3, the probability that an ordinal label exceeds each class calculated for certain input data is expressed as, for example, Equation 22.
[0082] The label decoding unit 13 converts the probability of the extended label exceeding each class into an order label. Specifically, a threshold is set for Equation (23) among the elements of the extended label with a probability exceeding each class, and the number of elements exceeding the threshold plus 1 is output as the order label. For example, if the threshold is 0.5, in the case of Equation (22), the elements corresponding to Equation (23) are 0.7, 0.7, and 0.0, and of these, two exceed the threshold of 0.5, so the order label in this case is 3.
[0083] The label encoding unit 21 receives the order labels of the training data as input and outputs the augmented labels. The method of encoding the order labels into the augmented labels is as described above.
[0084] The weight generation unit 22 receives the order labels of the training data as input and outputs weights corresponding to the augmented labels. The weights generated here are used to adjust the degree to which errors in each class affect the loss when calculating the loss. When the class of the order labels for training is k, the weights are defined as in Equation 24.
[0085] In this case, each weight element is a real number between 0 and 1. Each weight element can be determined by a human during training so that errors for classes located close in the latent space are tolerated, while errors for classes located farther away are relatively emphasized. By setting the value small when the positions in the latent space are close, i.e., when the absolute value of the difference between k and j is small, and setting the value large when the positions are far away, i.e., when the absolute value of the difference between k and j is large, it is possible to achieve a relationship of relative tolerance and emphasis on errors.
[0086] Here, when K=4 and L=3, the weight corresponding to k=2 can be set as shown in Equation 25.
[0087] Furthermore, even if classes have similar distances in the latent space, the importance of errors may differ. For example, when estimating the progression of a disease based on X-ray images, an error that estimates the condition to be milder than the actual condition is considered to be less tolerable than an error that estimates the condition to be more severe than the actual condition. In such cases, by increasing the value of the weight element where j≦k, it is possible to incorporate differences in the tolerance of errors into the calculation of loss.
[0088] Furthermore, weights can be determined not only by a human being but also by using a grid search to determine the optimal set. When determining weights using a grid search, multiple candidate values are prepared for each element in the range of 0 to 1. Furthermore, the original training dataset is divided into a training dataset and a validation dataset, and different sets of element values are used to train the training dataset and evaluate the validation dataset, and the set of elements that provides the best performance is used as the optimal weight.
[0089] In this case, candidate values for the grid search may be prepared in the range of 0 to 1, or the range may be narrowed depending on the importance of the error. For example, in an example in which the progression of a disease is estimated based on an X-ray image, candidates may be prepared in the range of 0.5 to 1, inclusive, when j≦k, to reflect that an error in estimating the condition to be milder than the actual condition is not tolerated, and candidates may be prepared in the range of 0 to 0.5, inclusive, when k≦j, to relatively tolerate an error in estimating the condition to be more severe than the actual condition, and the optimal combination may be determined by grid search.
[0090] The loss calculation unit 23 calculates the loss from the probability that the extended label exceeds each class, the extended label, and the weight. The loss is defined as in Equation 26.
[0091] Equation 26 is a generalization of Equation 10 described in the first embodiment. That is, what is written with subscripts - and + in Equation 10 corresponds to the case where L=2 in Equation 26, and Equation 26 is calculated in the same way as Equation 10.
[0092] The objective function optimization unit 24 modifies the parameters of the machine learning model of the class identification unit 112 so as to minimize the loss. To modify the parameters, a search algorithm for parameters that minimize the loss is used, such as stochastic gradient descent, adaptive gradient algorithm, or adaptive moment estimation.
[0093] These components use weights that take into account the tendency of ordinal label errors when calculating the loss, allowing for errors in classes that are close in the latent space while relatively emphasizing errors in classes that are farther away. This has the effect of making it possible to train while reducing the influence of noise, even when the training data contains noise. This effect is based on the fact that ordinal labels, due to the order of the labels, tend to result in more patterns of errors in adjacent classes than in classes that are farther away from the true class.
[0094] [Operation] Next, the operation of the learning device described above will be described.
[0095] In the learning device 1, first, the label encoding unit 25 outputs extended labels obtained by dividing each class of the order labels into multiple classes (step S1 in FIG. 2). Next, the weight creation unit 22 creates weights corresponding to the extended labels from the order labels (step S2 in FIG. 2).
[0096] Next, the feature extraction unit 11 extracts features from the input data (step S3 in FIG. 2). Furthermore, the class identification unit 12 estimates the probability that the input data exceeds each class of the extended labels from the features (step S4 in FIG. 2). Furthermore, the loss calculation unit 23 calculates the loss (step S5 in FIG. 2). Thereafter, the objective function optimization unit 24 modifies the parameters of the class identification unit 12 to reduce the loss (step S6 in FIG. 2), and repeats the processes of steps S3 to S6 described above until a predetermined condition is met (step S7 in FIG. 2).
[0097] 2 , the parameters corrected by the objective function optimization unit 24 are not limited to those of the class identification unit 12. When the feature extraction unit 11 learns an optimal feature extraction method by machine learning, the parameters of the feature extraction unit 11 may be corrected in the same way as the parameters of the class identification unit 12.
[0098] The information processing unit 10, which has been trained by the learning device 1 as described above, operates as follows: The information processing unit 10 extracts features from input data using the feature extraction unit 11 (step S11 in FIG. 3). When the input is an X-ray image, features representing the characteristics of the image are extracted from the X-ray image. For example, the luminance value of each pixel constituting the image is extracted, or the average, median, or maximum luminance value for each group of multiple pixels is extracted.
[0099] Furthermore, the class identification unit 12 estimates the probability that the input data exceeds each class of the extended label from the feature (step S12 in FIG. 3). Furthermore, the label decoding unit 13 converts the probability that the input data exceeds each class of the extended label into an ordinal label (step S13 in FIG. 3).
[0100] As described above, this embodiment is configured to reduce the influence of errors on neighboring classes that are likely to occur in classifying ordinal labels when calculating the loss, so even if there is an error in the training data, the information processing unit can be trained while reducing the influence of the error. Furthermore, this embodiment is further configured to train using extended labels in which each class of ordinal labels is divided into multiple classes, so that the information processing unit can learn the order relationship in the latent space compared to when extended labels are not used.
[0101] Fourth Embodiment A fourth embodiment of the present disclosure will be described with reference to the drawings. Note that the drawings may be relevant to any of the embodiments.
[0102] [Configuration] As in the first, second, and third embodiments, the learning device 1 in this embodiment will be described by taking as an example a case where input data X is an X-ray image, the disease progression estimated based on the X-ray image is divided into four stages, i.e., K=4, and the input data is classified into one of four classes. Also, consider a case where training order labels representing the disease progression of the input data are assigned by A doctors, i.e., A order labels are assigned to one piece of input data. In such a case, there is a deviation in the standard depending on the experience of each doctor, and it is not necessarily the case that all A order labels match. In this case, the input data, which is training data, is assigned attribute information identifying each doctor who assigned the order labels. In other words, the input data is assigned A attribute information along with A order labels.
[0103] 1, the learning device 1 of this embodiment, like the first embodiment, includes an information processing unit 10 including a feature extraction unit 11, a class identification unit 12, and a label decoding unit 13, and a parameter correction unit 20 including a label encoding unit 21, a weight creation unit 22, a loss calculation unit 23, and an objective function optimization unit 124. Each function of this embodiment will be described in detail below.
[0104] The feature extraction unit 11 extracts features from input data. Details of the feature extraction method are as described in the first embodiment, and therefore will not be described here.
[0105] The class identification unit 12 estimates the probability that the class of the input data exceeds each class of the extended labels from the features extracted from the input data. Details of the method for estimating the probability that the class of the input data exceeds each class of the extended labels are as described in the first or third embodiment, and therefore will not be described here.
[0106] The label decoding unit 13 converts the probability of the extended label exceeding each class into an ordinal label. Details of the method for converting the probability of the ordinal label exceeding each class into an ordinal label are as described in the first or third embodiment, and therefore will not be described here.
[0107] The label encoding unit 21 receives A ordinal labels of the training data as input and outputs A augmented labels corresponding to the respective ordinal labels. That is, the label encoding unit 21 outputs augmented labels corresponding to the ordinal labels of the A doctors. Details of the method for outputting the augmented labels are as described in the first or third embodiment, and therefore will not be described here.
[0108] The weight creation unit 22 receives A ordinal labels of the training data as input and outputs weights corresponding to the A augmented labels. That is, the weight creation unit 22 outputs weights of the augmented labels corresponding to the ordinal labels of each of the A doctors. Details of the method for outputting the weights are as described in the first or third embodiment, and therefore will not be described here.
[0109] The loss calculation unit 23 calculates the loss corresponding to each of the A doctors from the probability that the extended label exceeds each class, the A extended labels, and the A weights, and then calculates the total of the losses. Here, the function of the loss calculation unit 23 will be further described with reference to FIG. 4.
[0110] The loss calculation unit 23 calculates the loss La corresponding to each of the A doctors from the probability that the extended label exceeds each class, the A extended labels, and the A weights, as shown in Equation 27, and calculates the sum as shown in Equation 28.
[0111] Here, λa in Equation 29 is a weighting corresponding to each doctor a and is a real number equal to or greater than 0. The larger this value, the more importance is attached to the order labels assigned by that doctor when calculating the total loss, and the greater the impact on training of the information processing unit 10. For example, the value can be set proportional to the doctor's years of clinical experience, or the doctor's own confidence in the order labels assigned by him / her can be scored and set proportional to the score.
[0112] The details of the method for calculating the loss corresponding to each of the A doctors shown in Equation 28 are as described in the first or third embodiment, and therefore will not be described here.
[0113] The objective function optimization unit 24 modifies the parameters of the machine learning model of the class identification unit 12 so as to minimize the loss. Details of the method for modifying the parameters are as described in the first embodiment, and therefore will not be described here.
[0114] These components use weights that take into account the tendency of ordinal label errors when calculating the loss, allowing for errors in classes that are close in the latent space while relatively emphasizing errors in classes that are farther away. This has the effect of making it possible to train while reducing the influence of noise, even when the training data contains noise. This effect is based on the fact that ordinal labels, due to the order of the labels, tend to result in more patterns of errors in adjacent classes than in classes that are farther away from the true class.
[0115] Furthermore, among the data belonging to class k, data close to class k-1 in the latent space is likely to be mistaken for class k-1, and data close to class k+1 is likely to be mistaken for class k+1. By utilizing this characteristic, the above effect can be achieved by dividing the class into multiple classes and performing training.
[0116] Furthermore, by using multiple order labels corresponding to input data, for example order labels assigned by multiple doctors, in training, it becomes possible to achieve learning that integrates the thoughts and standards of multiple evaluators.The above effect is achieved by training the information processing unit 10 so as to minimize the sum of multiple losses calculated for the multiple order labels.
[0117] [Operation] Next, the operation of the learning device described above will be described.
[0118] In the learning device 1, first, the label encoding unit 25 outputs A augmented labels obtained by dividing each class of the A order labels into multiple classes (step S1 in FIG. 2). Next, the weight creation unit 22 creates A weights corresponding to the augmented labels from the A order labels (step S2 in FIG. 2).
[0119] Next, the feature extraction unit 11 extracts features from the input data (step S3 in FIG. 2). Furthermore, the class identification unit 12 estimates the probability that the input data exceeds each class of the extended labels from the features (step S4 in FIG. 2). Furthermore, the loss calculation unit 23 calculates the loss (step S5 in FIG. 2 and see FIG. 4). Thereafter, the objective function optimization unit 24 modifies the parameters of the class identification unit to reduce the loss (step S6 in FIG. 2), and repeats the above-described steps S3 to S6 until a predetermined condition is met (step S7 in FIG. 2).
[0120] 2 , the parameters corrected by the objective function optimization unit 24 are not limited to those of the class identification unit 12. When the feature extraction unit 11 learns an optimal feature extraction method by machine learning, the parameters of the feature extraction unit 11 may be corrected in the same way as the parameters of the class identification unit 12.
[0121] The information processing unit 10, which has been trained by the learning device 1 as described above, operates as follows: The information processing unit 10 extracts features from input data using the feature extraction unit 11 (step S11 in FIG. 3). When the input is an X-ray image, features representing the characteristics of the image are extracted from the X-ray image. For example, the luminance value of each pixel constituting the image is extracted, or the average, median, or maximum luminance value for each group of multiple pixels is extracted.
[0122] Furthermore, the class identification unit 12 estimates the probability that the input data exceeds each class of the extended label from the feature (step S12 in FIG. 3). Furthermore, the label decoding unit 13 converts the probability that the input data exceeds each class of the extended label into an ordinal label (step S13 in FIG. 3).
[0123] As described above, this embodiment is configured to reduce the influence of errors on neighboring classes that are likely to occur in classifying ordinal labels when calculating the loss, so even if there is an error in the training data, the information processing unit can be trained while reducing the influence of the error. Furthermore, this embodiment is further configured to train using extended labels in which each class of ordinal labels is divided into multiple classes, so that the information processing unit can learn the order relationship in the latent space compared to when extended labels are not used.
[0124] Furthermore, in this embodiment, by using multiple order labels corresponding to input data, for example order labels assigned by multiple doctors, for training the information processing unit 10, it is possible to integrate and learn the thoughts and standards of multiple evaluators.
[0125] Fifth Embodiment A fifth embodiment of the present disclosure will be described with reference to the drawings. Note that the drawings may be relevant to any of the embodiments.
[0126] [Configuration] As in the fourth embodiment, the learning device 1 in this embodiment classifies the input data X into four classes, where input data X is an X-ray image, the stage of disease estimated based on the X-ray image is four stages, i.e., K=4, and the input data belongs to one of the four classes. The example will be described in which training order labels representing the stage of disease for the input data have been assigned by A doctors, i.e., A order labels have been assigned to one piece of input data.
[0127] The learning device 1 in this embodiment has a configuration similar to that of the first embodiment. That is, as shown in Fig. 5, the learning device 1 in this embodiment is composed of an information processing unit 10 including a feature extraction unit 11, a class identification unit 12, and a label decoding unit 13, and a parameter correction unit 20 including a label encoding unit 21, a weight creation unit 22, a loss calculation unit 23, and an objective function optimization unit 24. In this embodiment, the class identification unit 12 is composed of A class identification units 12 corresponding to A doctors, respectively.
[0128] The feature extraction unit 11 extracts features from input data. Details of the feature extraction method are the same as those described as the operation of the feature extraction unit 11 in the first embodiment, and therefore will not be described again.
[0129] The class identification unit 12 estimates the probability that the class of the input data exceeds each class of the extended labels from the features extracted from the input data. The class identification unit 12 is composed of A class identification units 12, and each of the A class identification units 12 estimates the probability that the class of the input data exceeds each class of the extended labels. In other words, for the input features, A vectors of probabilities that the class of the input data exceeds each class of the extended labels are output. The probability of exceeding each class of the ordinal labels corresponding to evaluator a when K=4 can be written as shown in Equation 30.
[0130] Furthermore, if A=3, that is, if there are three doctors who evaluate, the three class identification units 12 output the probability that the extended label exceeds each class, as shown in Equation 31, for example.
[0131] The label decoding unit 13 converts the probabilities of the A expanded labels exceeding each class into ordinal labels. First, the average of the probabilities of the ordinal labels exceeding each class is calculated. Using the example of Equation 31, this is calculated as shown in Equation 32, for example.
[0132] In this case, the weighting corresponding to the evaluator, Doctor A, may be used to calculate a weighted average. The weighting may be determined, for example, in proportion to the doctor's years of clinical experience. For example, when the weightings of Evaluators 1, 2, and 3 are 0.8, 0.1, and 0.1, respectively, the calculation can be performed as shown in Equation 33.
[0133] Then, among the elements with probabilities exceeding each class of the extended label, a threshold is set for Equation 34, and the number of elements exceeding the threshold plus 1 is output as the order label. For example, if the threshold is 0.5, in the case of Equation 33, the elements corresponding to Equation 34 are 0.7, 0.0, and 0.0, and of these, only one exceeds the threshold of 0.5, so the order label in this case is 2.
[0134] The label encoding unit 21 receives A ordinal labels of the training data as input and outputs A corresponding augmented labels. Details of the method for outputting the augmented labels are the same as those described as the operation of the feature extraction unit 11 in the first or third embodiment, and therefore will not be described here.
[0135] The weight creation unit 22 receives A ordinal labels of the training data as input and outputs weights corresponding to the A extended labels. Details of the method for outputting the weights are the same as those described as the operation of the feature extraction unit 11 in the first or third embodiment, and therefore will not be described here.
[0136] The loss calculation unit 23 calculates the loss corresponding to each of the A doctors from the probability that the A extended labels exceed each class, the A extended labels, and the A weights, and calculates the total. Here, an overview of the function of the loss calculation unit 23 is shown in FIG. 6 , but the details of the method for calculating the loss corresponding to each of the A doctors are as described in the first or third embodiment, so their description will be omitted. Furthermore, the details of the method for calculating the total loss are as described in the fourth embodiment, so their description will be omitted.
[0137] The objective function optimization unit 24 modifies the parameters of the machine learning model of the class identification unit 12 so as to minimize the loss. Details of the method for modifying the parameters are as described in the first embodiment, and therefore will not be described here.
[0138] These components use weights that take into account the tendency of ordinal label errors when calculating the loss, allowing for errors in classes that are close in the latent space while relatively emphasizing errors in classes that are farther away. This has the effect of making it possible to train while reducing the influence of noise, even when the training data contains noise. This effect is based on the fact that ordinal labels, due to the order of the labels, tend to result in more patterns of errors in adjacent classes than in classes that are farther away from the true class.
[0139] Furthermore, among the data belonging to class k, data close to class k-1 in the latent space is likely to be mistaken for class k-1, and data close to class k+1 is likely to be mistaken for class k+1. By utilizing this characteristic, the above effect can be achieved by dividing the class into multiple classes and performing training.
[0140] Furthermore, by using multiple order labels corresponding to input data, for example order labels assigned by multiple doctors, in training, it becomes possible to achieve learning that integrates the thoughts and standards of multiple evaluators.The above effect is achieved by training the information processing unit 10 so as to minimize the sum of multiple losses calculated for the multiple order labels.
[0141] Furthermore, by training multiple class identification units 12 using features output from the same feature extraction unit 11, it becomes possible for the feature extraction unit 11 to learn correctly even in a situation where multiple people perform labeling and there is a deviation in standards depending on individual experience.
[0142] In the fourth embodiment described above, one class identification unit 12 is trained to minimize errors for multiple training labels. Therefore, if there is a difference in the standards between the doctors who assigned the training order labels, the unit may end up learning an average standard between the standards, i.e., a standard that is neither of the standards, resulting in a problem in which either the feature extraction unit or the class identification unit, or both, cannot train correctly. In contrast, in this embodiment, A class identification units 12 are trained using A types of order labels, for example, order labels assigned by A doctors. This makes it possible to train the output of each class identification unit 12 to approach the training labels assigned by each doctor while maintaining the order relationship in the latent space learned by the feature extraction unit 11, thereby achieving the above-mentioned effect.
[0143] [Operation] Next, the operation of the learning device described above will be described.
[0144] In the learning device 1, first, the label encoding unit 25 outputs A augmented labels obtained by dividing each class of the A order labels into multiple classes (step S1 in FIG. 2). Next, the weight creation unit 22 creates A weights corresponding to the augmented labels from the A order labels (step S2 in FIG. 2).
[0145] Next, the feature extraction unit 11 extracts features from the input data (step S3 in FIG. 2). Furthermore, the class identification unit 12 estimates the probability that the input data exceeds each class of the extended labels from the features (step S4 in FIG. 2). Furthermore, the loss calculation unit 23 calculates the loss (step S5 in FIG. 2 and see FIG. 4). Thereafter, the objective function optimization unit 24 modifies the parameters of the class identification unit to reduce the loss (step S6 in FIG. 2), and repeats the above-described steps S3 to S6 until a predetermined condition is met (step S7 in FIG. 2).
[0146] 2 , the parameters corrected by the objective function optimization unit 24 are not limited to those of the class identification unit 12. When the feature extraction unit 11 learns an optimal feature extraction method by machine learning, the parameters of the feature extraction unit 11 may be corrected in the same way as the parameters of the class identification unit 12.
[0147] The information processing unit 10, which has been trained by the learning device 1 as described above, operates as follows: The information processing unit 10 extracts features from input data using the feature extraction unit 11 (step S21 in FIG. 7). When the input is an X-ray image, the information processing unit 10 extracts features representing the characteristics of the image from the X-ray image. For example, the information processing unit 10 extracts the luminance value of each pixel that constitutes the image, or extracts the average, median, or maximum luminance value for each group of multiple pixels.
[0148] Furthermore, the class identification unit 12 estimates the average probability that the input data exceeds each class of the extended label from the feature (step S22 in FIG. 7). Furthermore, the label decoding unit 13 converts the average probability that the input data exceeds each class of the extended label into an ordinal label (step S23 in FIG. 7).
[0149] As described above, this embodiment is configured to reduce the influence of errors on neighboring classes that are likely to occur in classifying ordinal labels when calculating the loss, so even if there is an error in the training data, the information processing unit can be trained while reducing the influence of the error. Furthermore, this embodiment is further configured to train using extended labels in which each class of ordinal labels is divided into multiple classes, so that the information processing unit can learn the order relationship in the latent space compared to when extended labels are not used.
[0150] Furthermore, in this embodiment, by using multiple order labels corresponding to input data, for example order labels assigned by multiple doctors, for training the information processing unit 10, it is possible to integrate and learn the thoughts and standards of multiple evaluators.
[0151] Furthermore, in this embodiment, by training multiple class identification units 12 using features output from the same feature extraction unit 11, it becomes possible for the feature extraction unit 11 to learn correctly even in a situation where multiple people perform labeling and there is a deviation in the criteria depending on each individual's experience.
[0152] As described above, according to the present disclosure, in ordinal regression, correct learning is possible even when the labels of learning data contain errors, inconsistencies in standards due to individual subjectivity, or inconsistencies in standards that depend on the individual experiences in situations where multiple people perform labeling. Therefore, the present disclosure can be applied to applications such as estimating the presence or absence and progression of a disease using medical images such as X-ray images or endoscopic images as input, which contain errors, subjectivity, or inconsistencies in the data, estimating the presence or absence and progression of a disease using patient symptoms and test results in addition to medical images as input, estimating stress or pain intensity using physiological measurements such as heart rate, respiratory rate, and sweat rate, or answers to questions as input, and estimating product ratings using product review text from online product purchasing sites as input.
[0153] Sixth Embodiment Next, a sixth embodiment of the present disclosure will be described with reference to the drawings. This embodiment shows an outline of the configuration of the learning device described in the above-mentioned embodiments. Note that Figures 8 and 9 are diagrams for explaining the configuration, and these diagrams may be relevant to any of the embodiments.
[0154] First, the hardware configuration of the learning device 100 will be described with reference to Figure 8. The learning device 100 is configured as a general information processing device, and is equipped with the following hardware configuration, as an example: CPU (Central Processing Unit) 101 (arithmetic unit) ROM (Read Only Memory) 102 (storage device) RAM (Random Access Memory) 103 (storage device) Programs 104 loaded into RAM 103 Storage device 105 that stores programs 104 Drive device 106 that reads and writes data from and to a storage medium 110 external to the information processing device Communication interface 107 that connects to a communication network 111 external to the information processing device Input / output interface 108 that inputs and outputs data Bus 109 that connects the various components
[0155] 8 shows an example of the hardware configuration of the information processing device that is the learning device 100, and the hardware configuration of the information processing device is not limited to the above-described case. For example, the information processing device may be configured with a part of the above-described configuration, such as not including the drive device 106. Furthermore, instead of the above-described CPU, the information processing device may use a GPU (Graphics Processing Unit), a DSP (Digital Signal Processor), an MPU (Micro Processing Unit), an FPU (Floating Point Number Processing Unit), a PPU (Physics Processing Unit), a TPU (Tensor Processing Unit), a quantum processor, a microcontroller, or a combination thereof.
[0156] The learning device 100 can be equipped with the acquisition unit 121, estimation unit 122, and learning unit 123 shown in FIG. 9 by having the CPU 101 acquire and execute the program group 104. The program group 104 is stored in advance in the storage device 105 or ROM 102, for example, and is loaded into the RAM 103 and executed by the CPU 101 as needed. The program group 104 may be supplied to the CPU 101 via the communication network 111, or may be stored in advance in the storage medium 110, with the drive device 106 reading out the program and supplying it to the CPU 101. However, the acquisition unit 121, estimation unit 122, and learning unit 123 described above may be constructed using dedicated electronic circuits for realizing such means.
[0157] The acquiring unit 121 acquires, for training data in which input data and corresponding classes in order labels in which an order of classes into which the input data is classified is set, extended labels set according to the corresponding classes and in which each of the classes in the order labels is divided into a plurality of subclasses, and weights set according to the corresponding classes and corresponding to each of the subclasses in the extended labels. At this time, for example, the value of a subclass is set for the extended label depending on whether the corresponding class exceeds the subclass in order.
[0158] The estimation unit 122 is configured to calculate, based on the input data, a probability that the class of the input data exceeds each of the subclasses of the extended label in order, and to estimate the class of the ordinal label based on the probability. In this case, the estimation unit is a model machine-learned by a learning unit. For example, the estimation unit may be configured to include a probability calculation unit that calculates the probability that the class of the input data exceeds each of the subclasses in order, and a conversion unit that estimates the class of the ordinal label based on the probability, and the probability calculation unit may be trained by the learning unit.
[0159] The learning unit 123 performs machine learning on the estimation unit using a loss based on the probability, the extended label, and the weight. For example, the learning unit calculates the degree of error in estimation for the training data in each of the subclasses based on the probability, the extended label, and the weight as the loss, and performs machine learning on the estimation unit so as to reduce the loss.
[0160] Since the present disclosure is configured as described above and is configured to train using augmented labels obtained by dividing each class of ordinal labels into multiple classes, it is possible to make the model learn the order relationship of labels in the latent space compared to when augmented labels are not used. As a result, it is possible to generate an ordinal regression learning model that can make estimations with high accuracy.
[0161] In addition, at least one of the functions of the above-mentioned acquisition unit 121, estimation unit 122, and learning unit 123 may be executed by an information processing device installed and connected anywhere on the network, that is, they may be executed by so-called cloud computing.
[0162] The above-described program can be stored and supplied to a computer using various types of non-transitory computer-readable media. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-RWs, and semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs (Random Access Memory)). The program can also be supplied to a computer by various types of transitory computer-readable media. Examples of transitory computer-readable media include electrical signals, optical signals, and electromagnetic waves. The transitory computer-readable media can be supplied to a computer via wired communication paths such as electric wires and optical fibers, or via wireless communication paths.
[0163] Although the present disclosure has been described above with reference to the above-described embodiments, the present disclosure is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. Furthermore, each of the above-described embodiments can be combined with other embodiments as appropriate.
[0164] <Supplementary Notes> Some or all of the above embodiments may be described as in the following supplementary notes. Below, an outline of the configurations of a learning device, a learning method, and a program according to the present disclosure will be described. However, the present disclosure is not limited to the following configurations. (Supplementary Note 1) A learning device including: an acquisition unit that, for training data in which input data and a corresponding class in an order label in which an order of classes into which the input data is classified is set, acquires: extended labels that are set according to the corresponding class and in which each of the classes in the order label is divided into a plurality of subclasses; and weights that are set according to the corresponding class and corresponding to each of the subclasses of the extended label; an estimation unit that is configured to calculate, based on the input data, a probability that the class of the input data will exceed each of the subclasses of the extended label in order, and to estimate the class of the order label based on the probability; and a learning unit that trains the estimator using a loss based on the probability, the extended label, and the weight. (Supplementary Note 2) The learning device according to Supplementary Note 1, wherein the learning unit calculates a degree of error in estimation for the training data in each of the subclasses as the loss based on the probability, the extended label, and the weight, and trains the estimation unit to reduce the loss. (Supplementary Note 3) The learning device according to Supplementary Note 2, wherein the extended label is set to a value of a subclass depending on whether the corresponding class exceeds the subclass in order, and the estimation unit comprises: a probability calculation unit that calculates a probability that the class of the input data exceeds each of the subclasses in order, and a conversion unit that estimates the class of the order label based on the probability, and the learning unit trains the probability calculation unit using the loss. (Supplementary Note 4) The learning device according to Supplementary Note 3, wherein the estimation unit includes a feature extraction unit that extracts features of the input data; the probability calculation unit is configured to calculate the probability that a class of the input data exceeds each of the subclasses in order based on the features of the input data; and the learning unit trains the feature extraction unit and the probability calculation unit using the loss.(Supplementary Note 5) The learning device according to Supplementary Note 2, wherein the weight is set to a larger value for another subclass that is farther away from the subclass corresponding to the corresponding class, and the learning unit calculates the loss such that the larger the value of the weight set for the subclass, the larger the loss for the subclass. (Supplementary Note 6) The learning device according to Supplementary Note 5, wherein the weight values for the subclass corresponding to the corresponding class and the subclasses adjacent to the subclass are set smaller than the values for the other subclasses. (Supplementary Note 7) The learning device according to Supplementary Note 6, wherein the weight value for the subclass corresponding to the corresponding class is set smaller than the values for the other subclasses. (Supplementary Note 8) The learning device according to Supplementary Note 3, wherein the training data has attributes assigned to the order labels, the acquisition unit acquires the extended labels and the weights corresponding to each of the attributes assigned to the order labels, the learning unit calculates the loss for each of the attributes and calculates the integrated loss by adding a weight set for each of the attributes to the loss for each of the attributes, and trains the probability calculation unit using the integrated loss. (Supplementary Note 9) The learning device according to Supplementary Note 8, wherein the estimation unit includes a plurality of probability calculation units that calculate the probability for each of the attributes, and the learning unit trains each of the plurality of probability calculation units using the integrated loss. (Supplementary Note 10) A learning method comprising: for training data associated with input data and a corresponding class in an order label in which an order of classes into which the input data is classified is set, obtaining extended labels set according to the corresponding class, in which each of the classes in the order label is divided into a plurality of subclasses, and weights set according to the corresponding class and corresponding to each of the subclasses of the extended label; calculating, based on the input data, a probability that the class of the input data exceeds each of the subclasses of the extended label in order, and training an estimation unit configured to estimate the class of the order label based on the probability using a loss based on the probability, the extended label, and the weight.(Supplementary Note 11) The learning method according to Supplementary Note 10, wherein a degree of error in estimation for the training data in each of the subclasses is calculated as the loss based on the probability, the extended label, and the weight, and the estimator is trained to reduce the loss. (Supplementary Note 12) The learning method according to Supplementary Note 11, wherein the extended label is set to a value of a subclass depending on whether the corresponding class exceeds the subclass in order, and the estimator is configured to include a probability calculation unit that calculates a probability that the class of the input data exceeds each of the subclasses in order, and a conversion unit that estimates the class of the ordinal label based on the probability, and the probability calculation unit is trained using the loss. (Supplementary Note 13) The learning method according to Supplementary Note 12, wherein the estimation unit is configured to include a feature extraction unit that extracts features of the input data, and the probability calculation unit is configured to calculate the probability that the class of the input data will surpass each of the subclasses in order based on the features of the input data, and the feature extraction unit and the probability calculation unit are trained using the loss. (Supplementary Note 14) The learning method according to Supplementary Note 11, wherein the weight is set to a larger value for another subclass that is farther away from the subclass corresponding to the corresponding class, and the loss is calculated so that the larger the value of the weight set for the subclass, the larger the loss for the subclass. (Supplementary Note 15) The learning method according to Supplementary Note 12, wherein the training data has attributes assigned to the order labels, the extended labels and the weights corresponding to each of the attributes assigned to the order labels are acquired, the loss for each of the attributes is calculated, and a weight set for each of the attributes is added to the loss for each of the attributes to calculate an integrated loss, and the probability calculation unit is trained using the integrated loss. (Supplementary Note 16) The learning method according to Supplementary Note 15, wherein the learning method is configured to include a plurality of probability calculation units that calculate the probability for each of the attributes, and the plurality of probability calculation units are trained using the integrated loss.(Supplementary Note 17) A computer-readable storage medium storing a program that causes a computer to execute a process of: acquiring, for training data in which input data and a corresponding class in an order label in which an order of classes into which the input data is classified is set, extended labels that are set according to the corresponding class and in which each of the classes in the order label is divided into a plurality of subclasses, and weights that are set according to the corresponding class and corresponding to each of the subclasses of the extended label; calculating, based on the input data, a probability that the class of the input data will exceed each of the subclasses of the extended label in order, and training an estimation unit that is configured to estimate the class of the order label based on the probability using a loss based on the probability, the extended label, and the weight.
[0165] REFERENCE SIGNS LIST 1 Learning device 10 Information processing unit 11 Feature extraction unit 12 Class identification unit 13 Label decoding unit 20 Parameter correction unit 21 Label encoding unit 22 Weight creation unit 23 Loss calculation unit 24 Objective function optimization unit 100 Learning device 101 CPU 102 ROM 103 RAM 104 Program group 105 Storage device 106 Drive device 107 Communication interface 108 Input / output interface 109 Bus 110 Storage medium 111 Communication network 121 Acquisition unit 122 Estimation unit 123 Learning unit
Claims
1. A learning device comprising: an acquisition unit that acquires, for training data associated with input data and a corresponding class in an order label in which an order of classes into which the input data is classified is set, an extended label set according to the corresponding class, in which each of the classes in the order label is divided into a plurality of subclasses, and a weight set according to the corresponding class and corresponding to each of the subclasses of the extended label; an estimation unit configured to calculate, based on the input data, a probability that the class of the input data exceeds each of the subclasses of the extended label in order, and to estimate the class of the ordinal label based on the probability; and a learning unit that trains the estimation unit using a loss based on the probability, the extended label, and the weight.
2. A learning device as described in claim 1, wherein the learning unit calculates the degree of error in estimation for the training data in each of the subclasses as the loss based on the probability, the extended label, and the weight, and trains the estimation unit so as to reduce the loss.
3. A learning device as described in claim 2, wherein the expanded label is set to a value of the subclass depending on whether the corresponding class exceeds the subclass in order, the estimation unit comprises a probability calculation unit that calculates a probability that the class of the input data exceeds each of the subclasses in order, and a conversion unit that estimates the class of the order label based on the probability, and the learning unit trains the probability calculation unit using the loss.
4. A learning device as described in claim 3, wherein the estimation unit includes a feature extraction unit that extracts features of the input data, the probability calculation unit is configured to calculate the probability that the class of the input data will exceed each of the subclasses in order based on the features of the input data, and the learning unit trains the feature extraction unit and the probability calculation unit using the loss.
5. A learning device according to claim 2, wherein the weight is set to a larger value for another subclass that is farther away from the subclass corresponding to the corresponding class, and the learning unit calculates the loss such that the larger the weight value set for the subclass, the larger the loss for that subclass.
6. A learning device according to claim 5, wherein the weights are set so that the values of the subclass corresponding to the corresponding class and the subclass adjacent to the subclass are smaller than the values of the other subclasses.
7. A learning device according to claim 6, wherein the weight is set so that the value of the subclass corresponding to the corresponding class is smaller than the values of the other subclasses.
8. A learning device as described in claim 3, wherein the training data has attributes assigned to the order labels, the acquisition unit acquires the extended labels and the weights corresponding to each of the attributes assigned to the order labels, and the learning unit calculates the loss for each attribute and calculates the integrated loss by adding a weight set for each attribute to the loss for each attribute, and trains the probability calculation unit using the integrated loss.
9. A learning device as described in claim 8, wherein the estimation unit includes a plurality of probability calculation units that calculate the probability for each of the attributes, and the learning unit trains each of the plurality of probability calculation units using the integrated loss.
10. A learning method comprising the steps of: obtaining, for training data associated with input data and a corresponding class in an order label in which an order of classes into which the input data is classified is set, an extended label set according to the corresponding class and in which each of the classes in the order label is divided into a plurality of subclasses; and a weight set according to the corresponding class and corresponding to each of the subclasses of the extended label; calculating, based on the input data, a probability that the class of the input data exceeds each of the subclasses of the extended label in order, and training an estimation unit configured to estimate the class of the order label based on the probability using a loss based on the probability, the extended label, and the weight.
11. A learning method according to claim 10, further comprising: calculating a degree of error in estimation for the training data in each of the subclasses based on the probability, the extended label, and the weights as the loss; and training the estimation unit so as to reduce the loss.
12. A learning method as described in claim 11, wherein the expanded label is set to a value of the subclass depending on whether the corresponding class exceeds the subclass in order, and the estimation unit is configured to include a probability calculation unit that calculates the probability that the class of the input data exceeds each of the subclasses in order, and a conversion unit that estimates the class of the order label based on the probability, and the probability calculation unit is trained using the loss.
13. A learning method as described in claim 12, wherein the estimation unit is configured to include a feature extraction unit that extracts features of the input data, and the probability calculation unit is configured to calculate the probability that the class of the input data will exceed each of the subclasses in order based on the features of the input data, and the feature extraction unit and the probability calculation unit are trained using the loss.
14. A learning method according to claim 11, wherein the weight is set to a larger value for another subclass that is farther away from the subclass corresponding to the corresponding class, and the loss is calculated such that the larger the weight value set for the subclass, the larger the loss for that subclass.
15. A learning method as described in claim 12, wherein the training data has attributes assigned to the order labels, the extended labels and the weights corresponding to each of the attributes assigned to the order labels are obtained, the loss is calculated for each attribute, and a weight set for each attribute is added to the loss for each attribute to calculate an integrated loss, and the probability calculation unit is trained using the integrated loss.
16. A learning method according to claim 15, comprising a plurality of probability calculation units each calculating the probability for each attribute, and each of the plurality of probability calculation units is trained using the integrated loss.
17. A computer-readable storage medium storing a program for causing a computer to execute a process of obtaining, for training data associated with input data and a corresponding class in an order label in which an order of classes into which the input data is classified is set, an extended label set according to the corresponding class and in which each of the classes in the order label is divided into a plurality of subclasses, and a weight set according to the corresponding class and corresponding to each of the subclasses of the extended label; calculating, based on the input data, a probability that the class of the input data exceeds each of the subclasses of the extended label in order, and training an estimation unit configured to estimate the class of the order label based on the probability using a loss based on the probability, the extended label, and the weight.
Citation Information
Patent Citations
Learning ordinal regression model via divide-and-conquer technique
US20220197978A1
Continuously generalized ordinal regression
US20230040110A1