Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7666142B2 - Information processing program, information processing method, and information processing device - Google Patents
[go: Go Back, main page]

JP7666142B2 - Information processing program, information processing method, and information processing device - Google Patents

Information processing program, information processing method, and information processing device Download PDF

Info

Publication number
JP7666142B2
JP7666142B2 JP2021094871A JP2021094871A JP7666142B2 JP 7666142 B2 JP7666142 B2 JP 7666142B2 JP 2021094871 A JP2021094871 A JP 2021094871A JP 2021094871 A JP2021094871 A JP 2021094871A JP 7666142 B2 JP7666142 B2 JP 7666142B2
Authority
JP
Japan
Prior art keywords
loss
network
inference
feature vector
machine learning
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2021094871A
Other languages
Japanese (ja)
Other versions
JP2022187065A (en
Inventor
和人 市丸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2021094871A priority Critical patent/JP7666142B2/en
Publication of JP2022187065A publication Critical patent/JP2022187065A/en
Application granted granted Critical
Publication of JP7666142B2 publication Critical patent/JP7666142B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Description

本発明は、情報処理プログラム,情報処理方法および情報処理装置に関する。 The present invention relates to an information processing program, an information processing method, and an information processing device.

主にニューラルネットワークを用いた学習型AI(Artificial Intelligence)において、OOD(Out-of-Distribution Detection:分布外)判定とよばれる手法が行なわれる場合がある。OOD判定をOOD検出といってもよい。 In learning-type AI (Artificial Intelligence) that mainly uses neural networks, a technique called OOD (Out-of-Distribution Detection) judgment is sometimes used. OOD judgment can also be called OOD detection.

OOD判定は、ある機械学習モデルが特定のドメインからサンプルされたデータによって経験損失最小化(empirical risk minimization :ERM)を行なうことで訓練されたと仮定したとき、推論時に与えられた別のあるサンプルがそのドメインに属するかどうかを判定する。 OOD judgment assumes that a machine learning model has been trained by performing empirical risk minimization (ERM) using data samples from a specific domain, and judges whether a given sample given at the time of inference belongs to that domain.

従来のOOD判定手法においては、各サンプルに対して機械学習モデルが出力する信頼度を活用している。具体的には、信頼度が大きいとき、そのサンプルはID(In-Distribution)とみなし、信頼度が小さいときはOODとみなす。そこで、従来のOOD判定手法においては、信頼度に対して、ある適切な閾値を設定することでOOD判定を実現している。 Conventional OOD determination methods utilize the reliability output by a machine learning model for each sample. Specifically, when the reliability is high, the sample is considered to be ID (In-Distribution), and when the reliability is low, it is considered to be OOD. Therefore, conventional OOD determination methods realize OOD determination by setting an appropriate threshold value for the reliability.

しかし、OODのデータに対しても機械学習モデルが高い信頼度を出力することがある。このようにOODに対して高い信頼度が出力される問題を解決する手法として、Calibration,Parametric Assumption,Anomaly DetectionおよびOutlier Exposure等の複数の各手法が知られている。 However, machine learning models may also output high confidence levels for OOD data. Several methods are known to solve the problem of high confidence levels being output for OOD data, including calibration, parametric assumption, anomaly detection, and outlier exposure.

Calibrationは、機械学習モデルが出力する信頼度を、当該機械学習モデルの正解率に対して揃えることで不当に高い信頼度が出されることを防ぐ。Calibrationの具体的手法として、例えば、ODIN,FocalLoss,Confidence Learningが知られている。 Calibration prevents an unreasonably high reliability from being output by aligning the reliability output by a machine learning model with the accuracy rate of the machine learning model. Specific calibration methods include, for example, ODIN, FocalLoss, and Confidence Learning.

Parametric Assumptionは、IDまたはOODのデータに対して統計的仮定をおき、その仮定にどれだけ反するかによってOOD判定を行なう。Parametric Assumptionの具体的手法として、例えば、Mahalanobis, PriorNet, FSSDが知られている。 Parametric Assumption makes statistical assumptions about ID or OOD data, and determines the OOD based on how much the assumptions are violated. Known specific methods of Parametric Assumption include Mahalanobis, PriorNet, and FSSD, for example.

Anomaly Detectionは、主にオートエンコーダ構造のネットワークにおいて、モデルが未知のデータをうまく再構成できないことを利用してOOD判定を行なう。Anomaly Detectionの具体的手法として、AnoGAN, Efficient GANが知られている。 Anomaly detection is a technique that makes OOD decisions by taking advantage of the fact that models are unable to reconstruct unknown data well, mainly in networks with an autoencoder structure. AnoGAN and Efficient GAN are known as specific methods of anomaly detection.

Outlier Exposureにおいては、わずかではあるが、OODのデータも入手可能であると想定し、そのOODデータについては高い信頼度を出力しないように正則化しながら学習する。Outlier Exposureの具体的手法として、例えば、OE, OECCが知られている。 For outlier exposure, it is assumed that OOD data is also available, even if only in small amounts, and the OOD data is regularized during learning so as not to output a high confidence level. Specific methods for outlier exposure include OE and OECC.

特開2020-123830号公報JP 2020-123830 A 特表2020-533723号公報Special Publication No. 2020-533723

しかしながら、これらの従来のOOD判定手法においては、いくつかの理由によりOOD判定を効率的に行なうことができない。例えば、OOD判定精度が低い場合があり、例えば、上述したCalibrationのODINやFocalLossがこれに該当する。 However, these conventional OOD determination methods cannot perform OOD determination efficiently for several reasons. For example, the OOD determination accuracy may be low, such as the ODIN and FocalLoss of the calibration described above.

また、OOD判定により元のタスクの性能に悪影響がある場合があり、例えば、上述したParametric AssumptionのPriorNetがこれに該当する。 In addition, OOD judgments can have a negative impact on the performance of the original task, for example the PriorNet in the Parametric Assumption mentioned above.

さらに、OOD判定のために全く別のモデルを要する場合があり、これにより高コストとなる。例えば、上述したAnomaly DetectionのAnoGANがこれに該当する。 Furthermore, a completely separate model may be required for OOD determination, which increases costs. For example, the AnoGAN used for Anomaly Detection mentioned above falls into this category.

また、上述したOutlier Exposure系においては、OODデータを訓練に用いる必要があるが、訓練に用いるOODデータを網羅的に用意することは困難である。
1つの側面では、本発明は、分布外判定を効率的に行なうことができるようにすることを目的とする。
Furthermore, in the above-mentioned Outlier Exposure system, it is necessary to use OOD data for training, but it is difficult to comprehensively prepare OOD data for use in training.
In one aspect, the present invention aims to enable out-of-distribution determination to be performed efficiently.

このため、この情報処理プログラムは、入力データに基づき特徴ベクトルを生成する特徴抽出器と、前記特徴ベクトルに対する推論を行なう第1ネットワークとを含む機械学習モデルに関して、前記特徴抽出器によって生成された前記特徴ベクトルを第2ネットワークに入力して、前記機械学習モデルのロス推論結果を出力し、前記ロス推論結果に基づいて、前記入力データが特定ドメインに含まれるか否かの分布外判定を行なう。 Therefore, for a machine learning model including a feature extractor that generates a feature vector based on input data and a first network that performs inference on the feature vector , this information processing program inputs the feature vector generated by the feature extractor to a second network, outputs a loss inference result of the machine learning model, and performs an out-of-distribution determination as to whether or not the input data is included in a specific domain based on the loss inference result.

一実施形態によれば、分布外判定を効率的に行なうことができる。 According to one embodiment, out-of-distribution determination can be performed efficiently.

実施形態の一例としての情報処理装置の機能構成を模式的に示す図である。FIG. 1 is a diagram illustrating a functional configuration of an information processing apparatus as an example of an embodiment. 実施形態の一例としての情報処理装置の処理を説明するための図である。FIG. 2 is a diagram illustrating a process of an information processing device as an example of an embodiment. 実施形態の一例としての情報処理装置における処理を説明するためのフローチャートである。1 is a flowchart illustrating a process in an information processing device as an example of an embodiment. 実施形態の一例としての情報処理装置のハードウェア構成を例示する図である。FIG. 1 is a diagram illustrating a hardware configuration of an information processing apparatus according to an embodiment;

以下、図面を参照して本情報処理プログラム,情報処理方法および情報処理装置にかかる実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。 Below, an embodiment of the present information processing program, information processing method, and information processing device will be described with reference to the drawings. However, the embodiments shown below are merely examples, and there is no intention to exclude the application of various modified examples and techniques not explicitly stated in the embodiments. In other words, this embodiment can be implemented with various modifications without departing from its spirit. Furthermore, each figure is not intended to include only the components shown in the figure, but can include other functions, etc.

(A)構成
図1は実施形態の一例としての情報処理装置1の機能構成を模式的に示す図、図2はその処理を説明するための図である。
(A) Configuration FIG. 1 is a diagram showing a schematic functional configuration of an information processing apparatus 1 as an example of an embodiment, and FIG. 2 is a diagram for explaining the processing thereof.

図2に示す例においては、入力データが画像(Image)データであり、この入力データに対する分類を推論する例を示す。以下、入力データを符号xで表す場合がある。入力データxは、後述する第1推論処理部100による推論対象のデータであり、また、後述する第2推論処理部300によるOOD判定対象のデータでもある。
本情報処理装置1は、図1に示すように、第1推論処理部100,第2推論処理部300および訓練処理部200を備える。
2, the input data is image data, and an example of inferring a classification for this input data is shown. Hereinafter, the input data may be represented by the symbol x. The input data x is data to be inferred by a first inference processing unit 100 (to be described later), and is also data to be subjected to OOD judgment by a second inference processing unit 300 (to be described later).
As shown in FIG. 1, the information processing device 1 includes a first inference processing unit 100, a second inference processing unit 300, and a training processing unit 200.

第1推論処理部100は、機械学習モデル110を用いて推論を行なう。機械学習モデル110における推論をO(F(x))であるものとし、元のタスクのロス関数をLoss(y , y′)とする。
第1推論処理部100は、入力データを機械学習モデル110に入力し、機械学習モデル110が出力する推論結果を得る。
機械学習モデル110は、図1に示すように、特徴抽出器101および第1ネットワーク102を備える。
The first inference processing unit 100 performs inference using the machine learning model 110. Let the inference in the machine learning model 110 be O(F(x)), and the loss function of the original task be Loss(y, y′).
The first inference processing unit 100 inputs input data to the machine learning model 110 and obtains an inference result output by the machine learning model 110.
As shown in FIG. 1, the machine learning model 110 includes a feature extractor 101 and a first network 102 .

特徴抽出器101は、入力データに対して特徴抽出を行なう。特徴抽出器101は、例えば、畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)を用いて、入力データの特徴抽出を行なってもよい。
特徴抽出器101は入力データに基づいて特徴ベクトルを生成する(図2の符号P1参照)。以下、特徴ベクトルを符号zで表す場合がある。
特徴抽出器101により生成される特徴ベクトルzは、以下の式(1)で表わされる。
z = F(x ; θf) ・・・(1)
The feature extractor 101 extracts features from input data. The feature extractor 101 may extract features from the input data by using, for example, a Convolutional Neural Network (CNN).
The feature extractor 101 generates a feature vector based on the input data (see symbol P1 in FIG. 2). Hereinafter, the feature vector may be represented by symbol z.
The feature vector z generated by the feature extractor 101 is expressed by the following equation (1).
z = F(x; θ f )...(1)

