JP6750854B2 - 情報処理装置および情報処理方法 - Google Patents

情報処理装置および情報処理方法 Download PDF

Info

Publication number
JP6750854B2
JP6750854B2 JP2016104025A JP2016104025A JP6750854B2 JP 6750854 B2 JP6750854 B2 JP 6750854B2 JP 2016104025 A JP2016104025 A JP 2016104025A JP 2016104025 A JP2016104025 A JP 2016104025A JP 6750854 B2 JP6750854 B2 JP 6750854B2
Authority
JP
Japan
Prior art keywords
layer
learning
shared
recognition
task
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
JP2016104025A
Other languages
English (en)
Other versions
JP2017211799A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2016104025A priority Critical patent/JP6750854B2/ja
Priority to US15/603,241 priority patent/US10909455B2/en
Publication of JP2017211799A publication Critical patent/JP2017211799A/ja
Application granted granted Critical
Publication of JP6750854B2 publication Critical patent/JP6750854B2/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24137Distances to cluster centroïds
    • G06F18/2414Smoothing the distance, e.g. radial basis function networks [RBFN]
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures

Landscapes

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

Description

本発明は、情報処理装置および情報処理方法に関する。
画像・音声などのデータの内容を学習し認識を行なう技術がある。本明細書では、認識処理の目的を認識タスクと称する。たとえば、画像中から人間の顔の領域を検出する顔認識タスク、画像中にある物体(被写体)のカテゴリ(猫、車、建物など)を判別する物体カテゴリ認識タスク、シーンの種別(都市、山間、海岸など)を判別するシーン種別認識タスクなどの認識タスクがある。
上記のような認識タスクを学習・実行する技術としては、ニューラルネットワーク(以下、「NN」と記す。)が知られている。NNはNeural Networksの略である。深い(層の数が多い)多層NNは、ディープNN(DNN)と称される。DNNは、Deep Neural Networksの略である。特に、深い畳みこみNNは、ディープコンボリューショナルNN(DCNN)と称される。DCNNは、Deep Convolutional Neural Networksの略である。DCNNは性能(認識精度、認識性能)が高いことで近年注目されている。
DCNNは、各層において、前層からの出力に対して畳みこみ処理を行い次層に出力するようなネットワーク構造を有する。最終層は認識結果を表す出力層となる。各層には畳みこみ演算用のフィルタ(カーネル)が複数用意される。出力層に近い層では畳みこみによる結合ではなく通常のNNのような全結合の構造とするのが一般的である。畳みこみ演算用のフィルタは、以下の記載では畳みこみフィルタと称する。
DCNNの学習フェーズにおいては、畳みこみフィルタの値や全結合層の結合重み(両者をあわせて「学習パラメータ」と称する。)を誤差逆伝搬法(バックプロパゲーション:BP)などの方法を用いて教師付きデータから学習する。BPはBack Propagationの略である。
DCNNの認識フェーズにおいては、学習済DCNNにデータを入力し、各層において学習済みの学習パラメータによってデータを順次処理し、出力層から認識結果を得る。
また、複数の認識タスクを1つの学習手段(学習器)で学習・実行するような、マルチタスク学習と呼ばれる手法が存在する。たとえば、非特許文献1には、複数の認識タスク用の複数の出力ユニットを設けた1つの多層NNを用いて、複数の認識タスクを学習する方法が記載されている。非特許文献1では中間層はどの認識タスクも同じものを利用するとしており、中間層はすべての認識タスクのデータによって学習される。
非特許文献1のマルチタスク学習で扱う複数の認識タスクは、認識処理の内容にある程度の類似性があることを前提としている。類似した認識タスクを1つの学習器で学習することにより、それぞれの認識タスクのデータに含まれる共通的な知識を認識タスク間で相互に利用しあって学習し、認識性能が向上する場合があるとされている。共通性が薄い認識タスクの場合は、1つの学習器で同時に学習すると、個々に学習するよりも認識の性能が悪くなってしまう可能性もある。性能が悪くなるかどうかは、実際に学習・評価を行うまで分からない。
また、画像認識の認識タスクを学習するDCNNにおいては、入力に近い層で学習される学習パラメータは、認識タスクの差異(最終的に出力したい認識結果の違い)によらず、ある程度類似のパラメータが学習される。すなわち、異なる認識タスクで学習されたパラメータを相互に入れ替えて使用しても性能があまり落ちない場合がある。たとえば、2つの異なる認識タスク間で学習パラメータを入れ替えた場合、入力に近い層では性能低下が少ないが、出力に近い層では性能低下が大きくなることもある。
Caruana,R.(1997)"Multitask learning,Machine learning"28(1),41−75
非特許文献1のマルチタスク学習では、認識タスクのデータに含まれる共通的な知識を認識タスク間で相互に利用しあって学習することができるが、性能が悪くなるかどうかは実際に学習・評価を行うまで分からない。つまり、最適なNN構造を探索するためには網羅的(総当り的)な探索を行う必要がある。しかし、DCNNは学習に要する時間が長いため、最適なNN構造を網羅的に探索することは難しい。
また、マルチタスク学習では、学習パラメータの数が膨大であるため、認識処理実行時(認識フェーズ)には大量の学習パラメータを保持するための大量のメモリが必要である。
さらに、学習パラメータを用いて多数回の畳みこみ計算処理をするために、認識フェーズの処理時間が長くなる。
1つの計算環境(PCなど)上で同一の画像データに対する複数の認識タスクを同時に実行したい場合もある。たとえば、ユーザがカメラで撮影するたびに、顔認識、シーン種別認識、領域分割、構図良否判定などを実行し、その結果を、オートフォーカス、露出補正、構図ガイドなどに利用する場合、複数の認識タスクを同時に実行することになる。複数の認識タスクを同時に実行すると、認識タスクごとにそれぞれ学習した学習パラメータが必要になり、認識処理実行時の課題(学習時間の長さ、大量のメモリなど)はさらに大きくなる。
本発明は、上記した課題を解決すべく、複数のタスクを実行する複数の多層NNにおいて好適なNN構造を効率的に探索できる学習装置(情報処理装置)を提供することを目的とする。
本発明の1つの態様による情報処理装置は、複数のタスクを実行する複数の多層ニューラルネットワークを学習する学習手段と、前記複数の多層ニューラルネットワーク間で所定の階層の共用層候補を生成する生成手段と、前記共用層候補を用いた構造で、前記複数の多層ニューラルネットワークを再学習する第1の再学習手段と、前記再学習の評価に基づいて、前記複数のタスクのそれぞれについて、前記共用層候補を前記所定の階層で共用するかを判定する判定手段と、を有する。
本発明の情報処理装置によれば、複数のタスクを実行する複数の多層NNにおいて好適なNN構造を効率的に探索することができる。
本発明の実施形態1に係る学習装置(情報処理装置)の構成を示す図。 マルチタスク多層NNの初期構造を説明する図。 実施形態1の学習装置が実行する処理のフローチャート。 初期構造のマルチタスクDCNNに対する精度評価部の処理を説明する図。 1層目に対する共用層候補生成部の処理を説明する図。 候補マルチタスクDCNNを説明する図。 候補マルチタスクDCNNに対する精度評価部の処理を説明する図。 2層目に対する共用層候補生成部の処理を説明する図。 共用構造決定部によって決定されるマルチタスクDCNNの構造を示す図。 最終的に決定されるマルチタスクDCNNの構造を説明する図。 共用層候補生成部の処理を説明するためのフローチャート。 共用層候補採否判定部の処理を説明するためのフローチャート。
以下、本発明の実施形態を説明する。以下に説明する実施形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正または変更されるべきものであり、本発明は以下の実施形態に限定されるものではない。
(実施形態の概略)
背景技術で説明したように、DCNNは、最適(好適)なネットワーク構造を網羅的に探索することが難しい、大量の学習パラメータを保持するための大量のメモリが必要である、認識フェーズの処理時間が長くなるという課題を有する。このような課題を緩和または解消するためには、認識タスク実行時に必要な学習パラメータ数を少なくすることが考えられる。
もし1つの認識タスクを実行する単独のDCNNで複数の認識処理を実行すると、各認識タスクの認識性能を維持するのに十分な学習パラメータ数がそれぞれのDCNNで必要になってしまう。しかし、類似する認識タスク同士であれば、性能を維持したまま、入力に近い層の学習パラメータを認識タスク間で共用できる可能性がある。すなわち、入力に近い数層では認識タスク間で学習パラメータを共用し、それより上層では認識タスクごとに異なる学習パラメータを有する層に分岐して最終的に認識タスクごとの出力ユニット(出力層)を有するようなDCNNの構造を構築すればよい。そして、このDCNNの構造を、複数の認識タスクのデータを用いて学習すればよい。本明細書では、このようなDCNNの構造をマルチタスクDCNN(MTDCNN)構造と称する。MTはMulti−Taskの略である。
マルチタスクDCNN構造を採用すれば、入力に近い層においては、学習済みパラメータやそれを使った計算の結果が複数の認識タスク間で共用されることになり、認識処理時に要するメモリ量や計算時間を縮小することができる。しかし、複数の認識タスクのうちどの認識タスク間でどの層まで学習パラメータを共用させた構造が最も好適なマルチタスクDCNN構造であるかは、実際に学習処理を実行して性能評価するまでわからない。
入力に近い層を複数の認識タスク間で共用するようなマルチタスクDCNNの構造のバリエーション数を考えると、複数の認識タスクのすべての組み合わせについて、それぞれ何層目まで共用するかというバリエーションがあり、そのバリエーション数は多い。また、前述のように、DCNNの学習は一般的に長い時間を要する。よって、マルチタスクDCNNの構造のバリエーションすべてに対して実際に学習処理・性能評価をして好適なマルチタスクDCNN構造を決定するという総当り的な方法では、非常に時間がかかってしまう。
以下に説明する本発明の実施形態では、上記した問題点を解決または緩和することができる学習装置を説明する。この学習装置は、限定的な数の共有層候補を生成して、当該共有層候補を用いて好適なマルチタスクDCNNの構造を決定する。この学習装置は、マルチタスク多層NN学習装置と称することもできる。また、この学習装置を用いて認識処理を行うこともできるので、この学習装置は情報処理装置と称することもできる。
実施形態1
(学習装置の構成)
図1は実施形態1の学習装置10の構成を説明するためのブロック図である。学習装置10は、CPU11と、入力装置12と、出力装置13と、第1のメモリ14と、第2のメモリ15とを有する。CPU11、入力装置12、出力装置13、第1のメモリ14および第2のメモリ15は、計算機バス16により相互接続されている。
CPU11は、入力装置12、出力装置13、第1のメモリ14および第2のメモリ15の動作を制御する。たとえば、CPU11は、第2のメモリ15に格納されているデータを用いて、第1のメモリ14の機能(第1のメモリ14に記憶されているプログラム)を実行することにより、所定の処理を行う。
入力装置12は、たとえばマウスやキーボードである。学習装置10のユーザは、入力装置12を用いて、所望のデータや指示を第1のメモリ14や第2のメモリ15に入力することができる。出力装置13は、たとえば液晶ディスプレイやプリンタである。出力装置13は、音声出力部を有してもよい。
第1のメモリ14は、学習部20、精度評価部21、共用層候補生成部22、再学習部23、共用層候補採否判定部24、マルチタスク多層NN再学習部25、性能評価結果出力部26、NN構造出力部27および共用構造決定部28を有する。図1において、第1のメモリ14の各部は、機能ブロックで表わされている。
学習部20は、DCNNの学習手段であり、従来から知られている学習手段を使用することができる。
精度評価部21は、各認識タスクに対する精度評価を行う。具体的には、精度評価部21は、認識タスクの種別ごとに定義された精度を算出する。たとえば、認識タスクがシーン種別認識タスクであれば、精度評価部21は正解率(精度)などを算出する。また、認識タスクが顔の位置検出タスクであれば、精度評価部21は推定位置誤差の画像座標上のユークリッド距離などを算出する。本実施形態では、説明を簡単にするため、各認識タスクの精度の算出方法は、精度の値が大きいほど認識性能が良くなるように定義するものとする。
共用層候補生成部22は、i層の共用層候補を生成し、第2のメモリ15に共用層候補36として格納する。
再学習部23は、学習部20と同じ学習機能を有するが、学習の設定が異なる。再学習部23は、候補マルチタスクDCNN37のうち、層共用タスクリスト35(後述)に記録されている認識タスクについて学習する。候補マルチタスクDCNN37とは、層共用タスクリスト35に記録されている認識タスクのi層目を共用層候補36で共用するような構造をもつマルチタスクDCNN構造のことである。
共用層候補採否判定部24は、認識タスクごとに共用層候補SLiを採用するか否かを判定する。
マルチタスク多層NN再学習部25は、最終的に決定されたマルチタスク多層NN(学習済DCNN33の全体)を再学習する。
性能評価結果出力部26は、精度評価部21を用いて算出された各認識タスクの精度評価値を出力装置13に表示する。
NN構造出力部27は、DCNNの構造(たとえば、図10の共用構造図)を出力装置13に表示する。
共用構造決定部28は、共用層候補の採否判定結果に基づいて、マルチタスクDCNN構造を決定する。
第2のメモリ15は、学習データ30、ベリファイデータ31、許容劣化度32、学習済DCNN33、初期精度34、層共用タスクリスト35および共用層候補36を保持(格納)する。また、第2のメモリ15は、候補マルチタスクDCNN37、候補マルチタスクDCNN精度38、共用層候補母集団39、フィルタクラスタ40、許容精度41および共用層候補採否判定結果42を保持する。
学習データ30は、第2のメモリ15に予め格納されているものとする。本実施形態では認識対象のデータは画像であるとして説明するが、音声や文字列などのデータが認識対象であってもよい。学習データ30には、画像データ(学習画像)とそれに対する教師データ(GT、真値)の組が多数格納されている。つまり、画像データと教師データの組(ペア)が所定数格納されるというのが、学習データ30のフォーマットである。GTは、Ground Truthの略である。本実施形態では、認識タスクは複数あるものとし、1つの画像データに対して複数の認識タスクのGTが対応付けられているものとする。この対応付けは、具体的には、画像のファイル名と複数の認識タスクのGTとを羅列した表のようなテキストファイルで表せばよい。GTの表現は、たとえば、シーン種別認識タスクであれば答えとなるシーン種別を表すID(整数値)をGTとし、顔認識タスクで顔の位置を答えとする場合には顔位置を示す2次元画像座標値(2次元実数値)をGTとすればよい。
なお、1つの画像データに対してすべての認識タスクのGTが対応していなくてもよい。たとえば、ある画像には1つの認識タスクのGTのみが対応付けられており、他の認識タスクのGTは空欄であってもよい。その場合、ある認識タスクを単独で学習する際には、当該認識タスクのGTが記載されている学習データのみを学習・検証に用いればよい。
複数の認識タスクを同時に学習するマルチタスク学習を行う場合は、マルチタスク(複数の認識タスク)に含まれるすべての認識タスクのGTがすべて対応している学習データだけを使ってもよい。あるいは、1つ以上の認識タスクのGTが対応している学習データを使ってもよい。後者の場合で学習する際には、たとえば、学習に使用するデータにGTが対応付けられている出力ユニットのみから誤差を算出してバックプロパゲーションして学習する。
ベリファイデータ(ベリフィケーションデータ)31は、第2のメモリ15に予め格納されているものとする。ベリファイデータ31は、学習されたDCNNの性能を検証するためのデータ(画像)である。ベリファイデータ31は学習データ30とは重複しないデータ内容を持つ。ベリファイデータ31のフォーマット(構造)は、学習データ30のフォーマットと同様である。つまり、本実施形態では、ベリファイデータ31は、画像と各認識タスクのGTを含む。ベリファイデータは、検証データまたは照合データと称することもできる。
許容劣化度32は各認識タスクに対する許容劣化度であり、ユーザにより入力装置12を介して設定されて、第2のメモリ15に予め格納されているものとする。許容劣化度32は、ある認識タスクを個別に学習したシングルタスクDCNNの精度に比べて、下層部の学習パラメータを他の認識タスクと共用したマルチタスクDCNN(におけるその認識タスク)の精度が、どの程度劣化しても許容できるかを示す値である。本実施形態では、許容劣化度32は、認識タスクごとに、シングルタスクDCNNの精度に対するマルチタスクDCNNの精度の比率として、0.0以上1.0以下の実数値で設定される。この実数値は、予めユーザが設定しておく。つまり、ユーザが要求する精度の許容限界は、許容劣化度として表現・設定されている。
なお、ユーザが要求する精度の許容限界は、許容劣化度32として表現・設定しなくてもよい。たとえば、ユーザが要求する精度の許容限界は、精度評価部21によって算出される精度評価値の絶対値(許容精度値)で指定してもよい。その場合、共用層候補採否判定部24の判定は、シングルタスクDCNNの精度に許容劣化度32をかけたものを基準にして行われるのでなく、絶対値で指定した許容精度値を基準にして行われる。
学習済DCNN33は、たとえばバックプロパゲーションにより学習したDCNNである。初期精度34は、学習した初期構造のDCNNにおける各認識タスクの精度である。層共用タスクリスト35には、i層目で層を共用する可能性がある認識タスクのIDのリストが記載(記録)される。共用層候補36は、共用層候補生成部22により生成されたi層の共用層候補である。
候補マルチタスクDCNN37は、層共用タスクリスト35に記録されている認識タスクのi層目を共用層候補36で共用する構造をもつマルチタスクDCNNである。候補マルチタスクDCNN精度38は、再学習した候補マルチタスクDCNNのそれぞれの認識タスクの精度である。共用層候補母集団39は、層共用タスクリスト35に記録されているすべての認識タスクのi層目に含まれるすべての畳みこみフィルタの集団である。フィルタクラスタ40には、共用層候補母集団39を所定の数のクラスタにクラスタリングしたものが格納される。許容精度41は、認識タスクに対する許容精度である。共用層候補採否判定結果42は、認識タスクごとに共用層候補SLiを採用するかどうかを判定した結果である。
第1のメモリ14内に示されている各部(各機能ブロック)は、プログラムとして第1のメモリ14に記憶され、CPU11により実行される。
(ハードウェア構成)
図1に示す機能ブロックの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、たとえば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。さらに、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
また、第1のメモリ14と第2のメモリ15は、それぞれプログラムを格納するメモリとデータを格納するメモリとを区別しているだけであり、1つのメモリとしてもよい。
(マルチタスクDCNNの初期構造)
本実施形態の学習装置10は、初期構造を有するマルチタスクDCNNから、最終的に、複数の認識タスクに対して好適(または最適)であるような1つのマルチタスクDCNN構造を決定する。まずマルチタスクDCNNの初期構造について、図2を用いて説明する。
図2は、複数の認識タスクを個別に学習するように構成されたDCNN構造を説明する図である。このDCNN構造で処理する認識タスクの数をNとする。図2ではN=4である。
図2のDCNN構造(初期構造)では、各認識タスクのNN(ニューラルネットワーク)はすべての層において独自の層(学習パラメータ)をもっており、共用される中間層はない。図2のDCNN構造で学習するということは、各認識タスクを独立した個別のDCNNで学習することと事実上同じである。
なお、以下の説明をわかりやすくするため、図2では複数の認識タスクが入力画像301で連結して1つのネットワークのように図示されているが、実際には各認識タスクで独立したシングルタスク学習を行う。すなわち、入力画像301のブロックをそれぞれの認識タスクごとに分けて図示して、4つの独立した複数のDCNNとして表現しても同じである。図2において画像はIMGと記されている。
本処理を適用する状況としては、独立に学習された複数のDCNNが既に存在しており、それらから1つの好適なマルチタスクDCNN構造を生成する場合もある。
後述する本実施形態の全体の処理の流れ(図3)によって、図2で示した事実上独立している複数のDCNN初期構造を、1つの好適なマルチタスクDCNN構造に最適化(好適化)していく。このマルチタスクDCNN構造は、複数の認識タスクを実行可能であり、中間層の一部が認識タスク間で共用されているDCNN構造である。
なお、図2は、学習フェーズにおける例を示している。すなわち、出力層302の後にGT303を教師値として与えて学習する場合を示している。評価処理や認識処理を行う際には、GT303は与えず、出力層302の値をそのまま認識結果とすればよい。つまり、学習装置10によって学習されたマルチタスク多層ニューラルネットワークによって認識処理を実行すると、学習装置10は認識処理装置として機能することになる。
本実施形態では、学習するDCNNの畳みこみ層の数をMと表記する。図2ではM=4である。Mの数は認識タスクごとに異なってもよいが、本実施形態では説明を簡単にするため、N種類すべての認識タスクに対して同じM層のDCNNを学習するとして説明する。
また、M個の畳みこみ層の後には、全結合のNNによる層が数層つづくものとする。全結合は、図2ではFCと記してある(FC:Full Connect)。全結合層は複数層あってもよい。図2では、何層であってもまとめて1つのブロックで示してある。
図2のR1、R2、R3およびR4は認識タスクの種別を示し、Rと表したときの添え字Tは、認識タスクのID番号(1〜N)である。本実施形態では、上記したようにN=4である。畳みこみ層はCLTLと表す(CL:Convolution Layer)。下添え字Tは認識タスクのID番号であり、Lは層の階層番号(1〜M)である。上記したように、本実施形態ではM=4であり、階層番号は入力に近いほうから順に大きくなる。学習前の畳みこみ層はすべて適当な値で初期化されているものとする。
なお、各認識タスクの各層での畳みこみフィルタの数は事前に設定されているものとする。畳みこみフィルタの数は、認識タスク種別ごとに異なっていてもよい。以下の説明において、各認識タスクの各層の畳みこみフィルタの数をNCLTLで表す。添え字TとLは前述のとおりである。
(学習装置の処理フロー)
以下、図3を参照して本実施形態の学習装置10の処理の流れを説明する。
はじめに、S1において、学習部20を用いて図2に示した初期構造のDCNNを学習し、学習されたDCNNを、学習済DCNN33として第2のメモリ15に格納する。
前述のように、図2は学習フェーズ(学習時)のDCNNを示している。図2における入力画像301と各認識タスクのGT303として、第2のメモリ15に格納されている学習データ30を用いる。入力画像301は学習画像であり、GTはT番タスクに対するGTデータである。なお、上記したように、必ずしもすべての学習画像にすべての認識タスクのGTが対応付けられている必要はない。
以下の記載において、学習された層CLTLはCLTL[j]と表記する。jはその層を学習し直した累積学習回数である。すべての認識タスクのすべての層はS1で1回学習された状態なので、CLTL[1]となる。
S2において、第1のメモリ14の精度評価部21を用いて、S1で学習した初期構造のDCNNにおける各認識タスクの精度をそれぞれ算出し、初期精度34として第2のメモリ15に格納する。精度評価部21は、第2のメモリ15のベリファイデータ31を用いて学習済DCNN33の精度を算出すればよい。精度算出の定義が認識タスクごとに定義されていることは、前述したとおりである。
図4はS2の処理の詳細を説明する図である。S2で精度算出される(つまり精度評価される)学習済DCNN33は、すべての認識タスクのすべての層においてS1で1回学習されている状態なので、CLTL[1]と表記してある。第2のメモリ15のベリファイデータ31から画像を読み出して、当該画像をベリファイ画像401として学習済みDCNN33に入力し認識処理を行う。そして、各認識タスクの出力層OUTに現れる出力値402を、ベリファイデータ31から読み出した各認識タスクのGT403と比較し、各認識タスクの精度404を算出する。図4において、認識タスクR1〜R4の精度404は、それぞれ精度R1〜精度R4と記されている。
図3に戻ると、S3以降では、共用層候補の生成処理と、当該共用層候補の採用を認識タスクごとに判定する処理とを繰り返し行う。
S3において、共用対象とする層を示すインデックス(ループインデックス)iを1に初期化する。また、i層目で層を共用する可能性がある認識タスクのIDのリストを格納するメモリ(記憶部)として、第2のメモリ15の層共用タスクリスト35を初期化する。初期状態ではすべての認識タスクが層を共用できる可能性があるため、層共用タスクリスト35にはすべての認識タスクのIDを記録しておく。
S4において、共用層候補生成部22によりi層の共用層候補を生成し、第2のメモリ15に共用層候補36として格納する。i層の共用層候補は、SLiと記す。SLはShared Layerの略である。
共用層候補生成部22が行う処理の概要は以下のようなものである(詳細は図5参照)。層共用タスクリスト35に記録されているすべての認識タスクの所定の層(ここではi層目)に含まれるすべての畳みこみフィルタを共用層候補母集団と称することにする。共用層候補生成部22は、共用層候補母集団から代表的な畳みこみフィルタを選出(選択)して共用層候補を生成する。畳みこみ層に含まれる畳みこみフィルタの内容は複数の認識タスクのDCNNにおいて類似することがあり、互いに入れ替え可能なこともある。したがって、複数の認識タスクの畳みこみフィルタ(共用層候補母集団)から代表的なものを選んで共用層候補とすれば、当該共用層候補は、ある認識タスクの畳みこみ層と入れ替えても精度劣化が少ないことが期待できる。
図5は共用層候補生成部22が行う処理を説明する図である。図5において、共用層候補母集団は符号501で示されている。共用層候補母集団501は、すべての認識タスクのi層目全体に含まれるすべての畳みこみフィルタからなる。共用層候補母集団501から共用層候補生成部22により生成(算出)された共用層候補502は、図5においてSLiと記されている。添え字iは層の番号(1≦i≦M)である。図5のSL1は、1層目に対して生成された共用層候補であることを示す。
図3に戻ると、S4の次にS5が実行される。S5において、層共用タスクリスト35に記録されている認識タスクのi層目をS4で生成された共用層候補36(SLi)で共用するような構造をもつマルチタスクDCNN(MTDCNN)構造を生成する。生成したマルチタスクDCNN構造を、第2のメモリ15に候補マルチタスクDCNN37として格納する。
図6はS5で生成された候補マルチタスクDCNN37を説明する図である。
i=1の場合は層共用タスクリスト35には全部の認識タスクが記録されているため、全部の認識タスクで1層目は共用層候補SL1を共用するような構造が候補マルチタスクDCNN37になる。
i>1の場合は、層共用タスクリスト35に記録されていない認識タスク(タスクIDをtとする)については共用層候補SLiを共用させず、i−1回目のループにおいて再学習してあった当該タスクtのi層目以上(FC層まで)を使用するように構成する。このように、i>1で層共用タスクリスト35に全認識タスクが記載(記録)されていない場合の処理の詳細については、i=2のループの際の処理を用いて後述する(図9)。
次に、S6において、候補マルチタスクDCNN37のうち、層共用タスクリスト35に記録されている認識タスクについて、再学習部23によって学習する。再学習部23は学習の機能としては学習部20と同様のものであるが、学習の設定が異なる。再学習部23では、入れ替えた共用層候補SLi以下の層は更新せず、i+1層目以上の層だけを再学習する。このような設定にするには、たとえば、学習部20の学習率設定において共用層候補SLiより下の層や層共用タスクリスト35に記載(記録)がない認識タスクの層に関する学習率を0に設定すればよい。
i=1のループでは、はじめに図2の構造ですべての層が学習され(累積学習回数=1)、つづいてS6で2層目以上の層が再学習されるので(累積学習回数=2)、2層目以上の層はCLTL[2]となる(L≧i+1)。
S7において、第1のメモリ14の精度評価部21を用いて、再学習した候補マルチタスクDCNNのそれぞれの認識タスクの精度を算出(評価)し、候補マルチタスクDCNN精度38として第2のメモリ15に格納する。
図7はS7の処理を説明する図である。図4における説明と同様に、第2のメモリ15のベリファイデータ31から画像を読み出してベリファイ画像701として認識処理を行う。そして、各認識タスクの出力層OUTに現れる出力値702を、ベリファイデータ31から読み出した各認識タスクのGT703と比較し、各認識タスクの精度704を算出する。図7において、認識タスクR1〜R4についてそれぞれ算出された精度704は、精度R1’〜 精度R4’と記されている。
この際、図1の第1のメモリ14の性能評価結果出力部26を用いて、S7で算出された各認識タスクの精度(性能)704を出力装置13に表示させてもよい。つまり、性能評価結果出力部26は、精度評価部21を用いて算出された各認識タスクの精度評価値(図7の精度704)を出力装置13に表示させてもよい。
さらに、図1の第1のメモリ14のNN構造出力部27を用いて、精度評価を行ったDCNNの構造を出力装置13に表示させてもよい。つまり、NN構造出力部27は、DCNNの構造を出力装置13に表示させてもよい。たとえば図10のような最終的な共用構造図を出力装置13のディスプレイに出力(表示)させる。ディスプレイが共用構造図を表示することにより、共用構造図(層共用状態)をユーザに提示することができる。
このように、認識タスクごとの精度や層共用状態をユーザに提示することにより、ユーザは、どの認識タスク同士の処理をどの程度まで共用した構造において各認識タスクの精度がどうなるかを把握することができる。当該把握により、ユーザは、認識タスクごとの各層のフィルタ数や学習データ数を調整するなどの人為的調整のための指針を得ることができる。
次に、S8において、第1のメモリ14の共用層候補採否判定部24を用いて、認識タスクごとに共用層候補SLiを採用するかどうかを判定する。共用層候補採否判定部24の処理の詳細については図12のフローチャートを用いて後述する。共用層候補採否判定部24の判定結果は、共用層候補採否判定結果42として第2のメモリ15に格納される。共用層候補採否判定結果42(または当該共用層候補SLi)に記載されているタスクIDが共用層候補SLiを採用するタスクIDである。
S9において、第1のメモリ14の共用構造決定部28によって、S8の判定結果(共用層候補採否判定結果42)に基づいて、マルチタスクDCNN構造を決定し、決定後のDCNN構造を学習済DCNN33に上書きする。共用構造決定部28によるマルチタスクDCNNの構造の決定方法は以下のとおりである。S8で共用層候補を採用すると判定された認識タスクRでは、i層目で共用層候補SLiを共用し、i+1層目以上のk層(k≧i+1)では候補マルチタスクDCNN37のCLTkを使用する。S8で共用層を採用しないと判定された認識タスクRでは、i層目以上のj層(j≧i)で学習済DCNN33のCLTjを使用する。すなわち、採用しないと判定された認識タスクがあった場合には、その層でマルチタスクDCNNの構造に分岐が起こることになる。その具体的な様子は、図9および図10を用いて後述する。
S10において、S8の判定結果に基づいて、第2のメモリ15の層共用タスクリスト35を更新する。すなわち、共用層候補SLiを採用しないと判定された認識タスクのIDを層共用タスクリスト35から削除する。
S11において、すべての畳みこみ層での処理が完了したか、または、層共用タスクリスト35に記録されている認識タスクの数が1以下になったかを判定することで、層共用の可能性がある認識タスクがなくなったかどうかを判定する。図3のS11では、層共用の可能性がある認識タスクがなくなることを「完了」と記している。層共用の可能性がある認識タスクがなくなっていれば(S11:Yes)、S13に進む。つまり、S11がYesの場合、S4〜S11〜S12〜S4のループを抜けS13に進む。層共用の可能性がある認識タスクが残っていれば、S12に進む。S12において、iを1加算し、S4に戻る。
S13において、第1のメモリ14のマルチタスク多層NN再学習部25によって、学習済DCNN33を学習部20によって(学習部20と同じように)再学習し、再学習したDCNNを学習済DCNN33に上書き格納する。つまり、マルチタスク多層NN再学習部25は、最終的に得られた学習済DCNN33の全体を学習部20によって再学習する。S6では共用層候補SLiよりも上の層(i+1層)のみを再学習しているが、S13では学習済DCNNの全体を再学習している。
マルチタスク多層NN再学習部25で再学習を行う場合、再学習の初期値としては上記のループを抜けた際に学習済DCNN33に格納されているDCNNのパラメータを初期値とすればよい。
S13において、最終的に得られた学習済DCNN33の再学習を行う理由は以下のとおりである。
S13に至る前のループで生成された学習済DCNN33の共用層候補SLiは、各認識タスクを個別に最適に学習した層CLTiから代表的な畳みこみフィルタを集めたものである。そして、複数の認識タスクを個別に学習したDCNNの下層部は、ある程度入れ替えが可能である。共用層候補SLiは複数の認識タスクのi層から代表的なフィルタを選出したものなので、複数の認識タスクのi層としておおむね適合した畳みこみフィルタを含んでいることが期待できる。しかし、共用層候補SLiは最終的に決定されたマルチタスクDCNN構造について(最終的に決定されたマルチタスクDCNN構造の中で)学習データ30に対して最適になるよう学習されたものではない。したがって、S13において学習済DCNN33を入力から出力まで全体的に学習し直す(再学習する)ことにより、S10までの処理で決定されたマルチタスクDCNN構造に対して学習データ30がより適合するようなマルチタスクDCNNが学習される。
また、前述のように、再学習の初期値としてS10で得られた学習済DCNN33の結果を用いれば、ランダムな初期値から開始するよりも再学習が安定する。
なお、S13の再学習が終わった後に得られた学習済DCNN33(これを最終的に得られた学習済DCNNと称してもよい。)に対して精度評価部21によって精度評価をしてもよい。また、当該精度評価の結果を、性能評価結果出力部26やNN構造出力部27によって出力装置13に表示してもよい。このような表示により、ユーザは、最終的に学習装置10により得られたマルチタスクDCNNの精度や共用構造を把握することができる。また、このような表示により、データの追加や畳みこみフィルタ数の変更などの人為的な調整のための指針が得られる。
また、S13で行ったようなマルチタスク多層NN再学習部25による処理を、S6における再学習処理でも毎ループごとに行ってもよい。そのために、上記した2つの再学習部(23と25)とは別の第3の再学習部を設けてもよい。ループごとに再学習を行うと、学習処理の回数が増えるが、ループごとにマルチタスク多層NNを最適化(好適化)できるので、学習の精度が向上することが期待できる。学習時間(学習処理の回数)と学習精度はトレードオフの関係にあるので、たとえば、与えられた条件等に応じて、学習時間と学習精度のいずれを重要視するかを決める。
S13の再学習が終わると、第2のメモリ15の学習済DCNN33には、好適な共用構造を持ったDCNNが学習済みの状態で格納され、学習処理が終了する。
(本実施形態で構築されるマルチタスクDCNNの構造)
以下の記載では、S4からS10までの処理の繰り返しによって決定されるマルチタスクDCNN構造がどのようになるかを具体的に説明する。この説明のために、以下のような1つの例を用いる。
まず、i=1のループにおいて、S8の共用層候補採否判定の結果に基づいて、S9では共用構造決定部28によって認識タスクR1からR4のすべてが共用層候補(SLi)を採用すると決定されたとする。
この場合にS9の共用構造決定部28で決定されるDCNNは、図7と同じ構造である。したがって、S9では、S6で再学習された候補マルチタスクDCNN37と同じものが学習済DCNN33に格納されることになる。
この場合、各認識タスクの2層目以降のCLTi(i≧2)はS6で再学習されたものであり、図7に示すように各CLに対する累積学習回数は2である。
i=2のループにおいては、S4で、共用層候補生成部22により第2層についての共用層候補(SL2)が生成される。
図8は共用層候補の生成の様子を示す図である。この例では層共用タスクリスト35にはまだすべての認識タスクが記載されているので、各認識タスクの第2層目に含まれるすべての畳みこみフィルタが共用層候補母集団39に格納される。この共用層候補母集団39から共用層候補生成部22によって代表的な畳みこみフィルタが選出され、共用層候補36が生成される。図5の場合と同様に、図8においても共用層候補母集団801から共用層候補802が生成される。i=2なので、図8では共用層候補802はSL2と記されている。
ここで、i=2のときのS8では、認識タスクR4のみが共用層候補SL2を採用しないと判定されたとして、S9の共用構造決定部28の動作を図9を用いて説明する。
図9は、この場合にS9で共用構造決定部28によって決定されるマルチタスクDCNNの構造を説明する図である。認識タスクR4は共用層候補SL1までは他の認識タスクと層を共用するが、2層目以上(CL4k、k≧2)は前ループで格納されている学習済DCNN33のCL4k(k≧2)を使用するように決定される。図9では、認識タスクR4については、SL1からCL42に矢印が伸びている。なお、認識タスクR1〜R3については、SL1からSL2に矢印が伸びている。
すなわち、認識タスクR4の2層目以降については、S6で再学習した候補マルチタスクDCNN37の共用層候補SL1に、学習済DCNN33に格納されているDCNNの認識タスクR4の2層目以降を接続したマルチタスクDCNN構造を作る。それを学習済DCNN33に上書き格納する。共用層候補SL1は、1回前のループで生成された共用層である。
図9では、共用層候補SL2を共用しないと判定された認識タスクR4の2層目(CL42)以降の層は累積学習回数が2であり、前回のループで学習された学習パラメータを保持していることが示されている。認識タスクR1〜R3のCLT2以降の層は本ループで学習された学習パラメータを保持しており、累積学習回数は3である。
認識タスクR4のIDは、S10において層共用タスクリスト35から削除されるので、これ以降のループ(S4〜S11〜S12〜S4)で認識タスクR4が再学習の対象になることはない。よって、認識タスクR4は、ループを抜けた後にS13において再学習されるのみである。
次のループ(i=3のループ)のS8において、認識タスクR3が共用層候補SL3を採用しないと判定された場合を図10を用いて説明する。
図10は、この場合にS9で共用構造決定部28によって決定されるマルチタスクDCNNの構造を説明する図である。認識タスクR3のCL33以降の層の累積学習回数は3であり、認識タスクR1およびR2の累積学習回数は4である。図10では、認識タスクR3については、SL2からCL33に矢印が伸びており、認識タスクR1およびR2についてはSL2からSL3に矢印が伸びている。
次のi=4のループでは、層共用タスクリスト35には認識タスクR1とR2のIDが残っている。たとえばi=4のループにおけるS8では認識タスクR2が共用層候補SL4を採用しないと判定されたとする(認識タスクR2でなくR1が採用されないと判定された場合や認識タスクR1とR2の両方が採用されないと判定された場合も同様)。
この場合は、認識タスクR1とR2で共用層候補SL4を共用しない構造が最終的なマルチタスクDCNNの構造となり、このDCNNが学習済DCNN33に格納される。その構造が図10に示されている。認識タスクR1およびR2のCLT4(T=1または2)層の累積学習回数は4のままであり、前回のループで学習された学習パラメータを保持していることが示されている。i=4のループで4層目の共用層候補母集団から生成された共用層候補SL4は破棄され、図10に現れていない。
以上のように、各認識タスクのi層目を共用層候補SLiとして共用した場合の精度の劣化具合が許容範囲であるかどうかにしたがって、認識タスクごとに共用層候補SLiを使うかどうかが判定される。そして、当該判定の結果に応じて、各認識タスクに対して好適なマルチタスクDCNNの構造が決定される。
(共用層候補生成部22の処理)
以下、本実施形態1の共用層候補生成部22が実行する処理を、図11のフローチャートに基づいて説明する。これは図3のS4で行われる処理である。
共用層候補生成部22は、層共用タスクリスト35に記録されているすべての認識タスクの所定の階層に含まれるすべての畳みこみフィルタ(共用層候補母集団)から代表的な畳みこみフィルタを選出して共用層候補を生成する。本実施形態では、所定の階層はi層目であるとするが、i層目の前後をも含んでもよい。インデックスiは、図3のS4〜S11で使われているインデックスiと同じである。
S21において、層共用タスクリスト35に記録されている認識タスクの所定の階層(i階層目)からすべての畳みこみフィルタをコピー(収集)し、第2のメモリ15の共用層候補母集団39に格納する。層共用タスクリスト35に記録されていない認識タスクの畳みこみフィルタはコピーしない。
S22において、共用層候補母集団39を所定の数のクラスタにクラスタリングし、第2のメモリ15のフィルタクラスタ40に格納する。以下の説明において、前記所定の数をCKと表記する。フィルタクラスタ40は、クラスタごとに共用層候補母集団39の畳みこみフィルタを分別して格納したものである。
所定の数CKは、ユーザが設定してもよいし、各認識タスクのi層におけるフィルタ数NCLTiの平均値としてもよし、当該平均値にユーザが別途指定する係数をかけた値としてもよい。
所定の数CKを各認識タスクのi層におけるフィルタ数NCLTiの平均値とした場合、所定の数CKは式1で示される数となる。
CK=(ΣNCLTi)/NS (T ∈ 層共用タスクリスト) (式1)
ただし、式1のTはすべての認識タスクのタスクIDではなく層共用タスクリスト35に記録されているタスクIDとする。また、式1のNSは層共用タスクリスト35に記録されている認識タスクの数とする。
クラスタリングはk平均法(k−means)などの方法で実施すればよい。本実施形態で採用するクラスタリングは、特定の手法に限定されない。クラスタリングの評価基準となる距離・類似度の定義には以下のようないくつかのバリエーションが考えられる。
(1)畳みこみフィルタ自体のユークリッド距離
(2)畳みこみフィルタで学習画像を畳みこんだ結果でのユークリッド距離
(3)(2)の結果に活性化関数をかけた結果でのユークリッド距離
(1)では、単純に畳みこみフィルタのパラメータ間のユークリッド距離を算出する。(1)の場合、共用層候補母集団39は、畳みこみフィルタのパラメータ自体の類似度でクラスタリングされると言うこともできる。なお、畳みこみフィルタのパラメータ間のユークリッド距離は、学習パラメータのユークリッド距離としてもよい。また、(1)の場合、共用層候補母集団39は、前記学習パラメータを画像フィルタとみなした画像類似度でクラスタリングされるとも言える。
(2)のクラスタリングを類似度で表現すると、共用層候補母集団39は、畳みこみフィルタに実際に入力され得る画像サンプルである学習画像の分布に対して畳みこみフィルタがどのように反応するかという性質の類似度でクラスタリングされると言える。ここで使用する学習画像(画像データ)は、学習データ30の画像データ全体である必要はなく、学習データ30から適当な数だけランダムに選択した学習画像からなるサブセットでもよい。なお、(2)の類似度は、画像フィルタを所定の画像に適用した出力結果の類似度であるとも言える。
(3)のクラスタリングを類似度で表現すると、共用層候補母集団39は、(2)に加えてNNで用いられる活性化関数の性質も反映した類似度でクラスタリングされると言える。この類似度は、前記画像フィルタを所定の画像に適用した出力結果の類似度に、所定の非線形処理を適用した結果の類似度であるとも言える。
なお、上記した距離および類似度の定義は例示であり、上記以外の定義を用いてもよい。たとえば、類似度として、(3)の前記所定の非線形処理を適用した結果の類似度に、所定のプーリング処理を行った結果の類似度を用いてもよい。
S23において、フィルタクラスタ40の各クラスタから代表畳みこみフィルタを選出する。代表畳みこみフィルタは各クラスタに含まれる畳みこみフィルタの平均フィルタとしてよいし、クラスタのセントロイドでもよいし、各クラスタに含まれる畳みこみフィルタからランダムに1つずつサンプリングしたものでもよい。なお、代表畳みこみフィルタを選出する方法は、上記したものに限定されない。
S24において、S23でクラスタごとに選出されたCK個の代表畳みこみフィルタを共用層候補36に格納し、処理を終える。
上記の例のようにクラスタリングを行って代表畳みこみフィルタを選出(選抜)する方法では、類似する畳みこみフィルタが複数選ばれないので、傾向が類似しない畳みこみフィルタがまんべんなく選ばれる。その結果、画像の様々な特徴を抽出することができ、なるべく多くの認識タスクから共用され得る共用層候補が生成される。なお、畳みこみフィルタは学習パラメータに含まれているので、上記のクラスタリングによる代表畳みこみフィルタの選出は、クラスタリングによる代表学習パラメータの選出であると言うこともできる。
なお、代表畳みこみフィルタを選出する方法として、クラスタリングに依る方法を採用しなくてもよい。たとえば、共用層候補母集団39から代表畳みこみフィルタをランダムに選んで(ランダムサンプリングして)共用層候補としてもよい。この場合は類似する畳みこみフィルタが代表畳みこみフィルタとして選ばれてしまう可能性があるが、元々の共用層候補母集団の傾向のままに代表畳みこみフィルタを選ぶことができる。このようにすることによって、傾向が類似する多数派の認識タスクに適合した中間層候補が生成され、それと類似しない認識タスクにはあまり適合しない中間層候補が生成される。したがって、他の認識タスク群と類似しない認識タスクが入力に近い層で分岐するようなマルチタスクDCNN構造を誘導(生成)することができる。
また、上記の説明では、S21において共用層候補母集団39に格納する畳みこみフィルタは層共用タスクリスト35に記載されている認識タスクのi層目に含まれるすべての畳みこみフィルタとしたが、S21の処理は、これに限定されない。たとえば、i層目およびi層目の前後のn層に含まれるすべての畳みこみフィルタを共用層候補母集団39に格納してもよい。nは、たとえば、ユーザが決めるパラメータである。
このようにすることで、ある特定の認識タスクのj層(j≠i)の畳みこみフィルタが別の認識タスクのi層の畳みこみフィルタとして有効であるような場合に、当該畳みこみフィルタを共用層候補に取り込めるようになる。
(共用層候補採否判定部24の処理)
次に、本実施形態1における共用層候補採否判定部24が実行する処理を、図12に基づいて説明する。この処理は図3のS8で行われる処理である。
はじめに、S31において、図1の第2のメモリ15の初期精度34に許容劣化度32を積算した結果を許容精度41として保持する。図1を用いて説明したように、許容劣化度32は、認識タスクごとに0.0以上1.0以下の実数値で設定されており、事前に第2のメモリ15に格納されている。初期精度34も許容劣化度32もすべての認識タスクに対する値が第2のメモリ15に格納されているので、許容精度41もすべての認識タスクに対して算出される。
処理対象の認識タスクのタスクIDを、以下の記載においてtと記する。
S32において、層共用タスクリスト35の先頭に記載されているタスクIDを変数tにセットする。S32の後、層共用タスクリスト35に記載されている認識タスクについて、以下の処理を順次繰り返す。
S33において、タスクIDがtである認識タスクについて、第2のメモリ15の候補マルチタスクDCNN精度38とS31で取得した許容精度41とを比較する。タスクIDがtである認識タスクについて、候補マルチタスクDCNN精度38が許容精度41より高ければ(S33:Yes)、S34に進む。S34において、タスクIDがtである認識タスクについては共用層候補を採用すると判定される。この判定結果は、第2のメモリ15の共用層候補採否判定結果42に格納される。この格納は、たとえば、採用すると判定した認識タスクのタスクIDのリストを記載すればよい。S34の後に、S35に進む。なお、S33の判定は、再学習の評価のための判定であり、再学習の評価は、共用層候補を用いた場合の多層ニューラルネットワークの精度が許容範囲内であるか否かであるで行われていると言うこともできる。
一方、候補マルチタスクDCNN精度38が許容精度41よりも低いか、候補マルチタスクDCNN精度38が許容精度41と同じであれ(S33:No)ば、S35に進む。
S35において、層共用タスクリスト35に記載されているすべての認識タスクに対して上記の処理が完了したかどうか判定する。たとえば、現在のt(タスクID)が層共用タスクリスト35に記載されている最後のタスクIDかどうかを判定すればよい。S35で完了と判定されれば、ここで処理を終える。S35で未完了と判定されれば、S36に進む。
S36において処理対象タスクを指す変数tを変更(更新)する。S36の後、S33に戻って次の認識タスクについて同様の処理をする。S36でのtの更新処理は、層共用タスクリスト35で現在のtの次に記載されているタスクIDにtを更新すればよい。
以上で、本実施形態における学習時(学習フェーズ)の処理の流れについての説明を終える。
なお、未知の入力画像に対して認識処理を行う場合は、学習済DCNN33に画像データ(入力画像)を入力すれば、各認識タスクの出力ノードに出力値が現れるので、それを認識結果として利用すればよい。これは学習済NNに対して認識時に(認識フェーズで)一般的に行われている手法である。
上記の記載では、複数のシングルタスクDCNNとみなせる図2のような初期構造から始め、所定の階層ごとに共用化していく方法を説明したが、元々部分的に共用構造をもつマルチタスクDCNN構造を初期構造としてもよい。たとえば、図9に示すような構造のマルチタスクDCNNが別途学習済みであり、これを初期構造として本実施形態を適用してもよい。その場合には、それ以降に分岐がないような共用層を特定し(見つけ)、当該共用層以降の部分構造について本実施形態で説明したような処理を行えばよい。図9のDCNN構造を初期構造とすると、共用層候補SL2以降の部分構造に対して本処理を適用すればよい。つまり、マルチタスクDCNNがすでに所定の階層範囲で共用層候補(SL1、SL2)を有している場合、所定の階層範囲の最後の共用層候補(SL2)の次の階層について共用層候補を生成すればよい。
また、図1では学習装置10は入力装置12と出力装置13を含むとしたが、入力装置12および出力装置13の一方または両方を学習装置10の外に設けてもよい。
(実施形態1の効果)
実施形態1の学習装置10は、以下の効果を有する。
図3の制御フローに基づいて処理を行うことにより、複数の認識タスクに対して好適なマルチタスクDCNNの構造を自動的に決定することができる。
好適なマルチタスクDCNNの構造を見つける(決定する)際に、あり得るすべての構造の組み合わせの数だけ網羅的に探索する必要がなく、おおむね層の数程度の学習回数で好適なマルチタスクDCNN構造を決定することができる。
認識タスクを個々に学習したDCNNの所定の階層の畳みこみフィルタ全体(共用層候補母集団39)から共用層候補を生成(取得)し、当該共用層候補を使ったマルチタスクDCNNにおける各認識タスクの精度を評価するだけで共用可能性を判定している。よって、好適なマルチタスクDCNNの構造を見つける(決定する)際の探索範囲を大幅に限定(縮小)することができる。
各認識タスク用に学習された畳みこみ層の畳みこみフィルタからなる共用層母集団39から共用層候補を生成することで、各認識タスクに適合すると期待できる共用層候補を生成することができる。
複数の認識処理を実行する際に要するメモリ量を、個々の認識タスクに対して個別のDCNNを保持するよりも少なくすることができ、処理速度も短縮することができる。
従来のマルチタスク学習においては、たとえば、与えられた複数の認識タスクに対して最も性能が良くなるように1つの識別器を学習することがある。このような場合、識別器の構造は与えられた1つのものであり、その構造の上でどのように最適に学習するかということが目的になる。そして、このような場合、どの認識タスク間でどの部分までをマルチタスク化するべきなのかということは全く考慮されない。つまり、ネットワーク(NN)構造自体を好適に決定するというようなことは全く考えていない。これに対し、実施形態1による学習装置10によれば、ネットワーク構造自体(どの認識タスク間でどの部分までをマルチタスク化するべきなのか)を好適に決定することができる。
また、従来のマルチタスク学習においては、マルチタスク化しない方が認識性能が良いような認識タスクの組み合わせを発見して、当該認識タスクをマルチタスク学習から外して学習するように自動的に決定するということも提案されていない。よって、従来のマルチタスク学習においては、好適なマルチタスクDCNN構造を得るためには網羅的な探索が必要になり、時間がかかる。これに対し、実施形態1の学習装置10によれば、マルチタスク化しない方がよい認識タスクをマルチタスク学習から自動的に外すことができる。したがって、実施形態1の学習装置10によれば、好適なマルチタスクDCNN構造を得る際に網羅的な探索を行わないので、従来のマルチタスク学習と比較して、処理時間を短縮することができる。
非特許文献1では、2つの認識タスク間でどの層までが共用可能かを実験的(トライアルアンドエラー的)に確かめているが、与えられた複数の認識タスクに対して好適なマルチタスクDCNN構造を決定する方法は提案していない。非特許文献1のような性能評価実験をすべてのマルチタスクDCNN構造の候補に対して繰り返すことで好適な構造を網羅的に探索することも可能であるが、網羅的な探索は時間がかかる。これに対し、実施形態1の学習装置10によれば、好適なマルチタスクDCNN構造を得る際に網羅的な探索を行わないので、処理時間を短縮することができる。
実施形態1の学習装置10によれば、複数の認識タスクをそれぞれ学習した複数の多層NN間で、処理内容を共有しても性能が落ちない処理層を探索している(共有層候補の生成と評価を繰り返す)。よって、単独学習時と同等の性能を維持したまま、より少ないメモリで高速処理可能なマルチタスク多層NNの構成を算出することができる。つまり、複数の認識タスクを同時実行するマルチタスクDCNNの好適な構造を効率的に探索する学習を行っている。このように、認識タスクの精度を落とさずにDCNNの中間層を認識タスク間で共用することを可能にしているので、認識処理時のメモリ使用量を削減することができ、処理速度を高速化することができる。
実施形態2
共用層候補生成部22の処理および構造を実施形態1とは異なったものにした場合を、実施形態2として説明する。なお、以下の記載では実施形態1との相違点を中心に説明し、実施形態1と同じものには同じ参照符号を用いる。
実施形態1の共用層候補生成部22は、共用層候補母集団39をクラスタリングによりCK個のクラスタに分け、各クラスタから代表畳みこみフィルタを選出することにより、共用層候補となるべき畳みこみフィルタを選出している。つまり、実施形態1では、層共用タスクリスト35に記載されている全認識タスクのi階層目の畳みこみ層CLTiに含まれる全畳みこみフィルタ(共用層候補母集団39)から、クラスタリングという手法によって共用層候補を選出・生成している。このような共用層候補の選出・生成により、共用層候補となるべき畳みこみフィルタの数を制御(削減)している。実施形態2においては、共用層候補母集団39に含まれる畳みこみフィルタのパラメータ(学習パラメータ)をデータ圧縮の手法で削減することによって共用層候補を生成する。そのため、実施形態2の共用層候補生成部22は、パラメータをデータ圧縮するデータ圧縮部を有する。
本実施形態において、データ圧縮とは、大量のパラメータを持つ畳みこみフィルタを、より少ないパラメータの畳みこみフィルタで近似して代替する処理のことである。DCNNにおいては、いったん学習した畳みこみフィルタに対して行列分解などの手法を用いてより少ないパラメータで近似する方法がある。実施形態1ではクラスタ数CKによって共用層候補に含まれる畳みこみフィルタのパラメータ数を制御していたが、実施形態2ではデータ圧縮処理の設定によってパラメータ数を制御する。
一般的に、パラメータ数の設定を少なく限定すれば近似精度が悪くなる。そして、性能(認識精度、認識性能)の劣化度合いとデータ圧縮によるパラメータ数の削減度合いはトレードオフの関係にある。しかし、共用層候補母集団39に含まれる畳みこみフィルタに類似のものが多い場合は、ある程度パラメータ数が削減されても性能に大きな影響が出ないことが期待できる。これは実施形態1でクラスタリングによってフィルタを選出しても性能があまり劣化しないことが期待できるのと同じである。
このような畳みこみフィルタに対するデータ圧縮は、たとえば、次の文献に記載されている。
Jaderberg,M.,Vedaldi,A.,& Zisserman,A.(2014)“Speeding up convolutional neural networks with low rank expansions.”arXiv preprint arXiv:1405.3866.
この文献では、もともとのDCNNのN個のd*dサイズの畳みこみフィルタを、それぞれM個(M<N)のd*1*1および1*d*1ベクトルとN個の1*1*Mベクトルに分解することで近似し、パラメータを削減している。また、K個(K<N)のd*1*1ベクトルとN個のd*1*Kベクトルに分解して近似する場合もある。
畳みこみフィルタに対するデータ圧縮は、次の文献にも記載されている。
Zhang,X.,Zou,J.,Ming,X.,He,K.,& Sun,J.(2014)“Efficient and accurate approximations of nonlinear convolutional networks.”arXiv preprint arXiv:1411.4299.
この文献では、もともとのN個の畳みこみフィルタを、同サイズのM個(M<N)の畳みこみフィルタとN個の1*1*Mベクトルによって近似し、パラメータを削減している。
上記で例として挙げた各手法における設定パラメータはユーザが適宜決めるなどすればよい。
実施形態2の共用層候補生成部22は、データ圧縮手法によって近似された畳みこみフィルタを算出し、これを共用層候補36として第2のメモリ15に格納する。精度評価時などでNNをフィードフォワードするときには、それぞれのデータ圧縮手法に基づいて近似畳みこみフィルタを使った畳みこみ演算を実施すればよい。
マルチタスク多層NN再学習部25が共用層候補SLiを再学習する際には、近似された畳みこみフィルタから所定数の畳みこみフィルタを逆に生成し、これを初期値として学習を始めればよい。前記所定数は、実施形態1と同様に式1などによって決めてもよいし、その層の共用層候補母集団に含まれるフィルタ数と同程度にしてもよい。再学習した後に再びデータ圧縮部によってその層を圧縮して近似された畳みこみフィルタで置き換えてもよい。
実施形態2の構成では、実施形態1のように共用層候補母集団39にある畳みこみフィルタから代表畳みこみフィルタを選ぶ(共有層候補を生成する)のではなく、共用層候補母集団39の全体を最適・好適に近似したフィルタ群(共用層候補)を生成する。これによって、生成された共用層候補がより多くの認識タスクに対して適合するようになるという効果が期待できる。
なお、上記の説明においてデータ圧縮とは、大量のパラメータを持つ畳みこみフィルタを、より少ないパラメータの畳みこみフィルタで近似して代替する処理であるとしたが、他の手法でデータ圧縮をしてもよい。たとえば、データ圧縮により、複数のフィルタを1つのフィルタにまとめるような処理を行ってもよい。当該1つのフィルタは、共用層候補母集団39には存在していない形のフィルタであってよい。複数のフィルタを1つのフィルタにまとめるという処理を複数回行うことにより、共用層候補母集団39のフィルタの数を削減し、共用層候補母集団39の全体を最適・好適に近似したフィルタ群(共用層候補)を生成することができる。
(他の実施形態)
本発明は、上述の実施形態の第1のメモリ15の1以上の機能を実現するプログラム(コンピュータプログラム)を、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(たとえば、ASIC)によっても実現可能である。
20…学習部、22…共有層候補生成部、23…再学習部、24…共有層候補採否判定部

Claims (16)

  1. 複数のタスクを実行する複数の多層ニューラルネットワークを学習する学習手段と、
    前記複数の多層ニューラルネットワーク間で所定の階層の共用層候補を生成する生成手段と、
    前記共用層候補を用いた構造で、前記複数の多層ニューラルネットワークを再学習する第1の再学習手段と、
    前記再学習の評価に基づいて、前記複数のタスクのそれぞれについて、前記共用層候補を前記所定の階層で共用するかを判定する判定手段と、
    を有することを特徴とする情報処理装置。
  2. 前記所定の階層は、前記多層ニューラルネットワークの少なくとも1つの階層であり、当該少なくとも1つの階層の各階層ごとに生成される前記共層候補についての前記判定手段による判定の結果に基づいて、前記複数の多層ニューラルネットワークの最終的な構造を決定する決定手段をさらに有することを特徴とする請求項1に記載の情報処理装置。
  3. 前記生成手段は、前記所定の階層の学習パラメータを複数のクラスタにクラスタリングし、当該複数のクラスタから代表学習パラメータを選出することによって前記共層候補を生成することを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記生成手段は、前記所定の階層の前後の階層の学習パラメータを含めた学習パラメータを複数のクラスタにクラスタリングし、当該複数のクラスタから前記代表学習パラメータを選出することによって前記共層候補を生成することを特徴とする請求項3に記載の情報処理装置。
  5. 前記生成手段は類似度に基づいて前記クラスタリングを行い、当該類似度は、
    前記学習パラメータを画像フィルタとみなした画像類似度、
    前記画像フィルタを所定の画像に適用した出力結果の類似度、
    前記画像フィルタを所定の画像に適用した出力結果の類似度に、所定の非線形処理を適
    用した結果の類似度、および
    前記所定の非線形処理を適用した結果の類似度に、所定のプーリング処理を行った結果
    の類似度、
    のいずれかであることを特徴とする請求項3または4に記載の情報処理装置。
  6. 前記生成手段は、前記所定の階層の学習パラメータをランダムサンプリングすることによって前記共層候補を生成することを特徴とする請求項1または2に記載の情報処理装置。
  7. 前記生成手段は、前記所定の階層の学習パラメータをデータ圧縮することによって前記共用層候補を生成することを特徴とする請求項1または2に記載の情報処理装置。
  8. 前記決定手段によって決定された前記複数の多層ニューラルネットワークの構造で再学習を行う、第2の再学習手段をさらに有することを特徴とする請求項2に記載の情報処理装置。
  9. 前記所定の階層が複数ある場合、前記判定手段が前記共用層候補を共用すると判定するたびに、当該共用層候補を用いた前記複数の多層ニューラルネットワークの構造で再学習を行う、第3の再学習手段をさらに有することを特徴とする請求項1に記載の情報処理装置。
  10. 前記決定手段によって決定された前記複数の多層ニューラルネットワークの構造を出力する第1の出力手段をさらに有することを特徴とする請求項2または8に記載の情報処理装置。
  11. 前記第2の再学習手段よって再学習された各タスクの性能を評価する第1の評価手段と、当該評価を出力する第2の出力手段と、をさらに有することを特徴とする請求項に記載の情報処理装置。
  12. 前記第3の再学習手段によって再学習された各タスクの性能を評価する第2の評価手段と、当該評価を出力する第3の出力手段と、をさらに有することを特徴とする請求項9に記載の情報処理装置。
  13. 前記再学習の評価は、前記共用層候補を用いた場合の前記多層ニューラルネットワークの精度が許容範囲内であるか否かであることを特徴とする請求項1〜12のいずれか1項に記載の情報処理装置。
  14. 前記複数の多層ニューラルネットワークが、すでに所定の階層範囲で共用層候補を有している場合、前記生成手段は、前記所定の階層範囲の最後の共用層候補の次の階層について共層候補を生成することを特徴とする請求項1〜13のいずれか1項に記載の情報処理装置。
  15. 複数のタスクを実行する複数の多層ニューラルネットワークを学習するステップと、
    前記複数の多層ニューラルネットワーク間で所定の階層の共用層候補を生成するステップと、
    前記共用層候補を用いた構造で、前記複数の多層ニューラルネットワークを再学習し、当該再学習の評価に基づいて、前記複数のタスクのそれぞれについて、前記共用層候補を前記所定の階層で共用するかを判定するステップと、
    を有することを特徴とする情報処理方法。
  16. コンピュータを請求項1〜14のいずれか1項に記載の情報処理装置の各手段として機能させるためのプログラム。
JP2016104025A 2016-05-25 2016-05-25 情報処理装置および情報処理方法 Active JP6750854B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016104025A JP6750854B2 (ja) 2016-05-25 2016-05-25 情報処理装置および情報処理方法
US15/603,241 US10909455B2 (en) 2016-05-25 2017-05-23 Information processing apparatus using multi-layer neural network and method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016104025A JP6750854B2 (ja) 2016-05-25 2016-05-25 情報処理装置および情報処理方法

Publications (2)

Publication Number Publication Date
JP2017211799A JP2017211799A (ja) 2017-11-30
JP6750854B2 true JP6750854B2 (ja) 2020-09-02

Family

ID=60418054

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016104025A Active JP6750854B2 (ja) 2016-05-25 2016-05-25 情報処理装置および情報処理方法

Country Status (2)

Country Link
US (1) US10909455B2 (ja)
JP (1) JP6750854B2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6866095B2 (ja) * 2016-09-26 2021-04-28 キヤノン株式会社 学習装置、画像識別装置、学習方法、画像識別方法及びプログラム
CN108133224B (zh) * 2016-12-01 2021-11-16 富士通株式会社 用于评估分类任务复杂度的方法
KR102198265B1 (ko) * 2018-03-09 2021-01-04 강원대학교 산학협력단 신경망을 이용한 사용자 의도분석 시스템 및 방법
KR102525159B1 (ko) * 2018-03-19 2023-04-25 삼성전자주식회사 전자 장치, 전자 장치의 이미지 처리 방법 및 컴퓨터 판독 가능 매체
JP7179835B2 (ja) * 2018-04-12 2022-11-29 日本電信電話株式会社 モデル生成装置、モデル生成方法、プログラム
JP7166784B2 (ja) * 2018-04-26 2022-11-08 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP7382930B2 (ja) * 2018-06-28 2023-11-17 富士フイルム株式会社 医療画像処理装置
US11645509B2 (en) 2018-09-27 2023-05-09 Salesforce.Com, Inc. Continual neural network learning via explicit structure learning
KR102251858B1 (ko) * 2018-11-14 2021-05-14 주식회사 투아트 딥러닝 기반의 영상분석 방법, 시스템 및 휴대 단말
CN109711252A (zh) * 2018-11-16 2019-05-03 天津大学 一种多人种的人脸识别方法
KR20200084695A (ko) * 2019-01-03 2020-07-13 삼성전자주식회사 응용프로그램의 관리 장치 및 방법
US11462112B2 (en) * 2019-03-07 2022-10-04 Nec Corporation Multi-task perception network with applications to scene understanding and advanced driver-assistance system
WO2020209078A1 (ja) * 2019-04-09 2020-10-15 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
CN110136828A (zh) * 2019-05-16 2019-08-16 杭州健培科技有限公司 一种基于深度学习实现医学影像多任务辅助诊断的方法
CN110414489A (zh) * 2019-08-21 2019-11-05 五邑大学 一种基于多任务学习的人脸美丽预测方法
JPWO2021038886A1 (ja) * 2019-08-30 2021-03-04
CN110728255B (zh) * 2019-10-22 2022-12-16 Oppo广东移动通信有限公司 图像处理方法、装置、电子设备及存储介质
JP7398938B2 (ja) 2019-12-02 2023-12-15 キヤノン株式会社 情報処理装置およびその学習方法
KR20210106217A (ko) * 2020-02-20 2021-08-30 삼성전자주식회사 인공 신경망의 재구성을 수행하는 프로세서, 이를 포함하는 전자 장치 및 프로세서의 동작 방법
JP7404111B2 (ja) 2020-03-10 2023-12-25 株式会社東芝 プロセッサ性能測定装置
WO2022079832A1 (ja) * 2020-10-14 2022-04-21 日本電信電話株式会社 通信情報予測装置、通信情報予測方法、および通信情報予測プログラム
CN112489012A (zh) * 2020-11-27 2021-03-12 大连东软教育科技集团有限公司 一种用于ct图像识别的神经网络架构方法
JP2022133872A (ja) * 2021-03-02 2022-09-14 株式会社Jvcケンウッド 機械学習装置、推論装置、機械学習方法、および機械学習プログラム
WO2023047516A1 (ja) * 2021-09-24 2023-03-30 富士通株式会社 画像処理システム、符号化装置、符号化方法及び符号化プログラム
CN116562338A (zh) * 2022-01-27 2023-08-08 美的集团(上海)有限公司 多分支卷积结构、神经网络模型及其确定方法、确定装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05197705A (ja) * 1991-07-09 1993-08-06 Fujitsu Ltd ニューラルネットワークの学習システム
US9842585B2 (en) * 2013-03-11 2017-12-12 Microsoft Technology Licensing, Llc Multilingual deep neural network
JP6164639B2 (ja) * 2013-05-23 2017-07-19 国立研究開発法人情報通信研究機構 ディープ・ニューラルネットワークの学習方法、及びコンピュータプログラム
CN106575367B (zh) * 2014-08-21 2018-11-06 北京市商汤科技开发有限公司 用于基于多任务的人脸关键点检测的方法和***
US20160140438A1 (en) * 2014-11-13 2016-05-19 Nec Laboratories America, Inc. Hyper-class Augmented and Regularized Deep Learning for Fine-grained Image Classification
US9928410B2 (en) * 2014-11-24 2018-03-27 Samsung Electronics Co., Ltd. Method and apparatus for recognizing object, and method and apparatus for training recognizer
JP5816771B1 (ja) * 2015-06-08 2015-11-18 株式会社Preferred Networks 学習装置ユニット

Also Published As

Publication number Publication date
US20170344881A1 (en) 2017-11-30
JP2017211799A (ja) 2017-11-30
US10909455B2 (en) 2021-02-02

Similar Documents

Publication Publication Date Title
JP6750854B2 (ja) 情報処理装置および情報処理方法
Child Very deep vaes generalize autoregressive models and can outperform them on images
Behl et al. Alpha maml: Adaptive model-agnostic meta-learning
Gomez et al. Learning sparse networks using targeted dropout
CN111832627B (zh) 抑制标签噪声的图像分类模型训练方法、分类方法及***
US20190370665A1 (en) System and method for mimicking a neural network without access to the original training dataset or the target model
CN108182394B (zh) 卷积神经网络的训练方法、人脸识别方法及装置
WO2018227800A1 (zh) 一种神经网络训练方法及装置
Haeusser et al. Associative domain adaptation
CN108491874B (zh) 一种基于生成式对抗网络的图像单分类方法
US11907854B2 (en) System and method for mimicking a neural network without access to the original training dataset or the target model
Konar et al. Comparison of various learning rate scheduling techniques on convolutional neural network
CN113168559A (zh) 机器学习模型的自动化生成
CN106471525A (zh) 增强神经网络以生成附加输出
Le A tutorial on deep learning part 1: Nonlinear classifiers and the backpropagation algorithm
JP2017016414A (ja) 学習方法、プログラム及び学習装置
WO2021157067A1 (ja) 学習処理装置及び方法
Ivanovic et al. Expanding the deployment envelope of behavior prediction via adaptive meta-learning
CN112990385A (zh) 一种基于半监督变分自编码器的主动众包图像学习方法
US20240220807A1 (en) Training a student neural network to mimic a mentor neural network with inputs that maximize student-to-mentor disagreement
Hendryx et al. Federated reconnaissance: Efficient, distributed, class-incremental learning
CN114580517A (zh) 一种图像识别模型的确定方法及装置
WO2019180314A1 (en) Artificial neural networks
WO2021119282A1 (en) Hyper-opinion classification using a neural network
CN115345303A (zh) 卷积神经网络权重调优方法、装置、存储介质和电子设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200421

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200619

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200807

R151 Written notification of patent or utility model registration

Ref document number: 6750854

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D03