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

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

Info

Publication number
WO2020235011A1
WO2020235011A1 PCT/JP2019/020160 JP2019020160W WO2020235011A1 WO 2020235011 A1 WO2020235011 A1 WO 2020235011A1 JP 2019020160 W JP2019020160 W JP 2019020160W WO 2020235011 A1 WO2020235011 A1 WO 2020235011A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
model
neural network
convolutional neural
sum
Prior art date
Application number
PCT/JP2019/020160
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/JP2019/020160 priority Critical patent/WO2020235011A1/ja
Publication of WO2020235011A1 publication Critical patent/WO2020235011A1/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, and a learning program.
  • Deep learning and deep neural networks have been very successful in image recognition and voice recognition (see, for example, Non-Patent Document 1).
  • image recognition using deep learning when an image is input to a model containing many non-linear functions of deep learning, a classification result of what the image reflects is output.
  • convolutional neural networks and ReLU Rectified Linear Unit
  • Non-Patent Document 2 if a malicious attacker adds the optimum noise to the input image, the deep learning can be easily misclassified with a small noise. This is called a hostile attack, and attack methods such as FGSM (Fast Gradient Sign Method) and PGD (Projected Gradient Descent) have been reported (see, for example, Non-Patent Documents 3 and 4).
  • FGSM Fast Gradient Sign Method
  • PGD Projected Gradient Descent
  • the present invention has been made in view of the above, and an object of the present invention is to provide a learning device, a learning method, and a learning program that realize a model that is robust against hostile attacks.
  • the learning device has a loss function for evaluating the relationship between the training data and the output of the model to which the convolutional neural network is applied, and the convolution of the convolutional neural network. It is characterized by having a learning unit that updates the parameters of the model so as to minimize the objective function, which is the sum of the sum of the elements of the layer filter with the absolute value.
  • FIG. 1 is a diagram illustrating a deep learning model.
  • FIG. 2 is a flowchart showing a processing procedure of the learning process of the conventional classifier.
  • FIG. 3 is a block diagram showing an example of the configuration of the learning device according to the embodiment.
  • FIG. 4 is a flowchart showing a processing procedure of the learning process in the embodiment.
  • FIG. 5 is a diagram showing an example of a computer in which a learning device is realized by executing a program.
  • A when A is a vector, it is described as “vector A”, when A is a matrix, for example, it is described as “matrix A”, and when A is a scalar, for example, it is simply “". Notated as “A”. Further, for example, the function f of the vector A is expressed as f (vector A). Further, when "-A" is described for A which is a vector, a matrix or a scalar, it is considered to be equivalent to "a symbol in which"-"is written immediately above” A "”. Also, for A, which is a vector or matrix, AT represents the transpose of A.
  • FIG. 1 is a diagram illustrating a deep learning model.
  • the deep learning model converts the input layer into which signals enter, one or more intermediate layers that variously convert signals from the input layers, and the signals of the intermediate layers into outputs such as probabilities. It consists of an output layer.
  • Input data is input to the input layer.
  • the probability of each class is output from the output layer.
  • the input data is image data expressed in a predetermined format.
  • the output layer shows the probability that the image that is the source of the input data is a car, the probability that it is a ship, and so on.
  • the probability of being a dog and the probability of being a cat are output respectively.
  • FIG. 2 is a flowchart showing a processing procedure of the learning process of the conventional classifier.
  • an input and a label are randomly selected from a data set prepared in advance, and the input is applied to the classification unit (step S1). Then, in the conventional learning process, the output of the classification unit is calculated, and the loss function is calculated using the output and the label of the data set (step S2).
  • step S3 learning is performed so that the calculated loss function becomes smaller, and the parameters of the classification unit are updated using the gradient of the loss function (step S3).
  • the loss function usually sets a function that becomes smaller so that the output of the classifier matches the label, which allows the classifier to classify the label of the input.
  • step S4 determines whether or not the separately prepared data set can be correctly classified.
  • step S4: No the process returns to step S1 to continue learning, and if the evaluation criteria are satisfied (step S4: Yes), the learning is terminated.
  • the output f (x, theta) of the model of deep learning ⁇ R M represents a score for each label, the elements of the output with the highest score obtained by the equation (1) it is, in the recognition result of deep study is there.
  • f and ⁇ are represented by column vectors.
  • Image recognition is one of the classifications, and f for classification is called a classifier.
  • the matrix K [k 0 T , k 1 T , ⁇ , k n-1 T ] T
  • the column vector k i [ki i, 0 , ki , 1 , 1 , ⁇ , k i, n-1 ]
  • the matrix A is a double circulant matrix called Eq. (6).
  • Circ in equation (6) (k i) is a cyclic matrix shown in Equation (7).
  • the above-mentioned convolutional layer is regarded as a matrix, and the fact that the input of the convolutional layer is 0 or more after passing through ReLU is utilized, and the model is constrained by the matrix of this convolutional layer. Let them learn.
  • the fact that the input of the convolution layer is 0 or more is utilized, and considering the optimization shown in the equation (8), the equation (8) has a positive value in the input 1. It can be used as an index to measure the amount of change in the output of the convolution layer when the noise is added.
  • the objective function at the time of learning is the function shown in the equation (9).
  • is all the parameters of the model.
  • the matrix K (i) is a filter of the i-th convolution layer of the model.
  • the matrix K (i) is included in ⁇ .
  • is a parameter for adjusting the weights of the first term and the second term of the equation (9).
  • the first term of equation (9) is a loss function that evaluates the relationship between the training data and the output of the model.
  • the second term of equation (9) is the absolute value of the sum of the filter elements of the convolutional layer of the convolutional neural network. Therefore, equation (9) is an equation showing the sum of the loss function for evaluating the relationship between the training data and the output of the model and the absolute value of the sum of the filter elements of the convolutional layer of the convolutional neural network.
  • the proximity gradient method is used as the solution of the equation (9).
  • the parameter ⁇ is updated by the equation (3) as usual, and then the calculation shown in the equation (10) is performed.
  • the parameters of the model are optimized by repeating the calculation of the equation (3) and the calculation of the equation (10) until the evaluation criteria are satisfied by the model.
  • FIG. 3 is a block diagram showing an example of the configuration of the learning device according to the embodiment.
  • a predetermined program is read into a computer or the like including a ROM (Read Only Memory), a RAM (Random Access Memory), a CPU (Central Processing Unit), and the CPU executes the predetermined program. It is realized by doing.
  • the learning device 10 has a NIC (Network Interface Card) or the like, and can communicate with other devices via a telecommunication line such as a LAN (Local Area Network) or the Internet.
  • NIC Network Interface Card
  • the learning device 10 has a classification unit 11 and a learning unit 12.
  • the classification unit 11 has a model 111 which is a deep learning model.
  • the classification unit 11 classifies the classes using the model 111.
  • the model 111 is a model for classifying and is a model to which a convolutional neural network is applied.
  • the classification unit 11 inputs the input data to the input layer of the convolutional neural network, and outputs the probabilities of each class from the output layer of the convolutional network.
  • the learning unit 12 trains the learning data in the model and optimizes the parameters of the model 111.
  • the learning unit 12 may use not only the labeled data set but also the unlabeled data set as the learning data.
  • the learning unit 12 is an objective function (Equation (9)) which is the sum of the loss function for evaluating the relationship between the training data and the output of the model 111 and the absolute value of the sum of the filter elements of the convolutional layer of the convolutional neural network. Update model 111 parameters to minimize).
  • the learning unit 12 calculates the gradient of the loss function, updates the parameter ⁇ of the model 111 using the equation (3) based on the calculation result, and uses the proximity gradient method for the objective function. Then, the process of constraining the sum size of the filter elements of the convolutional layer of the convolutional neural network is performed.
  • the constraint processing is the calculation processing shown in the equation (10).
  • the learning unit 12 performs a process of updating the parameter ⁇ of the model 111 using the equation (3) until the model 111 satisfies the evaluation criteria, and calculates the equation (10) to be an element of the filter of the convolutional layer of the convolutional neural network.
  • the parameters of the model are optimized by iteratively performing the process of constraining the size of the sum of.
  • FIG. 4 is a flowchart showing a processing procedure of the learning process in the embodiment.
  • the learning unit 12 randomly selects an input and a label from the data set prepared in advance, and applies the input to the model 111 (step S11).
  • the learning unit 12 calculates the output of the model 111, and calculates the loss function L using the calculated output and the label of the data set (step S12).
  • the learning unit 12 applies the gradient of the loss function L to the equation (3), and updates the parameter ⁇ of the model 111 of the classification unit 11 (step S13). Then, the learning unit 12 performs the calculation of the equation (10) for all the convolution layers in the model 111 (step S14).
  • the learning unit 12 uses the evaluation criteria such as whether or not the separately prepared data set can be correctly classified. When the learning unit 12 determines that the evaluation criteria are not satisfied (step S15: No), the learning unit 12 returns to step S11 and continues learning. On the other hand, when the learning unit 12 determines that the evaluation criteria are satisfied (step S15: Yes), the learning unit 12 ends the learning.
  • the learning device 10 is an objective function which is the sum of the loss function for evaluating the relationship between the training data and the output of the model 111 and the absolute value of the sum of the filter elements of the convolutional layer of the convolutional neural network. Update the parameters of model 111 to minimize. Specifically, the learning device 10 calculates the gradient of the loss function, updates the parameters of the model based on the calculation result, and uses the proximity gradient method for the objective function to use the convolutional layer of the convolutional neural network. Performs processing that constrains the size of the sum of the elements of the filter.
  • the learning device 10 performs a process of constraining the sum size of the filter elements of the convolutional layer of the convolutional neural network. Therefore, the learning device 10 can suppress the amount of change in the output of the convolution layer even when a noise of 1 is included in all the elements as shown in the equation (8). Therefore, according to the learning device 10, a robust model can be realized even if noise such as a hostile attack is added, and misclassification can be reduced.
  • Each component of the learning device 10 shown in FIG. 3 is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific form of the distribution and integration of the functions of the learning device 10 is not limited to the one shown in the figure, and all or part of the learning device 10 may be functionally or physically in an arbitrary unit according to various loads and usage conditions. Can be distributed or integrated into.
  • each process performed by the learning device 10 may be realized by a CPU and a program in which an arbitrary part is analyzed and executed by the CPU. Further, each process performed by the learning device 10 may be realized as hardware by wired logic.
  • FIG. 5 is a diagram showing an example of a computer in which the learning device 10 is realized by executing a program.
  • the computer 1000 has, for example, a memory 1010 and a CPU 1020.
  • the computer 1000 also has 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. Each of these parts is connected by a bus 1080.
  • Memory 1010 includes ROM 1011 and RAM 1012.
  • the ROM 1011 stores, for example, a boot program such as a BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • the hard disk drive interface 1030 is connected to the hard disk drive 1090.
  • the disk drive interface 1040 is connected to the disk drive 1100.
  • a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1100.
  • the serial port interface 1050 is connected to, for example, a mouse 1110 and a keyboard 1120.
  • the video adapter 1060 is connected to, for example, the display 1130.
  • the hard disk drive 1090 stores, for example, OS1091, application program 1092, program module 1093, and program data 1094. That is, the program that defines each process of the learning device 10 is implemented as a program module 1093 in which a code that can be executed by the computer 1000 is described.
  • the program module 1093 is stored in, for example, the hard disk drive 1090.
  • the program module 1093 for executing the same processing as the functional configuration in 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 above-described embodiment is stored as program data 1094 in, for example, a memory 1010 or a hard disk drive 1090. Then, the CPU 1020 reads the program module 1093 and the program data 1094 stored in the memory 1010 and the hard disk drive 1090 into the RAM 1012 and executes them as needed.
  • the program module 1093 and the program data 1094 are not limited to the case where they are stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, 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.). Then, the program module 1093 and the program data 1094 may 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)
  • Image Analysis (AREA)

