(57)【特許請求の範囲】
【請求項１】
データを受け付けるデータ受付手段と、
教師情報を受け付ける教師情報受付手段と、
ニューラルネットワーク処理を行うニューラルネットワーク処理手段と、
を有し、
前記ニューラルネットワーク処理手段が、
メインのタスクを処理するレイヤからなる第一サブネットワークと、
サブのタスクを処理するレイヤからなる第二サブネットワークと、
前記第一サブネットワーク及び第二サブネットワークのいずれにも属さないレイヤからなる、第三サブネットワークと、を有し、
前記第三サブネットワークが、入力された特徴量と同一の値を複数のレイヤに出力する分岐処理手段を有し、
前記第一サブネットワークが、複数のレイヤからの入力を結合して出力する結合処理手段を有し、
さらに、前記第一サブネットワークが、入力された誤差を前記結合処理手段が行う処理に応じて分岐して複数のレイヤに出力する誤差分岐手段を更に有し、
前記第三サブネットワークが、複数のレイヤから入力される誤差を統合する誤差統合手段を更に有する、
画像パターン認識装置。
【請求項２】
前記結合処理手段が、複数のレイヤからの入力を連結して出力するする処理か、複数の入力レイヤに対して要素毎に演算を行い出力する処理を行う、請求項１に記載の画像パターン認識装置。
【請求項３】
前記レイヤは、
前記第一サブネットワークの最終レイヤ及び前記第二サブネットワークの最終レイヤが、線形演算手段、又は、畳み込み手段、非線形演算手段及びプーリング処理手段の、いずれかからなり、
前記第一サブネットワークの最終レイヤ及び前記第二サブネットワークの最終レイヤ以外のレイヤが、線形演算手段及び非線形演算手段から成る全結合レイヤ、又は、畳み込み処理手段、非線形演算手段及びプーリング処理手段から成る畳み込みレイヤ、のいずれかからなる、請求項１又は２に記載の画像パターン認識装置。
【請求項４】
更に、各タスクの判定結果を出力する識別手段と、
二種類の入力を基に両者の誤差を出力する誤差算出手段と、
確率的勾配降下法に基づく誤差逆伝播法を実行する学習手段と、
を有する、請求項１〜３のいずれかに記載の画像パターン認識装置。
【請求項５】
更に正規化処理を行う正規化処理手段を具えている、請求項１〜４のいずれかに記載の画像パターン認識装置。
【請求項６】
データを受け付けるデータ受付ステップと、
教師情報を受け付ける教師情報受付ステップと、
ニューラルネットワーク処理を行うニューラルネットワーク処理ステップと、
をコンピュータにより実行させるプログラムであって、
前記ニューラルネットワーク処理ステップが、
メインのタスクを処理する第一サブ処理ステップと、
サブのタスクを処理する第二サブ処理ステップと、
メインのタスクとサブのタスクのいずれにも含まれない処理が行われる第三サブ処理ステップとを含み、
前記第三サブ処理ステップが、入力された特徴量と同一の値を複数のレイヤに出力する分岐処理ステップを含み、
前記第一サブ処理ステップが、複数のレイヤからの入力を結合して出力する結合処理ステップを含み、
さらに、前記第一サブ処理ステップが、入力された誤差を前記結合処理ステップが行う処理に応じて分岐して複数のレイヤに出力する誤差分岐ステップを更に有し、
前記第三サブ処理ステップが、複数のレイヤから入力される誤差を統合する誤差統合ステップを更に有する、
コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像パターン認識装置及びプログラムに関する。
【背景技術】
【０００２】
下記特許文献１には、自動車等の運転者の顔を撮影した画像データから、脇見や覚醒度が低下している状態等を検出するために用いられる運転者の開閉眼判定装置が開示されている。
【０００３】
下記特許文献２には、撮像された画像から、検出対象物に関する情報を検出する画像検出装置が開示されている。
【０００４】
下記特許文献３には、パートモデルを生成する必要なく、人の一部が隠れている場合であっても、精度よく人を検知できる検知装置、検知プログラムおよび検知方法、ならびに、そのような検知装置を備える車両が開示されている。
【０００５】
下記特許文献４には、利用者に関連付けられた画像情報に基づいて利用者の属性を推定する属性推定プログラム及び情報処理装置が開示されている。
【０００６】
下記非特許文献１には、ユーザが投稿した画像から投稿者の性別を推定する方法が開示されている。
【０００７】
下記非特許文献４には、特徴表現学習を行う方法である、誤差逆伝播法：バックプロパゲーションが開示されている。
【０００８】
下記非特許文献５には、誤差逆伝播法を用いた多層ニューラルネットワークが開示されている。
【０００９】
下記非特許文献６には、畳み込みレイヤを用いたニューラルネットワークが開示されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平１０−４４８２４号公報
【特許文献２】特開２００８−１９８０７８号公報
【特許文献３】特開２０１６−００６６２６号公報
【特許文献４】特開２０１６−００１３６２号公報
【非特許文献】
【００１１】
【非特許文献１】X. Ma et al., Gender Estimation for SNS User Profiling Using Automatic Image Annotation, International Workshop on Cross-media Analysis for Social Multimedia, 2014.
【００１２】
【非特許文献２】D. G. Lowe et al., Object Recognition from Local Scale-Invariant Features, ICCV, 1999.
【００１３】
【非特許文献３】J. Wang et al., Locally-Constrained Linear Coding for Image Classification, CVPR, 2010.
【００１４】
【非特許文献４】D. E. Rumelhart et al., Learning Representations by back-propagating errors, Nature, 1986.
【非特許文献５】Y. LeCun et al., Backpropagation applied to handwritten zip code recognition, Neural Computation, 1989.
【非特許文献６】Y. LeCun et al., Gradient-Based Learning Applied to Document Recognition, IEEE, 1998.
【非特許文献７】A. Krizhevsky et al., ImageNet Classification with Deep Convolutional Neural Networks, NIPS, 2012.
【発明の概要】
【発明が解決しようとする課題】
【００１５】
画像データをカテゴライズするパターン認識においては、その問題の難しさから、しばしばいくつかのタスクに分けて段階的に処理が行われるが、加えて、パターン認識の際の人手やコストの削減のために、画像から抽出すべき特徴量ないしはその表現方法を自動で学習させる特徴表現学習が併用されることがある。
【００１６】
従来技術においては、上記特許文献２及び３に記載されているように、出力層においては、メインタスクの判定結果を出力するユニットとサブタスクの判定結果を出力するユニットとが並列に配置されているが、中間層はメインタスクとサブタスクとの間で共有されており、重みパラメータとして表現される特徴抽出方法は、全てのタスクで共通のものが使用される。
【００１７】
このように従来技術においては、メインタスクとサブタスクとで中間層を共有しており、特徴抽出方法が全てのタスク間で共通であるため、特徴表現学習によって得られたパラメータがメインタスクに対して必ずしも最適なものとはなっていない、という問題点があった。
【００１８】
本発明は、複数のタスクに分けて処理が行われるパターン認識における、特徴表現学習の精度を向上させることを目的とする。
【課題を解決するための手段】
【００１９】
［画像パターン認識装置］
請求項１に係る本発明は、
データを受け付けるデータ受付手段と、
教師情報を受け付ける教師情報受付手段と、
ニューラルネットワーク処理を行うニューラルネットワーク処理手段と、
を有し、
前記ニューラルネットワーク処理手段が、
メインのタスクを処理するレイヤからなる第一サブネットワークと、
サブのタスクを処理するレイヤからなる第二サブネットワークと、
前記第一サブネットワーク及び第二サブネットワークのいずれにも属さないレイヤからなる、第三サブネットワークと、を有し、
前記第三サブネットワークが、入力された特徴量と同一の値を複数のレイヤに出力する分岐処理手段を有し、
前記第一サブネットワークが、複数のレイヤからの入力を結合して出力する結合処理手段を有する、
画像パターン認識装置である。
【００２０】
請求項２に係る本発明は、
前記結合処理手段は、複数のレイヤからの入力を連結して出力するする処理か、複数の入力レイヤに対して要素毎に演算を行い出力する処理を行う、画像パターン認識装置である。
【００２１】
請求項３に係る本発明は、上記のいずれかの画像パターン認識装置であって、
前記レイヤは、
前記第一サブネットワークの最終レイヤ及び前記第二サブネットワークの最終レイヤが、線形演算手段、又は、畳み込み手段、非線形演算手段及びプーリング処理手段の、いずれかからなり、
前記第一サブネットワークの最終レイヤ及び前記第二サブネットワークの最終レイヤ以外のレイヤが、線形演算手段及び非線形演算手段から成る全結合レイヤ、又は、畳み込み処理手段、非線形演算手段及びプーリング処理手段から成る畳み込みレイヤ、のいずれかからなる、画像パターン認識装置である。
【００２２】
請求項４に係る本発明は、上記のいずれかの画像パターン認識装置であって、更に、
各タスクの判定結果を出力する識別手段と、
二種類の入力を基に両者の誤差を出力する誤差算出手段と、
確率的勾配降下法に基づく誤差逆伝播法を実行する学習手段と、
を有する、画像パターン認識装置である。
【００２３】
請求項５に係る本発明は、上記のいずれかの画像パターン認識装置であって、
前記第一サブネットワークが、入力された誤差を前記結合処理手段が行う処理に応じて分岐して複数のレイヤに出力する誤差分岐手段を更に有し、
前記第三サブネットワークが、複数のレイヤから入力される誤差を統合する誤差統合手段を更に有する、画像パターン認識装置である。
【００２４】
請求項６に係る本発明は、上記のいずれかの画像パターン認識装置であって、更に正規化処理を行う正規化処理手段を具えている、画像パターン認識装置である。
【００２５】
［プログラム］
請求項７に係る本発明は、
データを受け付けるデータ受付ステップと、
教師情報を受け付ける教師情報受付ステップと、
ニューラルネットワーク処理を行うニューラルネットワーク処理ステップと、
をコンピュータにより実行させるプログラムであって、
前記ニューラルネットワーク処理ステップが、
メインのタスクを処理する第一サブ処理ステップと、
サブのタスクを処理する第二サブ処理ステップと、
メインのタスクとサブのタスクのいずれにも含まれない処理が行われる第三サブ処理ステップとを含み、
前記第三サブ処理ステップが、入力された特徴量と同一の値を複数のレイヤに出力する分岐処理ステップを含み、
前記第一サブ処理ステップが、複数のレイヤからの入力を結合して出力する結合処理ステップを含む、
プログラムである。
【発明の効果】
【００２６】
請求項１に係る本発明よれば、分岐された出力層においてサブタスクに対する特徴量をメインタスクの処理に統合して用いない場合と比べて、特徴表現学習の精度を向上させることができる。
【００２７】
請求項２に係る本発明よれば、分岐された出力層においてサブタスクに対する特徴量をメインタスクの処理に統合して用いない場合と比べて、特徴表現学習の精度を向上させることができる。
【００２８】
請求項３に係る本発明よれば、分岐された出力層においてサブタスクに対する特徴量をメインタスクの処理に統合して用いない場合と比べて、特徴表現学習の精度を向上させることができる。
【００２９】
請求項４に係る本発明よれば、分岐された出力層においてサブタスクに対する特徴量をメインタスクの処理に統合して用いない場合と比べて、特徴表現学習の精度を向上させることができる。
【００３０】
請求項５に係る本発明よれば、分岐された出力層においてサブタスクに対する特徴量をメインタスクの処理に統合して用いない場合と比べて、特徴表現学習の精度を向上させることができる。
【００３１】
請求項６に係る本発明よれば、結合処理の際に、入力される各特徴量の値のスケールが大きく異なっている場合でもより適切に統合することができる。
【００３２】
請求項７に係る本発明よれば、分岐された出力層においてサブタスクに対する特徴量をメインタスクの処理に統合して用いない場合と比べて、特徴表現学習の精度を向上させることができる。
【図面の簡単な説明】
【００３３】
【図１】本実施形態の全体構成を示す概念図である。左側が学習時の構成を示し、右側は判定時の構成を示す。
【図２】本実施形態に係るニューラルネットワーク処理部の一例を示す概念図である。
【図３】全結合レイヤの構成を示す概念図である。
【図４】畳み込みレイヤの構成を示す概念図である。
【図５】全結合レイヤでの処理を示す概念図である。
【図６】分岐処理手段における分岐処理を示す概念図である。
【図７】結合処理手段における結合処理を示す概念図である。
【図８】特徴表現学習処理のフローの一例を示す概念図であり、画像コンテンツの認識をサブタスク、性別推定をメインタスクとして、画像コンテンツの認識と性別推定を行う場合の例を表す。
【図９】学習済みのニューロネットワークを用いて、性別推定を行う場合のフローの一例を示す概念図である。
【図１０】学習済みのニューロネットワークを用いて、性別推定を行う場合のフローの一例を示す概念図である。
【図１１】学習済みのニューロネットワークを用いて、性別推定を行う場合のフローの一例を示す概念図である。
【図１２】実施例に係るニューラルネットワーク部の構成を示す模式図である。
【図１３】比較例１に係るニューラルネットワーク部の構成を示す模式図である。
【図１４】比較例２に係るニューラルネットワーク部の構成を示す模式図である。
【図１５】実施例及び各比較例の評価結果を示すグラフである。
【発明を実施するための形態】
【００３４】
［背景技術］
近年、企業が市場調査を行う手段として、TwitterやFacebookといったソーシャルネットワーキングサイト（Social Networking Services ：ＳＮＳ) を用いたソーシャルメディア・マーケティングの需要が高まってきている。
【００３５】
これはＳＮＳに投稿されている商品やサービスに対する大量の意見や口コミをユーザの投稿内容から抽出して消費者のニーズを調査するものであり、リアルタイムで低コストの調査が可能となる。
【００３６】
しかし、従来の調査であったアンケートによるモニタリング調査等と異なり、ユーザの性別や年代、職業等のデモグラフィック属性が明らかでないことが多い。そのため、消費者の属性ごとに口コミを分析するセグメント分析を行うことができず、効果的なマーケティングを行えていないのが現状である。
【００３７】
この問題を解決するために、ユーザが投稿したテキストや画像、ユーザ間のソーシャル関係から投稿者の属性を推定する研究が行われている。例えば、上記特許文献４および上記非特許文献１では、ＳＮＳに投稿された画像からその画像を投稿したユーザの性別を推定する方法が提案されている。
【００３８】
具体的には、１０種類の画像コンテンツ（ペット、食べ物、クルマ、芸能人など）と３つの性別（男性、女性、性別不明）を組み合わせた３０個のカテゴリを規定し、画像をその３０個のカテゴリへ分類することで性別推定を実現している。
【００３９】
このような画像パターン認識では、その問題の難しさから、しばしばいくつかのタスクに分けて段階的に処理が行われる。例えば上記特許文献１でも、顔画像から開眼および閉眼状態を判定する問題に対して、目の位置検出と目の大きさ検出、開閉眼判定の３つのタスクに分割し、開閉眼判定をメインタスク、目の位置検出と目の大きさ検出をサブタスクに位置付け、「目の位置検出」→「目の大きさ検出」→「開閉眼判定」といったように段階的に処理を行っている。
【００４０】
上記特許文献４および上記非特許文献１では、人手で予め設計された特徴表現手法であるＬＬＣ（上記非特許文献２に記載されるＳＩＦＴを符号化したもの：上記非特許文献３参照）を用いている
【００４１】
これに対し、パターン認識を行うために画像から抽出すべき特徴量ないしはその表現方法を機械に自動で学習させる特徴表現学習を、画像パターン認識に用いる方法がある。特徴表現学習を行う方法の一つとして誤差逆伝播法：バックプロパゲーション（上記非特許文献４参照）を用いた多層ニューラルネットワーク（上記非特許文献５）が提案されている。
【００４２】
これは例えば画像の輝度値を多層ニューラルネットワークの入力とし、各層における非線形の演算によって演算結果を順伝播させていき、最後の層において出力結果を得る。次に、この出力結果と教師情報の誤差を出力層から逆伝播させていくことで各層のパラメータを更新していく。これらを繰り返すことによって多層ニューラルネットワークではパターン認識に適した特徴表現を学習することが可能となる。
【００４３】
上記特許文献４および上記非特許文献１では、特徴表現学習を行っていないのに対し、上記特許文献２及び３では、ニューラルネットワークを用いることで特徴表現学習を行っている。
【００４４】
上記特許文献２では、目の開閉度判定をメインタスク、目の有無判定をサブタスクとし、上記特許文献２の図３に示されるように、出力層において目の開閉度の判定結果を出力するユニットと目の有無の判定結果を出力するユニットとが並列に配置されている。
【００４５】
また、上記特許文献３では人の位置推定と人の有無判定の二つのタスクが設定され、出力層には人の有無判定を行うユニットと人の位置判定を行うユニットとが並列に配置されている。
【００４６】
以下、本発明を実施するための形態を詳細に説明する。但し、以下に示す実施形態は、本発明の技術思想を具体化するための画像パターン認識装置の一例を示すものであって、本発明をこの実施形態に限定することを意図するものではなく、本発明は特許請求の範囲に示した技術思想を逸脱することなく種々の変更を行ったものにも均しく適用し得るものである。
【００４７】
［実施形態］
【００４８】
本実施形態の構成を図１および図２に示す。教師データ１1は画像データと教師情報が対になったデータから成る。この教師データはあらかじめ人手で構築しておく必要がある。画像についてはＳＮＳに投稿されている画像をＡＰＩ（Twitter APIやInstagram APIなど）によって収集することなどが可能である。一方、教師情報はＡＰＩからでは取得できないため、画像ごとに手動で設定する必要がある。
【００４９】
［データ受付部］
データ受付部２では、学習時には、ハードディスク等のストレージに保存されている、画像と教師情報（教師ラベル）が対になったデータから画像をメモリに読み込む。また、判定時においては、教師情報データ１は不要であり、判定対象である画像データ１2の画像をメモリに読み込む。画像はＲＧＢまたはグレースケールのどちらかに統一して入力を行う。画像サイズは例えば２２４×２２４に統一して処理を行っても良く、それ以外の正規化の前処理を行ってもよい。
【００５０】
［教師情報受付部］
教師情報受付部３では、画像と教師情報（教師ラベル）が対になったデータから、入力画像に対応した教師情報が読み込まれる。
【００５１】
［ニューラルネットワーク処理部］
ニューラルネットワーク処理部４は、ニューラルネットワーク処理本体部５と識別部６とからなり、ニューラルネットワーク処理本体部５は、ニューラルネットワークによって画像から特徴量を抽出する役割を果たす。これは多段のレイヤから構成され、実際に行う処理の詳細はレイヤの構成によって異なる。
【００５２】
［線形演算部］
線形演算部１２は、図３に示す全結合レイヤ１１で用いられる。全結合レイヤ１１は層状に並べたユニットが隣接層間でのみ結合した構造を持ち、情報が入力側から出力層側に一方向にのみ伝播する。全結合レイヤ１１を構成する各ユニットは図５のように、複数の入力を受け取り、一つの出力を計算する。入力を ｘ1，ｘ2，ｘ3・・・ｘn とすると、例えばユニットｕ1の出力はバイアス項ｂ1を用いて以下のように計算される。
【数１】
0006727543.tif 000002
従って、すべてのユニットに対する出力は行列を用いて次のように一般化できる。
ｕ  ＝  Ｗｘ  ＋  ｂ
【００５３】
［非線形演算部］
非線形演算部１３では入力の各ユニットｘに対して、非線形関数を適用する。
ｕ  ＝  ｆ（ｘ）
【００５４】
非線形関数には、例えば、以下のようなRectified Linear Unit（ＲｅＬＵ）を用いる。
ｆ（ｕ）  ＝  ｍａｘ（ｕ，０）
【００５５】
［分岐処理部］
分岐処理部９は、入力された値ｘをそのまま複数の出力先に出力する。図６においては、
ｕ1  ＝  ｕJ  ＝ｘ
となる。
【００５６】
［結合処理部］
結合処理部１０では、複数のレイヤからの出力を受け取り、それらを結合して出力する。結合方法としては、複数のレイヤ（図７においてはｘ1からｘIまでのＩ個のレイヤ）からの出力を受け取り、その全てのユニットを連結して出力する連結処理を行う方法がある。なお、図７において、
ｍ  ＝  ｎ（Ｉ−１）＋１
ｕi  ＝  ｘｉ  （但し、ｉ＝１，・・・，ｎＩ）
である。
【００５７】
また、連結処理の代わりに要素毎に演算を行う要素毎演算処理を行っても良い。連結処理では入力されたレイヤをすべて連結して出力するだけであったのに対し、要素毎演算処理ではより適切な統合を行う。入力レイヤのユニット数がすべて同じであることを前提としたとき、要素ごとに以下のような演算を行う。但し、ここでは入力レイヤ数は２つとする。
ｕ  ＝  ｆ（ｘ1，ｘ2）
適用する関数の例を以下に示す。
（積）
ｆ（ｘ1，ｘ2）  ＝  ｘ1×ｘ2
（最大値）
ｆ（ｘ1，ｘ2）  ＝  ｍａｘ（ｘ1，ｘ2）
（平均値）
ｆ（ｘ1，ｘ2）  ＝  （ｘ1＋ｘ2）／２
【００５８】
［識別部］
識別部６では、最終レイヤＮ、Ｍ´から出力される入力の各ユニットｘに対して、以下の様に関数を適用する。
ｕ  ＝  ｆ（ｘ）
適用可能な関数の例としては、以下に示すソフトマックス関数などが挙げられる。
【数２】
0006727543.tif 000003
Ｋは入力のユニット数であり、識別したいカテゴリ数と一致する（例えば、性別推定であれば男性および女性のＫ＝２となる）。
【００５９】
［誤差算出部］
誤差検出部７では、識別部によって出力された判定結果および教師情報から誤差を算出する。誤差の算出には例えば交差エントロピーを用いることができる。カテゴリｋに対する教師情報をｄkとすると、交差エントロピーは以下のように算出される。
【数３】
0006727543.tif 000004
【００６０】
［学習部］
学習部８により、誤差算出部によって求めた誤差を用いて各レイヤに含まれる重みパラメータを学習する。学習には確率的勾配降下法に基づく誤差逆伝播法（バックプロパゲーション）を用いる。確率的勾配降下法では、１枚あるいは複数枚の画像に対する誤差Ｅnに対する勾配∇Ｅnを用いて、パラメータｗを以下のように更新する。
【数４】
0006727543.tif 000005
但し、ｔは更新回数を表す。
誤差逆伝播法では誤差を最終レイヤから順に逆伝播させていき、各レイヤにおいて確率的勾配降下法を行う。各レイヤのパラメータの更新後改めて誤差を算出し、誤差が収束するまでパラメータの更新を繰り返す。
【００６１】
［誤差分岐処理部］
誤差分岐処理部では、受け取った誤差を分岐して複数のレイヤに逆伝播する。分岐方法は結合処理部１０での処理内容に応じて以下のような処理を行う。
（連結処理）
ｕ1からｕnIに対応する誤差をｅ1からｅnIとするとき、ｘ1からｘnIには以下のように誤差が逆伝播される。但し、ｙ1からｙnIはｘ1からｘnIに対応している。
ｙi  ＝  ｅi  （但し、ｉ＝１，・・・，ｎＩ）
（要素毎演算処理：積）
受け取った誤差と同じ値を複数のレイヤに逆伝播する。
（要素毎演算処理：最大値）
要素毎演算処理時に最大値が得られたレイヤに各要素の誤差をその値のまま逆伝播する。なお、それ以外のレイヤには０の値を逆伝播する。
（要素毎演算処理：平均値）
受け取った誤差ｅを分岐先のレイヤ数の逆数で割った値を逆伝播する。例えば、分岐先のレイヤ数が２つの場合、誤差の1/2の値をそれぞれのレイヤに逆伝播する。
ｙ1  ＝  ｅ／２
ｙ2  ＝  ｅ／２
【００６２】
［誤差結合処理部］
誤差結合処理部では、複数のレイヤから誤差を受け取り、それらを結合して逆伝播する。結合方法としては、複数のレイヤから受け取ったすべての誤差に対して重み付き和を出力する。重みはパラメータとして与えられる。ｙを出力、ｘ1及びｘ2を受け取った誤差とすると以下のような演算となる。但し、ここでは２つのレイヤから誤差を受け取るものとする。λは重みパラメータである。
ｙ  ＝  λｘ1＋（１−λ）ｘ2
【００６３】
ニューラルネットワーク処理部４におけるレイヤの構成は任意であり、全結合レイヤ１１ではなく、線形演算のかわりに畳み込み処理部１４とプーリング処理部１６を有する、畳み込みレイヤ１４（図４）を用いてもよい。全結合レイヤ１１では、隣接層間のユニットすべてが全結合されているが、畳み込みレイヤ１４では隣接層間の特定のユニットのみが結合を持つ。したがって、全結合レイヤ１１に比べてユニット（学習すべきパラメータ）の数が少ない畳み込みレイヤ１４を用いた場合、学習が容易となる。
［畳み込み処理部］
畳み込み処理部１５では、畳み込み処理において、Ｗ×Ｗの入力Ｘに対してＨ×Ｈ個のパラメータから成るフィルタｈを適用する。（ｉ，ｊ）＝（ｉ＝０，…，Ｗ−１，ｊ＝０，…，Ｗ−１）、（ｐ，ｑ）＝（ｐ＝０，…，Ｈ−１，ｑ＝０，…，Ｈ−１）とするとき、畳み込み処理は以下のような積和計算を行う。
【数５】
0006727543.tif 000006
【００６４】
なお、入力がＷ×Ｗ×Ｋのように複数のチャネルを持つ場合は、チャネルごとに畳み込み処理を行い、全チャネル間で出力結果の最大値をとることで１チャネルに圧縮を行う。また、フィルタがＨ×Ｈ×Ｃのように複数チャネルの場合には、チャネルごとに上記畳み込み処理を行い出力する。したがって、出力はＣ個のチャネルを持つこととなる。
【００６５】
［プーリング処理部］
プーリング処理部１６は、畳み込み部によって出力された特徴の位置感度を若干低下させることで、対象とする特徴量の画像内での位置が若干変化した場合でも、畳み込みレイヤ１４の出力を不変にすることができる。
【００６６】
入力のサイズをＷ×Ｗ×Ｋとし、プーリング処理の単位領域をＨ×Ｈとする。また、プーリング処理の領域Ｈ×Ｈに含まれるＸの集合をＰとする。このとき、例えば以下に定義される方法によってプーリング処理を行う。
（平均プーリング）
【数６】
0006727543.tif 000007
（最大プーリング）
【数７】
0006727543.tif 000008
【００６７】
［正規化部］
本発明においては、結合処理の前に正規化処理を行う正規化部を追加してもよい。連結処理や要素毎演算処理による複数の特徴量の統合では、各特徴量の値のスケールが大きく異なっている場合に適切に統合できない可能性がある。そこで、正規化部では各入力に対してＬ１ノルム正規化やＬ２ノルム正規化などを行う。
【００６８】
次に、ニューラルネットワーク処理の基本的な流れについて説明する。
【００６９】
判定時には、画像データはデータ受付部２によってニューラルネットワーク処理部４に入力され、ニューラルネットワーク処理部４は判定結果を出力する。学習時には、教師情報受付部３から得られる教師情報と判定結果とから誤差算出部７によって誤差を算出する。そして、学習部８によってニューラルネットワークの学習が実行される。
【００７０】
ニューラルネットワーク処理部４は、ニューラルネットワーク処理本体部５と識別部６とから構成され、ニューラルネットワーク処理本体部５によって画像に対する特徴量が抽出される。なお、図２においては、メインタスクに加えて一つのサブタスクの計２つのタスクを処理する場合の構成を示した。
【００７１】
ニューラルネットワーク処理本体部５はＮ＋Ｍ´個（１＜＝Ｌ＜Ｍ＜Ｎ；Ｍ´はサブタスクのレイヤ数）のレイヤと、１つ以上の分岐処理部９と、１つ以上の結合処理部１０と、から構成され、分岐処理部９では、前レイヤ（レイヤＬ）の出力結果を入力として受け取り、複数の分岐先のレイヤ（図２ではレイヤＬ´＋１およびレイヤＬ＋１）にそれぞれコピーして出力する。なお、レイヤ１から分岐処理部９までが本願発明の第三サブネットワークに相当し、レイヤＬ＋１からレイヤＮまでが第一サブネットワークに相当し、レイヤＬ´＋１からレイヤＭ´＋１までが第二サブネットワークに相当する。
【００７２】
結合処理部１０では、複数の分岐元（図２ではレイヤＭ´およびレイヤＭ）からの出力結果を入力として受け取り、受け取った出力結果を連結処理あるいは要素毎演算処理してレイヤＭ＋１に出力する。
【００７３】
要素毎演算処理の際は、複数の入力レイヤに対して要素（ベクトルや行列における次元）ごとに演算を行い、演算結果をレイヤＭ＋１に出力する。この演算は任意であり、積や和、最大値をとるなどが考えられる。
【００７４】
各レイヤについては、線形演算部１２と非線形演算部１３から構成される全結合レイヤ１１（図３）、又は、畳み込み処理部１５、非線形演算部１３、及び、プーリング処理部１６から構成される畳み込みレイヤ１４（図４）を用いることができる。なお、畳み込みレイヤを用いたニューラルネットワークは畳み込みニューラルネットワーク（上記非特許文献６参照）と呼ばれ、画像データに対して高い認識・識別精度を示すことが知られている。また、各最終レイヤ（レイヤＮ、レイヤＭ´）は、非線形演算部を含まず、非線形演算が適用されずに各最終レイヤから識別部に出力される。なお、サブタスクの最終レイヤ（レイヤＭ´）からは、識別部６に加えて結合処理部１０へも出力がなされる。
【００７５】
識別部６には各最終レイヤからの出力が入力され、識別部６から判定結果が出力される。学習時には、この判定結果は教師情報と共に誤差検出部７へ出力され、誤差検出部７では判定結果と教師情報との誤差が算出される。
【００７６】
学習部８では、当該誤差を用いて、チェインルールに基づいた誤差逆伝播法が実行される。
【００７７】
図８には、画像コンテンツから画像の投稿者の性別を推定する場合に、画像コンテンツの認識をサブタスク、性別推定をメインタスクとして画像コンテンツの認識と性別推定を行う問題に適用した場合のフローチャートの例を示した。
【００７８】
誤差逆伝播法が実行されると、誤差が各最終レイヤから順に逆伝播されていく。各レイヤにおいては、確率的勾配降下法が行われて各レイヤのパラメータが更新される。
【００７９】
逆伝播の過程では、順伝播の結合処理に対応するタイミングで誤差が分岐される。すなわち、レイヤＭ＋１から出力された誤差が分岐されて、一方がメインタスク側（レイヤＭ）に、他方がサブタスク側（レイヤＭ´）に出力される。また、順伝播の分岐処理に対応するタイミングでは誤差が結合される。すなわち、メインタスク側（レイヤＬ＋１）から出力された誤差と、サブタスク側（レイヤＬ´＋１）からの誤差とが結合されて、レイヤＬに出力される。
【００８０】
学習部では、このようにして、ニューラルネットワークの各レイヤのパラメータの更新が、判定結果の誤差が収束するまで繰り返される処理が行われ、誤差が収束した段階で特徴表現学習は終了となる。
【００８１】
図９〜図１１には、学習済みのニューラルネットワークを用いて、実際に入力画像からユーザの性別を推定する際のフローチャートの例を示した。学習済みであるため、サブタスク側は判定されず、メインタスク側（レイヤＮ）からの出力に基づき、識別部から判定結果（性別推定の結果）が出力された時点で終了となる。
【００８２】
なお、図９では、サブタスク側（レイヤＭ´）からは、識別部へ出力されず、結合処理部１０あるいは要素毎演算部にのみ出力されるフローを示したが、図１０や図１１のようなフローに基づいて性別推定を行っても良い。
【００８３】
［実施例］
次に、ソーシャルネットワーキングサービス（ＳＮＳ）に投稿された画像からその投稿者（ユーザ）の性別を推定する問題に適用した実施例について説明する、本実施例では、画像コンテンツの認識をサブタスク、性別推定をメインタスクとして画像コンテンツの認識と性別推定を行う問題に適用した。
【００８４】
図１２にニューラルネットワーク部の具体的な構成を模式的に示した。これは上記非特許文献７のネットワークをベースにしたものであり、５層の畳み込みレイヤの後に分岐処理部を設けて、２つのブランチに分けている。
【００８５】
そして各ブランチにそれぞれ３層の全結合レイヤを設けた後に要素毎演算部によって画像コンテンツの特徴量を性別の特徴量と結合する。さらに、結合した特徴量は１層の全結合レイヤを介して出力される。なお、本実施例においては要素毎演算部として積算を用いた。
【００８６】
本実施例の実行にあたり、まず、Twitterに投稿された画像付きツイートに関して、日本において２０１３年６月から８月までに投稿されたツイートをもとに、ボットを除くツイート数の多いアクティブユーザからツイートを抽出することで、画像を収集した。
【００８７】
次に、２００ツイート以上のテキストおよび１枚以上の画像がダウンロード可能なユーザに対して教師ラベルを作成した。教師ラベルは２６種類の画像コンテンツラベル（ＩＴ機器、野生動物、アニメ、アート、書籍、自動車・バイク、漫画、キャラクター、コスメ品、芸能人、ファッション、食べ物、ギャンブル、ゲーム、雑貨、イラスト、建築物、音楽、一般人、ペット、植物、ポスター、風景、スクリーンショット、スポーツ、その他）と３種類の性別ラベル（男性、女性、性別不明）を付与するものとし、ワーカーによるラベリング作業を行った。
【００８８】
画像コンテンツラベルについては各画像に対して１０人のワーカーに適切と思われるものを投票してもらい、性別ラベルについては各画像に対して５人のワーカーに投票してもらった。そして、画像コンテンツラベルと性別ラベルのそれぞれに対して、これらの投票結果の多数決によって最終的なラベルを決定した。
【００８９】
このようにして得られた画像集合のうち、性別ラベルに性別不明が付与された画像を取り除くことで、最終的に３，６８３ユーザから１３，５２５枚の画像セットが得られた。このうち、６６４２枚を学習用、１７６０枚をパラメータ設計用、５１２３枚を評価用としてデータセットを作成した。
【００９０】
評価に際しては、比較例として、画像コンテンツの学習を行わず、性別ラベルのみで学習を行ったもの（比較例１）、結合処理を行わずに学習を行ったもの（比較例２：上記特許文献２の方法に相当）も用意し、適合率と再現率との調和平均であるＦ値を用いて比較した。なお、図１３には比較例１のニューラルネットワーク部の構成を示し、図１４には比較例２のニューラルネットワーク部の構成を示した。
【００９１】
結果を図１５に示した。比較例１及び比較例２の比較から、画像コンテンツ情報を用いた学習を行うほうが推定精度は高いことがわかる。また、メインタスクとサブタスクの２つの特徴量の結合を行った実施例では、結合処理を行わない比較例２と比較して、推定精度が高くなることがわかる。
【符号の説明】
【００９２】
１1…教師データ
１2…画像データ
２…データ受付部
３…教師情報受付部
４…ニューラルネットワーク処理部
５…ニューラルネットワーク処理本体部
６…識別部
７…誤差算出部
８…学習部
９…分岐処理部
１０…結合処理部
１１…全結合レイヤ
１２…線形演算部
１３…非線形演算部
１４…畳み込みレイヤ
１５…畳み込み処理部
１６…プーリング処理部
【図１】
0006727543.tif 000009
【図２】
0006727543.tif 000010
【図３】
0006727543.tif 000011
【図４】
0006727543.tif 000012
【図５】
0006727543.tif 000013
【図６】
0006727543.tif 000014
【図７】
0006727543.tif 000015
【図８】
0006727543.tif 000016
【図９】
0006727543.tif 000017
【図１０】
0006727543.tif 000018
【図１１】
0006727543.tif 000019
【図１２】
0006727543.tif 000020
【図１３】
0006727543.tif 000021
【図１４】
0006727543.tif 000022
【図１５】
0006727543.tif 000023