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

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

Info

Publication number
JP2021015425A
JP2021015425A JP2019129414A JP2019129414A JP2021015425A JP 2021015425 A JP2021015425 A JP 2021015425A JP 2019129414 A JP2019129414 A JP 2019129414A JP 2019129414 A JP2019129414 A JP 2019129414A JP 2021015425 A JP2021015425 A JP 2021015425A
Authority
JP
Japan
Prior art keywords
distribution
data
loss function
model
input
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.)
Pending
Application number
JP2019129414A
Other languages
English (en)
Inventor
優 安富
Masaru Yasutomi
優 安富
孝 河東
Takashi Kato
孝 河東
健人 上村
Taketo Uemura
健人 上村
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 JP2019129414A priority Critical patent/JP2021015425A/ja
Priority to EP20184191.3A priority patent/EP3767552A1/en
Priority to CN202010646438.2A priority patent/CN112215341A/zh
Priority to US16/921,944 priority patent/US20210012193A1/en
Publication of JP2021015425A publication Critical patent/JP2021015425A/ja
Pending legal-status Critical Current

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • G06N3/088Non-supervised learning, e.g. competitive learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】モデルの表現能力の低下を抑え、汎化性能を高めること。【解決手段】学習装置は、入力層、中間層及び出力層を有するモデルに入力データを入力した際に中間層から出力される特徴量の分布と、あらかじめ設定された目標分布との間の分布間距離を損失関数として計算する。学習装置は、モデルに入力データを入力した際に出力層から出力される出力データと、入力データに対応する正解データとを基にcross entropyを計算する。学習装置は、分布間距離及びcross entropyの両方に基づいて、モデルを学習する。【選択図】図3

Description

