WO2024047957A1 - 機械学習装置、機械学習方法、および機械学習プログラム - Google Patents

機械学習装置、機械学習方法、および機械学習プログラム Download PDF

Info

Publication number
WO2024047957A1
WO2024047957A1 PCT/JP2023/018053 JP2023018053W WO2024047957A1 WO 2024047957 A1 WO2024047957 A1 WO 2024047957A1 JP 2023018053 W JP2023018053 W JP 2023018053W WO 2024047957 A1 WO2024047957 A1 WO 2024047957A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
class
new
machine learning
classification
Prior art date
Application number
PCT/JP2023/018053
Other languages
English (en)
French (fr)
Inventor
駿 西牧
Original Assignee
株式会社Jvcケンウッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社Jvcケンウッド filed Critical 株式会社Jvcケンウッド
Publication of WO2024047957A1 publication Critical patent/WO2024047957A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Definitions

  • the present disclosure relates to machine learning technology.
  • CNN Convolutional Neural Network
  • a more efficient and practical method is incremental learning or continuous learning, which involves learning new tasks while reusing previously acquired knowledge.
  • continuous learning in a class classification task is a method of learning and classifying a new class (new class) from a state where the basic class (class learned in the past) can be classified.
  • CIL class incremental learning
  • Incremental few-shot learning that combines continuous learning, which learns new classes without fatal forgetting based on the learning results of the base class, and small-shot learning, which learns new classes that are few compared to the base class.
  • a method called Few-Shot Class Incremental Learning (FSCIL) has been proposed (Non-Patent Document 1).
  • Continuous few-shot learning can learn basic classes from a large dataset and new classes from a small number of sample data.
  • FSCIL is an incremental learning scenario for class classification similar to CIL, but it differs greatly in that the learning data for new tasks is small (small data).
  • CEC Continuous Evolved Classifiers
  • Non-Patent Document 1 CEC constructs a pseudo continuous learning task and learns a graph attention network (GAT) by using a base class image obtained by rotating the original image as a new new class image.
  • GAT graph attention network
  • Non-Patent Document 1 the feature expressions for classifying images of the base class have already been learned, so simply using rotated trained images may not be enough to train the graph model. There is a possibility that it will become. Therefore, there has been a problem that sufficient classification accuracy may not be obtained.
  • an objective of the present disclosure is to provide a machine learning technique that can improve classification accuracy by using a graph model in which pseudo-continuous learning is performed more effectively.
  • a machine learning device that continuously learns data of a new class that is smaller in number than data of a base class, and which uses data of the base class.
  • a feature extraction unit that has been trained in advance using the data of the new class, which receives the data of the new class as input and outputs a feature vector of the data of the new class;
  • a weight calculation unit that calculates a classification weight, the calculated classification weight of the new class and the classification weights of all previously learned classes are input, and the inputted classification weights are adapted and reconstructed.
  • a graph model that outputs classification weights is pseudo-continuously learned using other data of a base class generated based on a plurality of data of the base class, and the dependence relationship between the base class and the new class. It is equipped with a graph model that performs meta-learning.
  • a machine learning method is a machine learning method that continuously learns data of a new class that is smaller in number than data of a base class
  • the machine learning method is a machine learning method that continuously learns data of a new class that is smaller than data of a base class
  • the data of the base class is input to a feature extraction unit that has been trained in advance.
  • the calculated information is applied to a graph model that undergoes pseudo-continuous learning using other data of the base class generated based on a plurality of data of the base class, and that meta-learns the dependency relationship between the base class and the new class. inputting the classification weights of the new class and the classification weights of all previously learned classes, and outputting the reconstructed classification weights by adapting the input classification weights to the graph model and reconstructing the graph model; Be prepared.
  • a machine learning program is a machine learning program for continuously learning data of a small number of new classes compared to data of a base class
  • the machine learning program is a machine learning program for continuously learning data of a new class that is smaller in number than data of a base class
  • the machine learning program is a machine learning program for continuously learning data of a new class that is smaller in number than data of a base class
  • the machine learning program is a machine learning program that is configured to have a computer learn data of the base class in advance.
  • FIGS. 1(a) to 1(c) are diagrams for explaining intertask confusion.
  • FIG. 2 is a diagram for explaining a conventional CEC method.
  • FIG. 2 is a functional block diagram for explaining the configuration of a pseudo continuous learning module of a conventional machine learning device that uses CEC.
  • FIG. 2 is a functional block diagram for explaining the configuration of a new class learning module of a conventional machine learning device that uses CEC.
  • FIGS. 5A and 5B are diagrams showing average classification accuracy with respect to rotation angle.
  • FIG. 2 is a functional block diagram showing a pseudo continuous learning module according to the first embodiment. It is a flowchart which shows the image synthesis process of the pseudo continuous learning module of 1st Embodiment.
  • FIG. 7 is a diagram for explaining a CEC method according to a fourth embodiment.
  • FSCIL is a method that continuously learns knowledge of new classes (new classes) using a small amount of data without forgetting knowledge of old classes (base class, base class).
  • FSCIL uses training data for a small number of new tasks (small data), making proper learning more difficult than CIL, but it is a more realistic scenario because it does not require collecting a large amount of data.
  • FSCIL has the problem of forgetting base classes and also has the problem of intertask confusion.
  • FIGS. 1(a) to 1(c) are diagrams for explaining intertask confusion.
  • Figure 1(a) shows an example of classifying class 1 (round in the figure) and class 2 (square in the figure)
  • Figure 1(b) shows class 3 (triangle in the figure) and class 4 (triangle in the figure).
  • Figure 1(c) shows an example of classifying classes 1 to 4.
  • CEC is one of the FSCIL methods.
  • CEC is a method to improve base class forgetting and intertask confusion, which are issues in FSCIL.
  • CEC is trained in individual sessions using a graph model that is optimized by separating feature extractors and classifiers and building pseudo-continuous learning tasks from a base class dataset for episodic learning. This method improves intertask confusion by propagating context information between classifiers.
  • the conventional CEC method will be explained below.
  • FIG. 2 is a diagram for explaining the conventional CEC method. As shown in FIG. 2, CEC consists of stages 1-3.
  • the conventional machine learning device 100 includes a pre-training module 30 used in stage 1, a pseudo continuous learning module 40 used in stage 2, and a new class learning module 50 used in stage 3.
  • Stage 1 is a pre-learning stage.
  • the weights of the backbone CNN 32 of the pre-training module 30 are pre-trained by standard supervised learning in the pre-training module 30 using a large amount of base class data set (hereinafter referred to as the basic data set) 10.
  • the basic data set 10 includes N data samples.
  • An example of a data sample is image data, but is not limited thereto.
  • the basic dataset 10 includes image data of 60 classes x 500 images.
  • the basic data set 10 may include data sets of a plurality of different classes.
  • the backbone CNN 32 is a convolutional neural network trained on the basic data set 10 in advance.
  • the backbone CNN 32 has a weight of a feature extractor R and a base class classification weight W0 which is a weight vector of a base class classifier.
  • the basic class classification weight W0 indicates the average feature amount of the data samples of the basic data set 10.
  • Stage 2 is a pseudo continuous learning stage.
  • the pseudo-continuous learning module 40 learns the weights of the GAT 44 in order to propagate the context information of each class to generate a classifier adapted to all classes.
  • Learning of the GAT 44 is performed in an episodic manner by constructing a pseudo continuous learning task from a dataset of rotated images generated by rotating images of the basic dataset 10.
  • the data set generated based on the basic data set 10 in the pseudo continuous learning stage will be referred to as a pseudo data set 15.
  • the basic class classification weights are calculated based on the feature vector generated by inputting the pseudo data set 15, which is another data set of the basic class, to the feature extractor R of the backbone CNN 32 trained in advance in stage 1. be learned.
  • the basic class classification weight W0 learned in Stage 1 and the basic class classification weight W0 learned in Stage 2 are adapted and reconstructed in the GAT 44.
  • the reconstructed classification weight 45 of W'0 is output.
  • the reconstructed classification weights output from the GAT will be referred to as reconstructed classification weights.
  • Each episode consists of a support set and a query set.
  • both the support set and the query set are composed of a basic data set 10 and a pseudo data set 15.
  • stage 2 in each episode, the query samples of both the basic data set 10 and the pseudo data set 15 included in the query set are classified based on the support samples of the given support set, and the loss of class classification is minimized. Update the GAT44 parameters so that
  • the reason why the rotated image of the base class is used in the pseudo continuous learning task is that the backbone CNN 32 has already learned feature representations for successfully classifying images of the base class in stage 1. This is because the GAT44 will not be learned well if the image is used as is. The parameters of the GAT 44 after learning are fixed in subsequent stages.
  • Stage 3 is the classifier learning and adaptation stage.
  • the new class learning module 50 trains a classifier using a small number of new class datasets (hereinafter referred to as new datasets) 20 given for each session, and trains the classifier in the current session and previous sessions.
  • new datasets new class datasets
  • the GAT 53 of the new class learning module 50 is the GAT learned in the pseudo continuous learning stage.
  • the inference of the query is performed by a classifier adapted by the GAT 53.
  • the new data set 20 includes k fewer data samples than the basic data set 10.
  • the new data set 20 may include data sets of multiple different classes.
  • stage 3 new class classification weights are learned for each session based on the feature vectors generated by inputting the new data set 20 to the feature extractor R of the backbone CNN 32 pre-trained in stage 1. New class learning is performed using the reconstructed classification weight 45 of W'0 generated in Stage 2 and all new class classification weights ⁇ W1,..., Wi ⁇ learned in each session up to the i-th session in Stage 3.
  • the classification weights of all the classes input to the GAT 53 are adapted and reconstructed, and the reconstructed classification of ⁇ W'0, W'1,..., W'i ⁇ is obtained from the GAT 53.
  • Weight 54 is output.
  • FIG. 3 is a functional block diagram for explaining the configuration of the pseudo continuous learning module 40 of the conventional machine learning device 100 that uses CEC.
  • the pseudo continuous learning module 40 includes a rotated image generation section 41, a pre-trained feature extraction section 42, a weight calculation section 43, and a GAT 44.
  • the rotated image generation unit 41 generates a pseudo dataset 15 of rotated images by rotating the image of the basic dataset 10 used in the pre-training module 30, and supplies it to the pre-trained feature extraction unit 42.
  • the pre-trained feature extraction unit 42 of the pseudo continuous learning module 40 receives the pseudo data set 15 as input, extracts the feature vector of the pseudo data set 15, and supplies the extraction result to the weight calculation unit 43.
  • the pre-trained feature extraction unit 42 of the pseudo continuous learning module 40 is the same as the feature extractor R of the backbone CNN 32 that pre-trained the basic class classification weights in stage 1.
  • the weight calculation unit 43 of the pseudo continuous learning module 40 averages the feature vectors of the pseudo data set 15 for each class, calculates the basic class classification weight of the pseudo data set 15, and supplies it to the GAT 44.
  • the GAT 44 of the pseudo continuous learning module 40 uses the basic class classification weights W0 of the backbone CNN 32, which has been pre-trained for basic class classification weights in stage 1, and the basic class classification weights W0 of the pseudo data set 15 supplied from the weight calculation unit 43. is input, meta-learning is performed on the dependency relationship between the basic data set 10 and the pseudo data set 15, and all input class classification weights are adapted to output reconstructed classification weights.
  • the pseudo-continuous learning module 40 meta-learns GAT, which is a meta-module, in an episodic format. Using a query set composed of the basic data set 10 and the pseudo data set 15, the parameters of the GAT 44 are optimized and updated for each episode. The method described in Non-Patent Document 1 is used as the optimization method for GAT44.
  • FIG. 4 is a functional block diagram for explaining the configuration of the new class learning module 50 of the conventional machine learning device 100 that uses CEC.
  • the new class learning module 50 includes a pre-trained feature extraction section 51, a weight calculation section 52, and a GAT 53.
  • the pre-trained feature extraction unit 51 of the new class learning module 50 receives the new data set 20 as input, extracts the feature vector of the new data set 20, and supplies the extraction result to the weight calculation unit 52 of the new class learning module 50. .
  • the pre-trained feature extraction unit 51 of the new class learning module 50 is the same as the feature extractor R of the backbone CNN 32 that has been pre-trained in stage 1.
  • the weight calculation unit 52 of the new class learning module 50 averages the feature vectors of the new data set 20 for each class, calculates new class classification weights of the new data set 20, and supplies the new class classification weights to the GAT 53 of the new class learning module 50. .
  • the GAT 53 of the new class learning module 50 uses the reconstructed classification weights 45 of W'0 generated in stage 2 and the new class classification weights ⁇ W1,..., Wi ⁇ is input, meta-learning is performed on the dependency relationship between the basic data set 10 and the new data set 20, and all input class classification weights are adapted to output the reconstructed classification weights 54.
  • the GAT 53 of the new class learning module 50 is the same as the meta-learning GAT 44 of the pseudo continuous learning module 40.
  • the new data set 20 cannot be used as the pseudo data set 15. Therefore, in the conventional machine learning device 100, an image obtained by rotating the image of the basic data set 10 is used as the pseudo data set 15.
  • the feature extractor R of the backbone CNN 32 learns feature expressions for successfully classifying the basic classes
  • the GAT 44 learns using images that are simply rotated images of the basic dataset 10. There is. Therefore, conventionally, the GAT 44 has only performed learning similar to the backbone CNN 32 using an image generated based on one image of the basic data set 10, and there is a possibility that the learning is insufficient.
  • FIG. 5 is a diagram showing the classification accuracy with respect to the rotation angle of the basic class image used for GAT learning in the conventional CEC.
  • FIG. 5(a) shows the average classification accuracy with respect to the rotation angle
  • FIG. 5(b) shows the decline rate of the average classification accuracy from the initial session to the final session with respect to the rotation angle. From FIG. 5(a), it can be confirmed that the classification accuracy is high when the rotation angle is 90°, 180°, and 270°. Furthermore, from Fig. 5(b), it can be seen that when the rotation angle is 90°, 180°, and 270°, the rate of decline in average classification accuracy from the initial session to the final session is small, and forgetting of the basic class is suppressed. . For this reason, in pseudo-continuous learning, it is considered desirable to use images that are visually far from the base class images from the perspective of improving classification accuracy.
  • the present inventors focused on pseudo-continuous learning in stage 2, and based on multiple data sets of the base class, we created another data set of the base class that is significantly different from the base data set 10 used in training the backbone CNN 32.
  • FIG. 6 is a functional block diagram showing the pseudo continuous learning module 40 of the machine learning device 100 of the first embodiment.
  • the pseudo continuous learning module 40 of the machine learning device 100 of the first embodiment includes a composite image generation section 46, a pre-trained feature extraction section 42, a weight calculation section 43, and a GAT 44.
  • the basic data set 10 and the new data set 20 of this embodiment are image data, they are not limited to this.
  • a rotated image generation unit 41 was used, but in the pseudo continuous learning module 40 of the machine learning device 100 of the first embodiment, instead of the rotated image generation unit 41, A composite image generation unit 46 is used.
  • the configuration of the machine learning device 100 of the first embodiment other than the composite image generation unit 46 is the same as the conventional machine learning device 100, including the pre-training module 30 and the new class learning module 50, so we will focus on the differences. The explanation will be omitted as appropriate for common configurations.
  • the composite image generation unit 46 generates a composite image by rotating images of a plurality of data of the base class and combining the multiple rotated images.
  • the composite image of this embodiment is an example of other data of the base class generated based on a plurality of data of the base class.
  • the composite image generation unit 46 combines two images, but may combine two or more images. Further, the images to be combined may be in the same class or in different classes.
  • the composite image of this embodiment is an example of another data of the basic class.
  • the composite image generation unit 46 of the first embodiment generates a composite image using the CutMix method.
  • Cutmix is a method that generates a new image by pasting a part of another image onto one image, and sets the label as the area ratio of the two images. The rotation angle of each image may be used for the label.
  • the present invention is not limited to this, and the composite image generation unit 46 may synthesize images using techniques such as mixup and cutout.
  • Mixup is a method of superimposing pairs of images using weights, and the labels are determined by the weights.
  • Cutout is a method of masking a part of the image with a square area image, and the label is the same as before composition.
  • FIG. 7 is a flowchart showing image synthesis processing S100 of the pseudo continuous learning module 40.
  • step S101 the composite image generation unit 46 randomly selects a pair of images from the basic data set 10.
  • each data of the basic data set 10 is ordered by class.
  • the composite image generation unit 46 randomly selects a training set (Sp, Qp) to be paired with the training set (Si, Qi) of the c-th class of the basic classes from classes within the same episode.
  • Si and Sp are support samples
  • Qi and Qp are query samples.
  • the order c starts from 1 and is incremented by 1 in step S106, which will be described later.
  • step S101 of FIG. 7 the dog image (Si, Qi) is selected as the c-th class training set, and the cat image (Sp, Qp) is selected as the pair.
  • step S102 the composite image generation unit 46 randomly rotates the selected dog images (Si, Qi) and cat images (Sp, Qp). For example, the composite image generation unit 46 randomly sets rotation angles of 90°, 180°, and 270° for dog images (Si, Qi) and cat images (Sp, Qp), and The dog image (Si, Qi) and the cat image (Sp, Qp) are rotated to generate a dog image (Si', Qi') and a cat image (Sp', Qp'). In the example of FIG. 7, the dog image (Si, Qi) is rotated by 180 degrees, and the cat image (Sp, Qp) is rotated by 90 degrees. The rotated image of the dog (Si', Qi') and the rotated image of the cat (Sp', Qp') form a pair of images to be combined.
  • step S103 the composite image generation unit 46 cuts out a part of one of the rotated image of the dog (Si', Qi') and the rotated image of the cat (Sp', Qp'). In the example of FIG. 7, a part of the cat's rotated image (Sp', Qp') is cut out.
  • step S104 the composite image generation unit 46 generates a composite image (Snew, Qnew) by pasting the cut image onto a part of the other image.
  • a part of the cut out rotated cat image (Sp', Qp') is pasted onto a part of the dog rotated image (Si', Qi') to create a composite image (Snew, Qnew). ) is generated.
  • step S105 the composite image generation unit 46 determines whether the composition process has been completed for all classes. If the synthesis processing in steps S101 to S104 is completed for all classes (Y in step S105), the construction of the pseudo continuous learning task of the first embodiment is completed, and the image synthesis processing S100 ends. If the compositing process has not been completed for all classes (N in step S105), the image compositing process S100 proceeds to step S106.
  • step S106 the composite image generation unit 46 increments the order c of the base classes by one. Thereafter, the image synthesis process S100 returns to step S101, and steps S101 to S105 are executed for the data set of the next class after the base class. Steps S101 to S106 are repeated until the synthesis process is completed for all classes.
  • the first embodiment by combining data, it becomes possible to train the GAT 44 with unknown data that is significantly different from the data pre-trained in the backbone CNN 32. As a result, it becomes possible to perform learning of the GAT 44 more effectively, and therefore it becomes possible to further improve the classification accuracy of the machine learning device 100.
  • the composite image of the first embodiment is a composite of images obtained by rotating the images of the basic data set 10, but is not limited to this, and may be a composite of images of the basic data set 10 without rotation. It may be.
  • composite image includes images obtained by combining rotated images and images obtained by combining images without rotation.
  • FIG. 8 is a functional block diagram showing the pseudo continuous learning module 40 of the machine learning device 100 of the second embodiment.
  • the pseudo continuous learning module 40 of the machine learning device 100 of the second embodiment includes a text-corresponding image generation section 47, a pre-trained feature extraction section 42, a weight calculation section 43, and a GAT 44.
  • the text-compatible image generation unit 47 includes a pre-trained image generation model 48.
  • the synthetic image generation unit 46 was used, but in the pseudo continuous learning module 40 of the machine learning device 100 of the second embodiment, the synthetic image generation unit 46 Instead, a text-compatible image generation unit 47 and a pre-trained image generation model 48 are used.
  • the GATs 44 and 53 of this embodiment are an example of a graph model.
  • the configuration of the machine learning device 100 of the second embodiment other than the text-compatible image generation unit 47 and the pre-trained image generation model 48 is basically the same as the machine learning device 100 of the first embodiment, so the differences will be explained below. The explanation will be focused on, and the explanation of common configurations will be omitted as appropriate.
  • the text-corresponding image generation unit 47 generates a text-corresponding image corresponding to the text data by inputting the text data describing the base class to the pre-trained image generation model 48.
  • the pre-trained image generation model 48 is a text-to-image image generation model that receives text data as input and outputs a text-corresponding image that matches the content of the text data. Examples of this image generation model method include StackGAN++.
  • the pre-trained image generation model 48 is trained in advance using a plurality of base class data. Therefore, the text-enabled image is generated based on a plurality of base class data.
  • the text-compatible image of this embodiment is an example of another data of the base class.
  • FIG. 9 is a flowchart showing image generation processing S200 by the pseudo continuous learning module 40 of the second embodiment.
  • step S201 the text-compatible image generation unit 47 generates a text-compatible image by inputting text data corresponding to the c-th class of the basic data set 10 to the pre-trained image generation model 48. For example, if the c-th class is "cat”, "cat" is input as text data to the pre-trained image generation model 48, and the pre-trained image generation model 48 outputs an image of "cat".
  • the label of the image generated by the text-compatible image generation unit 47 is the input text data.
  • step S202 the text-corresponding image generation unit 47 determines whether text-corresponding images have been generated for one class as many as necessary for the support set and the query set. If the above number of text-compatible images have been generated (Y in step S202), the image generation process S200 proceeds to step S203. If the above number of text-compatible images have not been generated (N in step S202), the image generation process S200 returns to step S201. In step S201, another image of the same class is generated, and steps S201 and S202 are repeated until the above number of text-corresponding images are generated (Y in step S202).
  • step S203 the text-compatible image generation unit 47 determines whether the text-compatible image generation process has been completed for all classes. If the text-corresponding image generation process in steps S201 to S202 is completed for all classes (Y in step S203), the construction of the pseudo continuous learning task of the second embodiment is completed, and the image generation process S200 ends. If the text-compatible image generation processing for all classes has not been completed (N in step S203), the image generation processing S200 proceeds to step S204.
  • step S204 the text-compatible image generation unit 47 increments the order c of the base class by one. Thereafter, the image generation process S200 returns to step S201, and steps S201 to S203 are executed for the data set of the next class after the base class. Steps S201 to S204 are repeated until the text-corresponding image generation process is completed for all classes.
  • GAT 44 by newly generating base class data from an image generation model that has been pretrained using a plurality of base class data, GAT 44 can be used to generate unknown data that is not used in the pretraining of backbone CNN 32. It becomes possible to learn from data. As a result, it becomes possible to perform learning of the GAT 44 more effectively, and therefore it becomes possible to further improve the classification accuracy of the machine learning device 100.
  • a text-compatible image is used as another data of the base class, but the present invention is not limited to this, and an image obtained by rotating the text-compatible image may also be used.
  • FIG. 10 is a functional block diagram showing the pseudo continuous learning module 40 of the machine learning device 100 of the third embodiment.
  • the pseudo continuous learning module 40 of the machine learning device 100 of the third embodiment includes a text-compatible image generation section 47, a composite image generation section 46, a pre-trained feature extraction section 42, a weight calculation section 43, a GAT 44, Equipped with
  • the text-corresponding image generation unit 47 of the third embodiment supplies the generated text-corresponding image to the composite image generation unit 46.
  • the composite image generation unit 46 of the third embodiment generates a composite image by combining text-corresponding images, and supplies it to the pre-trained feature extraction unit 42.
  • the synthesized image generated by synthesizing the text-corresponding images of this embodiment is an example of another data of the basic class.
  • the pseudo continuous learning module 40 of the third embodiment includes both a text-corresponding image generation section 47 and a composite image generation section 46, and the text-corresponding image generated by the text-corresponding image generation section 47 is generated by the composite image generation section 46.
  • the method of generating a text-corresponding image by the text-corresponding image generating section 47 and the method of generating a composite image by the composite image generating section 46 are as described above.
  • the third embodiment by composing a plurality of text-corresponding images, it is possible to construct a pseudo continuous learning task that includes more diverse images. As a result, it becomes possible to perform learning of the GAT 44 more effectively, and therefore it becomes possible to further improve the classification accuracy of the machine learning device 100.
  • FIG. 11 is a diagram for explaining the CEC method of the fourth embodiment.
  • the rotated image generation unit 41 in the pre-training stage, the rotated image generation unit 41 generates a rotated image by rotating the image of the basic data set 10, and inputs the rotated image to the pre-training module 30. Therefore, in the pre-training stage, in addition to the basic data set 10, a rotated image obtained by rotating the basic data set 10 is input to the pre-training module 30.
  • the basic data set 10 of the fourth embodiment is an example of first data
  • the rotated image of the fourth embodiment is an example of second data.
  • the pseudo data set 15 including newly generated synthetic images and text-compatible images based on a plurality of data of the base class is input to the GAT 44 as described above in the first to third embodiments. be done.
  • the composite image and text-compatible image of the fourth embodiment are examples of third data.
  • the third data can be, for example, a composite image, a text-compatible image, a rotated image of a text-compatible image, or a composite image of text-compatible images.
  • the first data, second data, and third data are different data.
  • the third image may be a different image such as a composite image or a text-compatible image different from the text-compatible image serving as the second image.
  • the pre-trained feature extraction units 42 and 51 of the pseudo continuous learning module 40 and the new class learning module 50 of the fourth embodiment basically have the same configuration as those of the first to third embodiments, but the basic data set The difference is that the feature extractor R of the backbone CNN 32 is trained in advance using the rotated image data set 10 and the basic data set 10.
  • rotated images of the base class are used in the pseudo-continuous learning task.
  • the rotated image of the base class should also be learned in advance, but if this is learned in the pre-training stage, it will be the same as GAT44 in the pseudo continuous learning stage. I end up learning.
  • the premise that the backbone learns with images of the basic class in the pre-training stage and that the GAT 44 learns with other images of the basic class in the pseudo-continuous learning stage is broken. Therefore, rotated images could not be used during preliminary training of the backbone CNN 32.
  • a pseudo continuous learning task is constructed by newly generating a composite image and a text-corresponding image. Therefore, an image different from an image used for pseudo continuous learning can be used as an image used for preliminary learning of the backbone CNN 32. As a result, it becomes possible to use rotated images in the pre-learning of the backbone CNN 32, and an improvement in classification accuracy can be expected by improving the performance of the backbone CNN 32.
  • a rotated image obtained by rotating one image of the basic data set 10 is used as the second data in the pre-training stage, but the invention is not limited to this.
  • the various processes of the machine learning device 100 described above can of course be realized as a device using hardware such as a CPU and memory, or can be stored in a ROM (read-only memory), flash memory, etc. It can also be realized by firmware, computer software, etc.
  • the firmware program and software program may be recorded on a computer-readable recording medium and provided, or sent and received with a server through a wired or wireless network, or sent and received as data broadcasting on terrestrial or satellite digital broadcasting. is also possible.
  • the present disclosure relates to machine learning technology.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)

