WO2024013911A1 - 学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラム - Google Patents

学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラム Download PDF

Info

Publication number
WO2024013911A1
WO2024013911A1 PCT/JP2022/027626 JP2022027626W WO2024013911A1 WO 2024013911 A1 WO2024013911 A1 WO 2024013911A1 JP 2022027626 W JP2022027626 W JP 2022027626W WO 2024013911 A1 WO2024013911 A1 WO 2024013911A1
Authority
WO
WIPO (PCT)
Prior art keywords
score
model
label
loss
correct
Prior art date
Application number
PCT/JP2022/027626
Other languages
English (en)
French (fr)
Inventor
関利 金井
真弥 山口
真徳 山田
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2022/027626 priority Critical patent/WO2024013911A1/ja
Publication of WO2024013911A1 publication Critical patent/WO2024013911A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Definitions

  • the present invention relates to a learning device, a learning method, a learning program, an inference device, an inference method, and an inference program.
  • Deep learning and deep neural networks have achieved great success in areas such as image recognition and speech recognition. For example, in image recognition using deep learning, when an image is input to a model that includes many deep learning nonlinear functions, it outputs a classification result of what the image depicts.
  • convolutional neural networks and ReLU Rectified Linear Unit
  • the conventional technology has a problem in that the model may not be sufficiently robust against adversarial attacks.
  • the learning device inputs adversarially attacked data in which a pseudo adversarial attack was performed on the input data to the model, and calculates a score for each of multiple labels.
  • a calculation unit that calculates a maximum value of an incorrect answer score calculated by the calculation unit for an incorrect answer label that is a label other than a correct answer label that is a label associated with the input data in advance among the plurality of labels; For a certain percentage of the input data that has a large difference between the correct answer score calculated by the calculation unit for the correct answer label, the one-to-other loss that is the loss between the correct answer score and the incorrect answer score is reduced.
  • an updating unit that updates parameters of the model.
  • FIG. 1 is a diagram illustrating the configuration of a model.
  • FIG. 2 is a diagram illustrating the configuration of the final layer of the model.
  • FIG. 3 is a diagram showing a configuration example of the learning device according to the first embodiment.
  • FIG. 4 is a flowchart showing the flow of learning processing according to the first embodiment.
  • FIG. 5 is a flowchart showing the flow of processing for creating a loss function.
  • FIG. 6 is a diagram showing an example of a computer that executes a learning program.
  • the learning device of the embodiment performs learning (training) of a deep learning model (hereinafter simply referred to as a model).
  • a model a deep learning model
  • a deep learning model may also be referred to as a deep neural network.
  • the model consists of an input layer into which signals enter, one or more hidden layers that transform the signals from the input layer in various ways, and a final layer that transforms the signals of the hidden layers into outputs such as probabilities. and, including.
  • the number of intermediate layers is L (L ⁇ 1).
  • the output of the last intermediate layer (the L-th intermediate layer in the example of FIG. 1) is input to the softmax function to obtain the output.
  • the output of the softmax function corresponds to the output of the entire model.
  • FIG. 3 is a diagram illustrating a configuration example of a learning device according to the first embodiment.
  • the learning device 10 includes a communication section 11, a storage section 12, and a control section 13.
  • the communication unit 11 performs data communication with other devices.
  • the communication unit 11 is a NIC (Network Interface Card).
  • the communication unit 11 may be an interface for inputting and outputting data between an input device (for example, a mouse and a keyboard) and an output device (for example, a display).
  • the storage unit 12 is a storage device such as an HDD (Hard Disk Drive), an SSD (Solid State Drive), or an optical disc. Note that the storage unit 12 may be a data-rewritable semiconductor memory such as a RAM (Random Access Memory), a flash memory, or an NVSRAM (Non Volatile Static Random Access Memory).
  • the storage unit 12 stores an OS (Operating System) and various programs executed by the learning device 10.
  • the storage unit 12 stores model information 121.
  • Model information 121 is parameters for constructing a model.
  • the model information 121 is weights, biases, etc. of a deep neural network.
  • the model information 121 is updated through learning.
  • the control unit 13 controls the entire learning device 10.
  • the control unit 13 may be an electronic circuit or integrated circuit Realized.
  • control unit 13 has an internal memory for storing programs and control data that define various processing procedures, and executes each process using the internal memory. Further, the control unit 13 functions as various processing units by running various programs.
  • control unit 13 includes a calculation unit 131, a creation unit 132, and an update unit 133.
  • the calculation unit 131 applies (inputs) input data to the model from among input data and labels selected from a data set (teacher data set) prepared in advance. Thereby, the calculation unit 131 calculates output data corresponding to the input data. Further, the model is constructed based on model information 121.
  • model may be expressed as a classifier or a classifier as appropriate.
  • the input data is the feature extracted from the image.
  • the label is information that specifies the object appearing in the image.
  • the score output by the model is the probability that an object corresponding to each label is included in the image.
  • the creation unit 132 creates a loss function based on the output data of the model. For example, the creation unit 132 creates a loss function that decreases as the output data of the model matches the label corresponding to the input data (the greater the similarity).
  • the updating unit 133 updates the model parameters, that is, the model information 121, so that the loss function is optimized (for example, minimized).
  • the learning device 10 ends the learning process when the evaluation criteria are satisfied.
  • the evaluation criteria is that the identification accuracy of the model with respect to a separately prepared evaluation data set has exceeded a threshold, that the amount of parameter updates has converged, that parameter updates have been repeated a certain number of times, and so on.
  • the learning device 10 performs adversarial learning.
  • adversarial learning a loss function that is different from general learning is created.
  • adversarial learning in this embodiment will be explained.
  • uppercase bold letters represent matrices
  • lowercase bold letters represent column vectors.
  • row vectors are expressed using transposition.
  • the model is used for image recognition
  • the present embodiment is not limited to image recognition, but is generally applicable to identification using deep learning.
  • d is the dimension of the input data, and is expressed as a vector for simplicity, but the structure of the data does not matter.
  • the input data x is data representing characteristics of an image.
  • the deep learning model repeats nonlinear functions and linear operations and outputs output data through the softmax function in the final layer.
  • z ⁇ (x) [z 1, ⁇ (x), z 2, ⁇ (x ),...,z M, ⁇ (x)] T.
  • is a parameter of a deep learning model, that is, model information 121.
  • z ⁇ (x) is called logit.
  • Equation (1) represents the score for each label in class classification, and the element with the largest output obtained from equation (2) is the recognition result of deep learning.
  • Image recognition is one type of class classification, and the model f s (z ⁇ ( ⁇ )) that performs classification is called a classifier.
  • is obtained by optimization of equation (5) using adversarially attacked data x'.
  • logit margin loss l LM ( ⁇ ) in equation (6) is considered to represent the difficulty of classifying data (x, y). It will be done.
  • z k, ⁇ (x) is the kth element of z ⁇ (x) which is logit.
  • the creation unit 132 creates a one-versus-other loss (one-versus-other loss) as shown in equation (7).
  • the-rest loss) l Create a loss function using OVR .
  • is a convex function with a non-negative value and is differentiable, and ⁇ (z) ⁇ ( ⁇ z) for z>0.
  • ⁇ (z) log(1+e ⁇ z ) (second term on the right side of equation (8)).
  • l OVR in equation (7) is expressed as in equation (8).
  • the creation unit 132 selects the top H% of data samples that have a large value of logit margin loss l LM (x') against an adversarial attack among the data (input data and label pair) included in the data set. Applies to targeted attacks. However, it is assumed that 0 ⁇ H ⁇ 100.
  • the data sample is a set of adversarial attacked data x' in which the input data included in the data set was attacked, and a label y associated with the input data. It is assumed that there are multiple data samples. From this, the creation unit 132 creates the loss function of equation (9). Note that the first term in brackets [ ] on the right side of equation (9) is the cross entropy, and the second term is the one-to-other loss related to the hostile attack.
  • S is a set of data samples in the lower (100-H)% where l LM (x') has a small value.
  • L is a set of top H% data samples with large values of l LM (x').
  • is an adjustment parameter that determines the weight of loss.
  • the creation unit 132 sorts the 100 data samples in descending order of l LM (x'). The creation unit 132 then acquires the 20th data sample from the beginning of the sorted data samples and adds them to the set L. The creation unit 132 also acquires the 21st to 100th data samples of the sorted data samples and adds them to the set S.
  • the loss of the set S is cross entropy, but the loss is not limited to this, and other losses may be used.
  • the top H Optimization is performed by applying one-to-other loss to % data samples.
  • the updating unit 133 updates the parameters of the model so that equation (9) is optimized (minimized).
  • l CE is the cross-entropy loss. Further, KL is KL divergence.
  • the creation unit 132 creates the loss function of equation (11).
  • Equation (11) The third term in [ ] on the right side of equation (11) differs from KL divergence in equation (10) in that p ⁇ (k
  • x i ) p ⁇ (k
  • FIG. 4 is a flowchart showing the flow of learning processing according to the first embodiment.
  • the learning device 10 applies input data randomly selected from the data set to the discriminator (step S11).
  • the classifier is an example of a model constructed from model information 121.
  • the input data applied to the discriminator may be adversarial attacked data.
  • the learning device 10 creates a loss function including a one-versus-other loss for the adversarial attack based on the output of the classifier and the labels included in the data set (step S12). Details of the process for creating the loss function will be described later.
  • the learning device 10 updates the parameters of the classifier using the gradient of the loss function (step S13).
  • the learning device 10 can update parameters using a known method such as error backpropagation.
  • step S14 if the evaluation criteria are satisfied (step S14, Yes), the learning device 10 ends the process. On the other hand, if the evaluation criteria are not satisfied (step S14, No), the learning device 10 returns to step S11 and repeats the process.
  • FIG. 5 is a flowchart showing the flow of processing for creating a loss function.
  • the learning device 10 randomly selects some data samples from among the data samples applied to the classifier (step S121).
  • the learning device 10 creates a hostile attack against the selected data sample (step S122).
  • the learning device 10 calculates the one-versus-other loss for the generated attack (step S123).
  • the learning device 10 creates a set L of H% data samples and another set S in descending order of one-to-other loss (step S124).
  • the learning device 10 calculates the one-to-other loss for the attack on the set L, applies cross-entropy to the other sets S, and creates the sum of the one-to-other loss and the cross-entropy as a loss function ( Step S125).
  • the loss function created here is as shown in equation (9).
  • the calculation unit 131 inputs into the model adversarial attacked data obtained by performing a pseudo adversarial attack on the input data, and calculates a score for each of the plurality of labels.
  • the score here includes not only the output from softmax but also logit, which has the same magnitude relationship as the output from softmax.
  • the updating unit 133 calculates the maximum value of the incorrect answer score calculated by the calculation unit 131 for the incorrect answer label, which is a label other than the correct answer label that is a label associated with the input data in advance, among the plurality of labels, and the correct answer score for the correct answer label. For a certain percentage of input data that has a large difference between the correct score calculated by the calculation unit 131, the model parameters are updated so that the one-to-other loss, which is the loss between the correct score and the incorrect score, is reduced. do.
  • the difference between the maximum value of the incorrect score calculated by the calculation unit 131 for the incorrect label and the correct score calculated by the calculation unit 131 for the correct label is, for example, as shown in equation (6). Further, the certain percentage is, for example, H%. Furthermore, the one-to-other loss for hostile-attacked data is as shown in equations (7) and (8), for example.
  • the update unit 133 updates the model so that the loss function that combines the one-to-other loss when adversarially attacked data is input into the model and the KL divergence when adversarially attacked data is input into the model becomes small. Update the parameters of The loss function in this case is, for example, as shown in equation (10).
  • the update unit 133 calculates the one-to-other loss when the input data is input to the model, and the KL divergence when the input data is input to the model. Update the model parameters so that the combined loss function becomes smaller.
  • the loss function in this case is, for example, as shown in equation (11).
  • this embodiment can also be applied to TRADES.
  • the inference device performs the same processing as the calculation unit 131 using the model information 121 updated by the learning device 10.
  • the inference device, the inference method, and the inference program can be realized using the calculation unit 131 of the learning device 10. Further, the inference device may be realized by a device different from the learning device 10 that has the same function as the calculation unit 131.
  • the learning device 10 which functions as an inference device, inputs adversarial attacked data obtained by performing a pseudo adversarial attack on input data to a model, calculates scores for each of a plurality of labels, and calculates scores for each of a plurality of labels.
  • each component of each device shown in the drawings is functionally conceptual, and does not necessarily need to be physically configured as shown in the drawings.
  • the specific form of distributing and integrating each device is not limited to what is shown in the diagram, and all or part of the devices may be functionally or physically distributed or integrated in arbitrary units depending on various loads and usage conditions. Can be integrated and configured.
  • each processing function performed by each device is realized in whole or in part by a CPU (Central Processing Unit) and a program that is analyzed and executed by the CPU, or by hardware using wired logic. It can be realized as Note that the program may be executed not only by the CPU but also by another processor such as a GPU.
  • a CPU Central Processing Unit
  • the learning device 10 can be implemented by installing a learning program that executes the above-described learning process into a desired computer as packaged software or online software. For example, by causing the information processing device to execute the above learning program, the information processing device can be made to function as the learning device 10.
  • the information processing device referred to here includes a desktop or notebook personal computer.
  • information processing devices include mobile communication terminals such as smartphones, mobile phones, and PHSs (Personal Handyphone Systems), as well as slate terminals such as PDAs (Personal Digital Assistants).
  • the learning device 10 can also be implemented as a learning server device that uses a terminal device used by a user as a client and provides services related to the above-mentioned learning processing to the client.
  • a learning server device is implemented as a server device that provides a learning service that takes learning data as input and outputs parameters of a trained model.
  • the learning server device may be implemented as a Web server, or may be implemented as a cloud that provides services related to the above-mentioned learning processing by outsourcing.
  • FIG. 6 is a diagram showing an example of a computer that executes a learning program.
  • Computer 1000 includes, for example, a memory 1010 and a CPU 1020.
  • the computer 1000 also includes a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These parts are connected by a bus 1080.
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM (Random Access Memory) 1012.
  • the ROM 1011 stores, for example, a boot program such as BIOS (Basic Input Output System).
  • Hard disk drive interface 1030 is connected to hard disk drive 1090.
  • Disk drive interface 1040 is connected to disk drive 1100.
  • Serial port interface 1050 is connected to, for example, mouse 1110 and keyboard 1120.
  • Video adapter 1060 is connected to display 1130, for example.
  • the hard disk drive 1090 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. That is, a program that defines each process of the learning device 10 is implemented as a program module 1093 in which computer-executable code is written.
  • Program module 1093 is stored in hard disk drive 1090, for example.
  • a program module 1093 for executing processing similar to the functional configuration of the learning device 10 is stored in the hard disk drive 1090.
  • the hard disk drive 1090 may be replaced by an SSD (Solid State Drive).
  • the setting data used in the processing of the embodiment described above is stored as program data 1094 in, for example, the memory 1010 or the hard disk drive 1090. Then, the CPU 1020 reads out the program module 1093 and program data 1094 stored in the memory 1010 and the hard disk drive 1090 to the RAM 1012 as necessary, and executes the processing of the embodiment described above.
  • program module 1093 and the program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in a removable storage medium, for example, and read by the CPU 1020 via the disk drive 1100 or the like.
  • the program module 1093 and the program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). The program module 1093 and program data 1094 may then be read by the CPU 1020 from another computer via the network interface 1070.
  • LAN Local Area Network
  • WAN Wide Area Network

Landscapes

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

Abstract

計算部(131)は、入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算する。更新部(133)は、複数のラベルのうち、入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて計算部(131)が計算した不正解スコアの最大値と、正解ラベルについて計算部(131)が計算した正解スコアと、の差が大きい一定の割合の入力データについて、正解スコアと不正解スコアとの間の損失である1対他損失が小さくなるように、モデルのパラメータを更新する。

Description

学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラム
 本発明は、学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラムに関する。
 深層学習、ディープニューラルネットワークは、画像認識及び音声認識等で大きな成功を収めている。例えば、深層学習を使った画像認識では、深層学習の多数の非線形関数を含んだモデルに画像を入力すると、その画像が何を写しているのかという分類結果を出力する。特に、畳み込みニューラルネットワークとReLU(Rectified Linear Unit)は、画像認識において頻繁に使用される技術である。
 しかしながら、悪意ある攻撃者が、モデルに最適なノイズを入力画像に加えると、小さなノイズで簡単に深層学習を誤分類させることができる。これは、敵対的攻撃と呼ばれており、例えば、PGD(Projected Gradient Descent)等の攻撃方法が報告されている。
 また、敵対的攻撃に対し、モデルをロバスト化するための方法として、敵対的攻撃を受けたサンプルを使って学習する敵対的学習と呼ばれる方法が提案されている(例えば、非特許文献1を参照)。また、敵対的学習と類似のロバストな学習方法としてTRADESと呼ばれる方法が提案されている(例えば、非特許文献2を参照)。
Aleksander Madry, Aleksandar Makelov, Ludwig Schmidt, Dimitris Tsipras, Adrian Vladu ,"Towards deep learning models resistant to adversarial attacks", arXiv preprint:1706.06083(2017). Zhang, Hongyang, et al. ,"Theoretically principled trade-off between robustness and accuracy.",International conference on machine learning". ICML 2019.
 しかしながら、従来の技術には、敵対的攻撃に対するモデルの頑健性が十分でない場合があるという問題がある。
 上述した課題を解決し、目的を達成するために、学習装置は、入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算する計算部と、前記複数のラベルのうち、前記入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて前記計算部が計算した不正解スコアの最大値と、前記正解ラベルについて前記計算部が計算した正解スコアと、の差が大きい一定の割合の前記入力データについて、前記正解スコアと前記不正解スコアとの間の損失である1対他損失が小さくなるように、前記モデルのパラメータを更新する更新部と、を有することを特徴とする。
 本発明によれば、敵対的攻撃に対するモデルの頑健性を向上させることができる。
図1は、モデルの構成を説明する図である。 図2は、モデルの最終層の構成を説明する図である。 図3は、第1の実施形態に係る学習装置の構成例を示す図である。 図4は、第1の実施形態に係る学習処理の流れを示すフローチャートである。 図5は、損失関数を作成する処理の流れを示すフローチャートである。 図6は、学習プログラムを実行するコンピュータの一例を示す図である。
 以下に、本願に係る学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
[第1の実施形態]
 実施形態の学習装置は、深層学習のモデル(以下、単にモデルと呼ぶ)の学習(訓練)を行う。まず、図1を用いて、モデルの構成を説明する。深層学習のモデルは、ディープニューラルネットワークと言い換えられてもよい。
 図1に示すように、モデルは、信号が入る入力層と、入力層からの信号を様々に変換する1つ又は複数の中間層と、中間層の信号を確率等の出力に変換する最終層と、を含む。図1の例では、中間層の数はLである(ただし、L≧1)。
 図2に示すように、最終層では、最後の中間層(図1の例では第L中間層)の出力をsoftmax関数に入力して出力が得られる。softmax関数の出力が、モデル全体の出力に相当する。
 図3を用いて、学習装置の構成を説明する。図3は、第1の実施形態に係る学習装置の構成例を示す図である。
 図3に示すように、学習装置10は、通信部11、記憶部12及び制御部13を有する。
 通信部11は、他の装置との間でデータ通信を行う。例えば、通信部11はNIC(Network Interface Card)である。また、通信部11は、入力装置(例えばマウス及びキーボード)及び出力装置(例えばディスプレイ)との間でデータの入出力を行うためのインタフェースであってもよい。
 記憶部12は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置である。なお、記憶部12は、RAM(Random Access Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)等のデータを書き換え可能な半導体メモリであってもよい。記憶部12は、学習装置10で実行されるOS(Operating System)や各種プログラムを記憶する。
 記憶部12は、モデル情報121を記憶する。モデル情報121は、モデルを構築するためのパラメータである。例えば、モデル情報121は、ディープニューラルネットワークの重み、バイアス等である。また、モデル情報121は、学習により更新される。
 制御部13は、学習装置10全体を制御する。例えば、制御部13は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)といった電子回路又は集積回路により実現される。
 また、制御部13は、各種の処理手順を規定したプログラム及び制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部13は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部13は、計算部131、作成部132及び更新部133を有する。
 計算部131は、あらかじめ用意されたデータセット(教師データセット)から選択された入力データとラベルのうち、入力データをモデルに印可(入力)する。これにより、計算部131は、入力データに対応する出力データを計算する。また、モデルは、モデル情報121を基に構築される。
 なお、データセットにおいては、入力データとラベルが対応付けられているものとする。また、モデルは、適宜識別器、分類器のように言い換えられてもよい。
 モデルが画像認識に用いられるものである場合、入力データは画像から抽出された特徴量である。また、ラベルは、画像に写る物体を特定する情報である。また、例えば、モデルが出力するスコアは、画像に各ラベルに対応する物体が写っている確率である。
 作成部132は、モデルの出力データを基に損失関数を作成する。例えば、作成部132は、モデルの出力データが、入力データに対応するラベルと一致するほど(類似度が大きいほど)小さくなる損失関数を作成する。
 更新部133は、損失関数が最適化(例えば最小化)されるように、モデルのパラメータ、すなわちモデル情報121を更新する。
 このような一連の処理を繰り返すことにより、モデルの識別精度が向上する。学習装置10は、評価基準が満たされた場合、学習処理を終了する。評価基準は、別途用意した評価用のデータセットに対するモデルの識別精度が閾値以上になったこと、パラメータの更新量が収束したこと、パラメータの更新が一定回数繰り返されたこと等である。
 また、本実施形態では、学習装置10は、敵対的学習を行う。敵対的学習においては、一般的な学習と異なる損失関数が作成される。以降、本実施形態における敵対的学習について説明する。
 以降の数式において、大文字の太字は行列を表し、小文字の太字は列ベクトルを表す。また、行ベクトルは転置を使って表現される。
 ここでは、モデルが画像認識に用いられる場合を例に説明するが、本実施形態は、画像認識に限られず、深層学習を使った識別に一般に適用可能である。
 深層学習で入力データx∈Rを認識し、M個のラベルから画像のラベルy∈{1,…,M}を求める問題を考える。ただしdは入力データの次元であり,簡単のためベクトルで記載しているがデータの構造は問わない。また、例えば、入力データxは、画像の特徴を表すデータである。
 このとき、深層学習のモデルは、非線形関数と線形演算を繰り返して最終層でsoftmax関数を通して出力データを出力する。
 いま、モデルで変換されて最終的にsoftmaxに入力されるベクトル(図1の第L層の出力に相当)をzθ(x)=[z1,θ(x),z2,θ(x),…,zM,θ(x)]とする。θは深層学習のモデルのパラメータ、すなわちモデル情報121である。また、zθ(x)はlogitと呼ばれる。
 softmax関数をf(・)とすると、モデルの出力はsoftmaxの出力f(zθ(x))∈Rであり、k番目の出力は(1)式で表される。
Figure JPOXMLDOC01-appb-M000001
 (1)式の出力は、クラス分類において各ラベルに対するスコアを表し、(2)式によって得られる最も大きな出力の要素が深層学習の認識結果である。
Figure JPOXMLDOC01-appb-M000002
 ただし、softmaxは大小関係を維持するため、(3)式のようにしても(2)式と結果は変わらない。
Figure JPOXMLDOC01-appb-M000003
 画像認識はクラス分類の1つであり、分類を行うモデルf(zθ(・))は分類器と呼ばれる。
 パラメータθは事前に用意したN個のデータセット{(x,y)}(i=1,…,N)から学習される。
 通常の学習では、y=arg maxk,θ(x)と正しく認識できるほど小さな値となるような損失関数l(x,y,θ)が設定され、(4)式の最適化によりθが求められる。なお、この損失関数はクロスエントロピーである。
Figure JPOXMLDOC01-appb-M000004
 一方、敵対的学習では、まず敵対的攻撃を各入力データに対して行う。すなわち、疑似的に敵対的攻撃を行った敵対的攻撃済みデータx´=x+δが作成される。δは攻撃によるノイズであり、ノルム等が制約されている。敵対的攻撃済みデータx´の作成方法は、ここで説明したものに限られない。
 敵対的学習では、敵対的攻撃済みデータx´を用いて、(5)式の最適化によりθが求められる。
Figure JPOXMLDOC01-appb-M000005
 これまでの説明を踏まえて、作成部132による損失関数の作成について説明する。
 モデルがデータを(3)式のlogitの大小で分類することから、(6)式のlogit margin loss lLM(・)は、データ(x,y)の分類の難しさを表していると考えられる。
Figure JPOXMLDOC01-appb-M000006
 ただし、zk,θ(x)は、logitであるzθ(x)のk番目の要素である。
 また、モデルに適当な滑らかさを仮定すれば、lLM(x,y,θ)が負の方向に大きいほど、敵対的攻撃済みデータx´に対してモデルは頑健であるといえる。そこで、(6)式に示す差を拡大し、頑健性を向上させるため、すなわちモデルをロバスト化するため、作成部132は、(7)式に示すような1対他損失(one-versus-the-rest loss)lOVRを用いて損失関数を作成する。
Figure JPOXMLDOC01-appb-M000007
 ここで、φは非負値の凸関数、かつ微分可能であり、z>0に対してφ(z)<φ(-z)とする。ここでは、φ(z)=log(1+e-z)((8)式の右辺第2項)とする。その場合、(7)式のlOVRは、(8)式のように表される。
Figure JPOXMLDOC01-appb-M000008
 作成部132は、データセットに含まれるデータ(入力データとラベルの組)のうち、敵対的攻撃に対するlogit margin lossであるlLM(x´)が大きい値を持つ上位H%のデータサンプルを敵対的攻撃に対して適用する。ただし、0<H<100であるものとする。
 データサンプルは、データセットに含まれる入力データに攻撃を行った敵対的攻撃済みデータx´と、入力データに対応付けられたラベルyの組である。データサンプルは複数あるものとする。これより、作成部132は、(9)式の損失関数を作成する。なお、(9)式の右辺の[]内の第1項はクロスエントロピーであり、第2項が敵対的攻撃に関する1対他損失である。
Figure JPOXMLDOC01-appb-M000009
 Sは、lLM(x´)が小さい値を持つ下位(100-H)%のデータサンプルの集合である。Lは、lLM(x´)が大きい値を持つ上位H%のデータサンプルの集合である。λは損失の重みを決める調整パラメータである。
 例えば、データサンプルの数が100であり、Hが20である場合を考える。作成部132は、100個のデータサンプルをlLM(x´)が大きい順にソートする。そして、作成部132は、ソートされたデータサンプルの先頭から20個目までのデータサンプルを取得し、集合Lに加える。また、作成部132は、ソートされたデータサンプルの21個目から100個目のデータサンプルを取得し、集合Sに加える。
 (9)式では、集合Sの損失をクロスエントロピーとしたが、これに限定されず、他の損失であってもよい。
 また、Stochastic gradient descent(SGD)のようなデータの一部(ミニバッチ)を用いるような最適化方法を用いる際には、ミニバッチの中でのlLM(・)の大きさを基に、上位H%のデータサンプルに対して1対他損失を適用して最適化を行う。
 更新部133は、(9)式が最適化(最小化)されるように、モデルのパラメータを更新する。
(TRADESと1対他損失の組み合わせ)
 非特許文献2のTRADESでは、同様に敵対的攻撃済みデータx´を用いて、(10)式の最適化によりθが求められる。
Figure JPOXMLDOC01-appb-M000010
 lCEは、クロスエントロピー損失である。また、KLはKL divergenceである。
 TRADESにより、敵対的攻撃済みデータが作成される場合、作成部132は、(11)式の損失関数を作成する。
Figure JPOXMLDOC01-appb-M000011
 (11)式の右辺の[]内の第3項は、pθ(k|x)=pθ(k|x+δ)0にならない点で、(10)式のKL divergenceとは異なる(ただし、最小ではある)。そのため、(11)式のβは、(10)式のTRADESのβとは異なる。
[第1の実施形態の処理]
 図4を用いて、学習装置10の処理の流れを説明する。図4は、第1の実施形態に係る学習処理の流れを示すフローチャートである。
 まず、図4に示すように、学習装置10は、データセットからランダムに選択された入力データを識別器に印可する(ステップS11)。識別器は、モデル情報121から構築されたモデルの一例である。識別器に印可される入力データは、敵対的攻撃済みデータであってもよい。
 次に、学習装置10は、識別器の出力、及びデータセットに含まれるラベルを基に、敵対的攻撃について、1対他損失を含む損失関数を作成する(ステップS12)。損失関数を作成する処理の詳細については後述する。
 そして、学習装置10は、損失関数の勾配を使って識別器のパラメータを更新する(ステップS13)。学習装置10は、誤差逆伝播法等の既知の手法によりパラメータを更新することができる。
 ここで、評価基準が満たされた場合(ステップS14、Yes)、学習装置10は処理を終了する。一方、評価基準が満たされていない場合(ステップS14、No)、学習装置10はステップS11に戻り処理を繰り返す。
 図5を用いて、損失関数を作成する処理(図4のステップS12)の流れを説明する。図5は、損失関数を作成する処理の流れを示すフローチャートである。
 図5に示すように、まず、学習装置10は、識別器に印可されたデータサンプルの中から、ランダムにいくつかのデータサンプルを選択する(ステップS121)。
 次に、学習装置10は、選ばれたデータサンプルに対して敵対的攻撃を作成する(ステップS122)。学習装置10は、x´=x+δのように敵対的攻撃を作成してもよいし、TRADESにより敵対的攻撃を作成してもよい。
 続いて、学習装置10は、生成された攻撃に対して1対他損失を計算する(ステップS123)。ここで、学習装置10は、1対他損失の大きな順にH%のデータサンプルの集合Lと、その他の集合Sを作成する(ステップS124)。
 そして、学習装置10は、集合Lの攻撃に対して1対他損失を計算し、その他の集合Sにはクロスエントロピーを適用し、1対他損失とクロスエントロピーの和を損失関数として作成する(ステップS125)。ここで作成された損失関数は、(9)式のようになる。
 これまで説明してきたように、計算部131は、入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算する。なお、ここでのスコアは、softmaxからの出力だけでなく、softmaxからの出力と大小関係が共通するlogitを含むものとする。敵対的攻撃済みデータは、例えばx´=x+δである。
 更新部133は、複数のラベルのうち、入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて計算部131が計算した不正解スコアの最大値と、正解ラベルについて計算部131が計算した正解スコアと、の差が大きい一定の割合の入力データについて、正解スコアと不正解スコアとの間の損失である1対他損失が小さくなるように、モデルのパラメータを更新する。
 不正解ラベルについて計算部131が計算した不正解スコアの最大値と、正解ラベルについて計算部131が計算した正解スコアと、の差は、例えば(6)式に示す通りである。また、一定の割合は、例えばH%である。また、敵対的攻撃済みデータについての1対他損失は、例えば(7)式及び(8)式に示す通りである。
 このように、敵対的攻撃に対し1対他損失を適用することで、敵対的攻撃に対するモデルの頑健性を向上させることができる。
 更新部133は、敵対的攻撃済みデータをモデルに入力した場合の1対他損失に加え、敵対的攻撃済みデータをモデルに入力した場合のKL divergenceを合わせた損失関数が小さくなるように、モデルのパラメータを更新する。この場合の損失関数は、例えば(10)式に示す通りである。
 このように、KL divergenceのような通常の損失と、1対他損失を同時に最適化することができる。
 更新部133は、敵対的攻撃済みデータをモデルに入力した場合の1対他損失に加え、入力データをモデルに入力した場合の1対他損失と、入力データをモデルに入力した場合のKL divergenceを合わせた損失関数が小さくなるように、モデルのパラメータを更新する。この場合の損失関数は、例えば(11)式に示す通りである。
 このように、本実施形態は、TRADESに適用することも可能である。
(推論装置について)
 推論装置は、学習装置10によって更新されたモデル情報121を用いて、計算部131と同じ処理を行う。推論装置、推論方法及び推論プログラムは、学習装置10の計算部131を用いて実現することができる。また、推論装置は、計算部131と同等の機能を有する学習装置10とは異なる装置によって実現されてもよい。
 推論装置として機能する学習装置10は、入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算し、複数のラベルのうち、入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて計算する処理で計算された不正解スコアの最大値と、正解ラベルについて計算する処理で計算された正解スコアと、の差が大きい一定の割合の入力データについて、正解スコアと不正解スコアとの間の損失である1対他損失が小さくなるようにパラメータが更新されたモデルを用いて、入力データに対する複数のラベルのスコアを計算する計算部131を有する。
[システム構成等]
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU(Central Processing Unit)及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。なお、プログラムは、CPUだけでなく、GPU等の他のプロセッサによって実行されてもよい。
 また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
 一実施形態として、学習装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の学習処理を実行する学習プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の学習プログラムを情報処理装置に実行させることにより、情報処理装置を学習装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
 また、学習装置10は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の学習処理に関するサービスを提供する学習サーバ装置として実装することもできる。例えば、学習サーバ装置は、学習用のデータを入力とし、学習済みのモデルのパラメータを出力とする学習サービスを提供するサーバ装置として実装される。この場合、学習サーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記の学習処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。
 図6は、学習プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、学習装置10の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、学習装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
 また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
 10 学習装置
 11 通信部
 12 記憶部
 13 制御部
 121 モデル情報
 131 計算部
 132 作成部
 133 更新部

Claims (8)

  1.  入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算する計算部と、
     前記複数のラベルのうち、前記入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて前記計算部が計算した不正解スコアの最大値と、前記正解ラベルについて前記計算部が計算した正解スコアと、の差が大きい一定の割合の前記入力データについて、前記正解スコアと前記不正解スコアとの間の損失である1対他損失が小さくなるように、前記モデルのパラメータを更新する更新部と、
     を有することを特徴とする学習装置。
  2.  前記更新部は、前記敵対的攻撃済みデータを前記モデルに入力した場合の前記1対他損失に加え、前記敵対的攻撃済みデータを前記モデルに入力した場合のKL divergenceを合わせた損失関数が小さくなるように、前記モデルのパラメータを更新することを特徴とする請求項1に記載の学習装置。
  3.  前記更新部は、前記敵対的攻撃済みデータを前記モデルに入力した場合の前記1対他損失に加え、前記入力データを前記モデルに入力した場合の1対他損失と、前記入力データを前記モデルに入力した場合のKL divergenceを合わせた損失関数が小さくなるように、前記モデルのパラメータを更新することを特徴とする請求項1に記載の学習装置。
  4.  学習装置によって実行される学習方法であって、
     入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算する計算工程と、
     前記複数のラベルのうち、前記入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて前記計算工程が計算した不正解スコアの最大値と、前記正解ラベルについて前記計算工程が計算した正解スコアと、の差が大きい一定の割合の前記入力データについて、前記正解スコアと前記不正解スコアとの間の損失である1対他損失が小さくなるように、前記モデルのパラメータを更新する更新工程と、
     を含むことを特徴とする学習方法。
  5.  入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算する計算ステップと、
     前記複数のラベルのうち、前記入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて前記計算ステップが計算した不正解スコアの最大値と、前記正解ラベルについて前記計算ステップが計算した正解スコアと、の差が大きい一定の割合の前記入力データについて、前記正解スコアと前記不正解スコアとの間の損失である1対他損失が小さくなるように、前記モデルのパラメータを更新する更新ステップと、
     をコンピュータに実行させることを特徴とする学習プログラム。
  6.  入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算し、前記複数のラベルのうち、前記入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて前記計算する処理で計算された不正解スコアの最大値と、前記正解ラベルについて前記計算する処理で計算された正解スコアと、の差が大きい一定の割合の前記入力データについて、前記正解スコアと前記不正解スコアとの間の損失である1対他損失が小さくなるようにパラメータが更新された前記モデルを用いて、
     入力データに対する前記複数のラベルのスコアを計算する計算部を有することを特徴とする推論装置。
  7.  推論装置によって実行される推論方法であって、
     入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算し、前記複数のラベルのうち、前記入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて前記計算する処理で計算された不正解スコアの最大値と、前記正解ラベルについて前記計算する処理で計算された正解スコアと、の差が大きい一定の割合の前記入力データについて、前記正解スコアと前記不正解スコアとの間の損失である1対他損失が小さくなるようにパラメータが更新された前記モデルを用いて、
     入力データに対する前記複数のラベルのスコアを計算する計算工程を含むことを特徴とする推論方法。
  8.  入力データに疑似的に敵対的攻撃を行った敵対的攻撃済みデータをモデルに入力し、複数のラベルのそれぞれに対するスコアを計算し、前記複数のラベルのうち、前記入力データとあらかじめ対応付けられたラベルである正解ラベル以外のラベルである不正解ラベルについて前記計算する処理で計算された不正解スコアの最大値と、前記正解ラベルについて前記計算する処理で計算された正解スコアと、の差が大きい一定の割合の前記入力データについて、前記正解スコアと前記不正解スコアとの間の損失である1対他損失が小さくなるようにパラメータが更新された前記モデルを用いて、
     入力データに対する前記複数のラベルのスコアを計算する計算ステップをコンピュータに実行させることを特徴とする推論プログラム。
PCT/JP2022/027626 2022-07-13 2022-07-13 学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラム WO2024013911A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/027626 WO2024013911A1 (ja) 2022-07-13 2022-07-13 学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/027626 WO2024013911A1 (ja) 2022-07-13 2022-07-13 学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラム

Publications (1)

Publication Number Publication Date
WO2024013911A1 true WO2024013911A1 (ja) 2024-01-18

Family

ID=89536149

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/027626 WO2024013911A1 (ja) 2022-07-13 2022-07-13 学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラム

Country Status (1)

Country Link
WO (1) WO2024013911A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200134468A1 (en) * 2018-10-26 2020-04-30 Royal Bank Of Canada System and method for max-margin adversarial training
JP2021111232A (ja) * 2020-01-14 2021-08-02 富士通株式会社 学習用データ生成プログラム、装置、及び方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200134468A1 (en) * 2018-10-26 2020-04-30 Royal Bank Of Canada System and method for max-margin adversarial training
JP2021111232A (ja) * 2020-01-14 2021-08-02 富士通株式会社 学習用データ生成プログラム、装置、及び方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KANAI SEKITOSHI; YAMADA MASANORI; YAMAGUCHI SHIN'YA; TAKAHASHI HIROSHI; IDA YASUTOSHI: "Constraining Logits by Bounded Function for Adversarial Robustness", 2021 INTERNATIONAL JOINT CONFERENCE ON NEURAL NETWORKS (IJCNN), IEEE, 18 July 2021 (2021-07-18), pages 1 - 8, XP033975171, DOI: 10.1109/IJCNN52387.2021.9533777 *

Similar Documents

Publication Publication Date Title
US11829880B2 (en) Generating trained neural networks with increased robustness against adversarial attacks
JP2019028839A (ja) 分類器、分類器の学習方法、分類器における分類方法
Aydin et al. Learning sparse models for a dynamic Bayesian network classifier of protein secondary structure
US7778949B2 (en) Method and apparatus for transductive support vector machines
JP6870508B2 (ja) 学習プログラム、学習方法及び学習装置
EP4092555A1 (en) Control method, information processing device, and control program
US20240028898A1 (en) Interpreting convolutional sequence model by learning local and resolution-controllable prototypes
US12020160B2 (en) Generation of neural network containing middle layer background
CN115699041A (zh) 利用专家模型的可扩展迁移学习
Chandak et al. A comparison of word2vec, hmm2vec, and pca2vec for malware classification
US11914672B2 (en) Method of neural architecture search using continuous action reinforcement learning
Ahmed Wrapper feature selection approach based on binary firefly algorithm for spam E-mail filtering
Wu et al. Efficient project gradient descent for ensemble adversarial attack
Chen et al. Stability-based preference selection in affinity propagation
WO2024013911A1 (ja) 学習装置、学習方法、学習プログラム、推論装置、推論方法、及び推論プログラム
Garg et al. Kernelized hashcode representations for relation extraction
Ko et al. Single Classifier-based Multiple Classification Scheme for weak classifiers: An experimental comparison
Bacciu Hidden tree markov networks: Deep and wide learning for structured data
Ramaswamy et al. A Framework for Provably Stable and Consistent Training of Deep Feedforward Networks
WO2022249327A1 (ja) 学習装置、学習方法及び学習プログラム
Koeman et al. Mutual information estimation with random forests
Bouzas et al. Optimizing subclass discriminant error correcting output codes using particle swarm optimization
US20230267316A1 (en) Inference method, training method, inference device, training device, and program
WO2021210042A1 (ja) 学習装置、分類装置、学習方法、分類方法、および、プログラム
Berta et al. Classifier calibration with ROC-regularized isotonic regression

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: 22951125

Country of ref document: EP

Kind code of ref document: A1