本発明は、学習方法、学習プログラム及び学習装置に関する。
従来、DNN(Deep Neural Network)の過学習を抑えるための方法が提案されている。過学習とは、訓練データが少ない場合に、分類モデルが当該訓練データのみを正確に分類できるようになり、汎化性能が低下してしまう現象である。例えば、過学習を回避するための方法として、DNNの層及びユニットを減らし、モデルを単純化する方法が知られている。
特開平2−307153号公報 特開平5−197701号公報 特開2017−97585号公報
しかしながら、上記の方法では、モデルの表現能力が低下する場合があるという問題がある。例えば、データを複数のクラスに分類するためのDNNのパラメータ数を減らすと、各クラス間の境界面を、所望する精度で近似できなくなる場合がある。このように、モデルの複雑さと表現能力はトレードオフの関係にある。
1つの側面では、モデルの表現能力の低下を抑え、汎化性能を高めることを目的とする。
1つの態様において、コンピュータは、学習方法を実行する。コンピュータは、入力層、中間層及び出力層を有するモデルの入力層に第1のデータを入力した際に中間層から出力される特徴量の分布である第1の分布と、あらかじめ設定された第2の分布とを基に第1の損失関数を計算する処理を実行する。コンピュータは、モデルの入力層に第1のデータを入力した際に出力層から出力される第2のデータと、第1のデータに対応する正解データとを基に第2の損失関数を計算する処理を実行する。コンピュータは、第1の損失関数及び第2の損失関数の両方に基づいて、モデルを学習する処理を実行する。
1つの側面では、モデルの表現能力の低下を抑え、汎化性能を高めることができる。
図1は、実施例1に係る学習装置の機能構成の一例を示す図である。 図2は、モデルについて説明するための図である。 図3は、実施例1に係る学習処理について説明するための図である。 図4は、実施例1に係る学習処理の流れを示すフローチャートである。 図5は、従来技術に係る特徴空間を説明するための図である。 図6は、実施例1に係る特徴空間を説明するための図である。 図7は、実験結果を示す図である。 図8は、実施例2に係る学習処理について説明するための図である。 図9は、混合分布の一例を示す図である。 図10は、実施例2に係る特徴空間の一例を示す図である。 図11は、実施例2に係る学習処理の流れを示すフローチャートである。 図12は、実施例3に係る学習処理の流れを示すフローチャートである。 図13は、ハードウェア構成例を説明する図である。
以下に、本発明に係る学習方法、学習プログラム及び学習装置の実施例を図面に基づいて詳細に説明する。なお、この実施例により本発明は限定されない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
学習装置はモデルの学習を行う。実施例1におけるモデルは、入力層、中間層及び出力層を有するDNNを用いたモデルである。例えば、モデルは画像を分類するための分類モデルである。この場合、モデルは、画像データを入力とし、画像に映っている対象物を分類するためのスコア等を出力する。
[機能構成]
図1を用いて、実施例に係る学習装置の機能構成について説明する。図1は、実施例に係る学習装置の機能構成の一例を示す図である。図1に示すように、学習装置10は、インタフェース部11、記憶部12及び制御部13を有する。
インタフェース部11は、入出力装置との間のデータの入出力、及び他の装置との間でのデータの通信を行うためのインタフェースである。例えば、インタフェース部11は、キーボードやマウス等の入力装置、ディスプレイやスピーカ等の出力装置、USBメモリ等の外部記憶装置との間でデータの入出力を行う。また、例えば、インタフェース部11はNIC(Network Interface Card)であり、インターネットを介してデータの通信を行う。
記憶部12は、データや制御部13が実行するプログラム等を記憶する記憶装置の一例であり、例えばハードディスクやメモリ等である。記憶部12は、訓練データ121、モデル情報122及び目標分布情報123を記憶する。
訓練データ121は、モデルの学習を行うためのデータである。訓練データ121には、入力データ121a及びラベルデータ121bが含まれる。入力データ121aは、画像データそのもの、又は画像データから抽出された所定の特徴量である。ラベルデータ121bは、入力データ121aに対する正解ラベルである。例えば、ラベルデータ121bは、入力データ121aに対応する画像に映っている対象物を特定するための情報である。
モデル情報122は、モデルを構築するための情報である。モデル情報122は、例えばDNNに含まれる各ノードの重み及びバイアス等のパラメータである。モデル情報122は、学習により更新される。
目標分布情報123は、あらかじめ設定された特定の分布を表すパラメータである。ここで、目標分布情報123によって表される分布を目標分布と呼ぶ。例えば目標分布がガウス分布である場合、目標分布情報123には、ガウス分布を表すための平均及び共分散行列が含まれる。
例えば、学習処理では、目標分布とモデルの中間層から出力されるデータの分布との間の分布間距離が損失関数の一部として利用される。つまり、学習処理においては、目標分布と中間層から出力されるデータの分布とが近付くように、モデルのパラメータが更新される。学習処理の詳細については後述する。
ここで、図2を用いて実施例におけるモデルについて説明する。図2は、モデルについて説明するための図である。図2のモデル122aは、モデル情報122により構築されるDNNである。このとき、αは、モデルの入力層に入力される入力データ121aである。また、βは、モデルから出力される出力データである。また、γは、モデルの中間層から出力される特徴量である。また、θは、目標分布情報123である。学習装置10は、特徴量γの分布が、θによって表される目標分布に近付くようにモデル122aを学習する。
制御部13は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等によって、内部の記憶装置に記憶されているプログラムがRAMを作業領域として実行されることにより実現される。また、制御部13は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されるようにしてもよい。制御部13は、抽出部131、第1の計算部132、第2の計算部133及び学習部134を有する。
抽出部131は、画像データからモデルの入力層に入力するための特徴量を抽出する。例えば、抽出部131は、画像の各領域の特徴を所定サイズのベクトルで表した特徴量を抽出する。抽出部131は、抽出した特徴量を、訓練データ121の入力データ121aとして記憶部12に格納することができる。
第1の計算部132は、DNNの入力層に入力データ121aを入力した際に中間層から出力される特徴量の分布と、あらかじめ設定された目標分布とを基に損失関数を計算する。DNNは、入力層、中間層及び出力層を有するモデルの一例である。また、DNNは、モデル情報122を基に構築される。また、入力データ121aは、第1のデータの一例である。また、目標分布は、第2の分布の一例である。前述の通り、目標分布は、目標分布情報123によって表される。
第2の計算部133は、DNNの入力層に入力データ121aを入力した際に出力層から出力される第2のデータと、入力データ121aに対応する正解データとを基に第2の損失関数を計算する。DNNは、入力層、中間層及び出力層を有するモデルの一例である。
学習部134は、第1の損失関数及び第2の損失関数の両方に基づいて、モデルを学習する。例えば、学習部134は、第1の損失関数と第2の損失関数を足して得られる損失関数を基に、誤差逆伝播法によりモデルを学習する。
図3を用いて、学習処理について説明する。図3は、実施例1に係る学習処理について説明するための図である。図3に示すように、モデル情報122を基に構築されたDNNであるモデル122aは、複数の中間層を有し、また活性化関数としてSoftmaxを有する。また、学習装置10は、モデル122aに入力データ121aを入力する。入力データ121aは、ミニバッチであってもよい。
第1の計算部132は、入力層、複数の中間層、及び活性化関数である出力層を有するDNNの入力層に入力データ121aを入力した際に、出力層に最も近い中間層から出力される特徴量の分布と、目標分布とを基に損失関数を計算する。
具体的には、第1の計算部132は、モデル122aの出力層に最も近い中間層から出力される特徴量の分布と、目標分布情報123によって表される分布との間の分布間距離を損失関数として計算する。
例えば、分布間距離は、KLダイバージェンス及びMMD(maximum mean discrepancy)等である。目標分布がガウス分布等である場合に、第1の計算部132は、ミニバッチ内の統計量を用いてKLダイバージェンスを計算することができる。また、第1の計算部132は、目標分布からサンプリングしたデータを使ってMMDを計算することができる。
また、第2の計算部133は、モデル122aの出力データ122bと、訓練データ121に含まれるラベルデータ121bとのcross entropyを損失関数として計算する。そして、学習部134は、第1の計算部132によって計算された損失関数と、第2の計算部133によって計算された損失関数を基にモデル122aのパラメータを更新する。なお、第1の計算部132によって計算される分布間距離は、中間層から出力される特徴量が目標分布に従うように正則化するためのものであるということができる。
ここで、入力データ121aがn個のデータを含むミニバッチであるとする。このとき、中間層から出力される特徴量zは、(1)式のように表される。
Figure 2021015425
また、目標分布からサンプリングしたm個のデータz*は、(2)式のように表される。
Figure 2021015425
ここで、xとx´のガウスカーネルk(x, x´)は、(3)式のように表される。ただし、σはハイパーパラメータとして与えられるものとする。
Figure 2021015425
この場合、第1の計算部132は、分布間距離MMD(z, z*)を、(4)式のように計算する。
Figure 2021015425
また、第2の計算部133によって計算されるcross entropyをLoutputとし、λをハイパーパラメータとして与えられる重みとすると、学習部134は、全体の損失関数Lを(5)式のように計算する。
Figure 2021015425
[処理の流れ]
図4を用いて、学習装置10による学習処理の流れを説明する。図4は、実施例1に係る学習処理の流れを示すフローチャートである。図4に示すように、まず、学習装置10は、画像データから特徴量を入力データ121aとして抽出する(ステップS101)。次に、学習装置10は、入力データ121aをモデルの入力層に入力する(ステップS102)。
ここで、学習装置10は、中間層から出力される特徴量の分布と目標分布との間の分布間距離を計算する(ステップS103)。また、学習装置10は、出力層から出力される出力データ122bのラベルデータ121bに対するcross entropyを計算する(ステップS104)。そして、学習装置10は、cross entropyに分布間距離を加えた損失関数に基づいてモデルを学習する(ステップS105)。
[効果]
上述したように、学習装置10は、入力層、中間層及び出力層を有するモデルの入力層に第1のデータを入力した際に中間層から出力される特徴量の分布である第1の分布と、あらかじめ設定された第2の分布とを基に第1の損失関数を計算する。学習装置10は、モデルの入力層に第1のデータを入力した際に出力層から出力される第2のデータと、第1のデータに対応する正解データとを基に第2の損失関数を計算する。学習装置10は、第1の損失関数及び第2の損失関数の両方に基づいて、モデルを学習する。このように、学習装置10は、中間層から出力される特徴量の分布を目標分布に近付けることで過学習を防止している。このため、実施例1によれば、モデルの表現能力の低下を抑え、汎化性能を高めることができる。
上記の効果について、図5及び図6を用いてさらに説明する。図5は、従来技術に係る特徴空間を説明するための図である。図6は、実施例1に係る特徴空間を説明するための図である。
DNNは、入力空間におけるデータを特徴空間に写像するモデルということができる。入力空間と比べて、特徴空間では、歪でない境界線によりデータを分類することができる。一方、境界線を入力空間に逆に写像すると、歪な境界線となる。この境界線の歪さの度合いが大きくなると、汎化性能が低下する。その結果過学習(over fitting)が発生する。
図5に示すように、従来技術では、特徴空間では例えば直線に近い形状の境界線が生成される。言い換えると、モデルは、クラスが同じであるデータ間の距離がなるべく近くなり、クラスが異なるデータ間の距離がなるべく遠くなるような特徴空間を生成する。一方、境界線を入力空間に逆に写像すると、歪な曲線の形状になる。このような境界線は、訓練データを高精度で分類することはできるが、訓練データ以外のデータに対しては分類精度が低くなる。
このような過学習は、ノードや層の数を減らし、モデルを単純化することにより解消される。ただし、その場合、十分な訓練データがなければ、モデルは分布を表現しきれない(under fitting)。さらに、現実的には常に十分な訓練データを用意できるとは限らない。
これに対し、実施例1では、図6に示すように、入力空間において境界線が歪な形状になることが抑止される。これは、学習装置10が、特徴空間におけるデータの分布が目標分布に近づくように正則化を行っているためである。言い換えると、学習装置10は、特徴空間において、クラス間の距離が離れ過ぎないように調整を行うことで過学習を防止している。図6の例では、学習装置10は、2つのクラスのデータがいずれも1つのガウス分布に従うように正則化を行っている。
学習装置10は、第1の分布と第2の分布との間の距離を第1の損失関数として計算する。学習装置10は、KLダイバージェンスやMMD等の微分可能な分布間距離を損失関数として計算するので、誤差逆伝播法で学習を行うことができる。
学習装置10は、入力層、複数の中間層、及び所定の活性化関数である出力層を有するニューラルネットワークの入力層に第1のデータを入力した際に出力層に最も近い層から出力される特徴量の分布である第1の分布と、第2の分布とを基に第1の損失関数を計算する。このように、学習装置10は、最も出力層に近い中間層の出力を調整することで、効果的な正則化を行うことができる。なお、学習装置10は、他の中間層の出力を調整することもできるが、その場合過学習防止の効果が小さくなる場合がある。
学習装置10は、第1の損失関数と第2の損失関数を足して得られる損失関数を基に、誤差逆伝播法によりモデルを学習する。このように、学習装置10は、学習自体は既知の手法を使って行うことができる。また、学習装置10は、第2の損失関数に所定の重みを付けてもよい。
実施例1の学習装置10によって学習が行われたモデルを使った実験について説明する。モデルは、手書きの数字の画像を、書かれている数字ごとに分類する。学習装置10は、手書き数字のデータセットであるMNIST(参考URL:http://yann.lecun.com/exdb/mnist/)のうちの100件を訓練データとしてモデルの学習を行った。訓練データの数として100個は少ないため、この実験の設定は過学習が発生しやすい状況を作り出すものである。また、目標分布は正規ガウス分布とした。
実験におけるDNNは、6層のMLP(Multilayer perceptron)である。また、DNNの各中間層のユニットの数は、784-1024-512-256-128-64-10である。つまり、最も出力層に近い中間層のユニットの数は10個である。学習装置10は、この10個のユニットを持つ層の出力が目標分布に近付くように調整を行った。また、分布間距離としてMMDを使用し、(5)式におけるλを2とした。
実験では、従来技術と実施例について、MNISTから抽出した10,000件のテストデータに対するモデルの分類精度を計測し比較した。ただし、従来技術では正則化は行われないものとする。また、従来技術については、正則化に関する条件を除き、実施例と同様の条件で計測を行った。
図7は、実験結果を示す図である。図7に示すように、正則化なしの場合、すなわち従来技術による学習を行った場合、モデルの分類精度は65.57%であった。これに対し、正則化ありの場合、すなわち実施例による学習を行った場合、モデルの分類精度は70.69%であった。このように、実施例では、訓練データが少ないという状況下においても、正則化により精度の向上を実現している。
分類モデルは、データを複数のクラスのいずれかに分類する場合がある。このような場合、分類されるクラスごとに異なる目標分布が設定されてもよい。実施例2では、目標分布として混合分布が用いられる。また、混合分布の各混合要素は、モデルによって分類される各クラスに割り当てられているものとする。
実施例2における学習装置10の構成は、実施例1のものと同様である。ただし、第1の計算部132は、中間層から出力される特徴量の分布と、入力データ121aに対応する正解データに対して設定された目標分布とを基に損失関数を計算する。
図8を用いて、学習処理について説明する。図3は、実施例1に係る学習処理について説明するための図である。図8に示すように、学習装置10は、モデル122aの入力層に入力データ121aを入力する。ここで、第1の計算部132は、ラベルデータ121bから入力データ121aに対応するラベルを選択する。そして、第1の計算部132は、選択したラベルに対応する混合要素が示す分布と、中間層から出力されるデータの分布との間の分布間距離を損失関数として計算する。
混合分布の設定方法について説明する。ここでは、モデルは、画像を「犬」、「車」、「猫」のいずれかのクラスに分類するものとする。この場合、混合分布の混合要素として、「犬」クラスに対応する特徴量の目標分布、「車」クラスに対応する特徴量の目標分布、「猫」クラスに対応する特徴量の目標分布が用意される。
例えば、動物である「猫」の画像は、人工物である「車」の画像よりも、同じく動物である「犬」の画像と概念が近く、特徴量が似ることが考えられる。このため、混合分布は、各混合要素をガウス分布として、(6)式及び(7)式のように表されてもよい。
Figure 2021015425
Figure 2021015425
μdogは、「犬」クラスに対応する目標分布の平均である。μcarは、「車」クラスに対応する目標分布の平均である。μcatは、「猫」クラスに対応する目標分布の平均である。(6)式及び(7)式は、各クラスに対応する目標分布が、図9に示すような、平均が異なり、分散が共通するガウス分布であることを示している。図9は、混合分布の一例を示す図である。
このような設定で学習が行われたモデルは、各クラスに対応する入力データを、図10のような特徴空間に写像するようになることが期待される。図10は、実施例2に係る特徴空間の一例を示す図である。図10に示すように、「犬」クラスの特徴量と「猫」クラスの特徴量は、「車」クラスの特徴量と比べて互いに近くにある。さらに、各クラスの特徴量は離れ過ぎないように調整されている。
[処理の流れ]
図11を用いて、学習装置10による学習処理の流れを説明する。図11は、実施例2に係る学習処理の流れを示すフローチャートである。図11に示すように、まず、学習装置10は、画像データから特徴量を入力データ121aとして抽出する(ステップS201)。次に、学習装置10は、入力データ121aをモデルの入力層に入力する(ステップS202)。
ここで、学習装置10は、入力データ121aに対応するラベルに対してあらかじめ設定された目標分布を選択する(ステップS203a)。そして、学習装置10は、中間層から出力される特徴量の分布と選択した目標分布との間の分布間距離を計算する(ステップS203b)。また、学習装置10は、出力層から出力される出力データ122bのラベルデータ121bに対するcross entropyを計算する(ステップS204)。そして、学習装置10は、cross entropyに分布間距離を加えた損失関数に基づいてモデルを学習する(ステップS205)。
上述したように、学習装置10は、第1の計算部132は、第1の分布と、複数の正解データのそれぞれに対してあらかじめ設定された分布のうち、第1のデータに対応する正解データに対して設定された第2の分布とを基に第1の損失関数を計算する。このように、入力データに合わせた目標分布を設定することで、学習装置10は、効率的に学習を行い、さらにモデルの性能の向上させることができる。
実施例3において、学習装置10は半教師あり学習を行う。すなわち、学習装置10は、訓練データにラベルが含まれていない場合であってもモデルの学習を行うことができる。学習装置10は、入力データ121aに対応するラベルがない場合、第1の計算部132によって計算される損失関数を基に誤差逆伝播によるDNNの学習を行う。
[処理の流れ]
図12を用いて、学習装置10による学習処理の流れを説明する。図12は、実施例3に係る学習処理の流れを示すフローチャートである。図12に示すように、まず、学習装置10は、画像データから特徴量を入力データ121aとして抽出する(ステップS301)。次に、学習装置10は、入力データ121aをモデルの入力層に入力する(ステップS302)。
ここで、学習装置10は、中間層から出力される特徴量の分布と選択した目標分布との間の分布間距離を計算する(ステップS303)。そして、学習装置10は、入力データに対応するラベルが存在するか否かを判定する(ステップS304a)。
入力データに対応するラベルが存在する場合(ステップS304a、Yes)、学習装置10は、出力層から出力される出力データ122bのラベルデータ121bに対するcross entropyを計算する(ステップS304b)。そして、学習装置10は、cross entropyに分布間距離を加えた損失関数に基づいてモデルを学習する(ステップS305)。
一方、入力データに対応するラベルが存在しない場合(ステップS304a、No)、学習装置10は、分布間距離に基づいてモデルを学習する(ステップS305a)。
[効果]
上述したように、学習装置10は、第1のデータに対応する正解データが存在しない場合、第1の損失関数のみに基づいてモデルを学習する。一般的に、ラベルなしの訓練データは、ラベルありの訓練データに比べると収集が容易である。実施例3によれば、訓練データにラベルがない場合であっても、モデルの汎化性能を向上させるような学習を行うことができる。
[システム]
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値等は、あくまで一例であり、任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[ハードウェア]
図13は、ハードウェア構成例を説明する図である。図13に示すように、学習装置10は、通信インタフェース10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、図13に示した各部は、バス等で相互に接続される。
通信インタフェース10aは、ネットワークインタフェースカード等であり、他のサーバとの通信を行う。HDD10bは、図1に示した機能を動作させるプログラムやDBを記憶する。
プロセッサ10dは、図1に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ10cに展開することで、図1等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、学習装置10が有する各処理部と同様の機能を実行する。具体的には、プロセッサ10dは、抽出部131、第1の計算部132、第2の計算部133及び学習部134と同様の機能を有するプログラムをHDD10b等から読み出す。そして、プロセッサ10dは、抽出部131、第1の計算部132、第2の計算部133及び学習部134等と同様の処理を実行するプロセスを実行する。プロセッサ10dは、例えば、CPU、MPU、ASIC等のハードウェア回路である。
このように学習装置10は、プログラムを読み出して実行することで分類方法を実行する情報処理装置として動作する。また、学習装置10は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、学習装置10によって実行されることに限定されるものではない。例えば、他のコンピュータ又はサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
このプログラムは、インターネット等のネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto−Optical disk)、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
10 学習装置
11 インタフェース部
12 記憶部
13 制御部
121 訓練データ
121a 入力データ
121b ラベルデータ
122 モデル情報
122a モデル
122b 出力データ
123 目標分布情報
131 抽出部
132 第1の計算部
133 第2の計算部
134 学習部