Abstract

学習装置(10)は、学習用データと畳み込みニューラルネットワークを適用したモデル(111)の出力との関係を評価する損失関数と、畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の絶対値との和である目的関数を最小化するようにモデルのパラメータを更新する学習部(12)を有する。

Description

学習装置、学習方法及び学習プログラム
 本発明は、学習装置、学習方法及び学習プログラムに関する。
 深層学習、ディープニューラルネットワークは、画像認識や音声認識などで大きな成功を収めている(例えば、非特許文献1参照)。例えば、深層学習を使った画像認識では、深層学習の多数の非線形関数を含んだモデルに画像を入力すると、その画像が何を写しているのかという分類結果を出力する。特に、畳み込みニューラルネットワークとReLU(Rectified Linear Unit)とは、画像認識において頻繁に使用される技術である。
 しかしながら、悪意ある攻撃者が、モデルに最適なノイズを入力画像に加えると、小さなノイズで簡単に深層学習を誤分類させることができる(例えば、非特許文献2参照)。これは、敵対的攻撃と呼ばれており、FGSM(Fast Gradient Sign Method)やPGD(Projected Gradient Descent)などの攻撃方法が報告されている(例えば、非特許文献3,4参照)。畳み込みニューラルネットワークに対しては、フーリエ基底からなるノイズによって、モデルの情報なしに攻撃する方法が報告されている(例えば、非特許文献6参照)。
