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

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

Info

Publication number
JP6943291B2
JP6943291B2 JP2019555296A JP2019555296A JP6943291B2 JP 6943291 B2 JP6943291 B2 JP 6943291B2 JP 2019555296 A JP2019555296 A JP 2019555296A JP 2019555296 A JP2019555296 A JP 2019555296A JP 6943291 B2 JP6943291 B2 JP 6943291B2
Authority
JP
Japan
Prior art keywords
data
loss
domain
learning
domain information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019555296A
Other languages
English (en)
Other versions
JPWO2019102962A1 (ja
Inventor
雅人 石井
雅人 石井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of JPWO2019102962A1 publication Critical patent/JPWO2019102962A1/ja
Application granted granted Critical
Publication of JP6943291B2 publication Critical patent/JP6943291B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)

Description

本発明は、データの機械学習に関し、特に、半教師有り学習に関する。
パターン認識技術とは、データとして入力されたパターンがどのクラスに属するパターンであるかを推定する技術である。具体的なパターン認識の例としては、画像を入力として写っている物体を推定する物体認識、又は、音声を入力として発話内容を推定する音声認識などが挙げられる。
パターン認識において、統計的機械学習が広く利用されている。統計的機械学習とは、事前に収集した教師有りデータ(以下、「学習データ」と呼ぶ)を用いて、パターンとそのクラスとの統計的な性質を示すモデルを学習する。教師有りデータを用いるため、このような学習は、「教師有り学習」とも呼ばれる。
そして、統計的機械学習は、学習したモデルを、認識すべきパターン(以下、「テストデータ」と呼ぶ)に適用することで、テストデータに対するパターン認識の結果を得る。なお、テストデータは、教師無しデータである。
多くの統計的機械学習の手法は、学習データの統計的性質とテストデータの統計的性質とが一致していることを仮定している。したがって、統計的性質が、学習データとテストデータとにおいて異なる場合、パターン認識の性能は、統計的性質の異なりの度合いに応じて、低下する。
統計的性質が学習データとテストデータとの間において異なる原因としては、例えば、パターン認識(パターンの分類)の対象であるクラス情報以外の属性情報がある。この場合の属性情報とは、学習データとテストデータとにおいて、パターンの分類に用いられるクラス以外の属性に関連する情報である。
クラス以外の属性情報がデータの分布に影響を与える場合の例を、説明する。例えば、画像を用いた顔画像の検出を考える。この場合、クラス情報は、例えば、「顔」画像及び「非顔」画像となる。ただし、顔画像の撮影における照明の位置は、顔に対して固定ではないとする。この場合、例えば、撮影方向に対して右から強い照明を受けたシーンの画像と、左から強い照明を受けたシーンの画像とでは、統計的性質(例えば、見た目)が大きく異なる。このように、顔画像及び非顔画像のデータにおける統計的性質は、顔及び非顔というクラス情報以外の属性情報である「照明条件」に基づいて変化する。
「照明情報」以外の属性情報としては、「撮影角度」、又は「撮影したカメラの特性」などが想定される。このように、クラス情報以外で統計的性質(例えば、データの分布)に影響を与える属性情報は、多く存在する。
しかし、学習データとテストデータとにおいて、全ての属性情報を合わせることは難しい。その結果、学習データとテストデータとにおいて、少なくとも一部の属性情報において統計的性質が、異なる場合が多い。
上で述べたようなデータ間における統計的性質のずれを補正する技術の一つとして、ドメイン適応(domain adaptation)がある(例えば、非特許文献1及び特許文献1を参照)。ドメイン適応とは、新規タスクの効率的な仮説を見つけ出すために、一つ以上の別のタスクで学習された知識(データ)を得て、それを適用する技術である。別の表現を用いると、ドメイン適応とは、あるタスクの知識(データ)のドメインを、別のタスクの知識のドメインに適応(又は、転移)させることである。あるいは、ドメイン適応とは、統計的性質がずれている複数のデータを、統計的性質が十分に近くなるように変換する技術である。この場合のドメインとは、統計的性質の領域である。
なお、ドメイン適応は、転移学習(transfer learning)、機能転移(inductive transfer)、又は、マルチタスク学習(multitask learning)などと呼ばれる場合もある。
図面を参照して、ドメイン適応を説明する。
図4は、統計的性質が異なる2つのデータを用いた場合のドメイン適応を概念的に示す図である。図4において、図4の左側が、初期状態(ドメイン適応前)のデータ(第1のデータ及び第2のデータ)である。図の左右方向の位置の違いが、ドメイン適用に用いるドメインの違い(対象となる統計的性質)を示す。例えば、第1のデータが右からの照明の画像であり、第2のデータが左からの照明の画像である。
図4の右側が、ドメイン適応を用いた変換後のデータである。変換後の第1のデータ及び第2のデータは、所定の統計的性質に関するドメインが重なる、つまり、統計的性質が合わせ込まれている。
機械学習を行う前に、ドメイン適応を用いて学習データ及びテストデータの統計的性質を合わせることで、統計的性質のずれに起因する機械学習の性能劣化を軽減することができる。
代表的なドメイン適応手法として、敵対的学習を用いたドメイン適応がある(例えば、非特許文献2を参照)。
非特許文献2に記載の手法では、データ変換器は、データがどのドメインに属するかを識別できないように、データの変換を学習する。一方、クラス識別器は、変換されたデータのクラスを識別する識別精度を向上するように学習する。さらに、ドメイン識別器は、変換されたデータのドメインを識別する識別精度を向上するように学習する。ここで、データ変換器におけるデータがどのドメインに属するかを識別できないように学習することは、ドメイン識別器における識別精度を低下するように学習することに相当する。このように、ドメイン識別器の学習がドメインの識別精度を向上させる学習であり、データ変換器の学習がドメインの識別精度を低下させる学習のため、非特許文献2に記載の手法は、敵対的学習と呼ばれる。非特許文献2に記載の手法は、ドメインを識別できないようにデータを変換することで、処理の対象となるドメインにおける統計的性質が十分に近いデータを得ることができる。
特開2010−092266号公報
Boqing Gong, Yuan Shi, Fei Sha, and Kristen Grauman, "Geodesic Flow Kernel for Unsupervised Domain Adaptation", Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2012, pp.2066-2073 Yaroslav Ganin, Victor Lempitsky, "Unsupervised Domain Adaptation by Backpropagation", Proceedings of the 32nd International Conference on Machine Learning (PMLR), Volume 37, 2015, pp.1180-1189
教師有りデータを用意することは、多くの工数を必要とする。これに対し、教師無しデータを用意することは、一般的に容易である。そこで、機械学習には、教師有りデータと教師無しデータとを用いる半教師有り学習がある。
データがどのドメインに属するかを示す情報であるドメイン情報を教師とした半教師有り学習に用いるデータにドメイン適応を適用する場合、ドメイン適応は、ドメイン情報を含むデータと、ドメイン情報を含まないデータとを用いる必要がある。
しかし、非特許文献2に記載の敵対的学習のドメイン適応では、全てのデータにおいてドメイン情報が必要である。
そのため、非特許文献2に記載の手法は、ドメイン情報のないデータを利用できないという問題点があった。言い換えると、非特許文献2に記載の手法は、ドメイン情報を教師とする半教師有り学習に適用できないという問題点があった。
例えば、上記の顔画像の処理におけるドメイン情報として、「照明」、「撮影角度」、及び/又は「撮影したカメラの特性」などの属性情報が考えられる。しかし、全てのデータにおける属性情報に対して教師有りデータを用意することは、非常にコストが高くなる。
そこで、一般的な機械学習におけるドメイン適応では、例えば、次のような手法が用いられている。
第1の手法は、属性情報の付いた一部のデータを用いてドメイン適応を実行する手法である。しかし、第1の手法では、属性情報の付いていないデータを用いることができない。つまり、第1の手法は、ドメイン情報がないデータを半教師有り学習に適用できないという問題点を解決するものではない。
第2の手法は、大まかな情報をドメイン情報として用いる手法である。大まかな情報とは、例えば、様々な属性情報(「照明」、「撮影角度」、及び「撮影したカメラの特性」)を包含した情報(例えば、「データの収集方法の違い」)である。しかし、第2の手法は、大まかな情報を用いるため、属性情報に関連する事前知識を有効に活用することが難しい。つまり、第2の手法は、学習の精度を向上させることが難しいという問題点があった。
非特許文献1及び特許文献1の技術は、教師無しデータ(ドメイン情報無しデータ)に関連するものではないため、上記問題点を解決できない。
本発明の目的は、上記問題点を解決し、ドメイン情報有りデータに加え、ドメイン情報無しデータを用いた半教師有り学習を実現する学習装置などを提供することにある。
本発明の一形態における学習装置は、ドメイン情報を教師とした半教師有り学習において、ドメイン情報を含む第1のデータ及びドメイン情報を含まない第2のデータを入力とし所定の変換後のデータを出力とする第1のニューラルネットワークと、変換後のデータを入力とし所定の処理の結果を出力とする第2のニューラルネットワークと、変換後のデータを入力としドメイン識別の結果を出力とする第3のニューラルネットワークとを含むデータ処理手段と、第1のデータを用いてドメイン識別の結果における損失である第1の損失を算出する第1の損失算出手段と、第2のデータを用いて半教師有り学習における教師無し損失である第2の損失を算出する第2の損失算出手段と、第1のデータ及び第2のデータの少なくとも一部を用いて所定の処理の結果における損失である第3の損失を算出する第3の損失算出手段と、第2の損失及び第3の損失を小さく、かつ、第1の損失を大きくするように、第1のニューラルネットワークないし第3のニューラルネットワークのパラメータを修正するパラメータ修正手段とを含む。
本発明の一形態における学習方法は、ドメイン情報を教師とした半教師有り学習において、ドメイン情報を含む第1のデータ及びドメイン情報を含まない第2のデータを入力とし所定の変換後のデータを出力とする第1のニューラルネットワークと、変換後のデータを入力とし所定の処理の結果を出力とする第2のニューラルネットワークと、変換後のデータを入力としドメイン識別の結果を出力とする第3のニューラルネットワークとを含む学習装置が、第1のデータを用いてドメイン識別の結果における損失である第1の損失を算出し、第2のデータを用いて半教師有り学習における教師無し損失である第2の損失を算出し、第1のデータ及び第2のデータの少なくとも一部を用いて所定の処理の結果における損失である第3の損失を算出し、第2の損失及び第3の損失を小さく、かつ、第1の損失を大きくするように、第1のニューラルネットワークないし第3のニューラルネットワークのパラメータを修正する。
本発明の一形態におけるプログラムは、ドメイン情報を教師とした半教師有り学習において、ドメイン情報を含む第1のデータ及びドメイン情報を含まない第2のデータを入力とし所定の変換後のデータを出力とする第1のニューラルネットワークと、変換後のデータを入力とし所定の処理の結果を出力とする第2のニューラルネットワークと、変換後のデータを入力としドメイン識別の結果を出力とする第3のニューラルネットワークとを含むコンピュータに、第1のデータを用いてドメイン識別の結果における損失である第1の損失を算出する処理と、第2のデータを用いて半教師有り学習における教師無し損失である第2の損失を算出する処理と、第1のデータ及び第2のデータの少なくとも一部を用いて所定の処理の結果における損失である第3の損失を算出する処理と、第2の損失及び第3の損失を小さく、かつ、第1の損失を大きくするように、第1のニューラルネットワークないし第3のニューラルネットワークのパラメータを修正する処理とをコンピュータに実行させる

