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

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

Info

Publication number
JP7414531B2
JP7414531B2 JP2020000148A JP2020000148A JP7414531B2 JP 7414531 B2 JP7414531 B2 JP 7414531B2 JP 2020000148 A JP2020000148 A JP 2020000148A JP 2020000148 A JP2020000148 A JP 2020000148A JP 7414531 B2 JP7414531 B2 JP 7414531B2
Authority
JP
Japan
Prior art keywords
data
domain
neural network
parameters
inference result
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
JP2020000148A
Other languages
English (en)
Other versions
JP2021110968A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2020000148A priority Critical patent/JP7414531B2/ja
Priority to US17/014,721 priority patent/US20210209452A1/en
Priority to EP20195099.5A priority patent/EP3846084A1/en
Publication of JP2021110968A publication Critical patent/JP2021110968A/ja
Application granted granted Critical
Publication of JP7414531B2 publication Critical patent/JP7414531B2/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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • 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/08Learning methods

Landscapes

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

Description

本発明の実施形態は学習装置、学習方法及びプログラムに関する。
クラス識別、物体検出及び位置回帰などの推定を行うニューラルネットワークなどの機械学習で使用される学習データを生成する技術が従来から知られている。例えば、変分自己符号化器(VAE)や敵対的ネットワーク(GAN)などのディープラーニングを用いて学習データに類似したデータを生成する技術が、学習データの水増しや学習データの代替に利用されている。
特開2018-139071号公報
SPLAT:Semantic Pixel-Level Adaptation Transforms for Detection(https://arxiv.org/pdf/1812.00929.pdf) Jun-Yan Zhu,Taesung Park,Phillip Isola,Alexei A.Efros,"Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks"ICCV 2017 A.Radford,L.Metz,and S.Chintala.Unsupervised representation learning with deep convolutional generative adversarial networks.In ICLR,2016 Phillip Isola,Jun-Yan Zhu,Tinghui Zhou,Alexei A.Efros,University of California, Berkeley,"Image-to-Image Translation with Conditional Adversarial Nets,"CVPR2017
しかしながら従来の技術では、推定に用いられるニューラルネットワークの汎化性能の向上に適した学習データを生成することが困難だった。
実施形態の学習装置は、推論部と変換部と第1の更新部と第2の更新部とを備える。推論部は、第1のドメインのデータを受け付け、第1の推論結果を出力する第1のニューラルネットワークを用いて推論タスクを実行する。変換部は、第2のドメインのデータを受け付け、前記第2のドメインのデータを前記第1のドメインのデータに類似する第1の変換データに変換する第2のニューラルネットワークを用いて、前記第2のドメインのデータを前記第1の変換データに変換する。第1の更新部は、前記第2のニューラルネットワークのパラメータを、前記第1の変換データの特徴を示す分布が、前記第1のドメインのデータの特徴を示す分布に近づくように更新する。第2の更新部は、前記第1の変換データが前記第1のニューラルネットワークに入力されたときに出力された第2の推論結果と、前記第1の変換データの正解ラベルと、前記第1の推論結果と、前記第1のドメインのデータの正解ラベルとに基づいて、前記第1のニューラルネットワークのパラメータを更新する。前記第1の更新部は、前記第1のドメインのデータ、及び、前記第1の変換データのいずれかの入力を受け付け、前記第1のドメインのデータか否かを判定する第3のニューラルネットワークを用いて、前記第2及び第3のニューラルネットワークに敵対的学習を行うことによって、前記第2及び第3のニューラルネットワークのパラメータを更新する。前記第1及び第3のニューラルネットワークは、少なくとも一部の重みを共有する。
第1実施形態の学習装置の機能構成の例を示す図。 第1実施形態のニューラルネットワークの構成例を示す図。 第1実施形態の学習方法の例を示すフローチャート。 第2実施形態のニューラルネットワークの構成例を示す図。 第2実施形態の学習方法の例を示すフローチャート。 第2実施形態の変形例のニューラルネットワークの構成例を示す図。 第3実施形態のニューラルネットワークの構成例を示す図。 第3実施形態の学習方法の例を示すフローチャート。 第4実施形態のニューラルネットワークの構成例を示す図。 第4実施形態の学習方法の例を示すフローチャート。
以下に添付図面を参照して、学習装置、学習方法及びプログラムの実施形態を詳細に説明する。
(第1実施形態)
第1実施形態の学習装置は、第1ドメインのデータとして例えば画像の入力を受け付け、推論タスクを行う第1のニューラルネットワークを学習する装置である。推論タスクは、例えば画像に映っている被写体がどのような物体なのかを識別する処理、画像内の物体の画像上の位置を推定する処理、画像内の各ピクセルのラベルを推定する処理、及び、物体の特徴点の位置を回帰する処理等を含む。
なお、第1のニューラルネットワークが行う推論タスクは、上記にあげた例に限らず、ニューラルネットワークで推論できるタスクであればどのようなものでもよい。
第1のニューラルネットワークに対する入力、すなわち第1のドメインのデータについても画像に限られない。例えば、第1のドメインのデータは、音声やテキスト、動画、あるいはそれらの組み合わせなど、第1のニューラルネットワークに入力され、第1のニューラルネットワークで計算可能なデータであれば任意でよい。
例えば、第1のニューラルネットワークの入力が、車載カメラによって撮影された前方の画像であり、学習装置が、画像内の他車両の向きを推定する推論タスクの学習を行う場合について説明する。
このような推論タスクを学習するために、第1実施形態の学習装置には、車載カメラであらかじめ撮影された画像(第1のドメインのデータ)と、正解ラベルのデータと、が格納されている。正解ラベルには、画像内に含まれる他車両の外接矩形や車両の外接直方体の地面と接している頂点の画像内の位置などが記述されている。
また、第1実施形態の学習装置は、第1のドメインのデータによる第1のニューラルネットワークの学習による汎化性能を向上させるため、第2のニューラルネットワークをさらに学習する。第2のニューラルネットワークは、第2のドメインのデータを、第1のドメインのデータに類似するように(第1のドメインのデータ風に)変換する。
第2のドメインのデータは、例えばCG(Computer Graphics)である。CGによる学習用の画像は、自動で大量に生成可能である。また、CGによって生成された学習用の画像では、例えば画像内の車両の外接矩形や車両の外接直方体の地面と接している頂点の画像内の位置などが記述された正解ラベルも、人間の手で教示することなく自動で生成可能である。
このように生成された学習用のCG画像(第2のドメインのデータ)と、それらに対する正解ラベルとが第1実施形態の学習装置に格納される。
なお、第2のドメインのデータは、CGに限られない。第2のドメインのデータ及びその正解ラベルは、第1のドメインのデータの水増しあるいは代替として利用できるデータと、正解データとの組であれば任意でよい。例えば第2のドメインのデータは、画像データでもよいし、言葉で定義されたテキストデータでもよい。
また正解ラベルについては、第1のドメインのデータの正解ラベルには含まれているが、第2のドメインのデータの正解ラベルには含まれていないデータがあってもよい。逆に、第2のドメインのデータの正解ラベルには含まれているが、第1のドメインのデータの正解ラベルには含まれていないデータがあってもよい。
また、第2のニューラルネットワークが、第1のドメインのデータの正解ラベルから第1のドメインのデータに対応するデータを生成できる場合、第2のドメインのデータの正解ラベルを用意しなくてもよい(第1のドメインのデータの正解ラベルと同一でもよい)。
第2のニューラルネットワークは、第2のドメインのデータを第1のドメインのデータに類似するように変換できるニューラルネットワークであれば任意でよい。第2のニューラルネットワークには、第2のドメインのデータ形式と第1のドメインのデータ形式とに基づいて、最も適切な変換技術を適用してよい。第2のニューラルネットワークに適用される変換技術は、例えばCycleGAN(非特許文献2)、DCGAN(非特許文献3)及びPix2Pix(非特許文献4)などである。
[構成例]
図1は、第1実施形態の学習装置1の構成例を示すブロック図である。この学習装置1は、例えば専用または汎用コンピュータを用いて構成される。第1実施形態の学習装置1は、図1に示すように、処理回路10、記憶回路20、通信部30、及び、各部を接続するバス40を備える。
処理回路10は、取得部11、変換部12、推論部13及び更新部14を備える。各部の処理の具体的な説明については後述する。なお、図1では、第1実施形態に関わる主要な機能ブロックを例示しているが、処理回路10が有する機能はこれらに限られない。
学習装置1で実行される各機能の処理は、例えば、コンピュータによって実行可能なプログラムの形態で記憶回路20に記憶されている。処理回路10は、記憶回路20からプログラムを読み出して実行することで、各プログラムに対応する機能を実現するプロセッサである。各プログラムを読み出した状態の処理回路10は、図1に示した各機能ブロックを有する。
なお、図1では、単一の処理回路10により各機能ブロックが実現されるものとして図示しているが、複数の独立したプロセッサを組み合わせて処理回路10を構成しても構わない。この場合、各処理機能がプログラムとして構成されてもよいし、特定の機能が専用の独立したプログラム実行回路に実装されてもよい。
上述の「プロセッサ」は、例えば、CPU(Central Processing Unit)やGPU(Graphical Processing Unit)などの汎用プロセッサ、あるいは、特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)、プログラマブル論理デバイス(例えば、単純プログラマブル論理デバイス(Simple Programmable Logic Device:SPLD)、複合プログラマブル論理デバイス(Complex Programmable Logic Device:CPLD)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array:FPGA))などの回路である。
プロセッサは記憶回路20に保存されたプログラムを読み出し実行することで機能を実現する。なお、記憶回路20にプログラムを保存する代わりに、プロセッサの回路内にプログラムを直接組み込むよう構成しても構わない。この場合、プロセッサは回路内に組み込まれたプログラムを読み出し実行することで機能を実現する。
記憶回路20は、処理回路10の各機能ブロックに伴うデータなどを必要に応じて記憶する。第1実施形態の記憶回路20は、プログラムと、各種の処理に用いられるデータとを記憶する。例えば、記憶回路20は、RAM(Random Access Memory)、フラッシュメモリなどの半導体メモリ素子、ハードディスク、光ディスクなどである。また、記憶回路20は、物体検出装置1の外部の記憶装置で代替されてもよい。記憶回路20は、LAN(Local Area Network)やインターネットなどにより伝達されたプログラムをダウンロードして記憶または一時記憶した記憶媒体であってもよい。また、記憶媒体は1つに限らず、複数の媒体から構成されてもよい。
記憶回路には、あらかじめ学習に用いる第1のドメインのデータ及びそのデータに対する正解ラベルと、第2のドメインのデータとそのデータに対する正解ラベルが格納されていてもよいし、別のサーバなどの装置にあらかじめ格納されている前述のデータを、LANなどを介して一部ずつ読み出し、記憶回路に格納してもよい。
通信部30は、有線または無線で接続された外部装置と情報の入出力を行うインタフェースである。通信部30は、ネットワークに接続して通信を行ってもよい。
次に、処理回路10が有する各機能ブロックの処理について説明する。
取得部11は、記憶回路20から第1のドメインのデータと、第1のドメインのデータの正解ラベルとを学習データとして読み出す。また、取得部11は、記憶回路20から第2のドメインのデータと、第2のドメインのデータの正解ラベルとを学習データとして読み出す。
変換部12は、ニューラルネットワークを用いて、第2のドメインのデータを受け付け、第2のドメインのデータを第1のドメインのデータに類似する第1の変換データに変換する。なお、変換に用いられるニューラルネットワークの構成の詳細については、後述する。
推論部13は、学習の対象となるニューラルネットワークに対し、取得機能11によって読み出された学習データを入力して、その入力に対するニューラルネットワークの出力を計算する。なお、学習の対象となるニューラルネットワークの構成の詳細については、後述する。
更新部14は、推論部13で計算された出力と、取得部11によって読み出された学習データ(第1のドメインのデータの正解ラベル、又は、第2のドメインのデータの正解ラベル)に基づいて、ニューラルネットワークのパラメータを更新する。なお、更新方法の詳細については後述する。
[ニューラルネットワークの構成例]
図2は第1実施形態のニューラルネットワークの構成例を示す図である。図2の例では、第1のドメインのデータとして実画像が用いられ、第2のドメインのデータとしてCGが用いられる場合を示す。
第1及び第2のドメインのデータは、R,G,Bのカラー画像でもよいし、色空間を変換したカラー画像(例えばY,U,Vのカラー画像)でもよい。また、第1及び第2のドメインのデータは、カラー画像をモノクロ化した1チャンネルの画像でもよい。また、第1及び第2のドメインのデータは、そのままの画像ではなく、例えばR,G,Bのカラー画像であれば、各チャンネルの画素値の平均値を引いた画像でもよい。また例えば、第1及び第2のドメインのデータは、各画素の画素値を0~1あるいは-1~1の範囲とした正規化画像などでもよい。正規化は、例えば各画素の画素値から平均値を引いた後、各画素値を分散あるいは画像の画素値のダイナミックレンジで割ることにより行われる。
図2に示されるように、第1のニューラルネットワーク(以下図面では「ニューラルネットワーク」を「NN」と示す)101aは、第1のドメインのデータの入力を受け付けると、第1の推論結果を出力する。
第2のニューラルネットワーク102は、第2のドメインのデータの入力を受け付けると、第2のドメインのデータを第1のドメインのデータに類似する第1の変換データに変換して出力する。
第1のニューラルネットワーク101bは、第1の変換データの入力を受け付けると、第2の推論結果を出力する。なお、第1のニューラルネットワーク101bのパラメータ(重み)は、少なくとも一部又は全部が、第1のニューラルネットワーク101aと共有(以下図面では「共有」を「Share」と示す)される。第1のニューラルネットワーク101a及び101bのパラメータ(重み)の全部が共有される場合、第1のニューラルネットワーク101a及び101bは、1つの第1のニューラルネットワーク101として実現される。
第1のニューラルネットワーク101a及び101bは、推論タスクを実行する上述の推論部13によって利用される。第2のニューラルネットワーク102は、上述の変換部12によって利用される。
第1のニューラルネットワーク101a及び101bと第2のニューラルネットワーク102のパラメータは、更新部14によって更新される。更新部14は、第1の更新部141と、第2の更新部142とを備える。
第1の更新部141は、第1のニューラルネットワーク101aから第1のドメインのデータを受け付ける。そして、第1の更新部141は、第2のニューラルネットワーク102のパラメータを、第1の変換データの特徴を示す分布が、第1のドメインのデータの特徴を示す分布に近づくように更新する。
第2の更新部142は、第1のニューラルネットワーク101bから第2の推論結果を受け付け、取得部11から第1の変換データの正解ラベルを受け付け、第1のニューラルネットワーク101aから第1の推論結果を受け付け、取得部11から第1のドメインのデータの正解ラベルを受け付ける。
そして、第2の更新部142は、第2の推論結果と、第1の変換データの正解ラベルと、第1の推論結果と、第1のドメインのデータの正解ラベルとに基づいて、第1のニューラルネットワーク101a及び101bのパラメータを更新する。
具体的には、第2の更新部142は、第1の推論結果と、第1のドメインのデータの正解ラベルとの差分から損失Lrealを計算する。また同様に、第2の更新部142は、第2の推論結果と、第1の変換データの正解ラベルとの差分から損失Lfakeを計算する。そして第2の更新部142は、LrealとLfakeとを下記式(1)によって重み付き加算することにより損失Lを求める。
L=a*Lreal+b*Lfake ・・・(1)
ただしa,bは所定の定数である。
そして第2の更新部142は、この損失Lが最小となるように第1のニューラルネットワーク101a及び101bのパラメータを更新する。
なお、第1のニューラルネットワーク101a及び101bのパラメータの更新方法については、ここに述べた方法だけでなく、第1のニューラルネットワーク101a及び101bの出力が第1及び第2のドメインの正解ラベルに近づく方法であれば任意でよい。
また損失の計算方法は、損失をニューラルネットワークに遡及させてパラメータを更新できれば、どのような計算で行ってもよく、タスクに応じた損失の計算方法を選択すればよい。例えば損失の計算方法は、クラス識別であれば例えばSoftmaxCrossEntropyLoss、回帰であればL1LossやL2Lossなどを選択すればよい。また、学習の進み具合に応じて、上記の定数a,bを適応的に変更してもよい。
また、第2の更新部142は、第2の推論結果と、第1の変換データの正解ラベルと、第1の推論結果と、第1のドメインのデータの正解ラベルとに基づいて、第2のニューラルネットワーク102のパラメータを更新する。具体的には、第2の更新部142は、損失Lが最小となるように第2のニューラルネットワーク102のパラメータを更新する。
[学習方法の例]
図3は第1実施形態の学習方法の例を示すフローチャートである。はじめに、取得部11が、記憶回路20から学習データ(第1のドメインのデータ、第1のドメインのデータの正解ラベル、第2のドメインのデータ、及び、第2のドメインのデータの正解ラベル)を読み出す。
取得部11は、例えば第1のドメインが実画像で第2のドメインがCGの場合、実画像とその正解ラベルとを1枚ずつ、CGとその正解ラベルとを1枚ずつ読み出してもよい。また例えば、取得部11は、実画像とその正解ラベルの組、及び、CGとその正解ラベルの組を、例えば2枚や4枚、8枚ずつなど複数枚をセットで読み出してもよい。また例えば、取得部11は、第1のドメインのデータ及び第2ドメインのデータの読み込み枚数を変えてもよい。
これらの入力の組(1度に処理対象とするデータの単位)を以降ではバッチと呼ぶことがある。また入力1バッチに対するパラメータ更新処理の回数をイテレーション数と呼ぶことがある。
次に、変換部12が、第2のニューラルネットワーク102による変換処理を実行する(ステップS2)。具体的には、変換部12は、読み込まれたバッチ内の第2のドメインのデータを第2のニューラルネットワーク102に入力し、第1の変換データを生成する。
次に、推論部13が、第1のニューラルネットワーク101a及び101bによる推論処理を実行する(ステップS3)。第1のニューラルネットワーク101aには、読み込まれたバッチ内の第1のドメインのデータが入力され、第1のニューラルネットワーク101bには、ステップS2の処理によって得られた第1の変換データが入力される。
次に、第2の更新部142が、ステップS2及びステップS3の処理結果に基づいて、上述の式(1)により定義された損失を計算する(ステップS4)。
次に、第2の更新部142が、ステップS4の処理によって計算された損失に基づいて、第1のニューラルネットワーク101a及びbを更新する(ステップS5)。
次に、第1の更新部141、及び、第2の更新部142が、第2のニューラルネットワーク102を更新する(ステップS6)。具体的には、第1の更新部141は、第2のニューラルネットワーク102のパラメータを、第1の変換データの特徴を示す分布が、第1のドメインのデータの特徴を示す分布に近づくように更新する。また、第2の更新部142は、ステップS4の処理によって計算された損失に基づいて、第2のニューラルネットワーク102を更新する。
次に、更新部14が、所定の回数(イテレーション数)、更新処理を繰り返したか否かを判定する(ステップS7)。所定の回数、更新処理を繰り返していない場合(ステップS7,No)、処理はステップS1に戻り、所定の回数、更新処理を繰り返した場合(ステップS7,Yes)、処理は終了する。
以上、説明したように、第1実施形態の学習装置1では、推論部13が、第1のドメインのデータを受け付け、第1の推論結果を出力する第1のニューラルネットワーク101を用いて推論タスクを実行する。変換部12は、第2のドメインのデータを受け付け、第2のドメインのデータを第1のドメインのデータに類似する第1の変換データに変換する第2のニューラルネットワーク102を用いて、第2のドメインのデータを第1の変換データに変換する。第1の更新部141は、第2のニューラルネットワーク102のパラメータを、第1の変換データの特徴を示す分布が、第1のドメインのデータの特徴を示す分布に近づくように更新する。第2の更新部142は、第1の変換データが第1のニューラルネットワーク101に入力されたときに出力された第2の推論結果と、第1の変換データの正解ラベルと、第1の推論結果と、第1のドメインのデータの正解ラベルとに基づいて、第1のニューラルネットワーク101のパラメータを更新する。
これにより第1実施形態の学習装置1によれば、推定に用いられるニューラルネットワーク(第1のニューラルネットワーク101)の汎化性能の向上に適した学習データを生成することができる。具体的には、第1実施形態の学習装置1では、例えば実画像を入力し目的とする推定タスクを実行する第1のニューラルネットワーク101と、大量に正解付き画像を生成できるCGなどを実画像のドメインに変換する第2のニューラルネットワーク102とを同時に学習できる。これにより第1のドメインの画像(実画像など)を推定する推定ネットワーク(第1のニューラルネットワーク101)の汎化性能を向上させるのに適した画像を第2のドメインの画像(CGなど)から生成することができ、推定ネットワークの汎化性能を向上させることができる。
(第2実施形態)
次に第2実施形態について説明する。第2実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。
[ニューラルネットワークの構成例]
図4は第2実施形態のニューラルネットワークの構成例を示す図である。図4に示すように、第2実施形態では、第1の更新部141が、更に第3のニューラルネットワーク103を用いて更新処理を行う点が、第1実施形態とは異なる。
第3のニューラルネットワーク103は、第1のドメインのデータ、及び、第1の変換データのいずれかの入力を受け付け、第1のドメインのデータか否かを判定する(第1のドメインのデータであるか、第1の変換データであるかを識別する)。
第1の更新部141は、第3のニューラルネットワーク103を用いて、第2のニューラルネットワーク102、及び、第3のニューラルネットワーク103に敵対的学習を行うことによって、第2のニューラルネットワーク102、及び、第3のニューラルネットワーク103のパラメータを更新する。
第1の更新部141は、入力が第1のドメインのデータであった場合には出力が1になるように、また入力が第1の変換データであった場合には出力が0になるように第3のニューラルネットワーク103のパラメータを更新する。第3のニューラルネットワーク103のパラメータの更新により最小化すべき損失Ldisは、例えば下記式(2)で表される。
dis=E(log(D(x)))
+E(log(1-D(y))) ・・・(2)
ただしE()は期待値を表す。xは第1のドメインのデータからサンプリングした入力集合を表す。yは第2のドメインのデータからサンプリングした入力集合を第2のニューラルネットワーク102に入力したときの出力である第1の変換データをサンプリングした入力集合を表す。D(x)は第3のニューラルネットワーク103にxを入力したときの出力を表す。D(y)は第3のニューラルネットワーク103にyを入力したときの出力を表す。
また、第1の更新部141は、第3のニューラルネットワーク103に第1の変換データを入力したときの出力が1になるように、第2のニューラルネットワーク102のパラメータを更新する。すなわち、第1の更新部141は、以下の損失Lgenを最小化するようにパラメータを更新する。
gen=E(log(D(y))) ・・・(3)
なお、敵対的学習方法の詳細は、例えば上述の非特許文献1に記載されている。また、上記の式(2),(3)ではなく、以下の式(4),(5)のように2乗誤差を最小化してもよい。
dis=E((1-D(x)))+E((D(y))) ・・・(4)
gen=E((1-D(y))) ・・・(5)
なお、損失を定義する式は、ここで提示した式(2)~(5)に限られず、敵対的に学習できる損失であれば、損失はどのような式で定義されていてもよい。
また、更新部14(第1の更新部141、及び、第2の更新部142)は、第2のニューラルネットワーク102を学習するとき、上述のLgenを以下の式(6)に変更して、Lgenを最小化するようにパラメータを更新してもよい。
gen=E((1-D(y)))+c*L ・・・(6)
ただし、cは所定の定数であり、Lは上述の式(1)で定義された第1のニューラルネットワーク101a及び101bの損失である。更新部14(第1の更新部141、及び、第2の更新部142)が、このLgenを最小化するようにパラメータを更新することで、第2のニューラルネットワーク102は第1のニューラルネットワーク101a及び101bの損失も考慮して学習を行うことができるようになる。これにより、第1のニューラルネットワーク101a及び101bの汎化性能を向上させることが可能な第1の変換データを、第2のニューラルネットワーク102が生成できるように、第2のニューラルネットワーク102を学習できる。
[学習方法の例]
図5は第2実施形態の学習方法の例を示すフローチャートである。ステップS11及びステップS12の処理は、第1実施形態のステップS1及びステップS2(図1参照)と同じなので省略する。
次に、第1の更新部141が、第3のニューラルネットワーク103を用いて、第1のドメインのデータ、及び、ステップS12の変換処理により得られた第1の変換データの識別処理を実行する(ステップS12)。具体的には、第1の更新部141が、第1の変換データ、及び、読み込まれたバッチ内の第1のドメインのデータを第3のニューラルネットワーク103に入力し、出力結果を得る。
次に、推論部13が、第1のニューラルネットワーク101a及び101bによる推論処理を実行する(ステップS13)。第1のニューラルネットワーク101aには、読み込まれたバッチ内の第1のドメインのデータが入力され、第1のニューラルネットワーク101bには、ステップS12の処理によって得られた第1の変換データが入力される。
次に、第1の更新部141、及び、第2の更新部142が、ステップS12~ステップS14の処理結果に基づいて、上述の式(1),(2),(6)により定義された損失を計算する(ステップS14)。
次に、第2の更新部142が、ステップS14の処理で上述の式(1)によって計算された損失に基づいて、第1のニューラルネットワーク101a及びbを更新する(ステップS15)。
次に、第1の更新部141が、ステップS14の処理で上述の式(2)によって計算された損失に基づいて、第3のニューラルネットワーク103を更新する(ステップS16)。
次に、更新部14(第1の更新部141、及び、第2の更新部142)が、ステップS14の処理で上述の式(6)によって計算された損失に基づいて、第2のニューラルネットワーク102を更新する(ステップS17)。
次に、更新部14が、所定の回数(イテレーション数)、更新処理を繰り返したか否かを判定する(ステップS18)。所定の回数、更新処理を繰り返していない場合(ステップS18,No)、処理はステップS1に戻り、所定の回数、更新処理を繰り返した場合(ステップS18,Yes)、処理は終了する。
(第2実施形態の変形例)
次に第2実施形態の変形例について説明する。変形例の説明では、第2実施形態と同様の説明については省略し、第2実施形態と異なる箇所について説明する。第1のニューラルネットワーク101a及び101b、第2のニューラルネットワーク102、並びに、第3のニューラルネットワーク103のうち、少なくとも2つ以上のニューラルネットワークは、少なくとも一部の重みを共有してもよい。
[ニューラルネットワークの構成例]
図6は第2実施形態の変形例のニューラルネットワークの構成例を示す図である。図6の例は、第3のニューラルネットワーク103と第1のニューラルネットワーク101a及び101bで一部の重みを共有させた場合の構成を示す。図6の例では、共有した部分の重みは、第1の更新部141、及び、第2の更新部142の双方から更新される。
(第3実施形態)
次に第3実施形態について説明する。第3実施形態の説明では、第2実施形態の変形例と同様の説明については省略し、第2実施形態の変形例と異なる箇所について説明する。第3実施形態では、CycleGAN構成を適用した場合について説明する。
[ニューラルネットワークの構成例]
図7は第3実施形態のニューラルネットワークの構成例を示す図である。図7に示す通り、第3実施形態では、第4のニューラルネットワーク104、及び、第5のニューラルネットワーク105を更に備える。
第4のニューラルネットワーク104は、第1のドメインのデータの入力を受け付けると、第1のドメインのデータを第2のドメインのデータに類似する第2の変換データに変換して出力する。
第5のニューラルネットワーク105は、第2のドメインのデータ、及び、第2の変換データのいずれかの入力を受け付け、第2のドメインのデータか否かを判定する(第2のドメインのデータであるか、第2の変換データであるかを識別する)。
図7の構成では、第1の更新部141は、第5のニューラルネットワーク105の入力が第2のドメインのデータであった場合には出力が1になるように、一方、第5のニューラルネットワーク105の入力が第2の変換データ206であった場合には出力が0になるように第5のニューラルネットワーク105のパラメータを更新する。
また、第1の更新部141は、第5のニューラルネットワーク105に第2の変換データを入力したときの出力が1になるように、第2のニューラルネットワーク102及び第4のニューラルネットワーク104のパラメータを更新する。
すなわち、以下の損失が最小になるようにパラメータを更新する。
dis=E(log(DB(x)))
+E(log(1-DB(y))) ・・・(2’)
ここでDB(x)は第5のニューラルネットワーク105の出力を示す。xは第2のドメインのデータからサンプリングした入力集合を表す。yは第1のドメインのデータからサンプリングした入力集合を第4のニューラルネットワーク104に入力したときの出力である第2の変換データをサンプリングした入力集合を表す。また、上記の式(2’)ではなく、以下の式(4’)のように2乗誤差を最小化してもよい。
dis=E((1-DB(x)))+E((DB(y))) ・・・(4’)
また、第1の更新部141は、第2の変換データを第2のニューラルネットワーク102に入力したときの出力が、第1のドメインのデータと同じになるように、第2のニューラルネットワーク102及び第4のニューラルネットワーク104のパラメータをさらに更新してもよい。すなわち、以下の損失が最小となるようにパラメータを更新する。
gen=(E((1-DA(y))
+E((1-DB(GB(x)))))/2
+λE(||GA(GB(x))-x||) ・・・(7)
ここでDA(x)はxを入力したときの第3のニューラルネットワーク103の出力を示し、DB(x)は第5のニューラルネットワーク105の出力を示す。またGB(x)は第4のニューラルネットワーク104の出力を示し、GA(x)は第2のニューラルネットワーク102の出力を示す。また、λは所定の係数である。
なお、第1のドメインのデータのスタイルと、第2のドメインのデータのスタイルとを相互に変換するような敵対的学習方法の詳細は、例えば非特許文献2に記載されている。
また、図7の構成において、第1のドメインのデータは、例えば撮影画像である。第2のドメインのデータは、例えばCGである。第1の変換データは、例えば撮影画像に類似するCGである。第2の変換データは、例えば撮影画像から変換されたCGである。
上述の図7の構成によって、第3実施形態では、変換部12が、第1のドメインのデータを受け付け、第1のドメインのデータを第2のドメインのデータに類似する第2の変換データに変換する第4のニューラルネットワーク104を用いて、第1のドメインのデータを第2の変換データに更に変換する。そして、第1の更新部141が、第2の変換データ、及び、第2のドメインのデータのいずれかの入力を受け付け、第2のドメインのデータか否かを判定する第5のニューラルネットワーク105を用いて、第4のニューラルネットワーク104及び第5のニューラルネットワーク105に敵対的学習を行うことによって、第4のニューラルネットワーク104及び第5のニューラルネットワーク105のパラメータを更に更新する。また、第1の更新部141は、第1のドメインのデータと、第2の変換データを第2のニューラルネットワーク102に更に入力したときの出力とに基づいて、第2のニューラルネットワーク102及び第4のニューラルネットワーク104のパラメータを更に更新する。
[学習方法の例]
図8は第3実施形態の学習方法の例を示すフローチャートである。ステップS31~ステップS33の処理は、第2実施形態のステップS11~ステップS13(図5参照)と同じなので省略する。
次に、変換部12が、第4のニューラルネットワーク104による変換処理を実行する(ステップS34)。具体的には、変換部12は、読み込まれたバッチ内の第1のドメインのデータを第4のニューラルネットワーク104に入力し、第2の変換データを生成する。
次に、第1の更新部141が、第5のニューラルネットワーク105を用いて、第2のドメインのデータ、及び、ステップS34の変換処理により得られた第1の変換データの識別処理を実行する(ステップS35)。具体的には、第1の更新部141が、第2の変換データ、及び、読み込まれたバッチ内の第1のドメインのデータを第5のニューラルネットワーク105に入力し、出力結果を得る。
次に、推論部13が、第1のニューラルネットワーク101a及び101bによる推論処理を実行する(ステップS36)。第1のニューラルネットワーク101aには、読み込まれたバッチ内の第1のドメインのデータが入力され、第1のニューラルネットワーク101bには、ステップS32の処理によって得られた第1の変換データが入力される。
次に、第1の更新部141、及び、第2の更新部142が、ステップS32~ステップS36の処理結果に基づいて、上述の式(1),(2),(2’),(7)により定義された損失を計算する(ステップS37)。
次に、第2の更新部142が、ステップS37の処理で上述の式(1)によって計算された損失に基づいて、第1のニューラルネットワーク101a及び101bを更新する(ステップS38)。
次に、第1の更新部141が、ステップS37の処理で上述の式(2)によって計算された損失に基づいて、第3のニューラルネットワーク103を更新する(ステップS39)。
次に、第1の更新部141が、ステップS37の処理で上述の式(2’)によって計算された損失に基づいて、第5のニューラルネットワーク105を更新する(ステップS40)。
次に、第1の更新部141が、ステップS37の処理で上述の式(7)によって計算された損失に基づいて、第2のニューラルネットワーク102を更新する(ステップS41)。
次に、第1の更新部141が、ステップS37の処理で上述の式(7)によって計算された損失に基づいて、第4のニューラルネットワーク104を更新する(ステップS42)。
次に、更新部14が、所定の回数(イテレーション数)、更新処理を繰り返したか否かを判定する(ステップS43)。所定の回数、更新処理を繰り返していない場合(ステップS43,No)、処理はステップS1に戻り、所定の回数、更新処理を繰り返した場合(ステップS43,Yes)、処理は終了する。
(第4実施形態)
次に第4実施形態について説明する。第4実施形態の説明では、第3実施形態と同様の説明については省略し、第3実施形態と異なる箇所について説明する。
[ニューラルネットワークの構成例]
図9は第4実施形態のニューラルネットワークの構成例を示す図である。なお、図9は、第1のニューラルネットワーク101a及び101bと、第2の更新部142との間に、更に、第6のニューラルネットワーク106a及び106bを設ける場合を示しており、他の部分の構成は第3実施形態と同じである(図7参照)。
図9に示すとおり、第6のニューラルネットワーク106a及び106bは、第1の推論結果であるか、第2の推論結果であるかを識別(判定)するニューラルネットワークである。第6のニューラルネットワーク106a及び106bの出力は、例えば1に近いほど第1の推論結果である可能性が高いことを示す。第6のニューラルネットワーク106a及び106bは、ニューラルネットワークの少なくとも一部又は全部の重みを共有する。第6のニューラルネットワーク106a及び106bのパラメータ(重み)の全部が共有される場合、第6のニューラルネットワーク106a及び106bは、1つの第6のニューラルネットワーク106として実現される。
第3の更新部143は、第6のニューラルネットワーク106a及び106bのパラメータを更新する。第3の更新部143は、ニューラルネットワーク106a及び106bの出力を受け付け、第6のニューラルネットワーク106aの出力である場合は1になり、第6のニューラルネットワーク106bの出力である場合は0になるように、第6のニューラルネットワーク106a及び106bのパラメータを更新する。第6のニューラルネットワーク106a及び106bのパラメータの更新により最小化すべき損失Ldisは、例えば下記式(8)もしくは(8’)で表される。
dis=E(log(DW(x)))
+E(log(1-DW(y))) ・・・(8)
dis=E((1-DW(x)))+E((DW(y))) ・・・(8’)
ただしE()は期待値を表す。xは第1のドメインのデータからサンプリングした入力集合を第1のニューラルネットワーク101aに入力したときの出力となる第1の推論結果の集合を表す。yは第2のドメインのデータからサンプリングした入力集合を第2のニューラルネットワークで変換した出力を第1のニューラルネットワーク101bに入力したときの出力となる第2の推論結果の集合を表す。DW(x)は第6のニューラルネットワーク106a及び106bにxを入力したときの出力を表す。DW(y)は第6のニューラルネットワーク106a及び106bにyを入力したときの出力を表す。
また、第3実施形態では、第2の更新部142は、第1の推論結果、第1のドメインのデータの正解ラベル、第2の推論結果、及び、第1の変換データの正解ラベルの他に、更に第6のニューラルネットワーク106bの出力に基づいて、第1のニューラルネットワーク101a及び101bを更新する。具体的には、第6のニューラルネットワーク106bの出力が1に近いほど、第1のドメインのデータ(例えば実画像)を用いた第1の推論結果と、第1の変換データ(例えばCGを実画像風に変換したデータ)を用いた第2の推論結果とが似ていると判断できる。したがって、第2の更新部142は、第6のニューラルネットワーク106bの出力が所定の閾値(例えば0.5)以上となる場合、第2の更新部142で算出された損失を第1のニューラルネットワーク101a及び101bのパラメータを更新する(損失を第1のニューラルネットワーク101a及び101bに伝搬させる)。
また、例えば第6のニューラルネットワーク106a及び106bは、第1のニューラルネットワーク101a及び101bの出力を例えば空間方向やチャンネル方向、あるいは出力ノードの集合に基づいて少なくとも1つ以上に分割し、それぞれの分割した出力について処理を行ってもよい。
この場合、分割された出力に応じた1つ以上の出力の平均値をとり、その平均値以上となった第1のニューラルネットワーク101a及び101bの出力部分に対して、第2の更新部142で算出される損失を伝搬させることによってパラメータを更新してもよい。また、分割された第1のニューラルネットワーク101a及び101bの出力に対する第6のニューラルネットワーク106bの出力が所定の閾値以上となった部分に対して、第2の更新部142で算出される損失を伝搬させることによってパラメータを更新してもよい。
[学習方法の例]
図10は第4実施形態の学習方法の例を示すフローチャートである。ステップS51~ステップS56の処理は、第3実施形態のステップS31~ステップS36(図8参照)と同じなので省略する。
次に、第3の更新部143が、第6のニューラルネットワーク106a及び106bを用いて、第1及び第2の推論結果の識別処理を実行する(ステップS57)。
次に、第1の更新部141、第2の更新部142、及び、第3の更新部143が、ステップS52~ステップS56の処理結果に基づいて、上述の式(1),(2),(6)もしくは(7),(8)により定義された損失を計算する(ステップS58)。
次に、第2の更新部142が、第6のニューラルネットワーク106bの出力が閾値(例えば0.5)以上であるか否かを判定する(ステップS59)。出力が閾値以上である場合(ステップS59,Yes)、処理はステップS60に進み、出力が閾値以上でない場合(ステップS59,No)、処理はステップS61に進む。
ステップS60~ステップS64の処理は、第3実施形態のステップS38~ステップS42(図8参照)と同じなので省略する。
次に、第3の更新部143が、第6のニューラルネットワーク106a及び106bのパラメータを更新する(ステップS65)。具体的には、第3の更新部143は、ステップS58の処理で上述の式(8)によって計算された損失に基づいて、第6のニューラルネットワーク106a及び106bを更新する。すなわち、第3の更新部143は、第6のニューラルネットワーク106aの出力である場合は1になり、第6のニューラルネットワーク106bの出力である場合は0になるように、第6のニューラルネットワーク106a及び106bのパラメータを更新する。
次に、更新部14が、所定の回数(イテレーション数)、更新処理を繰り返したか否かを判定する(ステップS66)。所定の回数、更新処理を繰り返していない場合(ステップS66,No)、処理はステップS1に戻り、所定の回数、更新処理を繰り返した場合(ステップS66,Yes)、処理は終了する。
なお、第1乃至第4実施形態の学習装置1の上述の処理機能は、上述したように、例えばコンピュータを用いて構成される学習装置1がプログラムを実行することにより実現される。この場合、第1乃至第4実施形態の学習装置1で実行されるプログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、第1乃至第4実施形態の学習装置1で実行されるプログラムを、インターネットなどのネットワーク経由で提供または配布するようにしてもよい。さらに、第1乃至第4実施形態の学習装置1で実行されるプログラムを、ROMなどの不揮発性の記録媒体に予め組み込んで提供するようにしてもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 学習装置
10 処理回路
11 取得部
12 変換部
13 推論部
14 更新部
20 記憶回路
30 通信部
141 第1の更新部
142 第2の更新部
143 第3の更新部

Claims (7)

  1. 第1のドメインのデータを受け付け、第1の推論結果を出力する第1のニューラルネットワークを用いて推論タスクを実行する推論部と、
    第2のドメインのデータを受け付け、前記第2のドメインのデータを前記第1のドメインのデータに類似する第1の変換データに変換する第2のニューラルネットワークを用いて、前記第2のドメインのデータを前記第1の変換データに変換する変換部と、
    前記第2のニューラルネットワークのパラメータを、前記第1の変換データの特徴を示す分布が、前記第1のドメインのデータの特徴を示す分布に近づくように更新する第1の更新部と、
    前記第1の変換データが前記第1のニューラルネットワークに入力されたときに出力された第2の推論結果と、前記第1の変換データの正解ラベルと、前記第1の推論結果と、前記第1のドメインのデータの正解ラベルとに基づいて、前記第1のニューラルネットワークのパラメータを更新する第2の更新部と、を備え、
    前記第1の更新部は、前記第1のドメインのデータ、及び、前記第1の変換データのいずれかの入力を受け付け、前記第1のドメインのデータか否かを判定する第3のニューラルネットワークを用いて、前記第2及び第3のニューラルネットワークに敵対的学習を行うことによって、前記第2及び第3のニューラルネットワークのパラメータを更新し、
    前記第1及び第3のニューラルネットワークは、少なくとも一部の重みを共有する、
    を備える学習装置。
  2. 前記第2の更新部は、前記第2の推論結果と、前記第1の変換データの正解ラベルと、前記第1の推論結果と、前記第1のドメインのデータの正解ラベルとに基づいて、前記第2のニューラルネットワークのパラメータを更に更新する、
    請求項1に記載の学習装置。
  3. 前記変換部は、前記第1のドメインのデータを受け付け、前記第1のドメインのデータを前記第2のドメインのデータに類似する第2の変換データに変換する第4のニューラルネットワークを用いて、前記第1のドメインのデータを前記第2の変換データに更に変換し、
    前記第1の更新部は、前記第2の変換データ、及び、前記第2のドメインのデータのいずれかの入力を受け付け、前記第2のドメインのデータか否かを判定する第5のニューラルネットワークを用いて、前記第4及び第5のニューラルネットワークに敵対的学習を行うことによって、前記第4及び第5のニューラルネットワークのパラメータを更に更新し、前記第1のドメインのデータと、前記第2の変換データを前記第2のニューラルネットワークに更に入力したときの出力とに基づいて、前記第2及び第4のニューラルネットワークのパラメータを更に更新する、
    請求項1又は2に記載の学習装置。
  4. 前記第1のドメインのデータは、撮影画像であり、
    前記第2のドメインのデータは、CG(Computer Graphics)であり、
    前記第1の変換データは、前記撮影画像に類似するCGであり、
    前記第2の変換データは、前記撮影画像から変換されたCGである、
    請求項に記載の学習装置。
  5. 前記第1及び第2の推論結果のいずれかの入力を受け付け、前記第1の推論結果であるか否かを判定する第6のニューラルネットワークのパラメータを更新する第3の更新部を更に備え、
    前記第2の更新部は、前記第2の推論結果を前記第6のニューラルネットワークに入力したときの出力に基づいて、前記第1のニューラルネットワークのパラメータを更新するか否かを判定する、
    請求項1乃至のいずれか1項に記載の学習装置。
  6. 第1のドメインのデータを受け付け、第1の推論結果を出力する第1のニューラルネットワークを用いて推論タスクを実行するステップと、
    第2のドメインのデータを受け付け、前記第2のドメインのデータを前記第1のドメインのデータに類似する第1の変換データに変換する第2のニューラルネットワークを用いて、前記第2のドメインのデータを前記第1の変換データに変換するステップと、
    前記第2のニューラルネットワークのパラメータを、前記第1の変換データの特徴を示す分布が、前記第1のドメインのデータの特徴を示す分布に近づくように更新するステップと、
    前記第1の変換データが前記第1のニューラルネットワークに入力されたときに出力された第2の推論結果と、前記第1の変換データの正解ラベルと、前記第1の推論結果と、前記第1のドメインのデータの正解ラベルとに基づいて、前記第1のニューラルネットワークのパラメータを更新するステップと、を含み、
    前記第1のドメインのデータの特徴を示す分布に近づくように更新するステップは、
    前記第1のドメインのデータ、及び、前記第1の変換データのいずれかの入力を受け付けるステップと、
    前記第1のドメインのデータか否かを判定する第3のニューラルネットワークを用いて、前記第2及び第3のニューラルネットワークに敵対的学習を行うことによって、前記第2及び第3のニューラルネットワークのパラメータを更新するステップと、を含み、
    前記第1及び第3のニューラルネットワークは、少なくとも一部の重みを共有する、
    学習方法。
  7. コンピュータを、
    第1のドメインのデータを受け付け、第1の推論結果を出力する第1のニューラルネットワークを用いて推論タスクを実行する推論部と、
    第2のドメインのデータを受け付け、前記第2のドメインのデータを前記第1のドメインのデータに類似する第1の変換データに変換する第2のニューラルネットワークを用いて、前記第2のドメインのデータを前記第1の変換データに変換する変換部と、
    前記第2のニューラルネットワークのパラメータを、前記第1の変換データの特徴を示す分布が、前記第1のドメインのデータの特徴を示す分布に近づくように更新する第1の更新部と、
    前記第1の変換データが前記第1のニューラルネットワークに入力されたときに出力された第2の推論結果と、前記第1の変換データの正解ラベルと、前記第1の推論結果と、前記第1のドメインのデータの正解ラベルとに基づいて、前記第1のニューラルネットワークのパラメータを更新する第2の更新部、として機能させ、
    前記第1の更新部は、前記第1のドメインのデータ、及び、前記第1の変換データのいずれかの入力を受け付け、前記第1のドメインのデータか否かを判定する第3のニューラルネットワークを用いて、前記第2及び第3のニューラルネットワークに敵対的学習を行うことによって、前記第2及び第3のニューラルネットワークのパラメータを更新し、
    前記第1及び第3のニューラルネットワークは、少なくとも一部の重みを共有する、
    プログラム。
JP2020000148A 2020-01-06 2020-01-06 学習装置、学習方法及びプログラム Active JP7414531B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020000148A JP7414531B2 (ja) 2020-01-06 2020-01-06 学習装置、学習方法及びプログラム
US17/014,721 US20210209452A1 (en) 2020-01-06 2020-09-08 Learning device, learning method, and computer program product
EP20195099.5A EP3846084A1 (en) 2020-01-06 2020-09-08 Learning device, learning method, and computer-readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020000148A JP7414531B2 (ja) 2020-01-06 2020-01-06 学習装置、学習方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2021110968A JP2021110968A (ja) 2021-08-02
JP7414531B2 true JP7414531B2 (ja) 2024-01-16

Family

ID=72432750

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020000148A Active JP7414531B2 (ja) 2020-01-06 2020-01-06 学習装置、学習方法及びプログラム

Country Status (3)

Country Link
US (1) US20210209452A1 (ja)
EP (1) EP3846084A1 (ja)
JP (1) JP7414531B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220327189A1 (en) * 2021-04-09 2022-10-13 Qualcomm Incorporated Personalized biometric anti-spoofing protection using machine learning and enrollment data

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019046390A (ja) 2017-09-06 2019-03-22 株式会社東芝 学習装置、学習方法、およびプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180157972A1 (en) * 2016-12-02 2018-06-07 Apple Inc. Partially shared neural networks for multiple tasks
US11078631B2 (en) * 2017-11-30 2021-08-03 Sperry Rail Holdings, Inc. System and method for inspecting a rail using machine learning
US10802488B1 (en) * 2017-12-29 2020-10-13 Apex Artificial Intelligence Industries, Inc. Apparatus and method for monitoring and controlling of a neural network using another neural network implemented on one or more solid-state chips
KR20210074748A (ko) * 2019-12-12 2021-06-22 삼성전자주식회사 도메인 적응에 기반한 네트워크의 트레이닝 방법, 동작 방법 및 동작 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019046390A (ja) 2017-09-06 2019-03-22 株式会社東芝 学習装置、学習方法、およびプログラム

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
BOUSMALIS, Konstantinos et al.,"Unsupervised Pixel-Level Domain Adaptation with Generative Adversarial Networks",arXiv [online],2017年08月,[2023年01月27日検索],インターネット<URL:https://arxiv.org/abs/1612.05424v2>,1612.05424v2
HUANG, Sheng-Wei et al.,"AugGAN: Cross Domain Adaptation with GAN-based Data Augmentation",Proceedings of the European Conference on Computer Vision (ECCV) [online],2018年,p. 718-731, [2023年07月20日検索],インターネット<URL:https://openaccess.thecvf.com/content_ECCV_2018/html/Sheng-Wei_Huang_AugGAN_Cross_Domain_ECCV_2018_paper.html>
LIU, Ming-Yu et al.,"Coupled Generative Adversarial Networks",arXiv [online],2016年09月,[2023年01月27日検索],インターネット<URL:https://arxiv.org/abs/1606.07536v2>,1606.07536v2
RADHAKRISHNAN, Sreedhar et al.,"Synthetic to Real World Image Translation Using Generative Adversarial Networks",IEEE Xplore [online],2018年10月,[2023年01月27日検索],インターネット<URL:https://ieeexplore.ieee.org/abstract/document/8493745>,Electronic ISBN: 978-1-5386-4430-0,DOI: 10.1109/ICCCNT.2018.8493745
西川由理 ほか,"人物検出における学習データ拡張のためのCycleGANの分散深層学習",情報処理学会研究報告 ハイパフォーマンスコンピューティング(HPC) [online],情報処理学会,2019年12月,Vol.2019-HPC-172,No.5,[2019年12月24日検索],インターネット<URL:https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_uri&item_id=201010&file_id=1&file_no=1>

Also Published As

Publication number Publication date
JP2021110968A (ja) 2021-08-02
US20210209452A1 (en) 2021-07-08
EP3846084A1 (en) 2021-07-07

Similar Documents

Publication Publication Date Title
US11640684B2 (en) Attribute conditioned image generation
US10565757B2 (en) Multimodal style-transfer network for applying style features from multi-resolution style exemplars to input images
CN109472360B (zh) 神经网络的更新方法、更新装置和电子设备
US10726555B2 (en) Joint registration and segmentation of images using deep learning
US11574198B2 (en) Apparatus and method with neural network implementation of domain adaptation
JP2020087103A (ja) 学習方法、コンピュータプログラム、分類器、及び生成器
CN113256592B (zh) 图像特征提取模型的训练方法、***及装置
US11301723B2 (en) Data generation device, data generation method, and computer program product
US11604999B2 (en) Learning device, learning method, and computer program product
JP7414531B2 (ja) 学習装置、学習方法及びプログラム
Rajput Mixed gaussian-impulse noise robust face hallucination via noise suppressed low-and-high resolution space-based neighbor representation
JP7106486B2 (ja) 学習装置、学習方法、プログラムおよび情報処理システム
JP2019023798A (ja) 超解像装置およびプログラム
US20230073175A1 (en) Method and system for processing image based on weighted multiple kernels
US7933449B2 (en) Pattern recognition method
JP2021015425A (ja) 学習方法、学習プログラム及び学習装置
US20220284545A1 (en) Image processing device and operating method thereof
JP7148078B2 (ja) 属性推定装置、属性推定方法、属性推定器学習装置、及びプログラム
JP2019082847A (ja) データ推定装置、データ推定方法及びプログラム
JP7047665B2 (ja) 学習装置、学習方法及び学習プログラム
US7324980B2 (en) Information processing apparatus and method
JP7163977B2 (ja) 推定装置、学習装置、それらの方法、およびプログラム
JP2023075764A (ja) 学習装置、学習方法及びプログラム
WO2024043109A1 (ja) 画像処理方法、画像処理装置、及びプログラム
KR20230157223A (ko) 영상 처리 장치 및 그 동작 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230914

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231228

R151 Written notification of patent or utility model registration

Ref document number: 7414531

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151