Fは特徴抽出関数である。特徴ベクトルzは、入力データxを特徴抽出関数Fに通すことで得られる。θfは関数Fの重みを表し、機械学習モデル110の訓練時において、後述する最適化処理部204によって更新される。 F is a feature extraction function. A feature vector z is obtained by passing input data x through the feature extraction function F. θ f represents the weight of the function F, and is updated by the optimization processing unit 204 described later during training of the machine learning model 110.

特徴抽出器101によって生成された特徴ベクトルは第1ネットワーク102に入力され、推論結果が出力される(図2の符号P2参照)。以下、推論結果を符号yで表す場合がある。第1ネットワーク102は、例えば、全結合層(Fully Connected Layer:FC層)として構成されてもよい(図2の符号P3参照)。第1ネットワーク102を最終層102といってもよい。
機械学習モデル110により出力される推論結果yは、以下の式(2)で表される。
y = O(z ; θo) ・・・(2)
The feature vector generated by the feature extractor 101 is input to the first network 102, which outputs an inference result (see symbol P2 in FIG. 2). Hereinafter, the inference result may be represented by symbol y. The first network 102 may be configured as, for example, a fully connected layer (FC layer) (see symbol P3 in FIG. 2). The first network 102 may be called the final layer 102.
The inference result y output by the machine learning model 110 is expressed by the following equation (2).
y = O(z; θ o )...(2)

Oは関数である。推論結果yは、特徴ベクトルzを関数Oに通すことで得られる。θoは最終層Oの重みを表し、機械学習モデル110の訓練時には、最適化処理部204によって更新される。
第2推論処理部300は、第2ネットワーク301を用いて、機械学習モデル110のロスの推論とOODの推論とを行なう。
O is a function. The inference result y is obtained by passing the feature vector z through the function O. θ o represents the weight of the final layer O, and is updated by the optimization processing unit 204 when the machine learning model 110 is trained.
The second inference processing unit 300 uses the second network 301 to perform loss inference and OOD inference of the machine learning model 110.

一般に、機械学習モデルは、あるサンプルが十分に学習されている場合、すなわちIDである場合に、より高い確率で正解の推論結果を出力する。その一方で、機械学習モデルが十分に学習されていない場合は、誤った推論結果を出力する可能性が高くなる。 In general, a machine learning model will output a correct inference result with a higher probability if a sample is sufficiently trained, i.e., if it is an ID. On the other hand, if the machine learning model is not sufficiently trained, there is a higher probability that it will output an incorrect inference result.

すなわち、機械学習モデルがより高い信頼度で結果を出力した場合は一般にロスが小さくなり、低い信頼度で結果を出力した場合はロスが大きくなる。また、高い信頼度であるものの、推論結果が誤っている場合にもロスが大きくなる。
本情報処理装置1においては、このような特性を活用して、入力データに対するOOD判定を明示的に学習する。
第2推論処理部300は、図1に示すように、第2ネットワーク301およびOOD推論部302を備える。
In other words, when a machine learning model outputs a result with a high degree of confidence, the loss is generally small, and when it outputs a result with a low degree of confidence, the loss is large. Also, even if the model has a high degree of confidence, the loss is large when the inference result is incorrect.
In the information processing device 1, such characteristics are utilized to explicitly learn OOD judgment for input data.
As shown in FIG. 1, the second inference processing unit 300 includes a second network 301 and an OOD inference unit 302 .

第2推論処理部300においては、機械学習モデル110の特徴抽出器101によって生成された特徴ベクトルが第2ネットワーク301に入力され、ロス推論結果を出力する。 In the second inference processing unit 300, the feature vector generated by the feature extractor 101 of the machine learning model 110 is input to the second network 301, which outputs the loss inference result.

以下、第2ネットワーク301によるロス推論結果を符号wで表す場合がある。図2においては、第2ネットワーク301が、3層のマルチレイヤ全結合層(FC層)による推論を行なう例を示す(図2の符号P4参照)。 Hereinafter, the loss inference result by the second network 301 may be represented by the symbol w. In FIG. 2, an example is shown in which the second network 301 performs inference using a three-layer multi-layer fully connected layer (FC layer) (see symbol P4 in FIG. 2).

第2ネットワーク301は、機械学習モデル110の特徴抽出器101によって生成される特徴ベクトルzを入力として1スカラーを出力するネットワークであり、第1ネットワーク102とは別に設けられた異なるネットワークである。
第2ネットワーク301により生成されるロス推論結果wは、以下の式(3)で表される。
w = L(z ; θl) ・・・(3)
The second network 301 is a network that receives the feature vector z generated by the feature extractor 101 of the machine learning model 110 as input and outputs one scalar, and is a different network provided separately from the first network 102.
The loss inference result w generated by the second network 301 is expressed by the following equation (3).
w = L(z; θl )...(3)