Ian Goodfellow, Yoshua Bengio, and Aaron Courville, "Deep Learning", MIT press, 2016. Christian Szegedy, et al, "Intriguing properties of neural networks", arXiv preprint: 1312. 6199, 2013. Ian J. Goodfellow, et al., "EXPLAINING AND HARNESSING ADVERSARIAL EXAMPLES", arXiv preprint: 1412.6572, 2014. Aleksander Madry, et al., "Towards Deep Learning Models Resistant to Adversarial Attacks", arXiv preprint: 1706.06083, 2017. Dimitris Tsipras, et al., "Robustness May Be at Odds with Accuracy", arXiv preprint: 1805.12152, 2018. Yusuke Tsuzuku, and Issei Sato, "On the Structural Sensitivity of Deep Convolutional Networks to the Directions of Fourier Basis Functions", arXiv preprint arXiv:1809.04098 (2018).
 このように、畳み込みニューラルネットワークを適用したモデルが敵対的攻撃に脆弱であり、誤分類してしまうという問題があった。
 本発明は、上記に鑑みてなされたものであって、敵対的攻撃にロバストなモデルを実現する学習装置、学習方法及び学習プログラムを提供することを目的とする。
 上述した課題を解決し、目的を達成するために、本発明に係る学習装置は、学習用データと畳み込みニューラルネットワークを適用したモデルの出力との関係を評価する損失関数と、畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の絶対値との和である目的関数を最小化するようにモデルのパラメータを更新する学習部を有することを特徴とする。
 本発明によれば、敵対的攻撃にロバストなモデルを実現することができる。
