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

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

Info

Publication number
JP2018205858A
JP2018205858A JP2017107451A JP2017107451A JP2018205858A JP 2018205858 A JP2018205858 A JP 2018205858A JP 2017107451 A JP2017107451 A JP 2017107451A JP 2017107451 A JP2017107451 A JP 2017107451A JP 2018205858 A JP2018205858 A JP 2018205858A
Authority
JP
Japan
Prior art keywords
learning
intermediate layer
neural network
importance
learned
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.)
Withdrawn
Application number
JP2017107451A
Other languages
English (en)
Inventor
貴之 猿田
Takayuki Saruta
貴之 猿田
俊太 舘
Shunta Tachi
俊太 舘
小森 康弘
Yasuhiro Komori
康弘 小森
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 JP2017107451A priority Critical patent/JP2018205858A/ja
Publication of JP2018205858A publication Critical patent/JP2018205858A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

【課題】識別精度の高いニューラルネットワークを学習するために、ニューラルネットワークの中間層を効率よく学習する。
【解決手段】ニューラルネットワークを学習する学習手段と、学習されたニューラルネットワークの中間層の識別精度を評価する評価手段と、中間層の識別精度に対する評価結果に基づいて、中間層それぞれの重要度を決定する決定手段とを有する。学習手段は、中間層それぞれの重要度に基づいて、ニューラルネットワークを再学習する。
【選択図】図8

Description