Claims (7)

  1. 入力層、中間層及び出力層を有するモデルの前記入力層に第1のデータを入力した際に前記中間層から出力される特徴量の分布である第1の分布と、あらかじめ設定された第2の分布とを基に第1の損失関数を計算し、
    前記モデルの前記入力層に前記第1のデータを入力した際に前記出力層から出力される第2のデータと、前記第1のデータに対応する正解データとを基に第2の損失関数を計算し、
    前記第1の損失関数及び前記第2の損失関数の両方に基づいて、前記モデルを学習する
    処理をコンピュータが実行することを特徴とする学習方法。
  2. 前記第1の損失関数を計算する処理は、前記第1の分布と前記第2の分布との間の距離を前記第1の損失関数として計算することを特徴とする請求項1に記載の学習方法。
  3. 前記第1の損失関数を計算する処理は、入力層、複数の中間層、及び所定の活性化関数である出力層を有するニューラルネットワークに前記第1のデータを入力した際に前記複数の中間層のうち、前記出力層に最も近い層から出力される特徴量の分布である第1の分布と、前記第2の分布とを基に前記第1の損失関数を計算し、
    前記学習する処理は、前記第1の損失関数と前記第2の損失関数を足して得られる損失関数を基に、誤差逆伝播法により前記モデルを学習することを特徴とする請求項1又は2に記載の学習方法。
  4. 前記第1の損失関数を計算する処理は、前記第1の分布と、複数の正解データのそれぞれに対してあらかじめ設定された分布のうち、前記第1のデータに対応する正解データに対して設定された第2の分布とを基に前記第1の損失関数を計算することを特徴とする請求項1又は2に記載の学習方法。
  5. 前記学習する処理は、前記第1のデータに対応する正解データが存在しない場合、前記第1の損失関数のみに基づいて前記モデルを学習することを特徴とする請求項1から4のいずれか1項に記載の学習方法。
  6. コンピュータに、
    入力層、中間層及び出力層を有するモデルに第1のデータを入力した際に前記中間層から出力される特徴量の分布である第1の分布と、あらかじめ設定された第2の分布とを基に第1の損失関数を計算し、
    前記モデルに前記第1のデータを入力した際に前記出力層から出力される第2のデータと、前記第1のデータに対応する正解データとを基に第2の損失関数を計算し、
    前記第1の損失関数及び前記第2の損失関数の両方に基づいて、前記モデルを学習する
    処理を実行させることを特徴とする学習プログラム。
  7. 入力層、中間層及び出力層を有するモデルに第1のデータを入力した際に前記中間層から出力される特徴量の分布である第1の分布と、あらかじめ設定された第2の分布とを基に第1の損失関数を計算する第1の計算部と、
    前記モデルに前記第1のデータを入力した際に前記出力層から出力される第2のデータと、前記第1のデータに対応する正解データとを基に第2の損失関数を計算する第2の計算部と、
    前記第1の損失関数及び前記第2の損失関数の両方に基づいて、前記モデルを学習する学習部と、
    を有することを特徴とする学習装置。