Lは関数である。ロス推論結果wは、特徴ベクトルzを関数Lに通すことで得られる。θlはロスを推論するネットワークの重みであり、第2ネットワーク301の訓練時には最適化処理部204によって更新される。
OOD推論部302は、第2ネットワーク301によって推論されたロス推論結果wに基づき、OOD判定を推論する。すなわち、OOD推論部302は、第2ネットワーク301によって推論されたロス推論結果wに基づいて、入力データxが特定ドメインに含まれるか否かの分布外判定を行なう。
L is a function. The loss inference result w is obtained by passing the feature vector z through the function L. θ l is the weight of the network that infers the loss, and is updated by the optimization processing unit 204 when the second network 301 is trained.
The OOD inference unit 302 infers an OOD judgment based on the loss inference result w inferred by the second network 301. That is, the OOD inference unit 302 performs an out-of-distribution judgment as to whether or not the input data x is included in a specific domain based on the loss inference result w inferred by the second network 301.

OOD推論部302は、第2ネットワーク301によって推論されたロス推論結果wを閾値Tと比較し、ロス推論結果wが閾値Tよりも大きい場合に、入力データxが、特定ドメインに含まれない(OOD)と判定する。また、OOD推論部302は、ロス推論結果wが閾値T以下の場合に、入力データxが特定ドメインに含まれる(ID)と判定する。 The OOD inference unit 302 compares the loss inference result w inferred by the second network 301 with a threshold value T, and if the loss inference result w is greater than the threshold value T, determines that the input data x is not included in the specific domain (OOD). Also, if the loss inference result w is equal to or less than the threshold value T, the OOD inference unit 302 determines that the input data x is included in the specific domain (ID).

閾値Tは、Validation setによって計算された、最も上手くIDとOODとを分割できるロス推論結果wの閾値である。閾値Tはユーザが任意に設定してもよい。
訓練処理部200は、機械学習モデル110の訓練(機械学習)を行なう。
The threshold T is a threshold of the loss inference result w that can best separate the ID and the OOD, calculated using the validation set. The threshold T may be arbitrarily set by the user.
The training processing unit 200 performs training (machine learning) of the machine learning model 110.

機械学習モデル110の訓練には訓練用データが用いられる。訓練データは、入力データと、この入力データに対する正解とを備える。訓練データは、例えば、ユーザが予め用意する。
訓練処理部200は、図1に示すように、第1ロス算出部201,第2ロス算出部202,合計ロス算出部203および最適化処理部204を備える。
Training data is used to train the machine learning model 110. The training data includes input data and a correct answer to the input data. The training data is prepared in advance by, for example, a user.
As shown in FIG. 1 , the training processing unit 200 includes a first loss calculation unit 201 , a second loss calculation unit 202 , a total loss calculation unit 203 , and an optimization processing unit 204 .

第1ロス算出部201は、入力データxに対する正解tを取得する(図2の符号P5参照)。そして、第1ロス算出部201は、正解tに対する入力データxのロス(距離,誤差)を算出する。正解tに対する入力データxのロスを符号lで表す場合がある(図2の符号P6参照)。ロスlは以下の式(4)で表される。
l1= Loss(y , t) ・・・(4)
The first loss calculation unit 201 obtains a correct answer t for the input data x (see symbol P5 in FIG. 2). Then, the first loss calculation unit 201 calculates the loss (distance, error) of the input data x for the correct answer t. The loss of the input data x for the correct answer t may be represented by symbol l1 (see symbol P6 in FIG. 2). The loss l1 is expressed by the following formula (4).
l 1 = Loss(y, t)...(4)

ロスlを第1ロスlといってもよい。第1ロスlは、機械学習モデル110の第1ネットワーク102により出力される推論結果yと正解データtとから計算されるロスであり、機械学習モデル110において実際に発生したロスを表す。 The loss l 1 may be called the first loss l 1. The first loss l 1 is a loss calculated from the inference result y output by the first network 102 of the machine learning model 110 and the correct answer data t, and represents a loss that actually occurred in the machine learning model 110.

第2ロス算出部202は、第2ネットワーク301により生成されたロス推論結果wと第1ロス算出部201によって算出された第1ロスlとのL1距離lを算出する(図2の符号P7参照)。L1距離lは以下の式(5)で表される。
l2= |l1 - w| ・・・(5)
L1距離lを第2ロスlといってもよい。第2ロスlは推論された機械学習モデル110のロスを表す。
The second loss calculation unit 202 calculates the L1 distance l2 between the loss inference result w generated by the second network 301 and the first loss l1 calculated by the first loss calculation unit 201 (see symbol P7 in FIG. 2). The L1 distance l2 is expressed by the following formula (5).
l 2 = |l 1 - w| ...(5)
The L1 distance l2 may be called the second loss l2 . The second loss l2 represents the loss of the inferred machine learning model 110.

合計ロス算出部203は、第1ロス算出部201によって算出された第1ロスlと、第2ロス算出部202によって算出された第2ロスlとを合計して、合計ロスltotalを算出する(図2の符号P8参照)。合計ロスltotalは以下の式(6)で表される。
ltotal = l1 + l2 ・・・(6)
合計ロスltotalは、第1ロスlと第2ロスlの総和であり、最適化処理部204によって最小化されるコストを示す。
The total loss calculation unit 203 calculates a total loss l total by adding up the first loss l 1 calculated by the first loss calculation unit 201 and the second loss l 2 calculated by the second loss calculation unit 202 (see symbol P8 in FIG. 2). The total loss l total is expressed by the following formula (6).
l total = l 1 + l 2 ...(6)
The total loss l total is the sum of the first loss l 1 and the second loss l 2 , and indicates the cost to be minimized by the optimization processing unit 204 .

最適化処理部204は、合計ロス算出部203が算出した合計ロスltotalが最小化する勾配を算出し、誤差逆伝搬を行なう。誤差逆伝搬には、例えば、最急降下法(勾配法)を用いてもよく、適宜変更して実施することができる。勾配をδltotal/δθで表してもよい。 The optimization processing unit 204 calculates the gradient that minimizes the total loss l total calculated by the total loss calculation unit 203, and performs error backpropagation. For example, the steepest descent method (gradient method) may be used for the error backpropagation, and it can be modified as appropriate. The gradient may be expressed as δl total /δθ.

最適化処理部204は、合計ロスltotalが最小化する重みθf,θoおよびθlをそれぞれ算出する。なお、これらの重みθf,θoおよびθlの算出は既知の種々の手法を用いて実現することができ、その説明は省略する。 The optimization processor 204 calculates weights θ f , θ o , and θ l that minimize the total loss l total . The calculation of these weights θ f , θ o , and θ l can be realized using various known methods, and the description thereof will be omitted.

最適化処理部204は、算出した重みθf,θoおよびθlを、機械学習モデル110の第1ネットワーク102および第2ネットワーク301に反映させる。すなわち、最適化処理部204は、算出したこれらのパラメータ(重みθf,θoおよびθl)を用いて、機械学習モデル110(第1ネットワーク102)のパラメータ(重みθfおよびθo)および第2ネットワーク301のパラメータ(重みθl)をそれぞれ更新する。
なお、最適化処理部204が算出した各重みθf,θoおよびθlは後述する記憶装置13(図4参照)等の所定の記憶領域に記憶される。
The optimization processing unit 204 reflects the calculated weights θ f , θ o , and θ l in the first network 102 and the second network 301 of the machine learning model 110. That is, the optimization processing unit 204 uses these calculated parameters (weights θ f , θ o , and θ l ) to update the parameters (weights θ f and θ o ) of the machine learning model 110 (first network 102) and the parameter (weight θ l ) of the second network 301, respectively.
The weights θ f , θ o and θ l calculated by the optimization processor 204 are stored in a predetermined storage area such as the storage device 13 (see FIG. 4) described later.

(B)動作
上述の如く構成された実施形態の一例としての情報処理装置1における処理を、図3に示すフローチャート(ステップS1~S12)に従って説明する。
(B) Operation The process of the information processing device 1 as one example of the embodiment configured as described above will be described with reference to the flowchart (steps S1 to S12) shown in FIG.

図3に示すフローチャートにおいて、ステップS1~S6の処理が入力データに対する推論処理を示し、ステップS1~S3,S7~S12の処理が、機械学習モデル110(第1ネットワーク102)および第2ネットワーク301の訓練処理を示す。 In the flowchart shown in FIG. 3, the processes in steps S1 to S6 represent the inference process for the input data, and the processes in steps S1 to S3 and S7 to S12 represent the training process for the machine learning model 110 (first network 102) and the second network 301.

