(57)【要約】【課題】十分な不良品データを用いることができない場合であっても、識別器の適切なパラメータを決定することを目的とする。【解決手段】対象データが特定カテゴリデータ及び非特定カテゴリデータのいずれであるかを判定する判定用の識別器を生成するために利用する複数の学習データを受け付ける受付手段と、学習データが特定カテゴリデータであることの確からしさを示す第１の尤度を求める第１のデータ評価手段と、複数の学習データそれぞれの第１の尤度に基づいて、判定用の識別器のパラメータを決定するパラメータ決定手段とを有する。【選択図】図２
2017102906.tif 000002
【特許請求の範囲】
【請求項１】
対象データが特定カテゴリデータ及び非特定カテゴリデータのいずれであるかを判定する判定用の識別器を生成するために利用する複数の学習データを受け付ける受付手段と、
前記学習データが前記特定カテゴリデータであることの確からしさを示す第１の尤度を求める第１のデータ評価手段と、
複数の学習データそれぞれの前記第１の尤度に基づいて、前記判定用の識別器のパラメータを決定するパラメータ決定手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記第１のデータ評価手段は、前記学習データの特徴量に基づいて、前記第１の尤度を求めることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
複数のパラメータそれぞれと、前記学習データと、を用いて、複数の学習用の識別器を生成する第１の学習手段と、
前記複数の学習用の識別器それぞれを用いて、前記学習データが前記特定カテゴリデータであることの確からしさを示す、前記学習用の識別器に依存した第２の尤度を求める第２のデータ評価手段と
をさらに有し、
前記第１のデータ評価手段は、前記学習データに対して前記第２のデータ評価手段により得られた、複数の第２の尤度に基づいて、前記学習データの前記第１の尤度を求めることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記第１の学習手段は、前記複数のパラメータそれぞれと、前記学習データの特徴量と、を用いて、前記学習用の識別器を生成することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記第１の尤度に基づいて、前記複数の学習データを第１のデータセットと、前記第１のデータセットに比べて前記特定カテゴリデータであることの確からしさの低い第２のデータセットと、に分類する分類手段をさらに有し、
前記パラメータ決定手段は、前記第１のデータセットと前記第２のデータセットとに基づいて、前記パラメータを決定することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記第１のデータセット及び前記第２のデータセットの両方の学習データを正解データとみなして、複数のパラメータそれぞれを用いて、学習用の識別器を生成する第２の学習手段と、
前記第１のデータセットの学習データを正解データ、前記第２のデータセットの学習データを不正解データとみなして、前記第２の学習手段による学習に用いられた各パラメータを評価するパラメータ評価手段と
をさらに有し、
前記パラメータ決定手段は、前記パラメータ評価手段による評価結果に基づいて、前記複数のパラメータの中から前記判定用の識別器のパラメータを決定することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記パラメータ評価手段は、前記第１のデータセットの学習データと前記第２のデータセットの学習データの分離度に基づいて、前記パラメータを評価することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記受付手段は、不正解データとして与えられた不正解の学習データをさらに受け付け、
前記パラメータ評価手段は、さらに不正解の学習データを用いて、前記パラメータを評価することを特徴とする請求項６に記載の情報処理装置。
【請求項９】
前記パラメータ評価手段は、前記第１のデータセットの学習データと前記第２のデータセットの学習データの分離度と、前記第１のデータセットの学習データと不正解の学習データの分離度と、に基づいて、前記パラメータを評価することを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記パラメータ評価手段は、前記第２のデータセットの学習データと不正解の学習データの分離度に基づいて、前記パラメータを評価することを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
前記パラメータ評価手段は、前記第１のデータセットの学習データと不正解の学習データの分離度と、前記第２のデータセットの学習データと不正解の学習データの分離度に基づいて、前記パラメータを評価することを特徴とする請求項８に記載の情報処理装置。
【請求項１２】
前記パラメータ決定手段により決定されたパラメータに基づいて、前記判定用の識別器を学習する第３の学習手段をさらに有することを特徴とする請求項１乃至１１の何れか１項に記載の情報処理装置。
【請求項１３】
情報処理装置が実行する情報処理方法であって、
対象データが特定カテゴリデータ及び非特定カテゴリデータのいずれであるかを判定する判定用の識別器を生成するために利用する複数の学習データを受け付ける受付ステップと、
前記学習データが前記特定カテゴリデータであることの確からしさを示す第１の尤度を求める第１のデータ評価ステップと、
複数の学習データそれぞれの前記第１の尤度に基づいて、前記判定用の識別器のパラメータを決定するパラメータ決定ステップと
を含むことを特徴とする情報処理方法。
【請求項１４】
コンピュータを、請求項１乃至１２の何れか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、工場等で製造された製品が、良品か不良品かの外観検査を自動化する方法の一つとして、多数の特徴量を用いた方法が知られている。この方法は、学習用の複数の良品と不良品の画像から画素値の平均、最大値等多数の特徴量を抽出し、抽出した特徴量で構成される特徴空間上で良品と不良品を分類する識別器を学習し、識別器を用いて、被検対象物が良品か不良品かを判定するものである。
【０００３】
このような画像処理による不良品の検出方法では、適切な識別器を学習するには、学習データとして誤りのない良品データと不良品データが必要となる。これに対し、特許文献１には、学習データとして与えられたデータセット中の良品データの中から適切ではない良品データを除く技術が開示されている。
【０００４】
また、実際の検査工程の立ち上げ時など、良品データは十分な数を用意できるが、不良品の発生率が低く、十分な数のデータを用意することができない場合がある。これに対し、１つのラベルデータのみから識別器の学習が可能な1クラス識別器モデルも知られている。1クラス識別器は、良品データを表現する特徴空間を学習し、学習した空間に属するか否かにより良品と不良品を判定するものである。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−７０６３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、1クラス識別モデルを用いた場合でも、識別器の学習時に必要なハイパーパラメータの決定には、不良品データを用いたり、ユーザが手動でハイパーパラメータを決定したりする必要がある。このため、不良品データが十分でないために、適切な識別器を学習するのが難しい場合があった。また、ユーザがハイパーパラメータを決定する場合には、適切なハイパーパラメータを決定するのが難しかった。
【０００７】
本発明はこのような問題点に鑑みなされたもので、十分な不良品データを用いることができない場合であっても、識別器の適切なパラメータを決定することを目的とする。
【課題を解決するための手段】
【０００８】
そこで、本発明は、情報処理装置であって、対象データが特定カテゴリデータ及び非特定カテゴリデータのいずれであるかを判定する判定用の識別器を生成するために利用する複数の学習データを受け付ける受付手段と、前記学習データが前記特定カテゴリデータであることの確からしさを示す第１の尤度を求める第１のデータ評価手段と、複数の学習データそれぞれの前記第１の尤度に基づいて、前記判定用の識別器のパラメータを決定するパラメータ決定手段とを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、十分な不良品データを用いることができない場合であっても、識別器の適切なパラメータを決定することができる。
【図面の簡単な説明】
【００１０】
【図１】情報処理装置のハードウェア構成を示す図である。
【図２】情報処理装置のソフトウェア構成を示す図である。
【図３】学習処理を示すフローチャートである。
【図４】学習データ分類処理を示すフローチャートである。
【図５】パラメータ決定処理を示すフローチャートである。
【図６】判定処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について図面に基づいて説明する。
【００１２】
図１は、本実施形態に係る情報処理装置１００のハードウェア構成を示す図である。情報処理装置１００は、正解データとして与えられた複数の学習データを含む学習データセットを用いて正解データと不正解データとを識別する識別器を学習する。情報処理装置１００はさらに、学習された識別器を用いて、判定対象の対象データが正解データであるか不正解データであるかの判定を行う。なお、識別器は、あるカテゴリに分類されるデータである特定カテゴリデータと、特定カテゴリデータ以外のデータである非特定カテゴリデータとを識別するものであればよく、識別対象は、正解データと不正解データに限定されるものではない。
【００１３】
なお、本実施形態においては、情報処理装置１００が工場等における製品の外観検査に利用される場合を例に説明する。すなわち、良品の撮影画像（良品データ）が正解データとなり、不良品の撮影画像（不良品データ）が不正解データとなる。そして、情報処理装置１００は、学習により得られた、判定用の識別器を用いて、実際の検査対象物の撮影画像を対象データとして、対象データが良品データであるか不良品データであるかを判定する。これにより、対象データに示される検査対象物が良品であるか不良品であるかを判定することができる。
【００１４】
情報処理装置１００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、ＨＤＤ１０４と、表示部１０５と、入力部１０６と、通信部１０７とを有している。ＣＰＵ１０１は、ＲＯＭ１０２に記憶された制御プログラムを読み出して各種処理を実行する。ＲＯＭ１０２は、オペレーティングシステム（ＯＳ）や各処理プログラム、デバイスドライバ等を記憶している。ＲＡＭ１０３は、ＣＰＵ１０１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ１０４は、画像データや各種プログラム等各種情報を記憶する。なお、後述する情報処理装置１００の機能や処理は、ＣＰＵ１０１がＲＯＭ１０２又はＨＤＤ１０４に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
【００１５】
表示部１０５は、各種情報を表示する。入力部１０６は、キーボードやマウスを有し、ユーザによる各種操作を受け付ける。通信部１０７は、ネットワークを介して画像形成装置等の外部装置との通信処理を行う。
【００１６】
図２は、情報処理装置１００のソフトウェア構成を示す図である。情報処理装置１００は、受付部２０１と、特徴量抽出部２０２と、分類部２０３と、パラメータ決定部２０４と、学習部２０５と、識別部２０６とを有している。受付部２０１は、学習データ及び判定対象データの入力を受け付ける。ここで、学習データとは、良品データ及び不良品データのいずれであるかがわかっているデータである。一方、判定対象データは、良品データ及び不良品データのいずれであるかが不明なデータであり、いずれのデータであるかの判定対象となるデータである。特徴量抽出部２０２は、学習データ及び判定対象データの特徴量を抽出する。分類部２０３は、特徴量に基づいて、各学習データが良品データであることの確からしさを評価し、評価結果に応じて、学習データセットを２つのデータセットに分類する。パラメータ決定部２０４は、判定用の識別器のパラメータを推定する。学習部２０５は、判定用の識別器を学習する。
【００１７】
なお、情報処理装置１００は、図２に示す各機能部をハードウェア構成として有することとしてもよい。この場合、情報処理装置１００は、各機能部に対応する演算部や回路を有するものとすればよい。
【００１８】
図３は、情報処理装置１００による学習処理を示すフローチャートである。Ｓ３０１において、受付部２０１は、学習データセットを受け付ける。学習データセットに含まれる学習データとしての画像は、検査対象の物体が撮像装置によって撮像された学習画像である。学習画像として撮像される物体は、良品であることが予めわかっている物体である。なお、本実施形態においては、情報処理装置１００は、撮像装置等外部装置から入力された画像を受け付けることとするが、他の例としては、情報処理装置１００は、予め自装置のＨＤＤ１０４等の記憶部に記憶されている学習データセットを読み出してもよい。
【００１９】
次に、Ｓ３０２において、特徴量抽出部２０２は、各学習データから予め定められた複数の種類の特徴量を抽出する。特徴量としては、画像の輝度値の平均、分散、歪度、尖度、最頻値、エントロピー等が挙げられる。また、特徴量としては、Ｃｏ−Ｏｃｃｕｒｒｅｎｃｅ  Ｍａｔｒｉｘを用いたテクスチャー特徴量、ＳＩＦＴを用いた局所特徴量等が挙げられる。Ｃｏ−Ｏｃｃｕｒｒｅｎｃｅ  Ｍａｔｒｉｘを用いたテクスチャー特徴量及びＩＦＴを用いた局所特徴量については、それぞれ以下に示す文献１、２を参照することができる。
参考文献１
Robert  M.  Haralick,  K.  Sharnmugam,  and  Itshak  Dinstein,  "Texture  Features  for  Image  Classification",  IEEE  Transactions  on  System,  Man  and  Cybernatic,  Vol.6,  pp.  610-621,  1973.
参考文献２
Lowe,  David  G,  "Object  Recognition  from  Local  Scale-invariant  Features",  Proceedings  of  the  International,  Conference  on  Computer  Vision  2  pp.  1150-1157,  1999.
【００２０】
特徴量抽出部２０２は、これらの特徴量のうち予め定められた複数の特徴量を抽出するものとする。そして、特徴量抽出部２０２は、抽出した複数の特徴量を順に並べた特徴ベクトルを最終的な特徴量として得る。なお、抽出対象の特徴量の種類については、設定ファイル等としてＲＯＭ１０２等に記録されているものとする。また、ＣＰＵ１０１は、入力部１０６を介したユーザ操作に基づいて、設定ファイルの内容を変更することができるものとする。
【００２１】
次に、Ｓ３０３において、分類部２０３は、学習データセットを良品データセット及び不良品候補データセットの２つのデータセットに分類し（分類処理）、良品データ又は不良品候補データを示すラベルを付与する。本処理については、図４を参照しつつ後に詳述する。次に、Ｓ３０４において、パラメータ決定部２０４は、Ｓ３０３において得られた特徴量と、Ｓ３０３において付与されたラベルと、に基づいて、識別器のパラメータを決定する。本処理については、図５を参照しつつ後に詳述する。
【００２２】
次に、Ｓ３０５において、学習部２０５は、Ｓ３０３において得られた特徴量と、Ｓ３０４において決定したパラメータと、に基づいて、判定用の識別器を学習する。以上で、学習処理が終了する。なお、本実施形態においては、識別器として、One  class  Support  Vector  Machine(ＳＶＭ)を用いものとする。ｏｎｅ  ｃｌａｓｓ  ＳＶＭについては、以下の文献を参照することができる。
Vapnik,  V.  (1995).  "Support-vector networks".  Machine  Learning  20  (3):  273.
本実施形態では、識別器としてＯｎｅ  ｃｌａｓｓ  ＳＶＭを用いているが、識別器は、クラス分類が可能な識別モデルであればよく実施形態に限定されるものではない。他の例としては、識別器として、マハラノビス距離や部分空間法の一種である投影距離法、ニューラルネットワークなどを用いてもよい。
【００２３】
図４は、図３を参照しつつ説明した学習データセット分類処理（Ｓ３０３）における詳細な処理を示すフローチャートである。ここで、Ｓ３０２において受け付けた学習データセットをＤ＝｛ｄ1，ｄ2，ｄ3，…ｄN｝とする。Ｎは、学習データセットに含まれる学習データの数である。また、各学習データをｄi＝｛ｘi，ｌi｝（１≦ｉ≦Ｎ）とする。ここで、ｘiは特徴量ベクトル、ｌiは各学習データに付与されたラベルである。本実施形態においては、学習データは、いずれも良品データであるため、受け付けた学習データには、良品データであることを表すラベル（ｌi＝＋１）が付与されている。なお、学習データにラベルが付与されていない場合には、受付部２０１は、各学習データにラベルを付与（設定）するものとする。
【００２４】
Ｓ４０１において、分類部２０３は、識別器の学習に必要となるハイパーパラメータ
【数１】
2017102906.tif 000003
を設定する。本実施形態では、識別器としてＯｎｅ  ｃｌａｓｓ  ＳＶＭを用いるため、ハイパーパラメータの候補集合Φは、予め用意し、情報処理装置１００のＨＤＤ１０４等に記憶しておいてもよいし、任意のハイパーパラメータφで学習した結果から更新してもよい。Ｏｎｅ  Ｃｌａｓｓ  ＳＶＭでは、誤分類を許容する範囲を決定するＣパラメータや、カーネルとしてＲＢＦを用いた場合は、ＲＢＦカーネルのγパラメータなどがハイパーパラメータとなる。その他、Ｏｎｅ  ｃｌａｓｓ  ＳＶＭの他に識別器として部分空間法を用いた場合は、ハイパーパラメータは部分空間次元数となり、ニューラルネットワークを用いた場合は隠れ層や出力層のノード数となる。また、入力特徴量の次元数に対して次元削減を実施した場合、削減後の次元数を決定する部分をハイパーパラメータとしても良い。例えば、次元削減を実施するためにPrincipal  Component  nalysis（ＰＣＡ）を用いた場合、削減後の次元数を寄与率から決定することがある。この場合、寄与率を複数パターン用意し、ハイパーパラメータの候補集合に含めて計算しても良い。次元削減の方法はＰＣＡに限定するものではなく、その他の方法を用いても構わない。以下、ハイパーパラメータを単にパラメータと称する。
【００２５】
次に、Ｓ４０２において、分類部２０３は、Ｓ４０１において設定したパラメータφと、学習データセットＤと、を用いて、識別器を学習（生成）する。ここで学習する識別器は、学習データセットを分類するために用いる学習用の識別器である。本実施形態においては、判定処理において用いられる判定用の識別器と同じ識別器を用いて学習データセットの分類を行うこととするが、他の例としては、判定用の識別器と異なる種類の識別器を用いてもよい。
【００２６】
次に、Ｓ４０３において、分類部２０３は、学習データの識別処理を行う。具体的には、分類部２０３は、Ｓ４０３において学習した識別器を用いて、学習データｘiに対し、良品クラスへの帰属度
【数２】
2017102906.tif 000004
を求める。ここで、帰属度は、良品データ（正解データ）であることの確からしさを示す、学習用の識別器に依存した尤度の一例である。また、Ｓ４０３の処理は、学習用の識別器に依存した尤度を求めるデータ評価処理の一例である。
【００２７】
次に、Ｓ４０４において、分類部２０３は、帰属度ｓiと閾値Ｔvとの比較処理により、（式１）に示すような投票処理を行う。すなわち、分類部２０３は、帰属度ｓiが、閾値Ｔvよりも小さい学習データに対し投票を行う。
【数３】
2017102906.tif 000005
なお、Ｓ４０４の処理は、学習用の識別器に依存した複数の尤度に基づいて、学習データの尤度を求めるデータ評価処理の一例である。
【００２８】
なお、本実施形態においては、帰属度ｓiが閾値Ｔvより小さいデータに対して投票を行ったが、投票処理はこれに限定されるものではない。他の例としては、分類部２０３は、閾値Ｔvではなく学習データセットＤに含まれるデータ数Ｎに対する割合で投票してもよい。また、本実施形態においては、投票の値を１としているが、他の例としては、分類部２０３は、重み付けにより投票の値を決定してもよい。分類部２０３は、例えば、（式２）に示すように、帰属度に比例した値を投票してもよい。また、他の例としては、分類部２０３は、（式３）に示すように、学習データセット中のすべての帰属度との順位から値を決定してもよい。
【数４】
2017102906.tif 000006
ここで、Ｓは、帰属度ｓiの集合である。すなわち、Ｓ＝｛ｓ1，ｓ2，ｓ3，…ｓN｝である。また、
【数５】
2017102906.tif 000007
は、帰属度集合Ｓに含まれるデータを降順にソートしたときの帰属度Ｓの順位を返す関数である。
【００２９】
次に、Ｓ４０５において、分類部２０３は、未選択のパラメータが存在するか否かを確認する。分類部２０３は、未選択のパラメータが存在する場合には（Ｓ４０５でＹｅｓ）、処理をＳ４０１へ進める。そして、Ｓ４０１において、分類部２０３は、パラメータの候補集合Φから未選択のパラメータを選択し、これを設定し、その後の処理を継続する。分類部２０３は、未選択のパラメータが存在しない場合には（Ｓ４０５でＮｏ）、処理をＳ４０６へ進める。
【００３０】
Ｓ４０６において、分類部２０３は、投票結果に基づいて、学習データｘiが良品データ及び不良品候補データのいずれであるかを判定する。具体的には、分類部２０３は、（式４）により、ｖiが閾値Ｔh以上の場合には不良品候補データと判定し、学習データｘiに、不良品候補データのラベル（ｌi＝０）を付与する。一方、ｖiが閾値Ｔh未満の場合には良品データと判定し、学習データｘiに良品データのラベル（ｌi＝＋１）を付与する。これにより、学習データセットは、良品データセットと不良品候補データセットの２つのデータセットに分類される。すなわち、本処理は、複数の学習データを２つのデータセットに分類する分類処理の一例である。
【数６】
2017102906.tif 000008
【００３１】
図５は、図３を参照しつつ説明したパラメータ決定処理（Ｓ３０４）における詳細な処理を示すフローチャートである。本実施形態においては、パラメータ決定部２０４は、交差検定法を用いてパラメータを決定する。なお、本実施形態においては、ハイパーパラメータの決定には、交差検定法を用いることとしたが、交差検定法以外の手法を用いてもよい。
【００３２】
ここで、一般的な交差検定法について説明する。交差検定法では、学習データセットＤの良品データと不良品データのそれぞれをＫ個のグループに分割する。そして、分割したＫ個のグループのうち１つ以外を学習用に利用し、残りの１つを評価（検定）用に利用する。すなわち、良品データ群である良品データセットＤOKをＫ個のグループに分割し、そのうちの１のグループをＤOK(1)、残りのグループをＤOK(K-1)とする。同様に、不良品データ群である不良品データセットＤNGをＫ個のグループに分割し、そのうちの１つのグループをＤNG(1)、残りのグループをＤNG(K-1)とする。そして、任意のパラメータを評価するために、良品グループＤOK(K-1)及び不良品グループＤNG(K-1)を用いて、識別器の学習を行う。そして、学習した識別器を用いて残りの良品グループＤOK(1)及び不良品グループＤNG(1)の分離度を算出する。この処理を学習グループ及び評価グループを入れ替えて繰り返して評価を行い、パラメータを選択する。これにより良品データセットと不良品データセットを最も分離するパラメータを選択することが可能となる。
【００３３】
しかしながら、上記の方法で、本実施形態の良品データと不良品候補データを分類するパラメータを選択した場合、良品データと不良品候補データの間が識別境界となる。そのため、ユーザが良品データとして与えているにも関わらず、不良品候補データは不良品データと判定される可能性がある。そこで、本実施形態においては、以下に説明する処理を行うことにより、良品データと不良品候補データを分類するパラメータではなく、不良品候補データよりも良品データがより良品として確からしいと判定されるようなパラメータを選択する。
【００３４】
まず、Ｓ５０１において、パラメータ決定部２０４は、学習データセットＤを、Ｓ３０３において付与されたラベルに基づいて、良品データセットＤOKと不良品候補データセットＤNGCとに分割し、各データセットをＫ個のグループに分割する。次に、Ｓ５０２において、パラメータ決定部２０４は、パラメータ候補を選択する。次に、Ｓ５０３において、パラメータ決定部２０４は、良品データセットＤOKのＫ個のグループから１つのグループＤOK(1)を評価グループとして選択する。同様に、パラメータ決定部２０４は、不良品候補データセットＤNGCのＫ個のグループから１つのグループＤNGC(1)を評価グループとして選択する。
【００３５】
次に、Ｓ５０４において、パラメータ決定部２０４は、評価グループ以外の良品グループトＤOK(K-1)と、評価グループ以外の不良品候補グループＤNGC(K-1)とを用いて、識別器を学習する。すなわち、パラメータ決定部２０４は、良品データと不良品候補データの両方を良品データとみなして、学習用の識別器を学習する（学習処理）。次に、Ｓ５０５において、パラメータ決定部２０４は、Ｓ５０３において選択した評価グループＤOK(1)、ＤNGC(1)を用いて、Ｓ５０４における学習に用いられたパラメータの有効性を評価する（パラメータ評価処理）。なお、本実施形態においては、Ａｒｅａ  Ｕｎｄｅｒ  ｔｈｅ  Ｃｕｒｖｅ（ＡＵＣ）を評価値として用いる。すなわち、パラメータ決定部２０４は、次式により、評価値Ｃ（φ）を算出する。
Ｃ（φ）＝ＡＵＣ（ＤOK(1)、ＤNGC(1)）
なお、本実施形態においては、評価値としてＡＵＣを用いたがこれに限定されるものではない。評価値は、２クラスの分離度を評価できる値であればよく、できればよく、ＡＩＣやＢＩＣ等であってもよい。
【００３６】
次に、Ｓ５０６において、パラメータ決定部２０４は、評価グループとして選択されていないグループが存在するか否かを確認する。パラメータ決定部２０４は、未選択のグループが存在する場合には（Ｓ５０６でＹｅｓ）、処理をＳ５０３へ進める。そして、Ｓ５０３において、パラメータ決定部２０４は、未選択のグループを評価グループとして選択し、その後の処理を行う。このように、パラメータ決定部２０４は、評価グループを変更しながら、Ｓ５０２〜Ｓ５０５の処理を繰り返す。一方、パラメータ決定部２０４は、すべてのグループが評価グループとして選択済みの場合には（Ｓ５０６でＮｏ）、処理をＳ５０７へ進める。
【００３７】
Ｓ５０７において、パラメータ決定部２０４は、未選択のパラメータ候補が存在するか否かを確認する。パラメータ決定部２０４は、未選択のパラメータ候補が存在する場合には（Ｓ５０７でＹｅｓ）、処理をＳ５０２へ進める。そして、Ｓ５０２において、パラメータ決定部２０４は、未選択のパラメータ候補を選択し、その後の処理を行う。このように、パラメータ決定部２０４は、各パラメータ候補に対し、評価値を算出する。一方、パラメータ決定部２０４は、すべてのパラメータ候補が選択済みの場合には（Ｓ５０７でＮｏ）、処理をＳ５０８へ進める。
【００３８】
Ｓ５０８において、パラメータ決定部２０４は、Ｓ５０２〜Ｓ５０５の処理を繰り返すことにより、各パラメータ候補φに対して得られた複数の評価値を用いて、適切なパラメータを選択する。パラメータ決定部２０４は、例えば、各パラメータ候補に対して得られた複数の評価値の平均値を求め、平均値が最大となるパラメータφを選択する。また、他の例としては、パラメータ決定部２０４は、各パラメータ候補の複数の評価値のうち最小値が最大となるパラメータφを選択してもよい。また、他の例としては、パラメータ決定部２０４は、各パラメータ候補の複数の評価値のメディアン値を求め、メディアン値が最大となるパラメータを選択してもよい。以上で、パラメータ決定処理が終了する。
【００３９】
図６は、情報処理装置１００による判定処理を示すフローチャートである。判定処理は、図３等を参照しつつ説明した学習処理により得られた、判定用の識別器を利用し、検査対象の物体の撮影画像が良品データ及び不良品データのいずれであるかを判定する処理である。Ｓ６０１において、受付部２０１は、検査対象の物体の撮影画像、すなわち対象データを受け付ける。本実施形態においては、受付部２０１は、撮像装置から対象データを受け付けることとするが、他の例としては、情報処理装置１００は、予め自装置のＨＤＤ１０４等の記憶部に記憶されている対象データを読み出してもよい。
【００４０】
次に、Ｓ６０２において、特徴量抽出部２０２は、対象データから、予め定められた複数の種類の特徴量を抽出する。ここで抽出する特徴量の種類及び数は、Ｓ３０２において抽出する特徴量の種類及び数と等しいものとする。なお、他の例としては、Ｓ６０２においては、特徴量抽出部２０２は、学習処理により得られた識別器を用いることにより対象データを良品データと不良品データに分類可能な特徴量のみを抽出することとしてもよい。
【００４１】
次に、Ｓ６０３において、識別部２０６は、学習処理により得られた識別器を用いて、Ｓ６０２において抽出された特徴量に基づいて、対象データが良品データであるか不良品データであるかを識別する。以上で、判定処理が終了する。
【００４２】
以上のように、本実施形態においては、パラメータ決定部２０４は、良品グループと不良品候補グループの両方の学習データを良品データとみなして、識別器を学習する。一方で、パラメータ決定部２０４は、学習した識別器の評価においては、良品グループの学習データを良品データ、不良品候補グループの学習データを不良品データとみなして、分離度（評価値）を算出する。このため、選択されたパラメータにより学習された判定用の識別器では、ユーザが良品データとして与えた学習データは、良品と判定される。ただし、不良品候補データセットに分類された学習データは、良品グループに分類された学習データに比べて良品データであることの確からしさの値が低く判定される。
【００４３】
仮に、不良品候補データセットを含まない良品データセットの学習データのみを良品データとみなして識別器を学習した場合には、良品データセットと不良品候補データセットを分離するようなパラメータが選択される。このため、不良品候補データセットに属するような対象データを不良品データと判定するような識別器が学習されてしまう可能性がある。これに対し、本実施形態においては、パラメータ決定部２０４は、良品データセットの学習データだけでなく不良品候補データセットの学習データを良品データとして用いて識別器を学習する。これにより、不良品候補データセットに分類された学習データは、良品グループに分類された学習データに比べて良品データであることの確からしさの値が低く判定されるような識別器を学習することができる。すなわち、良品データであることが予めわかっている学習データセットのみから、判定用の識別器の適切なパラメータを決定することができる。
【００４４】
なお、本実施形態に係る情報処理装置１００は、学習処理と判定処理の両方を行うが、これにかえて、情報処理装置１００は、学習処理のみを行うものとしてもよい。この場合、情報処理装置１００と別の、判定処理を行う装置に学習処理により得られた識別器をセットする。そして、判定処理を行う装置において、判定処理を行う。
【００４５】
（第２の実施形態）
次に、第２の実施形態に係る情報処理装置１００について説明する。第２の実施形態に係る情報処理装置１００は、正解データと、少量の不正解データとを含む学習データセットを用いて、正解データと不正解データとを識別する識別器を学習する。第２の実施形態においても、情報処理装置１００が工場等における製品の外観検査に利用される場合を例に説明する。すなわち、正解データは、良品の撮影画像（良品データ）である。また、不正解データは、不良品の撮影画像（不良品データ）である。
【００４６】
判定用の識別器の学習に十分な量だけ不良品データとしての学習データが与えられている場合には、良品データ及び不良品データの両方を用いて、判別用の識別器を学習することができる。しかしながら、不良品データが少量の場合には、少量の不良品データに過学習した識別器となり、良品データと不良品データの分離精度が低下する可能性がある。これに対し、第２の実施形態に係る情報処理装置１００は、第１の実施形態に係る情報処理装置１００と同様に、良品データとして与えられた学習データを、良品データセットと不良品候補データセットとに分類し、処理を行う。以下、第２の実施形態に係る情報処理装置１００について、第１の実施形態に係る情報処理装置１００と異なる点について説明する。
【００４７】
図３を参照しつつ、第２の実施形態に係る情報処理装置１００による学習処理について説明する。第２の実施形態においては、Ｓ３０１において、良品データとした与えられた学習データと、不良品データとして与えられた少量の学習データとを含む学習データセットを受け付ける。以下、良品データとして与えられた学習データを良品の学習データと称する。また、不良品データとして与えられた学習データを不良品の学習データと称する。
【００４８】
なお、学習データセットに含まれる良品データとした与えられた学習データには、良品データのグループを表すラベル（ｌi＝＋１）が付与されている。また、不良品データとして与えられた学習データには、不良品データのグループを表すラベル（ｌi＝−１）が付与されている。なお、学習データにラベルが付与されていない場合には、受付部２０１は、各学習データにラベルを付与（設定）するものとする。
【００４９】
次に、特徴量抽出処理（Ｓ３０２）においては、特徴量抽出部２０２は、良品の学習データを処理対象として、第１の実施形態において説明したのと同様に特徴量を抽出する処理を行う。続く、学習データ分類処理（Ｓ３０３）においても、分類部２０３は、良品の学習データを処理対象として、第１の実施形態において説明したのと同様に、良品の学習データを、良品データセット及び不良品候補データセットに分類する。
【００５０】
続く、パラメータ決定処理（Ｓ３０４）については、図５を参照しつつ説明する。第２の実施形態においては、パラメータ決定部２０４は、不良品候補データセットの学習データだけでなく、不良品の学習データを用いてパラメータ候補の評価を行う。具体的には、Ｓ５０４において、パラメータ決定部２０４は、良品グループＤOK(K-1)と不良品候補グループＤNGC(K-1)を良品データとして識別器の学習を行う。次に、Ｓ５０５において、パラメータ決定部２０４は、不良品候補グループＤNGC(1)と、不良品データ群ＤNGを不良品データとして、分離度を算出することにより、パラメータ候補を評価する。なお、第２の実施形態に係る情報処理装置１００のこれ以外の構成及び処理は、第１の実施形態に係る情報処理装置１００の構成及び処理と同様である。
【００５１】
以上のように、第２の実施形態に係る情報処理装置１００は、不良品の学習データが十分でない場合に、第１の実施形態において説明したのと同様に、良品データセットの学習データの一部を不良品データとみなして判定用の識別器を学習する。このため、不良品の学習データの過学習となっていない、適切なパラメータを決定することができる。
【００５２】
なお、情報処理装置１００は、不良品データを用いてパラメータを決定すればよく、そのための具体的な処理は、実施形態に限定されるものではない。例えば、Ｓ５０５において、パラメータ決定部２０４は、良品グループＤOK(1)と不良品候補グループＤNGC(1)との分離度
【数７】
2017102906.tif 000009
を算出する。パラメータ決定部２０４は、さらに、良品グループＤOK(1)と不良品データ群ＤNGとの分離度
【数８】
2017102906.tif 000010
を算出する。そして、パラメータ決定部２０４は、（式５）により２つの分離度の積Ｌ'を、評価値として用いてもよい。
【数９】
2017102906.tif 000011
また、他の例としては、パラメータ決定部２０４は、（式６）に示すように、上記２つの分離度の線形和を評価値として用いてもよい。
【数１０】
2017102906.tif 000012
【００５３】
また、他の例としては、不良品候補グループは、良品データとして与えられた学習データであることに鑑み、パラメータ決定部２０４は、（式７）又は（式８）に示すような分離度の積を評価値として用いてもよい。
【数１１】
2017102906.tif 000013
また、パラメータ決定部２０４は、（式９）又は（式１０）に示すように、分離度の線形和を評価値として用いてもよい。
【数１２】
2017102906.tif 000014
【００５４】
以上、上述した各実施形態によれば、十分な不良品データを用いることができない場合であっても、識別器の適切なパラメータを決定することができる。
【００５５】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００５６】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５７】
１００  情報処理装置
２０２  特徴量抽出部
２０３  分類部
２０４  パラメータ決定部
２０５  学習部
２０６  識別部
【図１】
2017102906.tif 000015
【図２】
2017102906.tif 000016
【図３】
2017102906.tif 000017
【図４】
2017102906.tif 000018
【図５】
2017102906.tif 000019
【図６】
2017102906.tif 000020