図1は、深層学習モデルを説明する図である。 図2は、従来の分類器の学習処理の処理手順を示すフローチャートである。 図3は、実施の形態に係る学習装置の構成の一例を示すブロック図である。 図4は、実施の形態における学習処理の処理手順を示すフローチャートである。 図5は、プログラムが実行されることにより、学習装置が実現されるコンピュータの一例を示す図である。
 以下、図面を参照して、本発明の一実施の形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
 なお、以下では、例えばAがベクトルである場合には“ベクトルA”と表記し、例えばAが行列である場合には“行列A”と表記し、例えばAがスカラーである場合には単に“A”と表記する。また、例えばベクトルAの関数fは、f(ベクトルA)と表記する。また、ベクトル、行列又はスカラーであるAに対し、“-A”と記載する場合は「“A”の直上に“-”が記された記号」と同等であるとする。また、ベクトル又は行列であるAに対し、AはAの転置を表す。
[深層学習モデル]
 まず、深層学習モデルについて説明する。図1は、深層学習モデルを説明する図である。図1に示すように、深層学習のモデルは信号の入る入力層、入力層からの信号を様々に変換する1層または複数の中間層、及び、中間層の信号を確率などの出力に変換する出力層からなる。
 入力層には入力データが入力される。また、出力層からは各クラスの確率が出力される。例えば、入力データは、所定の形式で表現された画像データである。また、例えば、クラスが車、船、犬、猫についてそれぞれ設定されている場合、出力層からは、入力データの元になった画像に写っているものが車である確率、船である確率、犬である確率及び猫である確率がそれぞれ出力される。