先ず、本情報処理装置1における、入力データに対する推論処理を説明する。
ステップS1において、第1推論処理部100が入力データxを取得する。
ステップS2において、機械学習モデル110の特徴抽出器101が、入力データxに対する特徴抽出を行ない、上述した式(1)を用いて特徴ベクトルzを算出する。
ステップS3において、第2推論処理部300の第2ネットワーク301が、上述した式(3)を用いてロス推論結果wを算出する。
First, the inference process for input data in the information processing device 1 will be described.
In step S1, the first inference processing unit 100 acquires input data x.
In step S2, the feature extractor 101 of the machine learning model 110 extracts features from the input data x, and calculates the feature vector z using the above-mentioned equation (1).
In step S3, the second network 301 of the second inference processing unit 300 calculates the loss inference result w by using the above-mentioned formula (3).

ステップS4において、第2推論処理部300のOOD推論部302が、第2ネットワーク301によって推論されたロス推論結果wを閾値Tと比較し、ロス推論結果wが閾値T以下であるかを確認する。 In step S4, the OOD inference unit 302 of the second inference processing unit 300 compares the loss inference result w inferred by the second network 301 with a threshold value T, and checks whether the loss inference result w is less than or equal to the threshold value T.

確認の結果、ロス推論結果wが閾値T以下である場合には(ステップS4の“True”ルート参照)、ステップS6において、OOD推論部302は、入力データxがIDであると判定する。その後、処理を終了する。 If the loss inference result w is equal to or less than the threshold T (see the "True" route in step S4), in step S6, the OOD inference unit 302 determines that the input data x is an ID. Then, the process ends.

一方、ステップS4における確認の結果、ロス推論結果wが閾値Tよりも大きい場合には(ステップS4の“False”ルート参照)、ステップS5において、OOD推論部302は、入力データxがOODであると判定する。その後、処理を終了する。 On the other hand, if the result of the check in step S4 is that the loss inference result w is greater than the threshold T (see the "False" route in step S4), in step S5, the OOD inference unit 302 determines that the input data x is OOD. Then, the process ends.

次に、本情報処理装置1における訓練処理を説明する。
ステップS1において、第1推論処理部100が入力データxを取得する。
ステップS2において、機械学習モデル110の特徴抽出器101が、入力データxに対する特徴抽出を行ない、上述した式(1)を用いて特徴ベクトルzを算出する。
ステップS7において、機械学習モデル110の第1ネットワーク102が、上述した式(2)を用いて推論結果yを算出する。
Next, the training process in the information processing device 1 will be described.
In step S1, the first inference processing unit 100 acquires input data x.
In step S2, the feature extractor 101 of the machine learning model 110 extracts features from the input data x, and calculates the feature vector z using the above-mentioned equation (1).
In step S7, the first network 102 of the machine learning model 110 calculates the inference result y using the above-mentioned equation (2).

ステップS8において、訓練処理部200の第1ロス算出部201が、入力データxに対する正解tを取得する。
ステップS9において、第1ロス算出部201が、上述した式(4)を用いて第1ロスlを算出する。
また、ステップS3において、第2推論処理部300の第2ネットワーク301が、上述した式(3)を用いてロス推論結果wを算出する。
In step S8, the first loss calculation unit 201 of the training processing unit 200 obtains a correct answer t for the input data x.
In step S9, the first loss calculation unit 201 calculates the first loss l1 by using the above-mentioned formula (4).
In addition, in step S3, the second network 301 of the second inference processing unit 300 calculates the loss inference result w by using the above-mentioned formula (3).

ステップS10において、第2ロス算出部202が、上述した式(5)を用いて第2ロスlを算出する。また、合計ロス算出部203が、上述した式(6)を用いて、合計ロスltotalを算出する。
ステップS11において、最適化処理部204が、合計ロスltotalが最小化する重みθf,θoおよびθlを誤差逆伝搬を用いてそれぞれ算出する。
In step S10, the second loss calculation unit 202 calculates the second loss l2 using the above-mentioned formula (5). Also, the total loss calculation unit 203 calculates the total loss ltotal using the above-mentioned formula (6).
In step S11, the optimization processor 204 calculates weights θ f , θ o and θ l that minimize the total loss l total by using backpropagation.

ステップS12において、最適化処理部204が、算出した重みθf,θoおよびθlを用いて、機械学習モデル110(第1ネットワーク102)のパラメータ(重みθfおよびθo)および第2ネットワーク301のパラメータ(重みθl)をそれぞれ更新する。その後、ステップS1に戻る。
訓練処理は、例えば、予め設定した繰り返し回数に到達するまで行なってもよく、また、機械学習モデルの推論精度が所定の閾値以上となるまで行なってもよく、適宜変更して実施することができる。
In step S12, the optimization processing unit 204 uses the calculated weights θ f , θ o , and θ l to update the parameters (weights θ f and θ o ) of the machine learning model 110 (first network 102) and the parameter (weight θ l ) of the second network 301. Then, the process returns to step S1.
The training process may be performed, for example, until a preset number of repetitions is reached, or until the inference accuracy of the machine learning model reaches a predetermined threshold or higher, and may be modified as appropriate.

(C)効果
このように、実施形態の一例としての情報処理装置1によれば、第2推論処理部300において第2ネットワーク301を備えることで、OOD判定そのものを直接的に学習可能であり、OODの判定に高い精度が得られる。また、実験的に、元のタスクの性能低下はほぼ無いことが確認できている。
(C) Effects In this way, according to the information processing device 1 as an example of the embodiment, by providing the second network 301 in the second inference processing unit 300, it is possible to directly learn the OOD judgment itself, and high accuracy can be obtained in OOD judgment. In addition, it has been experimentally confirmed that there is almost no degradation in the performance of the original task.

さらに、機械学習モデル110の特徴抽出器101によって生成された特徴ベクトルが入力される第2ネットワーク301を備え、この第2ネットワーク301により機械学習モデル110のロスの推論を行なう。これによりOODを推論するために専用の機械学習モデルを新たに備える必要がなく、低コストでOODの検出を実現することができる。
また、本情報処理装置1においては、OODの推論を行なうための訓練データを用意する必要がない。
Furthermore, a second network 301 is provided to which the feature vector generated by the feature extractor 101 of the machine learning model 110 is input, and the second network 301 infers the loss of the machine learning model 110. This eliminates the need to provide a new machine learning model dedicated to inferring the OOD, and enables detection of the OOD at low cost.
Furthermore, in the information processing device 1, there is no need to prepare training data for inferring the OOD.

(D)その他
図4は実施形態の一例としての情報処理装置1のハードウェア構成を例示する図である。
(D) Others FIG. 4 is a diagram illustrating a hardware configuration of the information processing device 1 as an example of an embodiment.

情報処理装置1は、コンピュータであって、例えば、プロセッサ11,メモリ12,記憶装置13,グラフィック処理装置14,入力インタフェース15,光学ドライブ装置16,機器接続インタフェース17およびネットワークインタフェース18を構成要素として有する。これらの構成要素11~18は、バス19を介して相互に通信可能に構成される。 The information processing device 1 is a computer and has as its components a processor 11, a memory 12, a storage device 13, a graphics processing device 14, an input interface 15, an optical drive device 16, a device connection interface 17, and a network interface 18. These components 11 to 18 are configured to be able to communicate with each other via a bus 19.

プロセッサ(処理部)11は、情報処理装置1全体を制御する。プロセッサ11は、マルチプロセッサであってもよい。プロセッサ11は、例えばCPU,MPU(Micro Processing Unit),DSP(Digital Signal Processor),ASIC(Application Specific Integrated Circuit),PLD(Programmable Logic Device),FPGA(Field Programmable Gate Array)のいずれか一つであってもよい。また、プロセッサ11は、CPU,MPU,DSP,ASIC,PLD,FPGAのうちの2種類以上の要素の組み合わせであってもよい。 The processor (processing unit) 11 controls the entire information processing device 1. The processor 11 may be a multiprocessor. The processor 11 may be, for example, any one of a CPU, an MPU (Micro Processing Unit), a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), a PLD (Programmable Logic Device), and an FPGA (Field Programmable Gate Array). The processor 11 may also be a combination of two or more types of elements from the CPU, MPU, DSP, ASIC, PLD, and FPGA.

そして、プロセッサ11が情報処理装置1用の制御プログラム(情報処理プログラム,:図示省略)を実行することにより、図1に例示した、第1推論処理部100,訓練処理部200および第2推論処理部300としての機能が実現される。 Then, the processor 11 executes a control program (information processing program, not shown) for the information processing device 1, thereby realizing the functions of the first inference processing unit 100, the training processing unit 200, and the second inference processing unit 300 illustrated in FIG. 1.