本発明に基づけば、ドメイン情報有りデータに加え、ドメイン情報無しデータを用いた半教師有り学習を実現するとの効果を奏することができる。
図1は、本発明における第1の実施形態に係る学習装置の構成の一例を示すブロック図である。 図2は、第1の実施形態におけるデータ処理部のNNを模式的に示す図である。 図3は、変形例である学習装置の構成の一例を示すブロック図である。 図4は、統計的性質が異なる2つのデータを用いた場合のドメイン適応を概念的に示す図である。 図5は、第1の実施形態に係る学習装置の効果の説明に用いるデータを模式的に示す図である。 図6は、図5のデータに対して、一般的なドメイン適応を実行した場合の結果の一例を模式的に示す図である。 図7は、第1の実施形態に係る学習装置のデータ変換の一例を模式的に示す図である。 図8は、変形例におけるデータ処理部のNNを模式的に示す図である。 図9は、第1の実施形態に係る学習装置の動作の一例を示すフローチャートである。 図10は、第1の実施形態の概要である学習装置の構成の一例を示すブロック図である。 図11は、第1の実施形態に係る学習装置のハードウェア構成の一例を示すブロック図である。 図12は、第1の実施形態に係るデータ識別システムの構成の一例を示すブロック図である。
次に、図面を参照して、本発明における実施形態について説明する。
なお、各図面は、本発明における実施形態を説明するためのものである。ただし、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。
さらに、本発明における実施形態が用いるデータは、制限されない。データは、画像データでもよく、音声データでもよい。以下の説明では、一例として、顔の画像を用いる場合がある。しかし、これは、対象となるデータを制限するものではない。
<第1の実施形態>
以下、図面を参照して、第1の実施形態について説明する。
第1の実施形態に係る学習装置10は、教師有りデータと教師無しデータとを用いた機械学習(半教師有り学習)を実行する。より具体的には、学習装置10は、教師有りデータであるドメイン情報有りデータ及び教師無しデータであるドメイン情報無しデータに対してドメイン適応に相当するデータ変換を実行し、クラス識別などの機械学習を実行する。つまり、学習装置10は、ドメイン適応に相当する変換として、ドメイン情報有りデータとドメイン情報無しデータとを変換する。
なお、本実施形態は、学習対象となるドメイン及びタスクを限定されない。
ドメイン及びタスクの例を示す。複数の照明位置における顔画像及び非顔画像の分類(画像のクラスの識別)を想定する。
この場合、ドメインの一例は、照明の位置である。
ドメイン情報は、ドメインに関連する情報(例えば、照明位置に関連する情報)である。
また、この場合、タスクの一例は、クラス(顔画像及び非顔画像)の分類動作である。
タスク情報とは、タスクに関連する情報である。例えば、タスク情報は、分類(クラスの識別)の結果である。この場合、タスク情報に関連する損失の一例は、分類(クラスの識別)に関連する損失(例えば、クラスの識別における予測の誤差に基づく損失)である。
[構成の説明]
まず、第1の実施形態に係る学習装置10の構成について、図面を参照して説明する。
図1は、本発明における第1の実施形態に係る学習装置10の構成の一例を示すブロック図である。
学習装置10は、ドメイン情報有り損失算出部110と、ドメイン情報無し損失算出部120と、タスク損失算出部130と、目的関数最適化部140と、データ処理部150とを含む。
ドメイン情報有り損失算出部110は、ドメイン情報有りデータ(第1のデータ)を用いて、ドメイン識別に関連する損失(第1の損失)を算出する。
ドメイン情報無し損失算出部120は、ドメイン情報無しデータ(第2のデータ)を用いて、半教師学習における教師無し損失(第2の損失)を算出する。
タスク損失算出部130は、ドメイン情報有りデータ及びドメイン情報無しデータの少なくとも一部を用いて、データ処理部150における所定の処理(以下、「タスク」とも呼ぶ)の結果に関連する損失(第3の損失)を算出する。
例えば、データ処理部150の処理がクラスの識別のタスクを含む場合、タスク情報は、クラス情報を含む。そこで、タスク損失算出部130は、クラス情報を用いて、クラスの識別における予測誤差に対応した損失を算出してもよい。この損失は、識別損失の一例である。
目的関数最適化部140は、第1の損失と、第2の損失と、第3の損失とを基に、タスクに関連するパラメータを含む目的関数を最適化するようにパラメータを算出又は修正する。目的関数が含む数式は、一つでもよく、複数でもよい。
目的関数の最適値は、目的関数に応じて決定される値である。例えば、目的関数の最適値が最小の値の場合、目的関数最適化部140は、目的関数を最小とするパラメータを算出する。あるいは、目的関数の最適値が最大の値の場合、目的関数最適化部140は、目的関数を最大とするパラメータを算出する。あるいは、制約がある場合、目的関数最適化部140は、制約を満たす範囲で、目的関数を最適値とするパラメータを算出する。
また、目的関数最適化部140は、目的関数の最適値として数学的な最適値ではなく、最適値を含む所定の範囲の値を用いてもよい。これは、理論的には最適値を求めることができる場合でも、最適値を求めるための計算時間が、非常に多くなる場合があるためである。また、データにおける誤差などを考慮すると、実効的な値には、許容範囲があるためである。
なお、後ほど説明するように、学習装置10は、目的関数のパラメータの修正を繰り返す。そのため、目的関数のパラメータが収束するまでは、目的関数最適化部140の最適化は、その時点における損失に基づくパラメータの最適化となるが、最終的なパラメータの最適化とはなっていない場合がある。そこで、繰り返し動作の途中における目的関数最適化部140の動作は、最終的なパラメータの算出途中におけるパラメータの修正とも言える。
データ処理部150は、算出されたパラメータを用いて、所定の処理(例えば、クラスの識別のタスク)を実行する。その際、データ処理部150は、ドメイン情報有りデータ及びドメイン情報無しデータにおけるドメインとしての差を削減するようにデータを変換する。さらに、データ処理部150は、後ほど説明するように、ニューラルネットワーク(NN)を用いたタスク(処理)を実行する。そこで、以下の説明において、「タスク」と「NN」を区別しないで用いる場合がある。例えば、「タスクを実行するNN」を、単に「タスク」又は「NN」と呼ぶ場合もある。ただし、これは、データ処理部150におけるタスク(処理)をNNに限定するものではない。
[動作の説明]
次に、図面を参照して、第1の実施形態に係る学習装置10の動作を説明する。
図9は、第1の実施形態に係る学習装置10の動作の一例を示すフローチャートである。
学習装置10は、ドメイン情報有りデータとドメイン情報無しデータとを用いた半教師有り学習を実行する。より詳細には、学習装置10は、ドメインを識別できなくなるように、ドメイン情報有りデータとドメイン情報無しデータとを変換する。
ドメイン情報有り損失算出部110は、ドメイン情報有りデータを基にドメインの識別に関連する損失(第1の損失)を算出する(ステップS101)。より詳細には、ドメイン情報有り損失算出部110は、その時点におけるタスク(又はタスクを実行するNN)のパラメータを用いて、ドメイン情報有りデータに基づくドメイン識別に関連する損失(第1の損失)を算出する。
なお、図9に示されているように、学習装置10は、ステップS101からS105の動作を繰り返す。「その時点におけるパラメータ」とは、前回のステップS104の動作において目的関数最適化部140が算出したパラメータである。最初の動作の場合、「その時点におけるパラメータ」とは、パラメータの初期値である。
ドメイン情報無し損失算出部120は、ドメイン情報無しデータに関連する損失(第2の損失)を算出する(ステップS102)。より詳細には、ドメイン情報無し損失算出部120は、その時点におけるパラメータとドメイン情報無しデータとを用いて、半教師有り学習における教師無し損失(第2の損失)を算出する。
タスク損失算出部130は、ドメイン情報有りデータとドメイン情報無しデータとの少なくとも一部を用いて、タスクに関連する損失(第3の損失)を算出する(ステップS103)。より詳細には、タスク損失算出部130は、その時点におけるパラメータを用いて、タスクの結果に関連する損失(第3の損失)を算出する。
なお、学習装置10において、ステップS101ないしステップS103の動作の順番は、制限されない。学習装置10は、どのステップの動作から実行してもよく、2つ又は全てのステップの動作を並列に実行してもよい。
目的関数最適化部140は、上記の損失(第1の損失、第2の損失、第3の損失)を基に、所定の目的関数を最適化するように、パラメータを修正する(ステップS104)。
学習装置10は、所定の条件を満足するまで上記動作を繰り返す(ステップS105)。つまり、学習装置10は、パラメータを学習する。
所定の条件とは、データ、目的関数、及び/又は適用分野に沿って決定される条件である。例えば、所定の条件とは、パラメータの変化が所定の値より小さくなることである。あるいは、所定の条件とは、利用者等から指定された繰り返しの回数である。
データ処理部150は、算出されたパラメータを用いて、ドメイン情報有りデータ及びドメイン情報無しデータを基に、所定のタスク(例えば、クラスの識別のタスク)を実行する(ステップS106)。
[動作の詳細例]
次に、各構成の詳細な動作例を説明する。
以下の説明において、対象となるデータの組は、データそのもの(例えば、顔画像データ)に加え、タスク情報が付されている。さらに、ドメイン情報有りデータには、ドメイン情報が付されている。以下、データを「x」、タスク情報を「y」、ドメイン情報を「z」とする。データ「x」などは、1つの数値のデータに限られず、複数のデータの組(例えば、画像データ)でもよい。
さらに、1つのデータの組を、(x,y,z)とする。ただし、ドメイン情報無しデータは、ドメイン情報「z」は含まないデータの組(x,y,−)である。
また、少なくとも一部のデータの組は、タスク情報「y」を含まなくてもよい。ただし、以下の説明では、データの組は、タスク情報は含むとする。
まず、データ処理部150について説明する。
以下の説明に用いる学習装置10は、機械学習の学習対象として、ニューラルネットワーク(Neural Network(NN))を用いる。詳細には、データ処理部150は、NNを用いたタスクを実行する。
図2は、第1の実施形態におけるデータ処理部150のNNを模式的に示す図である。このNNは、3つのNN(NN、NN、及びNN)を含む。
NN(第1のニューラルネットワーク)は、ドメイン情報有りデータとドメイン情報無しデータとを入力とし、所定の変換後のデータを出力とするNNである。NNのタスクは、所定の変換のタスクである。NNのタスク(処理)は、ドメイン適応に相当するタスク(処理)である。ただし、NNのタスクは、ドメイン適用に限定されない。NNのタスクは、以下で説明する、クラス識別タスクの結果を向上させ、ドメイン識別タスクの結果を劣化させる変換であればよい。
NN(第2のニューラルネットワーク)は、NNで変換されたデータ(変換後のデータ)を入力とし、変換後のデータのクラス識別(又は、クラスを予測)を出力とするNNである。NNのタスク(処理)は、クラス識別のタスク(処理)である。クラスは、複数である。そこで、NNは、一般的に、ベクトルとしてクラスを出力する。
NN(第3のニューラルネットワーク)は、NNで変換されたデータ(変換後のデータ)を入力として、変換後のデータにおけるドメイン識別(又は、ドメインを予測)を出力とするNNである。NNのタスク(処理)は、ドメイン識別のタスク(処理)である。ドメインは、複数である。そこで、NNは、一般的に、ベクトルとしてドメインを出力する。
NN、NN、及びNNのパラメータは、それぞれ、パラメータθ(第1のパラメータ)、θ(第2のパラメータ)、及びθ(第3のパラメータ)とする。ただし、これは、各パラメータを一つに限定するものではない。一部、又は全てのパラメータが複数のパラメータで構成されてもよい。
以下の説明において、学習装置10は、パラメータθ、θ、及びθを、機械学習の対象とする。ただし、機械学習の対象は、上記に限定されない。学習装置10は、一部のパラメータを学習対象としてもよい。さらに、学習装置10は、パラメータの学習を分けて実行してもよい。例えば、学習装置10は、パラメータθ及びθを学習した後、パラメータθを学習してもよい。
以下の説明では、クラス識別のタスクは、データを2つのクラスのいずれであるかを識別するタスク(データを2つのクラスに分類するタスク)とする。さらに、ドメインを識別するタスクは、データを2つのドメインのいずれであるかを識別するタスク(データを2つのドメインに分類するタスク)とする。そして、タスク情報「y」及びドメイン情報「z」は、以下のように2値で表すとする。
y∈[0,1],z∈[0,1]
次に、ドメイン情報有り損失算出部110、ドメイン情報無し損失算出部120、タスク損失算出部130、及び、目的関数最適化部140の動作の詳細例を説明する。
ドメイン情報有り損失算出部110は、ドメイン情報有りデータにおいて、NN及びNNに基づくドメイン情報の予測誤差に応じた損失(第1の損失)を算出する。本実施形態において、第1の損失を算出するための損失関数は、任意である。
例えば、ドメイン情報有り損失算出部110は、損失関数として、負の対数尤度を用いることができる。この説明において、ドメインは、2つである。そこで、ドメイン情報有り損失算出部110は、例えば、ドメイン情報の確率(P(z))を用いて、ドメイン情報有りデータに関連する第1の損失(Lds)を以下のように算出してもよい。
ds=−log(P(z))
[P(0),P(1)]=[NN(NN(x|θ)|θ)]
第2式は、ドメイン情報の確率ベクトル[P(0),P(1)]が、データ(x)におけるNN及びNNの条件付事後確率ベクトル[NN(NN(x|θ)|θ)](つまり、NNの出力であるドメインの事後確率ベクトル)であることを示す。
ドメイン情報有り損失算出部110は、全てのドメイン情報有りデータに関して、第1の損失を算出する。
ドメイン情報無し損失算出部120は、半教師有り学習におけるドメイン情報無しデータに関連する損失(第2の損失)を算出する。ドメイン情報無しデータは、教師無しデータである。そのため、第2の損失は、半教師有り学習における「教師無し損失」となる。本実施形態において、教師無し損失(第2の損失)は、任意である。
例えば、ドメイン情報無し損失算出部120は、教師無し損失として、一般的な半教師有り学習に用いられる教師無し損失を用いてもよい。例えば、ドメイン情報無し損失算出部120は、第2の損失として、次に示す一般的な半教師有りサポートベクターマシン(Support Vector Machine(SVM))で用いられている損失(Ldu)を用いてもよい。
du=max(0,1−|Pz(0)−0.5|)
この損失(Ldu)は、識別境界(P=0.5)付近のデータの損失が大きくなる。そのため、この損失(Ldu)を用いることは、識別境界付近にはデータが少ないという仮定を導入することに相当する。これに限られず、ドメイン情報無し損失算出部120は、識別境界とドメイン情報無しデータとの距離が短いと大きくなる損失を算出すればよい。
ドメイン情報無し損失算出部120は、全てのドメイン情報無しデータに関して、第2の損失を算出する。
このように、本実施形態の学習装置10は、ドメイン情報無しデータに関連する損失を算出する。
タスク損失算出部130は、タスクに関連する第3の損失として、ドメイン情報有りデータ及びドメイン情報無しデータのタスク情報を用いて、NNのタスクにおける予測誤差に応じた損失(第3の損失)を算出する。タスク情報が一部のデータに含まれない場合、タスク損失算出部130は、タスク情報を含むデータを用いて損失を算出する。
本実施形態において、第3の損失を算出する手法は、任意である。例えば、タスク情報がクラスに関連する情報(クラス情報)を含むとする。この場合、タスク損失算出部130は、一般的なクラスの識別損失を用いてもよい。あるいは、タスク損失算出部130は、第3の損失(L)として、次に示すタスク情報(クラス情報)の確率(P(y))の負の対数尤度を用いてもよい。
=−log(P(y))
[Py(0),P(1)]=[NN(NN(x|θ)|θ)]
第2式は、クラス情報の確率ベクトル[P(0),P(1)]が、データ(x)におけるNN及びNNの条件付事後確率ベクトル[NN(NN(x|θ)|θ)](つまり、NNの出力であるクラスの事後確率ベクトル)であることを示す。
タスク損失算出部130は、タスク情報を含む全てのデータに関して、第3の損失を算出する。
目的関数最適化部140は、第1の損失と、第2の損失と、第3の損失とを基に目的関数を最適化するようなパラメータを算出(又はパラメータを修正)する。目的関数最適化部140が用いる手法は、任意である。例えば、目的関数最適化部140は、所定の複数の数式を含む目的関数において、全ての数式を同時に最適化するように、NNのパラメータθと、NNのパラメータθと、NNのパラメータθとを算出する。
本実施形態の説明では、パラメータの修正として、目的関数最適化部140は、NNとNNとの学習においては、それぞれを高精度に識別できるように学習する。一方、目的関数最適化部140は、NNの学習においては、NNの精度を高く、NNの精度を低くするように学習する。このように、目的関数最適化部140は、敵対的学習を実行する。数式を用いてこの関係の一例を示すと、次のとおりとなる。なお、「argmin()」は、括弧内の関数を最小値とする引き数(この場合パラメータ)を求める関数である。
θ=argmin(L
θ=argmin(Lds+Ldu
θ=argmin(L−Lds+Ldu
それぞれの等式は、次のことを示す。
(1)パラメータθは、タスク損失算出部130が算出する損失(L)を最小とするパラメータである。これは、第3の損失を小さくすることである。
(2)パラメータθは、ドメイン情報有り損失算出部110が算出する損失(Lds)とドメイン情報無し損失算出部120が算出する損失(Ldu)との合計を最小とするパラメータであることを示す。これは、第1の損失と第3の損失を小さくすることである。
(3)パラメータθは、タスク損失算出部130が算出する損失(L)とドメイン情報無し損失算出部120が算出する損失(Ldu)を小さくし、ドメイン情報有り損失算出部110が算出する損失(Lds)を大きくするパラメータであることを示す。これは、第2の損失及び第3の損失を小さくし、第1の損失を大きくすることである。
パラメータθは、第1の損失(Lds)が大きくなるように算出される。第1の損失(Lds)が大きいことは、NNのドメイン識別の精度が低いことである。そして、NNの精度が低いということは、ドメインが識別されていない、つまり、ドメインごとのデータの統計的性質が類似しているということである。
さらに、パラメータθは、第2の損失(Ldu)及び第3の損失(L)が小さくなるように算出される。これらの損失が小さいことは、クラスの識別の精度が高いことである。
したがって、上記の場合、目的関数最適化部140は、NNにおいて、ドメインの識別性を低下させる(例えば、ドメインごとのデータの統計的性質は似ている)が、クラスの識別性を向上するようにパラメータθを算出する。具体的には、目的関数最適化部140は、第2の損失(Ldu)及び第3の損失(L)を小さくし、かつ、第1の損失(Lds)が大きくするようにパラメータθを算出する。
一方、パラメータθは、第1の損失(Lds)と第2の損失(Ldu)を小さくするように算出される。これは、ドメイン識別の精度を高くすることである。
言い換えると、目的関数最適化部140は、敵対的学習を実現している。
データ処理部150は、このように算出されたパラメータθを適用したNNを用いて、ドメイン情報有りデータ及びドメイン情報無しデータを変換する。さらに、データ処理部150は、算出されたパラメータθを適用したNNを用いてクラスを識別する。そのため、データ処理部150は、ドメイン情報有りデータに加え、ドメイン情報無しデータにおいてもドメインにおける統計的性質は似ているが、クラスの識別性を向上した変換を実現する。このように、学習装置10は、ドメイン情報有りデータ及びドメイン情報無しデータを用いた半教師有り学習を実現できる。
さらに、目的関数最適化部140は、ドメイン情報無しデータを用いた損失(第2の損失)を、NN及びパラメータθ及びNNのパラメータθの算出に用いる。つまり、目的関数最適化部140は、これらのパラメータの算出にも半教師有り学習を適用している。そのため、学習装置10は、ドメイン情報有りデータのみを用いた場合に比べ、より統計的性質のずれが少ない学習を実現できる。
[効果の説明]
次に、第1の実施形態に係る学習装置10の効果を説明する。
第1の実施形態に係る学習装置10は、半教師有り学習においても、ドメイン情報有りデータに加え、ドメイン情報無しデータを用いた学習を実現するとの効果を奏する。
その理由は、次のとおりである。
第1の実施形態に係る学習装置10は、ドメイン情報を教師とした半教師有り学習を実行する。学習装置10は、ドメイン情報有り損失算出部110と、ドメイン情報無し損失算出部120と、タスク損失算出部130と、目的関数最適化部140と、データ処理部150とを含む。データ処理部150は、ドメイン情報有りデータ及びドメイン情報無しデータを入力とし所定の変換後のデータを出力とする第1のニューラルネットワークを含む。さらに、データ処理部150は、変換後のデータを入力としクラス識別の結果を出力とする第2のニューラルネットワークと、変換後のデータを入力としドメイン識別の結果を出力とする第3のニューラルネットワークとを含む。ドメイン情報有り損失算出部110は、ドメイン情報有りデータを用いてドメイン識別の結果における損失である第1の損失を算出する。ドメイン情報無し損失算出部120は、ドメイン情報無しデータを用いて半教師有り学習における教師無し損失である第2の損失を算出する。タスク損失算出部130は、ドメイン情報有りデータ及びドメイン情報無しデータの少なくとも一部を用いてクラス識別結果における損失である第3の損失を算出する。目的関数最適化部140は、第2の損失及び第3の損失を小さく、かつ、第1の損失を大きくするように、第1のニューラルネットワークないし第3のニューラルネットワークのパラメータを修正する。
学習装置10は、ドメイン情報有りデータに関連する損失(第1の損失)と、ドメイン情報無しデータに関連する損失(第2の損失)と、所定の処理(タスク)に関連する損失(第3の損失)とを算出する。さらに、学習装置10は、第1ないし第3の損失を用いて、所定の目的関数を最適化するようにデータ処理部150のパラメータを算出する。そして、データ処理部150は、そのパラメータを用いて、ドメイン情報有りデータとドメイン情報無しデータとを変換し、所定の処理(例えば、クラスの識別のタスク)を実行する。このように、学習装置10は、ドメイン情報有りデータに加え、ドメイン情報無しデータを用いた半教師有り学習を実現できる。
さらに、目的関数最適化部140は、敵対的学習を用いることができる。そのため、学習装置10は、ドメイン情報無しデータを含む半教師有り学習においても、ドメイン適応に相当する敵対的学習を実現できる。
その結果、学習装置10は、ドメイン情報有りデータを用いた学習に比べ、ドメイン情報無しデータを用いてより学習の精度を向上できる。
次に、図面を参照して、効果をさらに説明する。
図5は、第1の実施形態に係る学習装置10の効果の説明に用いるデータを模式的に示す図である。図5において、上下方向が、クラス(例えば、顔又は非顔)の識別方向である。左右方向が、ドメイン(例えば、照明の位置)の識別方向である。なお、ドメイン情報無しデータは、ドメインの位置が不明なデータであるので、本来的には、図5における位置が不定となる。しかし、説明の便宜のため、図5に示されているデータは、そのデータの取得時の情報などを参考にしたドメインの位置に配置されている。また、図5に示されているデータは、説明の便宜のため、クラスの位置に関しても他の情報などを参照して配置されている。
図5において左側の楕円の範囲が、変換前の第1のドメイン(ドメイン1)の範囲を示す。ドメイン1の一例は、右からの照明である。
円形のデータが、ドメイン情報有りデータを示す。白丸は、クラス1のデータである。黒丸は、クラス2のデータである。
矩形のデータが、ドメイン情報無しデータを示す。白抜きの矩形が、クラス1のデータである。黒塗の矩形が、クラス2のデータである。
右側の楕円の範囲が、第2のドメイン(ドメイン2)の範囲を示す。ドメイン2の一例は、左からの照明である。
斜め十字のデータが、ドメイン情報有りデータを示す。白抜きの斜め十字が、クラス1のデータである。黒塗りの斜め十字が、クラス2のデータである。
三角のデータが、ドメイン情報無しデータを示す。白抜きの三角が、クラス1のデータである。黒塗りの三角が、クラス2のデータである。
図6は、図5のデータに対して、一般的なドメイン適応を実行した場合の結果の一例を模式的に示す図である。
図6に示されているように、一般的なドメイン適用は、ドメイン情報有りデータを用いる。そのため、一般的なドメイン適用は、ドメイン情報無しデータを用いることができず、ドメイン情報有りデータを用いた結果となっている。この例では、ドメイン情報無しデータに対して、クラスの識別が不正確となっている。例えば、クラス境界が、ドメイン情報無しデータの近くとなっている。
図7は、第1の実施形態に係る学習装置10のデータ変換の一例を模式的に示す図である。
図7に示されているように、学習装置10は、ドメイン情報有りデータに加え、ドメイン情報無しデータを変換し、ドメインの方向に関してデータ全体の分布を一致させ、クラスを識別している。そのため、図7に示されているデータは、クラスの境界に近いデータがない。つまり、学習装置10は、適切なクラスの識別を学習できた。このように、学習装置10は、ドメイン情報無しデータがある場合でも、データ変換後のドメインにおける統計的性質が一致するようにデータを変換した学習を実現できる。
[変形例]
タスクに関連する損失は、上記に限定されない。例えば、上記でタスク情報の一例として示したクラス情報は、取得できない場合がある。そこで、変形例として、タスク情報を取得できない場合に対応する学習装置11について説明する。
図3は、変形例である学習装置11の構成の一例を示すブロック図である。学習装置11は、タスク損失算出部130、目的関数最適化部140、及びデータ処理部150に替えて、タスク情報無し損失算出部131、目的関数最適化部141及びデータ処理部151を含む。
データ処理部151は、データ処理部150とは異なるNNを含む。
図8は、変形例におけるデータ処理部151のNNを模式的に示す図である。
データ処理部151は、3つのNN(NN、NN、NN)を含む。図8に示されているNNは、図2のNNと比べ、NNの代わりにNNを含む。
NN及びNNは、図2と同じである。
NNは、NNで変換されたデータを入力として、変換後のデータを再構成したデータを出力とするNNである。再構成とは、変換後のデータを変換前のデータに相当するデータに構成し直す動作である。NNのタスク(処理)は、再構成のタスク(処理)である。NNは、第3のニューラルネットワークの一例である。
タスク情報無し損失算出部131は、第3の損失として、再構成誤差を用いる。具体的には、タスク情報無し損失算出部131は、第3の損失として、「L」に替えて、次に示す「L」を用いる。損失(L)は、再構成誤差に相当する。また、再構成誤差は、下記に示されているように、2乗誤差である。
=||x−NN(NN(x|θ)|θ)||
パラメータθは、NNのパラメータである。||・||はノルムである。
タスク情報無し損失算出部131は、クラスの識別などのタスク情報を用いない。そのため、タスク情報無し損失算出部131は、タスク情報を得られない場合でも、第3の損失を算出できる。
目的関数最適化部141は、Lに替えてLを用いてパラメータを最適化する。
そして、データ処理部151は、目的関数最適化部141が最適化したパラメータを用いればよい。
学習装置11は、学習装置10と同様に、ドメイン情報有りデータに加え、ドメイン情報無しデータを用いた半教師有り学習を実現するとの効果を奏する。
その理由は、タスク情報無し損失算出部131と目的関数最適化部141とが、上記のとおり動作して、タスク情報がない場合でも、適切なパラメータを算出できるためである。そして、データ処理部151が、そのパラメータを用いて所定のタスク(例えば、データの再構成)を実行する。
なお、学習装置10が、タスク損失算出部130に加え、タスク情報無し損失算出部131を含んでもよい。この場合、目的関数最適化部140は、第3の損失として、タスク損失算出部130が算出した損失及びタスク情報無し損失算出部131が算出した損失を用いればよい。
[実施形態の概要]
図面を参照して、学習装置10及び学習装置11の概要である学習装置12を説明する。
図10は、第1の実施形態の概要である学習装置12の構成の一例を示すブロック図である。
学習装置12は、ドメイン情報を教師とした半教師有り学習を実行する。学習装置12は、第1の損失算出部112と、第2の損失算出部122と、第3の損失算出部132と、パラメータ修正部142と、データ処理部152とを含む。データ処理部152は、ドメイン情報を含む第1のデータ及びドメイン情報を含まない第2のデータを入力とし所定の変換後のデータを出力とする第1のニューラルネットワークを含む。さらに、データ処理部152は、変換後のデータを入力とし所定の処理の結果を出力とする第2のニューラルネットワークと、変換後のデータを入力としドメイン識別の結果を出力とする第3のニューラルネットワークとを含む。第1の損失算出部112は、第1のデータを用いてドメイン識別の結果における損失である第1の損失を算出する。第2の損失算出部122は、第2のデータを用いて半教師有り学習における教師無し損失である第2の損失を算出する。第3の損失算出部132は、第1のデータ及び第2のデータの少なくとも一部を用いて所定の処理の結果における損失である第3の損失を算出する。パラメータ修正部142は、第2の損失及び第3の損失を小さく、かつ、第1の損失を大きくするように、第1のニューラルネットワークないし第3のニューラルネットワークのパラメータを修正する。
第1の損失算出部112の一例が、ドメイン情報有り損失算出部110である。第2の損失算出部122の一例が、ドメイン情報無し損失算出部120である。第3の損失算出部132の一例が、タスク損失算出部130及びタスク情報無し損失算出部131である。パラメータ修正部142の一例が、目的関数最適化部140及び目的関数最適化部141である。データ処理部152の一例が、データ処理部150及びデータ処理部151である。第1のデータの一例が、ドメイン情報有りデータである。第2のデータの一例が、ドメイン情報無しデータである。
このように構成された学習装置12は、学習装置10及び学習装置11と同様の効果を奏する。
その理由は、学習装置12の各構成が、学習装置10及び学習装置11の構成と同様の動作を実行するためである。
なお、学習装置12は、第1の実施形態の最小構成である。
[ハードウェア構成]
以上の説明した学習装置10、学習装置11、及び、学習装置12のハードウェア構成について学習装置10を用いて説明する。
学習装置10は、次のように構成される。
例えば、学習装置10の各構成部は、ハードウェア回路で構成されてもよい。
あるいは、学習装置10において、各構成部は、ネットワークを介して接続した複数の装置を用いて、構成されてもよい。
あるいは、学習装置10において、複数の構成部は、1つのハードウェアで構成されてもよい。
あるいは、学習装置10は、CPU(Central Processing Unit)と、ROM(Read Only Memory)と、RAM(Random Access Memory)とを含むコンピュータ装置として実現されてもよい。学習装置10は、上記構成に加え、さらに、入出力接続回路(IOC:Input and Output Circuit)を含むコンピュータ装置として実現されてもよい。あるいは、学習装置10は、上記構成に加え、さらに、ネットワークインターフェース回路(NIC:Network Interface )を含むコンピュータ装置として実現されてもよい。
図11は、第1の実施形態に係る学習装置10のハードウェア構成の一例である情報処理装置600の構成の一例を示すブロック図である。
情報処理装置600は、CPU610と、ROM620と、RAM630と、内部記憶装置640と、IOC650と、NIC680とを含み、コンピュータ装置を構成している。
CPU610は、ROM620からプログラムを読み込む。そして、CPU610は、読み込んだプログラムに基づいて、RAM630と、内部記憶装置640と、IOC650と、NIC680とを制御する。そして、CPU610を含むコンピュータは、これらの構成を制御し、図1に示されている各構成の機能を実現する。構成とは、ドメイン情報有り損失算出部110と、ドメイン情報無し損失算出部120と、タスク損失算出部130と、目的関数最適化部140と、データ処理部150とである。
CPU610は、各機能を実現する際に、RAM630又は内部記憶装置640を、プログラムの一時記憶媒体として使用してもよい。
また、CPU610は、コンピュータで読み取り可能にプログラムを記憶した記録媒体700が含むプログラムを、図示しない記録媒体読み取り装置を用いて読み込んでもよい。あるいは、CPU610は、NIC680を介して、図示しない外部の装置からプログラムを受け取り、RAM630又は内部記憶装置640に保存して、保存したプログラムを基に動作してもよい。
ROM620は、CPU610が実行するプログラム及び固定的なデータを記憶する。ROM620は、例えば、P−ROM(Programmable−ROM)又はフラッシュROMである。
RAM630は、CPU610が実行するプログラム及びデータを一時的に記憶する。RAM630は、例えば、D−RAM(Dynamic−RAM)である。
内部記憶装置640は、情報処理装置600が長期的に保存するデータ及びプログラムを記憶する。また、内部記憶装置640は、CPU610の一時記憶装置として動作してもよい。内部記憶装置640は、例えば、ハードディスク装置、光磁気ディスク装置、SSD(Solid State Drive)又はディスクアレイ装置である。
ここで、ROM620、内部記憶装置640、及び、記録媒体700は、不揮発性(non−transitory)の記録媒体である。一方、RAM630は、揮発性(transitory)の記録媒体である。そして、CPU610は、ROM620、内部記憶装置640、記録媒体700、又は、RAM630に記憶されているプログラムを基に動作可能である。つまり、CPU610は、不揮発性記録媒体又は揮発性記録媒体を用いて動作可能である。
IOC650は、CPU610と、入力機器660及び表示機器670とのデータを仲介する。IOC650は、例えば、IOインターフェースカード又はUSB(Universal Serial Bus)カードである。さらに、IOC650は、USBのような有線に限らず、無線を用いてもよい。
入力機器660は、情報処理装置600の操作者からの入力指示を受け取る機器である。入力機器660は、例えば、キーボード、マウス又はタッチパネルである。
表示機器670は、情報処理装置600の操作者に情報を表示する機器である。表示機器670は、例えば、液晶ディスプレイである。
NIC680は、ネットワークを介した図示しない外部の装置とのデータのやり取りを中継する。NIC680は、例えば、LAN(Local Area Network)カードである。さらに、NIC680は、有線に限らず、無線を用いてもよい。
このように構成された情報処理装置600は、学習装置10と同様の効果を得ることができる。
その理由は、情報処理装置600のCPU610が、プログラムに基づいて学習装置10と同様の機能を実現できるためである。
[データ変換システム]
次に、図面を参照して、学習装置10を含むデータ識別システム20を説明する。以下の説明において、データ識別システム20は、学習装置10に替えて、学習装置11、又は、学習装置12を用いてもよい。
図12は、第1の実施形態に係るデータ識別システム20の構成の一例を示すブロック図である。
データ識別システム20は、学習装置10と、データ提供装置30と、データ取得装置40とを含む。
学習装置10は、データ提供装置30からドメイン情報有りデータとドメイン情報無しデータとを取得し、上記で説明した動作を基にデータ処理(タスク)の結果(例えば、クラスの識別結果)をデータ取得装置40に送信する。
データ提供装置30は、学習装置10に、ドメイン情報有りデータとドメイン情報無しデータとを提供する。
データ提供装置30は、任意である。例えば、データ提供装置30は、ドメイン情報有りデータとドメイン情報無しデータとを保存する保存装置でもよい。あるいは、データ提供装置30は、画像データを取得し、一部の画像にドメイン情報を付してその画像データをドメイン情報有りデータとし、残りの画像データをドメイン情報無しデータとする撮像装置でもよい。
さらに、データ提供装置30は複数の装置を含んでもよい。
例えば、データ提供装置30は、図12に一例として示されているように、ドメイン情報有りデータを保存する教師データ保存装置320と、ドメイン情報無しデータを取得する撮像装置310とを含んでもよい。
データ取得装置40は、学習装置10から、処理結果(例えば、クラスの識別結果)を取得し、所定の処理を実行する。例えば、データ取得装置40は、取得した識別結果を基に顔画像のパターン認識を実行する。さらに、データ取得装置40は、複数の装置を含んでもよい。例えば、データ取得装置40は、識別結果を用いてパターンを認識するパターン認識装置410と、パターン認識の結果及び/又は取得したクラスの識別結果を保存する結果保存装置420とを含んでもよい。
なお、学習装置10が、データ提供装置30及び/又はデータ取得装置40を含んでもよい。あるいは、データ提供装置30又はデータ取得装置40が、学習装置10を含んでもよい。
データ識別システム20は、ドメイン情報有りデータに加え、ドメイン情報無しデータを用いて、適切な処理(例えば、パターン認識)を実現できるとの効果を奏する。
その理由は、学習装置10が、上記のとおり、データ提供装置30から取得したドメイン情報有りデータとドメイン情報無しデータとを用いた学習を基にデータを処理する。そして、データ取得装置40が、処理結果を用いて所定の処理(例えば、パターン認識)を実現するためである。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2017年11月22日に出願された日本出願特願2017−224833を基礎とする優先権を主張し、その開示の全てをここに取り込む。
本発明は、画像処理及び音声処理に適用可能である。特に、本発明は、顔認識及び物体認識などのように、パターンを識別する用途に使用可能である。
10 学習装置
11 学習装置
12 学習装置
20 データ識別システム
30 データ提供装置
40 データ取得装置
110 ドメイン情報有り損失算出部
112 第1の損失算出部
120 ドメイン情報無し損失算出部
122 第2の損失算出部
130 タスク損失算出部
131 タスク情報無し損失算出部
132 第3の損失算出部
140 目的関数最適化部
141 目的関数最適化部
142 パラメータ修正部
150 データ処理部
151 データ処理部
152 データ処理部
310 撮像装置
320 教師データ保存装置
410 パターン認識装置
420 結果保存装置
600 情報処理装置
610 CPU
620 ROM
630 RAM
640 内部記憶装置
650 IOC
660 入力機器
670 表示機器
680 NIC
700 記録媒体

Claims (6)

  1. ドメイン情報を教師とした半教師有り学習において、
    前記ドメイン情報を含む第1のデータ及び前記ドメイン情報を含まない第2のデータを入力とし所定の変換後のデータを出力とする第1のニューラルネットワークと、前記変換後のデータを入力とし所定の処理の結果を出力とする第2のニューラルネットワークと、前記変換後のデータを入力としドメイン識別の結果を出力とする第3のニューラルネットワークとを含むデータ処理手段と、
    前記第1のデータを用いて前記ドメイン識別の結果における損失である第1の損失を算出する第1の損失算出手段と、
    前記第2のデータを用いて前記半教師有り学習における教師無し損失である第2の損失を算出する第2の損失算出手段と、
    前記第1のデータ及び前記第2のデータの少なくとも一部を用いて前記所定の処理の結果における損失である第3の損失を算出する第3の損失算出手段と、
    前記第2の損失及び前記第3の損失を小さく、かつ、前記第1の損失を大きくするように、前記第1のニューラルネットワークないし前記第3のニューラルネットワークのパラメータを修正するパラメータ修正手段と
    含み、
    前記所定の処理は、前記変換後のデータのクラス識別、前記変換後のデータのパターン認識、及び、前記変換後のデータを変換前のデータに相当するデータに構成し直す再構成の少なくとも一つである
    学習装置。
  2. 前記第1の損失算出手段が、
    前記第1のデータを用いて前記ドメイン情報の予測誤差に対応した前記第1の損失を算出する
    請求項1に記載の学習装置。
  3. 前記第2のニューラルネットワークが、
    前記所定の処理として前記変換後のデータのクラス識別を実行する場合、
    前記第2の損失算出手段が、
    前記クラス識別の結果である識別境界と前記第2のデータとの距離に応じた前記第2の損失を算出し、
    前記第3の損失算出手段が、
    前記第3の損失として、前記クラス識別における予測誤差を算出する
    請求項1又は2に記載の学習装置。
  4. 前記第2のニューラルネットワークが、
    前記変換後のデータの前記再構成を実行する場合、
    前記第3の損失算出手段が、
    前記第3の損失として、前記再構成における誤差を算出する
    請求項1又は2に記載の学習装置。
  5. ドメイン情報を教師とした半教師有り学習において、
    前記ドメイン情報を含む第1のデータ及び前記ドメイン情報を含まない第2のデータを入力とし所定の変換後のデータを出力とする第1のニューラルネットワークと、前記変換後のデータを入力とし所定の処理の結果を出力とする第2のニューラルネットワークと、前記変換後のデータを入力としドメイン識別の結果を出力とする第3のニューラルネットワークとを含む学習装置が、
    前記第1のデータを用いて前記ドメイン識別の結果における損失である第1の損失を算出し、
    前記第2のデータを用いて前記半教師有り学習における教師無し損失である第2の損失を算出し、
    前記第1のデータ及び前記第2のデータの少なくとも一部を用いて前記所定の処理の結果における損失である第3の損失を算出し、
    前記第2の損失及び前記第3の損失を小さく、かつ、前記第1の損失を大きくするように、前記第1のニューラルネットワークないし前記第3のニューラルネットワークのパラメータを修正し、
    前記所定の処理は、前記変換後のデータのクラス識別、前記変換後のデータのパターン認識、及び、前記変換後のデータを変換前のデータに相当するデータに構成し直す再構成の少なくとも一つである
    学習方法。
  6. ドメイン情報を教師とした半教師有り学習において、
    前記ドメイン情報を含む第1のデータ及び前記ドメイン情報を含まない第2のデータを入力とし所定の変換後のデータを出力とする第1のニューラルネットワークと、前記変換後のデータを入力とし所定の処理の結果を出力とする第2のニューラルネットワークと、前記変換後のデータを入力としドメイン識別の結果を出力とする第3のニューラルネットワークとを含むコンピュータに、
    前記第1のデータを用いて前記ドメイン識別の結果における損失である第1の損失を算出する処理と、
    前記第2のデータを用いて前記半教師有り学習における教師無し損失である第2の損失を算出する処理と、
    前記第1のデータ及び前記第2のデータの少なくとも一部を用いて前記所定の処理の結果における損失である第3の損失を算出する処理と、
    前記第2の損失及び前記第3の損失を小さく、かつ、前記第1の損失を大きくするように、前記第1のニューラルネットワークないし前記第3のニューラルネットワークのパラメータを修正する処理と
    を実行させ、
    前記所定の処理は、前記変換後のデータのクラス識別、前記変換後のデータのパターン認識、及び、前記変換後のデータを変換前のデータに相当するデータに構成し直す再構成の少なくとも一つである
    プログラム。
JP2019555296A 2017-11-22 2018-11-19 学習装置、学習方法、及び、プログラム Active JP6943291B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017224833 2017-11-22
JP2017224833 2017-11-22
PCT/JP2018/042665 WO2019102962A1 (ja) 2017-11-22 2018-11-19 学習装置、学習方法、及び、記録媒体

Publications (2)

Publication Number Publication Date
JPWO2019102962A1 JPWO2019102962A1 (ja) 2020-11-19
JP6943291B2 true JP6943291B2 (ja) 2021-09-29

Family

ID=66631903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019555296A Active JP6943291B2 (ja) 2017-11-22 2018-11-19 学習装置、学習方法、及び、プログラム

Country Status (3)

Country Link
US (1) US20200272897A1 (ja)
JP (1) JP6943291B2 (ja)
WO (1) WO2019102962A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11222210B2 (en) * 2018-11-13 2022-01-11 Nec Corporation Attention and warping based domain adaptation for videos
WO2020255260A1 (ja) * 2019-06-18 2020-12-24 日本電信電話株式会社 一般化データ生成装置、推定装置、一般化データ生成方法、推定方法、一般化データ生成プログラム、及び推定プログラム
CN110399856B (zh) * 2019-07-31 2021-09-14 上海商汤临港智能科技有限公司 特征提取网络训练方法、图像处理方法、装置及其设备
WO2021111831A1 (ja) * 2019-12-06 2021-06-10 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 情報処理方法、情報処理システム及び情報処理装置
CN112200297B (zh) * 2020-09-04 2024-03-01 星宸科技股份有限公司 神经网络优化方法、装置及处理器
WO2022137337A1 (ja) * 2020-12-22 2022-06-30 日本電気株式会社 学習装置、学習方法、及び、記録媒体
US20230143070A1 (en) * 2021-03-10 2023-05-11 Nec Corporation Learning device, learning method, and computer-readable medium

Also Published As

Publication number Publication date
WO2019102962A1 (ja) 2019-05-31
JPWO2019102962A1 (ja) 2020-11-19
US20200272897A1 (en) 2020-08-27

Similar Documents

Publication Publication Date Title
JP6943291B2 (ja) 学習装置、学習方法、及び、プログラム
CN110097130B (zh) 分类任务模型的训练方法、装置、设备及存储介质
US10885383B2 (en) Unsupervised cross-domain distance metric adaptation with feature transfer network
US10769496B2 (en) Logo detection
WO2018108129A1 (zh) 用于识别物体类别的方法及装置、电子设备
WO2019128646A1 (zh) 人脸检测方法、卷积神经网络参数的训练方法、装置及介质
US20160086047A1 (en) Apparatus and method for extracting feature of image including object
CN113837205B (zh) 用于图像特征表示生成的方法、设备、装置和介质
EP3745309A1 (en) Training a generative adversarial network
JP2011248876A (ja) 画像をオブジェクト及びそのパーツに関して効率的に解釈するためのシステムと方法
JP2017062778A (ja) 画像のオブジェクトを分類するための方法およびデバイスならびに対応するコンピュータプログラム製品およびコンピュータ可読媒体
CN108898181B (zh) 一种图像分类模型的处理方法、装置及存储介质
JP2008102611A (ja) 画像処理装置
Patel et al. An optimized deep learning model for flower classification using NAS-FPN and faster R-CNN
WO2023109361A1 (zh) 用于视频处理的方法、系统、设备、介质和产品
CN114330588A (zh) 一种图片分类方法、图片分类模型训练方法及相关装置
CN112364916A (zh) 基于迁移学习的图像分类方法、相关设备及存储介质
JPWO2016125500A1 (ja) 特徴変換装置、認識装置、特徴変換方法及びコンピュータ読み取り可能記録媒体
KR101700030B1 (ko) 사전 정보를 이용한 영상 물체 탐색 방법 및 이를 수행하는 장치
JP2021015479A (ja) 行動認識装置、行動認識方法、及び行動認識プログラム
CN116740421A (zh) 基于无监督公共子空间学习模型的遥感图像分类方法和装置
US20230134508A1 (en) Electronic device and method with machine learning training
Lin et al. Robot grasping based on object shape approximation and LightGBM
JP2021018477A (ja) 情報処理装置、情報処理方法、及びプログラム
JP2023090592A (ja) OCT-GAN(Neural ODE-based Conditional Tabular Generative Adversarial Networks)装置及びOCT-GAN方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200422

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210622

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210720

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210810

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210823

R150 Certificate of patent or registration of utility model

Ref document number: 6943291

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150