しかしながら、事例データベースを有効利用するためには先ず事例データベースを構築する必要があり、事例データベースの構築には各事例データがどのクラスに属するのかを定めるために専門家の判断すなわち人間の判断が不可欠である。事例データベースには可能な限り多くの情報が蓄積されていることが望ましく、従来は、すべての膨大な数の事例データに対して専門家(人間)がクラス判定を行っており、事例データベースの構築に多大な労力、時間、コストを要している。
また、計算機を判別装置として機能させるためには、先ず計算機を学習させる必要があり、この学習にはデータと当該データが属するクラスの正解との組である例題が不可欠であり、各例題の正解を定めるために、専門家の判断すなわち人間の判断が不可欠である。一般に、計算機に与える例題の数が多いほど判別装置としての判定精度は高まる。従来は、膨大な数の例題を専門家(人間)が予め用意する必要があり、判別装置の学習に多大な労力、時間、コストを要している。
例えば、上記のように腕金画像の事例データベースを利用して腕金の劣化状態の自動判別を行う場合には、先ず始めに腕金画像の事例データベースを構築する必要があり、そのためには専門家が何千、何万という画像に対して、各画像が属するクラスを判定しなければならない。何千、何万というデータに対して、人間が各データのクラスを判定することは不可能ではないにしろ、非常に辛い作業となる。また、非常に辛い作業であるため、作業途中で人による判定が曖昧になる虞もある。
また、設備・機器の保守・管理について従来の使用年数に基づく時間計画保全(TBM)から、設備・機器の劣化状態等に基づく状態監視保全(CBM)への移行が図られているが、CBMへは、単に設備・機器状態データを収集できれば移行できるというものではない。設備・機器状態データが何の情報も付加されることなく蓄積されても、CBMに利用することはできない。CBMを実行するためには、大量の設備・機器状態データに状態の判定(例えば「利用可能、利用不可」や「良、不良」などの判定)を付加することが不可欠となる。しかしながら、何千、何万という設備・機器状態データに対して、人間が状態の判定を行うためには上述したように膨大な労力、時間、コストを必要とする。人間による判定回数は押さえながら、設備・機器状態データに適切な「判定」を付加できる技術が望まれている。
そこで本発明は、人間と計算機が協調作業することにより、人間の作業量を大幅に減らすことができる事例データベースの構築方法、判別装置の学習方法、データ判別支援装置、データ判別支援プログラムを提供することを目的とする。
かかる目的を達成するため、請求項1記載の発明は、複数の事例データのそれぞれが複数のクラスのうちのいずれかに分類されて記録される事例データベースを構築する方法であり、前記複数の事例データを計算機に入力するデータ入力ステップと、前記複数のクラスの中から1のクラスを選択して当該選択されたクラスを着目クラスとすると共に選択されなかったクラスを残クラスとするステップと、前記複数の事例データの中から前記着目クラスに属する少なくとも一つの事例データ及び前記残クラスに属する少なくとも一つの事例データを選択してこれら選択された事例データ(以下、初期データという)のクラス情報を前記計算機に入力する初期情報入力ステップと、当該入力されたクラス情報に基づき、前記計算機が前記初期データを前記着目クラスと前記残クラスとのどちらかに分類する初期受動分類ステップと、クラスの分類が済んでいる事例データを用いて特徴空間の中で前記着目クラスの境界となる第1超平面と前記残クラスの境界となる第2超平面とを前記計算機に計算させる識別面生成ステップと、クラスの分類が済んでいない事例データのうち、前記第1超平面と前記第2超平面とに挟まれた領域であるグレーゾーンに該当しない事例データを、前記着目クラスと前記残クラスとのいずれか該当する方に前記計算機により自動で分類する自動分類ステップと、クラスの分類が済んでいない事例データのうち、前記グレーゾーンに該当する事例データの全部または一部を前記計算機に提示させる提示ステップと、当該提示された事例データのクラス情報を前記計算機に入力する補充情報入力ステップと、当該入力されたクラス情報に基づき、前記計算機が前記提示された事例データを前記着目クラスと前記残クラスとのどちらかに分類する受動分類ステップとを有すると共に、前記クラスの分類が済んでいる事例データに加えて前記提示された事例データであって新たにクラスの分類がされた事例データを用いて前記第1超平面と前記第2超平面とを前記計算機に再計算させるようにしている。
また、請求項8記載のデータ判別支援装置は、事例データが属するクラスの判別を支援する装置であり、複数の前記事例データの入力を受け付けるデータ入力手段と、複数の前記クラスの中から1のクラスを選択して当該選択されたクラスである着目クラスと選択されなかったクラスである残クラスとについて前記複数の事例データの中から前記着目クラスに属する少なくとも一つの事例データ及び前記残クラスに属する少なくとも一つの事例データを選択してこれら選択された事例データ(以下、初期データという)のクラス情報の入力を受け付ける初期情報入力手段と、当該入力されたクラス情報に基づき、前記初期データを前記着目クラスと前記残クラスとのどちらかに分類する初期受動分類手段と、クラスの分類が済んでいる事例データを用いて特徴空間の中で前記着目クラスの境界となる第1超平面と前記残クラスの境界となる第2超平面とを計算する識別面生成手段と、クラスの分類が済んでいない事例データのうち、前記第1超平面と前記第2超平面とに挟まれた領域であるグレーゾーンに該当しない事例データを、前記着目クラスと前記残クラスとのいずれか該当する方に自動で分類する自動分類手段と、クラスの分類が済んでいない事例データのうち、前記グレーゾーンに該当する事例データの全部または一部を提示する提示手段と、当該提示された事例データのクラス情報の入力を受け付ける補充情報入力手段と、当該入力されたクラス情報に基づき、前記提示された事例データを前記着目クラスと前記残クラスとのどちらかに分類する受動分類手段とを備えていると共に、前記クラスの分類が済んでいる事例データに加えて前記提示された事例データであって新たにクラスの分類がされた事例データを用いて前記第1超平面と前記第2超平面とを再計算させるようにしている。
また、請求項10記載のデータ判別支援プログラムは、事例データが属するクラスの判別を支援する装置としてコンピュータを機能させるプログラムであり、複数の前記事例データの入力を受け付けるデータ入力手段と、複数の前記クラスの中から1のクラスを選択して当該選択されたクラスである着目クラスと選択されなかったクラスである残クラスとについて前記複数の事例データの中から前記着目クラスに属する少なくとも一つの事例データ及び前記残クラスに属する少なくとも一つの事例データを選択してこれら選択された事例データ(以下、初期データという)のクラス情報の入力を受け付ける初期情報入力手段と、当該入力されたクラス情報に基づき、前記初期データを前記着目クラスと前記残クラスとのどちらかに分類する初期受動分類手段と、クラスの分類が済んでいる事例データを用いて特徴空間の中で前記着目クラスの境界となる第1超平面と前記残クラスの境界となる第2超平面とを計算する識別面生成手段と、クラスの分類が済んでいない事例データのうち、前記第1超平面と前記第2超平面とに挟まれた領域であるグレーゾーンに該当しない事例データを、前記着目クラスと前記残クラスとのいずれか該当する方に自動で分類する自動分類手段と、クラスの分類が済んでいない事例データのうち、前記グレーゾーンに該当する事例データの全部または一部を提示する提示手段と、当該提示された事例データのクラス情報の入力を受け付ける補充情報入力手段と、当該入力されたクラス情報に基づき、前記提示された事例データを前記着目クラスと前記残クラスとのどちらかに分類する受動分類手段としてコンピュータを機能させると共に、前記クラスの分類が済んでいる事例データに加えて前記提示された事例データであって新たにクラスの分類がされた事例データを用いて前記第1超平面と前記第2超平面とを再計算するようにコンピュータを機能させるようにしている。
第1超平面と第2超平面とに挟まれた領域(グレーゾーン)は、本来どちらのクラスに分けられるか不確定の領域である。クラスが未知の新たな事例データが加わったときに、これら新たに加わった事例データのうち、注意して判定しなければならないのはグレーゾーンに該当するものだけである。何故なら、グレーゾーンに位置する事例データは、僅かな違いでいずれのクラスにも属し得る可能性があり、どちらのクラスに属するかはっきりしない判定の難しいデータと言えるからである。そこで、グレーゾーンの外に位置する判定の容易な事例データについては計算機が自動でクラス判定を行い、グレーゾーンの中に位置する判定の難しい事例データだけを計算機が人間に提示し、提示された判定の難しい事例データのみについて人間が計算機にクラスの正解値を教えるようにする。これにより、作業者はすべての事例データについてクラスを判定する必要はなくなり、人間がクラスを判断しなければならない事例データ数を圧倒的に減らすことができ、人間の作業量を大幅に減らすことができる。
また、請求項2記載の発明は、請求項1記載の事例データベースの構築方法において、前記提示ステップでは、前記グレーゾーンに該当する事例データのうちの一定数の事例データを前記計算機に提示させ、全ての前記事例データのクラスの分類が終了するまで、前記識別面生成ステップ、前記自動分類ステップ、前記提示ステップ、前記補充情報入力ステップ、前記受動分類ステップを繰り返すようにしている。
また、請求項9記載の発明は、請求項8記載のデータ判別支援装置において、前記提示手段は、前記グレーゾーンに該当する事例データのうちの一定数の事例データを提示し、全ての前記事例データのクラスが確定するまで、前記識別面生成手段、前記自動分類手段、前記提示手段、前記補充情報入力手段、前記受動分類手段の処理を繰り返すようにしている。
また、請求項11記載の発明は、請求項10記載のデータ判別支援プログラムにおいて、前記提示手段は、前記グレーゾーンに該当する事例データのうちの一定数の事例データを提示し、全ての前記事例データのクラスが確定するまで、前記識別面生成手段、前記自動分類手段、前記提示手段、前記補充情報入力手段、前記受動分類手段の処理を繰り返すようにしている。
この場合、グレーゾーンに該当する事例データの数が膨大となる場合でも、当該膨大な数の事例データの全てを計算機が作業者等に提示するのではなく、一部を提示するので、作業者等はグレーゾーンに該当する事例データの一部についてのみ計算機にクラスの正解値を教えればよい。従って、事例データベースの構築作業にあたる人間(作業者等)の作業量を確実に低減できる。
また、請求項3記載の発明は、請求項2記載の事例データベースの構築方法において、前記提示ステップでは、前記グレーゾーンに該当する事例データのうち、前記第1超平面と前記第2超平面との間に位置する識別面に最も近い事例データから順に一定数の事例データを前記計算機に提示させるようにしている。この場合、識別面の近傍に位置する事例データほどクラスの判定が困難であるため、最適な識別面の生成に有効な事例データを、計算機が作業者等に効率的に提示できる。
また、請求項4記載の発明は、請求項3記載の事例データベースの構築方法において、前記第1超平面および前記第2超平面および前記識別面をサポートベクターマシーンにより計算するようにしている。サポートベクターマシンは、現在知られているパターン識別手法の中で最も優秀なパターン識別能力を有する方法の一つであり、この方法を利用することで、正確に事例データが分類された質の高い事例データベースを構築できる。
また、請求項5記載の発明は、請求項1から4のいずれか1つに記載の事例データベースの構築方法において、前記クラスは3つ以上存在し、任意の1のクラスと残りのクラスとの事例データの分類を行う処理を、属する事例データが確定したクラスは除くとの条件の下で、残りのクラスが1となるまで繰り返すようにしている。この場合、判定回数を極力減らして、効率的に多クラスの事例データベースを構築できる。
また、請求項6記載の発明は、請求項1から5のいずれか1つに記載の事例データベースの構築方法において、前記事例データは画像データであるものとしている。したがって、従来は、膨大な数の画像のすべてに対して専門家(人間)がクラス判定を行って構築されていた画像データベースを、人間と計算機が協調作業することにより、人間の作業量を大幅に減らして、構築することができる。
また、請求項7記載の発明は、事例データが属するクラスを判定する判別装置を学習させる方法であり、複数の前記事例データを計算機に入力するデータ入力ステップと、複数の前記クラスの中から1のクラスを選択して当該選択されたクラスを着目クラスとすると共に選択されなかったクラスを残クラスとするステップと、前記複数の事例データの中から前記着目クラスに属する少なくとも一つの事例データ及び前記残クラスに属する少なくとも一つの事例データを選択してこれら選択された事例データ(以下、初期データという)のクラス情報を前記計算機に入力する初期情報入力ステップと、当該入力されたクラス情報に基づき、前記計算機が前記初期データを前記着目クラスと前記残クラスとのどちらかに分類する初期受動分類ステップと、クラスの分類が済んでいる事例データを用いて特徴空間の中で前記着目クラスの境界となる第1超平面と前記残クラスの境界となる第2超平面とを前記計算機に計算させる識別面生成ステップと、クラスの分類が済んでいない事例データのうち、前記第1超平面と前記第2超平面とに挟まれた領域であるグレーゾーンに該当しない事例データを、前記着目クラスと前記残クラスとのいずれか該当する方に前記計算機により自動で分類する自動分類ステップと、クラスの分類が済んでいない事例データのうち、前記グレーゾーンに該当する事例データのうちの一定数の事例データを前記計算機に提示させる提示ステップと、当該提示された事例データのクラス情報を前記計算機に入力する補充情報入力ステップと、当該入力されたクラス情報に基づき、前記計算機が前記提示された事例データを前記着目クラスと前記残クラスとのどちらかに分類する受動分類ステップとを有すると共に、前記クラスの分類が済んでいる事例データに加えて前記提示された事例データであって新たにクラスの分類がされた事例データを用いて前記第1超平面と前記第2超平面とを前記計算機に再計算させて、全ての前記事例データのクラスの分類が終了するまで、前記識別面生成ステップ、前記自動分類ステップ、前記提示ステップ、前記補充情報入力ステップ、前記受動分類ステップを繰り返し、前記計算機を学習させ前記判別装置として機能させるようにしている。
本発明によれば、事例データベースの構築が完了した時点で、クラスを識別する識別面の学習も完了している。したがって、事例データベースの構築に用いた計算機は、クラスが未知の事例データが与えられると、当該事例データが属するクラスを自動判定して出力する判別装置として機能する。したがって、従来は精度の高い判定を行うために専門家(人間)が膨大な数の例題を予め用意する必要があったが、作業者は例題となるすべての事例データについてクラスの正解値を判定する必要はなくなり、人間がクラスを判断しなければならない事例データ数を圧倒的に減らすことができ、人間の作業量を大幅に減らすことができる。これにより、判別装置の学習を省力化、効率化できる。
しかして請求項1記載の事例データベースの構築方法、請求項7記載の判別装置の学習方法、請求項8記載のデータ判別支援装置、請求項10記載のデータ判別支援プログラムによれば、人間(作業者等)は、事例データベースを構築するための或いは計算機を判別装置として学習させるための膨大な量の事例データのすべてに対して「甲」「乙」「丙」といったクラス判定を行う必要はなく、計算機が提示する計算機にとって判別が困難な必要最低限の事例データに対してのみクラス判定を行えばよい。したがって、人間が判断しなければならない事例データを圧倒的に減らすことができ、人間の作業量を大幅に減らすことができる。この結果、事例データベースの構築または判別装置の学習に費やすコスト、時間、労力を大幅に削減できる。
また、本発明によれば、人間による判定回数を必要最低限に押さえながら、膨大な量のの設備・機器状態データに、適切な「判定」(例えば「利用可能、利用不可」や「良、不良」などの判定)を付加することができ、CBM(設備・機器の劣化状態等に基づく状態監視保全)の実現に大きな貢献が期待できる。
さらに、請求項2記載の事例データベースの構築方法、請求項9記載のデータ判別支援装置、請求項10記載のデータ判別支援プログラムによれば、グレーゾーンに該当する事例データの数が膨大となる場合でも、当該膨大な数の事例データの全てを計算機が作業者等に提示するのではなく、一部を提示するので、事例データベースの構築作業にあたる人間(作業者等)の作業量を確実に低減できる。
さらに、請求項3記載の事例データベースの構築方法によれば、識別面に最も近い事例データから順に一定数の事例データを計算機に提示させるので、最適な識別面の生成に有効な事例データを、計算機が作業者等に効率的に提示できる。
さらに、請求項4記載の事例データベースの構築方法によれば、第1超平面および第2超平面および識別面をサポートベクターマシーンにより計算するので、正確に事例データが分類された質の高い事例データベースを構築できる。
さらに、請求項5記載の事例データベースの構築方法によれば、判定回数を極力減らして、効率的に多クラスの事例データベースを構築できる。
さらに、請求項6記載の事例データベースの構築方法によれば、従来は、膨大な数の画像のすべてに対して専門家(人間)がクラス判定を行って構築されていた画像データベースを、人間と計算機が協調作業することにより、人間の作業量を大幅に減らして、構築することができる。
以下、本発明の構成を図面に示す実施形態に基づいて詳細に説明する。
図1から図12に本発明の事例データベースの構築方法、判別装置の学習方法、データ判別支援装置、データ判別支援プログラムの実施の一形態を示す。本実施形態では、次のようにして事例データベース1を構築する。先ず、複数の事例データを計算機2に入力する(データ入力ステップ、図2のS1)。次に、複数の事例データのうちの一部であり且つ少なくとも異なる2つのクラスに属する事例データのクラス情報を計算機2に入力する(初期情報入力ステップ、図1のS401)。次に、入力されたクラス情報に基づき、計算機2が該当する事例データを該当するクラスに分類する(初期受動分類ステップ、S402)。次に、クラスの分類が済んでいる事例データを用いて特徴空間の中で一のクラスの境界となる第1超平面H1とその他のクラスの境界となる第2超平面H2とを計算機2に計算させる(識別面生成ステップ、S403)。次に、クラスの分類が済んでいない事例データのうち、第1超平面H1と第2超平面H2とに挟まれた領域であるグレーゾーンGに該当しない事例データを、上記一のクラスとその他のクラスのいずれか該当する方に計算機2により自動で分類する(自動分類ステップ、S404)。次に、クラスの分類が済んでいない事例データのうち、グレーゾーンGに該当する事例データの全部または一部を計算機2に提示させる(提示ステップ、S405)。次に、当該提示された事例データのクラス情報を計算機2に入力する(補充情報入力ステップ、S406)。次に、当該入力されたクラス情報に基づき、計算機2が該当する事例データを該当するクラスに分類する(受動分類ステップ、S407)。
ここで、例えば本実施形態では、提示ステップ(S405)において、グレーゾーンGに該当する事例データのうちの一定数の事例データを計算機2に提示させるようにしている。そして、全ての事例データのクラスの分類が終了するまで(S408)、識別面生成ステップ(S403)、自動分類ステップ(S404)、提示ステップ(S405)、補充情報入力ステップ(S406)、受動分類ステップ(S407)を繰り返すようにしている。このように構成することで、グレーゾーンGに該当する事例データの数が膨大となる場合でも、事例データベース1の構築作業にあたる人間(即ち作業者)の作業量を低減できる。尚、グレーゾーンGに該当する事例データの数が少ないような場合には、提示ステップ(S405)において、グレーゾーンGに該当する事例データの全部を計算機2に提示させるようにしても良く、この場合はS408をループ終了条件とする繰り返し処理は行わなくとも良い。
事例データは、例えば電力設備機器の状態データであり、特に本実施形態では、電柱の腕金の監視画像(以下、腕金画像と略記する。)としている。腕金画像はデジタル画像であり、デジタルデータとして取り扱うことができる。但し、事例データが腕金画像に限られるものではなく、他の設備・機器等の画像であっても良く、また画像に限らず、設備・機器のセンサ情報(例えば温度や音などの情報)などであっても良い。
識別面生成ステップ(S403)における第1超平面H1と第2超平面H2の計算には、例えば本実施形態ではサポートベクターマシーンを利用する。サポートベクターマシン(Support Vector Machine、SVMとも呼ぶ。)は、現在知られているパターン識別手法の中で最も優秀なパターン識別能力を有する方法の一つである。
d次元の1個のパターンデータ(例えば画像)X=(x1,x2,・・・,xd)が与えられたときに、このXがどのクラスに属するのかを分類する。便宜上、クラスの数は2個とし、クラスをyで表し、クラスyを1と−1に数値化しておく。データXを入力とし、クラスy=±1を出力とする関数を「識別関数」と呼ぶ。
計算機2を判別装置2’として機能させるためには、事前に与えられた例題を計算機2に学習させ、例題が正しく識別されるような識別関数を求める。例題は、n個のサンプルデータX1,X2,・・・,Xnと、これらのサンプルデータに対応する正解のクラスy1,y2,・・・,ynである。そして、新しく与えられた未知のデータXを、得られた識別関数を用いて分類し、クラスyを出力する。
図3はSVMがパターン識別を行う際の概念図である。白丸(=−1)と黒丸(=1)とを分類したいとする。入力データXに対し、二値の出力yを与える以下の識別関数y=f(X)に従って出力する。
<数1>
f(X)=sgn(w・X+b)
ここで、w=(w1,w2,・・・,wd)はベクトル変数、bはスカラー変数である。w・Xの・は内積を表す。sgn[u]は、u>0で1をとり、u≦0で−1をとる符号関数である。これは、図3において、d次元の入力空間をw・X+b=0で定義される超平面(識別面)H0で二つに分け、一方に1を、もう一方に−1を対応させることに対応する。学習とは、与えられた例題に対してwやbを調整することである。
すべてのサンプルデータに対して正しいクラスが出力されるようなwとbの組み合わせが存在するとき、その例題集合は「線形分離可能」であるという。この線形分離を実現する超平面(識別面)H0は一つには決まらない。そこで、SVMでは、識別面H0(最適超平面)から各クラスの端までの距離をマージンLと呼び、マージンLを最大にするように識別面H0を決める。それはクラス間の真ん中を識別面H0とすることに対応する。識別面H0からマージンLだけ離れて識別面H0を挟む2枚の超平面、換言すればクラスの端のサンプルデータがのっている超平面が、第1超平面H1と第2超平面H2となる。
ここで、すべてのサンプルデータに対して正しいクラスが出力されるようなwとbの組み合わせが存在することは必ずしも保証されない。つまり、常に「線形分離可能」であるとは限らない。一般に線形分離は、サンプル数nが大きくなるほど難しく、特徴ベクトルの次元dが大きいほど易しくなる。そこで、線形分離可能でない場合には、Xを非線形変換(z=φ(X))によって、より高次元の空間に写像する。すると、線形分離可能な状態となり、最適な識別面(分離超平面)H0を求めることができる。例えば図4に示すように、二次元空間上のXを非線形変換(z=φ(X))することにより、三次元空間上のzへと変換すると、平面で線形分離することができる。
普通は次元の増加とともに計算量が増え計算が困難となる。この問題を解決するためにSVMでは、内積X・Xを非線形変換した結果現れる内積z・z=φ(X)・φ(X)を核関数(カーネル関数)Kを使って済ませ、zの計算を経由しないという方法をとる。このテクニックを「カーネルトリック」と呼ぶ。つまり、Kを以下のように置く。
<数2>
K(X1,X2)=φ(X1)・φ(X2)
カーネル関数Kの代表的な例としては、以下の数式3で表されるRBF(Radial Basis Function)カーネルや、数式4で表されるp次の多項式カーネルがある。
<数3>
K(x、y)=exp(−‖x−y‖2/2σ2)
<数4>
K(x、y)=(x・y+1)p
このように、カーネルトリックと呼ばれる計算方法によって、高次元へ写像していながら計算量を減らして計算をスムーズに行う。すると、線形分離可能な状態となり、最適な識別面H0(分離超平面)を求めることができる。尚、識別面H0および第1超平面H1および第2超平面H2を求めるアルゴリズムは必ずしも上記の例には限定されず、その他の既知のアルゴリズムあるいは更に改良された新規のアルゴリズムを採用することも可能である。
識別面生成ステップ(S403)において、クラスの分類が済んでいる事例データは、上記の例題に相当する。したがって、この例題を用いて、上記のようにSVMにより識別面H0および第1超平面H1および第2超平面H2を計算できる。本実施形態の事例データはデジタル画像データであり、SVMでは、例えば色を表すRGB画像の画素値といった画像の特徴を要素とするベクトル空間(特徴空間)上で、各画像はそれぞれ点として表される。SVMでは、注意して識別しなければならないのは、境界(第1超平面H1上または第2超平面H2上)に来るようなデータだけである点に着目し、境界に位置する分類の難しいデータ(図3中の点線上のデータ)のみを用い、そのデータから識別面H0までの距離(マージンL)を最大にするように識別面H0を決定する。そして、新しい未知のデータが特徴空間上で識別面H0のどちら側に位置するかによって、当該未知データのクラス(−1または1)を判断する。
ここで、マージンLの中、すなわち第1超平面H1と第2超平面H2とに挟まれた領域(グレーゾーンG)は、本来どちらのクラスに分けられるか不確定の領域である。クラスが未知の新たな事例データが加わったときに、これら新たに加わった事例データのうち、注意して判定しなければならないのはグレーゾーンGに該当するものだけである。何故なら、グレーゾーンGに位置する事例データ、特に識別面H0上または識別面H0の近傍に位置する事例データは、僅かな違いでいずれのクラスにも属し得る可能性があり、どちらのクラスに属するかはっきりしない判定の難しいデータと言えるからである。
そこで、グレーゾーンGの外に位置する判定の容易な事例データについては計算機2が自動でクラス判定を行い(S404)、グレーゾーンGの中に位置する判定の難しい事例データだけを計算機2が人間に提示し(S405)、提示された判定の難しい事例データのみについて人間が計算機2にクラスの正解値を教えるようにする(S406)。これにより、作業者はすべての事例データについてクラスを判定する必要はなくなり、人間がクラスを判断しなければならない事例データ数を圧倒的に減らすことができ、人間の作業量を大幅に減らすことができる。
識別面H0の近傍に位置する事例データほどクラスの判定が困難であると考えられるため、例えば本実施形態では、提示ステップ(S405)において、グレーゾーンGに該当する事例データのうち、識別面H0に最も近い事例データから順に一定数の事例データを計算機2に提示させるようにしている。
ここで、SVMは入力として与えられた事例データが2つのクラスのどちらに属するかを判断するアルゴリズムであるが、実際のクラスは3つ以上であっても構わない。例えば本実施形態では、次のようにして、3つ以上の多クラスに対応可能としている。即ち、任意の1のクラスと残りのクラスとの事例データの分類を行う処理を、属する事例データが確定したクラスは除くとの条件の下で、残りのクラスが1となるまで繰り返すようにしている。換言すれば、図5に示すように、木構造による判定方法を用いている。例えば、「甲」「乙」「丙」の3つのクラスがあるとすると、まず「甲」と「その他(「乙」「丙」)」について判定し、次に、属する事例データが確定した「甲」を除いて、「その他」から「乙」と「丙」を判定する。これにより、各回の判定は2クラスの判定となり、SVMによる判定が可能となる。同様にして、3クラス以上の場合にも対応可能である。尚、図5中の符号H0,H1,H2は「甲」と「その他(「乙」「丙」)」を分類する識別面およびこの識別面を挟む第1超平面と第2超平面を示し、符号H0’,H1’,H2’は「乙」と「丙」を分類する識別面およびこの識別面を挟む第1超平面と第2超平面を示す。
尚、例えば「甲」「乙」「丙」を先ず2クラスに分類する場合、その分類の仕方は、「甲」と「乙・丙」、「乙」と「甲・丙」、「丙」と「甲・乙」、のように複数の組み合わせが考えられるが、この中から1つを計算機2によりランダムに選択するようにしても良く、特定の組み合わせを選択するように人間が計算機2に指示するようにしても良い。
但し、3つ以上の多クラスに対応するための方法は、上記の木構造による判定方法には必ずしも限られない。例えば「甲」と「乙」、「乙」と「丙」、「丙」と「甲」の全ての組み合わせについて判定し、各組み合わせでの判定結果(3クラスの例では二つの判定結果)が一致している場合には、そのクラスを答えとし、各組み合わせでの判定結果が異なった場合には、識別面H0からの距離が最も遠いクラスを答えとするようにしても良い。或いは、「甲」と「その他(「乙」「丙」)」、「乙」と「その他(「丙」「甲」)」、「丙」と「その他(「甲」「乙」)」について判定し、各判定結果(3クラスの例では三つの判定結果)が一致している場合にはそのクラスを答えとし、判定結果が競合している場合には、識別面H0からの距離が最も遠いクラスを答えとするようにしても良い。尚、これらの方法の場合にも、同様にして3クラス以上の場合にも対応可能である。但し、木構造による判定方法が判定回数が最も少なく、処理速度が最も速い方法である。
腕金画像を事例データとする本実施形態では、各画像に撮影された腕金の錆の状態などから、これら腕金画像を「引き続き利用できる状態」「鍍金処理を施した後に再利用できる状態」「廃棄する必要がある状態」の3つのクラスに分ける。
ここで、本実施形態では、各事例データにクラスの情報を表す判定ラベルを付与することで、各事例データを該当するクラスに分類するようにしている。尚、SVMにより判定されるクラス情報(y=±1)を便宜上サブラベルと呼ぶ。
本発明は、データ判別支援装置20として装置化される。このデータ判別支援装置20は、複数の事例データの入力を受け付けるデータ入力手段21と、複数の事例データのうちの一部であり且つ少なくとも異なる2つのクラスに属する事例データのクラス情報の入力を受け付ける初期情報入力手段22と、当該入力されたクラス情報に基づき、該当する事例データを該当するクラスに分類する初期受動分類手段23と、クラスの分類が済んでいる事例データを用いて特徴空間の中で一のクラスの境界となる第1超平面H1とその他のクラスの境界となる第2超平面H2とを計算する識別面生成手段24と、クラスの分類が済んでいない事例データのうち、第1超平面H1と第2超平面H2とに挟まれた領域であるグレーゾーンGに該当しない事例データを、上記一のクラスとその他のクラスのいずれか該当する方に自動で分類する自動分類手段25と、クラスの分類が済んでいない事例データのうち、グレーゾーンGに該当する事例データの全部または一部を提示する提示手段26と、当該提示された事例データのクラス情報の入力を受け付ける補充情報入力手段27と、当該入力されたクラス情報に基づき、該当する事例データを該当するクラスに分類する受動分類手段28とを備えている。
本実施形態のデータ判別支援装置20は、例えば計算機2(コンピュータ)を利用して構成される。この計算機2がデータ判別支援プログラムを実行することで、当該計算機2がデータ判別支援装置20として機能する。計算機2は、例えば図6に示すように、中央処理演算装置(CPU)31、RAMやROMおよびハードディスクなどの記憶装置32、キーボードやマウスなどの入力装置33、ディスプレイやプリンタ等の出力装置34、CDやFDなどの媒体に記録されたデータを読み取るディスクドライブ等のデータ読取装置35、ネットワーク28を介して外部の情報処理装置29とデータ通信を行うネットワークインターフェース36などのハードウェア資源がバス46により接続されて構成されている。計算機2のデータ読取装置35は、データ入力手段21として機能する。尚、外部の情報処理装置29より事例データを受信する場合は、ネットワークインターフェース36がデータ入力手段21として機能する。計算機2の入力装置33は、初期情報入力手段22および補充情報入力手段27として機能する。計算機2のCPU31は、初期受動分類手段23および識別面生成手段24および自動分類手段25および受動分類手段28として機能する。計算機2の出力装置34は、提示手段26として機能する。尚、外部の情報処理装置29を利用する者にグレーゾーンGに該当する事例データを提示する場合には、ネットワークインターフェース36が提示手段26として機能する。
このデータ判別支援装置20が実行する処理の一例を図1、図2に示すフローチャートに従って以下に説明する。先ず、作業者が、複数の事例データとして、予め用意された複数の腕金画像をデータ入力手段21を介して計算機2に入力する(データ入力ステップ、図2のS1)。入力された複数の事例データは、計算機2の記憶装置32に記録される。
次に、計算機2は、記憶装置32内に作業領域を確保し、当該作業領域に全てのクラス名を記録する(S2)。この作業領域を「クラスの群」と呼ぶ。尚、どのようなクラス名が存在するのかは、予め必要なパラメータとして、入力装置33などを介して作業者により計算機2に入力されているものとする。例えば本実施形態では、腕金画像が属するクラスは、「引き続き利用できる状態」「鍍金処理を施した後に再利用できる状態」「廃棄する必要がある状態」の3つである。本実施形態では便宜上、「引き続き利用できる状態」のクラス名を「甲」とし、「鍍金処理を施した後に再利用できる状態」のクラス名を「乙」とし、「廃棄する必要がある状態」のクラス名を「丙」とする。
また、クラスの分類を行う対象となる事例データの群を対象データ群と呼ぶ。処理の開始時点では、記憶装置32に記録されたすべての事例データが対象データ群として計算機2に認識される(S2)。
次に、上記「クラスの群」の中から1のクラスを選択する(S3)。即ち、「甲」「乙」「丙」の中から1のクラスを選択する。選択されたクラスを「着目クラス」と呼ぶ。選択されなかったクラスを「残クラス」と呼ぶ。尚、「着目クラス」の選択は、「クラスの群」の中から計算機2がランダムに自動で選択するようにしても良く、計算機2が現時点の「クラスの群」を出力装置34に表示して、人間が入力装置33を用いて選択できるようにしても良い。ここでは、例えば「甲」が「着目クラス」として選択されたとする。
次に、「着目クラス」と「残クラス」との分類を行う(S4)。即ち、対象データ群について、「甲」と「その他(「乙」「丙」)」のどちらに属するのか判定を行う。当該判定処理を詳細化したフローチャートを図1に示す。
先ず、作業者が、対象データ群のうちの一部であり且つ少なくとも異なる2つのクラスに属する事例データのクラス情報を入力装置33を介して計算機2に入力する(図1のS401)。即ち、「着目クラス」と「残クラス」の代表的な事例データを選択し、当該事例データの正解のクラスを作業者が計算機2に教示する。上記選択される「着目クラス」と「残クラス」の代表的な事例データを初期データと呼ぶ。尚、初期情報入力ステップ(S401)における初期データの選択および初期データの正解クラスの入力は、例えば図7に示すように、作業者が予め各クラスごとに代表的な事例データを例えば少なくとも一つずつ選択しておき、作業者が入力装置33を介して初期データを指定し(S401−1A)、且つこれらの正解クラスを計算機2に指示するようにしても良い(S401−2A)。或いは、例えば図8に示すように、計算機2が対象データ群の中からランダムに選択した事例データを出力装置34に表示する処理と(S401−1B)、表示された事例データの正解クラスを作業者が入力装置33を介して計算機2に入力する処理とを(S401−2B)、「着目クラス」と「残クラス」に属する事例データが例えば少なくとも一つずつ選択されるまで(S400)、繰り返すようにしても良い。
ここで、初期データの数は、「着目クラス」と「残クラス」に属する事例データが少なくとも一つずつあれば(即ち最低2つ以上あれば)良いが、下流の識別面生成ステップ(S403)において信頼のおける識別面H0を形成するためには、ある程度の数の初期データを用意しておくことが望ましい。このため、初期データの数がある一定数に達するまで(図7,図8のS400)、初期情報入力ステップ(S401)において初期データを選択し且つ初期データの正解クラスを入力する処理を繰り返すようにしても良い。初期データの必要数は、例えばパラメータとして、入力装置33などを介して作業者により計算機2に予め入力しておくことができる。
次に、初期情報入力ステップ(S401)で入力されたクラス情報に基づいて、計算機2は該当する事例データを該当するクラスに分類する(S402)。本実施形態では、該当する事例データに判定ラベルを付加することで、事例データをクラス別に分類するようにしている。本実施形態での判定ラベルは、例えば「甲」「乙」「丙」のいずれかである。一方、SVMによる判定で与えられるクラス情報(サブラベル)は「1」「−1」のいずれかである。そこで本実施形態では、「着目クラス」に該当するサブラベルを「1」とし、「残クラス」に該当するサブラベルを「−1」として、判定ラベルに加えてサブラベルを事例データに付加するようにしている。従って、初期受動分類ステップ(S402)では、「甲」の判定ラベルが付加された事例データには同時にサブラベルとして「1」が付加され、「乙」または「丙」の判定ラベルが付加された事例データには同時にサブラベルとして「−1」が付加される。
次に、対象データ群の中から、クラスの分類が済んでいる事例データ、換言すればサブラベルが付加されている事例データを用いて、計算機2は、特徴空間の中の識別面H0、第1超平面H1、第2超平面H2を計算する(S403)。図9にSVMによる計算処理の一例を示す。先ず、サブラベルが付加されている事例データを特徴空間上に表現する(S403−1)。本実施形態の事例データはデジタル画像データであり、例えば色を表すRGB画像の画素値といった画像の特徴を要素とするベクトルとして、特徴空間上で、各画像の特徴ベクトルがそれぞれ点として表現される。尚、事例データ(例えば本実施形態では画像)から特徴ベクトルを作成する方法は、特定のものに限定されるものではなく、既知または新規のパターン認識技術や画像処理技術のアルゴリズムを利用して良い。そして、特徴ベクトルの中から識別の難しい特徴ベクトル(サポートベクター)を抽出し、マージンLが最大となる識別面H0を求める最適化問題を解く(S403−2)。この結果、例えば図10(a)に示すように、識別面H0が生成され(S403−3)、グレーゾーンGが決定する(S403−4)。
次に、計算機2は、対象データ群の中から、クラスの分類が済んでいない事例データ、換言すればサブラベルが付加されていない事例データについて、グレーゾーンGに該当しない事例データを、「着目クラス」と「残クラス」のいずれか該当する方に自動で分類する(S404)。具体的には、対象データ群の中でサブラベルがまだ付加されていない事例データを上記特徴空間上に表現し、グレーゾーンGの外に位置する事例データに対し、「着目クラス」の領域に位置する事例データにはサブラベルとして「1」を付加し、「残クラス」の領域に位置する事例データにはサブラベルとして「−1」を付加する。図10(b)中の△で示すデータは、サブラベルが付加されていない事例データを示す。図10(c)は、上記自動分類ステップ(S404)によって、グレーゾーンGの外に位置する事例データが「着目クラス」または「残クラス」に属するデータとして自動的に認識される様子を示す。
一方、計算機2は、上記特徴空間上に表現されたサブラベルがまだ付加されていない事例データのうち、グレーゾーンGの中に位置する事例データについて、識別面H0に最も近い事例データから順に一定数の事例データを、出力装置34に表示する(S405)。尚、出力装置34に表示する事例データの数は、例えばパラメータとして、入力装置33などを介して作業者により計算機2に予め入力しておくことができる。ここで、本実施形態では、提示ステップ(S405)において出力装置34に表示する事例データを、識別面H0に最も近い事例データから順に選択しているが、グレーゾーンGの中に位置する事例データの中からランダムに選択するようにしても構わない。例えば図10(c)中の○で囲まれた△で示す識別面H0に近いデータが、出力装置34に表示される。
これに対して作業者は、計算機2が提示した事例データの正解クラスを入力装置33を介して計算機2に入力する(S406)。
すると、計算機2は、補充情報入力ステップ(S406)で入力されたクラス情報に基づいて、該当する事例データを該当するクラスに分類する(S407)。具体的には、「甲」「乙」「丙」のいずれかの判定レベルを該当する事例データに判定ラベルを付加し、且つ「甲」の判定ラベルが付加された事例データには同時にサブラベルとして「1」を付加し、「乙」または「丙」の判定ラベルが付加された事例データには同時にサブラベルとして「−1」を付加する。ここで、本実施形態では、「甲」と「その他(「乙」「丙」)」を分ける処理の中においても、作業者が「乙」または「丙」と判定した事例データについては、「乙」または「丙」の判定レベルを該当する事例データに付加するようにしている。したがって、当該「乙」または「丙」の判定レベルが付加された事例データを、後に「乙」と「丙」を分ける処理の中で、「乙」と「丙」を分離する識別面H0を形成するための例題として利用することができる。
次に、計算機2は、対象データ群の中に、クラスの分類が済んでいない事例データ、換言すればサブラベルがまだ付加されていない事例データがあるか、確認する(S408)。対象データ群の中にサブラベルがまだ付加されていない事例データがあれば(S408;Yes)、計算機2は、対象データ群の中の現時点でサブラベルが付加されている事例データを用いて、特徴空間の中の識別面H0、第1超平面H1、第2超平面H2を再計算する(S403)。この再計算を行う時点でのサブラベルが付加されている事例データの数は、自動分類ステップ(S404)および受動分類ステップ(S407)により、前回の識別面H0を計算する時点でのサブラベルが付加されている事例データの数よりも増加している。図10(d)は、識別面、第1超平面、第2超平面が再計算される様子を示し、図10(d)中の符号H0,H1,H2は再計算された新しい識別面、第1超平面、第2超平面を示している。上記再計算後、計算機2は、自動分類ステップ(S404)、提示ステップ(S405)、補充情報入力ステップ(S406)、受動分類ステップ(S407)を再実行する。そして、再度、対象データ群の中に、サブラベルがまだ付加されていない事例データがあるか、確認する(S408)。
以上により、対象データ群のすべての事例データにサブラベルが付加されると(S408;No)、「甲」と「その他(「乙」「丙」)」を分類する処理は終了し、図2に示すフローチャートに復帰する。尚、「甲」と「その他(「乙」「丙」)」を分離するための最終的な識別面H0、換言すれば学習が完了した最適な識別面H0(識別関数)は、計算機2の記憶装置32に記録される。
図2に示すフローチャートに復帰すると、計算機2は、サブラベル「1」が付加されているすべての事例データに対し、「着目クラス」の判定ラベル「甲」を付加する(S5)。これにより、自動分類ステップ(S404)において、サブラベル「1」だけが付加されて、判定ラベル「甲」が付加されていなかった事例データに対して、判定ラベル「甲」が付加される。
次に、計算機2は、「残クラス」の数が1つであるか判断する(S6)。「残クラス」の数が2以上あれば(S6;No)、さらに「残クラス」を分類する処理に進む。本実施形態では、「残クラス」は、「乙」と「丙」であり、2クラスであるので(S6;No)、さらに「乙」と「丙」を分類する処理に進む。
「残クラス」を分類する処理では、先ず、対象データ群に対して、「着目クラス」と「残クラス」とを分類するために便宜的に付加していたサブラベルを取り外す(S7)。そして、「クラスの群」の中から「着目クラス」を除外する(S8)。これにより本実施形態の場合、「クラスの群」は「乙」と「丙」だけになる。次に、対象データ群の中から「着目クラス」に属する事例データを除外する(S9)。本実施形態の場合、「甲」に属する事例データが対象データ群から除外され、対象データ群は「乙」または「丙」に属する事例データのみとなる。尚、「甲」に属する事例データが対象データ群として認識されなくなるだけであって、記憶装置32から「甲」に属する事例データが物理的に削除されるわけではない。そして、図2のS3以降の処理を再び繰り返す。
即ち、上記「クラスの群」の中から「着目クラス」を選択する(S3)。即ち、「乙」「丙」の中から「着目クラス」を選択する。ここでは、例えば「乙」が「着目クラス」として選択されたとする。次に、「着目クラス」と「残クラス」との分類を行う(S4)。即ち、対象データ群について、「乙」と「丙」のどちらに属するのか判定を行う。
先ず、初期データのクラス情報を計算機2に入力する(図1のS401)。この初期情報入力ステップ(S401)において、「甲」と「その他(「乙」「丙」)」を分離する前回の処理において、「乙」の判定ラベルを付加された事例データと、「丙」の判定ラベルを付加された事例データとが、既に必要な数だけそろっていれば(図7または図8のS400;Yes)、初期データを選択し且つ初期データの正解クラスを入力する処理をスキップすることができる。
次に、初期受動分類ステップ(S402)を実行し、「着目クラス」である「乙」の判定ラベルを付加する事例データには同時にサブラベルとして「1」を付加し、「残クラス」である「丙」の判定ラベルを付加する事例データには同時にサブラベルとして「−1」を付加する。そして、対象データ群のすべての事例データにサブラベルが付加されるまで(S408)、識別面生成ステップ(S403)、自動分類ステップ(S404)、提示ステップ(S405)、補充情報入力ステップ(S406)、受動分類ステップ(S407)を繰り返す。
対象データ群のすべての事例データにサブラベルが付加されると(S408;No)、「乙」と「その他(すなわち「丙」)」を分類する処理は終了し、図2に示すフローチャートに復帰する。尚、「乙」と「丙」を分離するための最終的な識別面H0、換言すれば学習が完了した最適な識別面H0(識別関数)は、計算機2の記憶装置32に記録される。
図2に示すフローチャートに復帰すると、計算機2は、サブラベル「1」が付加されているすべての事例データに対し、「着目クラス」の判定ラベル「乙」を付加する(S5)。次に、計算機2は、「残クラス」の数が1つであるか判断する(S6)。本実施形態では、「残クラス」は「丙」だけであり、1つである(S6;Yes)。従って、計算機2は、サブラベル「−1」が付加されているすべての事例データに対し、「残クラス」の判定ラベル「丙」を付加する(S10)。これにより、自動分類ステップ(S404)において、サブラベル「−1」だけが付加されて、判定ラベル「丙」が付加されていなかった事例データに対して、判定ラベル「丙」が付加される。そして、「着目クラス」と「残クラス」とを分類するために便宜的に付加していたサブラベルを取り外し(S11)、処理は終了する。
以上の処理により、記憶装置32に記録されたすべての事例データに対して「甲」「乙」「丙」のいずれかの判定ラベルが付加される。即ち、記憶装置32には、複数の事例データがそれぞれ属するクラスに分類されて記録されており、記憶装置32において事例データベース1が構築される。また、事例データベース1の構築が完了した時点で、「甲」と「乙・丙」を識別する識別面H0および「乙」と「丙」を識別する識別面H0の学習も完了している。したがって、この計算機2は、クラスが未知の事例データ(腕金画像)が与えられると、当該事例データが属するクラスを自動判定して出力する判別装置2’として機能する。即ち、計算機2は事例データベース1としても利用できるし、判別装置2’としても利用できる。本発明方法により、事例データベース1を構築すると同時に計算機2を判別装置2’として学習させることができる。
以上のように本発明によれば、人間(作業者等)は、事例データベース1を構築するための或いは計算機2を判別装置2’として学習させるための膨大な量の事例データのすべてに対して「甲」「乙」「丙」といった判定ラベルを付与する必要はなく、計算機2が提示する計算機2にとって判別が困難な必要最低限の事例データに対してのみ判定ラベルを付与すればよい。したがって、人間が判断しなければならない事例データ(例えば腕金画像)を圧倒的に減らすことができ、人間の作業量を大幅に減らすことができる。この結果、事例データベース1の構築または判別装置2’の学習に費やすコスト、時間、労力を大幅に削減できる。
また、本発明によれば、人間による判定回数を必要最低限に押さえながら、膨大な量のの設備・機器状態データに、適切な「判定」(例えば「利用可能、利用不可」や「良、不良」などの判定)を付加することができ、CBM(設備・機器の劣化状態等に基づく状態監視保全)の実現に大きな貢献が期待できる。
本発明の有用性を実証するために、米国郵便番号手書き数字認識用公開テストデータ( http://www.kernel-machines.org/)のデジタル画像を、数字別に分類する処理に、本発明を適用した。テストデータとして用いた手書き数字のデジタル画像の合計は3747枚であり、その内訳は、数字0が1550枚、数字1が1268枚、数字2が929枚である。これらのテストデータを本発明により「数字0」「数字1」「数字2」の3つのクラスに分類する。
テストデータとして用いた手書き数字のデジタル画像は、16×16(=256)画素である。SVMへ学習させるデータセットは、一枚の画像から16×16行列の画素値を1行目から16行目まで順につけて並べた256個の数値データとした。SVMはインターネット上から入手できる汎用ソフト「libSVM」を用いた( http://www.csie.ntu.edu.tw/~cjlin/libsvm/)。また、本実施例では、カーネル関数として、2次の多項式カーネルを用いた。
本実施例では、はじめに「数字0」と「その他(「数字1」「数字2」)」を分類し、その後に、「数字1」と「数字2」の分類を行った。SVMでは、「数字0」と「その他」を分類する際には、「数字0」と判定した場合は「1」を与え、「数字1」または「数字2」と判定した場合は「−1」を与え、「数字1」と「数字2」を分類する際には、「数字1」と判定した場合は「1」を与え、「数字2」と判定した場合は「−1」を与えるようにした。
提示ステップ(S405)において、本実施例の判別装置2’が作業者に提示するユーザインタフェース画面30の一例を図11に示す。本実施例では、このユーザインタフェース画面30上に、グレーゾーンGの中に位置する4枚の画像を表示するようにしている。尚、本実施例では、当該4枚の画像を選択するにあたり、識別面H0に最も近い画像から順に選択する方法(以下、提案選択方法と呼ぶ。)と、ランダムに選択する方法(以下、ランダム選択方法と呼ぶ。)の両方を試した。
また、このユーザインタフェース画面30では、作業者が表示された4枚の画像について、それぞれ「選択なし」「0」「1」「2」の4つのチェックボックス41の中から一つだけチェックできるようになっている。つまり作業者は、表示された4枚の画像について、それぞれ「選択なし」「0」「1」「2」のいずれかを選択できる。尚、初めは「選択なし」にチェックが付されており、作業者が判定できない画像については「選択なし」のままでも良いように構成されている。
また、上記ユーザインタフェース画面30には、現時点までに、人が判定した画像の枚数、即ち、初期情報入力ステップ(S401)および補充情報入力ステップ(S406)において、作業者が計算機2に正解クラスを教示した画像の枚数が、「人が判定した枚数」として表示される(図11の符号42参照)。また、上記「人が判定した枚数」と、自動分類ステップ(S404)で計算機2が自動で判定ラベルを付した画像の枚数との合計が、上記ユーザインタフェース画面30に「ラベルの付いている枚数」として表示される(図11の符号43参照)。また、本実施例で用いたテストデータは既に正解(すなわち画像の示す数字)が判明しているため、その時点までにラベルの付いている画像が正しく識別されている割合が、上記ユーザインタフェース画面30に「識別率」として表示される(図11の符号44参照)。尚、本実施例では、自動分類ステップ(S404)の時点で判定ラベルが確定する場合、例えば「数字0」と「その他」を分類する場合において「数字0」と判定された場合、および「数字1」と「数字2」を分類する場合においては、該当する事例データにサブラベルに加えて判定ラベルを付与するものとした。
上記ユーザインタフェース画面30上で、表示された4枚の画像について、作業者がそれぞれ「選択なし」「0」「1」「2」の選択を終えて「OK」ボタン45を押すと、同じユーザインタフェース画面30のままで、4枚の新たな未判定画像が表示される。また、チェックボックス41のチェックの位置は「選択なし」へ初期化される。また、「識別率」、「人が判定した枚数」、「ラベルの付いている枚数」の数値が更新される。尚、一度作業者によって「0」「1」「2」のいずれかを判定された画像は、次回からは上記ユーザインタフェース画面30に提示されないようになっている。
また、本実施例では、初期情報入力ステップ(S401)では、初期データとして「数字0」のグループから2枚、「数字1」のグループから1枚、「数字2」のグループから1枚の画像を計算機2がランダムに選び、上記と同じユーザインタフェース画面30を用いて作業者に提示する。
提示ステップ(S405)において識別面H0に最も近い画像から順に4枚を選択する方法(提案選択方法)と、グレーゾーンGの中に位置する画像の中からランダムに4枚を選択する方法(ランダム選択方法)とを用いて、本発明により3747枚の画像に判定ラベルを付与する処理を、それぞれ100回ずつ試行した。
図12に上記の実験結果を示す。図12の横軸は、作業者(人間)が判定して判定ラベルを付与した画像の枚数を示し、縦軸はその時点で判定ラベルが付いている画像の中で、正しく判定ラベルが付いている画像数の全画像数3747枚に対する割合を示す。図12では、当該割合を「識別率」と定義している。実線は、提案選択方法の実験結果を示し、破線はランダム選択方法の実験結果を示す。尚、各実験結果は、100回試行した平均を示し、標準偏差をエラーバーで示した。提案選択方法では、ラベル付けの初期でばらつきが大きくなっている。これは、初めに数字0のグループと数字1,2のグループを分ける判別面からの距離が小さいものを選ぶようにしているため、数字1と数字2とのラベル付けが進まないことに起因している。最終的には、ランダム選択方法に比べ、提案選択方法の方が少ない枚数で3747枚の全画像に正しい判定ラベルが付与されている。また、本実施例で用いた手書き数字データの中には人間でも判定を間違えてしまうような判別の難しい画像データが元々含まれているが、図12に示すように本発明では全画像3747枚に正しい判定ラベルを付与することができており、高い識別率が得られていることがわかる。
尚、図12中の一点鎖線は、全ての画像に対して人間が判定して判定ラベルを付与する場合(人海戦術法と呼ぶ。)を示している。人海戦術法では、作業者が判定ラベルを付与した画像数が300枚の段階では、図12での識別率は300/3747(=0.08)と極めて低い。これに対して、本発明に係る提案選択方法では、作業者が約160枚の画像に判定ラベルを付与した段階で、図12の識別率は100%となっており、全画像3747枚に正しい判定ラベルを付与することができている。これにより本発明の有用性が確認できる。
次に、事例データベース1の構築のために10万枚の画像を判定し、ラベル付けする場合を想定し、提案選択方法とランダム選択方法と人海戦術法とにおけるコスト比較等を行った結果を表1に示す。提案選択方法とランダム選択方法の値は、100回試行した平均を示している。
表1の一段目は、全画像3747枚に正しい判定ラベルを付与するために、人間が判定ラベルを付ける必要がある画像の枚数を示している。提案選択方法では166.0(±5.0)枚であり、ランダム選択方法では287.6(±19.0)枚であり、人海戦術法では3747枚である。表1の二段目は、各事例データベース構築法のコスト比率を示している。人海戦術法の場合を1とすると、提案選択方法では0.044(=166.0/3747)であり、ランダム選択方法では0.077(=287.6/3747)である。表1の三段目は、1枚の画像を判定するのに10秒かかるとして10万枚ラベル付けするのに要する時間を示している。提案選択方法では12.3時間を要し、ランダム選択方法では21.3時間を要し、人海戦術法では278時間も要する。表1の四段目は1日当たり作業者が7時間労働した場合に要する日数を示している。提案選択方法では1.8日を要し、ランダム選択方法では3.1日を要し、人海戦術法では40日も要する。本発明に係る提案選択方法では人海戦術法に比べて約23分の1に省力化されており、ランダム選択方法でも約13分の1に省力化されている。仮に人件費として1時間当たり1万円の給与を支払った場合には、人海戦術法では278万円かかるところ、提案選択方法ではわずか約12万円で済む。以上のように、本発明によれば、事例データベース構築にかかる費用、労力、時間を大幅に軽減できることが確認できた。
なお、上述の実施形態は本発明の好適な実施の一例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々変形実施可能である。例えば事例データは、上述の実施例で例示した腕金画像等の画像データに限らず、設備・機器のセンサ情報(例えば温度や音などの情報)などであっても良い。
また、グレーゾーンGに該当する事例データの数が少ないような場合には、提示ステップ(S405)において、グレーゾーンGに該当する事例データの全部を計算機2に提示させるようにしても良く、この場合はS408をループ終了条件とする繰り返し処理は行わなくとも良い。
また、3つ以上の多クラスに対応するための方法は、上述の実施形態で説明した木構造による判定方法には限られず、例えば「甲」と「乙」、「乙」と「丙」、「丙」と「甲」のように、クラスの全ての組み合わせについて判定し、各組み合わせでの判定結果(3クラスの例では二つの判定結果)が一致している場合には、そのクラスを答えとし、各組み合わせでの判定結果が異なった場合には、識別面H0からの距離が最も遠いクラスを答えとするようにしても良い。或いは、「甲」と「その他(「乙」「丙」)」、「乙」と「その他(「丙」「甲」)」、「丙」と「その他(「甲」「乙」)」のように、一対その他の全ての組み合わせについて判定し、各判定結果(3クラスの例では三つの判定結果)が一致している場合にはそのクラスを答えとし、判定結果が競合している場合には、識別面H0からの距離が最も遠いクラスを答えとするようにしても良い。また、事例データベース構築後または判別装置の学習後、新たな事例データに対して本発明方法を再び実施して、既設の事例データベースを拡充したり、判別装置を再学習したりしても良い。