なお、情報処理装置1は、例えばコンピュータ読み取り可能な非一時的な記録媒体に記録されたプログラム(情報処理プログラム,OSプログラム)を実行することにより、第1推論処理部100,訓練処理部200および第2推論処理部300としての機能を実現する。 The information processing device 1 realizes the functions of the first inference processing unit 100, the training processing unit 200, and the second inference processing unit 300 by executing a program (information processing program, OS program) recorded on, for example, a computer-readable non-transitory recording medium.

情報処理装置1に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、情報処理装置1に実行させるプログラムを記憶装置13に格納しておくことができる。プロセッサ11は、記憶装置13内のプログラムの少なくとも一部をメモリ12にロードし、ロードしたプログラムを実行する。 The program describing the processing contents to be executed by the information processing device 1 can be recorded on various recording media. For example, the program to be executed by the information processing device 1 can be stored in the storage device 13. The processor 11 loads at least a part of the program in the storage device 13 into the memory 12 and executes the loaded program.

また、情報処理装置1(プロセッサ11)に実行させるプログラムを、光ディスク16a,メモリ装置17a,メモリカード17c等の非一時的な可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ11からの制御により、記憶装置13にインストールされた後、実行可能になる。また、プロセッサ11が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。 The program to be executed by the information processing device 1 (processor 11) can also be recorded on a non-transitory portable recording medium such as an optical disk 16a, a memory device 17a, or a memory card 17c. The program stored on the portable recording medium becomes executable after being installed in the storage device 13, for example, under control of the processor 11. The processor 11 can also read and execute the program directly from the portable recording medium.

メモリ12は、ROM(Read Only Memory)およびRAM(Random Access Memory)を含む記憶メモリである。メモリ12のRAMは情報処理装置1の主記憶装置として使用される。RAMには、プロセッサ11に実行させるプログラムの少なくとも一部が一時的に格納される。また、メモリ12には、プロセッサ11による処理に必要な各種データが格納される。 Memory 12 is a storage memory including ROM (Read Only Memory) and RAM (Random Access Memory). The RAM of memory 12 is used as the main storage device of information processing device 1. The RAM temporarily stores at least a portion of the programs to be executed by processor 11. In addition, memory 12 stores various data necessary for processing by processor 11.

記憶装置13は、ハードディスクドライブ(Hard Disk Drive:HDD)、SSD(Solid State Drive)、ストレージクラスメモリ(Storage Class Memory:SCM)等の記憶装置であって、種々のデータを格納するものである。記憶装置13は、本情報処理装置1の補助記憶装置として使用される。
記憶装置13には、OSプログラム,制御プログラムおよび各種データが格納される。制御プログラムには情報処理プログラムが含まれる。
The storage device 13 is a storage device such as a hard disk drive (HDD), a solid state drive (SSD), a storage class memory (SCM), etc., and stores various data. The storage device 13 is used as an auxiliary storage device of the information processing device 1.
An OS program, a control program, and various data are stored in the storage device 13. The control program includes an information processing program.

なお、補助記憶装置としては、SCMやフラッシュメモリ等の半導体記憶装置を使用することもできる。また、複数の記憶装置13を用いてRAID(Redundant Arrays of Inexpensive Disks)を構成してもよい。 As the auxiliary storage device, a semiconductor storage device such as an SCM or a flash memory can also be used. In addition, multiple storage devices 13 may be used to configure a RAID (Redundant Arrays of Inexpensive Disks).

記憶装置13には、第1推論処理部100,第2推論処理部300および訓練処理部200が生成した各種データを格納してもよい。 The storage device 13 may store various data generated by the first inference processing unit 100, the second inference processing unit 300, and the training processing unit 200.

グラフィック処理装置14には、モニタ14aが接続されている。グラフィック処理装置14は、プロセッサ11からの命令に従って、画像をモニタ14aの画面に表示させる。モニタ14aとしては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置等が挙げられる。 The monitor 14a is connected to the graphics processing device 14. The graphics processing device 14 displays images on the screen of the monitor 14a according to instructions from the processor 11. Examples of the monitor 14a include a display device using a CRT (Cathode Ray Tube) and a liquid crystal display device.

入力インタフェース15には、キーボード15aおよびマウス15bが接続されている。入力インタフェース15は、キーボード15aやマウス15bから送られてくる信号をプロセッサ11に送信する。なお、マウス15bは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル,タブレット,タッチパッド,トラックボール等が挙げられる。 A keyboard 15a and a mouse 15b are connected to the input interface 15. The input interface 15 transmits signals sent from the keyboard 15a and the mouse 15b to the processor 11. Note that the mouse 15b is an example of a pointing device, and other pointing devices can also be used. Examples of other pointing devices include a touch panel, a tablet, a touch pad, and a trackball.

光学ドライブ装置16は、レーザ光等を利用して、光ディスク16aに記録されたデータの読み取りを行なう。光ディスク16aは、光の反射によって読み取り可能にデータを記録された可搬型の非一時的な記録媒体である。光ディスク16aには、DVD(Digital Versatile Disc),DVD-RAM,CD-ROM(Compact Disc Read Only Memory),CD-R(Recordable)/RW(ReWritable)等が挙げられる。 The optical drive device 16 uses laser light or the like to read data recorded on the optical disc 16a. The optical disc 16a is a portable, non-transient recording medium on which data is recorded so that it can be read by the reflection of light. Examples of optical discs 16a include DVDs (Digital Versatile Discs), DVD-RAMs, CD-ROMs (Compact Disc Read Only Memory), and CD-Rs (Recordable)/RWs (ReWritable).

機器接続インタフェース17は、情報処理装置1に周辺機器を接続するための通信インタフェースである。例えば、機器接続インタフェース17には、メモリ装置17aやメモリリーダライタ17bを接続することができる。メモリ装置17aは、機器接続インタフェース17との通信機能を搭載した非一時的な記録媒体、例えばUSB(Universal Serial Bus)メモリである。メモリリーダライタ17bは、メモリカード17cへのデータの書き込み、またはメモリカード17cからのデータの読み出しを行なう。メモリカード17cは、カード型の非一時的な記録媒体である。 The device connection interface 17 is a communication interface for connecting peripheral devices to the information processing device 1. For example, a memory device 17a or a memory reader/writer 17b can be connected to the device connection interface 17. The memory device 17a is a non-transient recording medium equipped with a communication function with the device connection interface 17, such as a USB (Universal Serial Bus) memory. The memory reader/writer 17b writes data to the memory card 17c or reads data from the memory card 17c. The memory card 17c is a card-type non-transient recording medium.

ネットワークインタフェース18は、ネットワークに接続される。ネットワークインタフェース18は、ネットワークを介してデータの送受信を行なう。ネットワークには他の情報処理装置や通信機器等が接続されてもよい。 The network interface 18 is connected to a network. The network interface 18 transmits and receives data via the network. Other information processing devices, communication devices, etc. may also be connected to the network.

そして、開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成および各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。 The disclosed technology is not limited to the above-described embodiment, and can be modified in various ways without departing from the spirit of the present embodiment. Each configuration and process of the present embodiment can be selected as needed, or can be combined as appropriate.

例えば、上述した実施形態においては、OOD推論部302が、ロス推論結果wを閾値Tと比較することでOODであるか否かの判定を行なっているが、これに限定されるものではなく、種々変形して実施することができる。例えば、Mahalanobis, ODIN, FSSD等の一つ以上の他のモデルの推定結果を統合するアンサンブル学習を行なってもよい。このようなアンサンブル学習を用いるに場合は、ロジスティック回帰などを用いてもよく、これにより更なる精度向上が見込める。本情報処理装置1においては、他手法とのアンサンブルが容易であり、更に高い精度を実現できる。 For example, in the above-described embodiment, the OOD inference unit 302 determines whether or not the loss inference result w is an OOD by comparing it with the threshold value T, but this is not limited to this and can be implemented in various modified forms. For example, ensemble learning may be performed to integrate the estimation results of one or more other models such as Mahalanobis, ODIN, and FSSD. When using such ensemble learning, logistic regression or the like may be used, which is expected to further improve accuracy. In the present information processing device 1, ensembling with other methods is easy, and even higher accuracy can be achieved.