JP2019129414A 2019-07-11 2019-07-11 学習方法、学習プログラム及び学習装置 Pending JP2021015425A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019129414A JP2021015425A (ja) 2019-07-11 2019-07-11 学習方法、学習プログラム及び学習装置
EP20184191.3A EP3767552A1 (en) 2019-07-11 2020-07-06 Machine learning method, program, and machine learning device
CN202010646438.2A CN112215341A (zh) 2019-07-11 2020-07-07 非暂态计算机可读记录介质、机器学习方法和装置
US16/921,944 US20210012193A1 (en) 2019-07-11 2020-07-07 Machine learning method and machine learning device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019129414A JP2021015425A (ja) 2019-07-11 2019-07-11 学習方法、学習プログラム及び学習装置

Publications (1)

Publication Number Publication Date
JP2021015425A true JP2021015425A (ja) 2021-02-12

Family

ID=71515051

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019129414A Pending JP2021015425A (ja) 2019-07-11 2019-07-11 学習方法、学習プログラム及び学習装置

Country Status (4)

Country Link
US (1) US20210012193A1 (ja)
EP (1) EP3767552A1 (ja)
JP (1) JP2021015425A (ja)
CN (1) CN112215341A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7050006B2 (ja) * 2017-06-28 2022-04-07 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 移動体制御装置、移動体制御方法、及び学習方法
US11704772B2 (en) * 2020-11-19 2023-07-18 Raytheon Company Image classification system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170011738A1 (en) * 2015-07-09 2017-01-12 Google Inc. Generating acoustic models
WO2019073923A1 (ja) * 2017-10-10 2019-04-18 国立大学法人岐阜大学 異常品判定方法
US20190156204A1 (en) * 2017-11-20 2019-05-23 Koninklijke Philips N.V. Training a neural network model
US20190199743A1 (en) * 2017-12-22 2019-06-27 Robert Bosch Gmbh Method and device for recognizing anomalies in a data stream of a communication network

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02307153A (ja) 1989-05-22 1990-12-20 Canon Inc ニューラルネットワーク
JPH05197701A (ja) 1992-01-21 1993-08-06 Fujitsu Ltd ニューラルネットワークを用いた情報処理装置
US20160321522A1 (en) * 2015-04-30 2016-11-03 Canon Kabushiki Kaisha Devices, systems, and methods for pairwise multi-task feature learning
CN115115029A (zh) * 2015-11-06 2022-09-27 谷歌有限责任公司 训练神经网络的方法、系统及存储介质
JP2017097585A (ja) 2015-11-24 2017-06-01 株式会社リコー 学習装置、プログラム及び学習方法
US20170293696A1 (en) * 2016-04-11 2017-10-12 Google Inc. Related entity discovery
US9965863B2 (en) * 2016-08-26 2018-05-08 Elekta, Inc. System and methods for image segmentation using convolutional neural network
KR102602117B1 (ko) * 2017-10-26 2023-11-13 매직 립, 인코포레이티드 딥 멀티태스크 네트워크들에서 적응적 손실 밸런싱을 위한 그라디언트 정규화 시스템들 및 방법들
US20190213470A1 (en) * 2018-01-09 2019-07-11 NEC Laboratories Europe GmbH Zero injection for distributed deep learning

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170011738A1 (en) * 2015-07-09 2017-01-12 Google Inc. Generating acoustic models
WO2019073923A1 (ja) * 2017-10-10 2019-04-18 国立大学法人岐阜大学 異常品判定方法
US20190156204A1 (en) * 2017-11-20 2019-05-23 Koninklijke Philips N.V. Training a neural network model
US20190199743A1 (en) * 2017-12-22 2019-06-27 Robert Bosch Gmbh Method and device for recognizing anomalies in a data stream of a communication network

