(57)【要約】    識別器学習装置（１００）は、参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得する対象取得部（１０１）と、サンプルベクトルと同じカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、かつ、サンプルベクトルとは異なるカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い外部最近傍参照ベクトルを特定する特定部（１０２）と、内部最近傍参照ベクトルと外部最近傍参照ベクトルとにより形成される識別境界とサンプルベクトルとの間の距離を用いて、当該処理対象の評価値を算出する算出部（１０３）と、当該処理対象の評価値に基づいて、元の参照ベクトルセットを当該処理対象で更新する更新部（１０４）と、を有する。
2014115362.tif 000002
【特許請求の範囲】
【請求項１】
参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得する対象取得部と、
サンプルベクトルと同じカテゴリに属する前記処理対象の参照ベクトルの中から、該サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、かつ、該サンプルベクトルとは異なるカテゴリに属する前記処理対象の参照ベクトルの中から、該サンプルベクトルに最も近い外部最近傍参照ベクトルを特定する特定部と、
前記内部最近傍参照ベクトルと前記外部最近傍参照ベクトルとにより形成される識別境界と前記サンプルベクトルとの間の距離を用いて、前記処理対象の評価値を算出する算出部と、
前記算出部により算出される前記処理対象の評価値に基づいて、元の参照ベクトルセット及び元の所属カテゴリ情報を前記処理対象で更新する更新部と、
を備える識別器学習装置。
【請求項２】
前記算出部は、前記サンプルベクトルが前記内部最近傍参照ベクトルより前記外部最近傍参照ベクトルに近い場合に、前記距離が長い程、低い評価を示し、前記サンプルベクトルが前記外部最近傍参照ベクトルより前記内部最近傍参照ベクトルに近い場合に、前記距離が長い程、高い評価を示すように、前記処理対象の評価値を算出する、
請求項１に記載の識別器学習装置。
【請求項３】
前記算出部は、前記サンプルベクトルが前記内部最近傍参照ベクトルより前記外部最近傍参照ベクトルに近い場合に、前記距離を負の値として算出し、前記サンプルベクトルが前記外部最近傍参照ベクトルより前記内部最近傍参照ベクトルに近い場合に、前記距離を正の値として算出し、算出された該距離を入力とするシグモイド関数の出力値に基づいて前記処理対象の評価値を算出する、
請求項２に記載の識別器学習装置。
【請求項４】
前記特定部は、複数のサンプルベクトルの各々に関し、前記内部最近傍参照ベクトル及び前記外部最近傍参照ベクトルをそれぞれ特定し、
前記算出部は、前記複数のサンプルベクトルの各々に関しそれぞれ算出される評価値の合計値を算出し、
前記更新部は、前記元の参照ベクトルセット及び前記元の所属カテゴリ情報に関し前記算出部で算出される評価値の合計値と、前記処理対象に関し前記算出部で算出される評価値の合計値とを比較し、該比較結果に基づいて、前記処理対象の更新を決める、
請求項１から３のいずれか１項に記載の識別器学習装置。
【請求項５】
前記算出部は、
前記複数のサンプルベクトルの各々に対する最近傍参照ベクトルの所属カテゴリ情報、及び、該各サンプルベクトルの所属カテゴリ情報に基づいて、前記複数のサンプルベクトルに対する前記処理対象の識別精度を算出し、該算出された識別精度と、指定される識別精度情報とに対応する補正値で前記複数のサンプルベクトルに対応する前記処理対象の評価値の合計値を補正する補正部、
を含む請求項４に記載の識別器学習装置。
【請求項６】
前記特定部は、以下の（式１）、（式２）、（式３）及び（式４）のいずれか１つを用いて、前記サンプルベクトルと前記参照ベクトルとの間の距離を算出する、
請求項１から５のいずれか１項に記載の識別器学習装置。
【数１】
2014115362.tif 000014
上記各式において、ベクトルｓｊは、前記サンプルベクトルを示し、ベクトルｒｉは前記参照ベクトルを示し、αｉ及びβｉは、参照ベクトルｒｉに対応する重み係数を示し、Σは、サンプルベクトルｓｊと参照ベクトルｒｉとの分散共分散行列を示す。
【請求項７】
前記対象取得部は、前記重み係数を前記処理対象として更に取得し、
前記特定部は、前記対象取得部により取得される前記重み係数を含む前記（式２）又は前記（式３）を用いて、前記サンプルベクトルと前記参照ベクトルとの間の距離を算出し、
前記更新部は、前記処理対象として取得される前記重み係数で元の重み係数を更に更新する、
請求項６に記載の識別器学習装置。
【請求項８】
少なくとも１つのコンピュータにより実行される識別器学習方法において、
参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得し、
サンプルベクトルと同じカテゴリに属する前記処理対象の参照ベクトルの中から、該サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、
前記サンプルベクトルとは異なるカテゴリに属する前記処理対象の参照ベクトルの中から、前記サンプルベクトルに最も近い外部最近傍参照ベクトルを特定し、
前記内部最近傍参照ベクトルと前記外部最近傍参照ベクトルとにより形成される識別境界と前記サンプルベクトルとの間の距離を用いて、前記処理対象の評価値を算出し、
前記算出された処理対象の評価値に基づいて、元の参照ベクトルセット及び元の所属カテゴリ情報を前記処理対象で更新する、
ことを含む識別器学習方法。
【請求項９】
少なくとも１つのコンピュータに識別器学習方法を実行させるプログラムにおいて、
前記識別器学習方法は、
参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得し、
サンプルベクトルと同じカテゴリに属する前記処理対象の参照ベクトルの中から、該サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、
前記サンプルベクトルとは異なるカテゴリに属する前記処理対象の参照ベクトルの中から、前記サンプルベクトルに最も近い外部最近傍参照ベクトルを特定し、
前記内部最近傍参照ベクトルと前記外部最近傍参照ベクトルとにより形成される識別境界と前記サンプルベクトルとの間の距離を用いて、前記処理対象の評価値を算出し、
前記算出された処理対象の評価値に基づいて、元の参照ベクトルセット及び元の所属カテゴリ情報を前記処理対象で更新する、
ことを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、最近傍識別器の学習技術に関する。
【背景技術】
【０００２】
代表的なパターン識別器の一つとして最近傍識別器（以降、ＮＮＣ（Nearest Neighbor Classifier）とも表記する）が知られている。ＮＮＣは、カテゴリに分類された参照ベクトル（テンプレート又はプロトタイプとも呼ばれる）を持ち、入力ベクトルとの距離が最も小さい参照ベクトルが属するカテゴリ（クラス）をその入力ベクトルの認識（識別）結果として出力する。ＮＮＣでは、参照ベクトル及び参照ベクトルが属するカテゴリを変更することで、２クラスの識別器や多クラスの識別器が構成され得る。【０００３】
ＮＮＣの識別境界面は、参照ベクトルによってボロノイ分割される特徴空間の境界面となる。この識別境界面を決める参照ベクトルを予め用意した学習サンプルを用いて学習することで、ＮＮＣの認識精度を向上させることができる。ＮＮＣの参照ベクトルの学習方法としては、学習ベクトル量子化（ＬＶＱ（Learning Vector Quantization））と呼ばれる方法（下記非特許文献１参照）やこの改良方法であるＧＬＶＱ（Generalized Learning Vector Quantization）と呼ばれる方法（下記非特許文献２参照）が知られている。これらの学習方法では、参照ベクトルがそれぞれ独自の基準に従って更新される。【０００４】
また、他のパターン識別器として、サポートベクトルマシン（ＳＶＭ（Support Vector Machine））が知られている（下記非特許文献３参照）。ＳＶＭは、識別境界面と学習サンプルとの間の距離（マージン）を最大化するように学習することで、過学習を抑制する。例えば、線形ＳＶＭは、識別境界が平面となるような２クラスの識別問題に対して適用され得る（下記非特許文献４参照）。この適用により、識別境界面と学習サンプルとの間のマージンを最大化するように学習が行われるため、高い識別性能を持つ識別器を得ることができる。下記特許文献１では、ＳＶＭの学習機能を利用した判別関数を学習用特徴情報と学習用判別結果情報とに用いて導出し、判別結果が誤っている誤判別特徴情報が当該判別関数に対して与える影響度合を示す影響係数を調整することで、当該判別関数を修正する手法が提案されている。【０００５】
また、マージン最大化を基準とするパターン識別器の学習方法として、カーネル技法を用いたＳＶＭもよく知られている（下記非特許文献５参照）。また、下記特許文献２では、学習時には連続ＨＭＭ（Hidden Markov Model）を用い、認識時には離散型ＨＭＭを用いる音声認識手法が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１８６２４３号公報
【特許文献２】特開平８−１１５０９９号公報
【非特許文献】
【０００７】
【非特許文献１】T. Kohonen、"The Neural Phonetic Typewriter"、IEEE Computer、Vol. 21、No.3、pp.11-22、1988
【非特許文献２】A. Sato and K. Yamada、"Generalized Learning Vector Quantization"、Advances in Neural Information Processing Systems 8、423-429、1996
【非特許文献３】R. O. Duda and P. E. Hart and D. G. Stork、"パターン識別"、 新技術コミュニケーションズ、pp.256-257、2001
【非特許文献４】R.-E. Fan, K.-W. Chang, X.-R. Wang, C.-J. Hsieh and C.-J. Lin、"LIBLINEAR: a library for linear classification"、Journal of Machine Learning Research、Vol.9、pp.1871-1874、2008
【非特許文献５】Chi-Chung Chang and Chih-Jen Lin、"LIBSVM: a library for support vector machines"、ACM Transactions on Intelligent Systems and Technology、Vol. 2, No. 3, Article 27、2011
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述のＬＶＱやＧＬＶＱのような学習方法では、過学習と呼ばれる現象が発生し、ＮＮＣの識別精度が劣化する可能性がある。これは、ＮＮＣの識別境界面と学習サンプルとの間のマージンを最大化することが保証されないからである。また、上述のＳＶＭは、識別境界となる平面を学習する方法であるため、ＮＮＣの参照ベクトルの学習に適用することはできない。同様に、上述のカーネル技法を用いたＳＶＭもＮＮＣの参照ベクトルの学習に適用することはできない。【０００９】
このように、上述のような方法では、ＮＮＣに対してマージンを最大化することを基準とする学習を行うことができないため、過学習を抑制することが難しく、結果、ＮＮＣの識別精度を向上させることが困難である。【００１０】
本発明は、このような事情に鑑みてなされたものであり、識別精度を向上させ得るＮＮＣの参照ベクトルの学習技術を提供することにある。
【課題を解決するための手段】
【００１１】
本発明の各側面では、上述した課題を解決するために、それぞれ以下の構成を採用する。【００１２】
第１の側面は、識別器学習装置に関する。第１の側面に係る識別器学習装置は、参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得する対象取得部と、サンプルベクトルと同じカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、かつ、サンプルベクトルとは異なるカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い外部最近傍参照ベクトルを特定する特定部と、内部最近傍参照ベクトルと外部最近傍参照ベクトルとにより形成される識別境界とサンプルベクトルとの間の距離を用いて、当該処理対象の評価値を算出する算出部と、算出部により算出される当該処理対象の評価値に基づいて、元の参照ベクトルセット及び元の所属カテゴリ情報を当該処理対象で更新する更新部と、を有する。【００１３】
第２の側面は、識別器学習方法に関する。第２の側面に係る識別器学習方法は、少なくとも１つのコンピュータにより実行され、参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得し、サンプルベクトルと同じカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、サンプルベクトルとは異なるカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い外部最近傍参照ベクトルを特定し、内部最近傍参照ベクトルと外部最近傍参照ベクトルとにより形成される識別境界とサンプルベクトルとの間の距離を用いて、当該処理対象の評価値を算出し、算出された当該処理対象の評価値に基づいて、元の参照ベクトルセット及び元の所属カテゴリ情報を当該処理対象で更新する、ことを含む。【００１４】
なお、本発明の他の側面としては、上記第２の側面の方法を少なくとも１つのコンピュータに実行させるプログラムであってもよいし、このようなプログラムを記録したコンピュータが読み取り可能な記録媒体であってもよい。この記録媒体は、非一時的な有形の媒体を含む。
【発明の効果】
【００１５】
上記各側面によれば、識別精度を向上させ得るＮＮＣの参照ベクトルの学習技術を提供することができる。
【図面の簡単な説明】
【００１６】
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。【００１７】
【図１】本発明の実施の形態に係る識別器学習装置の構成例を概念的に示す図である。
【図２】第１実施形態における最近傍識別器学習装置（ＮＮＣ学習装置）のハードウェア構成例を概念的に示す図である。
【図３】第１実施形態における最近傍識別器学習装置（ＮＮＣ学習装置）の処理構成例を概念的に示す図である。
【図４】ＮＮＣの識別境界を概念的に示す図である。
【図５】ＮＮＣのマージンを概念的に示す図である。
【図６】第１実施形態における最近傍識別器学習装置（ＮＮＣ学習装置）の動作例を示すフローチャートである。
【図７】第３実施形態における最近傍識別器学習装置（ＮＮＣ学習装置）の処理構成例を概念的に示す図である。
【図８】第３実施形態における最近傍識別器学習装置（ＮＮＣ学習装置）の動作例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について説明する。なお、以下に挙げる実施形態は例示であり、本発明は以下の実施形態の構成に限定されない。
【００１９】
図１は、本発明の実施の形態に係る識別器学習装置１００の構成例を概念的に示す図である。図１に示されるように、識別器学習装置１００は、参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得する対象取得部１０１と、サンプルベクトルと同じカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、かつ、サンプルベクトルとは異なるカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い外部最近傍参照ベクトルを特定する特定部１０２と、内部最近傍参照ベクトルと外部最近傍参照ベクトルとにより形成される識別境界とサンプルベクトルとの間の距離を用いて、当該処理対象の評価値を算出する算出部１０３と、算出部１０３により算出される当該処理対象の評価値に基づいて、元の参照ベクトルセット及び元の所属カテゴリ情報を当該処理対象で更新する更新部１０４と、を有する。
【００２０】
識別器学習装置１００は、例えば、後述する詳細実施形態における最近傍識別器学習装置１と同様のハードウェア構成を有し、その最近傍識別器学習装置１と同様にプログラムが処理されることで、上述の各処理部が実現される。
【００２１】
また、本発明の実施の形態に係る識別器学習方法は、上述の識別器学習装置１００のような少なくとも１つのコンピュータにより実行され、参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得し、サンプルベクトルと同じカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、サンプルベクトルとは異なるカテゴリに属する当該処理対象の参照ベクトルの中から、サンプルベクトルに最も近い外部最近傍参照ベクトルを特定し、内部最近傍参照ベクトルと外部最近傍参照ベクトルとにより形成される識別境界とサンプルベクトルとの間の距離を用いて、当該処理対象の評価値を算出し、算出された当該処理対象の評価値に基づいて、元の参照ベクトルセット及び元の所属カテゴリ情報を当該処理対象で更新する、ことを含む。但し、本識別器学習方法に含まれる各工程は、順不同に逐次的に実行されてもよいし、同時に実行されてもよい。
【００２２】
このように、本実施形態では、サンプルベクトルと、処理対象として取得される参照ベクトルセットとの関係から、その処理対象の評価値が算出され、この評価値に基づいて、ＮＮＣの参照ベクトルセット及びそれらの所属カテゴリ情報が学習される。ここで、「ベクトル」という用語は、大きさ及び向きを持つデータのみではなく、複数の要素から構成されるあらゆるデータを意味する。参照ベクトルセットの各参照ベクトルは、カテゴリにそれぞれ属しており、所属カテゴリ情報は、各参照ベクトルが属するカテゴリを示す。「サンプルベクトル」とは、処理対象の各参照ベクトルと同じ要素数を持つ学習用のデータであり、或るカテゴリに属する。処理対象及びサンプルベクトルは、識別器学習装置１００で生成されてもよいし、他の装置や可搬型記録媒体から取得されてもよい。
【００２３】
具体的には、処理対象の参照ベクトルの中から、サンプルベクトルと同じカテゴリに属し、かつ、サンプルベクトルに最も近い内部最近傍参照ベクトル（以降、ＩＮ−ＮＮ参照ベクトルと表記する）と、サンプルベクトルと異なるカテゴリに属し、かつ、サンプルベクトルに最も近い外部最近傍参照ベクトル（以降、ＥＸ−ＮＮ参照ベクトルと表記する）とが特定される。そして、ＩＮ−ＮＮ参照ベクトルとＥＸ−ＮＮ参照ベクトルとにより形成される識別境界とサンプルベクトルとの間の距離を用いて、当該処理対象の評価値が算出される。
【００２４】
従って、本実施形態によれば、学習用のサンプルベクトルと、参照ベクトルセットにおける識別境界との間の距離、即ち、マージンを最大化するように、ＮＮＣの参照ベクトルを学習することができる。結果、本実施形態によれば、ＮＮＣの識別精度を向上させることができる。
【００２５】
以下、上述の実施形態について更に詳細を説明する。以下には、詳細実施形態として第１実施形態から第３実施形態を例示する。以下の各実施形態は、上述の識別器学習装置１００及び識別器学習方法を最近傍識別器（ＮＮＣ）学習装置に適用した場合の例である。なお、上述の識別器学習装置１００及び識別器学習方法並びに下記の詳細実施形態で学習される識別器の用途は制限されない。当該識別器は、文字認識、顔認識、車両検出、音声識別など様々なパターン認識で用いられることができる。
【００２６】
［第１実施形態］
〔装置構成〕
図２は、第１実施形態における最近傍識別器学習装置（以降、ＮＮＣ学習装置と表記する）１のハードウェア構成例を概念的に示す図である。第１実施形態におけるＮＮＣ学習装置１は、いわゆるコンピュータであり、例えば、バス６で相互に接続される、ＣＰＵ（Central Processing Unit）２、メモリ３、入出力インタフェース（Ｉ／Ｆ）４、通信装置５等を有する。メモリ３は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ハードディスク、可搬型記憶媒体等である。入出力Ｉ／Ｆ４は、表示装置（図示せず）や入力装置（図示せず）等のようなユーザインタフェース装置と接続され得る。通信装置５は、ネットワーク（図示せず）を介して他の装置と通信を行う。本実施形態は、ＮＮＣ学習装置１のハードウェア構成を制限しない。
【００２７】
図３は、第１実施形態におけるＮＮＣ学習装置１の処理構成例を概念的に示す図である。第１実施形態におけるＮＮＣ学習装置１は、パラメータ設定部１１、学習サンプル保持部１２、特定部１３、算出部１４、更新部１５、最適パラメータ保持部１６等を有する。これら各処理部は、例えば、ＣＰＵ２によりメモリ３に格納されるプログラムが実行されることにより実現される。また、当該プログラムは、例えば、ＣＤ（Compact Disc）、メモリカード等のような可搬型記録媒体やネットワーク上の他のコンピュータから入出力Ｉ／Ｆ４を介してインストールされ、メモリ３に格納されてもよい。
【００２８】
パラメータ設定部１１は、処理対象のＮＮＣにおける参照ベクトルセット及びそれらの所属カテゴリ情報を設定する。パラメータ設定部１１により設定される処理対象は、Ｎ個（Ｎは２以上の整数）の参照ベクトルｒｉ（ｉは１以上Ｎ以下の整数）と、各参照ベクトルに対応するカテゴリｃｉとにより表わすことができる。上述の対象取得部１０１は、例えば、このようなパラメータ設定部１１により設定された処理対象を取得する。
【００２９】
例えば、パラメータ設定部１１は、下記参考文献に記載される、ＭＤＳ（Multi-Directional Search）、シンプレックス法、Alternating Directions Search等の方法に用いる手法で、ＮＮＣのパラメータである参照ベクトルを設定する。
参考文献１：V.J. Torczon, "On the convergence of the multidirectional search algorithm", SIAM Journal on Optimization, Vol. 1, pp.123-145 (1991).
参考文献２：N.J. Higham, "Optimization by direct search in matrix computations", SIAM Journal on Matrix Analysis and Applications, Vol. 14, No. 2, pp. 317-333 (1993).
パラメータ設定部１１は、学習用のサンプルベクトルをＫ平均（K-means）法によりクラスタリングすることで得られるクラスタの平均ベクトルを当該参照ベクトルに用いるようにしてもよい（下記参考文献３参照）。
参考文献３：R. O. Duda and P. E. Hart and D. G. Stork, "パターン識別", 新技術コミュニケーションズ, pp.528-529 (2001).
【００３０】
学習サンプル保持部１２は、学習用の複数のサンプルベクトルと、各サンプルベクトルの所属カテゴリ情報とを保持する。学習サンプル保持部１２により保持される情報は、Ｍ個（Ｍは２以上の整数）のサンプルベクトルｓｊ（ｊは１以上Ｍ以下の整数）と、各サンプルベクトルに対応するカテゴリｃｊとにより表わすことができる。ここで、サンプルベクトルｓｊと参照ベクトルｒｉとは同じ要素数を持つ。
【００３１】
最適パラメータ保持部１６は、ＮＮＣ学習装置１による学習の結果得られる、ＮＮＣの最適なパラメータとなる、参照ベクトルセットとそれらの所属カテゴリ情報とを保持する。
【００３２】
特定部１３は、学習サンプル保持部１２に保持される複数のサンプルベクトルの各々に関し、上述の特定部１０２と同様に、ＩＮ−ＮＮ参照ベクトル及びＥＸ−ＮＮ参照ベクトルをそれぞれ特定する。例えば、特定部１３は、参照ベクトルｒｉとサンプルベクトルｓｊとの間の各距離をそれぞれ算出し、算出された各距離に基づいて、ＩＮ−ＮＮ参照ベクトル及びＥＸ−ＮＮ参照ベクトルを特定する。本実施形態では、同じ要素数を持つサンプルベクトルｓｊと参照ベクトルｒｉとの間の距離は、以下の（式１）に示されるように二乗距離を用いて算出される。
【数１】
2014115362.tif 000003
【００３３】
算出部１４は、サンプルベクトルがＩＮ−ＮＮ参照ベクトルよりＥＸ−ＮＮ参照ベクトルに近い場合に、当該識別境界とサンプルベクトルとの間の距離が長い程、低い評価を示し、サンプルベクトルがＥＸ−ＮＮ参照ベクトルよりＩＮ−ＮＮ参照ベクトルに近い場合に、当該距離が長い程、高い評価を示すように、処理対象の評価値を算出する。全ての参照ベクトルの中でサンプルベクトルに対して最近傍となる参照ベクトルのカテゴリが、サンプルベクトルのカテゴリと同じであれば、そのサンプルベクトルは正しく識別されるため、このときの距離（マージン）は最大化されることが望ましい。よって、この場合、上述のように、算出部１４は、当該距離が長い程、高い評価を示すように、処理対象の評価値を算出する。一方、全ての参照ベクトルの中でサンプルベクトルに対して最近傍となる参照ベクトルのカテゴリが、サンプルベクトルのカテゴリと異なれば、そのサンプルベクトルは誤って識別されるため、このときの距離（マージン）は最小化されることが望ましい。よって、この場合、上述のように、算出部１４は、当該距離が長い程、低い評価を示すように、処理対象の評価値を算出する。本実施形態は、このような技術的思想を具現化する算出手法であれば、算出部１４による、当該識別境界とサンプルベクトルとの間の距離から処理対象の評価値を算出する算出手法を制限しない。
【００３４】
例えば、算出部１４は、上述のような技術的思想を具現化する次のような算出手法を用いることができる。算出部１４は、サンプルベクトルがＩＮ−ＮＮ参照ベクトルよりＥＸ−ＮＮ参照ベクトルに近い場合に、当該距離を負の値として算出し、サンプルベクトルがＥＸ−ＮＮ参照ベクトルよりＩＮ−ＮＮ参照ベクトルに近い場合に、当該距離を正の値として算出し、算出された距離を入力とするシグモイド関数の出力値に基づいて処理対象の評価値を算出する。以下の（式２）は、当該距離の算出手法の一例を示し、以下の（式３）は、シグモイド関数を示す。以下の式において、ｒｗはＩＮ−ＮＮ参照ベクトルを示し、ｒｂはＥＸ−ＮＮ参照ベクトルを示す。（式３）における係数σは、予め実験的に設定される正の定数である。
【数２】
2014115362.tif 000004
【００３５】
算出部１４は、学習サンプル保持部１２に保持される複数のサンプルベクトルの各々に関しそれぞれ算出される評価値の合計値を算出し、この合計値を当該処理対象の最終評価値とする。上述の（式２）及び（式３）の例によれば、算出部１４は、次の（式４）を用いて最終評価値Ｊを算出する。
【数３】
2014115362.tif 000005
【００３６】
ここで、ＮＮＣの識別境界について図４を用いて説明する。図４は、ＮＮＣの識別境界を概念的に示す図である。図４の例では、参照ベクトルｒ１、ｒ２及びｒ３がカテゴリＣＡに属し、参照ベクトルｒ４及びｒ５がカテゴリＣＢに属する。ＮＮＣにおける特徴空間は、図４に示されるように、参照ベクトルによってボロノイ領域に分割される。図４では、参照ベクトルｒｉによって分割された領域の境界（ボロノイ境界）が、実線Ｂ１５、Ｂ１４、Ｂ２４及びＢ３４、並びに、破線Ｂ１２、Ｂ２３及びＢ４５で示されている。各境界は、各参照ベクトルが占める領域の境界であり、領域内に位置するベクトルは、その領域の参照ベクトルとの距離が最も小さい。即ち、領域内に位置するベクトルの最近傍参照ベクトルは、その領域の参照ベクトルとなる。例えば、破線Ｂ２３、実線Ｂ２４及び破線Ｂ１２で囲まれた領域内に位置する任意のベクトルの最近傍参照ベクトルは、参照ベクトルｒ２となる。
【００３７】
ボロノイ境界は、ベクトル間距離に二乗距離が用いられる場合、隣接する参照ベクトル間の中点に垂直な平面によって構成される。例えば、破線Ｂ１２のボロノイ境界は、参照ベクトルｒ１と参照ベクトルｒ２との中点に垂直な平面となる。但し、図４は２次元で表わされているため、破線Ｂ１２のボロノイ境界は、参照ベクトルｒ１と参照ベクトルｒ２とを結ぶ線分の垂直二等分線となる。識別境界は、参照ベクトルが作るボロノイ境界の中の、所属カテゴリが異なる参照ベクトル間のボロノイ境界で形成される。図４の例では、識別境界は、実線Ｂ１５、Ｂ１４、Ｂ２４及びＢ３４で示される。
【００３８】
次に、マージンについて図５を用いて説明する。図５は、ＮＮＣのマージンを概念的に示す図である。マージンは、サンプルベクトルｓｊに最も近い識別境界との距離である。サンプルベクトルｓｊに最も近い識別境界は、サンプルベクトルｓｊと同じカテゴリに属する参照ベクトルの中の、サンプルベクトルｓｊと最も近い参照ベクトル（ＩＮ−ＮＮ参照ベクトル）ｒｗと、サンプルベクトルｓｊと異なるカテゴリに属する参照ベクトルの中の、サンプルベクトルｓｊと最も近い参照ベクトル（ＥＸ−ＮＮ参照ベクトル）ｒｂとが構成するボロノイ境界Ｂｗｂである。マージンｍ（ｓｊ）は、このボロノイ境界Ｂｗｂからサンプルベクトルｓｊへの距離である。即ち、マージンｍ（ｓｊ）は、サンプルベクトルｓｊから、ＩＮ−ＮＮ参照ベクトルとＥＸ−ＮＮ参照ベクトルとの間の中点と垂直な平面（識別境界面Ｂｗｂ）への距離であり、上述の（式２）等により算出可能である。
【００３９】
更新部１５は、最適パラメータ保持部１６に保持される参照ベクトルセット及びそれらの所属カテゴリ情報に関する最終評価値と、パラメータ設定部１１で設定された処理対象に関し算出部１４で算出された最終評価値とを比較し、高い評価値を持つ参照ベクトルセット及びそれらの所属カテゴリ情報で最適パラメータ保持部１６に保持されるものを更新する。これにより、処理対象の最終評価値が最適パラメータ保持部１６で保持されるものの最終評価値よりも小さい場合には、最適パラメータ保持部１６の更新は行われない。
【００４０】
ＮＮＣ学習装置１は、パラメータ設定部１１に所定回数分新たな処理対象を設定させ、各処理対象に対して特定部１３、算出部１４及び更新部１５をそれぞれ動作させることで、最適パラメータ保持部１６に保持される参照ベクトルセット及びそれらの所属カテゴリ情報を逐次更新する。また、ＮＮＣ学習装置１は、更新部１５により所定回数以上最適パラメータ保持部１６の情報が更新されない場合に、学習処理を終了するようにしてもよい。
【００４１】
〔動作例〕
以下、第１実施形態における識別器学習方法について図６を用いて説明する。図６は、第１実施形態におけるＮＮＣ学習装置１の動作例を示すフローチャートである。以下の説明では、ＮＮＣ学習装置１が各工程の実行主体となるが、ＮＮＣ学習装置１に含まれる上述の各処理部が実行主体となってもよい。
【００４２】
ＮＮＣ学習装置１は、処理対象を設定する（Ｓ６０）。処理対象は、ＮＮＣのパラメータである参照ベクトルセット及びそれらの所属カテゴリ情報である。ＮＮＣ学習装置１は、パラメータ設定部１１に関し説明された上述の方法により、当該処理対象を設定する。（Ｓ６０）で設定される処理対象は、Ｎ個（Ｎは２以上の整数）の参照ベクトルｒｉ（ｉは１以上Ｎ以下の整数）と、各参照ベクトルに対応するカテゴリｃｉとにより表わすことができる。
【００４３】
更に、ＮＮＣ学習装置１は、サンプルベクトルｓ１を取得する（Ｓ６１）。全てのサンプルベクトルｓｊは、参照ベクトルｒｉと同じ数の要素をそれぞれ持つ、Ｍ個（Ｍは２以上の整数）のサンプルベクトルｓｊ（ｊは１以上Ｍ以下の整数）と表すことができる。（Ｓ６１）では全てのサンプルベクトルｓｊの中の１つが取得される。
【００４４】
ＮＮＣ学習装置１は、サンプルベクトルｓ１と各参照ベクトルｒｉとの距離ｄ（ｓ１、ｒｉ）をそれぞれ算出する（Ｓ６２）。本実施形態では、上記（式１）で示される二乗距離を用いて距離ｄ（ｓ１、ｒｉ）が算出される。
【００４５】
ＮＮＣ学習装置１は、（Ｓ６２）で算出された距離ｄ（ｓ１、ｒｉ）に基づいて、サンプルベクトルｓ１に対するＩＮ−ＮＮ参照ベクトルｒｗ及びＥＸ−ＮＮ参照ベクトルｒｂを特定する（Ｓ６３、Ｓ６４）。ＩＮ−ＮＮ参照ベクトルｒｗは、サンプルベクトルｓ１と同じカテゴリに属する参照ベクトルｒｉの中の１つであり、ＥＸ−ＮＮ参照ベクトルｒｂは、サンプルベクトルｓ１と異なるカテゴリに属する参照ベクトルｒｉの中の１つである。
【００４６】
ＮＮＣ学習装置１は、ＩＮ−ＮＮ参照ベクトルｒｗとＥＸ−ＮＮ参照ベクトルｒｂとから形成される識別境界とサンプルベクトルｓ１との距離であるマージンｍ（ｓ１）を算出する（Ｓ６５）。
ＮＮＣ学習装置１は、算出されたマージンｍ（ｓ１）をシグモイド関数のような利得関数ｇ（ｍ）に入力することにより、マージンｍ（ｓ１）の評価値ｇ（ｍ（ｓ１））を算出する（Ｓ６６）。
【００４７】
（Ｓ６５）及び（Ｓ６６）により、ＮＮＣ学習装置１は、サンプルベクトルｓ１がＩＮ−ＮＮ参照ベクトルｒｗよりＥＸ−ＮＮ参照ベクトルｒｂに近い場合に、当該識別境界とサンプルベクトルｓ１との間の距離が長い程、低い評価を示し、サンプルベクトルｓ１がＥＸ−ＮＮ参照ベクトルｒｂよりＩＮ−ＮＮ参照ベクトルｒｗに近い場合に、当該距離が長い程、高い評価を示すように、マージンｍ（ｓ１）の評価値ｇ（ｍ（ｓ１））を算出する。例えば、ＮＮＣ学習装置１は、（Ｓ６５）において、サンプルベクトルｓ１がＩＮ−ＮＮ参照ベクトルｒｗよりＥＸ−ＮＮ参照ベクトルｒｂに近い場合に、当該マージンｍ（ｓ１）を負の値として算出し、サンプルベクトルｓ１がＥＸ−ＮＮ参照ベクトルｒｂよりＩＮ−ＮＮ参照ベクトルｒｗに近い場合に、当該マージンｍ（ｓ１）を正の値として算出し、（Ｓ６６）において、算出されたマージンｍ（ｓ１）をシグモイド関数ｇ（ｍ）に入力することにより、マージンｍ（ｓ１）の評価値ｇ（ｍ（ｓ１））を算出するようにしてもよい。
【００４８】
ＮＮＣ学習装置１は、算出された評価値ｇ（ｍ（ｓ１））を最終評価値Ｊに加算する（Ｓ６６）。
【００４９】
ＮＮＣ学習装置１は、未処理のサンプルベクトルｓｊが未だ存在するか否かを判定する（Ｓ６７）。ＮＮＣ学習装置１は、ｊがＭ以下の場合、即ち、未処理のサンプルベクトルｓｊが未だ存在する場合には（Ｓ６７；ＹＥＳ）、未処理のサンプルベクトルｓｊ（ｊ＝ｊ＋１）を取得する（Ｓ６８）。ここでは、未処理のサンプルベクトルｓ２が取得される。以降、サンプルベクトルｓ２に関し、サンプルベクトルｓ１のときと同様に、（Ｓ６２）から（Ｓ６６）が実行される。これにより、（Ｓ６６）において、サンプルベクトルｓ２に関する評価値ｇ（ｍ（ｓ２））が最終評価値Ｊに更に加算される。このような処理が全てのサンプルベクトルｓｊに対してそれぞれ実行される。
【００５０】
ＮＮＣ学習装置１は、全てのサンプルベクトルｓｊに関する評価値ｇ（ｍ（ｓｊ））の合計が最終評価値Ｊとして算出されると（Ｓ６７；ＮＯ）、その最終評価値Ｊが、元の参照ベクトルセット及びそれらの所属カテゴリ情報に関し算出された最終評価値よりも高いか否かを判断する（Ｓ６９）。ＮＮＣ学習装置１は、最終評価値Ｊが向上している場合（Ｓ６９；ＹＥＳ）、（Ｓ６０）で設定された処理対象で最適パラメータを更新する（Ｓ７０）。即ち、最終評価値Ｊが向上している場合（Ｓ６９；ＹＥＳ）、（Ｓ６０）で設定された参照ベクトルセット及びそれらの所属カテゴリ情報が最適パラメータとされる。一方、ＮＮＣ学習装置１は、最終評価値Ｊが向上していない場合（Ｓ６９；ＮＯ）、（Ｓ６０）で設定された処理対象が現状の最適パラメータよりも劣っているため、最適パラメータを更新しない。
【００５１】
ＮＮＣ学習装置１は、学習終了か否かを判断する（Ｓ７１）。学習終了は、例えば、上述のような処理の反復回数が所定回数に達したこと、上述のような処理が所定回数以上繰り返されても最終評価値Ｊが向上しないこと（Ｓ６９；ＮＯ）などを基準に判断される。ＮＮＣ学習装置１は、学習終了でない場合（Ｓ７１；ＮＯ）、（Ｓ６０）で新たな処理対象を設定し、この新たな処理対象に対して（Ｓ６０）以降を実行する。
【００５２】
〔第１実施形態の作用及び効果〕
上述したように第１実施形態では、処理対象に対して、複数のサンプルベクトルの各々のマージンの評価値の合計が最終評価値として算出され、最終評価値が向上する場合に、その処理対象でＮＮＣの最適パラメータが更新される。また、各マージンの評価値は、サンプルベクトルの最近傍参照ベクトルがサンプルベクトルと同じカテゴリに属する場合に、識別境界とサンプルベクトルとの間の距離が長い程、高い値に設定され、サンプルベクトルの最近傍参照ベクトルがサンプルベクトルと異なるカテゴリに属する場合に、当該距離が長い程、低い値に設定される。
【００５３】
従って、第１実施形態によれば、ＮＮＣの参照ベクトルをマージンを最大化するという基準で学習することができ、ひいては、ＮＮＣの識別精度を向上させることができる。
【００５４】
［第２実施形態］
上述の第１実施形態では、同じ要素数を持つサンプルベクトルｓｊと参照ベクトルｒｉとの間の距離が二乗距離を用いて算出された。第２実施形態では、二乗距離に対し重み付けすることで、当該距離を算出する。以下、第２実施形態におけるＮＮＣ学習装置１について、第１実施形態と異なる内容を中心に説明する。以下の説明では、第１実施形態と同様の内容については適宜省略する。
【００５５】
まず、ＮＮＣにおけるパターンの分布と識別境界との関係について説明する。中心位置のみが異なりそれ以外が等しい分布関数で等方的に分布するパターンの場合、その識別境界は平面となる。例えば、カテゴリＣＡとカテゴリＣＢとのｍ次元のベクトルｘがそれぞれ、次の２つの正規分布ｐＡ及びｐＢに基づいて、分布する場合を考える。以下の式において、Σは分散共分散行列を示し、μは平均ベクトルを示す。
【数４】
2014115362.tif 000006
【００５６】
ここで、ΣＡがΣＢと同一であり、ΣＡ及びΣＢが単位行列Ｉであれば、カテゴリＣＡとカテゴリＣＢとは、等方的な正規分布となる。この分布に対する識別を行うとき、最も識別誤りが少なくなる識別境界は、ｐＡとｐＢとが等しくなる境界であり、平均ベクトルμＡと平均ベクトルμＢとの中心点を通り、平均ベクトルμＡと平均ベクトルμＢとを結ぶ直線と直交する平面である。つまり、当該分布ｐＡとｐＢとからなるパターンを識別する理想的なＮＮＣは、カテゴリＣＡの参照ベクトルがμＡであり、カテゴリＣＢの参照ベクトルがμＢのときである。
【００５７】
しかしながら、ΣＡがΣＢと異なる場合、最も識別誤りが小さくなる識別境界は、必ずしも、上記のような平均ベクトル間の中点を通り、平均ベクトル間を結ぶ線分と直交する平面とはならない。これは、例えば、カテゴリＣＡ及びカテゴリＣＢの各分散がΣＡ＝ｓＡＩとなり、かつ、ΣＢ＝ｓＢＩとなる分布の場合である。
【数５】
2014115362.tif 000007
【００５８】
このときの最も誤りが小さくなる識別境界面は、当該分布ｐＡとｐＢとが等しくなる面である。当該分布ｐＡとｐＢの対数尤度は以下の式で示される。
【数６】
2014115362.tif 000008
【００５９】
ｐＡとｐＢとが等しくなる識別面は、ｄＡとｄＢとが等しくなる識別面であるので、この識別面は、超二次曲面であることがわかる。上述の第１実施形態は、二乗距離を用いており、識別面は平面（参照ベクトルと参照ベクトルとの中点を通り、参照ベクトル間を結ぶ直線と直交する平面）となるため、超二次曲面を直接表現できない。このため、二乗距離を用いる場合、より多くの参照ベクトルを用いて、複数の識別面を設定し、超二次曲面を近似表現することが望まれる。しかしながら、これでは、ＮＮＣの識別精度の劣化や、ＮＮＣに必要な参照ベクトル数の増大や、処理速度の低下をもたらすこととなる。
【００６０】
このような問題に対しては、距離関数を変更することで、より少ない参照ベクトルでＮＮＣを構成することが可能となる。このような問題は、例えば、距離関数として以下の（式５）を用いることで、解決可能である。以降、下記（式５）は、複合的重み付け二乗距離（ＣＷＰ（Compoundly Weighted Power）距離）と表記される。このＣＷＰ距離では、重み係数αｉ及びβｉにより二乗距離が重み付けされる。
【数７】
2014115362.tif 000009
【００６１】
ＣＷＰ距離を用いた場合の理想的なＮＮＣは、カテゴリＣＡ及びＣＢに対する参照ベクトルはそれぞれ１つであり、カテゴリＣＡの参照ベクトルがｒＡ＝μＡであり、参照ベクトルｒＡとの距離を、αＡ＝ｓＡ、βＡ＝−２ｌｏｇｋＡを用いて計算し、カテゴリＣＢの参照ベクトルがｒＢ＝μＢであり、参照ベクトルｒＢとの距離をαＢ＝ｓＢ、βＢ＝−２ｌｏｇｋＢを用いて計算する場合である。つまり、距離関数として二乗距離ではなく、ＣＷＰ距離を用いることで、２つの参照ベクトルで理想的なＮＮＣを構成することができる。
【００６２】
また、距離関数として下記（式６）を用いることで、分散が等しく、事前確率が異なる分布をするパターンの識別に適したＮＮＣを構成することもできる。以降、下記（式６）は、加算的重み付け二乗距離（ＡＷＰ（Additively Weighted Power）距離）と表記される。このＡＷＰ距離では、重み係数βｉにより二乗距離が重み付けされる。
【数８】
2014115362.tif 000010
【００６３】
第２実施形態におけるＮＮＣ学習装置１は、同じ要素数を持つサンプルベクトルｓｊと参照ベクトルｒｉとの間の距離をＣＷＰ距離又はＡＷＰ距離を用いて算出する。
【００６４】
〔装置構成〕
第２実施形態におけるＮＮＣ学習装置１の装置構成は、図２及び図３に示される第１実施形態と同様である。第２実施形態では、以下に示す処理部の処理内容が第１実施形態と異なる。
【００６５】
パラメータ設定部１１は、参照ベクトルセット及びそれらの所属カテゴリ情報に加えて、ベクトル間距離の算出に用いられる重み係数を当該処理対象として更に設定する。距離関数としてＣＷＰ距離（上記（式５））が用いられる場合、パラメータ設定部１１は、重み係数αｉ及びβｉを処理対象として更に設定し、距離関数としてＡＷＰ距離（上記（式６））が用いられる場合、重み係数βｉを処理対象として更に設定する。パラメータ設定部１１は、重み係数αｉ及びβｉを参照ベクトル毎にそれぞれ設定する。
【００６６】
特定部１３は、パラメータ設定部１１で設定された重み係数を含むＣＷＰ距離又はＡＷＰ距離を用いて、サンプルベクトルｓｊと参照ベクトルｒｉとの間の距離を算出する。また、ＣＷＰ距離では識別境界が超二次曲面となるため、例えば、特定部１３は、サンプルベクトルｓｊと識別境界との距離ｍ（ｓｊ）を次の式により算出する。以下の式において、ｄ（ｓｊ、ｒｗ）＜ｄ（ｓｊ、ｒｂ）の場合とは、サンプルベクトルがＥＸ−ＮＮ参照ベクトルよりＩＮ−ＮＮ参照ベクトルに近い場合を示し、それ以外とは、サンプルベクトルがＩＮ−ＮＮ参照ベクトルよりＥＸ−ＮＮ参照ベクトルに近い場合を示す。
【数９】
2014115362.tif 000011
【００６７】
また、ＡＷＰ距離を用いる場合には、例えば、特定部１３は、サンプルベクトルｓｊと識別境界との距離ｍ（ｓｊ）を次の式により算出する。
【数１０】
2014115362.tif 000012
【００６８】
最適パラメータ保持部１６は、ＮＮＣの最適パラメータとして参照ベクトルセット及びそれらの所属カテゴリ情報と共に、上記重み係数を保持する。
【００６９】
更新部１５は、最適パラメータ保持部１６を更新する際に、処理対象として設定されている重み係数を更に最適パラメータ保持部１６に反映させる。
【００７０】
〔動作例〕
以下、第２実施形態における識別器学習方法について図６を用いて説明する。
（Ｓ６０）において、ＮＮＣ学習装置１は、処理対象として距離関数に用いる重み係数を更に設定する。（Ｓ６２）において、ＮＮＣ学習装置１は、ＣＷＰ距離又はＡＷＰ距離を用いて、サンプルベクトルｓ１と各参照ベクトルｒｉとの距離ｄ（ｓ１、ｒｉ）をそれぞれ算出する。（Ｓ７０）において、ＮＮＣ学習装置１は、（Ｓ６０）で設定された処理対象としての、参照ベクトルセット及びそれらの所属カテゴリ情報に加えて重み係数で、当該最適パラメータを更新する。
【００７１】
〔第２実施形態における作用及び効果〕
このように、第２実施形態では、サンプルベクトルｓ１と各参照ベクトルｒｉとの距離を算出するために、二乗距離を重み係数で重み付けするＡＷＰ距離又はＣＷＰ距離が用いられる。そして、第２実施形態では、ＮＮＣのパラメータである参照ベクトルセット及びそれらの所属カテゴリ情報に加えて、距離関数に用いられる重み係数も学習され最適化される。
【００７２】
これにより、第２実施形態によれば、様々なパターン分布を有するＮＮＣの参照ベクトルの学習が可能となる。即ち、第２実施形態によれば、様々なパターン分布を有するＮＮＣの認識精度を向上させることができる。更に、第２実施形態によれば、ＣＷＰ距離やＡＷＰ距離を用いてベクトル間距離を算出することにより、より少ない参照ベクトルでＮＮＣを構成することができる。
【００７３】
［第３実施形態］
例えば、顔などの物体の検出を行うパターン識別問題を例示する。この問題をパターン識別器で判定する場合、パターン識別は、検出対象の物体（例えば、顔）と、検出対象でない非物体（例えば、背景など）との２クラスの識別問題として処理される。つまり、パターン識別器は入力データに対して、物体クラスか、非物体クラスかの判定を行う。物体検出における代表的な識別精度の尺度としては、検出漏れ率と過剰検出率とが存在する。検出漏れ率とは、物体を検出できない誤り率であり、過剰検出率とは、非物体を検出してしまう誤り率である。一般的には、検出漏れ率と過剰検出率とは、トレードオフの関係にある。検出漏れ率が小さくなるように調整すると、過剰検出率が大きくなり、逆に、過剰検出率が小さくなるように調整すると、検出漏れ率が大きくなる。物体検出では、過剰検出率を或る値に設定した上で検出漏れを最小にしたい場合、検出漏れ率を或る値に設定した上で過剰検出を最小にしたい場合、又は、過剰検出率と検出漏れ率を同じにしたい場合などがある。
【００７４】
そこで、第３実施形態では、検出漏れ率、過剰検出率等のような識別精度を指定された値に近づけるように、ＮＮＣの参照ベクトルを学習する。以下、第３実施形態におけるＮＮＣ学習装置１について、第１実施形態及び第２実施形態と異なる内容を中心に説明する。以下の説明では、第１実施形態及び第２実施形態と同様の内容については適宜省略する。
【００７５】
〔装置構成〕
図７は、第３実施形態におけるＮＮＣ学習装置１の処理構成例を概念的に示す図である。第３実施形態におけるＮＮＣ学習装置１では、算出部１４が補正部２１を有する。補正部２１も他の処理部と同様に、例えば、ＣＰＵ２によりメモリ３に格納されるプログラムが実行されることにより実現される。なお、図７の例では、補正部２１は、算出部１４の内部に存在する例が示されるが、算出部１４とは異なる処理部として実現されてもよい。
【００７６】
補正部２１は、サンプルベクトルｓｊの各々に対する最近傍参照ベクトルの所属カテゴリ情報、及び、各サンプルベクトルｓｊの所属カテゴリ情報に基づいて、学習サンプル保持部１２に保持されるサンプルベクトルｓｊに対する、パラメータ設定部１１で設定された処理対象の識別精度を算出し、この算出された識別精度と、指定される識別精度情報とに対応する補正値で当該サンプルベクトルｓｊに対応する処理対象の最終評価値を補正する。指定される識別精度情報は、入力画面等に基づいて入力部等をユーザが操作することにより入力されてもよいし、可搬型記録媒体、他のコンピュータ等から入出力Ｉ／Ｆ４を経由して取得されてもよい。指定される識別精度情報は、所望の識別精度を示し、例えば、所望の検出漏れ率、所望の過剰検出率、又は、検出漏れ率と過剰検出率とを同じにすることの要求を示す。
【００７７】
以下、補正部２１の具体例について説明する。但し、補正部２１は以下のような具体例のみに制限されない。以下では、ＮＮＣ学習装置１の学習対象となるＮＮＣが物体検出のパターン認識に用いられる形態が例示される。
【００７８】
物体検出のためのＮＮＣの学習では、物体クラス及び非物体クラスのいずれか一方に属する複数のサンプルベクトルが用いられる。このときの識別誤りには、検出漏れ及び過剰検出の２つのタイプがあり得る。検出漏れは、物体クラスのサンプルベクトルが非物体クラスに識別される識別誤りを意味する。よって、物体クラスのサンプルベクトルの最近傍参照ベクトルが非物体クラスに属する場合に、そのサンプルベクトルは当該検出漏れに該当する。一方、過剰検出は、非物体クラスのサンプルベクトルが物体クラスに識別される識別誤りを意味する。よって、非物体クラスのサンプルベクトルの最近傍参照ベクトルが物体クラスに属する場合に、そのサンプルベクトルは当該過剰検出に該当する。
【００７９】
補正部２１は、所望の検出漏れ率が識別精度情報として指定される場合、学習サンプル保持部１２に保持されるサンプルベクトルの数に対する、当該検出漏れに該当するサンプルベクトルの数を検出漏れ率Ｅｏｂｊとして算出する。また、補正部２１は、所望の過剰検出率が識別精度情報として指定される場合、学習サンプル保持部１２に保持されるサンプルベクトルの数に対する、当該過剰検出に該当するサンプルベクトルの数を過剰検出率Ｅｂｇとして算出する。補正部２１は、算出部１４が上記（式２）を用いてマージンｍ（ｓｊ）を算出する場合、マージンｍ（ｓｊ）の値が正か負かによって、サンプルベクトルｓｊが検出漏れ又は過剰検出に該当するか、若しくは、識別成功に該当するかを判断することができる。
【００８０】
補正部２１は、算出部１４により上述の各実施形態のように最終評価値Ｊが算出されると、上述のように算出された識別精度と指定される識別精度情報とに対応する補正値で最終評価値Ｊを補正する。この補正は、指定される識別精度情報に対応する、次のような式で表すことができる。下記（式７）は、指定される識別精度情報が所望の検出漏れ率ｅを示す場合に用いられ、下記（式８）は、指定される識別精度情報が所望の過剰検出率ｅを示す場合に用いられ、下記（式９）は、指定される識別精度情報が検出漏れ率と過剰検出率とを同じにすることの要求を示す場合に用いられる。以下の各式におけるλは、負の値であって、その絶対値がＪの値に比べて十分大きい値に予め設定される。
Ｊ'＝Ｊ＋λ（Ｅｏｂｊ−ｅ）２      （式７）
Ｊ'＝Ｊ＋λ（Ｅｂｇ−ｅ）２      （式８）
Ｊ'＝Ｊ＋λ（Ｅｏｂｊ−Ｅｂｇ）２      （式９）
【００８１】
〔動作例〕
以下、第３実施形態における識別器学習方法について図８を用いて説明する。図８は、第３実施形態におけるＮＮＣ学習装置１の動作例を示すフローチャートである。図８では、図６と同様の工程については図６と同様の符号が付されている。
【００８２】
ＮＮＣ学習装置１は、（Ｓ６３）、（Ｓ６４）及び（Ｓ６５）における処理により、識別誤りを検出する。識別誤りとして、上述のように検出漏れ及び過剰検出の少なくとも一方が検出されてもよいし、サンプルベクトルｓｊの最近傍参照ベクトルがＥＸ−ＮＮ参照ベクトルであることが検出されてもよい。
【００８３】
ＮＮＣ学習装置１は、全てのサンプルベクトルｓｊに関する評価値ｇ（ｍ（ｓｊ））の合計が最終評価値Ｊとして算出されると（Ｓ６７；ＮＯ）、指定される識別精度情報に基づいて、当該サンプルベクトルｓｊに対する処理対象の識別精度を算出する（Ｓ８１）。例えば、ＮＮＣ学習装置１は、識別精度として、全サンプルベクトルｓｊの数に対する、最近傍参照ベクトルがＥＸ−ＮＮ参照ベクトルであるサンプルベクトルｓｊの数の割合を算出する。また、上述のように、ＮＮＣ学習装置１は、検出漏れ率及び過剰検出率を算出してもよい。
【００８４】
ＮＮＣ学習装置１は、（Ｓ８１）で算出された識別精度と、指定される識別精度情報とに対応する補正値で、最終評価値Ｊを補正する（Ｓ８２）。そして、ＮＮＣ学習装置１は、この補正された最終評価値Ｊ'に基づいて、最終評価値Ｊ'が向上しているか否かを判定する（Ｓ６９）。
【００８５】
〔第３実施形態における作用及び効果〕
このように、第３実施形態では、学習用のサンプルベクトルに対する処理対象の識別精度が算出され、この識別精度と指定された識別精度情報とに対応する補正値で、処理対象の最終評価値が補正される。即ち、第３実施形態では、ＮＮＣの識別精度が指定した値に近づくように、参照ベクトルセット及びそれらの所属カテゴリ情報が更新される。従って、第３実施形態によれば、検出誤り率や過剰検出率等のような識別精度を所望の値に制御することができる。
【００８６】
［変形例］
上述の各実施形態では、距離関数として、二乗距離、ＣＷＰ距離及びＡＷＰ距離を用いる例が示されたが、それ以外の距離関数が用いられてもよい。例えば、等方的でない分布を持つパターンの識別の場合には、以下の（式１０）を距離関数として用いるようにしてもよい。以下の（式１０）は、異方性重み付け距離と表記される。以下の式においてΣは、サンプルベクトルｓｊと参照ベクトルｒｉとの分散共分散行列である。
【数１１】
2014115362.tif 000013
【００８７】
異方性重み付け距離を用いた場合も識別境界は超二次曲面となり、サンプルベクトルｓｊと超二次曲面との距離は、以下の参考文献に記載された方法で算出することができる。
参考文献４：David Eberly, "Distance from point to a general quadratic curve or a general quadric surface", http://www.geometrictools.com/Documentation/DistancePointToQuadratic.pdf (1999)
【００８８】
また、上述の各実施形態では、ＮＮＣ学習装置１が、パラメータ設定部１１、学習サンプル保持部１２及び最適パラメータ保持部１６を有していたが、他の装置が、パラメータ設定部１１、学習サンプル保持部１２及び最適パラメータ保持部１６を持つようにしてもよい。この場合、ＮＮＣ学習装置１は、当該他の装置を介して、学習サンプル保持部１２及び最適パラメータ保持部１６にアクセスし、当該他の装置から処理対象を取得するようにしてもよい。
【００８９】
なお、上述の説明で用いた複数のフローチャートでは、複数の工程（処理）が順番に記載されているが、本実施形態で実行される工程の実行順序は、その記載の順番に制限されない。本実施形態では、図示される工程の順番を内容的に支障のない範囲で変更することができる。また、上述の各実施形態及び各変形例は、内容が相反しない範囲で組み合わせることができる。
【００９０】
上記の各実施形態及び各変形例の一部又は全部は、以下の付記のようにも特定され得る。但し、各実施形態及び各変形例が以下の記載に限定されるものではない。
【００９１】
（付記１）
参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得する対象取得部と、
サンプルベクトルと同じカテゴリに属する前記処理対象の参照ベクトルの中から、該サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、かつ、該サンプルベクトルとは異なるカテゴリに属する前記処理対象の参照ベクトルの中から、該サンプルベクトルに最も近い外部最近傍参照ベクトルを特定する特定部と、
前記内部最近傍参照ベクトルと前記外部最近傍参照ベクトルとにより形成される識別境界と前記サンプルベクトルとの間の距離を用いて、前記処理対象の評価値を算出する算出部と、
前記算出部により算出される前記処理対象の評価値に基づいて、元の参照ベクトルセット及び元の所属カテゴリ情報を前記処理対象で更新する更新部と、
を備える識別器学習装置。
【００９２】
（付記２）
前記算出部は、前記サンプルベクトルが前記内部最近傍参照ベクトルより前記外部最近傍参照ベクトルに近い場合に、前記距離が長い程、低い評価を示し、前記サンプルベクトルが前記外部最近傍参照ベクトルより前記内部最近傍参照ベクトルに近い場合に、前記距離が長い程、高い評価を示すように、前記処理対象の評価値を算出する、
付記１に記載の識別器学習装置。
【００９３】
（付記３）
前記算出部は、前記サンプルベクトルが前記内部最近傍参照ベクトルより前記外部最近傍参照ベクトルに近い場合に、前記距離を負の値として算出し、前記サンプルベクトルが前記外部最近傍参照ベクトルより前記内部最近傍参照ベクトルに近い場合に、前記距離を正の値として算出し、算出された該距離を入力とするシグモイド関数の出力値に基づいて前記処理対象の評価値を算出する、
付記２に記載の識別器学習装置。
【００９４】
（付記４）
前記特定部は、複数のサンプルベクトルの各々に関し、前記内部最近傍参照ベクトル及び前記外部最近傍参照ベクトルをそれぞれ特定し、
前記算出部は、前記複数のサンプルベクトルの各々に関しそれぞれ算出される評価値の合計値を算出し、
前記更新部は、前記元の参照ベクトルセット及び前記元の所属カテゴリ情報に関し前記算出部で算出される評価値の合計値と、前記処理対象に関し前記算出部で算出される評価値の合計値とを比較し、該比較結果に基づいて、前記処理対象の更新を決める、
付記１から３のいずれか１つに記載の識別器学習装置。
【００９５】
（付記５）
前記算出部は、
前記複数のサンプルベクトルの各々に対する最近傍参照ベクトルの所属カテゴリ情報、及び、該各サンプルベクトルの所属カテゴリ情報に基づいて、前記複数のサンプルベクトルに対する前記処理対象の識別精度を算出し、該算出された識別精度と、指定される識別精度情報とに対応する補正値で前記複数のサンプルベクトルに対応する前記処理対象の評価値の合計値を補正する補正部、
を含む付記４に記載の識別器学習装置。
【００９６】
（付記６）
前記特定部は、上記（式１）、上記（式５）、上記（式６）及び上記（式１０）のいずれか１つを用いて、前記サンプルベクトルと前記参照ベクトルとの間の距離を算出する、
付記１から５のいずれか１つに記載の識別器学習装置。
【００９７】
（付記７）
前記対象取得部は、前記重み係数を前記処理対象として更に取得し、
前記特定部は、前記対象取得部により取得される前記重み係数を含む前記（式５）又は前記（式６）を用いて、前記サンプルベクトルと前記参照ベクトルとの間の距離を算出し、
前記更新部は、前記処理対象として取得される前記重み係数で元の重み係数を更に更新する、
付記６に記載の識別器学習装置。
【００９８】
（付記８）
少なくとも１つのコンピュータにより実行される識別器学習方法において、
参照ベクトルセット及び各参照ベクトルの所属カテゴリ情報を処理対象として取得し、
サンプルベクトルと同じカテゴリに属する前記処理対象の参照ベクトルの中から、該サンプルベクトルに最も近い内部最近傍参照ベクトルを特定し、
前記サンプルベクトルとは異なるカテゴリに属する前記処理対象の参照ベクトルの中から、前記サンプルベクトルに最も近い外部最近傍参照ベクトルを特定し、
前記内部最近傍参照ベクトルと前記外部最近傍参照ベクトルとにより形成される識別境界と前記サンプルベクトルとの間の距離を用いて、前記処理対象の評価値を算出し、
前記算出された処理対象の評価値に基づいて、元の参照ベクトルセット及び元の所属カテゴリ情報を前記処理対象で更新する、
ことを含む識別器学習方法。
【００９９】
（付記９）
前記評価値の算出は、前記サンプルベクトルが前記内部最近傍参照ベクトルより前記外部最近傍参照ベクトルに近い場合に、前記距離が長い程、低い評価を示し、前記サンプルベクトルが前記外部最近傍参照ベクトルより前記内部最近傍参照ベクトルに近い場合に、前記距離が長い程、高い評価を示すように、前記処理対象の評価値を算出する、
付記８に記載の識別器学習方法。
【０１００】
（付記１０）
前記評価値の算出は、
前記サンプルベクトルが前記内部最近傍参照ベクトルより前記外部最近傍参照ベクトルに近い場合に、前記距離を負の値として算出し、前記サンプルベクトルが前記外部最近傍参照ベクトルより前記内部最近傍参照ベクトルに近い場合に、前記距離を正の値として算出し、
前記算出された距離を入力とするシグモイド関数の出力値に基づいて前記処理対象の評価値を算出する、
付記９に記載の識別器学習方法。
【０１０１】
（付記１１）
前記内部最近傍参照ベクトルの特定は、複数のサンプルベクトルの各々に関し、前記内部最近傍参照ベクトルをそれぞれ特定し、
前記外部最近傍参照ベクトルの特定は、複数のサンプルベクトルの各々に関し、前記外部最近傍参照ベクトルをそれぞれ特定し、
前記評価値の算出は、前記複数のサンプルベクトルの各々に関しそれぞれ算出される評価値の合計値を算出し、
前記更新は、前記元の参照ベクトルセット及び前記元の所属カテゴリ情報に関し前記算出部で算出される評価値の合計値と、前記処理対象に関し前記算出部で算出される評価値の合計値とを比較し、該比較結果に基づいて、前記処理対象の更新を決める、
付記８から１０のいずれか１つに記載の識別器学習方法。
【０１０２】
（付記１２）
前記複数のサンプルベクトルの各々に対する最近傍参照ベクトルの所属カテゴリ情報、及び、該各サンプルベクトルの所属カテゴリ情報に基づいて、前記複数のサンプルベクトルに対する前記処理対象の識別精度を算出し、
前記算出された識別精度と、指定される識別精度情報とに対応する補正値で前記複数のサンプルベクトルに対応する前記処理対象の評価値の合計値を補正する、
ことを更に含む付記１１に記載の識別器学習方法。
【０１０３】
（付記１３）
前記サンプルベクトルと前記参照ベクトルとの間の距離を、上記（式１）、上記（式５）、上記（式６）及び上記（式１０）のいずれか１つを用いてを算出する、
ことを更に含む付記８から１２のいずれか１つに記載の識別器学習方法。
上記各式において、ベクトルｓｊは、前記サンプルベクトルを示し、ベクトルｒｉは前記参照ベクトルを示し、αｉ及びβｉは、参照ベクトルｒｉに対応する重み係数を示し、Σは分散共分散行列を示す。
【０１０４】
（付記１４）
前記重み係数を前記処理対象として取得し、
前記算出された処理対象の評価値に基づいて、前記処理対象として取得される前記重み係数で元の重み係数を更新する、
ことを更に含み、
前記サンプルベクトルと前記参照ベクトルとの間の距離は、前記重み係数を含む前記（式５）又は前記（式６）を用いて算出される、
付記１３に記載の識別器学習方法。
【０１０５】
（付記１５）
付記８から１４のいずれか１つに記載の識別器学習方法を少なくとも１つのコンピュータに実行させるプログラム。
【０１０６】
（付記１６）
付記１５に記載のプログラムをコンピュータにより読み取り可能に記録する記録媒体。
【０１０７】
この出願は、２０１３年１月２８日に出願された日本出願特願２０１３−０１３６７４号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2014115362.tif 000015
【図２】
2014115362.tif 000016
【図３】
2014115362.tif 000017
【図４】
2014115362.tif 000018
【図５】
2014115362.tif 000019
【図６】
2014115362.tif 000020
【図７】
2014115362.tif 000021
【図８】
2014115362.tif 000022
【国際調査報告】
2014115362.tif 000023
2014115362.tif 000024
2014115362.tif 000025