また、上述した実施形態においては、入力データが画像データであり、この入力データに対する分類を推論する例を示したが、これに限定されるものではなく、適宜変更して実施することができる。 In addition, in the above-described embodiment, the input data is image data, and an example is shown in which a classification for this input data is inferred, but the present invention is not limited to this and can be implemented with appropriate modifications.

さらに、上述した実施形態においては、特徴抽出器101が、畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)を用いて、入力データの特徴抽出を行なう例を示したが、これに限定されるものではなく、適宜変更して実施することができる。 In addition, in the above-described embodiment, an example has been shown in which the feature extractor 101 extracts features of the input data using a Convolutional Neural Network (CNN), but this is not limited to this and can be modified as appropriate.

上述した実施形態においては、第2ネットワーク301が、3層のマルチレイヤ全結合層(FC層)による推論を行なう例を示しているが、これに限定されるものではない。第2ネットワーク301は適宜変更して実施することができる。
また、上述した開示により本実施形態を当業者によって実施・製造することが可能である。
In the above embodiment, the second network 301 performs inference using a three-layer fully connected layer (FC layer), but the present invention is not limited to this. The second network 301 can be modified as appropriate.
Moreover, the above disclosure enables a person skilled in the art to implement and manufacture the present embodiment.

(E)付記
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
入力データに基づき特徴データを生成する特徴抽出器と、前記特徴データに対する推論を行なう第1ネットワークとを含む機械学習モデルに関して、
前記特徴抽出器によって生成された特徴ベクトルを第2ネットワークに入力して、前記機械学習モデルのロス推論結果を出力し、
前記ロス推論結果に基づいて、前記入力データが特定ドメインに含まれるか否かの分布外判定を行なう
処理をプロセッサに実行させることを特徴とする情報処理プログラム。
(E) Supplementary Notes The following supplementary notes are further disclosed with respect to the above-described embodiments.
(Appendix 1)
A machine learning model including a feature extractor that generates feature data based on input data, and a first network that performs inference on the feature data,
Input the feature vector generated by the feature extractor into a second network, and output the loss inference result of the machine learning model;
An information processing program that causes a processor to execute a process of determining whether the input data is included in a specific domain or not based on the loss inference result.

(付記2)
前記分布外判定を行なう処理は、前記ロス推論結果が閾値よりも大きい場合に、前記入力データが前記特定ドメインに含まれないと判定し、前記ロス推論結果が閾値以下の場合に、前記入力データが前記特定ドメインに含まれると判定する
ことを特徴とする付記1記載の情報処理プログラム。
(Appendix 2)
The information processing program according to claim 1, characterized in that the process of making the out-of-distribution determination determines that the input data is not included in the specific domain when the loss inference result is greater than a threshold, and determines that the input data is included in the specific domain when the loss inference result is equal to or less than the threshold.

(付記3)
入力データに基づき特徴データを生成する特徴抽出器と、前記特徴データに対する推論を行なう第1ネットワークとを含む機械学習モデルに対して、特定ドメインに含まれるサンプルデータと正解データとを備える訓練データを用いて訓練を行なう場合に、
前記特徴抽出器に、前記サンプルデータに基づき特徴データを生成させ、
前記第1ネットワークに、前記サンプルデータに基づく前記特徴データに対して推論を行なって推論結果を出力させ、
前記正解データに対する前記推論結果の第1のロスを算出する第1の計算を行ない、
前記特徴抽出器によって生成された特徴ベクトルに基づき前記機械学習モデルのロス推論結果を出力する第2ネットワークに、前記サンプルデータに基づく前記特徴データに対して推論を行なって出力するロス推論結果と、前記第1の計算によって算出された前記第1のロスとのL1距離を算出する第2の計算を行なわせ、
前記第1のロスと前記L1距離とを最小化する勾配を求めて誤算逆伝搬させることで、前記機械学習モデルおよび前記第2ネットワークの各パラメータを算出する
処理をプロセッサに実行させることを特徴とする情報処理プログラム。
(Appendix 3)
When a machine learning model including a feature extractor that generates feature data based on input data and a first network that performs inference on the feature data is trained using training data including sample data and correct answer data included in a specific domain,
causing the feature extractor to generate feature data based on the sample data;
causing the first network to perform inference on the feature data based on the sample data and output an inference result;
performing a first calculation to calculate a first loss of the inference result for the ground truth data;
a second network that outputs a loss inference result of the machine learning model based on the feature vector generated by the feature extractor, and causes the second network to perform a second calculation to calculate an L1 distance between the loss inference result output by performing inference on the feature data based on the sample data and the first loss calculated by the first calculation;
An information processing program that causes a processor to execute a process of calculating each parameter of the machine learning model and the second network by obtaining a gradient that minimizes the first loss and the L1 distance and performing backpropagation of the error.

(付記4)
入力データに基づき特徴データを生成する特徴抽出器と、前記特徴データに対する推論を行なう第1ネットワークとを含む機械学習モデルに関して、
前記特徴抽出器によって生成された特徴ベクトルを第2ネットワークに入力して、前記機械学習モデルのロス推論結果を出力し、
前記ロス推論結果に基づいて、前記入力データが特定ドメインに含まれるか否かの分布外判定を行なう
処理をプロセッサが実行することを特徴とする情報処理方法。
(Appendix 4)
A machine learning model including a feature extractor that generates feature data based on input data, and a first network that performs inference on the feature data,
Input the feature vector generated by the feature extractor into a second network, and output the loss inference result of the machine learning model;
An information processing method, comprising: a processor executing a process of determining whether the input data is included in a specific domain or not based on the loss inference result.

(付記5)
前記分布外判定を行なう処理は、前記ロス推論結果が閾値よりも大きい場合に、前記入力データが前記特定ドメインに含まれないと判定し、前記ロス推論結果が閾値以下の場合に、前記入力データが前記特定ドメインに含まれると判定する
ことを特徴とする、付記4記載の情報処理方法。
(Appendix 5)
The information processing method according to claim 4, wherein the process of determining whether the input data is out of distribution determines that the input data is not included in the specific domain when the loss inference result is greater than a threshold, and determines that the input data is included in the specific domain when the loss inference result is equal to or less than the threshold.

(付記6)
入力データに基づき特徴データを生成する特徴抽出器と、前記特徴データに対する推論を行なう第1ネットワークとを含む機械学習モデルに対して、特定ドメインに含まれるサンプルデータと正解データとを備える訓練データを用いて訓練を行なう場合に、
前記特徴抽出器は、前記サンプルデータに基づき特徴データを生成し、
前記第1ネットワークが、前記サンプルデータに基づく前記特徴データに対して推論を行なって推論結果を出力し、
前記正解データに対する前記推論結果の第1のロスを算出する第1の計算を行ない、
前記特徴抽出器によって生成された特徴ベクトルに基づき前記機械学習モデルのロス推論結果を出力する第2ネットワークが、前記サンプルデータに基づく前記特徴データに対して推論を行なって出力するロス推論結果と、前記第1の計算によって算出された前記第1のロスとのL1距離を算出する第2の計算を行ない、
前記第1のロスと前記L1距離とを最小化する勾配を求めて誤算逆伝搬させることで、前記機械学習モデルおよび前記第2ネットワークの各パラメータを算出する
処理をプロセッサが実行することを特徴とする情報処理方法。
(Appendix 6)
When a machine learning model including a feature extractor that generates feature data based on input data and a first network that performs inference on the feature data is trained using training data including sample data and correct answer data included in a specific domain,
The feature extractor generates feature data based on the sample data;
The first network performs inference on the feature data based on the sample data and outputs an inference result;
performing a first calculation to calculate a first loss of the inference result for the ground truth data;
A second network that outputs a loss inference result of the machine learning model based on the feature vector generated by the feature extractor performs a second calculation to calculate an L1 distance between the loss inference result output by performing inference on the feature data based on the sample data and the first loss calculated by the first calculation;
An information processing method, characterized in that a processor executes a process of calculating each parameter of the machine learning model and the second network by finding a gradient that minimizes the first loss and the L1 distance and backpropagating the error.