本発明は、ニューラルネットワークを学習する技術に関する。
画像、音声などのデータの内容を学習し認識を行う技術が存在する。ある対象を認識する処理を、ここでは認識タスクと呼ぶ。画像中から人間の顔の領域を検出する顔認識タスクや、画像中にある物体(被写体)カテゴリ(猫、車、建物など)を判別する物体カテゴリ認識タスク、シーンのカテゴリ(都市、山間、海岸など)を判別するシーン種別認識タスクなど多様な認識タスクがある。
上記のような認識タスクを学習、実行する技術としては、ニューラルネットワーク(NN)の技術が知られている。深い(層の数が多い)多層ニューラルネットワークはDeep Neural Networks(DNN)と呼ばれる。特に、非特許文献1に開示されているように深い畳みこみニューラルネットワークをDeep Convolutional Neural Networks(DCNN)と呼ぶ。DCNNは、性能が高いことで近年注目されている。DCNNとは、各層において、前層からの出力結果に対して畳みこみ処理を行い次層に出力するようなネットワーク構造をもつものである。最終層は、認識結果を表す出力層となる。各層には、畳みこみ演算用のフィルタ(カーネル)が複数用意される。出力層に近い層では畳みこみによる結合ではなく、通常のニューラルネットワーク(NN)のような全結合(fullconnect)の構造とするのが一般的である。また、非特許文献2に開示されているように、全結合層の代わりに畳みこみ演算層の出力結果を線形識別器に入力し識別を行う手法も注目されている。さらに、非特許文献3では、畳みこみ演算層の出力結果を入力画像サイズにリサイズして、各画素のクラスカテゴリを識別する技術が開示されている。
DCNNの学習フェーズにおいては、畳みこみフィルタの値や全結合層の結合重み(両者をあわせて学習パラメータと呼ぶ)を、誤差逆伝搬法(バックプロパゲーション:BP)などの方法を用いて教師付きデータから学習する。認識フェーズでは、学習済DCNNにデータを入力し、各層において学習済みの学習パラメータによってデータを順次処理し、出力層から認識結果を得るか、もしくは中間層の出力結果を集計し、識別器に入力することで認識結果を得る。
識別精度の高いニューラルネットワーク(NN)を学習するためには、中間層を効率よく学習することが必要になる。特に、非特許文献2や3のように、各中間層からの出力結果を識別器に特徴ベクトルとして入力して識別するような場合には、各中間層の出力結果の識別精度も重要になる。そこで、非特許文献4に開示されているGoogleNetでは、中間層の学習が促進されているように識別層からだけではなく、予め決められた中間層に対しても識別層を接続して誤差を逆伝播する。これにより、識別層から遠い入力層に近い中間層の勾配消失問題(Vanishing Gradient)を解決している。
特開平5‐197821号公報
Krizhevsky,A.,Sutskever,I.,&Hinton,G.E.,"Imagenet classification with deep convolutional neural networks.",In Advances in neural information processing systems(pp.1097−1105),2012. Jeff Donahue, Yangqing Jia, Judy Hoffman, Trevor Darrell,"DeCAF:A Deep Convolutional Activation Feature for Generic Visual Recognition",arxiv 2013. Bharath Hariharan, Pablo Arbelaez, Ross Girshick, Jitendra Malik,"Hypercolumns For Object Segmentation and Fine−grained Localization", IEEE Conference on Computer Vision and Pattern Recognition 2015. Christian Szegedy,Wei Liu,Yangqing Jia,et al,"Going Deeper with Convolutions", Computer Vision and Pattern Recognition 2015. Ross Girshick,"Fast R−CNN",International Converence on Computer Vision 2015.
しかしながら、非特許文献4の技術では、識別層と接続される中間層は予め決められているために、学習されるニューラルネットワークの識別精度が不十分な場合がある。そこで、本発明は、識別精度の高いニューラルネットワークを学習することを目的とする。
本発明は、ニューラルネットワークを学習する学習手段と、前記学習されたニューラルネットワークの少なくとも1つの中間層の識別精度を評価する評価手段と、前記少なくとも1つの中間層の識別精度に対する評価結果に基づいて、前記少なくとも1つの中間層それぞれの重要度を決定する決定手段と、を有し、前記学習手段は、前記少なくとも1つの中間層それぞれの重要度に基づいて、前記ニューラルネットワークを再学習することを特徴とする。
本発明によれば、識別精度の高いニューラルネットワークを学習することが可能になる。
第1の実施形態に係る情報処理システムを示すブロック図。 第1の実施形態において画像分類の例を示す図。 第1の実施形態に係る認識装置のハードウェア構成を示す図。 第1の実施形態に係るDCNNの構造を説明する図。 各実施形態における認識装置の機能構成を示すブロック図。 実施形態における学習装置の機能構成を示すブロック図。 各実施形態における認識装置における認識処理のフローチャート。 各実施形態における学習装置における学習処理のフローチャート。 第1の実施形態の学習工程におけるNNの最終層の一例を示す図。 第1の実施形態の学習工程におけるNNの最終層の別の一例を示す図。 第1の実施形態に係る中間層プローブ工程の処理を説明する図。 第1の実施形態において各中間層の評価データの識別精度の例を示す図。 第1の実施形態において各中間層の重要度の例を示す図。 第1の実施形態においてクラスカテゴリごとに学習率を設定した例を示す図。 第3の実施形態においてユーザがクラスカテゴリを選択する様子を示す図。 第5の実施形態に係る再学習NN構造設定工程おけるNNの構成を示す図。 第5の実施形態に係る再学習NN構造設定工程おけるNNの構成を示す図。
[第1の実施形態]
以下、本発明の第1の実施形態の詳細について図面を参照しつつ説明する。図1は、本実施形態に係る情報処理システムを示すブロック図である。本実施形態の情報処理システムでは、カメラ10と認識装置20とがネットワーク15を介して接続されている。なお、認識装置20とカメラ10とは一体に構成されていてもよい。また、認識装置20と、学習装置50とがネットワーク15を介して接続されている。なお、認識装置20と学習装置50とが一体に構成されていてもよい。
カメラ10は、認識装置20による画像認識処理の対象となる画像を撮影する。図1は、カメラ10が、シーン30における、ある撮影範囲(画角)の画像を撮影する様子を示している。この撮影される画像には、被写体として木(tree)30a、自動車(car)30b、建物(building)30c、空(sky)30d、道(road)30e、人体(body)30f等が存在している。認識装置20は、カメラ10で撮影(撮像)されたシーン30における各被写体が画像内に存在するかどうか(画像分類)を判定する。本実施形態においては、認識タスクが画像分類(classification)タスクである場合を例に説明するが、被写体の位置を検出し、被写体領域を抽出するタスクや他のタスクでもよい。他のタスクの場合の説明も後述する。
図2は、画像分類の例を示す図である。図2(a)は建物、図2(b)は木(林・森)、図2(c)は車、として画像分類される例を示している。
図3は、認識装置20のハードウェア構成を示すブロック図である。CPU401は、認識装置20全体を制御する。CPU401がROM403やHD404等に格納されたプログラムを実行することにより、後述する認識装置20の機能構成及び認識装置20に係るフローチャートの処理が実現される。RAM402は、CPU401がプログラムを展開して実行するワークエリアとして機能する記憶領域である。ROM403は、CPU401が実行するプログラム等を格納する記憶領域である。HD404は、CPU401が処理を実行する際に要する各種のプログラム、閾値に関するデータ等を含む各種のデータを格納する記憶領域である。操作部405は、ユーザによる入力操作を受け付ける。表示部406は、認識装置20の情報を表示する。ネットワークI/F407は、認識装置20と、外部の機器とを接続する。なお、学習装置50についても、同様のハードウェア構成を備えており、それにより、後述する学習装置50の機能構成及びフローチャートの処理が実現される。
次に、認識装置20において、ニューラルネットワークを用いて画像を識別する際の処理について説明する。本実施形態では、画像を識別するためのニューラルネットワークとして、Deep Convolutional Neural Networks (DCNN)を用いるものとする。DCNNは畳みこみ演算を多く行うニューラルネットワークであり、非特許文献1や非特許文献4に開示されているように畳みこみ(convolution)と非線形処理(reluやmaxpoolingなど)の組み合わせで特徴層が実現される。その後、全結合層(fullconect)を経て画像分類結果(各クラスに対する尤度)を出力する。
図4は本実施形態に係るDCNNの構造を説明する図であり、図4(a)には、その一例を示す。図4(a)では、入力画像Img1000を入力すると、convolution1001,relu1002,convolution1003,relu1004,pooling1005の各処理を実行する例を示している。それを所定回数繰り返した後、全結合層1011、relu1012、全結合層1013、relu1014、全結合層1015の各処理を行って、最終層の出力結果を出力している。図4では、畳みこみ(convolution)を行う層をconv,maxpoolingを行う層をpool、全結合層をfc、出力結果をOutput1050と示している。reluとは非線形処理の1つで、前層のconv層の出力結果のうち負の値を0とする処理である。非線形処理は、その他の方式の非線形処理でもよい。なお、入力画像Img1000はDCNNに入力する際に、所定画像サイズで画像をクロップもしくはリサイズするのが一般的である。
また、その他の例としては、非特許文献2に開示されているように、ニューラルネットワークの中間層の出力結果を特徴ベクトルとして、識別器に入力することで識別を行うこともできる。例えば、図4(b)に示すように、中間層のrelu処理1009の出力結果を特徴ベクトルfeature1016として、Support−Vector−Machine(SVM)1017に入力することで識別を行う。ここでは、途中のrelu処理1009の出力結果を利用したが、その前のconvolution1008や後のpooling処理1010の出力結果を利用してもよいし、他の中間層の出力結果、またそれらの組み合わせを利用してもよい。また、ここでは識別器としてSVMを利用したが、他の識別器を用いてもよい。
また、図4(b)の場合は、入力画像に対して識別結果を一意に出力するが、物体領域を識別する場合などで画素や小領域ごとに識別する必要がある場合には、図4(c)のような構成を用いればよい。この構成では、所定の中間層の出力結果に対しリサイズ1018の処理を行う。リサイズとは、中間層の出力結果を入力画像サイズと同サイズにリサイズする処理である。リサイズ処理後に、注目している画素もしくは小領域における所定の中間層の出力結果1019を特徴ベクトルとして、先と同様にSupport−Vector−Machine(SVM)1021に入力することで識別を行う。一般的にDCNNを用いる場合、中間層の出力結果は入力画像サイズに比べて小さくなるため、中間層の出力結果を入力画像サイズにリサイズする必要がある。リサイズ方法は最近傍法(Nearest−Neighbor−Algorithm)などの補間手法であれば、どのような方法でも構わない。なお、ここでは、Support−Vector−Machine(SVM)を用いたが、それ以外の識別器でもよい。
さらに、非特許文献5に開示されているように物体領域候補をRegion−Of−Interest(ROI)として推定して、対象物体領域のBoundingBoxおよびスコアを出力するニューラルネットワークを用いてもよい。その場合は図4(d)の1022で示すように、途中の中間層の出力結果を所定の方法で推定したROI領域内でpooling処理(ROIpooling)する。ROIpoolingした出力結果を複数の全結合層に接続して、BoundingBoxの位置、サイズおよびその対象物体のスコアなどを出力する。
図5は、各実施形態における認識装置20の機能構成を示すブロック図であり、図5(a)が本実施形態に係るブロック図である。なお、図5では、認識装置20の機能部を示す機能ブロックの他に、カメラ10に相当する撮影部200も示している。撮影部200は、識別対象画像を取得する。本実施形態の認識装置20は、入力部201、NN出力部202、NNパラメータ保持部512を有している。なお、NNパラメータ保持部512は、不揮発性の記憶装置として認識装置20と接続された構成としてもよい。認識装置20が有するこれらの各機能部の詳細については後述する。
図7は、各実施形態における認識装置20における認識処理のフローチャートであり、図7(a)が本実施形態に係るフローチャートである。図7(a)において、入力工程T110では、入力部201が撮影部200によって撮影された識別対象画像を入力データとして受信、入力する。そして、入力された識別対象画像はNN出力部202に送信される。次に、出力工程T120では、NN出力部202は、受信した識別対象画像をNNパラメータ保持部512に保持されたニューラルネットワークを用いて識別をして、その識別結果を出力する。本実施形態における認識タスクは画像分類タスクであるため、画像のクラス名およびそのスコアが出力される。ここで、用いるニューラルネットワークの構造などについては後述する。また、ニューラルネットワークの他に、非特許文献2や日特許文献3のようにニューラルネットワークの出力結果を特徴ベクトルとして用いる識別手段を用いる場合もあるが、そのような認識装置20の構成およびフローについては第2の実施形態で説明する。
次に、図7(a)に示したフローチャートの各処理のより具体的な流れを説明する。入力工程T110では、撮影部200が図1で示したようなシーン30を撮影した画像を、入力部201が識別対象画像100として取得する。なお、識別対象画像は、図示しない外部装置に格納されている画像であってもよい。その場合、入力部201は外部装置から読み出された画像を識別対象画像として取得する。外部装置に格納されている画像は、例えば撮影部200等で予め撮影された画像であってもよいし、ネットワーク等を経由するなどの他の方法で取得されてから格納された画像であってもよい。入力部201で取得された識別対象画像100はNN出力部202に送信される。出力工程T120では、NN出力部202が入力工程T110で入力された識別対象画像100を予め学習されたネットワークに入力して最終層の出力結果を識別結果として出力する。ここで用いるネットワークは、例えば先の図4(a)に示したようなネットワークである。ネットワークの構造およびパラメータはNNパラメータ保持部512に保持されている。
次に、本実施形態において用いられるニューラルネットワークを学習する際の学習処理について説明する。本実施形態では、学習処理の中でニューラルネットワークの各中間層の出力結果の識別精度を評価して各中間層の重要度を決定し、ニューラルネットワークの再学習を行う。
図6は、各実施形態における学習装置50の機能構成を示すブロック図であり、図6(a)が本実施形態に係るブロック図である。本実施形態の学習装置50は、NNパラメータ設定部500、NN学習制御部501、NN中間層プローブ部502、中間層重要度決定部503を有している。また、学習データ保持部510、NN中間層プローブデータ保持部511、NNパラメータ保持部512を保持している。学習データ保持部510、NN中間層プローブデータ保持部511およびNNパラメータ保持部512は、不揮発性の記憶装置として学習装置50と接続された構成としてもよい。学習装置50が有するこれらの各機能部の詳細については後述する。
図8は、各実施形態における学習装置50における学習処理のフローチャートであり、図8(a)が本実施形態に係るフローチャートである。図8(a)のにおいて、NN学習工程S110では、NN学習制御部501がNNパラメータ設定部500で設定したニューラルネットワークパラメータで、学習データ保持部510に保持されている学習データを用いてニューラルネットワークを学習する。本実施形態では、先に説明したDeep Convolutional Neural Networks(DCNN)を用いる。設定されるパラメータとは、層の数や層の処理内容(構造)およびフィルタサイズや出力チャンネル数などである。学習されたニューラルネットワークは、NN中間層プローブ部502に送信される。
次に、NN中間層プローブ工程S120では、NN中間層プローブ部502がNN学習工程S110において学習されたニューラルネットワークの各中間層の識別精度をNN中間層プローブデータ保持部511に保持されている評価データを用いて評価する。評価の方法に関しては、後で詳しく説明する。各中間層の評価結果は、中間層重要度決定部503に送信される。次に、中間層重要度決定工程S130では、中間層重要度決定部503がNN中間層プローブ工程S120において評価された各中間層の評価結果に基づいて各中間層の重要度を決定する。重要度の決定方法については、後で詳しく説明する。決定した各中間層の重要度は、NN学習制御部501に送信される。
次に、NN再学習工程S140では、NN学習制御部501が学習データ保持部510に保持されている学習データおよび中間層重要度決定工程S130において決定された各中間層の重要度を用いて、ニューラルネットワークを再学習する。再学習されたニューラルネットワークの構造やパラメータはNNパラメータ保持部512に送信され、保持される。NNパラメータ保持部512に保持されたニューラルネットワークの構造やパラメータは、先に説明した認識装置20において識別対象画像の識別時に用いられる。最後に、S150において学習終了するかを判定して、学習処理が終了する。終了判定は所定の回数で終了してもよいし、再度中間層プローブ工程S120の処理を行って、所定精度かどうかを判定して終了してもよい。
次に、図8(a)のフローチャートにおける各工程のより具体的な処理内容について説明する。まず、NN学習工程S110では、NN学習制御部501がNNパラメータ設定部500で設定したニューラルネットワークのパラメータで学習データ保持部510に保持されている学習データを用いてニューラルネットワークを学習する。ここでは、図4(a)のように、入力画像に対してconvolution(畳みこみ)、relu処理、およびpooling処理を数回行った後の出力結果に、全結合層(fullconnect層)を三層接続して結果を出力するネットワークを学習する。例えば、画像分類タスクの学習で一般的に用いられるILSVRCの1000クラス画像分類データを学習する場合には、図9に示すように全結合層の最終層1015の出力ノード1050のノード数を1000個にする。そして、それぞれの出力1043が各画像に割り振られている画像分類クラスにおける尤度とすればよい。学習時には、学習データ保持部510に保持されている学習データに対する各出力結果1043と教師値との誤差をニューラルネットワークに対して逆伝播する。そして、各convolution層のフィルタ値(重み)を確率的勾配降下法(Stochastic Gradient Descent:SGD法)などで更新すればよい。
また、非特許文献4に開示されているように、中間層の出力結果に対して全結合層などの識別層を接続して、その出力結果と教師値とを比較して誤差を逆伝播してもよい。その一例を図10に示す。図10では、途中のRelu処理後の出力結果を全結合層に接続して同様に1000個の尤度を出力している。また図10において、各出力部は、Output1024、Output1026で表している。Output1024、Output1026、Output1050それぞれの出力結果と教師値とを比較して誤差を逆伝播する。通常の最終層からの誤差での学習と比較して、このような構成により中間層の学習が促進される。図10の例では、途中の2つのrelu処理(1007、1009)後の出力を全結合層(1023、1025)にそれぞれ1層接続しているが、複数の中間層に全結合層を接続してもよいし、全結合層も1層ではなく複数接続してもよい。
次に、中間層プローブ工程S120で、NN中間層プローブ部502は、NN学習工程S110において学習したニューラルネットワークの各中間層の識別精度を評価する。本実施形態では、NN中間層プローブデータ保持部511に保持されている評価データを用いて各中間層の識別精度を評価するが、学習データ保持部510に保持されているデータを用いてもよい。ただし、どちらのデータを用いる場合でも、各評価データに対して教師値(正解値)は予め設定されていなければならない。本実施形態においては、画像分類クラスが付与されているとする。
具体的な評価方法は、NN学習工程S110において学習したニューラルネットワークに評価データを入力し各中間層の出力結果を取得する。図11は、本実施形態に係る中間層プローブ工程の処理を説明する図である。本実施形態では、図11(a)に示すように全結合層1027、1029、1031、1033に各中間層の出力結果を入力する。もしくは、図11(b)に示すように、識別器1035、1037、1039、1041に各中間層の出力結果を入力することで識別を行う。図11において、識別結果はそれぞれ1028、1030、1032、1034、1036、1038、1040、1042であり、この識別結果の識別精度をそれぞれ評価する。ここで用いる全結合層および識別器は、予め学習しておく。なお、ここで学習するクラスカテゴリはNN学習工程S110において学習したクラスカテゴリと同様でなくてもよいし、認識タスクも同じでなくてもよい。また、学習データに関しては、NN中間層プローブデータ保持部511に保持されているデータを学習データと評価データとに分割することを何回か行いクロスバリデーション(交差判定)を行ってもよいし、別途学習データを用意してもよい。
中間層を評価するための全結合層を学習する場合には、各中間層と全結合層を結合して、各中間層におけるconvolution層の学習率を0(フリーズ)として、全結合層部分のパラメータのみ学習を行えばよい。中間層を評価するための識別器を学習する場合には、中間層の出力結果を特徴ベクトルとする識別器を学習すればよい。識別器はSupport−Vector−Machine(SVM)などでよい。例えば、図11(b)に示した中間層1007の出力が識別器1039に入力される例で説明する。中間層1007の出力結果のサイズ(次元)はX×Y×Chで表され、それぞれ、出力結果に関する横方向のサイズ、縦方向のサイズ、出力チャンネル数を表している。例えば、通常convolution層ではフィルタサイズが3の場合には、画像端は周辺1画素を画素値0で埋めて、convolution層への入力の横方向、縦方向サイズと出力の横方向、縦方向サイズが同じになるようにする(padding処理)。途中に入るpooling処理が2×2の範囲の最大値を取得する処理で、ストライド数が2の場合、出力サイズはX方向、Y方向ともに1/2になる。例えば、図11(b)における中間層1006のconvolution層の出力Ch数が128の場合、256×256の画像を入力すると中間層1007の出力は2回のpooling処理が行われるので、64×64×128次元の出力結果が得られる。それらをすべて識別器に入力してもよいし、選択して入力してもよい。
また、中間層の評価時にニューラルネットワークの学習時と違う認識タスクで評価してもよい。例えば、先に説明した様に中間層の出力結果を入力画像サイズにアップサンプルして、画素ごとに特徴ベクトルを取得して識別することで各画素のクラスカテゴリを判定してもよい。ただし、その場合には中間層プローブデータの各画素の教師値が設定されているとする。また、先の例では画素ごとに128次元の特徴ベクトルが取得できることになる。また、ROIの位置を別途求めてROIPoolingしたのちに識別器に入力してもよい。なお、ここではconvolution層の後のrelu処理後の出力結果を識別器に入力したが、relu処理の前の出力結果などいずれの中間層の出力結果でもよい。以上の方法は識別器ではなく、全結合層の場合も同様である。
なお、以下の場合には、NN学習工程S110で用いた全結合層を中間層の評価時にそのまま用いることもできる。すなわち、NN学習工程S110において、図10で説明したように各中間層の出力結果に対して全結合層を接続して学習を行い、かつ中間層プローブ工程S120における評価データおよびクラスカテゴリがニューラルネットワークの学習時と同じ場合である。
いずれの方法でも、図12に示す表のように各中間層におけるNN中間層プローブデータの各クラスカテゴリに対する識別精度が得られる。図12では、中間層を10層選択して、各中間層の評価データの各クラスカテゴリA〜Dの識別精度を示している。各中間層におけるNN中間層プローブデータの各クラスカテゴリに対する識別精度に基づいて、次の中間層重要度決定工程で各中間層の重要度が決定される。なお、本実施形態ではNN学習部501が学習したニューラルネットワークの中間層の出力結果の識別精度を評価しているが、予め学習されたニューラルネットワークを外部から入力してもよい。
次に、中間層重要度決定工程S130では、中間層重要度決定部503が、中間層プローブ工程S120によって得られた中間層の識別精度に基づいて、各中間層の重要度を決定する。ここでは、図12のように各中間層に対して各クラスカテゴリの識別精度が得られているとする。また、各中間層の各クラスカテゴリの識別精度をAc(i,j)で表すとする。iはどの中間層の出力結果であるかを示すインデックスであり、jはどのクラスカテゴリであるかを示すインデックスである。各中間層の重要度をIm(i,j)もしくはIm(i)と表せば、Im(i,j)やIm(i)は数式1や数式2で示すように算出される。
Im(i,j)=f(Ac(i,j))…(数式1)
Im(i)=f(Ac(i,1),Ac(i,2),・・・,Ac(i,j),・・・,Ac(i,C))…(数式2)
数式1では、クラスカテゴリごとに重要度を算出しており、各中間層の注目するクラスカテゴリの識別精度を重要度算出関数fに入力している。数式2では、各中間層で得られたすべてのクラスカテゴリの識別精度を重要度算出関数fに入力している。数式2におけるCは、総クラスカテゴリ数を表している。
図13は、図12のように得られた各中間層の各クラスカテゴリの識別精度に基づいて得られた各中間層の重要度の例を示す。図13(a)は、数式3のように各中間層の各クラスカテゴリの識別精度と最終層の同カテゴリの識別精度に基づいて重要度を算出している例である。また、図13(b)は、数式4のように算出している例である。
Im(i,j)=Ac(i,j)/Ac(i,C)…(数式3)
Im(i,j)=Ac(i,C)/Ac(i,j)…(数式4)
数式3のように重要度を設定すれば、各クラスカテゴリに対して識別精度が高い中間層の重要度を高く設定することができ、より学習を促進することができる。一方、数式4のように重要度を設定すれば、各クラスカテゴリに対して識別精度の低い中間層の学習を促進することができる。それぞれ、平均は各中間層での全てのカテゴリの重要度の平均値を表している。学習時の重要度の利用方法に関しては、次のNN再学習工程S140の処理内容を説明する際にふれる。また、重要度の算出方法はここで説明する方法に限定されるものではない。
次に、NN再学習工程S140では、NN学習制御部501が、中間層重要度決定工程S130によって得られた中間層の重要度に基づいてニューラルネットワークを再学習する。具体的には各中間層の重要度に基づいて、学習率を変更すればよい。重要度が高い中間層に対しては学習率を高くしてconvolution層の重みの更新が大きくされるように(更新の程度が大きくなるように)学習すればよい。さらに、学習するクラスごとに誤差に対する学習率を変更してもよい。学習率とは、学習データをニューラルネットワークに与えたときの出力結果と該当する教師値との誤差に対して各中間層のパラメータを更新する値を決定するパラメータである。学習率を大きく設定すると、中間層のパラメータは大きく更新される。本実施形態においては、その学習率を中間層ごとに決定する。学習率を大きく設定した中間層は大きく更新される。逆に、学習率を小さく設定した中間層はあまり更新されない。
図14は、図13(a)、(b)のように各中間層の重要度が得られている場合に、それぞれの中間層のクラスカテゴリごとに学習率を設定した例を示している。図14(a)は図13(a)のように重要度が得られた場合の各中間層の学習率であり、図14(b)は図13(b)のように重要度が得られた場合の各中間層の学習率である。図14において、元の学習率として記載しているのは、NN学習工程S110においてニューラルネットワークを学習した際の各中間層の学習率で、最終層から入力層に近い中間層に向かって学習率を小さく設定している例である。
ここで学習率をlr(i,j)で表すとする。i,jについては先と同様に、iはどの中間層であるかを表すインデックスで、jはどのクラスカテゴリであるかを表すインデックスである。もしくはlr(i)で表して、中間層ごとには学習率を変更するが、クラス間では同じ学習率としてもよい。学習率lr(i,j)は中間層重要度決定工程S130によって得られた重要度Im(i,j)を用いて数式5のように表される。
lr(i,j)=lr(i)・F(Im(i,j))…(数式5)
数式5におけるlr(i)は、各中間層の学習率であり、図14では元の学習率として示している。図14では中間層ごとに違う値となっているが、同じ値(1)でもよい。図14(a)、図14(b)ともに以下の数式6のように学習率を算出している。
lr(i,j)=lr(i)・Im(i,j)…(数式6)
ニューラルネットワークの学習時に、誤差が学習率に応じて重みづけされて逆伝播されることで、高い学習率を設定した中間層およびクラスカテゴリの学習を促進することができる。もしくは、重要度が所定値以上の中間層に対して、図10に示したように中間層にも全結合層などの識別層を接続して、誤差を逆伝播する方法もある。例えば、図13(a)で示したように各中間層の重要度の平均値に着目して、所定値以上の中間層に識別層を接続する。例えば、重要度の値が0.9以上の中間層の出力結果を全結合層に接続して学習を行う。もしくは、全ての中間層に対して識別層を接続して、図13に示した重要度に応じて各識別層に対して学習率を設定してもよい。学習率を大きくした識別層に接続されている中間層の学習が促進されることになる。
本実施形態では、上記した学習率を変更する構成について説明したが、本実施形態はこのような構成に限定されるものではない。本実施形態は、中間層重要度決定工程S130によって得られた中間層の重要度に基づいて、学習にかかわるパラメータを変更する構成に広く適用できる。例えば、上述の説明では最終層から入力層に向かって徐々に学習率が減衰していくように設定されていたが、その減衰率を重要度に応じて変更してもよい。他には、重要度の高い中間層は重みの更新回数を増やすように設定することもできる。具体的には、各中間層で更新回数を設定して、更新回数が過ぎた中間層は学習率が0(フリーズ)になるように設定すればよい。他には、重要度が高い中間層のニューロンの数を増やすこともできる。このようにして再学習されたニューラルネットワークのパラメータは、NNパラメータ保持部513に保持される。なお、本実施形態ではDCNNの例で説明したが、その他のニューラルネットワークにも適用できる。
以上のように、本実施形態の学習装置50は、学習したニューラルネットワークの中間層の出力結果の識別精度を評価し、各中間層の重要度を決定し、その重要度に基づいてニューラルネットワークを再学習する。このように、本実施形態では、中間層の重要度に基づいてニューラルネットワークを再学習することで、識別精度の高いニューラルネットワークを学習することができる。
[第2の実施形態]
次に、本発明の第2の実施形態について説明する。本実施形態では、第1の実施形態で説明した処理により中間層の重要度に基づいてニューラルネットワークを再学習した後、1つ以上の中間層の出力結果を特徴量とする識別器を学習する。そして、そのニューラルネットワークおよび識別器を識別時の処理時に用いる。以下、第1の実施形態において既に説明をした構成については同一の符号を付し、その説明は省略する。
図5(b)は、本実施形態における認識装置20の機能構成を示すブロック図である。なお、図5(b)においても、図5(a)と同様、認識装置20の機能部を示す機能ブロックの他に、カメラ10に相当する撮影部200も示している。本実施形態の認識装置20が、第1の実施形態と相違する点は、識別部203、識別器保持部513が追加されている点である。また、出力部202の処理内容が異なる。なお、識別器保持部513も、NNパラメータ保持部506と同じように不揮発性の記憶装置として認識装置20と接続された構成としてもよい。
図7(b)は、本実施形態における認識装置20における認識処理のフローチャートである。図7(b)において、入力工程T210の処理内容は、第1の実施形態と同様の処理であるため説明を省略する。出力工程T220では、入力工程T210で入力された識別対象画像100を予め学習されたネットワークに入力して、図4(b)、(c)で示したように中間層の出力結果を出力する。出力された中間層の出力結果は、識別部203に送信される。次に、識別工程T230では、識別部203が、出力工程T220で取得された中間層の出力結果を識別器に入力して、識別結果を出力する。識別器は予め学習されており、識別器保持部513に保持されている。
次に、識別工程T230で用いる識別器の学習方法について説明する。本実施形態でも、第1の実施形態と同様に学習したニューラルネットワークの各中間層の出力結果の識別精度を評価して、各中間層の重要度を決定しニューラルネットワークの再学習を行う。本実施形態では、その後、再学習したニューラルネットワークを用いて学習データを入力した際に得られる中間層の出力結果を特徴ベクトルとして識別器を学習する。
図6(b)は、本実施形態の学習装置50の機能構成を示すブロック図である。本実施形態の学習装置50は、第1の実施形態の構成に加えて、識別器学習部508が追加されている。
図8(b)は、本実施形態における学習装置50における学習処理のフローチャートである。図8(b)において、NN学習工程S110、中間層プローブ工程S120、中間層重要度決定工程S130、NN再学習工程S140の処理は第1の実施形態と同様であるため、その説明を省略する。ただし、NN再学習工程S140において学習されたニューラルネットワークは、NN学習制御部501からNNパラメータ保持部512だけではなく、識別器学習部508にも送信される。なお、本実施形態の学習処理でも、S150において学習を終了するかの判定を行っているが、以下に説明する識別器学習工程S160の後に判定してもよい。
次に、識別器学習工程S160の処理について説明する。識別器学習工程S160では、識別器学習部508が、NN再学習工程S140において学習されたニューラルネットワークおよび学習データ保持部510に保持されている学習データを用いて、識別器を学習する。学習された識別器のパラメータは、識別器パラメータ保持部513に保持される。なお、識別器学習時は、ニューラルネットワークの学習時と違う学習データを用いてもよい。一般的に、ニューラルネットワーク特にDCNNの場合には、多くの学習データが必要であることが知られている。そのため、ニューラルネットワークの学習は大量データで行い、中間層の識別精度評価および識別器の学習では、それよりも少ない(ある程度の)学習画像で行うことも可能である。
また、識別器学習時に学習する認識タスクおよびクラスカテゴリは、ニューラルネットワーク学習時と違っていてもよい。例えば、ニューラルネットワークは画像分類タスクで学習した後、中間層の識別精度評価および識別器の学習時には領域分割タスクで学習してもよい。ただし、識別器には中間層の出力結果を特徴ベクトルとして入力するため、中間層の識別精度評価時と識別器の学習時の認識タスクは同じである方が望ましい。
次に、識別器学習工程S160の具体的な処理内容について説明する。本実施形態では、図4(b)、(c)で示したように中間層の出力結果を特徴ベクトルとして用いる識別器を学習する。より識別精度の高い識別器を学習するためには、複数の中間層の出力結果を統合して用いる方がよい。識別器には、Support−Vector−Machine(SVM)などを用いればよい。また、複数の中間層の出力結果を統合して全結合層のみを学習してもよい。その場合には、全結合層のパラメータを識別器のパラメータとする。識別器学習工程S160において学習された識別器のパラメータは識別器パラメータ保持部513に保持され、識別時に利用される。
以上のように、本実施形態の学習装置50は、学習したニューラルネットワークの中間層の出力結果の識別精度を評価し、各中間層の重要度を決定し、その重要度に基づいてニューラルネットワークを再学習する。さらに、本実施形態では、再学習したニューラルネットワークの中間層の出力結果を特徴ベクトルとする識別器を学習する。このような構成により、中間層の重要度に基づいてニューラルネットワークを再学習することで、識別精度の高いニューラルネットワークおよび識別器を学習することができる。
[第3の実施形態]
次に、本発明の第3の実施形態について説明する。本実施形態では、ユーザーインターフェース上でユーザが識別精度を向上する対象(クラスカテゴリ)を選択することで、その対象(クラスカテゴリ)が向上するように中間層の重要度を決定し、ニューラルネットワークを再学習する。なお、第1、第2の実施形態において既に説明をした構成については同一の符号を付し、その説明は省略する。
図6(c)は、本実施形態の学習装置50の機能構成を示すブロック図である。本実施形態の学習装置50は、第1の実施形態の構成に加えて、ユーザ設定部504が追加されている。ユーザ設定部504は、後述するように、ユーザが設定したクラスカテゴリに係る情報を取得、受付ける機能を有する。
図8(c)は、本実施形態における学習装置50における学習処理のフローチャートである。図8(c)において、NN学習工程S210は第1の実施形態と同様の処理であるため、説明を省略する。次に、ユーザ設定工程S220では、図15に示すようにユーザ60が表示装置21の上に表示されているUI22上で選択(設定)した、識別精度を向上したいクラスカテゴリに係る情報をユーザ設定部504が取得する。ここで選択可能なクラスカテゴリは、NN学習工程S210において学習するクラスカテゴリ定義と同様でなくてもよい。また、クラスカテゴリを選択するのではなく、そのクラスカテゴリに属する対象が選択できるようになっていてもよい。
次に、中間層プローブ工程S220では、NN学習工程S210で学習されたニューラルネットワークの各中間層の識別精度を評価する。本実施形態においては、ユーザ設定工程S220において設定されたクラスカテゴリもしくは対象の識別精度を評価する。
中間層重要度決定工程S240、NN再学習工程S250、学習終了判定S260の処理は、第1の実施形態における各処理と同様であるため、説明を省略する。
以上のように、本実施形態の学習装置50は、学習したニューラルネットワークにおいて、ユーザが設定したクラスカテゴリの中間層の出力の識別精度を評価する。そして、評価結果に基づいて各中間層の重要度を決定し、その重要度に基づいてニューラルネットワークを再学習する。このような構成により、本実施形態では、中間層の重要度に基づいてニューラルネットワークを再学習することで、ユーザが設定したクラスについて識別精度の高いニューラルネットワークを学習することができる。
[第4の実施形態]
次に、本発明の第4の実施形態について説明する。本実施形態では、ニューラルネットワークを再学習する際に与える学習データまたはその教師値を変更するか、学習する際の各クラスカテゴリに対する誤差に対する重みを変更することで、ニューラルネットワークの識別精度を向上する。なお、第1〜第3の実施形態において既に説明をした構成については同一の符号を付し、その説明は省略する。
本実施形態の学習装置50の機能構成は、図6(a)で示す第1の実施形態と同様であるが、ニューラルネットワークを再学習する際のNN学習制御部501の処理内容が第1の実施形態とは異なる。これについては、後述する。
図8(d)は、本実施形態における学習装置50における学習処理のフローチャートである。図8(d)において、NN学習工程S310、中間層プローブ工程S320および中間層重要度決定工程S330の処理内容は第1の実施形態と同様の処理であるため説明を省略する。再学習NN教師値設定工程S340では、NN学習制御部501が中間層プローブ工程S320における評価結果および中間層重要度決定工程S330における重要度に基づいて再学習するニューラルネットワークの学習データおよび教師値を設定する。
次に、NN再学習工程S350では、NN学習制御部501が、再学習NN教師値設定工程S340において設定された学習データおよび教師値を用いて、ニューラルネットワークを再学習する。再学習されたニューラルネットワークの構造およびパラメータはNNパラメータ保持部512に送信され、保持される。
次に、再学習NN教師値設定工程S340の具体的な処理内容について説明する。図10で説明した様に、途中の中間層にも識別層である全結合層を接続してニューラルネットワークの学習をする場合には、図10の1050、1024、1026で表される出力に対して与える教師値を変更してもよい。例えば、先に説明したILSVRCの1000クラス画像分類の場合で説明する。図10に示したニューラルネットワークの最終層である1050の出力ノードは1000クラスに対応させてノード数を1000として各クラスに対応する尤度を出力するとして、1024、1026で示される出力はそれぞれ設計することができる。例えば、クラスカテゴリAにとって中間層1007の出力結果の重要度が高いと判定された場合には、1024の出力をクラスカテゴリAに属するかどうかの判定結果を尤度として出力するようにする。この構成により、よりクラスカテゴリAを識別するために有効な中間層の学習を促進する。
その際、学習データを例えば次の2つに限定することもできる。1つは、NN学習工程S310で学習したニューラルネットワークでクラスカテゴリAに属するデータのうちクラスカテゴリAと識別できなかったデータ(未検出データ)である。もう1つは、クラスカテゴリAに属さないデータのうち、クラスカテゴリAと識別されたデータ(誤検出データ)である。学習時には全ての学習データを与えてニューラルネットワークの各中間層の学習を行うステップと、上記のように限定された学習データを与えて所定の中間層の学習のみを行うステップを所定回数ずつ繰り返すなどの処理を行えばよい。
図10のように、中間層に識別層を接続してニューラルネットワークの再学習を行う場合でも、出力クラス数や定義を変更するのではなく、クラスカテゴリAに対する誤差に他のクラスカテゴリに対する誤差よりも大きな重みづけをする。そして、重みづけした誤差を伝播するように設計することで、所定のクラスカテゴリに対する学習を促進する。さらに、中間層ごとにその重みづけを変更してもよい。また、それぞれの識別層で別の認識タスクを識別するように設計してもよい。
なお、本実施形態においても、第3の実施形態と同様に識別精度を向上したいクラスカテゴリ、対象をユーザが設定することも可能であり、その場合には学習装置50において図8(d)で説明したユーザ設定工程を実行できるようにすればよい。また、第2の実施形態と同様にニューラルネットワークを再学習した後に、ニューラルネットワークの中間層の出力結果を特徴ベクトルとする識別器を学習してもよい。
以上のように、本実施形態の学習装置50は、学習したニューラルネットワークの中間層の出力結果の識別精度を評価し、各中間層の重要度を決定し、その重要度に基づいてニューラルネットワークを再学習する。さらに、本実施形態では、再学習時に与える学習データおよび教師値を再設定することで、より識別精度の高いニューラルネットワークを学習する。このような構成により、識別精度の高いニューラルネットワークを学習することができる。
[第5の実施形態]
次に、本発明の第5の実施形態について説明する。本実施形態では、再学習する際にニューラルネットワークの構造も変更する。また、第4の実施形態と同様に再学習する際に与える学習データまたはその教師値を変更する、もしくは学習する際に学習する各クラスに対する誤差に対する重み設定を変更することもできる。なお、第1〜第4の実施形態において既に説明をした構成については同一の符号を付し、その説明は省略する。
まず、再学習する際のニューラルネットワークの構造のみを変更する場合の処理内容を説明する。この構成では、画像を識別する際の処理は、第1、第2の実施形態と同様であるが、ニューラルネットワークの構成を変更してニューラルネットワークを再学習した後、識別のための全結合層もしくは識別器を再学習し、識別時に用いる。
本実施形態の学習装置は、第1、第2の実施形態と同様に、図6(a)、(b)で説明した学習装置50を用いる。第1、第2の実施形態との相違点は、ニューラルネットワークを再学習する際のNNパラメータ設定部500およびNN学習制御部501の処理内容が異なる点である。また、ニューラルネットワークを再学習した後、識別器を学習する場合には識別器学習部508の処理内容も異なる。
図8(e)は、本実施形態における学習装置50における学習処理のフローチャートである。図8(e)において、NN学習工程S410、中間層プローブ工程S420および中間層重要度決定工程S430の処理内容は、第1の実施形態と同様の処理であるため説明を省略する。再学習NN構造設定工程S440では、NNパラメータ設定部500が、中間層プローブ工程S420における評価結果および中間層重要度決定工程S430における重要度に基づいて、再学習するニューラルネットワークの構造を設定する。設定されたニューラルネットワークの構造は、NN学習制御部501に送信される。
次に、NN再学習工程S450で、NN学習制御部501は、再学習NN構造設定工程S440において設定されたニューラルネットワークを学習データ保持部510に保持されている学習データを用いて再学習する。再学習されたニューラルネットワークの構造およびパラメータは、NNパラメータ保持部512に送信され、保持される。
次に、再学習NN構造設定工程S440およびNN再学習工程S450の具体的な処理内容について説明する。再学習NN構造設定工程S440では、中間層重要度決定工程S430によって得られた重要度が高い中間層からいくつかの中間層を選択して、その中間層からニューラルネットワークを分岐する。図16は、本実施形態の再学習NN構造設定工程S440におけるニューラルネットワークの構成を示す図である。同図において、中間層1007の出力結果は、次のconvolution層1008だけではなく、convolution層1051およびconvolution層1055に入力される。
NN再学習工程S450では、再学習NN構造設定工程S440において設定されたニューラルネットワークの再学習を行う。再学習の際は、再学習NN構造設定工程S440において追加した層以外の学習率を0(フリーズ)にして、追加した中間層のみを学習してもよいし、全てのネットワークを再学習してもよい。本実施形態においても、第4の実施形態で説明したように再学習するニューラルネットワークに与える学習データおよび教師値を設定してもよい。例えば、NN学習工程S410において学習したニューラルネットワークで学習データ保持部510に保持されている学習データを識別して、誤検出した学習データに重みづけをしたり、選択したりする。これにより、分岐されたニューラルネットワークは、NN学習工程S410において学習したニューラルネットワークが識別困難な学習データをより学習するニューラルネットワークとなる。また、第4の実施形態と同様に学習するクラスカテゴリを限定したり重みづけをしたりすることもできる。
ニューラルネットワークの再学習の後、さらに識別層を学習する。図17は、NN再学習工程S450におけるニューラルネットワークの構成を示している。図17(a)に示したように、各分岐した構造の最終層1060、1062、1064の出力結果を全結合層1065で統合する。統合された後は、複数層の全結合層を経て出力結果1050が出力される。そして、分岐されたニューラルネットワークを再学習した後、統合する全結合層のみを学習する。この際に与える学習データは、NN学習工程S410において与えた学習データと同じでよい。また、第2の実施形態と同様に中間層の出力結果を統合して特徴ベクトルとして識別器を学習することもできる。学習方法は、第2の実施形態で説明した処理内容とほぼ同様である。ただし、図17(b)に示したように分岐されたニューラルネットワークの中間層の出力結果も統合する。例えば、図17(b)における中間層1072、1078、1084の出力結果を統合して特徴ベクトル(図中のfeature1088)として、SVM1089に入力して出力結果(Output1090)を出力している。
なお、本実施形態においても、第3の実施形態と同様に識別精度を向上したいクラスカテゴリ、対象をユーザが設定することも可能であり、その場合には学習装置50において図8(d)で説明したユーザ設定工程を実行できるようにすればよい。
以上のように、本実施形態の学習装置50は、学習したニューラルネットワークの中間層の出力結果の識別精度を評価し、各中間層の重要度を決定し、その重要度に基づいてニューラルネットワークを再学習する。さらに、本実施形態では、再学習時のニューラルネットワークの構造を再設定することで、より識別精度の高いニューラルネットワークを学習することができる。
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
50 学習装置
500 NNパラメータ設定部
501 NN学習制御部
502 NN中間層プローブ部
503 中間層重要度決定部
510 学習データ保持部
511 NN中間層プローブデータ保持部
512 NNパラメータ保持部