Also Published As

Publication number Publication date
US20210012193A1 (en) 2021-01-14
EP3767552A1 (en) 2021-01-20
CN112215341A (zh) 2021-01-12

Similar Documents

Publication Publication Date Title
Hu et al. Brain tumor diagnosis based on metaheuristics and deep learning
CN104067314B (zh) 人形图像分割方法
KR102114357B1 (ko) 풀링 타입에 대한 정보를 포함하는 테이블을 작성하기 위한 방법, 장치 및 이를 이용한 테스팅 방법, 테스팅 장치
KR20180136720A (ko) 다채널 특징맵을 이용하는 영상 처리 장치 및 방법
US11003990B2 (en) Controlling memory area for training a neural network
US20210192343A1 (en) Method and device for training generative adversarial network for converting between heterogeneous domain data
JP2018181187A (ja) データ分析装置、データ分析方法、およびデータ分析プログラム
JP2018018350A (ja) 画像認識装置、画像認識プログラム、画像認識方法および認識装置
JP2021015425A (ja) 学習方法、学習プログラム及び学習装置
US20210150679A1 (en) Using imager with on-purpose controlled distortion for inference or training of an artificial intelligence neural network
JP6832252B2 (ja) 超解像装置およびプログラム
JP7106486B2 (ja) 学習装置、学習方法、プログラムおよび情報処理システム
US20190287016A1 (en) Computer-readable recording medium, learning method, and learning device
JP2019191635A (ja) データ分析システム、方法、及びプログラム
Rafati Fard et al. Incorporating instantaneous reaction delay in car-following models: a hybrid approach
CN113490955A (zh) 用于产生金字塔层的架构的系统和方法
WO2019208564A1 (ja) ニューラルネットワーク学習装置、ニューラルネットワーク学習方法、プログラム
JP7264272B2 (ja) 検出方法、検出プログラム及び検出装置
US20210312272A1 (en) Neuromorphic circuit, neuromorphic array learning method, and program
KR102597184B1 (ko) 가지치기 기반 심층 신경망 경량화에 특화된 지식 증류 방법 및 시스템
EP1837807A1 (en) Pattern recognition method
JP2023176667A (ja) 判定プログラム、判定装置、および判定方法
JP7250643B2 (ja) 計算機システム及びモデル学習方法
JP2021177386A (ja) 差分に予測可能に応答する機能のトレーニング
JP7414531B2 (ja) 学習装置、学習方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220407

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230320

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230425