[従来の分類器の学習方法]
 深層学習モデルを有する分類器(分類部)の従来の学習について説明する。図2は、従来の分類器の学習処理の処理手順を示すフローチャートである。
 図2に示すように、従来の学習処理では、予め用意したデータセットからランダムに入力とラベルとを選択し、分類部に入力を印加する(ステップS1)。そして、従来の学習処理では、分類部の出力を計算し、その出力とデータセットのラベルとを使用して損失関数を計算する(ステップS2)。
 従来の学習処理では、計算される損失関数が小さくなるように学習し、損失関数の勾配を使って分類部のパラメータを更新する(ステップS3)。損失関数は、通常、分類部の出力とラベルとが一致するほど小さくなる関数を設定するため、これにより分類部が入力のラベルを分類できるようになる。
 そして、従来の学習処理では、別途用意したデータセットを正しく分類できるかどうかなどを評価基準とする。従来の学習処理では、評価基準を満たさない場合には(ステップS4:No)、ステップS1に戻り学習を継続し、評価基準を満たす場合には(ステップS4:Yes)、学習を終了する。
[深層学習による画像認識]
 分類処理の一例として、深層学習による画像認識処理について説明する。ここで、深層学習において、画像x∈RC×H×Wを認識し、M個のラベルから、その画像のラベルyを求める問題を考える。ここで、xは三次元の配列で表され、Rは行列で表される。Cは画像のチャネル(RGB式の場合は3チャネル)、Hは縦の大きさ、Wは横の大きさとする。
 このとき、深層学習のモデルの出力f(x,θ)∈Rは、各ラベルに対するスコアを表し、式(1)によって得られる最も大きなスコアを持つ出力の要素が、深層学習の認識結果である。ここで、f,θは、列ベクトルで表される。
Figure JPOXMLDOC01-appb-M000001
 画像認識は、クラス分類の一つであり、分類を行うfを分類器と呼ぶ。ここで、θは、深層学習のモデルのパラメータであり、このパラメータは、事前に用意したN個のデータセット{(x,y)},i=1,・・・,Nから学習する。この学習では、クロスエントロピーなどの、y=max(x)と正しく認識できるほど小さな値となるような損失関数L(x,y,θ)を設定し、式(2)に示す最適化を行ってθを求める。
Figure JPOXMLDOC01-appb-M000002
 最適化では、データから(x,y)をサンプリングしながら、損失関数の勾配δL(x,y,θ)/δθを計算し、式(3)の計算を繰り返して行う。ここで、ηは、学習率と呼ばれるパラメータである。
Figure JPOXMLDOC01-appb-M000003
[敵対的攻撃]
 深層学習の認識は脆弱性を持っており、敵対的攻撃によって誤認識させることができる。敵対的攻撃は、式(4)に示す最適化問題で定式化される。
Figure JPOXMLDOC01-appb-M000004
 ||・||はlノルムであり、pとしてp=2やp=∞が主に用いられる。これは誤って認識する最もノルムの小さなノイズを求めるという問題であり、FGSMやPGDなどのモデルの勾配を使った攻撃方法が提案されている。