Claims (13)

  1. ニューラルネットワークを学習する学習手段と、
    前記学習されたニューラルネットワークの少なくとも1つの中間層の識別精度を評価する評価手段と、
    前記少なくとも1つの中間層の識別精度に対する評価結果に基づいて、前記少なくとも1つの中間層それぞれの重要度を決定する決定手段と、
    を有し、
    前記学習手段は、前記少なくとも1つの中間層それぞれの重要度に基づいて、前記ニューラルネットワークを再学習することを特徴とする学習装置。
  2. 前記評価手段は、前記少なくとも1つの中間層が識別するクラスカテゴリの識別精度に基づいて、前記重要度を決定することを特徴とする請求項1に記載の学習装置。
  3. ユーザが選択するクラスカテゴリの情報を受け付ける受付手段を更に有し、
    前記決定手段は、更に前記受け付けたクラスカテゴリの情報に基づいて、前記重要度を決定することを特徴とする請求項1または2に記載の学習装置。
  4. 前記学習手段は、前記重要度に基づいて前記少なくとも1つの中間層のパラメータの更新の程度または更新の回数を異ならせて、前記ニューラルネットワークを再学習することを特徴とする請求項1から3のいずれか1項に記載の学習装置。
  5. 前記学習手段は、前記重要度に基づいて前記ニューラルネットワークの構造を異ならせて、前記ニューラルネットワークを再学習することを特徴とする請求項1から4のいずれか1項に記載の学習装置。
  6. 前記学習手段は、前記重要度に基づいて前記少なくとも1つの中間層のニューロンの数を異ならせて、前記ニューラルネットワークを再学習することを特徴とする請求項5に記載の学習装置。
  7. 前記学習手段は、前記重要度に基づいて、前記少なくとも1つの中間層に対する学習データ、学習データの教師値、学習データのクラスカテゴリとの誤差のうちの少なくとも1つを変更することを特徴とする請求項1から6のいずれか1項に記載の学習装置。
  8. 前記学習手段は、前記再学習されたニューラルネットワークの少なくとも1つの中間層および最終層の出力、前記少なくとも1つの中間層に対して決定された重要度、前記少なくとも1つの中間層の識別精度に対する評価結果のうちの1つを入力とする識別器を学習することを特徴とする請求項1から7のいずれか1項に記載の学習装置。
  9. 対象のデータを入力する入力手段と、
    請求項1から7のいずれか1項に記載の学習装置により再学習されたニューラルネットワークを用いて、前記入力されたデータを認識する認識手段と、
    を有することを特徴とする認識装置。
  10. 対象のデータを入力する入力手段と、
    請求項8に記載の学習装置により学習された識別器を用いて、前記入力されたデータを認識する認識手段と、
    を有することを特徴とする認識装置。
  11. ニューラルネットワークを学習するステップと、
    前記学習されたニューラルネットワークの少なくとも1つの中間層の識別精度を評価するステップと、
    前記少なくとも1つの中間層の識別精度に対する評価結果に基づいて、前記少なくとも1つの中間層それぞれの重要度を決定するステップと、
    前記少なくとも1つの中間層それぞれの重要度に基づいて、前記ニューラルネットワークを再学習ステップと、
    を有することを特徴とする学習方法。
  12. コンピュータを、請求項1から8のいずれか1項に記載の学習装置として機能させるためのプログラム。
  13. コンピュータを、請求項9または10に記載の認識装置として機能させるためのプログラム。
JP2017107451A 2017-05-31 2017-05-31 学習装置、認識装置、学習方法及びプログラム Withdrawn JP2018205858A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017107451A JP2018205858A (ja) 2017-05-31 2017-05-31 学習装置、認識装置、学習方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017107451A JP2018205858A (ja) 2017-05-31 2017-05-31 学習装置、認識装置、学習方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2018205858A true JP2018205858A (ja) 2018-12-27

Family

ID=64957114

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017107451A Withdrawn JP2018205858A (ja) 2017-05-31 2017-05-31 学習装置、認識装置、学習方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2018205858A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200092900A (ko) * 2019-01-25 2020-08-04 주식회사 딥바이오 뉴런-레벨 가소성 제어를 통해 파국적인 망각을 극복하기 위한 방법 및 이를 수행하는 컴퓨팅 시스템
JP2021086371A (ja) * 2019-11-27 2021-06-03 富士通株式会社 学習プログラム、学習方法および学習装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200092900A (ko) * 2019-01-25 2020-08-04 주식회사 딥바이오 뉴런-레벨 가소성 제어를 통해 파국적인 망각을 극복하기 위한 방법 및 이를 수행하는 컴퓨팅 시스템
KR102471514B1 (ko) 2019-01-25 2022-11-28 주식회사 딥바이오 뉴런-레벨 가소성 제어를 통해 파국적인 망각을 극복하기 위한 방법 및 이를 수행하는 컴퓨팅 시스템
JP2021086371A (ja) * 2019-11-27 2021-06-03 富士通株式会社 学習プログラム、学習方法および学習装置
JP7295431B2 (ja) 2019-11-27 2023-06-21 富士通株式会社 学習プログラム、学習方法および学習装置

Similar Documents

Publication Publication Date Title
CN110097130B (zh) 分类任务模型的训练方法、装置、设备及存储介质
US20220138490A1 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
JP6855098B2 (ja) 顔検出トレーニング方法、装置及び電子機器
JP2018055259A (ja) 情報処理装置、情報処理方法及びプログラム
EP3333768A1 (en) Method and apparatus for detecting target
US9779329B2 (en) Image processing apparatus, image processing method and program
JP4767595B2 (ja) 対象物検出装置及びその学習装置
JP6458394B2 (ja) 対象追跡方法及び対象追跡装置
JP7228961B2 (ja) ニューラルネットワークの学習装置およびその制御方法
WO2017079522A1 (en) Subcategory-aware convolutional neural networks for object detection
US9152926B2 (en) Systems, methods, and media for updating a classifier
KR102476022B1 (ko) 얼굴검출 방법 및 그 장치
US9418440B2 (en) Image segmenting apparatus and method
US9256835B2 (en) Information processing apparatus enabling discriminator to learn and method thereof
US8385649B2 (en) Information processing apparatus and method for detecting object in image data
US11113576B2 (en) Information processing apparatus for training neural network for recognition task and method thereof
JP2008262331A (ja) オブジェクト追跡装置およびオブジェクト追跡方法
CN111027347A (zh) 一种视频识别方法、装置和计算机设备
JP2017102906A (ja) 情報処理装置、情報処理方法及びプログラム
JPWO2012046426A1 (ja) 物体検出装置、物体検出方法および物体検出プログラム
JP2018205858A (ja) 学習装置、認識装置、学習方法及びプログラム
JP6977624B2 (ja) 物体検出装置、物体検出方法、およびプログラム
JP2021018477A (ja) 情報処理装置、情報処理方法、及びプログラム
WO2022267387A1 (zh) 图像识别方法、装置、电子设备和存储介质
JP2019185121A (ja) 学習装置、学習方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200528

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20200714