(付記7)
入力データに基づき特徴データを生成する特徴抽出器と、前記特徴データに対する推論を行なう第1ネットワークとを含む機械学習モデルに関して、
前記特徴抽出器によって生成された特徴ベクトルを第2ネットワークに入力して、前記機械学習モデルのロス推論結果を出力し、
前記ロス推論結果に基づいて、前記入力データが特定ドメインに含まれるか否かの分布外判定を行なう
処理部を備えることを特徴とする情報処理装置。
(Appendix 7)
A machine learning model including a feature extractor that generates feature data based on input data, and a first network that performs inference on the feature data,
Input the feature vector generated by the feature extractor into a second network, and output the loss inference result of the machine learning model;
The information processing device further comprises a processing unit that performs an out-of-distribution determination as to whether the input data is included in a specific domain based on the loss inference result.

(付記8)
前記分布外判定を行なう処理は、前記ロス推論結果が閾値よりも大きい場合に、前記入力データが前記特定ドメインに含まれないと判定し、前記ロス推論結果が閾値以下の場合に、前記入力データが前記特定ドメインに含まれると判定する
ことを特徴とする付記7記載の情報処理装置。
(Appendix 8)
The information processing device of claim 7, wherein the process of performing the out-of-distribution determination determines that the input data is not included in the specific domain when the loss inference result is greater than a threshold, and determines that the input data is included in the specific domain when the loss inference result is equal to or less than the threshold.

(付記9)
入力データに基づき特徴データを生成する特徴抽出器と、前記特徴データに対する推論を行なう第1ネットワークとを含む機械学習モデルに対して、特定ドメインに含まれるサンプルデータと正解データとを備える訓練データを用いて訓練を行なう場合に、
前記特徴抽出器に、前記サンプルデータに基づき特徴データを生成させ、
前記第1ネットワークに、前記サンプルデータに基づく前記特徴データに対して推論を行なって推論結果を出力させ、
前記正解データに対する前記推論結果の第1のロスを算出する第1の計算を行ない、
前記特徴抽出器によって生成された特徴ベクトルに基づき前記機械学習モデルのロス推論結果を出力する第2ネットワークが、前記サンプルデータに基づく前記特徴データに対して推論を行なって出力するロス推論結果と、前記第1の計算によって算出された前記第1のロスとのL1距離を算出する第2の計算を行ない、
前記第1のロスと前記L1距離とを最小化する勾配を求めて誤算逆伝搬させることで、前記機械学習モデルおよび前記第2ネットワークの各パラメータを算出する
処理部を備えることを特徴とする情報処理装置。
(Appendix 9)
When a machine learning model including a feature extractor that generates feature data based on input data and a first network that performs inference on the feature data is trained using training data including sample data and correct answer data included in a specific domain,
causing the feature extractor to generate feature data based on the sample data;
causing the first network to perform inference on the feature data based on the sample data and output an inference result;
performing a first calculation to calculate a first loss of the inference result for the ground truth data;
A second network that outputs a loss inference result of the machine learning model based on the feature vector generated by the feature extractor performs a second calculation to calculate an L1 distance between the loss inference result output by performing inference on the feature data based on the sample data and the first loss calculated by the first calculation;
An information processing device comprising: a processing unit that calculates each parameter of the machine learning model and the second network by obtaining a gradient that minimizes the first loss and the L1 distance and backpropagating the error.

1 情報処理装置
11 プロセッサ(処理部)
12 メモリ
13 記憶装置
14 グラフィック処理装置
14a モニタ
15 入力インタフェース
15a キーボード
15b マウス
16 光学ドライブ装置
16a 光ディスク
17 機器接続インタフェース
17a メモリ装置
17b メモリリーダライタ
17c メモリカード
18 ネットワークインタフェース
18a ネットワーク
19 バス
100 第1推論処理部
101 特徴抽出器
102 第1ネットワーク
110 機械学習モデル
200 訓練処理部
201 第1ロス算出部
202 第2ロス算出部
203 合計ロス算出部
204 最適化処理部
300 第2推論処理部
301 第2ネットワーク
302 OOD推論部
1 Information processing device 11 Processor (processing unit)
12 Memory 13 Storage device 14 Graphic processing device 14a Monitor 15 Input interface 15a Keyboard 15b Mouse 16 Optical drive device 16a Optical disk 17 Device connection interface 17a Memory device 17b Memory reader/writer 17c Memory card 18 Network interface 18a Network 19 Bus 100 First inference processing unit 101 Feature extractor 102 First network 110 Machine learning model 200 Training processing unit 201 First loss calculation unit 202 Second loss calculation unit 203 Total loss calculation unit 204 Optimization processing unit 300 Second inference processing unit 301 Second network 302 OOD inference unit

Claims (7)