Abstract

本開示は、基本クラスのデータに比べて少数の新規クラスのデータを継続学習する機械学習装置であって、基本クラスのデータを用いて事前に学習され、新規クラスのデータ(20)を入力とし、新規クラスのデータ(20)の特徴ベクトルを出力とする特徴抽出部(51)と、特徴ベクトルに基づいて新規クラスの分類重みを算出する重み算出部(52)と、算出した新規クラスの分類重みと以前に学習した全てのクラスの分類重みとを入力とし、入力した分類重みを適応させて再構築することにより再構築分類重み(54)を出力し、基本クラスの複数のデータに基づいて生成された基本クラスの別のデータを用いて疑似継続学習され、基本クラスと新規クラスの間の依存関係をメタ学習するグラフモデル(53)と、を備える。

Description

機械学習装置、機械学習方法、および機械学習プログラム
 本開示は、機械学習技術に関する。
 人間は長期にわたる経験を通して新しい知識を学習することができ、昔の知識を忘れないように維持することができる。一方、畳み込みニューラルネットワーク(Convolutional Neural Network(CNN))の知識は学習に使用したデータセットに依存しており、データ分布の変化に適応するためにはデータセット全体に対してCNNのパラメータの再学習が必要となる。
 より効率的で実用的な手法として、既に獲得した知識を再利用しつつ、新たなタスクを学習する継続学習(incremental learningまたはcontinual learning)という手法がある。特に、クラス分類タスクにおける継続学習は基本クラス(過去に学習したクラス)が分類できる状態から新しいクラス(新規クラス)を学習して分類できるようにする手法である。
 一方、深層学習では、過去に獲得した知識を大幅に喪失し、タスクの能力が大幅に低下する致命的忘却(catastrophic forgetting)という現象があるが、継続学習ではこれが特に問題となる。クラス分類タスクにおける継続学習では、致命的忘却を抑制して基本クラスの分類性能を維持しつつ、新規クラスの分類性能を獲得することが最大の課題となる。
 他方、新しいタスクは数少ないサンプルデータしか利用できないことが多いため、少ない教師データで効率的に学習する手法として、少数ショット学習(few-shot learning)が提案されている。通常であれば学習には数千以上のサンプルが必要であるが、少数ショット学習では少数サンプル(例えば数個のサンプル)で学習が行われる。
 また、基本(ベース)クラスを学習済みのモデルに対して追加で学習させ、新たなクラス(新規クラス)の分類を可能にするクラスインクリメンタル学習(Class Incremental Learning:CIL、継続学習)が提案されている。CILでは、クラス分類の学習済みモデルに対してタスクが継続的に追加され、新規タスクでは新規のクラス及び過去のクラスの分類性能が求められる。なお、通常、新規タスクの学習データはビッグデータである。
 基本(ベース)クラスの学習結果に対して致命的忘却を伴わずに新規クラスを学習する継続学習と、基本クラスに比べて少数しかない新規クラスを学習する少数ショット学習とを組み合わせたインクリメンタル少数ショット学習(Few-Shot Class Incremental Learning (FSCIL))と呼ばれる手法が提案されている(非特許文献1)。継続少数ショット学習は、基本クラスについては大規模なデータセットから学習し、新規クラスについては少数のサンプルデータから学習することができる。FSCILはCILに近いクラス分類のインクリメンタル学習シナリオだが、新規タスクの学習データが少数(スモールデータ)である点が大きく異なる。
 継続少数ショット学習手法としてCEC(Continually Evolved Classifiers)が提案されている(非特許文献1)。CECは、元の画像を回転させた基本クラスの画像を疑似的に新しい新規クラスの画像とすることにより、疑似継続学習タスクを構築し、グラフアテンションネットワーク(graph attention network(GAT))を学習する。
Zhang, C., Song, N., Lin, G., Zheng, Y., Pan, P., & Xu, Y. (2021). Few-shot incremental learning with continually evolved classifiers. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 12455-12464).
 非特許文献1に記載の手法では、基本クラスの画像を分類するための特徴表現は既に学習済みであるため、回転させただけの学習済み画像を使用するだけでは、グラフモデルの学習が不十分になる可能性がある。そのため、十分な分類精度を得ることができない場合があるという課題があった。
 上記課題を鑑み、本開示の目的は、疑似継続学習がより効果的に行われたグラフモデルを用いることによって、分類精度の向上を図ることができる機械学習技術を提供することにある。
 上記課題を解決するために、本開示のある態様の機械学習装置は、基本クラスのデータに比べて少数の新規クラスのデータを継続学習する機械学習装置であって、前記基本クラスのデータを用いて事前に学習された特徴抽出部であって、前記新規クラスのデータを入力とし、前記新規クラスのデータの特徴ベクトルを出力とする特徴抽出部と、前記特徴ベクトルに基づいて、前記新規クラスの分類重みを算出する重み算出部と、前記算出した新規クラスの分類重みと以前に学習した全てのクラスの分類重みとを入力とし、前記入力した分類重みを適応させて再構築することにより再構築分類重みを出力するグラフモデルであって、前記基本クラスの複数のデータに基づいて生成された基本クラスの別のデータを用いて疑似継続学習され、前記基本クラスと前記新規クラスの間の依存関係をメタ学習する、グラフモデルと、を備える。
 本開示のある態様の機械学習方法は、基本クラスのデータに比べて少数の新規クラスのデータを継続学習する機械学習方法であって、前記基本クラスのデータを事前に学習済みの特徴抽出部に前記新規クラスのデータを入力することにより、前記特徴抽出部に前記新規クラスのデータの特徴ベクトルを出力させるステップと、前記特徴ベクトルに基づいて、前記新規クラスの分類重みを算出するステップと、前記基本クラスの複数のデータに基づいて生成された前記基本クラスの別のデータを用いて疑似継続学習され且つ前記基本クラスと前記新規クラスの間の依存関係をメタ学習するグラフモデルに、前記算出した新規クラスの分類重みと以前に学習した全てのクラスの分類重みとを入力し、前記グラフモデルに前記入力した分類重みを適応させて再構築させることにより再構築分類重みを出力させるステップと、を備える。
 本開示のある態様の機械学習プログラムは、基本クラスのデータに比べて少数の新規クラスのデータを継続学習するための機械学習プログラムであって、コンピュータに、前記基本クラスのデータを事前に学習済みの特徴抽出部に前記新規クラスのデータを入力することにより、前記特徴抽出部に前記新規クラスのデータの特徴ベクトルを出力させるステップと、前記特徴ベクトルに基づいて、前記新規クラスの分類重みを算出するステップと、前記基本クラスの複数のデータに基づいて生成された前記基本クラスの別のデータを用いて疑似継続学習され且つ前記基本クラスと前記新規クラスの間の依存関係をメタ学習するグラフモデルに、前記算出した新規クラスの分類重みと以前に学習した全てのクラスの分類重みとを入力し、前記グラフモデルに前記入力した分類重みを適応させて再構築させることにより再構築分類重みを出力させるステップと、を実行させるための機械学習プログラムである。
 なお、以上の構成要素の任意の組合せ、本開示の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、実施形態の態様として有効である。
 本開示によれば、疑似継続学習がより効果的に行われたグラフモデルを用いることによって、分類精度の向上を図ることができる機械学習技術を提供することにある。
図1(a)~図1(c)は、インタータスクコンフュージョンについて説明するための図である。 従来のCECの手法を説明するための図である。 CECを利用する従来の機械学習装置の疑似継続学習モジュールの構成を説明するための機能ブロック図である。 CECを利用する従来の機械学習装置の新規クラス学習モジュールの構成を説明するための機能ブロック図である。 図5(a)及び図5(b)は回転角度に対する平均分類精度を示す図である。 第1実施形態の疑似継続学習モジュールを示す機能ブロック図である。 第1実施形態の疑似継続学習モジュールの画像合成処理を示すフローチャートである。 第2実施形態の疑似継続学習モジュールを示す機能ブロック図である。 第2実施形態の疑似継続学習モジュールによる画像生成処理を示すフローチャートである。 第3実施形態の疑似継続学習モジュールを示す機能ブロック図である。 第4実施形態のCECの手法を説明するための図である。
 実施形態について説明する前に、従来技術であるFSCIL及びCECについて概要を説明する。まず、FSCILについて説明する。FSCILは、古いクラス(ベースクラス、基本クラス)の知識を忘れることなく、新しいクラス(新規クラス)の知識を少数データで継続的に学習する手法である。FSCILは、少数の新規タスクの学習データ(スモールデータ)を用いるため、CILに比べて適切な学習がより困難である一方で多数のデータを収集する必要がないことからより現実的なシナリオである。一方で、FSCILは、基本クラスの忘却という課題を有するとともに、インタータスクコンフュージョンの課題を有する。
 図1(a)~図1(c)は、インタータスクコンフュージョンについて説明するための図である。図1(a)はクラス1(図中、丸形)とクラス2(図中、四角形)を分類する例を示し、図1(b)はクラス3(図中、三角形)とクラス4(図中、五角形)を分類する例を示し、図1(c)はクラス1~4を分類する例を示す。
 図1(a)及び図1(b)に示すように、FSCILにおける新規クラスのデータの継続学習により、クラス1及びクラス2の分類、並びにクラス3及びクラス4の分類が可能になったとする。しかし、ここではクラス1~4全体の分類が学習されたわけではないため、このように学習された分類器は図1(c)に示すようなクラス1~4の4つのクラスを適切に分類できない場合がある。これをインタータスクコンフュージョンという。
 次に、CECについて説明する。CECは、FSCIL手法の1つである。CECは、FSCILの課題であるベースクラスの忘却及びインタータスクコンフュージョンを改善する手法である。特に、CECは、特徴抽出器と分類器を分離し、ベースクラスのデータセットから疑似継続学習タスクを構築してエピソード学習することにより最適化されたグラフモデルを使用して、個々のセッションで学習した分類器間の文脈情報を伝播させることで、インタータスクコンフュージョンを改善する。以下、従来のCECの手法を説明する。
 図2は、従来のCECの手法を説明するための図である。図2に示すように、CECはステージ1~3で構成される。従来の機械学習装置100は、ステージ1で用いられる事前トレーニングモジュール30と、ステージ2で用いられる疑似継続学習モジュール40と、ステージ3で用いられる新規クラス学習モジュール50と、を含む。
 ステージ1は、事前学習ステージである。ステージ1では、大量の基本クラスのデータセット(以下、基本データセット)10を使用して、事前トレーニングモジュール30において標準的な教師あり学習で事前トレーニングモジュール30のバックボーンCNN32の重みが事前学習される。基本データセット10はN個のデータサンプルを含む。データサンプルの一例は画像データであるが、これに限定されない。例えば、CIFAR100データセットの場合、基本データセット10は60クラス×500枚の画像データを含む。基本データセット10は、複数の異なるクラスのデータセットを含んでもよい。バックボーンCNN32は、基本データセット10を事前学習した畳み込みニューラルネットワークである。バックボーンCNN32は、特徴抽出器Rの重みと基本クラスの分類器の重みベクトルである基本クラス分類重みW0とを有する。基本クラス分類重みW0は、基本データセット10のデータサンプルの平均特徴量を示す。事前学習したバックボーンCNN32の特徴抽出器Rのパラメータを以降のステージで固定することにより、基本クラスの忘却が抑制される。
 ステージ2は、疑似継続学習ステージである。ステージ2では、疑似継続学習モジュール40において、各クラスの文脈情報を伝播させて全てのクラスに適応した分類器を生成するためにGAT44の重みが学習される。GAT44の学習は、基本データセット10の画像を回転させることによって生成した回転画像のデータセットから疑似継続学習タスクを構築することにより、エピソード形式で行う。以下、疑似継続学習ステージにおいて基本データセット10に基づいて生成されたデータセットを疑似データセット15という。
 ステージ2では、基本クラスの別のデータセットである疑似データセット15をステージ1で事前学習したバックボーンCNN32の特徴抽出器Rに入力することにより生成された特徴ベクトルに基づいて、基本クラス分類重みが学習される。ステージ1で学習された基本クラス分類重みW0とステージ2で学習された基本クラス分類重みとを疑似継続学習モジュールのGAT44に入力することにより、GAT44においてこれらの基本クラス分類重みが適応されて再構築されることにより、W’0の再構築分類重み45が出力される。以下、GATから出力される再構築された分類重みを再構築分類重みという。
 エピソード形式について説明する。各エピソードは、サポートセットとクエリセットから構成される。疑似継続学習ステージにおいて、サポートセット及びクエリセットはいずれも基本データセット10と疑似データセット15とで構成される。ステージ2では、各エピソードにおいて、与えられたサポートセットのサポートサンプルに基づいて、クエリセットに含まれる基本データセット10と疑似データセット15の両方のクエリサンプルをクラス分類し、クラス分類の損失を最小化するようにGAT44のパラメータを更新する。
 ここで、疑似継続学習タスクにおいて基本クラスの回転画像が使用されるのは、バックボーンCNN32はステージ1で既に基本クラスの画像をうまく分類するための特徴表現を学習していることから、仮に基本クラスの画像をそのまま利用するとGAT44がうまく学習されないためである。学習後のGAT44のパラメータは、以降のステージでは固定される。
 ステージ3は、分類器学習及び適応ステージである。ステージ3では、新規クラス学習モジュール50において、セッション毎に与えられた少数の新規クラスのデータセット(以下、新規データセット)20を使用して分類器を学習し、現在のセッションと以前のセッションで学習された全ての分類器を新規クラス学習モジュール50のGAT53に入力することにより、全ての分類器が適応される。新規クラス学習モジュール50のGAT53は、疑似継続学習ステージで学習したGATである。GAT53によって適応された分類器によってクエリの推論が行われる。新規データセット20は、基本データセット10よりも少数のk個のデータサンプルを含む。新規データセット20は、複数の異なるクラスのデータセットを含んでもよい。
 ステージ3では、新規データセット20をステージ1で事前学習したバックボーンCNN32の特徴抽出器Rに入力することにより生成された特徴ベクトルに基づいて、セッション毎に新規クラス分類重みが学習される。ステージ2で生成されたW’0の再構築分類重み45と、ステージ3のi番目のセッションまでの各セッションで学習された全ての新規クラス分類重み{W1,…, Wi}とを新規クラス学習モジュール50のGAT53に入力することにより、GAT53に入力された全てのクラスの分類重みが適応されて再構築され、GAT53から{W’0, W’1,…, W’i}の再構築分類重み54が出力される。
 図3は、CECを利用する従来の機械学習装置100の疑似継続学習モジュール40の構成を説明するための機能ブロック図である。疑似継続学習モジュール40は、回転画像生成部41と、事前学習済み特徴抽出部42と、重み算出部43と、GAT44と、を含む。
 回転画像生成部41は、事前トレーニングモジュール30で用いられた基本データセット10の画像を回転させることによって回転画像の疑似データセット15を生成し、事前学習済み特徴抽出部42に供給する。
 疑似継続学習モジュール40の事前学習済み特徴抽出部42は、疑似データセット15を入力として、疑似データセット15の特徴ベクトルを抽出し、抽出結果を重み算出部43に供給する。疑似継続学習モジュール40の事前学習済み特徴抽出部42は、ステージ1で基本クラス分類重みを事前学習したバックボーンCNN32の特徴抽出器Rと同一である。
 疑似継続学習モジュール40の重み算出部43は、疑似データセット15の特徴ベクトルをクラス毎に平均化し、疑似データセット15の基本クラス分類重みを算出して、GAT44に供給する。
 疑似継続学習モジュール40のGAT44は、ステージ1で基本クラスの分類重みを事前学習済みのバックボーンCNN32の基本クラス分類重みW0と、重み算出部43から供給される疑似データセット15の基本クラス分類重みW0とを入力とし、基本データセット10と疑似データセット15との間の依存関係をメタ学習して、入力した全てのクラス分類重みを適応させることにより、再構築分類重みを出力する。疑似継続学習モジュール40では、メタモジュールであるGATをエピソード形式でメタ学習する。基本データセット10と疑似データセット15で構成されるクエリセットを用いて、エピソード毎に、GAT44のパラメータが最適化されて更新される。GAT44の最適化方法は非特許文献1に記載される方法を用いる。
 図4は、CECを利用する従来の機械学習装置100の新規クラス学習モジュール50の構成を説明するための機能ブロック図である。新規クラス学習モジュール50は、事前学習済み特量抽出部51と、重み算出部52と、GAT53と、を含む。
 新規クラス学習モジュール50の事前学習済み特徴抽出部51は、新規データセット20を入力として、新規データセット20の特徴ベクトルを抽出し、抽出結果を新規クラス学習モジュール50の重み算出部52に供給する。新規クラス学習モジュール50の事前学習済み特徴抽出部51は、ステージ1で事前学習済みのバックボーンCNN32の特徴抽出器Rと同一である。
 新規クラス学習モジュール50の重み算出部52は、新規データセット20の特徴ベクトルをクラス毎に平均化し、新規データセット20の新規クラス分類重みを算出して、新規クラス学習モジュール50のGAT53に供給する。
 新規クラス学習モジュール50のGAT53は、ステージ2で生成されたW’0の再構築分類重み45と、新規クラス学習モジュール50の重み算出部52から供給される新規クラス分類重み{W1,…, Wi}とを入力とし、基本データセット10と新規データセット20との間の依存関係をメタ学習して、入力した全てのクラス分類重みを適応させることにより、再構築分類重み54を出力する。新規クラス学習モジュール50のGAT53は、疑似継続学習モジュール40のメタ学習済みのGAT44と同一である。
 ところで、CECの疑似継続学習ステージでは、新規データセット20を疑似データセット15として使用できないという制約がある。そのため、従来の機械学習装置100では、基本データセット10の画像を回転させた画像を疑似データセット15として使用している。一方で、ステージ1においてバックボーンCNN32の特徴抽出器Rは基本クラスをうまく分類するための特徴表現を学習し、ステージ2においてGAT44は基本データセット10の画像を回転させただけの画像で学習している。よって、従来、GAT44は、基本データセット10の1つの画像に基づいて生成された画像を用いてバックボーンCNN32と同じような学習をしただけであり、学習が不十分である可能性がある。
 ここで、図5は、従来のCECにおいて、GATの学習に使用する基本クラスの画像の回転角度に対する分類精度を示す図である。図5(a)は回転角度に対する平均分類精度を示し、図5(b)は回転角度に対する初期セッションから最終セッションまでの平均分類精度の低下率を示す。図5(a)から、回転角度が90°、180°、270°の場合に分類精度が高いことが確認できる。また、図5(b)から、回転角度が90°、180°、270°の場合に初期セッションから最終セッションまでの平均分類精度の低下率が小さく、基本クラスの忘却が抑制されることがわかる。このことから疑似継続学習では、基本クラスの画像から視覚的にかけ離れた画像を使用することが分類精度向上の観点から望ましいと考えられる。
 本発明者らは、ステージ2の疑似継続学習に着目し、基本クラスの複数のデータセットに基づいてバックボーンCNN32の学習の際に使用された基本データセット10とは大きく異なる基本クラスの別のデータを新たに生成し、疑似継続学習モジュール40のGAT44のための疑似継続学習タスクを構築することを提案する。以下、実施形態について説明する。
 第1実施形態
 図6は、第1実施形態の機械学習装置100の疑似継続学習モジュール40を示す機能ブロック図である。第1実施形態の機械学習装置100の疑似継続学習モジュール40は、合成画像生成部46と、事前学習済み特徴抽出部42と、重み算出部43と、GAT44と、を備える。本実施形態の基本データセット10及び新規データセット20は画像データであるが、これに限定されない。従来の機械学習装置100の疑似継続学習モジュール40では回転画像生成部41が用いられたが、第1実施形態の機械学習装置100の疑似継続学習モジュール40では、回転画像生成部41に代えて、合成画像生成部46が用いられる。第1実施形態の機械学習装置100の合成画像生成部46以外の構成は、事前トレーニングモジュール30及び新規クラス学習モジュール50を含めて従来の機械学習装置100と同じであるから、相違点を中心に説明し、共通する構成については適宜説明を省略する。
 合成画像生成部46は、基本クラスの複数のデータの画像を回転させ、その複数の回転画像を合成することで合成画像を生成する。本実施形態の合成画像は、基本クラスの複数のデータに基づいて生成された基本クラスの別のデータの一例である。本実施形態では、合成画像生成部46は、2つの画像を合成するが、2つ以上の画像を合成してもよい。また、合成する画像同士は、同じクラスであっても異なるクラスであってもよい。本実施形態の合成画像は、基本クラスの別のデータの一例である。
 第1実施形態の合成画像生成部46は、カットミックス(CutMix)の手法を利用して、合成画像を生成する。カットミックスは、ある画像に対して別の画像の一部を張り付けた新たな画像を生成し、ラベルを2枚の画像の面積比とする手法である。ラベルには各画像の回転角度が使用されてもよい。これに限定されず、合成画像生成部46は、ミックスアップ(Mixup)やカットアウト(Cutout)等の手法を利用して、画像を合成してもよい。ミックスアップは、画像のペアを重みによって重ね合わせる手法であり、ラベルは重みによって決まる。カットアウトは、画像の一部を正方形領域の画像でマスクする手法であり、ラベルは合成前と同様である。
 図7は、疑似継続学習モジュール40の画像合成処理S100を示すフローチャートである。
 ステップS101で、合成画像生成部46は、基本データセット10からランダムに画像のペアを選択する。本実施形態では、基本データセット10の各データはクラス毎に順番付けられている。例えば、合成画像生成部46は、基本クラスのc番目のクラスのトレーニングセット(Si,Qi)に対してペアとなるトレーニングセット(Sp,Qp)を同エピソード内のクラスからランダムに選択する。ここで、Si及びSpはサポートサンプルであり、Qi及びQpはクエリサンプルである。順番cは1から開始し、後述のステップS106において1ずつ増分する。図7のステップS101では、犬の画像(Si,Qi)がc番目のクラスのトレーニングセットとして選択され、猫の画像(Sp,Qp)がそのペアとして選択されている。
 ステップS102で、合成画像生成部46は、選択した犬の画像(Si,Qi)及び猫の画像(Sp,Qp)をランダムに回転させる。例えば、合成画像生成部46は、犬の画像(Si,Qi)及び猫の画像(Sp,Qp)について回転させる角度を90°、180°、270°からそれぞれランダムに設定し、設定した回転角度で犬の画像(Si,Qi)及び猫の画像(Sp,Qp)を回転させ、犬の回転画像(Si’,Qi’)及び猫の回転画像(Sp’,Qp’)を生成する。図7の例では、犬の画像(Si,Qi)は180°回転され、猫の画像(Sp,Qp)は90°回転される。犬の回転画像(Si’,Qi’)及び猫の回転画像(Sp’,Qp’)が合成される画像のペアとなる。
 ステップS103で、合成画像生成部46は、犬の回転画像(Si’,Qi’)及び猫の回転画像(Sp’,Qp’)の一方の画像の一部を切り取る。図7の例では、猫の回転画像(Sp’,Qp’)の一部が切り取られる。
 ステップS104で、合成画像生成部46は、切り取った画像を他方の画像の一部に貼り付けることにより、合成画像(Snew,Qnew)が生成される。図7の例では、切り取られた猫の回転画像(Sp’,Qp’)の一部が犬の回転画像(Si’,Qi’)の一部に貼り付けられることで合成画像(Snew,Qnew)が生成されている。
 ステップS105で、合成画像生成部46は、全クラスについて合成処理が完了したかどうかを判断する。全クラスについてステップS101~S104の合成処理が完了した場合(ステップS105のY)、第1実施形態の疑似継続学習タスクの構築が完了し、画像合成処理S100は終了する。全クラスについて合成処理が完了していない場合(ステップS105のN)、画像合成処理S100はステップS106に進む。
 ステップS106で、合成画像生成部46は、基本クラスの順番cを1増分する。その後、画像合成処理S100はステップS101に戻り、基本クラスの次のクラスのデータセットに対してステップS101~S105が実行される。全クラスについて合成処理が完了するまで、ステップS101~S106が繰り返される。
 第1実施形態によると、データを合成することにより、GAT44をバックボーンCNN32において事前学習したデータとは大きく異なる未知のデータで学習することが可能となる。その結果、GAT44の学習をより効果的に行うことが可能となるため、機械学習装置100の分類精度をより向上させることが可能となる。
 なお、第1実施形態の合成画像は、基本データセット10の画像を回転させた画像を合成したものであるが、これに限定されず、基本データセット10の画像を回転させずに合成したものであってもよい。以下、合成画像とは、画像を回転させた画像を合成したものと、画像を回転させずに合成したものとを含むものとする。
 第2実施形態
 以下、本発明の第2実施形態を説明する。第2実施形態の図面および説明では、第1実施形態と同一または同等の構成要素には、同一の符号を付する。第1実施形態と重複する説明を適宜省略し、第1実施形態と相違する構成について重点的に説明する。
 図8は、第2実施形態の機械学習装置100の疑似継続学習モジュール40を示す機能ブロック図である。第2実施形態の機械学習装置100の疑似継続学習モジュール40は、テキスト対応画像生成部47と、事前学習済み特徴抽出部42と、重み算出部43と、GAT44と、を備える。テキスト対応画像生成部47は、事前学習済み画像生成モデル48を備える。第1実施形態の機械学習装置100の疑似継続学習モジュール40では、合成画像生成部46が用いられたが、第2実施形態の機械学習装置100の疑似継続学習モジュール40では、合成画像生成部46に代えて、テキスト対応画像生成部47及び事前学習済み画像生成モデル48が用いられる。本実施形態のGAT44及び53は、グラフモデルの一例である。第2実施形態の機械学習装置100のテキスト対応画像生成部47及び事前学習済み画像生成モデル48以外の構成は、第1実施形態の機械学習装置100と基本的に同じであるから、相違点を中心に説明し、共通する構成については適宜説明を省略する。
 テキスト対応画像生成部47は、基本クラスを記述するテキストデータを事前学習済み画像生成モデル48に入力することにより、そのテキストデータに対応するテキスト対応画像を生成する。事前学習済み画像生成モデル48は、テキストデータを入力とし、そのテキストデータの内容に合わせたテキスト対応画像を出力とするtext-to-imageの画像生成モデルである。この画像生成モデルの手法として、例えば、StackGAN++などが挙げられる。事前学習済み画像生成モデル48は、基本クラスの複数のデータを用いて事前に学習されている。したがって、テキスト対応画像は、基本クラスの複数のデータに基づいて生成されている。本実施形態のテキスト対応画像は、基本クラスの別のデータの一例である。
 図9は、第2実施形態の疑似継続学習モジュール40による画像生成処理S200を示すフローチャートである。
 ステップS201で、テキスト対応画像生成部47は、事前学習済み画像生成モデル48に基本データセット10のc番目のクラスに対応するテキストデータを入力することにより、テキスト対応画像を生成する。例えば、c番目のクラスが「猫」である場合、テキストデータとして「猫」が事前学習済み画像生成モデル48に入力され、事前学習済み画像生成モデル48から「猫」の画像が出力される。テキスト対応画像生成部47の生成した画像のラベルは、入力したテキストデータとする。
 ステップS202で、テキスト対応画像生成部47は、1つのクラスに対してサポートセット及びクエリセットに必要な枚数分だけテキスト対応画像を生成したかどうかを判断する。上記枚数分だけテキスト対応画像が生成された場合(ステップS202のY)、画像生成処理S200はステップS203に進む。上記枚数分だけテキスト対応画像が生成されていない場合(ステップS202のN)、画像生成処理S200はステップS201に戻る。ステップS201では同じクラスの別の画像が生成され、上記枚数分だけテキスト対応画像が生成されるまで(ステップS202のY)、ステップS201及びS202が繰り返される。
 ステップS203で、テキスト対応画像生成部47は、全クラスについてテキスト対応画像の生成処理が完了したかどうかを判断する。全クラスについてステップS201~S202のテキスト対応画像の生成処理が完了した場合(ステップS203のY)、第2実施形態の疑似継続学習タスクの構築が完了し、画像生成処理S200は終了する。全クラスについてテキスト対応画像の生成処理が完了していない場合(ステップS203のN)、画像生成処理S200はステップS204に進む。
 ステップS204で、テキスト対応画像生成部47は、基本クラスの順番cを1増分する。その後、画像生成処理S200はステップS201に戻り、基本クラスの次のクラスのデータセットに対してステップS201~S203が実行される。全クラスについてテキスト対応画像の生成処理が完了するまで、ステップS201~S204が繰り返される。
 第2実施形態によると、基本クラスの複数のデータを用いて事前学習された画像生成モデルから基本クラスのデータを新たに生成することにより、GAT44をバックボーンCNN32の事前学習では使用していない未知のデータで学習することが可能となる。その結果、GAT44の学習をより効果的に行うことが可能となるため、機械学習装置100の分類精度をより向上させることが可能となる。
 なお、第2実施形態では、基本クラスの別のデータとしてテキスト対応画像が用いられたが、これに限定されず、テキスト対応画像を回転させた画像が用いられてもよい。
 第3実施形態
 以下、本発明の第3実施形態を説明する。第3実施形態の図面および説明では、第1及び第2実施形態と同一または同等の構成要素には、同一の符号を付する。第1及び第2実施形態と重複する説明を適宜省略し、第1及び第2実施形態と相違する構成について重点的に説明する。
 図10は、第3実施形態の機械学習装置100の疑似継続学習モジュール40を示す機能ブロック図である。第3実施形態の機械学習装置100の疑似継続学習モジュール40は、テキスト対応画像生成部47と、合成画像生成部46と、事前学習済み特徴抽出部42と、重み算出部43と、GAT44と、を備える。第3実施形態のテキスト対応画像生成部47は、生成したテキスト対応画像を合成画像生成部46に供給する。第3実施形態の合成画像生成部46は、テキスト対応画像を合成することにより合成画像を生成し、事前学習済み特徴抽出部42に供給する。本実施形態のテキスト対応画像を合成することにより生成された合成画像は、基本クラスの別のデータの一例である。
 第3実施形態の疑似継続学習モジュール40は、テキスト対応画像生成部47と合成画像生成部46との両方を備え、テキスト対応画像生成部47によって生成されたテキスト対応画像を合成画像生成部46によって合成した画像を用いて疑似継続学習タスクを構築する。テキスト対応画像生成部47によるテキスト対応画像の生成手法と合成画像生成部46による合成画像の生成手法は上述したとおりである。
 第3実施形態によると、複数のテキスト対応画像を合成することにより、より多様な画像を含む疑似継続学習タスクの構築が可能となる。その結果、GAT44の学習をより効果的に行うことが可能となるため、機械学習装置100の分類精度をより向上させることが可能となる。
 第4実施形態
 以下、本発明の第4実施形態を説明する。第4実施形態の図面および説明では、第1実施形態と同一または同等の構成要素には、同一の符号を付する。第1実施形態と重複する説明を適宜省略し、第1及び第2実施形態と相違する構成について重点的に説明する。
 図11は、第4実施形態のCECの手法を説明するための図である。図11に示すように、事前トレーニングステージでは、回転画像生成部41が基本データセット10の画像を回転させることにより回転画像を生成し、事前トレーニングモジュール30に入力する。したがって、事前トレーニングステージでは、基本データセット10に加え、基本データセット10を回転させた回転画像が事前トレーニングモジュール30に入力される。第4実施形態の基本データセット10は第1データの一例であり、第4実施形態の回転画像は第2データの一例である。
 一方、疑似継続学習ステージでは、第1~第3実施形態で上述したように基本クラスの複数のデータに基づいて新たに生成された合成画像やテキスト対応画像を含む疑似データセット15がGAT44に入力される。第4実施形態の合成画像やテキスト対応画像は、第3データの一例である。第3データは、例えば、合成画像、テキスト対応画像、テキスト対応画像を回転させた画像、テキスト対応画像の合成画像とすることができる。
 第1データ、第2データ及び第3データは、それぞれ異なるデータである。例えば、第2画像がテキスト対応画像である場合、第3画像は合成画像や第2画像としてのテキスト対応画像とは別のテキスト対応画像などの異なるものであればよい。
 第4実施形態の疑似継続学習モジュール40及び新規クラス学習モジュール50の事前学習済み特徴抽出部42及び51は、基本的には第1~第3実施形態と同様の構成を有するが、基本データセット10と基本データセット10の回転画像のデータセットとを用いて事前学習されたバックボーンCNN32の特徴抽出器Rである点で異なる。
 ところで、従来の疑似継続学習手法では、疑似継続学習タスクにおいて基本クラスの回転画像を使用する。本来であれば、バックボーンCNN32の性能向上のためには、基本クラスの回転画像も事前に学習すべきであるが、これを事前トレーニングステージで学習してしまうと、疑似継続学習ステージでGAT44と同じ学習をしてしまう。つまり、事前トレーニングステージでバックボーンが基本クラスの画像で学習、疑似継続学習ステージでGAT44が基本クラスの別の画像で学習するという前提が破綻する。そのため、バックボーンCNN32の事前学習の際には回転画像を使用できなかった。
 一方、本実施形態では、疑似継続学習ステージにおいて、合成画像やテキスト対応画像を新たに生成することにより、疑似継続学習タスクを構築する。そのため、バックボーンCNN32の事前学習に使用する画像として疑似継続学習に使用する画像とは異なるものを用いることができる。その結果、バックボーンCNN32の事前学習において回転画像を使用可能となり、バックボーンCNN32の性能向上により分類精度の向上も期待できる。
 第4実施形態では、事前トレーニングステージで第2データとして基本データセット10の1つの画像を回転させた回転画像が用いられたが、これに限定されず、例えば、合成画像、テキスト対応画像、テキスト対応画像の合成画像、テキスト対応画像の回転画像などの基本データセット10の複数のデータに基づいて生成された画像が用いられてもよい。したがって、事前学習済み特徴抽出部42及び51は、基本クラスのデータと、基本クラスの1つ又は複数のデータに基づいて生成された基本クラスの第2データと、を用いて事前に学習されているといえる。
 第1~第4実施形態では、疑似継続学習モジュール40及び新規クラス学習モジュール50においてGATを用いた例を示したが、これに限定されず、GAT及びグラフニューラルネットワークなどのグラフモデルが用いられればよい。
 以上説明した機械学習装置100の各種の処理は、CPUやメモリ等のハードウェアを用いた装置として実現することができるのは勿論のこと、ROM(リード・オンリ・メモリ)やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバと送受信することも、地上波あるいは衛星ディジタル放送のデータ放送として送受信することも可能である。
 以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
 本開示は、機械学習技術に関する。
 10 基本データセット、 15 疑似データセット、 20 新規データセット、 30 事前トレーニングモジュール、 32 バックボーンCNN、 40 疑似継続学習モジュール、 41 回転画像生成部、 42、51 事前学習済み特徴抽出部、 43、52 重み算出部、 44、53 GAT、 45、54 再構築分類重み、 46 合成画像生成部、 47 テキスト対応画像生成部、 50 新規クラス学習モジュール、 100 機械学習装置。

Claims (5)

  1.  基本クラスのデータに比べて少数の新規クラスのデータを継続学習する機械学習装置であって、
     前記基本クラスのデータを用いて事前に学習された特徴抽出部であって、前記新規クラスのデータを入力とし、前記新規クラスのデータの特徴ベクトルを出力とする特徴抽出部と、
     前記特徴ベクトルに基づいて、前記新規クラスの分類重みを算出する重み算出部と、
     前記算出した新規クラスの分類重みと以前に学習した全てのクラスの分類重みとを入力とし、前記入力した分類重みを適応させて再構築することにより再構築分類重みを出力するグラフモデルであって、前記基本クラスの複数のデータに基づいて生成された基本クラスの別のデータを用いて疑似継続学習され、前記基本クラスと前記新規クラスの間の依存関係をメタ学習する、グラフモデルと、
     を備える、機械学習装置。
  2.  前記別のデータは、前記基本クラスの複数のデータを回転させ、当該回転させた複数のデータを合成することで生成されるデータである、請求項1に記載の機械学習装置。
  3.  テキストデータを入力とし、画像データを出力とする画像生成モデルをさらに備え、
     前記画像生成モデルは、前記基本クラスの複数のデータを用いて事前に学習され、
     前記別のデータは、前記画像生成モデルに前記基本クラスを記述するテキストデータを入力することにより前記画像生成モデルから出力される前記画像データである、請求項1又は2に記載の機械学習装置。
  4.  基本クラスのデータに比べて少数の新規クラスのデータを継続学習する機械学習方法であって、
     前記基本クラスのデータを事前に学習済みの特徴抽出部に前記新規クラスのデータを入力することにより、前記特徴抽出部に前記新規クラスのデータの特徴ベクトルを出力させるステップと、
     前記特徴ベクトルに基づいて、前記新規クラスの分類重みを算出するステップと、
     前記基本クラスの複数のデータに基づいて生成された前記基本クラスの別のデータを用いて疑似継続学習され且つ前記基本クラスと前記新規クラスの間の依存関係をメタ学習するグラフモデルに、前記算出した新規クラスの分類重みと以前に学習した全てのクラスの分類重みとを入力し、前記グラフモデルに前記入力した分類重みを適応させて再構築させることにより再構築分類重みを出力させるステップと、
     を備える、機械学習方法。
  5.  基本クラスのデータに比べて少数の新規クラスのデータを継続学習するための機械学習プログラムであって、コンピュータに、
     前記基本クラスのデータを事前に学習済みの特徴抽出部に前記新規クラスのデータを入力することにより、前記特徴抽出部に前記新規クラスのデータの特徴ベクトルを出力させるステップと、
     前記特徴ベクトルに基づいて、前記新規クラスの分類重みを算出するステップと、
     前記基本クラスの複数のデータに基づいて生成された前記基本クラスの別のデータを用いて疑似継続学習され且つ前記基本クラスと前記新規クラスの間の依存関係をメタ学習するグラフモデルに、前記算出した新規クラスの分類重みと以前に学習した全てのクラスの分類重みとを入力し、前記グラフモデルに前記入力した分類重みを適応させて再構築させることにより再構築分類重みを出力させるステップと、
     を実行させるための機械学習プログラム。
PCT/JP2023/018053 2022-08-31 2023-05-15 機械学習装置、機械学習方法、および機械学習プログラム WO2024047957A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-137820 2022-08-31
JP2022137820A JP2024033903A (ja) 2022-08-31 2022-08-31 機械学習装置、機械学習方法、および機械学習プログラム

Publications (1)

Publication Number Publication Date
WO2024047957A1 true WO2024047957A1 (ja) 2024-03-07

Family

ID=90099275

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/018053 WO2024047957A1 (ja) 2022-08-31 2023-05-15 機械学習装置、機械学習方法、および機械学習プログラム

Country Status (2)

Country Link
JP (1) JP2024033903A (ja)
WO (1) WO2024047957A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020034998A (ja) * 2018-08-27 2020-03-05 日本電信電話株式会社 拡張装置、拡張方法及び拡張プログラム
JP2020187736A (ja) * 2019-05-10 2020-11-19 ネイバー コーポレーションNAVER Corporation 地域的特徴を有する分類器学習のための学習データ生成方法およびそのシステム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020034998A (ja) * 2018-08-27 2020-03-05 日本電信電話株式会社 拡張装置、拡張方法及び拡張プログラム
JP2020187736A (ja) * 2019-05-10 2020-11-19 ネイバー コーポレーションNAVER Corporation 地域的特徴を有する分類器学習のための学習データ生成方法およびそのシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZHANG CHI; SONG NAN; LIN GUOSHENG; ZHENG YUN; PAN PAN; XU YINGHUI: "Few-Shot Incremental Learning with Continually Evolved Classifiers", 2021 IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR), IEEE, 20 June 2021 (2021-06-20), pages 12450 - 12459, XP034009232, DOI: 10.1109/CVPR46437.2021.01227 *

