WO2024024217A1 - 機械学習装置、機械学習方法、および機械学習プログラム - Google Patents
機械学習装置、機械学習方法、および機械学習プログラム Download PDFInfo
- Publication number
- WO2024024217A1 WO2024024217A1 PCT/JP2023/018119 JP2023018119W WO2024024217A1 WO 2024024217 A1 WO2024024217 A1 WO 2024024217A1 JP 2023018119 W JP2023018119 W JP 2023018119W WO 2024024217 A1 WO2024024217 A1 WO 2024024217A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- classification
- input data
- weight
- class classification
- class
- Prior art date
Links
- 238000010801 machine learning Methods 0.000 title claims description 16
- 238000000605 extraction Methods 0.000 claims abstract description 18
- 239000000284 extract Substances 0.000 claims abstract description 5
- 239000011159 matrix material Substances 0.000 claims description 16
- 238000010586 diagram Methods 0.000 description 12
- 238000000034 method Methods 0.000 description 12
- 238000013527 convolutional neural network Methods 0.000 description 9
- 230000007423 decrease Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001667 episodic effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2431—Multiple classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/096—Transfer learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
Definitions
- the present invention relates to machine learning technology.
- CNN Convolutional Neural Network
- Continuous learning is a learning method that improves the currently trained model when new tasks or new data occur, rather than learning the model from the beginning.
- fatal forgetting in which a large amount of knowledge acquired in the past is lost and the ability to perform a task is significantly reduced, but this is especially problematic in continuous learning.
- Continuous learning in a class classification task is a method that enables classification by learning a new class (new class) from a state where the basic class (class learned in the past) can be classified. The biggest challenge is to obtain classification performance for new classes while avoiding fatal forgetting and maintaining classification performance for basic classes.
- Continuous small-shot learning which combines continuous learning that learns new classes without fatal forgetting based on the learning results of the basic (base) class, and small-shot learning that learns new classes that are few compared to the basic class.
- a method called incremental few-shot learning (IFSL) has been proposed (Non-Patent Document 1). With continuous few-shot learning, base classes can be learned from a large dataset, and new classes can be learned from a small number of sample data.
- Non-Patent Document 1 There is an Attention Attractor Network described in Non-Patent Document 1 as a continuous few-shot learning method.
- the performance of the base classifier has a significant influence on the new classifier and attention attractor.
- the base classifier does not change. Therefore, after connecting the base class classifier with the new class classifier, there was a problem in that the performance of both classifiers deteriorated.
- the present embodiment has been developed in view of these circumstances, and its purpose is to provide a machine learning technique that can suppress the decline in classification performance after connecting a basic classifier with a new classifier. be.
- a machine learning device is a machine learning device that continuously learns a small number of new classes compared to a base class, extracts features of input data, and maps a feature map.
- a feature extraction unit that has learned the basic class and generates a basic class
- a prototype generation unit that inputs the feature map and outputs a prototype of the features of the class
- a prototype generation unit that inputs the feature map of the input data and performs basic class classification.
- a basic class classification unit that has already learned the basic classes classifies the input data into basic classes based on weights, and a feature map of the input data is input to classify the input data into new classes based on the weights of the new class classification.
- a new class classification unit that classifies into classes, inputs the prototype and the feature map of the input data, and combines the weights of the basic class classification adjusted based on the metamodel and the weights of the new class classification. and a combined classification unit that classifies the input data into classes based on weights of the combined classification.
- This method is a machine learning method that continuously learns a smaller number of new classes than the base class, and includes a feature extraction step of extracting features of input data and generating a feature map after learning the base class, and a feature extraction step of extracting features of input data and generating a feature map.
- a prototype generation step of inputting a map and outputting a prototype of the features of the class; and after learning a base class, inputting a feature map of the input data and converting the input data into a base class based on the weight of the base class classification.
- a basic class classification step for classifying the input data; a new class classification step for inputting a feature map of the input data and classifying the input data into a new class based on weights for new class classification; and features of the prototype and the input data.
- FIG. 2 is a diagram illustrating the configuration of an attention attractor network.
- FIGS. 2(a) and 2(b) are diagrams illustrating two-stage training.
- FIGS. 3(a) and 3(b) are diagrams illustrating details of the second stage training.
- FIG. 3 is a diagram illustrating details of internal learning of a federated classification unit.
- FIG. 6 is a diagram illustrating details of external learning of a federated classification unit.
- FIG. 1 is a diagram illustrating the configuration of an attention attractor network.
- the attention attractor network includes a feature extraction section 10, a basic class classification section 20, an attention attractor section 30, a new class classification section 40, and a federated classification section 50.
- the attention attractor network is one of the representative methods of dynamic few-shot learning (DFSL), and uses attention attractors to classify the basic class classification unit 20 and new class classification. Departments 40 can be combined.
- DFSL dynamic few-shot learning
- the feature extraction unit 10 includes a backbone CNN.
- Backbone CNN is a convolutional neural network and extracts features of input data.
- the features of the input data extracted by the backbone CNN are supplied to the basic class classification section 20, the attention attractor section 30, and the new class classification section 40.
- the basic class classification unit 20 includes a basic class classifier and basic class classification weights.
- the feature extraction section 10 and the basic class classification section 20 are pre-trained as a set using the basic class data set as training data.
- the base class dataset contains a large number of samples. An example of a sample is an image, but is not limited thereto.
- the basic class classification weight is a weight vector of the basic class classifier, and indicates the average feature amount of samples of the data set of the basic class.
- the new class classification unit 40 includes a new class classifier and new class classification weights for continuously learning new classes.
- the new class classification unit 40 performs a posteriori learning on the data set of the new class.
- the number of samples included in the new class dataset is small compared to the number of samples included in the base class dataset.
- the new class classification weight is a weight vector of the new class classifier, and indicates the average feature amount of samples of the data set of the new class.
- the attention attractor unit 30 does not forget the knowledge learned from the base class data set when continuously learning the new class data set on the premise that the base class teacher data cannot be used in continuous learning. , the learning is controlled so that the inference results are not biased towards the new class.
- the attention attractor unit 30 regularizes the basic class classification weight and the new class classification weight so that they can be compared on a common feature space.
- the attention attractor unit 30 uses the basic class information provided from the basic class classification unit 20 to calculate information on a regularization term to be added to the cross-entropy loss of class classification, and supplies the information to the new class classification unit 40.
- the new class classification unit 40 updates the new class classification weight so as to minimize the regularized cross entropy loss obtained by adding the cross entropy loss and the regularization term.
- the combined classification section 50 combines the classification results by the basic class classification section 20 and the classification results by the new class classification section 40, and outputs the final classification result.
- the basic class classification section 20 after learning is fixed and not changed.
- the inability to absorb new class information affects the classification performance of the federated classifier 50. Therefore, in the present embodiment, by modifying the created basic class classification section 20 with information on the new class, the decline in classification performance after the basic class classification section 20 is connected to the new class classification section 40 is suppressed. .
- FIGS. 2(a) and 2(b) are diagrams illustrating two-stage training.
- FIG. 2(a) shows the first stage of training, in which the feature extraction unit 10 and the basic class classification unit 20 are trained using input data of the basic class.
- FIG. 2(b) shows the second stage of training, which uses the feature extraction unit 10 and the basic class classification unit 20, which have already learned the basic classes in the first stage of training.
- the combined classification section 50 that combines the basic class classification section 20 and the new class classification section 40
- the new class classification section 40 is trained using the input data of the basic class and the new class
- the basic class classification section 20 is trained based on the metamodel. Adjust.
- FIGS. 3(a) and 3(b) are diagrams illustrating details of the second stage training.
- the second stage of training uses episodic input data.
- Each episode consists of a support set S and a query set Q.
- the support set S is composed of a new class data set
- the query set Q is composed of a base class data set and a new class data set.
- the feature extraction unit 10 has already learned the basic class through the first stage of training.
- the feature extraction unit 10 extracts the features of the input data, generates a feature map, and provides the feature map of the input data to the prototype generation unit 12 and the federated classification unit 50.
- the prototype generation unit 12 generates a prototype that is the average value of the features of the class from the feature map, and provides the prototype to the federated classification unit 50.
- the basic class classification unit 20 has already learned the basic classes through the first stage of training.
- the basic class classification unit 20 receives the feature map of the input data and classifies the input data into basic classes based on the weights of the basic class classification.
- the new class classification unit 40 receives the feature map of the input data and classifies the input data into a new class based on the weight of the new class classification.
- the federated classification unit 50 inputs the prototype and the feature map of the input data, and inputs the weight of the federated classification that is a combination of the weight of the basic class classification adjusted based on the metamodel and the weight of the new class classification. Classify data into classes.
- the federated classification unit 50 is a metamodel and performs internal learning and external learning. Learning by the new class classification unit 40 corresponds to internal learning of the metamodel, and learning by the federated classification unit 50 corresponds to external learning of the metamodel.
- the input data of the federated classification section 50 includes the weight of the basic class classification of the basic class classification section 20, the weight of the new class classification of the new class classification section 40, the feature map of the input data obtained by the feature extraction section 10, and the prototype generation section 12. is the average value of the features of each class, that is, the prototype.
- FIG. 3(a) is a diagram illustrating internal learning.
- a support set S consisting of a data set of a new class is given as input data.
- the weights of the metamodel are fixed, and the weights for new class classification are trained so as to minimize the loss of classification results by the federated classification unit 50.
- FIG. 3(b) is a diagram illustrating external learning.
- a query set Q consisting of a base class data set and a new class data set is given as input data.
- the weights of the new class classification are fixed, and the weights of the metamodel are trained so as to minimize the loss of the classification results by the federated classification unit 50.
- the teaching data for internal learning is the support set S
- the teaching data for external learning is the query set Q.
- the weights of the metamodel are not updated, but the weights of new classifications are updated.
- the metamodel trains the new class classification section 40 as a regularization term for the new class classification section 40. Conversely, when performing external learning, only the weights of the metamodel are updated without updating the weights of the new classification.
- FIG. 4 is a diagram illustrating details of internal learning of the federated classification unit 50.
- a new class classification section 40 in which new classification weights are set with random initial values is trained, and is fused with the basic class classification section 20 to create a federated classification section 50.
- the feature map of the support set S is input to the combined classification unit 50, and the classification result is output from the combined classification unit 50.
- a loss is calculated based on this classification result, and the weight of the new classification of the new class classification unit 40 is updated by backpropagation of the error.
- the prototype generation unit 12 inputs the feature map of the input data of the new class of the support set S, outputs a prototype of the features of the class, and provides it to the metamodel unit 60.
- the metamodel unit 60 inputs the prototype, outputs a scaling matrix 62 and a bias matrix 64 based on the weights of the metamodel, and provides them to the adjustment unit 70.
- the adjustment unit 70 adjusts the weight of the basic class classification based on the scaling matrix 62 and the bias matrix 64, using the weight of the basic class classification of the basic class classification unit 20, which has already learned the basic class through the first stage training, as an initial value. Then, the adjusted basic class classification weights are set in the basic class classification section 20.
- the correlation adjustment unit 72 calculates the correlation between the weight of the basic class classification of the basic class classification unit 20 adjusted by the adjustment unit 70 and the weight of the new class classification of the new class classification unit 40, and performs basic class classification. and the weight of the new class classification.
- the merging unit 74 merges the weight 22 of the basic class classification adjusted by the correlation adjustment unit 72 and the weight 44 of the new class classification adjusted by the correlation adjustment unit 72 to generate a weight of the federated classification,
- the weight of the federated classification is set in the federated classification unit 50.
- the combined classification unit 50 receives the feature map of the input data of the support set S from the feature extraction unit 10, and classifies the input data of the support set S into classes based on the weight of the combined classification.
- the learning unit 80 fixes the weight of the metamodel of the metamodel unit 60, calculates the loss of the classification result by the federated classification unit 50, and sets the weight of the new class classification of the new class classification unit 40 so as to minimize the loss. learn.
- FIG. 5 is a diagram illustrating details of external learning by the federated classification unit 50.
- the weight of the new classification of the new class classification unit 40 that has already been learned in the internal learning is fixed, the weight of the metamodel of the metamodel unit 60 is trained, and the basic class classification unit 20 adjusted by the metamodel is newly created. It is merged with the class classification section 40 to create a federated classification section 50. Thereafter, the feature map of the query set Q is input to the combined classification unit 50, and the classification result is output from the combined classification unit 50. A loss is calculated based on this classification result, and the weight of the metamodel in the metamodel unit 60 is updated by backpropagation of the error.
- the prototype generation unit 12 inputs the feature maps of the input data of the base class of the query set Q and the new class, outputs a prototype of the features of the class, and provides it to the metamodel unit 60.
- the metamodel unit 60 inputs the prototype, outputs a scaling matrix 62 and a bias matrix 64 based on the weights of the metamodel, and provides them to the adjustment unit 70.
- the adjustment unit 70 adjusts the weight of the basic class classification based on the scaling matrix 62 and the bias matrix 64, using the weight of the basic class classification of the basic class classification unit 20 trained by internal learning as an initial value, and adjusts the weight of the basic class classification based on the scaling matrix 62 and the bias matrix 64.
- Class classification weights are set in the basic class classification section 20.
- the correlation adjustment unit 72 calculates the correlation between the weight of the basic class classification of the basic class classification unit 20 adjusted by the adjustment unit 70 and the weight of the new class classification of the new class classification unit 40, and performs basic class classification. and the weight of the new class classification.
- the merging unit 74 merges the weight 22 of the basic class classification adjusted by the correlation adjustment unit 72 and the weight 44 of the new class classification adjusted by the correlation adjustment unit 72 to generate a weight of the federated classification,
- the weight of the federated classification is set in the federated classification unit 50.
- the combined classification unit 50 receives the feature map of the input data of the query set Q from the feature extraction unit 10, and classifies the input data of the query set Q into classes based on the weight of the combined classification.
- the learning unit 80 fixes the weight of the new class classification by the new class classification unit 40, calculates the loss of the classification result by the federated classification unit 50, and adjusts the weight of the metamodel of the metamodel unit 60 so as to minimize the loss. learn.
- the metamodel of the metamodel unit 60 trained in external learning is used when training the new class classification unit 40 in internal learning in the next episode.
- the metamodel is trained continuously for each episode, resulting in a metamodel that can adjust the base classifier 20 to be suitable for any new class.
- the metamodel outputs a scaling matrix and a bias matrix according to the input prototype, and these matrices are used to modify the base class classification unit 20.
- the basic class classification unit 20 is adjusted using the information of the new class. Therefore, the basic class classification section 20 adjusted by the metamodel can be easily connected to the new class classification section 40. Details of the adjustment of the basic class classification unit 20 by the adjustment unit 70 are described in Non-Patent Document 2.
- the correlation adjustment unit 72 grasps the correlation between the adjusted basic class classification unit 20 and the new class classification unit 40, and calculates the importance of the basic class classification unit 20 and the new class classification unit 40.
- the merging unit 74 projects the weight of the basic class classification of the basic class classification unit 20 and the weight of the new classification of the new class classification unit 40 into a new feature space according to these importance levels, and then projects the weight of the basic class classification of the basic class classification unit 20 and the weight of the new classification of the new class classification unit 40 into a new feature space, and then calculates the combined classification of the combined classification unit 50. Create weights for . Details of the operations of the correlation adjustment section 72 and the merging section 74 are described in Non-Patent Document 3.
- 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 created base class classifier is modified using the information of the new class, so that the classification performance does not deteriorate after the base class classifier is connected to the new class classifier. .
- the present invention can be used in machine learning technology.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Medical Informatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Abstract
特徴抽出部(10)は、入力データの特徴を抽出し、特徴マップを生成する。プロトタイプ生成部(12)は、特徴マップを入力して、クラスの特徴のプロトタイプを出力する。基本クラス分類部(20)は、入力データの特徴マップを入力して基本クラス分類の重みに基づいて入力データを基本クラスに分類する。新規クラス分類部(40)は、入力データの特徴マップを入力して、新規クラス分類の重みに基づいて入力データを新規クラスに分類する。連合分類部(50)は、プロトタイプと入力データの特徴マップを入力して、メタモデルに基づいて調整された基本クラス分類の重みと、新規クラス分類の重みとを連合した連合分類の重みに基づいて入力データをクラスに分類する。
Description
本発明は、機械学習技術に関する。
人間は長期にわたる経験を通して新しい知識を学習することができ、昔の知識を忘れないように維持することができる。一方、畳み込みニューラルネットワーク(Convolutional Neural Network(CNN))の知識は学習に使用したデータセットに依存しており、データ分布の変化に適応するためにはデータセット全体に対してCNNのパラメータの再学習が必要となる。CNNでは、新しいタスクについて学習していくにつれて、昔のタスクに対する推定精度は低下していく。このようにCNNでは連続学習を行うと新しいタスクの学習中に昔のタスクの学習結果を忘れてしまう致命的忘却(catastrophic forgetting)が避けられない。
より効率的で実用的な手法として、既に獲得した知識を再利用しつつ、過去のタスクの知識を忘れることなく、新たなタスクを学習する継続学習(incremental learningまたはcontinual learning)が提案されている。継続学習とは、新しいタスクや新しいデータが発生した時に、最初からモデルを学習するのではなく、現在の学習済みのモデルを改善して学習する学習方法である。深層学習では、過去に獲得した知識を大幅に喪失し、タスクの能力が大幅に低下する致命的忘却という現象があるが、継続学習ではこれが特に問題となる。クラス分類タスクにおける継続学習は基本クラス(過去に学習したクラス)が分類できる状態から新しいクラス(新規クラス)を学習して分類できるようにする手法である。致命的忘却を回避して基本クラスの分類性能を維持しつつ、新規クラスの分類性能を獲得することが最大の課題となる。
他方、新しいタスクは数少ないサンプルデータしか利用できないことが多いため、少ない教師データで効率的に学習する手法として、少数ショット学習(few-shot learning)が提案されている。少数ショット学習では、一度学習したパラメータを再学習せずに、別の少量のパラメータを用いて新しいタスクを学習する。
基本(ベース)クラスの学習結果に対して致命的忘却を伴わずに新規クラスを学習する継続学習と、基本クラスに比べて少数しかない新規クラスを学習する少数ショット学習とを組み合わせた継続少数ショット学習(incremental few-shot learning(IFSL))と呼ばれる手法が提案されている(非特許文献1)。継続少数ショット学習では、基本クラスについては大規模なデータセットから学習し、新規クラスについては少数のサンプルデータから学習することができる。
Ren, M., Liao, R., Fetaya, E., & Zemel, R. S. (2018). Incremental few-shot learning with attention attractor networks. arXiv preprint arXiv:1810.07218.
Oreshkin, B., Rodriguez Lopez, P., & Lacoste, A. (2018). TADAM: Task dependent adaptive metric for improved few-shot learning. Advances in neural information processing systems, 31.
Yoon, S. W., Seo, J., & Moon, J. (2019). TapNet: Neural network augmented with task-adaptive projection for few-shot learning. International Conference on Machine Learning. PMLR.
継続少数ショット学習手法として非特許文献1に記載の注意アトラクタネットワーク(Attention Attractor Network)がある。注意アトラクタネットワークでは、基本クラス分類器の性能が新規クラス分類器や注意アトラクタに重大な影響を与える。しかし、基本クラス分類器は一旦作成されたら、変更されない。そのため、基本クラス分類器を新規クラス分類器と連結した後、両方の分類器の性能が落ちるという課題があった。
本実施形態はこうした状況に鑑みてなされたものであり、その目的は、基本クラス分類器を新規クラス分類器と連結した後の分類性能の低下を抑えることができる機械学習技術を提供することにある。
上記課題を解決するために、本実施形態のある態様の機械学習装置は、基本クラスに比べて少数の新規クラスを継続学習する機械学習装置であって、入力データの特徴を抽出し、特徴マップを生成する、基本クラスを学習済みの特徴抽出部と、前記特徴マップを入力して、クラスの特徴のプロトタイプを出力するプロトタイプ生成部と、前記入力データの特徴マップを入力して基本クラス分類の重みに基づいて前記入力データを基本クラスに分類する、基本クラスを学習済みの基本クラス分類部と、前記入力データの特徴マップを入力して、新規クラス分類の重みに基づいて前記入力データを新規クラスに分類する新規クラス分類部と、前記プロトタイプと前記入力データの特徴マップを入力して、メタモデルに基づいて調整された前記基本クラス分類の重みと、前記新規クラス分類の重みとを連合した連合分類の重みに基づいて前記入力データをクラスに分類する連合分類部とを含む。
本実施形態の別の態様は、機械学習方法である。この方法は、基本クラスに比べて少数の新規クラスを継続学習する機械学習方法であって、基本クラスを学習後に、入力データの特徴を抽出し、特徴マップを生成する特徴抽出ステップと、前記特徴マップを入力して、クラスの特徴のプロトタイプを出力するプロトタイプ生成ステップと、基本クラスを学習後に、前記入力データの特徴マップを入力して基本クラス分類の重みに基づいて前記入力データを基本クラスに分類する基本クラス分類ステップと、前記入力データの特徴マップを入力して、新規クラス分類の重みに基づいて前記入力データを新規クラスに分類する新規クラス分類ステップと、前記プロトタイプと前記入力データの特徴マップを入力して、メタモデルに基づいて調整された前記基本クラス分類の重みと、前記新規クラス分類の重みとを連合した連合分類の重みに基づいて前記入力データをクラスに分類する連合分類ステップとを含む。
なお、以上の構成要素の任意の組合せ、本実施形態の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本実施形態の態様として有効である。
本実施形態によれば、基本クラス分類器を新規クラス分類器と連結した後の分類性能の低下を抑えることができる。
図1は、注意アトラクタネットワークの構成を説明する図である。注意アトラクタネットワークは、特徴抽出部10、基本クラス分類部20、注意アトラクタ部30、新規クラス分類部40、および連合分類部50を含む。
注意アトラクタネットワークは、動的少数ショット学習(Dynamic Few-Shot Learning(DFSL))の代表的な手法の一つであり、注意(アテンション)アトラクタを利用して、基本クラス分類部20と新規クラス分類部40を連合することができる。
特徴抽出部10は、バックボーンCNNを含む。バックボーンCNNは、畳み込みニューラルネットワークであり、入力データの特徴を抽出する。バックボーンCNNにより抽出された入力データの特徴は、基本クラス分類部20、注意アトラクタ部30、および新規クラス分類部40に供給される。
基本クラス分類部20は、基本クラス分類器と基本クラス分類重みを含む。基本クラスのデータセットを教師データとして、特徴抽出部10と基本クラス分類部20をセットにして事前トレーニングする。基本クラスのデータセットは多数のサンプルを含む。サンプルの一例は画像であるが、これに限定されない。基本クラス分類重みは、基本クラス分類器の重みベクトルであり、基本クラスのデータセットのサンプルの平均特徴量を示すものである。
新規クラス分類部40は、新規クラスを継続学習するための新規クラス分類器と新規クラス分類重みを含む。新規クラス分類部40は、新規クラスのデータセットを事後学習する。新規クラスのデータセットに含まれるサンプルの数は、基本クラスのデータセットに含まれるサンプルの数に比べて少数である。新規クラス分類重みは、新規クラス分類器の重みベクトルであり、新規クラスのデータセットのサンプルの平均特徴量を示すものである。
注意アトラクタ部30は、基本クラスの教師データを継続学習では使用できないという前提のもとで、継続的に新規クラスのデータセットを学習する際、基本クラスのデータセットで学んだ知識を忘却せず、推論結果が新規クラスに偏らないように学習を制御する。
注意アトラクタ部30は、基本クラス分類重みと新規クラス分類重みを共通の特徴空間上で比較できるように正則化する。注意アトラクタ部30は、基本クラス分類部20から提供される基本クラスの情報を利用して、クラス分類のクロスエントロピー損失に加える正則化項の情報を算出し、新規クラス分類部40に供給する。新規クラス分類部40は、クロスエントロピー損失と正則化項を加算した正則化クロスエントロピー損失を最小化するように新規クラス分類重みを更新する。
連合分類部50は、基本クラス分類部20による分類結果と、新規クラス分類部40による分類結果を結合して、最終的な分類結果を出力する。
従来の注意アトラクタネットワークでは、注意アトラクタを利用して、基本クラス分類部20と新規クラス分類部40を連合する際、学習後の基本クラス分類部20を固定させて変更しない。基本クラス分類部20が一旦作成されると、新規クラスの情報を吸収することができないことは連合分類部50の分類性能に影響を与える。そこで、本実施の形態では、作成された基本クラス分類部20を新規クラスの情報によって修正することにより、基本クラス分類部20を新規クラス分類部40と連結した後の分類性能の低下を抑制する。
図2(a)および図2(b)は、2段階のトレーニングを説明する図である。
図2(a)は、第1段階のトレーニングであり、基本クラスの入力データを用いて特徴抽出部10と基本クラス分類部20をトレーニングする。
図2(b)は、第2段階のトレーニングであり、第1段階のトレーニングで基本クラスを学習済みの特徴抽出部10と基本クラス分類部20を利用する。基本クラス分類部20と新規クラス分類部40を連合した連合分類部50において、基本クラスと新規クラスの入力データを用いて新規クラス分類部40をトレーニングし、基本クラス分類部20をメタモデルに基づいて調整する。
図3(a)および図3(b)は、第2段階のトレーニングの詳細を説明する図である。第2段階のトレーニングでは、エピソード形式の入力データを用いる。
各エピソードは、サポートセットSとクエリセットQから構成される。サポートセットSは新規クラスのデータセットで構成され、クエリセットQは基本クラスのデータセットと新規クラスのデータセットで構成される。
特徴抽出部10は、第1段階のトレーニングによって基本クラスを学習済みである。特徴抽出部10は、入力データの特徴を抽出し、特徴マップを生成し、入力データの特徴マップをプロトタイプ生成部12と連合分類部50に与える。
プロトタイプ生成部12は、特徴マップからクラスの特徴の平均値であるプロトタイプを生成し、プロトタイプを連合分類部50に与える。
基本クラス分類部20は、第1段階のトレーニングによって基本クラスを学習済みである。基本クラス分類部20は、入力データの特徴マップを入力して、基本クラス分類の重みに基づいて入力データを基本クラスに分類する。
新規クラス分類部40は、入力データの特徴マップを入力して、新規クラス分類の重みに基づいて入力データを新規クラスに分類する。
連合分類部50は、プロトタイプと入力データの特徴マップを入力して、メタモデルに基づいて調整された基本クラス分類の重みと、新規クラス分類の重みとを連合した連合分類の重みに基づいて入力データをクラスに分類する。
連合分類部50はメタモデルであり、内部学習と外部学習を行う。新規クラス分類部40の学習はメタモデルの内部学習に相当し、連合分類部50の学習はメタモデルの外部学習に相当する。連合分類部50の入力データは、基本クラス分類部20の基本クラス分類の重み、新規クラス分類部40の新規クラス分類の重み、特徴抽出部10が求める入力データの特徴マップ、およびプロトタイプ生成部12が求める各クラスの特徴の平均値すなわちプロトタイプである。
図3(a)は、内部(インナー)学習を説明する図である。内部学習では、入力データとして新規クラスのデータセットで構成されるサポートセットSが与えられる。
内部学習では、メタモデルの重みは固定し、連合分類部50による分類結果の損失を最小化するように新規クラス分類の重みをトレーニングする。
図3(b)は、外部(アウター)学習を説明する図である。外部学習では、入力データとして基本クラスのデータセットと新規クラスのデータセットで構成されるクエリセットQが与えられる。
外部学習では、新規クラス分類の重みは固定し、連合分類部50による分類結果の損失を最小化するようにメタモデルの重みをトレーニングする。
このように、内部学習の教師データはサポートセットSであり、外部学習の教師データはクエリセットQである。内部学習の次に外部学習が行われる。内部学習から外部学習までのトレーニングを繰り返す。内部学習する際に、メタモデルの重みは更新しないが、新規分類の重みを更新させる。この時、メタモデルは新規クラス分類部40の正則化項として、新規クラス分類部40をトレーニングする。逆に、外部学習する際に、新規分類の重みは更新せずに、メタモデルの重みだけを更新する。
図4は、連合分類部50の内部学習の詳細を説明する図である。内部学習では、ランダムな初期値で新規分類の重みが設定された新規クラス分類部40をトレーニングし、基本クラス分類部20と融合し、連合分類部50を作成する。その後、サポートセットSの特徴マップを連合分類部50に入力し、分類結果を連合分類部50から出力する。この分類結果によって損失を計算し、誤差の逆伝播により新規クラス分類部40の新規分類の重みを更新する。
プロトタイプ生成部12は、サポートセットSの新規クラスの入力データの特徴マップを入力して、クラスの特徴のプロトタイプを出力し、メタモデル部60に与える。
メタモデル部60は、プロトタイプを入力して、メタモデルの重みに基づいてスケーリングマトリックス62とバイアスマトリックス64を出力し、調整部70に与える。
調整部70は、第1段階のトレーニングにより基本クラスを学習済みの基本クラス分類部20の基本クラス分類の重みを初期値として、スケーリングマトリックス62とバイアスマトリックス64に基づいて基本クラス分類の重みを調整し、調整後の基本クラス分類重みを基本クラス分類部20に設定する。
相関関係調整部72は、調整部70によって調整された基本クラス分類部20の基本クラス分類の重みと、新規クラス分類部40の新規クラス分類の重みとの相関関係を算出して、基本クラス分類の重みと新規クラス分類の重みを調整する。
合併部74は、相関関係調整部72によって調整された基本クラス分類の重み22と、相関関係調整部72によって調整された新規クラス分類の重み44とを合併して連合分類の重みを生成し、連合分類部50に連合分類の重みを設定する。
連合分類部50は、特徴抽出部10からサポートセットSの入力データの特徴マップを受け取り、連合分類の重みに基づいてサポートセットSの入力データをクラスに分類する。
学習部80は、メタモデル部60のメタモデルの重みは固定し、連合分類部50による分類結果の損失を計算し、損失を最小化するように新規クラス分類部40の新規クラス分類の重みを学習する。
図5は、連合分類部50の外部学習の詳細を説明する図である。外部学習では、内部学習で学習済みの新規クラス分類部40の新規分類の重みを固定し、メタモデル部60のメタモデルの重みをトレーニングし、メタモデルによって調整された基本クラス分類部20を新規クラス分類部40と融合し、連合分類部50を作成する。その後、クエリセットQの特徴マップを連合分類部50に入力し、分類結果を連合分類部50から出力する。この分類結果によって損失を計算し、誤差の逆伝播によりメタモデル部60のメタモデルの重みを更新する。
プロトタイプ生成部12は、クエリセットQの基本クラスと新規クラスの入力データの特徴マップを入力して、クラスの特徴のプロトタイプを出力し、メタモデル部60に与える。
メタモデル部60は、プロトタイプを入力して、メタモデルの重みに基づいてスケーリングマトリックス62とバイアスマトリックス64を出力し、調整部70に与える。
調整部70は、内部学習によってトレーニングされた基本クラス分類部20の基本クラス分類の重みを初期値として、スケーリングマトリックス62とバイアスマトリックス64に基づいて基本クラス分類の重みを調整し、調整後の基本クラス分類重みを基本クラス分類部20に設定する。
相関関係調整部72は、調整部70によって調整された基本クラス分類部20の基本クラス分類の重みと、新規クラス分類部40の新規クラス分類の重みとの相関関係を算出して、基本クラス分類の重みと新規クラス分類の重みを調整する。
合併部74は、相関関係調整部72によって調整された基本クラス分類の重み22と、相関関係調整部72によって調整された新規クラス分類の重み44とを合併して連合分類の重みを生成し、連合分類部50に連合分類の重みを設定する。
連合分類部50は、特徴抽出部10からクエリセットQの入力データの特徴マップを受け取り、連合分類の重みに基づいてクエリセットQの入力データをクラスに分類する。
学習部80は、新規クラス分類部40の新規クラス分類の重みは固定し、連合分類部50による分類結果の損失を計算し、損失を最小化するようにメタモデル部60のメタモデルの重みを学習する。
外部学習においてトレーニングされたメタモデル部60のメタモデルは、次のエピソードで内部学習において新規クラス分類部40をトレーニングする時に利用される。要するに、メタモデルはエピソード毎に継続的にトレーニングされ、いずれの新規クラスに対しても適した基本クラス分類部20を調整することができるメタモデルとなる。メタモデルは入力されたプロトタイプによってスケーリングマトリックスとバイアスマトリックスを出力し、これらのマトリックスは基本クラス分類部20を修正するために用いられる。結果的に、新規クラスの情報を利用して、基本クラス分類部20を調整することになる。よって、メタモデルによって調整された基本クラス分類部20は新規クラス分類部40と連結しやすくなる。調整部70による基本クラス分類部20の調整の詳細は非特許文献2に記載されている。
さらに、相関関係調整部72は、調整後の基本クラス分類部20と新規クラス分類部40の相関関係を把握し、基本クラス分類部20と新規クラス分類部40の重要度を計算する。合併部74は、これらの重要度によって、基本クラス分類部20の基本クラス分類の重みと新規クラス分類部40の新規分類の重みを新たな特徴空間に投影し、そこで連合分類部50の連合分類の重みを作成する。相関関係調整部72と合併部74の動作の詳細は非特許文献3に記載されている。
以上説明した機械学習装置100の各種の処理は、CPUやメモリ等のハードウェアを用いた装置として実現することができるのは勿論のこと、ROM(リード・オンリ・メモリ)やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバと送受信することも、地上波あるいは衛星ディジタル放送のデータ放送として送受信することも可能である。
以上述べたように、本実施の形態によれば、作成された基本クラス分類器を新規クラスの情報によって修正するため、基本クラス分類器を新規クラス分類器と連結した後、分類性能が低下しない。
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
本発明は、機械学習技術に利用できる。
10 特徴抽出部、 12 プロトタイプ生成部、 20 基本クラス分類部、 30 注意アトラクタ部、 40 新規クラス分類部、 50 連合分類部、 60 メタモデル部、 70 調整部、 72 相関関係調整部、 74 合併部、 80 学習部。
Claims (6)
- 基本クラスに比べて少数の新規クラスを継続学習する機械学習装置であって、
入力データの特徴を抽出し、特徴マップを生成する、基本クラスを学習済みの特徴抽出部と、
前記特徴マップを入力して、クラスの特徴のプロトタイプを出力するプロトタイプ生成部と、
前記入力データの特徴マップを入力して基本クラス分類の重みに基づいて前記入力データを基本クラスに分類する、基本クラスを学習済みの基本クラス分類部と、
前記入力データの特徴マップを入力して、新規クラス分類の重みに基づいて前記入力データを新規クラスに分類する新規クラス分類部と、
前記プロトタイプと前記入力データの特徴マップを入力して、メタモデルに基づいて調整された前記基本クラス分類の重みと、前記新規クラス分類の重みとを連合した連合分類の重みに基づいて前記入力データをクラスに分類する連合分類部とを含むことを特徴とする機械学習装置。 - 前記入力データとして新規クラスのデータを含むサポートセットが与えられた場合、前記メタモデルの重みは固定し、前記連合分類部による分類結果の損失を計算し、前記損失を最小化するように前記新規クラス分類の重みを学習する学習部をさらに含むことを特徴とする請求項1に記載の機械学習装置。
- 前記学習部は、前記入力データとして基本クラスのデータと新規クラスのデータを含むクエリセットが与えられた場合、前記新規クラス分類の重みは固定し、前記連合分類部による分類結果の損失を計算し、前記損失を最小化するように前記メタモデルの重みを学習することを特徴とする請求項2に記載の機械学習装置。
- 前記プロトタイプを入力して、メタモデルの重みに基づいてスケーリングマトリックスとバイアスマトリックスを出力するメタモデル部と、
前記スケーリングマトリックスと前記バイアスマトリックスに基づいて前記基本クラス分類の重みを調整する調整部と、
前記調整部によって調整された前記基本クラス分類の重みと、前記新規クラス分類の重みとの相関関係を算出して、前記基本クラス分類の重みと前記新規クラス分類の重みを調整する相関関係調整部と、
前記相関関係調整部によって調整された前記基本クラス分類の重みと前記相関関係調整部によって調整された前記新規クラス分類の重みとを合併して前記連合分類の重みを生成し、前記連合分類部に前記連合分類の重みを与える合併部とをさらに含むことを特徴とする請求項1から3のいずれかに記載の機械学習装置。 - 基本クラスに比べて少数の新規クラスを継続学習する機械学習方法であって、
基本クラスを学習後に、入力データの特徴を抽出し、特徴マップを生成する特徴抽出ステップと、
前記特徴マップを入力して、クラスの特徴のプロトタイプを出力するプロトタイプ生成ステップと、
基本クラスを学習後に、前記入力データの特徴マップを入力して基本クラス分類の重みに基づいて前記入力データを基本クラスに分類する基本クラス分類ステップと、
前記入力データの特徴マップを入力して、新規クラス分類の重みに基づいて前記入力データを新規クラスに分類する新規クラス分類ステップと、
前記プロトタイプと前記入力データの特徴マップを入力して、メタモデルに基づいて調整された前記基本クラス分類の重みと、前記新規クラス分類の重みとを連合した連合分類の重みに基づいて前記入力データをクラスに分類する連合分類ステップとを含むことを特徴とする機械学習方法。 - 基本クラスに比べて少数の新規クラスを継続学習する機械学習プログラムであって、
基本クラスを学習後に、入力データの特徴を抽出し、特徴マップを生成する特徴抽出ステップと、
前記特徴マップを入力して、クラスの特徴のプロトタイプを出力するプロトタイプ生成ステップと、
基本クラスを学習後に、前記入力データの特徴マップを入力して基本クラス分類の重みに基づいて前記入力データを基本クラスに分類する基本クラス分類ステップと、
前記入力データの特徴マップを入力して、新規クラス分類の重みに基づいて前記入力データを新規クラスに分類する新規クラス分類ステップと、
前記プロトタイプと前記入力データの特徴マップを入力して、メタモデルに基づいて調整された前記基本クラス分類の重みと、前記新規クラス分類の重みとを連合した連合分類の重みに基づいて前記入力データをクラスに分類する連合分類ステップとをコンピュータに実行させることを特徴とする機械学習プログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022120602A JP2024017751A (ja) | 2022-07-28 | 2022-07-28 | 機械学習装置、機械学習方法、および機械学習プログラム |
JP2022-120602 | 2022-07-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024024217A1 true WO2024024217A1 (ja) | 2024-02-01 |
Family
ID=89705994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2023/018119 WO2024024217A1 (ja) | 2022-07-28 | 2023-05-15 | 機械学習装置、機械学習方法、および機械学習プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2024017751A (ja) |
WO (1) | WO2024024217A1 (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220067582A1 (en) * | 2020-08-27 | 2022-03-03 | Samsung Electronics Co. Ltd. | Method and apparatus for continual few-shot learning without forgetting |
-
2022
- 2022-07-28 JP JP2022120602A patent/JP2024017751A/ja active Pending
-
2023
- 2023-05-15 WO PCT/JP2023/018119 patent/WO2024024217A1/ja unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220067582A1 (en) * | 2020-08-27 | 2022-03-03 | Samsung Electronics Co. Ltd. | Method and apparatus for continual few-shot learning without forgetting |
Non-Patent Citations (1)
Title |
---|
REN MENGYE, LIAO RENJIE, FETAYA ETHAN, ZEMEL RICHARD S: "Incremental Few-Shot Learning with Attention Attractor Networks", ARXIV.ORG, 29 November 2019 (2019-11-29), XP093132626, ISSN: 2331-8422, Retrieved from the Internet <URL:https://arxiv.org/abs/1810.07218v3> DOI: 10.48550/arxiv.1810.07218 * |
Also Published As
Publication number | Publication date |
---|---|
JP2024017751A (ja) | 2024-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DeVries et al. | Dataset augmentation in feature space | |
You et al. | Adversarial noise layer: Regularize neural network by adding noise | |
JP7106902B2 (ja) | 学習プログラム、学習方法および学習装置 | |
WO2019207770A1 (ja) | 学習済みモデル更新装置、学習済みモデル更新方法、プログラム | |
CN111104513B (zh) | 一种游戏平台用户问答业务的短文本分类方法 | |
US20210224647A1 (en) | Model training apparatus and method | |
US20200372325A1 (en) | Neural network reduction device, neural network reduction method, and storage medium | |
CN113077388A (zh) | 一种数据增广的深度半监督超限学习图像分类方法及*** | |
Wehenkel et al. | Diffusion priors in variational autoencoders | |
US20220101122A1 (en) | Energy-based variational autoencoders | |
CN114881169A (zh) | 使用随机特征损坏的自监督对比学习 | |
JPWO2019142241A1 (ja) | データ処理システムおよびデータ処理方法 | |
WO2024024217A1 (ja) | 機械学習装置、機械学習方法、および機械学習プログラム | |
WO2023053569A1 (ja) | 機械学習装置、機械学習方法、および機械学習プログラム | |
US20220101145A1 (en) | Training energy-based variational autoencoders | |
CN112488238B (zh) | 一种基于对抗自编码器的混合异常检测方法 | |
KR102432854B1 (ko) | 잠재 벡터를 이용하여 군집화를 수행하는 방법 및 장치 | |
WO2023119733A1 (ja) | 機械学習装置、機械学習方法、および機械学習プログラム | |
CN114595325A (zh) | 一种基于蒸馏bert的中文短文本分类方法 | |
Yang et al. | NAM net: meta-network with normalization-based attention for few-shot learning | |
Sasipriyaa et al. | Recognizing handwritten offline Tamil character using VAE-GAN & CNN | |
WO2019142242A1 (ja) | データ処理システムおよびデータ処理方法 | |
WO2024047957A1 (ja) | 機械学習装置、機械学習方法、および機械学習プログラム | |
WO2024047958A1 (ja) | 機械学習装置、機械学習方法、および機械学習プログラム | |
WO2023119742A1 (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: 23845956 Country of ref document: EP Kind code of ref document: A1 |