[畳み込み層と巡回行列、ReLU]
 行列X∈Rn×nを畳み込み層への一つのチャンネルの入力とし、行列Y∈Rn×nを出力とする。また、行列K∈Rn×nを畳み込み層のフィルタ行列とする。なお、行列Kのサイズがh×hである場合は、適当に0をパディングしてn×n行列とする。ここで、行列K=[k ,k ,・・・,kn-1 であり、列ベクトルk=[ki,0,ki,1,・・・,ki,n-1∈Rとする。畳み込み層のフィルタKによる計算は、行列演算を用いて、式(5)として計算できる。
Figure JPOXMLDOC01-appb-M000005
 ここで、列ベクトルx=vec(X)と、列ベクトルy=vec(Y)は、行列XとYとをベクトルとなるように並び替えたものとする。行列Aは、式(6)という二重の巡回行列である。
Figure JPOXMLDOC01-appb-M000006
 式(6)におけるcirc(k)は、式(7)に示す巡回行列である。
Figure JPOXMLDOC01-appb-M000007
 画像認識では、ReLUという関数がよく用いられる。ReLUは、ReLU(x)=max(0,x)という関数であり、出力は、必ず0以上となる。
[モデルの学習]
 本実施の形態では、前述の畳み込み層を行列とみなし、かつ、畳み込み層の入力がReLUを通した後で0以上であるということを利用し、この畳み込み層の行列に制約をかけてモデルを学習させる。
 具体的には、本実施の形態では、畳み込み層の入力が0以上ということを利用し、式(8)に示す最適化を考えると、式(8)は、入力に正の値をもつ1というノイズが加わった際の畳み込み層の出力の変化量を測る指標とすることができる。
Figure JPOXMLDOC01-appb-M000008
 このため、式(8)の大きさを制約すれば、畳み込み層の入力ノイズの影響を抑えられると考えられる。そこで、本実施の形態では、学習時の目的関数を、式(9)に示す関数とする。
Figure JPOXMLDOC01-appb-M000009
 ここで、θは、モデルの持つ全パラメータである。行列K(i)は、モデルのi番目の畳み込み層のフィルタである。行列K(i)は、θに含まれる。λは、式(9)の第一項と第二項との重みを調整するパラメータである。式(9)の第一項は、学習用データとモデルの出力との関係を評価する損失関数である。式(9)の第二項は、畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の絶対値である。このため、式(9)は、学習用データとモデルの出力との関係を評価する損失関数と、畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の絶対値との和を示す式である。
 次に、式(9)の解法について説明する。本実施の形態では、式(9)の解法として、近接勾配法を用いる。ここで、簡単のため、-kを、-k=[k ,k ,・・・,kn-1 とする。本実施の形態では、モデルに対する学習処理として、通常通り式(3)でパラメータθを更新したあと、式(10)に示す計算を行う。
Figure JPOXMLDOC01-appb-M000010
 実施の形態では、この式(10)に示す計算の後に、再び式(3)の計算と、式(10)の計算とを繰り返す。実施の形態では、評価基準をモデルが満たすまで、式(3)の計算と、式(10)の計算とを反復して行うことによって、モデルのパラメータを最適化する。
[学習装置]
 次に、実施の形態に係る学習装置について説明する。図3は、実施の形態に係る学習装置の構成の一例を示すブロック図である。図3に示す学習装置10は、ROM(Read Only Memory)、RAM(Random Access Memory)、CPU(Central Processing Unit)等を含むコンピュータ等に所定のプログラムが読み込まれて、CPUが所定のプログラムを実行することで実現される。また、学習装置10は、NIC(Network Interface Card)等を有し、LAN(Local Area Network)やインターネットなどの電気通信回線を介した他の装置との間の通信を行うことも可能である。
 学習装置10は、分類部11と学習部12とを有する。分類部11は、深層学習モデルであるモデル111を有する。
 分類部11は、モデル111を用いてクラス分類を行う。モデル111は、クラス分類を行うモデルであって、畳み込みニューラルネットワークを適用したモデルである。分類部11は、入力データを畳み込みニューラルネットワークの入力層に入力し、畳み込みネットワークの出力層から、各クラスの確率を出力する。
 学習部12は、学習用データをモデルに学習させ、モデル111のパラメータを最適化する。学習部12は、学習用データとして、ラベル有りデータセットに限らず、ラベル無しデータセットを用いてもよい。
 学習部12は、学習用データとモデル111の出力との関係を評価する損失関数と、畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の絶対値との和である目的関数(式(9)参照)を最小化するようにモデル111のパラメータを更新する。
 具体的には、学習部12は、損失関数の勾配を計算し、計算結果を基に式(3)を用いてモデル111のパラメータθを更新する処理と、目的関数に対し近接勾配法を用いて、畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の大きさを制約する処理とを行う。制約する処理は、式(10)に示す計算処理である。学習部12は、評価基準をモデル111が満たすまで、式(3)を用いてモデル111のパラメータθを更新する処理と、式(10)を計算して畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の大きさを制約する処理と、を、反復して行うことによって、モデルのパラメータを最適化する。
[学習処理]
 次に、学習装置10のモデル111に対する学習処理について説明する。図4は、実施の形態における学習処理の処理手順を示すフローチャートである。
 図4に示すように、学習部12は、予め用意したデータセットからランダムに入力とラベルとを選択し、モデル111に入力を印加する(ステップS11)。学習部12は、モデル111の出力を計算し、計算した出力とデータセットのラベルを使用して損失関数Lを計算する(ステップS12)。
 続いて、学習部12は、損失関数Lの勾配を式(3)に適用し、分類部11のモデル111のパラメータθを更新する(ステップS13)。そして、学習部12は、モデル111内の畳み込み層全てについて、式(10)の計算を実施する(ステップS14)。
 学習部12は、別途用意したデータセットを正しく分類できるかどうかなどを評価基準とする。学習部12は、評価基準を満たさないと判定した場合(ステップS15:No)、ステップS11に戻り学習を継続する。一方、学習部12は、評価基準を満たすと判定した場合(ステップS15:Yes)、学習を終了する。
[実施の形態の効果]
 以上のように、学習装置10は、学習用データとモデル111の出力との関係を評価する損失関数と、畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の絶対値との和である目的関数を最小化するようにモデル111のパラメータを更新する。具体的には、学習装置10は、損失関数の勾配を計算し、計算結果を基に前記モデルのパラメータを更新する処理と、目的関数に対し近接勾配法を用いて、畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の大きさを制約する処理とを行う。
 このように、学習装置10は、畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の大きさを制約する処理を行う。このため、学習装置10は、式(8)に示すような全要素が1のノイズが入った場合であっても、畳み込み層の出力の変化量を抑えることができる。したがって、学習装置10によれば、敵対的攻撃のようなノイズが加わってもロバストなモデルを実現でき、誤分類を低減することが可能になる。
[実施形態のシステム構成について]
 図3に示した学習装置10の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、学習装置10の機能の分散および統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。
 また、学習装置10においておこなわれる各処理は、全部または任意の一部が、CPUおよびCPUにより解析実行されるプログラムにて実現されてもよい。また、学習装置10においておこなわれる各処理は、ワイヤードロジックによるハードウェアとして実現されてもよい。
 また、実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともできる。もしくは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述および図示の処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて適宜変更することができる。
[プログラム]
 図5は、プログラムが実行されることにより、学習装置10が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、学習装置10の各処理を規定するプログラムは、コンピュータ1000により実行可能なコードが記述されたプログラムモジュール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 学習部
 111 モデル

Claims (5)

  1.  学習用データと畳み込みニューラルネットワークを適用したモデルの出力との関係を評価する損失関数と、前記畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の絶対値との和である目的関数を最小化するように前記モデルのパラメータを更新する学習部
     を有する学習装置。
  2.  前記学習部は、前記損失関数の勾配を計算し、計算結果を基に前記モデルのパラメータを更新し、前記目的関数に対し近接勾配法を用いて前記要素の和の大きさを制約することを特徴とする請求項1に記載の学習装置。
  3.  前記モデルを用いて、クラス分類を行う分類部であって、入力データを前記畳み込みニューラルネットワークの入力層に入力し、前記畳み込みニューラルネットワークの出力層から、各クラスの確率を出力する分類部をさらに有することを特徴とする請求項1または2に記載の学習装置。
  4.  学習装置が実行する学習方法であって、
     学習用データと畳み込みニューラルネットワークを適用したモデルの出力との関係を評価する損失関数と、前記畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の絶対値との和である目的関数を最小化するように前記モデルのパラメータを更新する工程
     を含んだことを特徴とする学習方法。
  5.  学習用データと畳み込みニューラルネットワークを適用したモデルの出力との関係を評価する損失関数と、前記畳み込みニューラルネットワークの畳み込み層のフィルタの要素の和の絶対値との和である目的関数を最小化するように前記モデルのパラメータを更新するステップ
     をコンピュータに実行させることを特徴とする学習プログラム。
PCT/JP2019/020160 2019-05-21 2019-05-21 学習装置、学習方法及び学習プログラム WO2020235011A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/020160 WO2020235011A1 (ja) 2019-05-21 2019-05-21 学習装置、学習方法及び学習プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/020160 WO2020235011A1 (ja) 2019-05-21 2019-05-21 学習装置、学習方法及び学習プログラム

Publications (1)

Publication Number Publication Date
WO2020235011A1 true WO2020235011A1 (ja) 2020-11-26

Family

ID=73459348

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/020160 WO2020235011A1 (ja) 2019-05-21 2019-05-21 学習装置、学習方法及び学習プログラム

Country Status (1)

Country Link
WO (1) WO2020235011A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022249327A1 (ja) * 2021-05-26 2022-12-01 日本電信電話株式会社 学習装置、学習方法及び学習プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017525038A (ja) * 2014-07-16 2017-08-31 クゥアルコム・インコーポレイテッドQualcomm Incorporated ニューラルネットワークにおける畳込み演算の分解
WO2017168922A1 (ja) * 2016-03-31 2017-10-05 ソニー株式会社 情報処理装置、情報処理方法および情報提供方法
JP2019045905A (ja) * 2017-08-29 2019-03-22 学校法人早稲田大学 挙動予測システム及び挙動予測方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017525038A (ja) * 2014-07-16 2017-08-31 クゥアルコム・インコーポレイテッドQualcomm Incorporated ニューラルネットワークにおける畳込み演算の分解
WO2017168922A1 (ja) * 2016-03-31 2017-10-05 ソニー株式会社 情報処理装置、情報処理方法および情報提供方法
JP2019045905A (ja) * 2017-08-29 2019-03-22 学校法人早稲田大学 挙動予測システム及び挙動予測方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DUCHI, JOHN: "Efficient Online and Batch Learning Using Forward Backward Splitting", JOURNAL OF MACHINE LEARNING RESEARCH, vol. 10, 16 July 2019 (2019-07-16), pages 2899 - 2934, XP058264302, Retrieved from the Internet <URL:http://www.jmlr.org/papers/volume10/duchi09a/duchi09a.pdf> *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022249327A1 (ja) * 2021-05-26 2022-12-01 日本電信電話株式会社 学習装置、学習方法及び学習プログラム

Similar Documents

Publication Publication Date Title
JP6741357B2 (ja) マルチ関連ラベルを生成する方法及びシステム
CN111552807B (zh) 一种短文本多标签分类方法
US8644561B2 (en) License plate optical character recognition method and system
JP2019028839A (ja) 分類器、分類器の学習方法、分類器における分類方法
JP2021093150A (ja) 混合時間ドメイン適応による動画アクション・セグメンテーション
US10970313B2 (en) Clustering device, clustering method, and computer program product
CN107943856A (zh) 一种基于扩充标记样本的文本分类方法及系统
JP7095599B2 (ja) 辞書学習装置、辞書学習方法、データ認識方法およびコンピュータプログラム
CN110188827B (zh) 一种基于卷积神经网络和递归自动编码器模型的场景识别方法
Calvo-Zaragoza et al. Music staff removal with supervised pixel classification
CN112232395B (zh) 一种基于联合训练生成对抗网络的半监督图像分类方法
US7836000B2 (en) System and method for training a multi-class support vector machine to select a common subset of features for classifying objects
CN111191033B (zh) 一种基于分类效用的开集分类方法
JP2020155101A (ja) 情報処理装置及び情報処理方法
WO2017188048A1 (ja) 作成装置、作成プログラム、および作成方法
WO2020235011A1 (ja) 学習装置、学習方法及び学習プログラム
US20220261641A1 (en) Conversion device, conversion method, program, and information recording medium
CN111598113A (zh) 模型优化方法、数据识别方法和数据识别装置
JP7211501B2 (ja) データ変換装置、パターン認識システム、データ変換方法及びデータ変換プログラム
CN115797642A (zh) 基于一致性正则化与半监督领域自适应图像语义分割算法
WO2020209087A1 (ja) 分類装置、分類方法及び分類プログラム
Liu et al. Evolutionary Voting‐Based Extreme Learning Machines
WO2021210042A1 (ja) 学習装置、分類装置、学習方法、分類方法、および、プログラム
CN110532384B (zh) 一种多任务字典单分类方法、系统、装置及存储介质
Thrampoulidis Implicit bias of next-token prediction

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19929953

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP