JP2022175851A - 情報処理装置、情報処理方法、及びプログラム - Google Patents

情報処理装置、情報処理方法、及びプログラム Download PDF

Info

Publication number
JP2022175851A
JP2022175851A JP2021082595A JP2021082595A JP2022175851A JP 2022175851 A JP2022175851 A JP 2022175851A JP 2021082595 A JP2021082595 A JP 2021082595A JP 2021082595 A JP2021082595 A JP 2021082595A JP 2022175851 A JP2022175851 A JP 2022175851A
Authority
JP
Japan
Prior art keywords
input data
machine learning
specific domain
information processing
recognition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021082595A
Other languages
English (en)
Inventor
敬正 角田
Norimasa Kadota
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 JP2021082595A priority Critical patent/JP2022175851A/ja
Priority to US17/735,342 priority patent/US20220366242A1/en
Publication of JP2022175851A publication Critical patent/JP2022175851A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • 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/0464Convolutional networks [CNN, ConvNet]
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]

Landscapes

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

Abstract

【課題】認識タスクを行う機械学習モデルについて、特定の事例についての認識精度の改善を効率的に行う。【解決手段】複数の階層からなる階層的構造を有し、入力されたデータ中の認識対象の認識に用いる機械学習モデルの学習を行う。入力データと、入力データについての機械学習モデルからの出力の正解を示すデータと、を取得する。入力データの特定のドメインについての機械学習モデルからの出力の正解を示すデータと、入力データに対する機械学習モデルの中間層のうち少なくとも1つの出力との誤差に基づいて、機械学習モデルの学習を行う。【選択図】図2

Description

本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
CNNを用いたパターン認識(画像分類、物体検出、又は意味的領域分割など)のタスクでは、最終的な認識の精度評価のための評価用データセット(評価データ)と、現在の学習経過での認識精度評価のための検証用データセット(検証データ)と、を用意する。またこのタスクでは、それぞれのタスクごとに適切な評価指標が設定される。そして、それらのデータのセット全体、又はフォーカスすべき分類(サブセット)ごとに、設定された評価指標を用いて認識の精度評価を行い、CNNの性能を評価する。
特許文献1では、追加学習を行った場合に識別精度が向上する対象物とそれ以外の対象物を定量的に評価してユーザの目的に合致した識別器を得る技術が開示されている。また、特許文献2では、教師あり画像分類器の分類精度を向上させるために、認識精度の悪かった検証用画像に類似する画像を、教師無し画像分類器によって抽出する技術が開示されている。
特開2019-106119号公報 特開2019-109924号公報
Jonathan Long,Evan Shelhamer,Trevor Darrell,"Fully Convolutional Networks for Semantic Segmentation",CVPR2015,[online],平成26年11月14日,[令和3年4月1日検索],インターネット Olaf Ronneberger, Philipp Fischer, Thomas Brox,"U-Net: Convolutional Networks for Biomedical Image Segmentation",MICCAI 2015,[online],平成27年5月18日,[令和3年4月1日検索],インターネット Hengshuang Zhao, Jianping Shi, Xiaojuan Qi, Xiaogang Wang, Jiaya Jia,"Pyramid Scene Parsing Network",CVPR2017,[online],平成28年12月4日,[令和3年4月1日検索],インターネット Barret Zoph,Quoc V. Le,"Neural Architecture Search with Reinforcement Learning",ICLR2017,[online],平成28年11月5日,[令和3年4月1日検索],インターネット
しかしながら、上述のCNNにおいては、評価データ又は検証データからのマクロな認識精度が十分であっても、少数の特定事例については認識精度が不足する場合がある。特許文献1に記載の技術では、改善すべき事例を抽出し、それを直接的に改善するような追加学習を行わないため、その追加学習によってユーザの目的に合致したモデルが得られるかは不明である。また特許文献2に記載の技術では、画像全体の特徴量の類似度に基づいて類似画像を抽出するため、画像中の局所領域が問題となる場合には、追加学習を行っても認識精度改善に結びつきにくい。
本発明は、認識タスクを行う機械学習モデルについて、特定の事例についての認識精度の改善を効率的に行うことを目的とする。
本発明の目的を達成するために、例えば、一実施形態に係る情報処理装置は以下の構成を備える。すなわち、複数の階層からなる階層的構造を有し、入力されたデータ中の認識対象の認識に用いる機械学習モデルの学習を行う情報処理装置であって、入力データと、前記入力データについての前記機械学習モデルからの出力の正解を示すデータと、を取得する取得手段と、前記入力データの特定のドメインについての前記機械学習モデルからの出力の正解を示すデータと、前記入力データに対する前記機械学習モデルの中間層のうち少なくとも1つの出力との誤差に基づいて、前記機械学習モデルの学習を行う学習手段と、を備えることを特徴とする。
認識タスクを行う機械学習モデルについて、特定の事例についての認識精度の改善を効率的に行うことができる。
実施形態1に係る入力画像、GT、及び画像認識処理の一例を説明するための図。 実施形態1に係るCNNの学習機構の一例を説明するための図。 実施形態1に係る認識装置の機能構成の一例を示す図、及び、学習装置の機能構成の一例を示す図。 実施形態1に係る認識装置による処理の一例を示すフローチャート(a)と、学習処理による処理の一例を示すフローチャート(b)~(d)。 実施形態1に係る特定ドメインモデルの応答と、GTと、特定ドメインGTとの一例を示す図。 実施形態1に係る検証画像及び推論結果の一例を示す図と、推論結果からの特定のドメインの抽出例を説明するための図。 実施形態2に係る学習装置の機能構成の一例を示す図。 実施形態2に係る各特定ドメインモデルの応答と、対応するGTと、特定ドメインGTとの一例を示す図と、複数チャネルを用いた処理を説明するための図。 実施形態3に係る学習装置の機能構成の一例を示す図。 実施形態3に係る割り当て処理の一例を示す図。 実施形態3に係る強化学習の一例を説明するための図。 実施形態4に係るコンピュータのハードウェア構成を示す図。
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
[実施形態1]
一実施形態に係る情報処理装置としての認識装置及び学習装置は、機械学習モデルを利用して、入力されたデータ中の認識対象を認識する。本実施形態においては、画像を入力データとする、畳み込みニューラルネットワーク(CNN)を用いた意味的領域分割による画像認識処理が行われる。ここでは、学習装置によって機械学習モデルの学習が行われ、その学習結果を用いて認識装置による認識処理が行われるが、認識装置と学習装置とは同体の装置において実装されてもよく、別体の装置として実装されてもよい。
図1は、認識装置が行う画像認識処理を説明するための模式図である。図1(a)に示される入力画像101は、本実施形態に係る認識装置に入力される画像データの一例である。ここでは、入力画像101はRGB画像であるものとするが、例えば、CMYK形式など、画像認識処理が行えるのであれば特にその色空間などの形式は限定されない。
また、本実施形態に係る認識装置及び学習装置が行う認識処理においては、画像内の被写体が、植物(Plant)、空(Sky)、又はその他(Other)のいずれかのカテゴリに分類される。ここで、入力画像101には、前景中央部に花(Flower)(Plantに分類される)、背景に空(Skyに分類される)と地面(Ground)(Otherに分類される)とが配置されている。これらは一例であり、認識装置及び学習装置によって異なるカテゴリへの分類がなされてもよく、入力画像101及び後述する正解(GT)102において配置される被写体も異なるものが用いられてもよい。
図1(b)に示されるGT102は、入力画像101に対応する正解(GT:Ground Truth)の一例である。上述したように、本実施形態においては、花はPlantのカテゴリに、空はSkyのカテゴリに、地面はOtherのカテゴリに対応させるものとする。また図1(b)に示されるように、GT102において、各カテゴリの対象物体が存在する領域に、そのカテゴリに対応するラべルが付与されるものとする。ラベルは、各領域に付与されるカテゴリを示す情報であり、各図においては分類の結果付与される(又は正解データに付与されている)ラベルが色分け(網目模様)によって示されている。本実施形態においては、意味的領域分割として、入力画像中の領域をGT102のように特定のカテゴリごとに部分領域に分割する画像認識タスクが行われる。
図1(c)は、本実施形態に係る認識装置が備えるCNN103による入出力の一例を示している。以下、本実施形態に係るCNN103の計算機構について説明を行う。非特許文献1及び2には、意味的領域分割を行うニューラルネットワークの事例が記載されている。
CNN103は、畳み込み、活性化、プーリング、及び正規化などを行う層で構成されるモジュールが複数個連結された階層的構造を有しており、入力画像101を入力として、画像内のカテゴリ分類の結果である推論結果107を出力する。CNN103は、非特許文献1又は2に示されるように、高次層の中間特徴を出力サイズに合わせてアップサンプリングして低次から高次層の中間特徴のサイズを合わせ、1×1畳み込みを利用することにより、推論結果107を出力することができる。ここでは、CNN103は特徴抽出層104を有している。
中間層105は、CNN103における中間層の一例である。本実施形態に係る情報処理装置としての認識装置は、中間層105の任意のチャネルに対して活性化層を追加する。また、一方で、この活性化層の出力に対するGTとなる特定ドメインGT(詳細は後述)を取得する。次いで、認識装置は、活性化層の出力とGTとのロスを算出し、中間層105の出力が特定ドメインGTに応じたものになるよう、CNNの学習を行うことができる。ここでは、認識の精度について不満足である改善すべき事例を示す検証データ(要改善事例と呼ぶ)がユーザによって選択され、この事例に対して中間層105の1チャネルの出力が応答するように学習がなされるものとする。この学習処理については図4を参照して後述する。要改善事例は、後述する検証記憶部3102に格納されている検証データを用いた検証結果に基づいてユーザによって選択される、ユーザが不満足であるとする検証結果を示す検証データである。検証データとは、現在の学習の経過の検証、すなわち認識精度の評価のために予め用意されるデータ群であり、入力用の画像データとこれに対する認識処理の正解を示すデータとを含んでいる。中間層105は、アップサンプリングを経て入力と同じ解像度で複数のチャネルを有するものとするが、解像度が入力画像と異なっていてもよい。
出力層106は、1×1畳み込みと活性化層によって推論結果107を出力する。ここでは、推論結果107は、入力画像101と高さ及び幅が等しく、それぞれPlant、Sky、Otherカテゴリの尤度に対応する正規化された3チャネルを有するものとする。すなわち、この3チャネルにおいては、同位置のPlant、Sky、Otherカテゴリの尤度の和が1.0となり、それぞれの値が[0,1]における実数値であるものとする。出力層106の最終活性化層ではソフトマックス関数が用いられてもよい。また、CNN103の活性化層には、CNNのネットワーク構成において通常用いられる任意の活性化層が利用可能であり、例えばReLU(Rectified linear unit、ランプ関数)、又はLeaky ReLUなどが用いられてもよい。
図2は、本実施形態における情報処理装置としての学習装置における学習機構について説明するための模式図である。入力画像201は入力画像101と同様の画像であり、CNN203へと入力される。CNN203はCNN103と同様の構成を持つCNNであり、特徴抽出層204、中間層205、出力層206を備える。
出力202は、CNN203の出力結果の一例であり、図1における推論結果107と同様に入力画像201に対するカテゴリ分類の結果である。GT211は、図1のGT102と同様に入力画像に対応する正解データである。出力210は、中間層205のうちの、1チャネル分(1カテゴリ分)の応答に関する、所定の活性化層を介した中間層の出力の一例である。出力210は、要改善事例に応答するように学習されたチャネルの出力であり、GT212は、認識精度について改善すべき領域についてのGTである。学習装置は、出力202と出力210とについて、正解データ(それぞれGT211及びGT212)とのロス213を計算する。ここでは、ロス213はクロスエントロピーを用いて算出される。
学習時の一回の更新処理では、ロス関数により計算されたロスに基づいて誤差逆伝播が行われ、各層の重み及びバイアスの更新値が計算され更新される。この例においては、中間層205のうちの1チャネル分の応答に対してGT212を取得しロスの計算を行うことにより、その中間層1チャネル分の学習を行っている。この学習処理は1チャネル分には限らず、中間層105の複数チャネルに対して対応するGTが用意され学習が行われてもよい。ここで、学習に用いられる中間層205のチャネルは、中間層205の有する全チャネルから選択される。ここで選択されるチャネルは、学習用に予め用意されていてもよく、全チャネルから無作為に選択されてもよく、最終的な出力210に対するチャネルごとの寄与度などに基づいて選択されてもよい(この例については実施形態2を参照して後述する)。
図3(a)は、本実施形態に係る情報処理装置としての認識装置の機能構成の一例を示すブロック図である。認識装置3000は、上述のCNN103のランタイム時の処理を行い、そのために画像取得部3001、領域認識部3002、及び辞書記憶部3003を有する。各ブロックの機能については、図4のフローチャートにおいて説明する。
図3(b)は、本実施形態に係る情報処理装置としての学習装置の機能構成の一例を示すブロック図である。学習装置3100は図2に示される学習機構における処理を行う。学習装置3100は、各データを格納する記憶部として、学習記憶部3101、検証記憶部3102、推論結果記憶部3103、及びモデル記憶部3104を備える。また学習装置3100は、辞書記憶部3105、領域認識部3106、ロス計算部3107、及び更新部3108を備えるNN学習部3200を有する。さらに学習装置3100は、サンプリング部3109とモデル作成部3110とを備え、要改善事例に応じて、認識結果を改善することが求められるドメインの領域を入力データから抽出するためのモデルである特定ドメインモデルを作成する。
図4は、本実施形態に係る認識装置3000及び学習装置3100が行う処理の一例を示すフローチャートである。図4(a)は、上述のCNN103のランタイム時に認識装置3000が実行する処理の一例を示している。S4001で辞書記憶部3003は、領域認識部3002が用いる辞書を設定する。ここで、辞書とは、CNNの各層で用いられる重み及びバイアスなどのパラメータを示すものとして以下の説明を行う。すなわち、S4001では、領域認識部3002が用いる畳み込みニューラルネットワークの各層の重み及びバイアスがロードされる。
S4002で画像取得部3001は、認識処理を行う画像(すなわち、入力画像1001)を取得する。画像取得部3001は、入力画像1001を、CNN103の入力サイズに合うようにリサイズし、さらに必要に応じて各ピクセルの前処理を行う。例えば画像取得部3001は、各ピクセルの前処理として、入力画像のピクセルそれぞれのRGBチャネルから、予め取得したある画像セットの平均RGB値を減算する処理を行ってもよく、環境に応じて異なる任意の処理を行ってもよい。以下、このような前処理によって変換された画像データも入力画像と呼ぶものとして説明を行う。
S4003で領域認識部3002は、複数の階層からなる階層的構造を有する機械学習モデルを利用して、入力データ中の認識対象を認識する。本実施形態において、領域認識部3002は、入力画像の各ピクセルのカテゴリの認識を行う。すなわち、S4003の処理はCNN103による順伝播の処理であり、特徴抽出層104及び中間層105による応答が出力される。上述したように、CNN103は、入力データに対する機械学習モデルの中間層のうち少なくとも1つの出力が、特定のドメインについて抽出された学習用の入力データに対する認識の正解データを用いて最適化されるように学習されている。本実施形態では、中間層105の1チャネルの出力が要改善事例に応答するように学習されている。要改善事例を用いた学習については図4(c)を参照して後述する。領域認識部3002は、1×1畳み込み層と活性化層とで構成される出力層106によって、意味的領域分割の推論結果(ここでは、推論結果107)を算出する。この推論結果は前述のように、入力画像と同じサイズ(高さ及び幅)で、カテゴリ数分のチャネルを持つテンソルであり、各要素は[0,1]に正規化された実数値である。以上が、ランタイム時の処理である。
次に、学習時の処理について、図4(b)のフローチャートを参照して説明する。図4(b)のS4101~S4104における処理は、改善すべき事例がないと判断されるまで学習装置3100において繰り返されるループ処理である。
S4101でNN学習部3200は、CNN203の学習を行う。S4101における処理は、図4(c)を参照して詳細に説明を行う。
図4(c)は、S4101で行うCNNの学習処理の詳細な内容の一例を示すフローチャートであり、S4105~S4110の処理を含んでいる。S4105で辞書記憶部3105は、CNN203の辞書の初期値を含む、学習に関するハイパーパラメータの初期値の設定を行う。ここで設定されるパラメータは、例えばミニバッチサイズ、学習係数、又は確率的勾配降下法のソルバーのパラメータなど、一般的なCNNにおいて用いられるパラメータであり、その設定処理に関する詳細な説明は省略する。
また、図4(b)のループ処理における2回目以降のS4101でのS4105では、前回のループでのS4105で設定したパラメータの一部又は全部を引き継いでもよい。この場合、CNNの各層の重み及びバイアスについては初期値の設定を行わず、辞書記憶部3105に格納されている、前回の学習結果である重み及びバイアスを読み出して用いる。
S4106~S4111は、ロスが十分に収束するまで行われる、学習のイテレーション(反復)処理である。ここでは、一般的な学習処理と同様に、算出されるロスの値が所定の値以下になるまで反復処理が行われるものとする。
S4106で画像取得部3001は、入力データと、入力データについての分類の正解を示すデータと、を取得する。例えば、画像取得部3001は、学習用の画像とそれに対応するGT(ラベル)とを、ミニバッチサイズ分取得する。ここでは、学習記憶部3101に学習用の画像とそれに対応するGTとが格納されており、画像取得部3001はこれを読み出して取得する。また画像取得部3001は、各画像に関して、ランダム切り出し若しくは色変換などの水増し処理、又は正規化などの前処理を実行してもよい。
S4107でロス計算部3107は、入力データの特定のドメインについての分類の正解を示すデータである、特定ドメインGTを作成する。
ここで、ロス計算部3107は、入力データから特定のドメインの領域を抽出することができる。この際に、ロス計算部3107は、特定のドメインの領域を抽出するモデルである特定ドメインモデルを用いることができる。特定ドメインモデルとは、要改善事例に基づいて後述のS4104で作成される、特定のドメインを有する領域を抽出するモデルであり、作成処理の詳細な説明は図6を参照して後述する。ここで、特定のドメインは、入力データ中の、例えば特定の色を有する部分、特定の空間周波数を有する部分、又は特定の分類(カテゴリ)の被写体の部分であり、所定の特徴量を有する領域であってもよい。本実施形態においては、特定のドメインとして特定の色を有する部分が用いられるものとして説明を行う。
また、ロス計算部3107は、特定のドメインの領域における、入力データについての分類の正解を示すデータ(GT)から、入力データの特定のドメインについての分類の正解を示すデータ(特定ドメインGT)を作成することができる。
ここで、図5を参照して、特定ドメインGTの作成について説明する。図5は、特定ドメインGTについて説明するための模式図である。応答501は、S4106で取得した画像に対する、HSV色空間で作成された特定ドメインモデルの応答である。図5(a)の例において、入力画像に対して特定ドメインモデルに応じた特定の色相及び彩度を有する領域が、網目模様の領域に対応する。PlantGT502は、画像のPlant領域に対応する正解データである。また、図5(c)に示す特定ドメインGT503は、応答501とPlantGT502とをピクセルの要素ごとにかけ合わせることで得られる2次元配列である。このように、特定ドメインGT503は、特定のドメインの領域について、Plant領域である領域を示すGTである。このように、ロス計算部3107は、特定のドメインの領域(例えばPlant領域)における、入力データの各要素が特定の分類に属するか否かを示す正解データ(例えばPlantGT)から、特定ドメインGTを作成することができる。
なお本実施形態においては、応答501、PlantGT502、及び特定ドメインGT503の要素はそれぞれ[0,1]の実数値に正規化されているとして説明を行う。こうして得られた特定ドメインGT503が、CNN203の中間層205のうちの1チャネルの応答に対応するGTとして用いられる。
S4108で領域認識部3106は、CNN203の順伝播処理により、ミニバッチ内の画像のカテゴリの認識を行う。この処理はS4003における処理と同様に行われるため、重複する説明は省略する。
S4109でロス計算部3107は、CNN203の学習の対象である順伝播の出力とそれに対応するGTとから、予め定まっているロス関数に基づいてロスを算出する。ロス計算部3107は、順伝播の出力として、中間層205の1チャネルの出力210(以降、適宜「応答」と呼ぶ)と、最終的なネットワークの出力202とを用いる。出力210に対応するGTは特定ドメインGT503であり、出力202に対応するGTは各カテゴリのGT102である。出力202は、Plant、Sky、Otherに対応する3チャネルの出力であり、これに対応する各カテゴリのGTも3チャネルのデータである。特定ドメインGT503のチャネル数は、出力210と同じ1チャネルである。本実施形態において、ロス計算部3107は、これらの出力とGTとのペアから、特定のドメインGT及び各カテゴリのGTそれぞれについて、クロスエントロピーロスを算出し、算出した2つのクロスエントロピーロスを適当な重みづけとともに足し合わせる。特定ドメインGTの重みづけを強くすることにより要改善事例の改善率を大きくすることができるが、この重みはユーザが任意に設定できるものとする。
このように、ロス計算部3107は、入力データの特定のドメインについての分類の正解を示すデータ(特定ドメインGT)と、入力データに対する機械学習モデルの中間層のうち少なくとも1つの出力(出力210)との誤差(ロス)を評価することができる。これに加えて、ロス計算部3107は、入力データについての分類の正解を示すデータ(GT)と、入力データに対する機械学習モデルの出力(出力202)の出力との誤差(ロス)を評価することができる。後述する更新部3108は、これらの双方の誤差に基づいて、機械学習モデルの学習を行うことができる。
S4110で更新部3108は、CNNのパラメータの更新を行う。本実施形態においては、更新部3108は、S4109で算出された全体のロスに対して、誤差逆伝播によりCNNの各層の重み及びバイアスの更新量を計算し、それぞれ更新を行う。更新した重み及びバイアスの値は、辞書記憶部3105に格納される。
S4111で更新部3108は、S4109で算出したロスが十分に収束したか否かを判定する。ここでは、判定に用いられる閾値が予め所望に設定され、ロスがこの閾値以下であるか否かが判定されるものとする。ロスが十分に収束したと判定された場合はループ処理が終了してステップS4102へと進み、そうでない場合は処理がステップS4105へと戻る。
なお、S4111で判定されるループの終了タイミングは、ロスの値が所定の閾値以下になったときには限定されない。例えば上述の反復処理は、予め定められた学習データのエポック数若しくは所定のイテレーション数の反復を終えた場合に、又は所定の時間が経過した場合に終了し、S4102の検証処理へと移行してもよい。
このような図4(c)に示される処理によれば、特定ドメインGTを含むGTに基づいてCNNの各層のパラメータが更新される。
次いでその更新されたCNNを用いて、S4102の検証処理が行われる。S4102でNN学習部3200は、機械学習モデルを利用して、検証用の入力データ中の認識対象を認識する。ここで、NN学習部3200は、検証記憶部3102に格納された検証データを用いて、S4101で学習を行ったCNNモデルの精度を評価し、その評価結果を推論結果記憶部3103に格納する。CNNモデルの精度の評価は、学習時に用いたクロスエントロピーロスを用いて行われてもよく、Pixel Accuracyなどの別の公知の指標を用いて行われてもよい。ここでは、推論結果記憶部3103は、ネットワークの最終出力であるPlant、Sky、Otherの3カテゴリの推論結果とそれに対応するGTとを格納する。さらに、推論結果記憶部3103は、その他の中間層の出力など、結果の分析に有用なものを適宜格納してもよい。
S4103でサンプリング部3109は、検証データの中にユーザによって選択された要改善事例が存在するか否かを判定する。要改善事例が存在しない場合には処理が終了し、要改善事例が存在する場合には処理はS4104へと進む。
具体的には、サンプリング部3109は、推論結果記憶部3103に格納されている、検証データに対する推論結果を、表示部(不図示)を介してユーザに提示することができる。サンプリング部3109は、検証データに含まれる画像データ又は正解データをユーザに提示してもよい。この場合、ユーザは、推論結果が不満足である検証データを、要改善事例として、入力部(不図示)を介して選択することができる。
S4104でモデル作成部3110は、検証用の入力データのうち認識結果を改善することが求められる特定のドメインを示す情報(例えば特定ドメインモデル)を取得する、指定取得動作を行う。こうして取得された特定のドメインを示す情報に従って、NN学習部3200は、上記のように機械学習モデルに対する追加学習を行うことができる。
以下では、モデル作成部3110が要改善事例から特定ドメインモデルを作成する場合について説明する。図6は、特定ドメインモデルの作成処理について説明するための模式図である。本実施形態では、特定ドメインモデルを作成する際に、Plant、Sky、Otherカテゴリの内、Plantに着目する場合について説明する。
まず、モデル作成部3110は、選択された要改善事例についての画像データのうち、改善が必要な領域のデータを取得することができる。モデル作成部3110は、このデータをサンプリング部3109から取得することができる。図6(a)に示される検証画像601は、検証データに含まれる入力画像の1つである。図6(b)に示される推論結果602は、学習済みのCNNを用いた検証画像601からの推論結果であり、ここではPlantカテゴリについての推論結果を示す。また、領域603は、認識結果の正解(GT)がPlantであるにもかかわらず推論結果の出力(スコア)が低い領域を示し、このような領域を要改善領域と呼ぶものとする。図6(c)に示されるマスク604は、要改善領域(領域603)のピクセルをサンプリングするためのマスクであり、マスク604によって領域605のピクセルがサンプリングされる。ここでは、ユーザによって検証画像601上にマスク部分を指定する入力が行われ、指定された領域上の被写体部分がサンプリングされる。
このように、サンプリング部3109は、検証用の入力データのうち特定のドメインに属する領域を示す情報(マスク)を取得することができる。そして、サンプリング部3109は、検証画像をRGB画像からHSV画像に変換し、マスク上のHSVの値を取得する。ユーザは、要改善事例を複数指定してもよく、サンプリング部3109は、要改善事例が複数存在する場合には、それぞれについてHSVの値の取得処理を行うことができる。
モデル作成部3110は、入力データのうち特定のドメインに属する領域における特徴量から、特定のドメインの領域を抽出するモデルを作成することができる。この例では、モデル作成部3110は、こうして取得したHSVの値に基づいて特定ドメインモデルを作成する。本実施形態においては、モデル作成部3110は、要改善領域のHSVを3変量正規分布でモデル化するものとする。作成された特定ドメインモデルは、モデル記憶部3104に格納される。
なお、ロス計算部3107は、入力データの複数のドメインのそれぞれについての、分類の正解を示すデータ(特定ドメインGT)を用いて、中間層のうち少なくとも1つの出力との誤差を評価してもよい。このために、モデル作成部3110は、要改善領域の性質に従って、複数のモデルを作成してもよい。例えば、モデル作成部3110は、同一カテゴリの2以上の要改善領域が、それぞれ異なる特性を有している場合に、それぞれの特性に応じて異なる特定ドメインモデルを作成してもよい。この特性(性質)は検出に影響を及ぼす性質であれば任意に設定することができ、例えばPlantカテゴリの領域において、夕日の環境光下の芝生、及び逆光の樹木に要改善領域がある場合、それぞれの類型に当てはまる要改善領域を収集することができる。そして、それぞれの類型に当てはまる要改善領域の特徴に基づいて、それぞれの類型(ドメイン)についてのモデル(例えばHSVの3変量正規分布モデル)が作成されてもよい。この例では、それぞれのモデルを、「夕日芝」と「逆光樹木」と呼ぶものとする。またモデル作成部3110は、このような複数のモデルに対して、その重要度に基づいた重みを設定し、統合して1つの混合モデルとしてもよい。以下、「混合モデル」とはそのような複数のモデルを統合したモデルのことを指し、これも本明細書の特定ドメインモデルに含まれる。
混合モデルに対しても、ロス計算部3107はS4107と同様の処理によって特定ドメインGTを作成可能である。この場合、ロス計算部3107は、入力データから第1及び第2のドメインの領域を抽出することができる。そして、ロス計算部3107は、第1のドメインの領域における入力データについての分類の正解を示すデータと、第2のドメインの領域における入力データについての分類の正解を示すデータと、の組み合わせを、特定ドメインGTとして作成することができる。例えば、上述の「夕日芝」と「逆光樹木」との混合モデルについて、それぞれ統合の重みをw1、w2とした場合に、ロス計算部3107は以下の式(1)を用いて混合モデルの特定ドメインGTを算出可能である。
GT=GT×(w1×(「夕日芝」の応答)+w2×(「逆光樹木」の応答)) 式(1)
ここで、GTとはPlantの元々のGTの値であり、「夕日芝」/「逆光樹木」の応答とは、HSV変換した学習用の画像に対する「夕日芝」/「逆光樹木」モデルそれぞれの応答である。モデルの応答は、HSV変換した画像をhsvとして、下記の式(2)のようにガウス変換を利用して算出することができる。
res=exp(-(1/2)(hsv-μ)Σ-1(hsv-μ)) 式(2)
ここで、resはモデルの応答であり、μはモデルの平均、Σはモデルの分散共分散行列である。算出された混合モデルGTはモデル記憶部3104に格納される。
S4104で特定ドメインモデルを作成した後、作成した特定ドメインモデルを用いて再度S4101の処理が行われる。2回目以降のS4104における更新処理で、モデル作成部3110は、特定ドメインモデルを更新してもよいし、要改善事例についての改善が不十分であるとする場合には更新を行わず同じ特定ドメインモデルを使うことにしてもよい。モデル作成部3110は、新たに抽出した要改善事例がある場合には、新たな類型についての要改善領域(例えば、日陰の花に対応する領域)及び対応する新たなモデルを作成してもよい。この場合、更新部3108は、そのモデルを追加した(統合した)混合モデルを利用してS4104の更新処理を行うことができる。
このような構成によれば、特定の事例に関して認識精度が不満足であるとされた場合にも、CNNの中間層でその事例に類似する特徴を持つ対象領域を明示的に学習させ、認識精度の改善を行うことができる。
なお、上記のように、サンプリング部3109は検証用の入力データに対する認識結果を提示し、モデル作成部3110は検証用の入力データのうち認識結果を改善することが求められる特定のドメインを示す情報を取得することができる。このような構成によれば、特定のドメインについて抽出された学習用の入力データに対する認識の正解データを用いて、機械学習モデルを最適化するように学習を行うことができる。したがって、特定の事例に関して認識精度が不満足であるとされた場合に、この事例に類似する特徴を持つ対象領域を機械学習モデルに明示的に学習させることができるため、認識精度が改善することが期待される。したがって、特定のドメインについて抽出された学習用の入力データに対する認識の正解データを用いて学習を行うこの構成は、中間層における学習(例えば特定ドメインGTと中間層の出力との誤差に基づく学習)に限られず、様々な学習方法に適用可能である。
本実施形態においては特定ドメインモデルをHSVの3変数で作成した。この処理により特に改善が期待できるのは、特定の色における認識精度である。画像データにおける色は、被写体の色、光源の色、その他被写体の表面特性及びホワイトバランスなどに応じて変化する。そして例えば、夕日を光源とした芝生の認識精度が悪い等、特定の色における認識精度の改善を行いたい場合に、このようなHSVによる学習が特に効果的である。しかしながら、HSV形式で各処理を行う必要は特になく、例えばHSの2変数で、又は異なる色空間を用いて処理を行うなど、所望の形式で本実施形態に係る処理が行われてもよい。また本実施形態においては、特定ドメインモデルは多変量正規分布でモデル化されるものとして説明を行ったが、例えばSupport Vector Machine(SVM)、混合正規分布、又はNNなどを用いてモデル化されてもよい。
本実施形態に係る学習装置3100は、CNNの中間層の出力のうち、特定ドメインGTによる学習が行われたチャネルの出力を画像として出力することができる。例えば、最終的な推論結果における要改善事例に対応する領域の認識精度が悪い場合に、要改善事例について学習を行っている1チャネルの出力を画像として出力し、正しく応答しているか否かをユーザが確認することが可能であってもよい。ここで応答が正しくない場合には、学習が不十分であると考えられる。また、ここで応答が正しい場合には、その中間層より低次のネットワークは正しく学習されており、そのチャネルとは別のチャネル又は高次のネットワークに改善が必要であると考えられる。このように、中間層の学習の結果を可視化することにより、学習の状態の確認を行い、最終的な推論結果の理解の手がかりを提供することができる。
[応用例1]
なお、本実施形態に係る学習装置3100は、改善が必要な正事例(以下、単に正事例)の中の特定のドメインでGTを作り、CNNの中間層の出力について学習を行ったが、改善が必要な負事例(以下、単に負事例)についても同様に学習を行うことが可能である。ここで、正事例とは、検出対象が存在するにも関わらずCNN203によってはその対象が検出できない事例であり、負事例とは、CNN203によって検出対象を誤検出してしまった事例であるものとする。例えば、GTがSky又はOtherである領域について、Plantと誤った検出処理を行ってしまった場合に、その誤検出を抑制するように中間層の出力の学習を行うことができる。このように、特定のドメインに属する領域は、認識対象が存在するが誤って認識されなかった領域と、認識対象が存在しないが誤って認識された領域と、の少なくとも一方でありうる。
以下、このような負事例に関する要改善事例を改善する方法について、図4(b)のS4104を参照しながら説明を行う。そのほかの基本的な処理については図4と同様に行われるため、重複する説明は省略する。
S4104では、モデル作成部3110が要改善事例から特定ドメインモデルを作成する。この例では要改善事例として負事例が抽出されている。すなわち、ユーザによって検証データから負事例が選択されており、負事例の誤検出が行われた領域のピクセルがサンプリングされる。このサンプリング処理は、図6(c)に示される領域605に対するものと同様に行われる。ここでは、GTがPlantではなくPlantと誤検出されている領域、又はGTがSkyではなくSkyと誤検出されている領域のうち認識精度に改善が必要とされた領域のピクセルがサンプリングされる。
ここで、PlantをGTとして、2つの特定ドメインモデル「負事例類型1」と「負事例類型2」とが作成されたものとして次の説明を行う。このPlantの負事例の特定ドメインGT(¬GT)は、以下の式(3)に従って算出することができる。
¬GT=¬GT×(w3×(「負事例類型1」の応答)+w4×(「負事例類型2」の応答)) 式(3)
ここで、w3、w4はそれぞれ負事例類型1と負事例類型2とに設定された重みづけであり、¬GTはPlantの負事例GTである。特定ドメインモデルの算出はS4107の処理と同様に行われる。このようにして算出された特定ドメインモデルを用いてS4109のロス計算処理を行うことで、中間層の1チャネルの出力について負事例に関する学習を行うことができる。
[応用例2]
本実施形態においては、検証データについて学習が行われているCNNモデルに関して、認識精度に改善が必要な事例を追加学習により学習する処理が行われた。しかしながら、本実施形態における特定ドメインモデルを用いた学習は、追加学習には限られない。例えば、高精度の認識が求められる事例を示す画像データが予めユーザによって設定されていてもよく、モデル作成部3110によって、その事例内の要高精度領域(要改善領域と同様にサンプリングされる)から特定ドメインモデルが作成されてもよい。このように、特定のドメインは、高精度で認識することが求められる事例であってもよい。そして、特定ドメインモデルを用いて、最初の学習を行うことも可能である。
図4(d)は、上述のような要高精度領域について特定ドメインモデルを作成し、CNNの学習を行う処理の一例を示すフローチャートである。このCNNを用いたランタイム時の処理及び機能構成は基本的に変わらないため、重複する説明は省略する。
図4(d)に示される学習処理は、特定ドメインモデルを作成する処理であるS4104がS4101の直前に行われることを除き、図4(b)に行われる処理と同様に行われる。すなわち、最初に要高精度事例に基づいて特定ドメインモデルを作成した後に処理がS4101へと進む。次いで、S4103において要改善事例が存在すると判定された場合には、処理がS4104へと戻ってから再度S4101の処理を行う。
このような処理によれば、中間層の出力についての要高精度事例を学習の最初に設定し、その事例の分類精度を向上させるようにCNNの学習を行うことが可能となる。
[応用例3]
また、本実施形態においては意味的領域分割による画像認識処理が行われるものとして説明を行っているが、画像認識処理の種類はこれには限定されない。例えば、本実施形態に係る学習装置3100は、意味的領域分割に代わり、公知の画像分類技術又は物体検出技術を用いて、それぞれ適切な評価指標を設定して画像認識の精度評価を行い、同様に要改善事例(要高精度事例)による学習を行うことができる。物体検出技術を用いる場合には、最終的な推論結果107のマップの出力の後に、全結合層による座標の回帰、又はNon-Maximum Suppressionなどの後処理が行われる。この場合であっても、中間層の所定のチャネルで検証データから選択される要改善事例に基づいて特定のドメインに関する追加学習を行う処理は同様に行うことが可能である。したがって、異なる認識タスクを用いても、特定の事例に関して認識精度が不満足であるとされた場合に、CNNの中間層の出力で要改善事例についての明示的な学習を行い、認識精度の改善を行うことができる。
[実施形態2]
実施形態1では、光源の色などの影響によって特定の色における認識精度が低くなっているとユーザが判断した要改善事例について、その特定の色を示す領域について応答するチャネルを1チャネル作成して学習を行うことにより分類精度の改善を行った。一方で、本実施形態においては、中間層の複数チャネルを用いて要改善事例の学習を行うことにより、それらのチャネルの出力が複数のカテゴリについて応答するように学習される。以下、要改善事例が色とそれ以外の要素とで類型化できる場合が想定され、中間層の複数チャネルで要改善事例中の複数のカテゴリに応答するように学習が行われるものとする。
実施形態1に係るモデル作成部3110は、画像のHSVの値に基づいて、「夕日芝」又は「逆光樹木」など、特定の色を有することによって認識精度が低下する要改善事例を想定して特定ドメインモデルの作成を行った。本実施形態に係るモデル作成部7004(後述)は、特定のドメインとして、色(HSV)、空間周波数などの画像特性、又は分類される領域カテゴリなどの、入力データ中の要素に基づいて特定ドメインモデルを作成する。この処理の詳細については図8を参照して後述する。
本実施形態に係るCNNが行う画像認識処理は、基本的に図1(c)に示されるものと同様のネットワーク構成を用いて行われる。また、本実施形態に係るCNNの学習機構は基本的に図2に示されるものと同様である。これらに関して実施形態1と重複する説明は省略する。
図7は、本実施形態に係る情報処理装置としての学習装置7000の機能構成の一例を示すブロック図である。本実施形態に係る情報処理装置としての認識装置3000は実施形態1の図3(a)に示されるものと同様の構成を有し、ランタイム時には図4(a)に示される処理を行う。学習装置7000は、領域認識部3106とロス計算部3107に代わって領域認識部7001とロス計算部7002を有するNN学習部7100、寄与度算出部7003、及びモデル作成部7004を備えることを除き学習装置3100と同様の構成を有する。また、学習装置7000の行う処理は基本的には図4(b)及び図4(c)に示されるものと同様であるが、以下ではこの処理と実施形態1における処理との差異について説明を行う。なお、本実施形態においては「花弁」、「茎」及び「空」の領域それぞれに対応する3つの特定ドメインモデルが作成され(S4104)、中間層の3チャネルにおいて各モデルに対応するドメインの学習を行う。なお、ここでは、実施形態1における花の領域が、「花弁」と「茎」とに分割され、そのそれぞれについて特定ドメインモデルが作成される(対応するGTはともにPlantである)ものとする。
S4101でNN学習部7100は、CNNの学習を行う。本実施形態においては、図4(c)に示されるCNNの学習処理のうち、S4107とS4109とを除く各処理は実施形態1と同様に行われる。
本実施形態に係るS4107でロス計算部3107は、格納している特定ドメインモデルとGTとを用いて、特定ドメインGTを作成する。ここで、ロス計算部3107は、3つの特定ドメインモデルに基づいて、それぞれ特定ドメインGTを作成する。図8は、本実施形態に係るS4107で作成される特定ドメインGTを説明するための模式図である。
モデル作成部7004は、特定ドメインモデルを作成する。本実施形態に係る特定ドメインモデルは、入力画像に対して、例えば図8の応答801のような、特定の色、特定の空間周波数、及び特定のカテゴリを有する領域を表す応答を出力する。
応答801は、S4106で取得した画像に対する、「花弁」のカテゴリに対応する第1の特定ドメインモデルの応答である。図8(a)において、応答801の網目模様の領域は、入力画像中の特定のドメインに属する(例えば特定の色、周波数、又はカテゴリを有する)領域に対応し、ここでは「花弁」のカテゴリに属する領域に対応する。
PlantGT802は、画像のPlant領域に対応する正解データである。特定ドメインGT803は、応答801とPlantGT802とをピクセルの要素ごとにかけ合わせることで得られる2次元配列である。
また、応答804は、S4106で取得した画像に対する、「茎」のカテゴリに対応する第2の特定ドメインモデルの応答である。特定ドメインGT805は、応答804とPlantGT802とをピクセルの要素ごとにかけ合わせることで得られる2次元配列である。すなわち、特定ドメインGT803及び805は、Plantに関する要改善領域を学習するためのGTである。
また、応答806は、S4106で取得した画像に対する、「空」のカテゴリに対応する第3の特定ドメインモデルの応答である。SkyGT807は、画像のSky領域に対応する正解データである。特定ドメインGT808は、応答806とSkyGT807とをピクセルの要素ごとにかけ合わせることで得られる2次元配列である。すなわち、特定ドメインGT808は、Skyに関する要改善領域を学習するためのGTである。本実施形態においては、図8に示される各応答、GT、及び特定ドメインGTの要素はそれぞれ[0,1]の実数値で表される。
本実施形態に係るS4109でロス計算部7002は、実施形態1のロス計算部3107と同様の処理により、CNN203の学習の対象である順伝播の出力とそれに対応するGTとから、予め定まっているロス関数に基づいてロスを算出する。ロス計算部7002は、順伝播の出力として、中間層205の出力210(ここでは、花弁、茎、及び空に対応する3チャネル)と、最終的なネットワークの出力202(3チャネル)とを用いる。出力202に対応するGTは特定ドメインGT(803、805、及び808の3チャネル)であり、出力210に対応するGTは各カテゴリのGT(図1(b)のPlant、Sky、及びOtherの3チャネル)である。ロス計算部7002は、実施形態1のロス計算部3107と同様に、これらの出力とGTとのペアから、それぞれクロスエントロピーロスを算出し、算出した2つのクロスエントロピーロスを適当な重みづけとともに足し合わせる。
本実施形態に係るS4102でNN学習部7100は、実施形態1と同様にS4101で学習を行ったCNNモデルの精度を評価する。また、ここで寄与度算出部7003は、中間層のチャネルごとに最終出力への寄与度を算出し評価する。
本実施形態においては上述の通り、中間層の複数チャネルを用いて要改善事例の学習を行うことにより、それらのチャネルの出力が複数のカテゴリについて応答するように学習される。ここでは、寄与度算出部7003は、中間層のチャネルごとに、機械学習モデルの最終出力への寄与度を評価する。そして、寄与度算出部7003は、寄与度に基づいて、中間層の複数のチャネルから機械学習モデルの学習に用いられるチャネルを選択する。この例では、寄与度の低い順に所定個数(以下の例では3)のチャネルが、要改善事例の学習に用いるチャネルとして選択される。
以下、寄与度算出部7003が寄与度を算出する方法の例について説明を行う。寄与度算出部7003は、例えば、順伝播の過程で中間層のチャネル1つを強制的にゼロにした場合の最終的な出力202を算出し、ゼロにしていない通常の出力202と比較することにより、そのチャネルの寄与度の大きさの評価を行うことができる。すなわち、寄与度算出部7003は、ある中間層チャネルをゼロにした場合とゼロにしない場合との、最終出力の応答(スコア)の変化量が大きいほど、その中間層チャネルの寄与度が大きいと評価する。寄与度算出部7003は、上述のスコアの変化量を、ピクセルごとの値の差分の絶対値和など、適当な尺度を用いて評価することができる。以下、チャネルの寄与度は、そのチャネルをゼロにした場合としない場合との変化量を、使用する検証データ全てに渡って算出及び累積し、その累積値に応じて決定されるものとする。
ここで、寄与度算出部7003は、中間層のチャネルから、最終出力への寄与度の低いチャネルを選択する。寄与度算出部7003は、例えば中間層の各チャネルについて、全検証データを用いて最終出力への寄与度を算出し、寄与度の小さいチャネルから順に所望の数のチャネルの番号を、寄与度の低いチャネルとして取得することができる。また、寄与度算出部7003は、全検証データは用いず、検証データのサブセットである要改善事例に限定してスコアの変化量の累積値を算出して寄与度の算出処理を行い、同様に寄与度の低い順から所望数のチャネルを寄与度が低いものとして選択してもよい。さらに寄与度算出部7003は、全検証データを用いて算出した寄与度と、要改善事例に限定して算出した寄与度と、の両方を用いて、寄与度の低いチャネルを選択することができる(例えば、どちらにおいても寄与度が低いとされるものを選択する)。ここでは、寄与度の低いものから順番に3チャネルが選択される。なお、寄与度算出部7003の行うチャネルの選択処理は、図4(b)に示されるループ処理の初回にだけ実行されればよい。
なお、寄与度の評価は、そのチャネルによる最終出力への影響度が測れるのであれば特に上述の方法には限定されない。例えば、寄与度算出部7003は、検証データを入力した際の中間層のチャネルごとの出力を、全検証データにわたって累積し、その累積値に応じて、そのチャネルの寄与度の評価を行ってもよい。ここでは、例えば上述の累積値が低いほど寄与度が低いものとし、累積値が低い順から所望数のチャネルが寄与度の低いものとして選択される。
本実施形態に係るS4104でモデル作成部7004は、実施形態1と同様に設定される要改善領域に基づいて、特定ドメインモデルを複数作成する。ここでは、モデル作成部7004は、図8の応答801、804、及び806を出力する、それぞれ「花弁」、「茎」、及び「空」に対応する3つの特定ドメインモデルを作成する。本実施形態においては、上述したように画像特性としてHSV色空間上の値、空間周波数、及び領域カテゴリが用いられる。ここでは、モデル作成部7004は、要改善領域の、Hの値及びSの値、空間周波数に関して高周波の値及び低周波の値、並びに領域カテゴリに関して花弁の尤度、茎の尤度、及び空の尤度の計7次元に基づいてモデルを作成する。
図8(i)は、要改善事例からピクセルをサンプリングする処理を説明するための模式図である。モデル作成部7004は、検証画像809から、図8(i)に示されるような、H、S、高周波、低周波、花弁、茎、空の7チャネルの画像(マップ)を作成する。ここでは、要改善領域のピクセルをサンプリングするためのマスク810~812が設定され、マスクによって指定された領域上のピクセルがそれぞれサンプリングされる。マスク処理については、各カテゴリに対して実施形態1と同様に行われる。このうち、HとSの値はRGB画像(検証画像809)をHSV変換することによって算出される。高周波、及び低周波(High-freq.,Low-freq.)は、例えば輝度画像を8×8ブロックで離散コサイン変換し、64個の基底を高周波と低周波とで32個ずつに2分し、それぞれ32枚のマップを累積することによって作成されるマップである。ここで作成されたマップのサイズが検証画像809と異なる場合、検証画像809と同じサイズへとリサイズされてもよい。特定のカテゴリ(花弁、茎、及び空)のマップ(Flower、Glass、及びSky)は、予めGTとして、検証データから手動で作成されるものとするが、特にこのようには限定されない。例えば、非特許文献3に記載の手法を用いることにより、詳細な領域カテゴリを有する大規模なCNNによる意味的領域分割の推論結果を利用して、各カテゴリのマップが用意されてもよい。
なお、CNNの学習時の処理であるS4107においても、学習画像は特定ドメインモデルと同様に7チャネルに変換されてから特定ドメインモデルに入力され、特定ドメインモデルに対する応答が取得される。
本実施形態においては、モデル作成部7004は、上述のようにして7チャネルのマップを作成するものとするが、各チャネルの要素は上述のようには限定されず、またチャネル数も7には限定されない。また、本実施形態で用いられる特定ドメインモデルは複数存在するがその一部またはすべてが混合モデルであってもよい。
このような処理によれば、複数のカテゴリの改善が必要な事例であっても、CNNの中間層の複数チャネルを用いて要改善事例の学習を行うことが可能となる。また、特定のドメインとして、特定の色だけではなく空間周波数及びカテゴリも用いることにより、実施形態1よりも詳細に要改善領域をモデル化し、より特殊な要改善事例に対する改善が可能となる。
[実施形態3]
実施形態2では、検証データ中の要改善事例を複数類型化し、複数の類型ごとに特定ドメインモデルを作成することにより、複数のカテゴリの要改善事例について改善を実現した。単一のカテゴリの要改善事例の特定ドメインモデルを混合する操作、又は単一のカテゴリを分割して特定ドメインモデルを作成する操作は、人間の直感又は経験に基づいて行うことも難しくない。一方で、改善すべき事例が多岐にわたる場合、又はカテゴリ数が多い場合には、上述の混合、分割操作を直感又は経験に基づくユーザ操作によって行うことは困難となりやすい。例えば、ある特定ドメインモデルに対して、他のどのモデルと混合させるのか、どのGTが正解として対応するのか、又はどのチャネルに割り当てられるのかなどについては、適切な選択を行うことが難しくなることが多い。
このような観点から、本実施形態に係る学習装置は、まず、CNNの中間層の出力に応じて、実施形態1と同様の処理によって、単一のカテゴリについて特定ドメインモデルを作成する。次いで学習装置は、検証データの分類精度が最大となるように、作成した特定ドメインモデルに対して、他のどのモデルと混合させるのか、どのGTが正解として対応するのか、又は中間層のどのチャネルに割り当てられるのかについて、自動探索を行う。以下、探索されるこれらの対応関係を、まとめて特定ドメインモデルの割り当てと呼ぶものとする。
本実施形態に係る学習装置が備えるCNNの推論時及び学習時の基本的処理は、実施形態1における処理と同様である。すなわち、本実施形態においても図1(c)及び図2に示される処理が同様に行われるため、重複する説明は省略する。
図9は、本実施形態に係る情報処理装置としての学習装置9000の機能構成の一例を示すブロック図である。認識装置3000は実施形態1の図3(a)に示されるものと同様の構成を有し、ランタイム時には図4(a)に示される処理を行う。学習装置9000は、ロス計算部3107に代わってロス計算部9001を有するNN学習部9100を、モデル作成部3110に代わってモデル作成部9002を備え、さらに最適化部9003を新たに備えることを除き学習装置3100と同様の構成を有する。
図10は、学習装置9000が行う学習処理の一例を示すフローチャートである。また、S4101における処理は基本的に実施形態1の図4(c)に示されるものと同一であるが、図4(c)の処理との差異についても以下において説明を行う。
S4102及びS4103の処理は実施形態1と同様に行われる。S10001でモデル作成部9002は、要改善事例から特定ドメインモデルを複数作成する。特定ドメインモデルを作成する処理は実施形態1のS4104と同様に行われるが、ここでは混合モデルの作成は行われず、単一のカテゴリに対応する特定ドメインモデルが複数作成されるものとする。なお、本実施形態においては、S4001からS10002にわたるループ処理が繰り返し行われるが、S10001の処理は初回のみ行われ、二回目以降のループ処理では省略されるものとする。また、作成された特定ドメインモデルが(例えば、Plant領域に対応するモデルを「花弁」と「茎」とに分割するように)複数の特定ドメインモデルに分割され、後続する処理に用いられてもよい。
S10002で最適化部9003は、機械学習モデルの中間層のうち少なくとも1つと、特定のドメインと特定の分類とのうちの少なくとも一方と、の組み合わせを決定することができる。ここで、特定の分類(例えばPlant)は、入力データの各要素が特定の分類に属するか否かを示す正解データ(例えばPlantGT)から、入力データの特定のドメインについての分類の正解を示すデータ(特定ドメインGT)を作成するために参照される。本実施形態においては、最適化部9003は、特定ドメインモデルに対して、どの特定ドメインモデルと混合するか、どのGTが正解として対応するのか、又は中間層のどのチャネルに割り当てられるのかについて、自動探索を行う。
本実施形態に係る最適化部9003は、強化学習による自動探索を行い、要改善事例を含む検証データに対して認識精度が高い、その検証データによる特定ドメインモデルの割り当てを、検証データに対する精度を報酬として用いて探索することができる。最適化部9003は、例えばCNN又はLSTM(Long short-term memory)の最適なネットワーク構造を強化学習の枠組みにより自動探索する方法を開示する非特許文献4の方法に従って、自動探索を行うことができる。ここでは、データの入出力を行うコントローラとして、ネットワークの構造を決定するRNN(Reccurent Neural Network)が用いられている。本実施形態において、RNNのコントローラは、中間層のチャネルごとの特定ドメインモデルの混合重みと、特定ドメインGT作成のために乗算するGTと、を出力することができる。
本実施形態では、RNNのコントローラが、検証用の入力データに対する認識精度と、検証用の入力データのうち特定のドメインに対する認識精度と、の少なくとも一方に対する精度が最大化されるように、強化学習によって機械学習モデルの学習を行う。ここでは例えば、強化学習の報酬として、検証データ全体に対する精度と、検証データのサブセットである要改善事例に対する精度と、の2つの精度の重みづけ和を用いた、以下の式(4)が使用される。
R=w×Acc+w×Acc 式(4)
ここで、Rは強化学習による自動探索で用いる報酬であり、Acc、Accはそれぞれ検証データ全体に対する精度及び要改善事例に対する精度であり、wとwはそのそれぞれの重みである。これらの重みは事前に任意の値が設定される。
図11は、RNNのコントローラの出力を説明するための図である。図11の例では、単一のカテゴリに対応する特定ドメインモデルがModel1、Model2、Model3、及びModel4の4つ存在している。ここでは、中間層の各チャネルに対して、各特定ドメインモデルの混合重みと、特定ドメインGT作成のために乗算するGTと、を出力することによって、特定ドメインモデルの割り当てを決定する。
処理1101~1104は、中間層のチャネルNにおける、Model1~Model4それぞれの混合重みを出力する処理である。処理1105は、チャネルNにおいて乗算するGTのインデックスを出力する処理である。この例では、インデックス=1がPlantを、インデックス=2がSkyを、インデックス=3がOtherを示し、インデックス=0はどのGTとも乗算しないことを示す。範囲1106に含まれる処理の出力はチャネルNに関する出力であり、チャネルN-1に関する出力はそれ以前に、チャネルN+1に関する出力はそれ以降に纏められている。ここで、出力される混合重みが全て0となるチャネルは、教師データを用いた学習をしない通常のCNNの中間層のチャネルと同様に機能するものとする。
図11に示すような出力を有するRNNコントローラを、式(4)で示した報酬によって更新することにより、検証データ全体に対して分類精度がよく、かつ要改善事例についての分類精度も高い、最適な特定ドメインモデルの割り当てを探索する。この処理は、図10(a)のループ処理でS10002ごとに行われる。ここで更新された特定ドメインモデルの割り当てによって、次回のループでのS4101でCNNの学習処理が行われる。すなわち、ロス計算部9001は、上記の割り当てに従って、特定ドメインGTと中間層のうち少なくとも1つの出力との誤差を評価することができる。
このような処理によれば、検証データへの分類精度を最大化するよう、作成した特定ドメインモデルをどのように割り当てるかを、強化学習を用いて探索することができる。したがって、GTのチャネル数が多い場合、又は要改善事例の類型が多い場合など、ユーザ操作による特定ドメインモデルの割り当てが難しい場合であっても、認識精度の改善を行うことができる。
[実施形態4]
上述の実施形態においては、例えば図3等に示される各処理部は、専用のハードウェアによって実現されてもよい。或いは、認識装置(例えば3000)及び学習装置(例えば3100)が有する一部又は全部の処理部が、コンピュータにより実現されてもよい。本実施形態では、上述の各実施形態に係る処理の少なくとも一部がコンピュータにより実行される。
図12はコンピュータの基本構成を示す図である。図12においてプロセッサ1201は、例えばCPUであり、コンピュータ全体の動作をコントロールする。メモリ1202は、例えばRAMであり、プログラム及びデータ等を一時的に記憶する。コンピュータが読み取り可能な記憶媒体1203は、例えばハードディスク又はCD-ROM等であり、プログラム及びデータ等を長期的に記憶する。本実施形態においては、記憶媒体1203が格納している、各部の機能を実現するプログラムが、メモリ1202へと読み出される。そして、プロセッサ1201が、メモリ1202上のプログラムに従って動作することにより、各部の機能が実現される。
図12において、入力インタフェース1204は外部の装置から情報を取得するためのインタフェースである。また、出力インタフェース1205は外部の装置へと情報を出力するためのインタフェースである。バス1206は、上述の各部を接続し、データのやりとりを可能とする。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
3000:認識装置、3001:画像取得部、3002:領域認識部、3003:辞書記憶部、3100:学習装置、3101:学習記憶部、3102:検証記憶部、3103:推論結果記憶部、3104:モデル記憶部、3105:辞書記憶部、3106:領域認識部、3107:ロス計算部、3108:更新部、3109:サンプリング部、3110:モデル作成部

Claims (20)

  1. 複数の階層からなる階層的構造を有し、入力されたデータ中の認識対象の認識に用いる機械学習モデルの学習を行う情報処理装置であって、
    入力データと、前記入力データについての前記機械学習モデルからの出力の正解を示すデータと、を取得する取得手段と、
    前記入力データの特定のドメインについての前記機械学習モデルからの出力の正解を示すデータと、前記入力データに対する前記機械学習モデルの中間層のうち少なくとも1つの出力との誤差に基づいて、前記機械学習モデルの学習を行う学習手段と、
    を備えることを特徴とする、情報処理装置。
  2. 前記入力データから前記特定のドメインの領域を抽出する抽出手段をさらに備えることを特徴とする、請求項1に記載の情報処理装置。
  3. 前記特定のドメインの領域における前記入力データについての前記機械学習モデルからの出力の正解を示すデータから、前記入力データの特定のドメインについての前記正解を示すデータを作成する第1の作成手段をさらに備えることを特徴とする、請求項2に記載の情報処理装置。
  4. 前記第1の作成手段は、前記特定のドメインの領域における、前記入力データの各要素が特定の分類に属するか否かを示す正解データから、前記入力データの特定のドメインについての前記正解を示すデータを作成することを特徴とする、請求項3に記載の情報処理装置。
  5. 前記抽出手段は、前記入力データから第1及び第2のドメインの領域を抽出し、
    前記入力データの特定のドメインについての前記正解を示すデータは、前記第1のドメインの領域における前記入力データについての前記機械学習モデルからの出力の正解を示すデータと、前記第2のドメインの領域における前記入力データについての前記機械学習モデルからの出力の正解を示すデータと、の組み合わせであることを特徴とする、請求項2から4のいずれか1項に記載の情報処理装置。
  6. 前記機械学習モデルを利用して、検証用の入力データ中の認識対象を認識する認識手段と、
    前記検証用の入力データのうち認識結果を改善することが求められる前記特定のドメインを示す情報を取得する指定取得手段と、
    をさらに備え、
    前記学習手段は、前記特定のドメインを示す情報に従って前記機械学習モデルに対する追加学習を行うことを特徴とする、請求項1から5のいずれか1項に記載の情報処理装置。
  7. 前記指定取得手段は、前記検証用の入力データのうち前記特定のドメインに属する領域を示す情報を取得することを特徴とする、請求項6に記載の情報処理装置。
  8. 前記入力データのうち前記特定のドメインに属する領域における特徴量から、前記特定のドメインの領域を抽出するモデルを作成する第2の作成手段をさらに備えることを特徴とする、請求項1から7のいずれか1項に記載の情報処理装置。
  9. 前記特定のドメインに属する領域は、前記認識対象が存在するが誤って認識されなかった領域と、前記認識対象が存在しないが誤って認識された領域と、の少なくとも一方であることを特徴とする、請求項7又は8に記載の情報処理装置。
  10. 前記中間層のチャネルごとに、前記機械学習モデルの最終出力への寄与度を評価する第1の評価手段と、
    前記寄与度に基づいて、前記中間層の複数のチャネルから前記学習手段による機械学習モデルの学習に用いられるチャネルを選択する選択手段と、
    をさらに備えることを特徴とする、請求項1から9のいずれか1項に記載の情報処理装置。
  11. 前記学習手段は、検証用の入力データに対する認識精度と、前記検証用の入力データのうち特定のドメインに対する認識精度と、の少なくとも一方に対する精度が最大化されるように、強化学習によって前記機械学習モデルの学習を行うことを特徴とする、請求項1から10のいずれか1項に記載の情報処理装置。
  12. 前記学習手段は、
    前記機械学習モデルの中間層のうち少なくとも1つと、
    前記特定のドメインと特定の分類とのうちの少なくとも一方と、
    の組み合わせを決定し、
    前記特定の分類は、前記入力データの各要素が前記特定の分類に属するか否かを示す正解データから、前記入力データの特定のドメインについての前記正解を示すデータを作成するために参照される
    ことを特徴とする、請求項1から11のいずれか1項に記載の情報処理装置。
  13. 入力データを取得する取得手段と、
    複数の階層からなる階層的構造を有する機械学習モデルを利用して、前記入力データ中の認識対象を認識する認識手段と、を備え、
    前記機械学習モデルは、入力データに対する前記機械学習モデルの中間層のうち少なくとも1つの出力が、特定のドメインについて抽出された、学習用の入力データに対する前記機械学習モデルからの出力の正解を示すデータを用いて最適化されるように学習されていることを特徴とする、情報処理装置。
  14. 前記特定のドメインは、特定の色を有する部分、特定の空間周波数を有する部分、又は特定の分類の被写体の部分であることを特徴とする、請求項1から13のいずれか1項に記載の情報処理装置。
  15. 前記特定のドメインは、高精度で認識することが求められる事例であることを特徴とする、請求項1から14のいずれか1項に記載の情報処理装置。
  16. 前記機械学習モデルは、入力データ中の部分領域のカテゴリを分類する、入力データ中に存在する認識対象を検出する、又は入力データを分類することを特徴とする、請求項1から15のいずれか1項に記載の情報処理装置。
  17. 複数の階層からなる階層的構造を有し、入力されたデータ中の認識対象の認識に用いる機械学習モデルの学習を行う情報処理装置であって、
    複数の階層からなる階層的構造を有する機械学習モデルを利用して、入力データ中の認識対象を認識する認識手段と、
    検証用の入力データに対する前記認識手段による認識結果を提示する提示手段と、
    前記検証用の入力データのうち認識結果を改善することが求められる特定のドメインを示す情報を取得する取得手段と、
    前記特定のドメインについて抽出された学習用の入力データに対する前記機械学習モデルからの出力の正解を示すデータを用いて、前記機械学習モデルを最適化するように学習を行う学習手段と、
    を備えることを特徴とする、情報処理装置。
  18. 複数の階層からなる階層的構造を有し、入力されたデータ中の認識対象の認識に用いる機械学習モデルの学習を行う情報処理装置が行う情報処理方法であって、
    入力データと、前記入力データについての前記機械学習モデルからの出力の正解を示すデータと、を取得する工程と、
    前記入力データの特定のドメインについての前記機械学習モデルからの出力の正解を示すデータと、前記入力データに対する前記機械学習モデルの中間層のうち少なくとも1つの出力との誤差に基づいて、前記機械学習モデルの学習を行う工程と、
    を含むことを特徴とする、情報処理方法。
  19. 情報処理装置が行う情報処理方法であって、
    入力データを取得する工程と、
    複数の階層からなる階層的構造を有する機械学習モデルを利用して、前記入力データ中の認識対象を認識する工程と、を含み、
    前記機械学習モデルは、入力データに対する前記機械学習モデルの中間層のうち少なくとも1つの出力が、特定のドメインについて抽出された、学習用の入力データに対する前記機械学習モデルからの出力の正解を示すデータを用いて最適化されるように学習されていることを特徴とする、情報処理方法。
  20. コンピュータを、請求項1から17のいずれか1項に記載の情報処理装置として機能させるためのプログラム。
JP2021082595A 2021-05-14 2021-05-14 情報処理装置、情報処理方法、及びプログラム Pending JP2022175851A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021082595A JP2022175851A (ja) 2021-05-14 2021-05-14 情報処理装置、情報処理方法、及びプログラム
US17/735,342 US20220366242A1 (en) 2021-05-14 2022-05-03 Information processing apparatus, information processing method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021082595A JP2022175851A (ja) 2021-05-14 2021-05-14 情報処理装置、情報処理方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2022175851A true JP2022175851A (ja) 2022-11-25

Family

ID=83998800

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021082595A Pending JP2022175851A (ja) 2021-05-14 2021-05-14 情報処理装置、情報処理方法、及びプログラム

Country Status (2)

Country Link
US (1) US20220366242A1 (ja)
JP (1) JP2022175851A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL297653B2 (en) * 2022-10-25 2024-03-01 Geox Gis Innovations Ltd A system and method for segment-aware semantic segmentation

Also Published As

Publication number Publication date
US20220366242A1 (en) 2022-11-17

Similar Documents

Publication Publication Date Title
JP6843086B2 (ja) 画像処理システム、画像においてマルチラベル意味エッジ検出を行う方法、および、非一時的コンピューター可読記憶媒体
CN110428428B (zh) 一种图像语义分割方法、电子设备和可读存储介质
CN113158909B (zh) 基于多目标跟踪的行为识别轻量化方法、系统、设备
US8331655B2 (en) Learning apparatus for pattern detector, learning method and computer-readable storage medium
CN109840530A (zh) 训练多标签分类模型的方法和装置
CN113705769A (zh) 一种神经网络训练方法以及装置
CN113837308B (zh) 基于知识蒸馏的模型训练方法、装置、电子设备
CN113128478B (zh) 模型训练方法、行人分析方法、装置、设备及存储介质
CN110929802A (zh) 基于信息熵的细分类识别模型训练、图像识别方法及装置
CN113095370A (zh) 图像识别方法、装置、电子设备及存储介质
CN117496347A (zh) 遥感影像建筑物提取方法、装置及介质
CN110245683A (zh) 一种少样本目标识别的残差关系网络构建方法及应用
CN113673482B (zh) 基于动态标签分配的细胞抗核抗体荧光识别方法及系统
CN112101364A (zh) 基于参数重要性增量学习的语义分割方法
CN116343048A (zh) 针对平原作物类型复杂区地块边界精准提取方法及系统
CN116129189A (zh) 一种植物病害识别方法、设备、存储介质及装置
CN111598000A (zh) 基于多任务的人脸识别方法、装置、服务器和可读存储介质
JP2022175851A (ja) 情報処理装置、情報処理方法、及びプログラム
CN115170565A (zh) 基于自动神经网络架构搜索的图像欺诈检测方法及装置
CN113762005B (zh) 特征选择模型的训练、对象分类方法、装置、设备及介质
CN110705695A (zh) 搜索模型结构的方法、装置、设备和存储介质
CN118279320A (zh) 基于自动提示学习的目标实例分割模型建立方法及其应用
CN109543716B (zh) 一种基于深度学习的k线形态图像识别方法
CN113128659A (zh) 神经网络定点化方法、装置、电子设备及可读存储介质
CN113516182B (zh) 视觉问答模型训练、视觉问答方法和装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240510