(57)【要約】【課題】高速に学習、認識することができる識別器生成装置、方法及びプログラム、並びにクラス認識器、方法及びプログラムを提供する。【解決手段】識別器生成装置１０は、入力データに、ある属性を有するか否かを示すポジティブ又はネガティブ情報をラベル付けして教師データとするラベリング部１１と、教師データの特徴量を重みベクトルとして抽出する特徴量抽出部１２と、自己増殖型ネットワークにより、特徴量抽出部１２が抽出した特徴量を学習する特徴量学習部１３と、各重みベクトルが有するポジティブ又はネガティブ情報に基づき、ＳＶＭにより当該ポジティブノードとネガティブノードの分離境界を学習する分離境界学習部１５とを有する。特徴量学習部は、重みベクトルを入力ノードとし、入力ノードと各ノードとの間の距離に基づき、新たなノードを挿入するか否かを決定する。ＳＶＭは、線形とし、重みの推定に確率的勾配降下法を使用する。【選択図】図２
2013025398.tif 000002
【特許請求の範囲】
【請求項１】
ある属性を有するか否かを識別する属性識別器を、教師データの特徴量を学習することにより生成する識別器生成装置であって、
入力データに、ある属性を有するか否かを示すポジティブ又はネガティブ情報をラベル付けして教師データとするラベリング部と、
前記教師データの特徴量を重みベクトルとして抽出する特徴量抽出部と、
自己増殖型ネットワークにより、前記特徴量抽出部が抽出した特徴量を学習する特徴量学習部と、
前記各重みベクトルが有するポジティブ又はネガティブ情報に基づき、サポートベクタマシン（ＳＶＭ）により当該ポジティブノードとネガティブノードの分離境界を学習する分離境界学習部とを有し、
前記特徴量学習部は、
前記特徴量抽出部にて抽出された重みベクトルを入力ノードとし、当該入力ノードと各ノードとの間の距離を算出し、当該入力ノードと最も近いノード及び２番目に近いノードをそれぞれ第１勝者ノード及び第２勝者ノードとして抽出する勝者ノード抽出部と、
前記入力ノードと、前記第１及び第２勝者ノードとの距離に基づき、当該入力ノードを新たなノードとして挿入するか否かを判定するノード挿入判定部と、
前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードと前記第２勝者ノードとの間にエッジがない場合はエッジを生成しその年齢を０とし、エッジがある場合はその年齢を０とし、さらに前記第１勝者ノードが有する全エッジの年齢をインクリメントし、所定の年齢に達したエッジを削除するエッジ管理部と、
前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードの重みベクトルを当該入力ノードの重みベクトルに基づき更新するノード重み更新部と、
所定のタイミングで、そのノード密度に応じてノードを削除するノード削除部とを有する識別器生成装置。
【請求項２】
前記教師データを前記特徴量学習部に入力する毎に、前記分離境界学習部により前記分離境界を生成又は更新する、請求項１記載の識別器生成装置。
【請求項３】
複数の前記教師データを前記特徴量学習部に入力して特徴量を学習した後、前記分離境界学習部により前記分離境界を生成又は更新する、請求項１記載の識別器生成装置。
【請求項４】
前記ノード削除部は、前記教師データを前記特徴量学習部に入力する毎に、全ノードの年齢をインクリメントし、全ノードのうち所定の年齢に達するノードについて、所定数未満のノードとエッジで接続されているノードを削除する、請求項１乃至３のいずれか１項記載の識別器生成装置。
【請求項５】
前記ＳＶＭは、線形ＳＶＭであり、重みの推定に確率的勾配降下法（stochastic gradient descent （ＳＧＤ））を使用したものである、請求項１乃至４のいずれか１項記載の識別器生成装置。
【請求項６】
ある属性を有するか否かを識別する属性識別器を、教師データの特徴量を学習することにより生成する識別器生成装置であって、
入力データの特徴量を重みベクトルとして抽出し、当該特徴量に、ある属性を有するか否かを示すポジティブ又はネガティブ情報をラベル付けした教師データを入力とし、自己増殖型ネットワークにより、前記特徴量を学習する特徴量学習部と、
前記各重みベクトルが有するポジティブ又はネガティブ情報に基づき、サポートベクタマシン（ＳＶＭ）により当該ポジティブノードとネガティブノードの分離境界を学習する分離境界学習部とを有し、
前記特徴量学習部は、
前記重みベクトルを入力ノードとし、当該入力ノードと各ノードとの間の距離を算出し、当該入力ノードと最も近いノード及び２番目に近いノードをそれぞれ第１勝者ノード及び第２勝者ノードとして抽出する勝者ノード抽出部と、
前記入力ノードと、前記第１及び第２勝者ノードとの距離に基づき、当該入力ノードを新たなノードとして挿入するか否かを判定するノード挿入判定部と、
前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードと前記第２勝者ノードとの間にエッジがない場合はエッジを生成しその年齢を０とし、エッジがある場合はその年齢を０とし、さらに前記第１勝者ノードが有する全エッジの年齢をインクリメントし、所定の年齢に達したエッジを削除するエッジ管理部と、
前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードの重みベクトルを当該入力ノードの重みベクトルに基づき更新するノード重み更新部と、
所定のタイミングで、そのノード密度に応じてノードを削除するノード削除部とを有する識別器生成装置。
【請求項７】
ある属性を有するか否かを識別する属性識別器を、教師データの特徴量を学習することにより生成する識別器生成方法であって、
入力データに、ある属性を有するか否かを示すポジティブ又はネガティブ情報をラベル付けして教師データとするラベリング工程と、
前記教師データの特徴量を重みベクトルとして抽出する特徴量抽出工程と、
自己増殖型ネットワークにより、前記特徴量抽出工程にて抽出された特徴量を学習する特徴量学習工程と、
前記各重みベクトルが有するポジティブ又はネガティブ情報に基づき、サポートベクタマシン（ＳＶＭ）により当該ポジティブノードとネガティブノードの分離境界を学習する分離境界生成工程とを有し、
前記特徴量学習工程は、
前記特徴量抽出工程にて抽出された重みベクトルを入力ノードとし、当該入力ノードと各ノードとの間の距離を算出し、当該入力ノードと最も近いノード及び２番目に近いノードをそれぞれ第１勝者ノード及び第２勝者ノードとして抽出する勝者ノード抽出工程と、
前記入力ノードと、前記第１及び第２勝者ノードとの距離に基づき、当該入力ノードを新たなノードとして挿入するか否かを判定するノード挿入判定工程と、
前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードと前記第２勝者ノードとの間にエッジがない場合はエッジを生成しその年齢を０とし、エッジがある場合はその年齢を０とし、さらに前記第１勝者ノードが有する全エッジの年齢をインクリメントし、所定の年齢に達したエッジを削除するエッジ管理工程と、
前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードの重みベクトルを当該入力ノードの重みベクトルに基づき更新するノード重み更新工程と、
所定のタイミングで、そのノード密度に応じてノードを削除するノード削除工程とを有する識別器生成方法。
【請求項８】
新たな前記教師データ入力する毎に、前記教師データから特徴量を学習する前記特徴量学習工程と、分離境界を学習する前記分離境界学習工程とを繰り返す、請求項７記載の識別器生成方法。
【請求項９】
複数の前記教師データから前記特徴量学習工程にて特徴量を学習した後、前記分離境界学習工程にて前記分離境界を生成又は更新する、請求項７記載の識別器生成方法。
【請求項１０】
ある属性を有するか否かを識別する属性識別器を、教師データの特徴量を学習することにより生成する処理をコンピュータに実行させるためのプログラムであって、
入力データに、ある属性を有するか否かを示すポジティブ又はネガティブ情報をラベル付けして教師データとするラベリング処理と、
前記教師データの特徴量を重みベクトルとして抽出する特徴量抽出処理と、
自己増殖型ネットワークにより、前記特徴量抽出処理にて抽出された特徴量を学習する特徴量学習処理と、
前記各重みベクトルが有するポジティブ又はネガティブ情報に基づき、サポートベクタマシン（ＳＶＭ）により当該ポジティブノードとネガティブノードの分離境界を学習する分離境界生成処理とを実行するものであって、
前記特徴量学習処理では、
前記特徴量抽出処理にて抽出された重みベクトルを入力ノードとし、当該入力ノードと各ノードとの間の距離を算出し、当該入力ノードと最も近いノード及び２番目に近いノードをそれぞれ第１勝者ノード及び第２勝者ノードとして抽出する勝者ノード抽出処理と、
前記入力ノードと、前記第１及び第２勝者ノードとの距離に基づき、当該入力ノードを新たなノードとして挿入するか否かを判定するノード挿入判定処理と、
前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードと前記第２勝者ノードとの間にエッジがない場合はエッジを生成しその年齢を０とし、エッジがある場合はその年齢を０とし、さらに前記第１勝者ノードが有する全エッジの年齢をインクリメントし、所定の年齢に達したエッジを削除するエッジ管理処理と、
前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードの重みベクトルを当該入力ノードの重みベクトルに基づき更新するノード重み更新処理と、
所定のタイミングで、そのノード密度に応じてノードを削除するノード削除処理とが実行される、プログラム。
【請求項１１】
入力データから特徴量を重みベクトルとして抽出する特徴量抽出部と、
前記特徴量抽出部により抽出された重みベクトルから、当該入力データがいずれの属性を有しているかを判断する、複数の属性識別器からなる属性認識部と、
属性認識部で識別された属性を属性ベクトルとして出力する属性出力部とを備え、
前記属性識別器は、請求項１乃至６に記載の識別器生成装置で学習され生成されたものであって、
前記属性認識部は、前記入力データに含まれる認識対象であるクラスがいずれの属性を有するか判断するものであり、当該クラスを識別するために必要な数の属性に対応する前記属性識別器を備える、クラス識別器。
【請求項１２】
前記属性認識部は、前記入力データから抽出する特徴量の種類をＮ種類（Ｎは１以上の自然数）、クラスを識別するために必要な数の属性をＭ個（Ｍは１以上の自然数）とすると、Ｎ×Ｍの属性識別器を有する、請求項１１記載のクラス識別器。
【請求項１３】
クラスと属性の関係を有するクラス−属性辞書に基づき、前記属性出力部から出力された属性ベクトルに対するクラスを検出し、検出結果として出力するクラス認識結果出力部を更に有する、請求項１０又は１１記載のクラス識別器。
【請求項１４】
入力データから特徴量を重みベクトルとして抽出する特徴量抽出工程と、
前記特徴量抽出工程にて抽出された重みベクトルから、複数の属性識別器により、当該入力データがいずれの属性を有しているかを判断する属性認識工程と、
属性認識工程にて識別された属性を属性ベクトルとして出力する属性出力工程とを備え、
前記属性識別器は、請求項７乃至９に記載の識別器生成方法で学習され生成されたものであって、
前記属性認識工程では、前記入力データに含まれる認識対象であるクラスがいずれの属性を有するか判断するものであり、当該クラスを識別するために必要な数の属性に対応する前記属性識別器を使用する、クラス識別方法。
【請求項１５】
入力データから特徴量を重みベクトルとして抽出する特徴量抽出処理と、
前記特徴量抽出処理にて抽出された重みベクトルから、複数の属性識別器により、当該入力データがいずれの属性を有しているかを判断する属性認識処理と、
属性認識処理にて識別された属性を属性ベクトルとして出力する属性出力処理とをコンピュータに実行させるためのプログラムであって、
前記属性識別器は、請求項１０に記載の識別器生成プログラムで学習され生成されたものであり、
前記属性認識処理では、前記入力データに含まれる認識対象であるクラスがいずれの属性を有するか判断するものであり、当該クラスを識別するために必要な数の属性に対応する前記属性識別器を使用する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、識別対象であるクラスをその特徴である属性により認識することで転移学習を可能とする技術に関し、クラスを認識するための識別器生成装置、方法及びプログラム、並びに、それらを利用したクラス認識器、方法及びプログラムに関する。
【背景技術】
【０００２】
対象認識や対象識別についての個々の研究が、ここ１０年の間に大きな発達を遂げている。顔や車両のような特定の物体を検出するタスクについては、とても強力な検出器や認識器が利用可能である。このような検出器や認識器は、対象の特徴を示す低次元の特徴量（例えば、ＳＩＦＴ、ＳＵＲＦなど）と、サポートベクトルマシーン（ＳＶＭ）などの現代的な機械学習メカニズムと、の組み合わせにより得ることができる。しかしながらこのような手法では、良好な精度を得るために人手によりラベル付けされた多数の教師データを通常必要とし、各個別のクラスを学習するためには一般的に数１０万枚のサンプル画像を必要とする。
【０００３】
また、多くの対象を認識する必要がある場合には他の問題が発生することがある。このような多くの対象を認識するという問題を解決するためには、これまでの手法では、各対象カテゴリーに対してそれぞれ新たな検出器を作った上で、それら検出器を学習する必要がある。しかしながら、新たな各検出器を効率的に学習する場合においても、上述したのと同様にして、人手によりラベル付けされた多数の教師データを必要とし、各個別のクラスを学習するために、一般的に数１０万枚のサンプル画像を必要とする。
【０００４】
コンピュータの見地から見れば、例えば何らかの効率的で自動的なラベリングツールが利用可能であれば、多数の学習データセットを用意することはそれほど大変なことではないと考えられるかもしれない。インターネットを介して多数の画像の集合へは簡単にアクセスすることができ、コンピュータハードウェアのパフォーマンスは近年では劇的に向上してきた。それにもかかわらず、ロボットのような知的エージェントの利用には、このようなことは当てはまらない。知的ロボットに対しては、ロボットはインターネットへのアクセスが限定されると共にハードウェア資源も限られており、また、実用的な実世界でのタスクがあまりにも一般的なものであるために、事前に学習された検出器のみを利用するものとしてはとてもこのタスクを解決することはできそうにない。従って最近では、多くの研究者達が、対象の属性（例えば非特許文献１に例示される。）や、対象の部分を考慮することによる対象認識についてより興味を持つようになってきた。
【０００５】
複数の対象同士の間には、通常、何らかの共通属性が存在する（例えば、ライオン、タイガー、ドッグ、キャットなどでは、全て４本足の動物であるという共通の属性が存在する。）。非特許文献１において提案されているように、人間は、例から学習してそれを十分に抽象化することによって、少なくとも３００００の関連のある対象クラスを区別することができる（人間は、高次元の特徴記述が与えられた時には、完全に未知の対象クラスであっても検出することができる。）。このことはつまり、１つの対象クラスにおいて発見された属性の知識が、同じ属性を含む他の異なる対象クラスへの利用のために転移されているものと考えられている。コンピュータビジョンにおける多くのこれまでの貴重な成果が、転移された属性を利用することで、未知の対象クラスの検出がまさに可能となることを既に示している（例えば、非特許文献１を参照されたい。）。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Lampert, C., Nickisch, H., Harmeling, S.: Learning to detect unseen object classes by between-class attribute transfer. In Proc. IEEE Conf. on Computer Vision and Pattern Recognition, (2009)
【発明の概要】
【発明が解決しようとする課題】
【０００７】
共通属性の学習の可能性とそれら属性を新規クラスの検出への利用に転移させることは、現在のロボティクスでは極めて有効である。簡単に説明するため、オフィス内での移動ロボットの利用を想定する。ロボットを他の部屋へと移動させて我々のために対象Ｂを取ってくるようにロボットに命令したい場合に、そのような対象Ｂの画像をロボットに提示するために我々が用意しているという状況は、とてもありえそうなことではない。対象の画像を必要とせずにロボットに命令を与える唯一の方法は、対象の属性を言葉で説明することである。これは、対象の１つのクラスからの属性をロボットに学習させ、さらに、その学習させた属性を転移させて未知クラスに属する新たな対象の認識へ利用させることで、解決されるべきである。
【０００８】
しかしながら、属性の学習及び転移によって未知対象クラスの検出が可能となることがこれまでに示されたにも関わらず、これまでに提案された属性の転移及び学習手法をロボットでの利用に応用することについては以下に述べるような課題がある。
【０００９】
まず、従来手法では、学習した属性は他の対象クラスでの利用に転移可能であるものの、各属性検出器を学習する事前の学習段階に関して、完全にバッチ処理となっている。従来手法では、任意の１つの属性の検出器を学習するために、巨大な教師画像データセットを必要とする。また、ロボットで利用するためには、システムは、教師画像を取得したときにはいつでもより柔軟に学習すべきであり、さらに、必要な場合にはいつでも識別すべきである。従って、完全に追加的な、属性の学習及び転移手法が必要である。
【００１０】
ここで、非特許文献１に開示された従来手法を例に課題を説明する。非特許文献１に開示された従来手法では、個別の属性それぞれについての識別器を学習する必要がある。テスト段階では、各属性識別器が各属性についての確率を予測し、ベイズ理論に基づいて最終的な確率スコアが計算される。各属性識別器はＳＶＭによって学習され、学習には数時間を必要とする。これを全ての属性（８５個の属性）について行うと、あまりにも計算負荷が高くなり、ロボティクスや他のオンラインアプリケーションには事実上利用することができない。また、全ての属性に対してＳＶＭを再度学習することは非現実的であることから、新たな入力教師データを追加的に学習することができない。
【００１１】
そこで、本願出願人は、先に、このような問題点を解決するためになされたものであり、オンラインかつ追加学習が可能な属性の学習及び転移システム、及び、学習及び転移方法にかかる発明について出願している（特願２０１０−２０４６５０）。
【００１２】
これに対し、本発明は、さらに認識率を向上した識別器生成装置、方法及びプログラム、並びにクラス認識器、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明に係る識別器生成装置は、ある属性を有するか否かを識別する属性識別器を、教師データの特徴量を学習することにより生成する識別器生成装置であって、入力データに、ある属性を有するか否かを示すポジティブ又はネガティブ情報をラベル付けして教師データとするラベリング部と、前記教師データの特徴量を重みベクトルとして抽出する特徴量抽出部と、自己増殖型ネットワークにより、前記特徴量抽出部が抽出した特徴量を学習する特徴量学習部と、前記各重みベクトルが有するポジティブ又はネガティブ情報に基づき、サポートベクタマシン（ＳＶＭ）により当該ポジティブノードとネガティブノードの分離境界を学習する分離境界学習部とを有する。
【００１４】
ここで、前記特徴量学習部は、前記特徴量抽出部にて抽出された重みベクトルを入力ノードとし、当該入力ノードと各ノードとの間の距離を算出し、当該入力ノードと最も近いノード及び２番目に近いノードをそれぞれ第１勝者ノード及び第２勝者ノードとして抽出する勝者ノード抽出部と、前記入力ノードと、前記第１及び第２勝者ノードとの距離に基づき、当該入力ノードを新たなノードとして挿入するか否かを判定するノード挿入判定部と、前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードと前記第２勝者ノードとの間にエッジがない場合はエッジを生成しその年齢を０とし、エッジがある場合はその年齢を０とし、さらに前記第１勝者ノードが有する全エッジの年齢をインクリメントし、所定の年齢に達したエッジを削除するエッジ管理部と、前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードの重みベクトルを当該入力ノードの重みベクトルに基づき更新するノード重み更新部と、所定のタイミングで、そのノード密度に応じてノードを削除するノード削除部とを有するものである。
【００１５】
本発明においては、属性を有するか否かがラベル付けされた教師データを使用し、自己増殖型ネットワークにより、その特徴量を学習すると共に、属性が有するか否かの分離境界をサポートベクタマシンにより学習する。これにより、処理時間を短縮しつつ、属性を有するか否かの境界を正確に学習することができ、認識率を向上することができる。
【００１６】
また、前記教師データを前記特徴量学習部に入力する毎に、前記分離境界学習部により前記分離境界を生成又は更新するものとすることができ、これにより、完全オンラインの学習が可能となる。
【００１７】
さらに、複数の前記教師データを前記特徴量学習部に入力して特徴量を学習した後、前記分離境界学習部により前記分離境界を生成又は更新することができ、非オンラインでの学習も可能となる。
【００１８】
さらにまた、前記ノード削除部は、前記教師データを前記特徴量学習部に入力する毎に、全ノードの年齢をインクリメントし、全ノードのうち所定の年齢に達するノードについて、所定数未満のノードとエッジで接続されているノードを削除するようにすることができ、ノードの削除処理をより正確に行うことができる。
【００１９】
また、前記ＳＶＭは、線形ＳＶＭであり、重みの推定に確率的勾配降下法（stochastic gradient descent （ＳＧＤ））を使用したものとすることができ、完全オンラインの学習が可能となる。
【００２０】
さらに、前記特徴量学習部における自己増殖型ネットワークは、Self-Organizing and Incremental Neural Networks（ＳＯＩＮＮ）とすることができ、ノイズにロバストかつ高速演算、完全オンライン学習が可能となる。
【００２１】
本発明に係る識別器生成方法は、ある属性を有するか否かを識別する属性識別器を、教師データの特徴量を学習することにより生成する識別器生成方法であって、入力データに、ある属性を有するか否かを示すポジティブ又はネガティブ情報をラベル付けして教師データとするラベリング工程と、前記教師データの特徴量を重みベクトルとして抽出する特徴量抽出工程と、自己増殖型ネットワークにより、前記特徴量抽出工程にて抽出された特徴量を学習する特徴量学習工程と、前記各重みベクトルが有するポジティブ又はネガティブ情報に基づき、サポートベクタマシン（ＳＶＭ）により当該ポジティブノードとネガティブノードの分離境界を学習する分離境界生成工程とを有する。
【００２２】
ここで、前記特徴量学習工程は、前記特徴量抽出工程にて抽出された重みベクトルを入力ノードとし、当該入力ノードと各ノードとの間の距離を算出し、当該入力ノードと最も近いノード及び２番目に近いノードをそれぞれ第１勝者ノード及び第２勝者ノードとして抽出する勝者ノード抽出工程と、前記入力ノードと、前記第１及び第２勝者ノードとの距離に基づき、当該入力ノードを新たなノードとして挿入するか否かを判定するノード挿入判定工程と、前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードと前記第２勝者ノードとの間にエッジがない場合はエッジを生成しその年齢を０とし、エッジがある場合はその年齢を０とし、さらに前記第１勝者ノードが有する全エッジの年齢をインクリメントし、所定の年齢に達したエッジを削除するエッジ管理工程と、前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードの重みベクトルを当該入力ノードの重みベクトルに基づき更新するノード重み更新工程と、所定のタイミングで、そのノード密度に応じてノードを削除するノード削除工程とを有するものである。
【００２３】
本発明に係るプログラムは、ある属性を有するか否かを識別する属性識別器を、教師データの特徴量を学習することにより生成する処理をコンピュータに実行させるためのプログラムであって、入力データに、ある属性を有するか否かを示すポジティブ又はネガティブ情報をラベル付けして教師データとするラベリング処理と、前記教師データの特徴量を重みベクトルとして抽出する特徴量抽出処理と、自己増殖型ネットワークにより、前記特徴量抽出処理にて抽出された特徴量を学習する特徴量学習処理と、前記各重みベクトルが有するポジティブ又はネガティブ情報に基づき、サポートベクタマシン（ＳＶＭ）により当該ポジティブノードとネガティブノードの分離境界を学習する分離境界生成処理とを実行するものである。
【００２４】
前記特徴量学習処理では、前記特徴量抽出処理にて抽出された重みベクトルを入力ノードとし、当該入力ノードと各ノードとの間の距離を算出し、当該入力ノードと最も近いノード及び２番目に近いノードをそれぞれ第１勝者ノード及び第２勝者ノードとして抽出する勝者ノード抽出処理と、前記入力ノードと、前記第１及び第２勝者ノードとの距離に基づき、当該入力ノードを新たなノードとして挿入するか否かを判定するノード挿入判定処理と、前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードと前記第２勝者ノードとの間にエッジがない場合はエッジを生成しその年齢を０とし、エッジがある場合はその年齢を０とし、さらに前記第１勝者ノードが有する全エッジの年齢をインクリメントし、所定の年齢に達したエッジを削除するエッジ管理処理と、前記入力ノードを新たなノードとして挿入しない場合、前記第１勝者ノードの重みベクトルを当該入力ノードの重みベクトルに基づき更新するノード重み更新処理と、所定のタイミングで、そのノード密度に応じてノードを削除するノード削除処理とが実行されるものである。
【００２５】
本発明に係るクラス識別器は、入力データから特徴量を重みベクトルとして抽出する特徴量抽出部と、前記特徴量抽出部により抽出された重みベクトルから、当該入力データがいずれの属性を有しているかを判断する、複数の属性識別器からなる属性認識部と、属性認識部で識別された属性を属性ベクトルとして出力する属性出力部とを備える。
この属性識別器は、上述の識別器生成装置で学習され生成されたものであって、属性認識部は、前記入力データに含まれる認識対象であるクラスがいずれの属性を有するか判断するものであり、当該クラスを識別するために必要な数の属性に対応する前記属性識別器を備えるものである。
【００２６】
本発明においては、上述の識別器生成装置により学習された属性識別器を複数備えることで、クラスを複数の属性としてとらえることができ、転移学習により、未知のクラスであっても、その属性を識別することができる。
【００２７】
この場合、前記属性認識部は、前記入力データから抽出する特徴量の種類をＮ種類（Ｎは１以上の自然数）、クラスを識別するために必要な数の属性をＭ個（Ｍは１以上の自然数）とすると、Ｎ×Ｍの属性識別器を有するものとすることができる。ポジティブとネガティブで異なる属性識別器を使用するのに比して、演算量を低減することができる。
【００２８】
クラスと属性の関係を有するクラス−属性辞書に基づき、前記属性出力部から出力された属性ベクトルに対するクラスを検出し、検出結果として出力するクラス認識結果出力部を更に有するものとすることができ、辞書データを具備すれば、学習していない未知のクラスであっても、認識することができる。
【００２９】
本発明にかかるクラス識別方法は、入力データから特徴量を重みベクトルとして抽出する特徴量抽出工程と、前記特徴量抽出工程にて抽出された重みベクトルから、複数の属性識別器により、当該入力データがいずれの属性を有しているかを判断する属性認識工程と、属性認識工程にて識別された属性を属性ベクトルとして出力する属性出力工程とを備える。
前記属性識別器は、上述の識別器生成方法で学習され生成されたものであって、前記属性認識工程では、前記入力データに含まれる認識対象であるクラスがいずれの属性を有するか判断するものであり、当該クラスを識別するために必要な数の属性に対応する前記属性識別器を使用するものである。
【００３０】
本発明にかかるプログラムは、入力データから特徴量を重みベクトルとして抽出する特徴量抽出処理と、前記特徴量抽出処理にて抽出された重みベクトルから、複数の属性識別器により、当該入力データがいずれの属性を有しているかを判断する属性認識処理と、属性認識処理にて識別された属性を属性ベクトルとして出力する属性出力処理とをコンピュータに実行させるためのプログラムである。
そして、前記属性識別器は、上述の識別器生成プログラムで学習され生成されたものであり、前記属性認識処理では、前記入力データに含まれる認識対象であるクラスがいずれの属性を有するか判断するものであり、当該クラスを識別するために必要な数の属性に対応する前記属性識別器を使用するものである。
【発明の効果】
【００３１】
本発明によれば、高速に学習、認識することができる識別器生成装置、方法及びプログラム、並びにクラス認識器、方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００３２】
【図１】属性を使用した転移学習システムの概念を示す図である。
【図２】本発明の実施の形態１にかかる属性識別器生成装置を示す図である。
【図３】本発明の実施の形態１にかかる属性識別器の学習方法を示すフローチャートである。
【図４】本発明の実施の形態１にかかる属性識別器生成装置におけるＡｄｊｕｓｔｅｄ−ＳＯＩＮＮの動作を示すフローチャートである。
【図５】本発明の実施の形態２にかかる属性識別器の学習方法を示すフローチャートである。
【図６】本発明の実施の形態２にかかる属性識別器の学習方法を説明する図である。
【図７】本発明の実施の形態２にかかる属性識別器の学習時、ＳＯＩＮＮにデータを入力した場合に、そのデータを新たなノードとして挿入する場合を説明する図である。
【図８】本発明の実施の形態２にかかる属性識別器の学習時、ＳＯＩＮＮにデータを入力した場合に、ノードを挿入せず、第１勝者の重みベクトルを更新する場合を説明する図である。
【図９】本発明の実施の形態３にかかるクラス識別システムを示す図である。
【図１０】画像、属性及びクラスの関係を説明する図である。
【図１１】本発明の実施の形態３にかかるクラス識別方法を示す図である。
【図１２】本発明の実施の形態にかかる属性識別器生成装置やクラス識別システムを実施するコンピュータの一例を示す図である。
【図１３】本発明の実施例及び比較例にかかる平均認識率を示す図である。
【図１４】本発明の実施例及び比較例にかかる計算時間を示す。
【図１５】参考例にかかる属性識別器生成装置を説明するための図である。
【発明を実施するための形態】
【００３３】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、識別対象であるクラスをその特徴である属性により認識する転移学習に使用する属性識別器を、教師データの特徴量を学習することにより生成する識別器生成装置に適用したものである。
【００３４】
先ず、ここでは、本発明の理解を容易とするため、属性を使用した転移学習について説明する。図１は、システム構造の概念を示す図である。図１は、直接属性予測モデル（direct attribute prediction （ＤＡＰ）model）を示している（非特許文献参照）。このモデルの役割は、画像の特徴量ｘから属性を検出することである。
【００３５】
最下層にあるのが画像の特徴空間Ｘであり、中間層は、画像の属性ベクトルａ１〜ａＭを示している。最上層のＹ（ｙ１〜ｙＮ）は、個別のクラスラベルを示し、クラスレベルＺ（ｚ１〜ｚＬ）は、クラスレベルＹと異なるクラスレベルを示す。本実施の形態においては、Ｙが学習クラスであり、Ｚが認識テストに使用する未知のクラスを示す。
【００３６】
転移学習では、学習クラスＹが有する属性ベクトルａｙ∈Ａを学習する。本実施の形態においては、属性ベクトルａｙ＝（ａｙ１，...，ａｙＭ）であり、各要素は、ａｙｍ∈｛１，０｝で示される。すなわち、各属性ベクトルの１つの要素（１つの属性）は、それを有している（ポジティブ、ａｙｍ＝１）か、有していない（ポジティブ、ａｙｍ＝０）のいずれかで表現される。各属性ベクトルの各要素毎に、学習クラスＹが示されている画像の特徴量Ｘを学習することで、属性ベクトルａに対応する特徴量（重みベクトル）Ｘを学習する。すなわち、クラスＹの特徴量を学習するのではなく、属性ベクトルａの各要素（１つの属性）に対応する特徴量Ｘを学習し、どの属性ベクトルａを有するものがどのクラスＹであるかを学習する。
【００３７】
これにより、新しい未知のクラスＺの画像が入力された場合、その特徴量からクラスＺの属性を認識することができる。すなわち、クラスＺの名前は不明であっても、どのような属性を有するものであるかは認識することができる。識別器は、未知のクラスＺが入力された場合に、どのような属性を有するものであるかを出力することもできるし、属性とクラスの関係を示す辞書データを備え、この辞書データを参照することで、未知のクラス名を答えることも可能とする。
【００３８】
このように転移学習とは、識別対象であるクラスの特徴を学習するのではなく、クラスの属性を学習することで、未知のクラスの検出を可能とするものである。なお、以下の実施の形態においては、入力データは、クラスが表示された画像のデータとして説明するが、入力データは、画像に限らず、音声その他のデータであってもよい。
【００３９】
ここで、本実施の形態においては、ある属性を具備するか否かを示す２値ＳＶＭを属性識別器として使用する。その重みの推定に確率的勾配降下法（stochastic gradient descent （ＳＧＤ））を使用（以下、ＳＧＤ−ＳＶＭともいう。）する。
【００４０】
しかしながら、重みパラメータを、ＳＧＤを使用して更新すると、１サンプルが考慮されるため、ノイズに影響されやすい。これを解決するために、本発明においては、入力画像の特徴を直接使用する代わりに、ＳＶＭの入力データとして、後述するＳＯＩＮＮ（Self-Organizing and Incremental Neural Networks）ノードを使用する。ＳＯＩＮＮによってノイズを抑制することができ、ノイズ除去ステップも有するのでノイズが入力されるためにＳＧＤの重み更新に発生するエラーを低減することができる。
【００４１】
＜１＞本発明の実施の形態１．
＜１−１＞属性識別器生成装置の構成
次に、本発明の実施の形態１について説明する。図２は、本実施の形態にかかる属性識別器生成装置を示す図である。図２に示すように、属性識別器生成装置１０は、ラベリング部１１、特徴量抽出部１２、特徴量学習部１３及び分離境界学習部１５を有する。ここで特徴量学習部１３は、後述する自己増殖型ネットワークＳＯＩＮＮで構成され、特徴量抽出部１２により抽出された属性の特徴量が学習される。分離境界学習部１５は、ＳＶＭにより分離境界を学習する。ラベリング部１１は、入力データに、ある属性を有するか否かを示すポジティブ又はネガティブ情報をラベル付けして教師データとする。なお、予めラベリングしたデータを特徴量抽出部１２に入力するようにしてもよい。また、特徴量を抽出した後で、ラベリングして教師データとしてもよい。
【００４２】
特徴量抽出部１２は、教師データから特徴量を重みベクトルとして抽出する。例えば教師データ及び入力データが画像データである場合には、ＳＩＦＴ、ＳＵＲＦなどの特徴量を抽出する。なお、ＳＩＦＴ、ＳＵＲＦ以外にも、ｒｇ−ＳＩＦＴ特徴量、ＰＨＯＧ特徴量、ｃｑ特徴量、Ｌｓｓ−ｈｉｓｔｏｇｒａｍ特徴量など公知の特徴量のうちいずれか1つを抽出してもよいし、複数の種類の特徴量を抽出するものとしてもよい。また、教師データ及び入力データは画像データに限定されず、音声データなどであってもよい。特徴量抽出部１２で抽出された重みベクトルは、ラベルと共に、入力ノードとして特徴量学習部１３に入力される。分離境界学習部１５は、特徴量学習部１３において学習された各ノードが有するポジティブ又はネガティブ情報に基づき、サポートベクタマシン（ＳＶＭ）によりポジティブノードとネガティブノードの分離境界を学習する。
【００４３】
ここで、本実施の形態にかかる属性識別器生成装置１０では、１つの属性について、それを備えているか（ポジティブ）、備えていないか（ネガティブ）を識別する属性識別器を学習して生成する。つまり、あるクラス（例えば動物）を表現する属性が例えばＭ個（Ｍは１以上の自然数）ある場合、Ｍ個の属性識別器が学習されることになる。さらに、入力画像からＮ種類（Ｎは１以上の自然数）の特徴量を抽出する場合は、各特徴量について各属性を学習するため、Ｎ×Ｍ個の属性識別器にて、各特徴ごと、各属性毎に、その特徴量が学習される。
【００４４】
ここで、特徴量学習部１３は、勝者ノード抽出部１３１、ノード挿入部１３３、エッジ管理部１３５、ノード重み更新部１３７及びノード削除部１３９を有する。
【００４５】
勝者ノード抽出部１３１は、特徴量抽出部１２にて抽出された重みベクトルを入力ノードとし、当該入力ノードと各ノードとの間の距離を算出し、当該入力ノードと最も近いノードを第１勝者ノードとして抽出し、２番目に近いノードを第２勝者ノードとして抽出する。
【００４６】
ノード挿入部１３３は、入力ノードと第１勝者ノードとの間の距離、及び入力ノードと第２勝者ノードとの間の距離に基づき、その入力ノードを新たなノードとして挿入するか否かを判定する。
【００４７】
エッジ管理部１３５は、入力ノードを新たなノードとして挿入しない場合、第１勝者ノードと第２勝者ノードとの間にエッジがない場合はエッジを生成しその年齢を０とする。エッジがある場合はその年齢を０とし、さらに第１勝者ノードに接続されている全てのエッジの年齢をインクリメントし、さらに、所定の年齢に達したエッジを削除する。
【００４８】
ノード重み更新部１３７は、入力ノードを新たなノードとして挿入しない場合、第１勝者ノードの重みベクトルを入力ノードの重みベクトルに基づき更新する。なお、第２勝者ノードの重みベクトルも更新するようにしてもよい。
【００４９】
ノード削除部１３９は、所定のタイミングで、そのノード密度に応じてノードを削除する。例えば、入力データ数が１００の倍数となるタイミングでノードを削除することができる。又は、ノードのエッジの年齢をカウントし、年齢が１００の倍数となるタイミングで、各ノード個別にノードの削除を行ってもよい。
【００５０】
本実施の形態においては、教師画像をＳＯＩＮＮに全て入力し、特徴量を学習した後で、ＳＧＤ−ＳＶＭにより、ポジティブとネガティブの分離境界を学習する。１つのＳＯＩＮＮにより、入力データがある属性を有している（ポジティブ）又は有していない（ネガティブ）を識別することができるので、ポジティブと、ネガティブと別々のＳＯＩＮＮを要していた先願（特願２０１０−２０４６５０、参考例という。）に対し、ＳＯＩＮＮの数を２分の１にすることができる。
【００５１】
すなわち、本実施の形態においては、教師画像から抽出する特徴量の数＝Ｎ種類（Ｎは１以上の自然数）とし、認識対象のクラスを識別するのに必要な属性をＭ個（Ｍは１以上の自然数）とすると、Ｎ×Ｍ個のＳＯＩＮＮにより、各属性（ポジティブ、ネガティブ）に対応する特徴量が学習されることになる。
【００５２】
図１５は、参考例にかかる属性識別器生成装置を説明するための図である。図１５に示すように、教師画像（training data）から特徴量を抽出するまでは本実施の形態と同様である。ただし、本実施の形態のように、ＳＧＤ−ＳＶＭを使用してポジティブとネガティブの境界を学習するのではなく、ＳＯＩＮＮに入力するが、各属性について、ポジティブとネガティブで別個のＳＯＩＮＮを用意して学習する。よって、ＳＯＩＮＮの個数は、２×属性の数×特徴量の数となる。
【００５３】
本実施の形態においては、ネガティブノードとポジティブノードとで同一のＳＯＩＮＮを使用するため、実施が容易となる。先願の方法であると、ネットワークにあるノードに対する最近傍法で識別を行う。この場合、空間上に近傍ノードがなければ、距離のみの識別となるため、識別結果が学習データに大きく依存してしまう。これに対して、実施の形態にかかる属性識別器生成装置１０により生成された属性識別器を使用して、入力データがいずれの属性にぞくするかを識別する場合、ＳＧＤ−ＳＶＭにより学習し分離境界で識別を行う。分離境界も学習データに依存するが、学習データがない空間であっても、学習データに基づいた適切な識別が可能となり、先願と比べると識別力を向上することができる。
【００５４】
なお、本実施の形態においては、属性識別器生成装置１０が、ラベリング部１１及び特徴量抽出部１２を有するものとして説明したが、入力画像から特徴量を抽出し、これにラベリングした教師データを予め用意し、特徴量学習部１３に入力するようにしてもよい。この場合は、ラベリング部１１及び特徴量抽出部１２は、不要である。すなわち、属性識別器生成装置１０に入力するまえに特徴量を抽出してもよく、又はラベリングして教師データとしてもよい。
【００５５】
図３は、本実施の形態にかかる属性識別器の学習方法を示すフローチャートである。先ず、教師画像からＳＯＩＮＮの入力データとして特徴量を取得する（ステップＳ１）。すなわち、この場合、特徴量として、ＳＩＦＴ特徴量、ＳＵＲＦ特徴量、ｒｇ−ＳＩＦＴ特徴量、ＰＨＯＧ特徴量、ｃｑ特徴量、Ｌｓｓ−ｈｉｓｔｏｇｒａｍ特徴量など公知の特徴量のうち、いずれか１つを抽出するものとしてもよいし、複数の種類の特徴量を抽出するものとしてもよい。属性の数＝ｍ｛１〜Ｍ｝とするとき、ｍ番目のＳＯＩＮＮには、｛ｘｉ，ａｙｍ｝が入力される。ここで、ｘｉはクラスｙの特徴量、ａｙｍは、ｍ番目の属性の２値の値（１又は０）を示す。
【００５６】
すなわち、教師画像がいずれの属性を有するかがラベリングされており、抽出された特徴量にも、いずれの属性を有するか否かがラベリングされている。次に、取得したデータ｛ｘｉ，ａｙｍ｝をＳＯＩＮＮに入力する（ステップＳ２）。上述したように、ＳＯＩＮＮは、各属性毎に設けられる。例えばあるクラス（例えば、動物）を認識するための属性が８５個ある場合、８５個の属性に対応したＳＯＩＮＮで学習が行われる。教師画像は、各８５個の属性それぞれについて、当該属性を有する、有しない、の情報がラベルづけされており、このラベル付けされた情報に基づき、各属性毎に、それを有する場合、有しない場合の特徴量が学習されていく
【００５７】
そして、特徴量の学習が終了するまで、このステップＳ１、Ｓ２を繰り返す（ステップＳ３：Ｎｏ）。そして、特徴量の学習が終了したら、ＳＤＧ−ＳＶＭにより、ネガティブノードとポジティブノードの分離境界を学習する（ステップＳ４）。以上により、ある属性を有するか（ポジティブ）、有しないか（ネガティブ）を識別することができる属性識別器を、教師画像を使用して学習により、生成することができる。
【００５８】
なお、本実施の形態においては、ＳＯＩＮＮに教師画像の特徴量全部を入力し、特徴量の学習が終了した後、分離境界を学習するものとして説明したが、所定の枚数、例えば１００枚毎に、教師画像の特徴量の学習が終了したら、分離境界を学習する、等のようにしてもよい。
【００５９】
＜１−２＞確率的勾配降下法（stochastic gradient descent：ＳＧＤ）−ＳＶＭ（Support Vector Machine）
次に、ＳＧＤ−ＳＶＭについて説明する。入力データ（入力ベクトル）をｘ、出力データ（出力ベクトル）をｙとしたとき、推定関数ｆ：ｘ→ｙを、入力ベクトルｘに基づき、出力ベクトルｙを推定するものと定義する。損失関数ｌ（ｆ（ｘ），ｙ）は、推定関数の出力と、実際の値との間のエラーを示すものと定義される。ここで、期待リスクＥ（ｆ）を最小とする関数ｆを推定することを目的とし、期待リスクＥ（ｆ）は、下記数式（１）により求めることができる。
【００６０】
【数１】
2013025398.tif 000003
ここで、ｎは学習サンプル、ｚｉ＝（ｘｉ，ｙｉ）で、ｉ＝１，２，...，ｎを示すものとする。そして、経験的リスクを最小化する関数ｆを下記数式（２）により求める。
【００６１】
【数２】
2013025398.tif 000004
により、線形にパラメータ化される。基準勾配降下法は、重みベクトルｗの勾配の傾きを使用して経験的リスクを最小化するために提案された。この傾きを計算し、最適化パラメータｗを更新するために、１つの完全な学習セットにより学習する必要がある。さらに、大域的最適を得るためには、多くの繰り返しが必要である。ここで、確率的勾配降下法は、各繰り返しでサンプルｚｉを抽出し、下記数式（３）の時間依存因子を使用して重みベクトルｗを繰り返し更新することで、経験的リスクを最小化する。
【００６２】
【数３】
2013025398.tif 000005
２元線形ＳＶＭ問題のため、下記をトレーニングセットとし、
【００６３】
【数４】
2013025398.tif 000006
学習過程の目的は、下記数式（４）の目的関数を最小化するものとなる。
【００６４】
【数５】
2013025398.tif 000007
【００６５】
ここで、ハイパーパラメータλ＞０が正規化項の強さを制御し、ｂがオリジナルＳＶＭ問題におけるバイアス項を示す。損失ｌ（ｆ（ｘｉ），ｙｉ）は、凸関数であり、連続的な導関数の２階微分を示す。上記数式（３）、（５）及び（６）から、下記数式（７）により線形ＳＶＭの重みを推定するために、ＳＧＤを使用することができる。
【００６６】
【数６】
2013025398.tif 000008
【００６７】
＜１−３＞Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮ
次に、本実施の形態において用いる自己増殖型ニューラルネットワークについて簡単に説明する。自己増殖型ニューラルネットワークとして、例えば、Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮ（Self-Organizing Incremental Neural Network）が提案されている。Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮは、自己組織化かつ追加学習可能なニューラルネットワークであり、オンラインの教師無し識別学習のためのメカニズムである（特開２００８−２１７２４２号公報、非特許文献「F. Shen & O. Hasegawa, "An incremental network for on-line unsupervised classification and topology learning, " Neural Networks, 19(1):90-106, 2006.」、及び非特許文献「F. Shen & O. Hasegawa, "An on-line learning mechanism for unsupervised classification and topology representation," in CVPR, 2005.」参照）。
【００６８】
本実施の形態においては、教師あり学習であるが、入力画像の特徴量の学習に、Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮを利用するものとする。
【００６９】
Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮは、重みベクトルとして表わされるノードが、自律的に増殖及び消滅することを特徴とする。ノード同士は、所定の条件を満たす場合に、エッジと呼ばれる仮想的な線で結合される。Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮは、このエッジをたどって互いに到達できるノード同士を同じクラスタとみなすことにより、クラスタリングを行う。また、エッジは年齢と呼ばれるパラメータを持っており、Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮは、所定の年齢に達したエッジを削除する。これにより、ノイズとみなし得るノードを所定のタイミングで削除可能としている。
【００７０】
図４を用いて、Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮの学習アルゴリズム、すなわちＡｄｊｕｓｔｅｄ−ＳＯＩＮＮに新たなノードが入力された場合のＡｄｊｕｓｔｅｄ−ＳＯＩＮＮの動作について説明する。
【００７１】
Ｓ３０１：重みベクトルを持つ入力ノードが、Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮ（属性識別器生成装置１０）に新たに入力される。この重みベクトルは、特徴量抽出部１２にて抽出された特徴量である。
【００７２】
Ｓ３０２：Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮ、本実施の形態においては、勝者ノード抽出部１３１は、入力ノードと既存のノードとの間の距離、典型的にはユークリッド距離を計算する。ユークリッド距離とは、下記数式（８）により定義される距離をいう。下記数式（８）において、ｄはユークリッド距離、ｆ及びｇはそれぞれｎ次元のベクトルを示す。
【００７３】
【数７】
2013025398.tif 000009
【００７４】
勝者ノード抽出部１３１は、この計算結果より、このユークリッド距離が最も近いノード（第１勝者ノード）と２番目に近いノード（第２勝者ノード）とを決定する。
【００７５】
Ｓ３０３：次に、ノード挿入部１３３は、この第１勝者ノード及び第２勝者ノードが有する類似度閾値をそれぞれ計算する。ここで、類似度閾値とは、あるノードが隣接ノード（エッジで接続されたノード）を持つ場合、その隣接ノードとの最大距離をいう。あるノードが隣接ノードを持たない場合は、そのノードとそれ以外のノードとの最小距離をいう。類似度閾値は、下記数式（９）により求められる。下記数式（９）において、Ｎはノードｉの隣接ノードの集合、Ｗはノードｉの重みベクトル、Ａはノード全体の集合を示す。
【００７６】
【数８】
2013025398.tif 000010
【００７７】
ノード挿入部１３３は、これらの類似度閾値と、上述の入力ノードと第１勝者ノード及び第２勝者ノードとのユークリッド距離とを相互に比較する。比較の結果、入力ノードと第１勝者ノード及び第２勝者ノードとのユークリッド距離が、第１勝者ノード又は第２勝者ノードの類似度閾値よりも大きい場合、入力ノードは、第１勝者ノード及び第２勝者ノードとは異なるクラスタに属するとみなされる。この場合、Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮは、入力ノードの位置に新たなノードを挿入すべきと判定する。一方、入力ノードと第１勝者ノード及び第２勝者ノードとのユークリッド距離が、第１勝者ノード及び第２勝者ノードの類似度閾値よりも小さい場合、入力ノード、第１勝者及び第２勝者はいずれも同一のクラスタに属するとみなされる。この場合、ノード挿入部１３３は、新たなノードを挿入すべきでないと判定する。
【００７８】
Ｓ３０４：Ｓ３０３において、新たなノードを挿入すべきと判定された場合、勝者ノード抽出部１３１は、入力ノードの位置に新たなノードを挿入する。
【００７９】
Ｓ３０５：Ｓ３０３において、新たなノードを挿入すべきでないと判定された場合、ｘエッジ管理部１３５は、第１勝者ノードと第２勝者ノードとの間にエッジが存在するか否かを判定する。
【００８０】
Ｓ３０６：Ｓ３０５において、第１勝者ノードと第２勝者ノードの間にエッジが存在しないと判定された場合、エッジ管理部１３５は、それらの間にエッジを生成する。このような処理が、Ｋ−Ｍｅａｎのような他のクラスタリング手法とＡｄｊｕｓｔｅｄ−ＳＯＩＮＮとで著しく異なる点である。Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮでは、その新たに入力されたノードは、クラスタを形成するためにネットワークに単純には追加されない。その代わりに、Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮにおいて存在するノードをエッジにより接続していくことでクラスタが形成される。Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮにおける現在のノードと入力パターンとが著しく異なる場合においてのみ、新たなノードを生成することから、このようなクラスタ形成処理によれば、長期間における実行に対してメモリの節約に大きな貢献をもたらす。
【００８１】
Ｓ３０７：エッジ管理部１３５は、Ｓ３０５においてエッジが存在しないと判定した場合、Ｓ３０５において生成したエッジの年齢を０とする。一方、Ｓ３０５においてエッジが存在すると判定した場合、既に存在していたエッジの年齢を０とする。加えて、エッジ管理部１３５は、第１勝者ノードに接続されている全てのエッジの年齢をインクリメントする。
【００８２】
Ｓ３０８：次に、エッジ管理部１３５は、あらかじめ定められた閾値（ａｇｅ）を超えた年齢を有するエッジを削除する。ａｇｅは、ノイズ等の影響により誤って生成されるエッジを削除するために設定されるパラメータである。ａｇｅに小さな値を設定すれば、エッジは削除されやすくなり、ノイズの影響は防ぎやすくなるが、ａｇｅが極端に小さければ、エッジが頻繁に削除されるようになり、学習結果が不安定になる。一方、ａｇｅが大きすぎれば、ノイズの影響で生成されたエッジを適切に取り除くことができない。したがって、ａｇｅには、実験等により算出された適切な値を設定することが好ましい。
【００８３】
Ｓ３０９：次に、ノード重み更新部１３７は、第１勝者ノード及び第１勝者ノードとエッジを介して直接接続されている隣接ノードの重みベクトルを、以下の数式（１０）、数式（１１）により更新する。数式（１０）、数式（１１）において、ΔＷｉはノードｉの重みベクトルの更新量、ΔＷｊはノードｊの重みベクトルの更新量を示す。また、ｉは第１勝者ノード、ｊは隣接ノード、Ｗｋは入力ノードの重みベクトル、Ｍｉはノードｉがこれまで第１勝者ノードになった回数を示す。これにより、入力ノードを新たなノードとして挿入しない場合には、入力ノードは、第１勝者ノード及び隣接ノードにいわば吸収される形となる。なお、本実施の形態においては、第１勝者ノード及びその隣接ノードの重みを更新するものとして説明するが、第１勝者ノードのみ、又は第１勝者ノードに加えて第２勝者ノードの重みを更新するようにしてもよい。
【００８４】
【数９】
2013025398.tif 000011
【００８５】
【数１０】
2013025398.tif 000012
【００８６】
Ｓ３１０：次に、ノード削除部１３９は、以下の２つの条件を満たすノードを、すべてのノードの中から抽出し、削除対象と判定する。
【００８７】
１つ目の条件は、入力されたノードの数が、あらかじめ定められた設定値、例えば定数λの倍数にあたるか否かを判定する。この設定値は、ノイズとみなし得るノードを定期的に削除するために設定されるパラメータである。λに小さな値を設定すれば、頻繁にノイズ処理を実施することができるが、λが極端に小さければ、実際にはノイズでないノードまで誤って削除してしまう。一方、λが大きすぎれば、ノイズの影響で生成されたノードを適切に取り除くことができない。それで、λには、実験により算出された適切な値を設定することが好ましい。
【００８８】
２つ目の条件は、ノードの隣接ノード数があらかじめ定められた閾値η以下であることである。閾値ηは、ノード群のうち低密度の領域、すなわちノイズとみなし得るノードを定義するためのパラメータである。
【００８９】
Ｓ３１１：ノード削除部１３９は、ステップＳ３１０において削除対象として抽出されたノードを削除する。
【００９０】
Ｓ３１２：入力されたノードの数が、あらかじめ定められた定数ρに達したならば、Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮは学習を完了する。未だ達していない場合は、次の入力ノードの入力を受付け、上述した手順により学習を継続する。
【００９１】
なお、図４に示す例では、入力されたノード数がλの倍数のタイミングで、ノードを削除するか否かを判定するものとして説明したが、各ノード毎に年齢をカウントし、所定の年齢、例えば年齢がλに到達したノード（入力された後に、新たな入力がλ回されたノード）について、削除するか否かの判定を行ってもよい。入力されたノード数が所定の数に達したタイミングで削除処理を行うと、最初の頃に入力されたノードと、最後の方に入力されたノードとの間で不平等の判断がなされる場合がるが、ノードの年齢をカウントすることで、いずれのノードも同様な条件で削除判定することができる。
【００９２】
さらに、自己増殖型ニューラルネットワークはＡｄｊｕｓｔｅｄ−ＳＯＩＮＮに限定されず、Ｅｎｈａｎｃｅｄ−ＳＯＩＮＮ（特開２００８−２１７２４６）などを利用するものとしてもよい。また、オンラインかつ追加学習可能という観点からは、事前にネットワークの構成やサイズを決定する必要があるためにその性能に制限が加えられるものの、自己増殖型ニューラルネットワークとして、ニューラルガス（ＮＧ）（T. M. Martinetz, and S. G. Berkovich, and K. J. Schulten, "Neural-gas," network for vector quantization and its application to time-series prediction, " IEEE Trans. On Neural Networks, vol. 4, no. 4, pp. 558-569, 1996.）やGrowing  neural gas(GAG)（B. Fritzke, "A Growing Neural Gas Network Learns Topologies, " In Advances in Neural Information Processing System, vol. 7, pp. 625-632, 1995.）を用いることもできる。
【００９３】
＜２＞本発明の実施の形態２．
次に、本発明の実施の形態２にかかる属性識別器生成装置について説明する。上述の実施の形態１は、完全なオンライン学習が不可能であったのに対し、本実施の形態にかかる属性識別器生成装置は、完全なオンライン学習が可能となる。
【００９４】
属性識別器生成装置の構成は、図２に示す属性識別器生成装置１０と同様である。ただし、実施の形態１にかかる属性識別器生成装置１０は、ある所定数の教師画像を入力し、その特徴量を学習した後で、分離境界学習部１５により、分離境界を学習していたのに対し、本実施の形態にかかる属性識別器生成装置は、教師画像を入力する毎に、特徴量学習部１３で特徴を学習すると共に分離境界学習部１５により分離境界を学習する。これにより、完全オンラインの学習が可能となる。
【００９５】
図５は、本実施の形態にかかる属性識別器の学習方法を示すフローチャートである。また、図６は、本実施の形態にかかる属性識別器の学習方法を説明する図である。図７及び図８は、ＳＯＩＮＮにデータを入力した場合に、そのデータを新たなノードとして挿入する場合及びノードを挿入せず、第１勝者の重みベクトルを更新する場合の学習方法を説明する図である。
【００９６】
図５に示すように、先ず、ＳＯＩＮＮに入力するデータ｛ｘｉ，ａｙｍ｝を取得する（ステップＳ１１）（図６の１参照）。１つの属性（ポジティブ、ネガティブ）につき、１つのＳＯＩＮＮが対応する点、ＳＯＩＮＮに入力する特徴量ベクトルとして、ＳＩＦＴ特徴量、ＳＵＲＦ特徴量、ｒｇ−ＳＩＦＴ特徴量、ＰＨＯＧ特徴量、ｃｑ特徴量、Ｌｓｓ−ｈｉｓｔｏｇｒａｍ特徴量等を使用することができる点などは、実施の形態１と同様である。特徴量抽出部１２は、教師画像から特徴量を抽出する。
【００９７】
次に、ＳＯＩＮＮにデータ｛ｘｉ，ａｙｍ｝を入力する（ステップＳ１２）（図６の２参照）。このとき、ａｙｍ＝１のときは、ポジティブサンプル（その属性を有する）として、ａｙｍ＝０のときは、ネガティブサンプル（その属性を有しない）として、ＳＯＩＮＮに入力する。なお、図２に示す例では、教師画像がラベリング部１１に入力され、ラベリング部１１により、ラベル｛ａｙｍ｝が付され、特徴量抽出部１２により、特徴量｛ｘｉ｝が抽出されるものとしているが、特徴量抽出部１２を抽出した後、ラベル付けして、ＳＯＩＮＮに入力するようにしてもよい。
【００９８】
ＳＯＩＮＮに入力されたデータは、勝者ノード抽出部１３１により、第１勝者ノード、第２勝者ノードが抽出され、ノード挿入部１３３により、新たにノードを挿入するか否かが判定される。次に、新たにノードが追加される場合（図６の２−１）、図７）と、ノードを追加しない場合（図６の２−２）、図８）について説明する。
【００９９】
ＳＯＩＮＮに教師データを入力したら、同時にＳＧＤ−ＳＶＭにより、分離境界を学習する（ステップＳ１３）。図７に示すように、新しいノードを追加する場合は、この特徴（入力ノードの重みベクトル）をＳＧＤ−ＳＶＭの入力（重みベクトルＳｋ＿ｎｅｗ，ａｙｍ）とする。
【０１００】
一方、新たに入力ノードを挿入しない場合、図８に示すように、ノード重み更新部１３７により、上述した数式（１０）、数式（１１）に従ってノード重みが更新される。この場合、更新したノード重みベクトルをＳＧＤ−ＳＶＭの入力（Ｓｋ＿ｍｏｖｅ，ａｙｍ）として入力する。いずれも、上述の数式（７）に従って、分離境界を更新する。
【０１０１】
以上のようにして、教師画像からＳＯＩＮＮの入力データを生成し、ＳＯＩＮＮに入力し、ＳＧＤ−ＳＶＭによりポジティブノードとネガティブノードの分離境界を学習していき、所定の数のサンプルで学習をしたら、終了する（ステップＳ１４）。
【０１０２】
本実施の形態においては、教師画像（ラベル付きデータ）からその特徴量を学習し、各属性についてポジティブノードとネガティブノードを同一のＳＯＩＮＮに入力して、その分離境界を学習するようにしたので、完全なオンライでの学習が可能となる。すなわち、当該属性識別器生成装置１０を例えばロボットに搭載し、ある程度学習が終了したら、対象物体を認識しつつ、学習することも可能となる。また、教師画像から抽出する特徴量の数×対象物体を認識するための属性の数のＳＯＩＮＮで学習を行うことで、転移学習が可能な認識装置を構成することができる。
【０１０３】
＜３＞本発明の実施の形態３．
次に、本発明の実施の形態３にかかるクラス識別システムについて説明する。本実施の形態にかかるクラス識別システムは、上述の実施の形態１又は２により学習された属性識別器を使用して、未知のクラスを識別するシステムである。
【０１０４】
図９は、本実施の形態にかかるクラス識別システムを示す図である。図９に示すように、クラス識別システム２００は、データセット２２０、特徴量抽出部２１２、ラベリング部２１１、属性認識部２１０、属性出力部２１７及びクラス認識結果出力部２１９を有する。
【０１０５】
特徴量抽出部２１２は、入力データから特徴量を重みベクトルとして抽出する。特徴量抽出部２１２の入力データは、属性識別器の学習フェーズでは教師データであり、認識フェーズでは、未知クラスの認識対象データである。特徴量抽出部２１２は、特徴量としては、上述したように、ＳＩＦＴ特徴量、ＳＵＲＦ特徴量、ｒｇ−ＳＩＦＴ特徴量、ＰＨＯＧ特徴量、ｃｑ特徴量、Ｌｓｓ−ｈｉｓｔｏｇｒａｍ特徴量等（特徴量Ｆ１，Ｆ２，・・・，Ｆｋ）を抽出する。
【０１０６】
属性認識部２１０は、上述の属性識別器生成装置１０により生成された複数の属性識別器２０１（２０１１〜２０１Ｍ）を有している。属性識別器２０１は、特徴量抽出部２１２により抽出された重みベクトル（Ｆ１〜Ｆｋ）毎に、属性の数Ｍ個分設けられており、当該入力データが各属性を有しているか否かを判断する。すなわち、属性認識部２１０は、認識対象データに含まれるクラスがいずれの属性を有するか判断することができ、クラスを識別するために必要な数（特徴数×属性数）の属性識別器２０１を備える。
【０１０７】
属性出力部２１７は、属性認識部２１０で識別された属性を属性ベクトルとして出力する。
【０１０８】
クラス認識結果出力部２１９は、クラスと属性の関係を有するクラス−属性辞書データ２２１に基づき、属性出力部２１７から出力された属性ベクトルに対するクラスを検出し、検出結果として出力する。
【０１０９】
ここで、本実施の形態にかかるクラス識別システム２００は、ラベリング部２１１を有しており、教師データを入力する場合は、特徴量抽出部２１２で抽出された特徴量に、属性のラベルを付すことができ、このラベル付き特徴量を使用して属性識別器を学習することができる。
【０１１０】
すなわち、属性認識部２１０は、例えば上述の実施の形態２に示す、Ａｄｊｕｓｔｅｄ−ＳＯＩＮＮからなる特徴量学習部１３及び重みの推定に確率的勾配降下法（ＳＧＤ）を使用したＳＶＭからなる分離境界学習部１５を有するものとすることができる。これにより、データセット２２０として、教師データを与えれば、属性識別器を学習することができる。
【０１１１】
なお、クラス識別器としては、ラベリング部２１１を備える必要はなく、属性認識部２１０は、学習終了後の学習結果を属性識別器として具備すればよい。クラス識別システム２００は、通信部を備えたパーソナルコンピュータ（ＰＣ）等と同様の構成とすることができ、通信部を介して必要な属性識別器を取得するようにしてもよい。
【０１１２】
また、辞書データ２２１を有して、属性識別結果をクラスに変換して出力するようにしたが、与えられる未知クラスのデータの識別結果として、属性ベクトルを出力するようにしてもよい。例えば、本クラス識別システム２００をスピーカを具備したロボット等に搭載した場合、入力データの識別結果として、属性ベクトルに基づき、入力データの特徴、例えばライオンのように足が４本で肉食の動物である、○○と同様に熱帯地域に生息している、等の情報を出力させることができる。
【０１１３】
次に、本実施の形態にかかるクラス識別方法について説明する。図１０は、画像、属性及びクラスの関係を説明する図、図１１は、クラス識別方法を示す図である。図１０に示すように、画像の特徴Ｘから、この画像がいずれの属性を有するか否かを検出することができる。先ず、図１１の（１）に示すように、未知クラスの画像がクラス識別システム２００に入力される。入力画像は、特徴量抽出部２１２により、特徴量を抽出する。これを属性認識部２１０に入力し（図１１の（２））、それぞれの属性が存在する（ポジティブ）、
又は存在しない（ネガティブ）を判定する（図１１の（３））。例えば、ここでは、属性ａｔｔｒ１〜ａｔｔｒ６の６つの属性について、その有無が検出される。
【０１１４】
つまり、特徴量を重みベクトルとして、学習済みのＳＯＩＮＮに入力した場合に、図７、図８に示すような分離境界のポジティブ側に入力ノードが位置すれば、当該属性についてはポジティブである。一方、分離境界のネガティブ側に入力ノードが位置すれば、当該属性はネガティブである。
【０１１５】
そうして、判定された結果は、属性出力部２１７から属性ベクトル（属性記述子）として出力される（図１１の（４））。
【０１１６】
図１０に示すように、学習クラスＹの属性ａを学習することで、未知クラスＺを属性で認識することができる。例えば、未知クラスの画像の属性を出力するだけでなく、所定の属性を有する画像を抽出することも可能である。
【０１１７】
＜４＞ハードウェア構成
以上に説明した属性識別器生成装置１０における属性識別器生成処理、クラス識別システム２００におけるクラス識別処理システム２００、属性認識部２１０における属性認識処理等の各処理は、専用コンピュータ、又はパーソナルコンピュータ（ＰＣ）などのコンピュータにより実現可能である。但し、コンピュータは、物理的に単一である必要はなく、分散処理を実行する場合には、複数であってもよい。図１２は、属性識別器生成装置１０やクラス識別システム２００を実施するコンピュータの一例を示す図である。図１２に示すように、コンピュータ５００は、ＣＰＵ５０１（Central Processing Unit）、ＲＯＭ５０２（Read Only Memory）及びＲＡＭ５０３（Random Access Memory）を有し、これらがバス５０４を介して相互に接続されている。なお、コンピュータを動作させるためのＯＳソフトなどは、説明を省略するが、この属性識別器生成装置１０、クラス識別システム２００、属性認識部２１０等を構築するコンピュータも当然備えているものとする。
【０１１８】
また、バス５０４には入出力インターフェース５０５も接続されている。入出力インターフェース５０５には、例えば、キーボード、マウス、センサなどよりなる入力部５０６、ＣＲＴ、ＬＣＤなどよりなるディスプレイ、並びにヘッドフォンやスピーカなどよりなる出力部５０７、ハードディスクなどより構成される記憶部５０８、モデム、ターミナルアダプタなどより構成される通信部５０９などが接続されている。
【０１１９】
ＣＰＵ５０１は、ＲＯＭ５０２に記憶されている各種プログラム、又は記憶部５０８からＲＡＭ５０３にロードされた各種プログラムに従って各種の処理を実行する。本実施例においては、例えば、特徴量学習部１３による特徴量学習処理、分離境界学習部１５による分離境界学習処理を含む、属性識別器生成装置１０における属性識別器生成処理、特徴量抽出部２１２における特徴量抽出処理、属性認識部２１０における属性認識処理、クラス認識結果出力部２１９におけるクラス認識結果出力処理等を含む、クラス識別システム２００におけるクラス認識処理等の処理を実行する。ＲＡＭ５０３にはまた、ＣＰＵ５０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１２０】
ここで、各種コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（random access memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【０１２１】
通信部５０９は、例えば図示しないインターネットを介しての通信処理を行ったり、ＣＰＵ５０１から提供されたデータを送信したり、通信相手から受信したデータをＣＰＵ５０１、ＲＡＭ５０３、記憶部５０８に出力したりする。例えば、属性認識部２１０は、属性識別器生成装置１０により学習された属性識別器を、インターネットを介して入手することができる。記憶部５０８はＣＰＵ５０１との間でやり取りし、情報の保存・消去を行う。通信部５０９は又、他の装置との間で、アナログ信号又はディジタル信号の通信処理を行う。
【０１２２】
入出力インターフェース５０５は、必要に応じてドライブ５１０が接続され、例えば、磁気ディスク５１１、光ディスク５１２、フレキシブルディスク５１３、又は半導体メモリ５１４などが適宜装着され、それらから読み出されたコンピュータプログラムが必要に応じて記憶部５０８にインストールされる。
【０１２３】
＜５＞実施例
以下、本発明にかかる属性識別器生成装置１０により実際に属性識別器を学習により生成し、これを使用した認識率の実際に求めた本発明の実施例について説明する。実施例としては、先に研究がなされている非特許文献１（以下、比較例とする。）と同一のデータセットを使用し学習した結果をテストした。
【０１２４】
学習には、２４０００枚、４０クラスの教師データを使用した。教師データは、４０の全く異なるクラスの画像データからなる。また認識率テストには、６１８０枚、１０の未知のクラスの画像を使用した。学習及び認識には、比較例と同様に、８５の属性、６つの特徴量（カラーヒストグラム、局所自己相似性（local self similarity(Shechtman, E. and Irani, M.: Matching Local Self-Similarities across Images and Videos. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (2007))、ｐＨＯＧ（Bosch, A., Zisserman, A. and Munoz, X.: Representing shape  with a spatial pyramid kernel. In Computer Vision and Image Understanding (CVIU) (2007)）、ＳＩＦＴ（Lowe, D.G.: Distinctive image features from scale-invariant keypoints. IJCV (2004)）、ＲＧＳＩＦＴ（Sande, K., Gevers, T., Snoek, C.: Evaluation of color descriptors for object and scene recognition.  In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR) (2008)）、及びＳＵＲＦ（Bay, H., Ess. A., Tuytelaars, T. and Gool. L. V.: SURF: Speeded Up Robust Features. In Computer Vision and Image Understanding (CVIU), Vol. 110, No. 3, pp. 346-359 (2008)））を使用した。
【０１２５】
図１３及び図１４は、本発明の実施例及び比較例にかかる平均認識率及びその計算時間を示す。図１３に示すように、本実施の形態１及び２の方法、つまり、教師データを入力する毎にＳＯＩＮＮとＳＧＤ−ＳＶＭを実施した場合、全教師データをＳＯＩＮＮで学習してから分離境界を学習した場合、共に比較例２より高い認識率となった。なお、比較例１は、完全オフライン手法であり、全ての学習データに対する最適な識別器を用意することができるため、認識率が高くなっている。これに対して、本発明は、学習データが追加されると仮定して学習を実行する。よって、教示画像が入力されているその時の学習データに適する識別器で識別を行うため、識別率が比較例１より若干低いものとなっているが、完全オンラインでの学習が可能である。
【０１２６】
さらに、図１４に示すように、比較例１、２の学習時間は、４０クラスで約１ヶ月と極めて長時間であるのに対し、本実施の形態１、２の方法であると約１０分で学習が終了する。すなわち、９２．２５％学習時間を短縮することができる。
【０１２７】
さらに、比較例１、２の方法では、１画像のクラス認識するために３０秒かかっているのに対し、本実施の形態１、２の方法であると、数ミリ秒で画像１枚の認識結果を得ることができる。比較例１、２のように、オンラインで学習できないのに加えて、１枚の画像のクラス識別に３０秒という長い時間を要すると、例えばロボット等に当該システムを搭載してリアルタイムに画像を取得し、認識するようなことは不可能となる。
【０１２８】
なお、比較例３は、ＳＧＤ−ＳＶＭを利用したオンラインでの学習が可能な方法であり、学習時間、認識時間共に、本実施の形態１、２の方法と同等であるが、本実施の形態１、２のように、ＳＯＩＮＮを利用してないため、認識率が劣る。ここで、本実施例は、比較例１、２が提供している画像を元に実施しているが、認識率は、学習画像を増やせば向上すると考えられる。例えばさらなる教師画像にノイズが多く含まれている場合、本実施の形態１、２にかかる認識率は向上するものと考えられる。一方で、比較例３は、ＳＯＩＮＮを利用していないため、ノイズの影響が大きいと考えられ、学習時間の増加に対する認識率の向上は、本実施の形態１、２、の方法以下であると予想できる。
【０１２９】
以上、本実施の形態にかかる方法による属性識別器の学習により、比較例と同等の認識率で、かつ学習時間、認識時間を、９２．２５％削減することができた。
【０１３０】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【符号の説明】
【０１３１】
１０  属性識別器生成装置
１１  ラベリング部
１２  特徴量抽出部
１３  特徴量学習部
１５  分離境界学習部
１３１  勝者ノード抽出部
１３３  ノード挿入部
１３５  エッジ管理部
１３７  ノード重み更新部
１３９  ノード削除部
２００  クラス識別システム
２０１  属性識別器
２１０  属性認識部
２１１  ラベリング部
２１２  特徴量抽出部
２１７  属性出力部
２１９  クラス認識結果出力部
２２０  データセット
２２１  辞書データ
【図１】
2013025398.tif 000013
【図２】
2013025398.tif 000014
【図３】
2013025398.tif 000015
【図４】
2013025398.tif 000016
【図５】
2013025398.tif 000017
【図９】
2013025398.tif 000018
【図１２】
2013025398.tif 000019
【図１３】
2013025398.tif 000020
【図１４】
2013025398.tif 000021
【図６】
2013025398.tif 000022
【図７】
2013025398.tif 000023
【図８】
2013025398.tif 000024
【図１０】
2013025398.tif 000025
【図１１】
2013025398.tif 000026
【図１５】
2013025398.tif 000027