Also Published As

Publication number Publication date
JP2024033903A (ja) 2024-03-13

Similar Documents

Publication Publication Date Title
DeVries et al. Dataset augmentation in feature space
US11423282B2 (en) Autoencoder-based generative adversarial networks for text generation
JP7106902B2 (ja) 学習プログラム、学習方法および学習装置
US11663483B2 (en) Latent space and text-based generative adversarial networks (LATEXT-GANs) for text generation
RU2666631C2 (ru) Обучение dnn-студента посредством распределения вывода
CN112289342A (zh) 使用神经网络生成音频
Creswell et al. Adversarial information factorization
US12100071B2 (en) System and method for generating images of the same style based on layout
JP6453681B2 (ja) 演算装置、演算方法およびプログラム
WO2024047957A1 (ja) 機械学習装置、機械学習方法、および機械学習プログラム
WO2024047958A1 (ja) 機械学習装置、機械学習方法、および機械学習プログラム
CN116664731B (zh) 人脸动画生成方法及装置、计算机可读存储介质、终端
WO2022024183A1 (ja) 音声信号変換モデル学習装置、音声信号変換装置、音声信号変換モデル学習方法及びプログラム
WO2024024217A1 (ja) 機械学習装置、機械学習方法、および機械学習プログラム
WO2022144979A1 (ja) 学習装置、学習方法及び記憶媒体
Sustek et al. Dealing with Unknowns in Continual Learning for End-to-end Automatic Speech Recognition.
JP2008250856A (ja) 学習装置、学習方法、及びプログラム
KR102432854B1 (ko) 잠재 벡터를 이용하여 군집화를 수행하는 방법 및 장치
WO2023119733A1 (ja) 機械学習装置、機械学習方法、および機械学習プログラム
WO2023119742A1 (ja) 機械学習装置、機械学習方法、および機械学習プログラム
KR102600960B1 (ko) 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램
WO2022024187A1 (ja) 音声信号変換モデル学習装置、音声信号変換装置、音声信号変換モデル学習方法及びプログラム
WO2024052987A1 (ja) 信号生成装置、信号生成システム、信号生成方法及びプログラム
JP6877666B1 (ja) 分類装置、分類方法およびプログラム
JP6712540B2 (ja) モデルパラメータ生成装置、モデルパラメータ生成方法、音声認識装置の作成方法、プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23859727

Country of ref document: EP

Kind code of ref document: A1