入力データに基づき特徴ベクトルを生成する特徴抽出器と、前記特徴ベクトルに対する推論を行なう第1ネットワークとを含む機械学習モデルに関して、
前記特徴抽出器によって生成された前記特徴ベクトルを第2ネットワークに入力して、前記機械学習モデルのロス推論結果を出力し、
前記ロス推論結果に基づいて、前記入力データが特定ドメインに含まれるか否かの分布外判定を行なう
処理をプロセッサに実行させることを特徴とする情報処理プログラム。
A machine learning model including a feature extractor that generates a feature vector based on input data, and a first network that performs inference on the feature vector ,
Input the feature vector generated by the feature extractor into a second network, and output a loss inference result of the machine learning model;
An information processing program that causes a processor to execute a process of determining whether the input data is included in a specific domain or not based on the loss inference result.
前記分布外判定を行なう処理は、前記ロス推論結果が閾値よりも大きい場合に、前記入力データが前記特定ドメインに含まれないと判定し、前記ロス推論結果が閾値以下の場合に、前記入力データが前記特定ドメインに含まれると判定する
ことを特徴とする請求項1記載の情報処理プログラム。
The information processing program according to claim 1, characterized in that the process of performing the out-of-distribution determination determines that the input data is not included in the specific domain when the loss inference result is greater than a threshold, and determines that the input data is included in the specific domain when the loss inference result is equal to or less than the threshold.
入力データに基づき特徴ベクトルを生成する特徴抽出器と、前記特徴ベクトルに対する推論を行なう第1ネットワークとを含む機械学習モデルに対して、特定ドメインに含まれるサンプルデータと正解データとを備える訓練データを用いて訓練を行なう場合に、
前記特徴抽出器に、前記サンプルデータに基づき特徴ベクトルを生成させ、
前記第1ネットワークに、前記サンプルデータに基づく前記特徴ベクトルに対して推論を行なって推論結果を出力させ、
前記正解データに対する前記推論結果の第1のロスを算出する第1の計算を行ない、
前記特徴抽出器によって生成された前記特徴ベクトルに基づき前記機械学習モデルのロス推論結果を出力する第2ネットワークに、前記サンプルデータに基づく前記特徴ベクトルに対して推論を行なって出力するロス推論結果と、前記第1の計算によって算出された前記第1のロスとのL1距離を算出する第2の計算を行なわせ、
前記第1のロスと前記L1距離とを最小化する勾配を求めて誤算逆伝搬させることで、前記機械学習モデルおよび前記第2ネットワークの各パラメータを算出する
処理をプロセッサに実行させることを特徴とする情報処理プログラム。
When a machine learning model including a feature extractor that generates a feature vector based on input data and a first network that performs inference on the feature vector is trained using training data including sample data and correct answer data included in a specific domain,
causing the feature extractor to generate a feature vector based on the sample data;
causing the first network to perform inference on the feature vector based on the sample data and output an inference result;
performing a first calculation to calculate a first loss of the inference result for the ground truth data;
a second network that outputs a loss inference result of the machine learning model based on the feature vector generated by the feature extractor, and causes the second network to perform a second calculation to calculate an L1 distance between the loss inference result output by performing inference on the feature vector based on the sample data and the first loss calculated by the first calculation;
An information processing program that causes a processor to execute a process of calculating each parameter of the machine learning model and the second network by obtaining a gradient that minimizes the first loss and the L1 distance and performing backpropagation of the error.
入力データに基づき特徴ベクトルを生成する特徴抽出器と、前記特徴ベクトルに対する推論を行なう第1ネットワークとを含む機械学習モデルに関して、
前記特徴抽出器によって生成された前記特徴ベクトルを第2ネットワークに入力して、前記機械学習モデルのロス推論結果を出力し、
前記ロス推論結果に基づいて、前記入力データが特定ドメインに含まれるか否かの分布外判定を行なう
処理をプロセッサが実行することを特徴とする情報処理方法。
A machine learning model including a feature extractor that generates a feature vector based on input data, and a first network that performs inference on the feature vector ,
Input the feature vector generated by the feature extractor into a second network, and output a loss inference result of the machine learning model;
An information processing method, comprising: a processor executing a process of determining whether the input data is included in a specific domain or not based on the loss inference result.
入力データに基づき特徴ベクトルを生成する特徴抽出器と、前記特徴ベクトルに対する推論を行なう第1ネットワークとを含む機械学習モデルに対して、特定ドメインに含まれるサンプルデータと正解データとを備える訓練データを用いて訓練を行なう場合に、
前記特徴抽出器は、前記サンプルデータに基づき特徴ベクトルを生成し、
前記第1ネットワークが、前記サンプルデータに基づく前記特徴ベクトルに対して推論を行なって推論結果を出力し、
前記正解データに対する前記推論結果の第1のロスを算出する第1の計算を行ない、
前記特徴抽出器によって生成された前記特徴ベクトルに基づき前記機械学習モデルのロス推論結果を出力する第2ネットワークが、前記サンプルデータに基づく前記特徴ベクトルに対して推論を行なって出力するロス推論結果と、前記第1の計算によって算出された前記第1のロスとのL1距離を算出する第2の計算を行ない、
前記第1のロスと前記L1距離とを最小化する勾配を求めて誤算逆伝搬させることで、
前記機械学習モデルおよび前記第2ネットワークのパラメータを算出する
処理をプロセッサが実行することを特徴とする情報処理方法。
When a machine learning model including a feature extractor that generates a feature vector based on input data and a first network that performs inference on the feature vector is trained using training data including sample data and correct answer data included in a specific domain,
The feature extractor generates a feature vector based on the sample data;
The first network performs inference on the feature vector based on the sample data and outputs an inference result;
performing a first calculation to calculate a first loss of the inference result for the ground truth data;
A second network that outputs a loss inference result of the machine learning model based on the feature vector generated by the feature extractor performs a second calculation to calculate an L1 distance between the loss inference result output by performing inference on the feature vector based on the sample data and the first loss calculated by the first calculation;
By finding a gradient that minimizes the first loss and the L1 distance and backpropagating the error,
An information processing method, characterized in that a processor executes a process of calculating parameters of the machine learning model and the second network.
入力データに基づき特徴ベクトルを生成する特徴抽出器と、前記特徴ベクトルに対する推論を行なう第1ネットワークとを含む機械学習モデルに関して、
前記特徴抽出器によって生成された前記特徴ベクトルを第2ネットワークに入力して、前記機械学習モデルのロス推論結果を出力し、
前記ロス推論結果に基づいて、前記入力データが特定ドメインに含まれるか否かの分布外判定を行なう
処理部を備えることを特徴とする情報処理装置。
A machine learning model including a feature extractor that generates a feature vector based on input data, and a first network that performs inference on the feature vector ,
Input the feature vector generated by the feature extractor into a second network, and output a loss inference result of the machine learning model;
The information processing device further comprises a processing unit that performs an out-of-distribution determination as to whether the input data is included in a specific domain based on the loss inference result.
入力データに基づき特徴ベクトルを生成する特徴抽出器と、前記特徴ベクトルに対する推論を行なう第1ネットワークとを含む機械学習モデルに対して、特定ドメインに含まれるサンプルデータと正解データとを備える訓練データを用いて訓練を行なう場合に、
前記特徴抽出器に、前記サンプルデータに基づき特徴ベクトルを生成させ、
前記第1ネットワークに、前記サンプルデータに基づく前記特徴ベクトルに対して推論を行なって推論結果を出力させ、
前記正解データに対する前記推論結果の第1のロスを算出する第1の計算を行ない、
前記特徴抽出器によって生成された前記特徴ベクトルに基づき前記機械学習モデルのロス推論結果を出力する第2ネットワークが、前記サンプルデータに基づく前記特徴ベクトルに対して推論を行なって出力するロス推論結果と、前記第1の計算によって算出された前記第1のロスとのL1距離を算出する第2の計算を行ない、
前記第1のロスと前記L1距離とを最小化する勾配を求めて誤算逆伝搬させることで、前記機械学習モデルおよび前記第2ネットワークの各パラメータを算出する
処理部を備えることを特徴とする情報処理装置。
When a machine learning model including a feature extractor that generates a feature vector based on input data and a first network that performs inference on the feature vector is trained using training data including sample data and correct answer data included in a specific domain,
causing the feature extractor to generate a feature vector based on the sample data;
causing the first network to perform inference on the feature vector based on the sample data and output an inference result;
performing a first calculation to calculate a first loss of the inference result for the ground truth data;
A second network that outputs a loss inference result of the machine learning model based on the feature vector generated by the feature extractor performs a second calculation to calculate an L1 distance between the loss inference result output by performing inference on the feature vector based on the sample data and the first loss calculated by the first calculation;
An information processing device comprising: a processing unit that calculates each parameter of the machine learning model and the second network by obtaining a gradient that minimizes the first loss and the L1 distance and backpropagating the error.
JP2021094871A 2021-06-07 2021-06-07 Information processing program, information processing method, and information processing device Active JP7666142B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021094871A JP7666142B2 (en) 2021-06-07 2021-06-07 Information processing program, information processing method, and information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021094871A JP7666142B2 (en) 2021-06-07 2021-06-07 Information processing program, information processing method, and information processing device

Publications (2)

Publication Number Publication Date
JP2022187065A JP2022187065A (en) 2022-12-19
JP7666142B2 true JP7666142B2 (en) 2025-04-22

Family

ID=84525527

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021094871A Active JP7666142B2 (en) 2021-06-07 2021-06-07 Information processing program, information processing method, and information processing device

Country Status (1)

Country Link
JP (1) JP7666142B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020241074A1 (en) 2019-05-30 2020-12-03 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Information processing method and program
WO2021091781A1 (en) 2019-11-08 2021-05-14 Nvidia Corporation Processor and system to identify out-of-distribution input data in neural networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020241074A1 (en) 2019-05-30 2020-12-03 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Information processing method and program
WO2021091781A1 (en) 2019-11-08 2021-05-14 Nvidia Corporation Processor and system to identify out-of-distribution input data in neural networks

Also Published As

Publication number Publication date
JP2022187065A (en) 2022-12-19

Similar Documents

Publication Publication Date Title
US20210174264A1 (en) Training tree-based machine-learning modeling algorithms for predicting outputs and generating explanatory data
US20210216825A1 (en) Uncertainty guided semi-supervised neural network training for image classification
CN110622175A (en) Neural network classification
US20230316045A1 (en) Drift detection using an autoencoder with weighted loss
US11120297B2 (en) Segmentation of target areas in images
US11410065B2 (en) Storage medium, model output method, and model output device
CN111125529A (en) Product matching method and device, computer equipment and storage medium
US20240144729A1 (en) Generation method and information processing apparatus
Galdran et al. A no-reference quality metric for retinal vessel tree segmentation
JP2023144562A (en) Machine learning program, data processing program, information processing device, machine learning method, and data processing method
US20240086706A1 (en) Storage medium, machine learning method, and machine learning device
CN114596209A (en) Fingerprint image restoration method, system, equipment and storage medium
JP7666142B2 (en) Information processing program, information processing method, and information processing device
US20220215228A1 (en) Detection method, computer-readable recording medium storing detection program, and detection device
JP7823508B2 (en) Training data generation program, training data generation method, and information processing device
EP3992860A1 (en) Information processing program, information processing device, and information processing method
US20240330684A1 (en) Data generation method, machine learning method, information processing apparatus, non-transitory computer-readable recording medium storing data generation program, and non-transitory computer-readable recording medium storing machine learning program
US20240378866A1 (en) Cell nuclei classification with artifact area avoidance
JP7547956B2 (en) Method and program for determining edges to be corrected
JP2022115518A (en) Information processing program, information processing method, and information processing device
JP2022035432A (en) Information processing program, information processing method and information processing device
JP7670229B2 (en) Training data generation program, training data generation method, and information processing device
WO2021214861A1 (en) Learning device, trained model generation method, classification device, classification method, and computer-readable recording medium
KR102936265B1 (en) Device for improving rotation invariance in segmentation model and its operating method
JP2024003483A (en) Training program, training method and information processing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20241224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250225

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20250225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250311

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250324

R150 Certificate of patent or registration of utility model

Ref document number: 7666142

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150