図1は、本発明を適用した情報処理装置の一実施の形態の構成例を示している。
情報処理装置1は、異常音を検出する処理を行う装置であり、学習データとして入力される、異常音および正常音が既知のサンプル信号に基づいてアルゴリズムを自動構築し、自動構築されたアルゴリズムに従って、新たな入力信号(以下、新規信号と称する)が異常音であるかまたは正常音であるかを判別する。
情報処理装置1は、サンプル信号入力部11、サンプル信号保存部12、アルゴリズム自動構築部13、トレードオフ分析部14、パレート最適解保存部15、使用アルゴリズム決定部16、新規信号入力部17、異常音自動判別部18、異常音判別結果出力部19、および修正情報入力部20により構成されている。
サンプル信号入力部11は、情報処理装置1の図示せぬ他のブロック、または、他の装置から入力されてくる、アルゴリズム構築のためのサンプル信号を受け付け、サンプル信号保存部12に供給する。
サンプル信号保存部12は、サンプル信号入力部11から供給される教師データとしてのサンプル信号を保存する。異常音自動判別部18および修正情報入力部20からサンプル信号保存部12に供給される信号については後述する。
サンプル信号入力部11に入力されるサンプル信号には、その信号が正常音であるのか、または、異常音であるのかを表すデータがラベルとして付加されている。
図2は、サンプル信号入力部11に入力されるサンプル信号の例を示している。図2の横軸は時間を表し、サンプル信号とラベルが各時刻において1対1に対応している。なお、正常音であるのか、または、異常音であるのかを表すラベルは、例えば、HighレベルまたはLowレベルの信号として与えることができる。
アルゴリズム自動構築部13は、遺伝的探索手法に基づく学習を行うことにより、異常音であるかまたは正常音であるかが未知の新規信号に対し、異常音であるかまたは正常音であるかを判別するアルゴリズムを構築(生成)する。アルゴリズム構築の詳細については、図3等を参照して後述するが、構築されるアルゴリズムは、入力信号の所定の特徴を表す特徴量を抽出するアルゴリズム(特徴量抽出アルゴリズム)であり、アルゴリズムにより抽出された特徴量(の値)が所定の閾値以上であるか否かにより、異常音か正常音を判別することができる。
トレードオフ分析部14は、アルゴリズム自動構築部13により構築されたアルゴリズムを基にトレードオフ分析を行って、パレート最適解を求める。そして、トレードオフ分析部14は、パレート最適解としての複数のアルゴリズムをパレート最適解保存部15に保存させる。パレート最適解保存部15は、トレードオフ分析部14から供給されたパレート最適解としての複数のアルゴリズムを保存する。
使用アルゴリズム決定部16は、パレート最適解保存部15に保存されている複数のアルゴリズムのなかから、現在の情報処理装置1の空きリソース状況、および要求される性能など、複数の評価指標の要求条件に合致する最適なアルゴリズムを決定し、異常音自動判別部18に供給する。
新規信号入力部17は、異常音か否かを検出する対象である新規信号の入力を受け付け、異常音自動判別部18に供給する。
異常音自動判別部18は、使用アルゴリズム決定部16から供給されたアルゴリズムを用いて、新規信号入力部17から供給される新規信号が異常音であるか、または正常音であるかを判別し、判別結果を異常音判別結果出力部19に供給する。また、異常音自動判別部18は、新規信号入力部17から供給される新規信号に、判別結果をラベルとして付加して、サンプル信号保存部12に供給し、保存させる。即ち、新規信号入力部17から供給された新規信号が新たなサンプル信号としてサンプル信号保存部12に保存される。
異常音判別結果出力部19は、異常音自動判別部18から供給された判別結果を、音声または映像で出力する。例えば、異常音判別結果出力部19は、新規信号が異常音である場合に異常音であることを表す音を出力したり、「正常音」または「異常音」の文字を表示した映像を画面に表示させる。
修正情報入力部20は、サンプル信号保存部12に保存されているサンプル信号のラベルに間違いがある場合、そのラベルの修正を行う。すなわち、修正情報入力部20は、ユーザの操作を受け付け、サンプル信号のラベルの書き替えを行う。
従って、サンプル信号保存部12には、サンプル信号入力部11から供給されるラベル付きのサンプル信号の他、異常音自動判別部18からもラベル付きのサンプル信号が供給され、異常音自動判別部18から供給されたサンプル信号のラベルに間違いがある場合には、そのラベルが修正情報入力部20によって修正される。
次に、アルゴリズム自動構築部13が行うアルゴリズムの構築について、詳細に説明する。
図3は、構築されるアルゴリズムの構造を説明する図である。
構築されるアルゴリズムは、m個(mは1より大の整数)の特徴抽出式1乃至mと、そのm個の特徴抽出式1乃至mの線形結合式で表される情報推定式により構成される。特徴抽出式は、入力信号に対して所定の演算を行い、演算結果として1次元の値を出力する。情報推定式は、特徴抽出式の出力値である1次元の値を用いて、入力信号の特徴を示す情報を推定する。アルゴリズム自動構築部13は、情報推定式である異常音判別式Uを求める。
図4は、異常音判別式Uの具体的な例を示している。出力すべき判別結果は、異常音であるか、または、正常音であるかの2値であるので、異常音判別式Uの演算結果が、所定の閾値Th以下であるか、または、所定の閾値Thより大きいかによって、入力信号が正常音であるか異常音であるかが判別される。例えば、図4に示されるように、異常音判別式Uの演算結果が、所定の閾値Th以下である場合には、入力信号が正常音であるという判別結果を出力し、所定の閾値Thより大きい場合には、入力信号が異常音であるという判別結果を出力する。図4に示される異常音判別式Uの例では、特徴抽出式1乃至mのうち、特徴抽出式1,2,5、および15のみが使用されているが、これは、それ以外の特徴抽出式の線形結合係数がゼロであるためである。
なお、構築されるアルゴリズムとしては、異常音であるか、または、正常音であるかのような2値ではなく、例えば、楽曲の速さや明るさの度合い(レベル)というような所定の範囲内の数値を推定するものもある。この場合、図5に示すように、入力信号の速さを表す値は、m個の特徴抽出式1乃至mの線形結合式で表される速さ推定式の演算結果で求められ、入力信号の明るさを表す値は、m個の特徴抽出式1乃至mの線形結合式で表される明るさ推定式の演算結果で求められる。
図50以降を参照して後述する次の実施の形態では、図6に示されるように、新規信号を入力したときに、その速さや明るさの値を抽出する特徴抽出機として使用されるアルゴリズムを構築する例について説明する。
図7は、特徴抽出式1乃至mの例を示している。
特徴抽出式は、複数次元で表現可能な入力信号を、1つの値、すなわち、スカラ量になるまで加工することが可能な式である。図8は、特徴抽出式の1つの例を示している。
特徴抽出式は、入力信号の種類を示す情報、および、入力信号に対して施す信号処理を示す情報であるオペレータにより構成され、オペレータには、対象処理軸および処理内容と、必要に応じて処理におけるパラメータが含まれる。図8の例においては、12TonesMは入力データの種類を示す情報であり、その後ろ4つのF#Differential, F#MaxIndex, T#LPF_1;0.861, T#UVarianceが、それぞれオペレータである。
入力信号の種類を示す情報としては、図8の例に示す、モノラルのPCM(pulse coded modulation sound source)波形データを時間軸に沿って音程解析したものであることを表す12TonesMの他、波形を表すWav、音声のスペクトルである2次元画像を表すSpectrumなどがある。
特徴抽出式は、入力信号に対して、入力信号の種類を示す情報に近い方から、オペレータで表される信号処理が、順に施されることを表す。オペレータの先頭には、処理対象の軸(対象処理軸)が記載されている。処理対象の軸は、Tが時間方向であることを表し、Fが周波数(音程方向)であることを表している。
オペレータの処理対称軸に続く処理内容としては、Differentialが微分することを表し、MaxIndexが最大値インデックスを取得することを表し、LPF_1がローパスフィルタリングを行うことを表し、UVarianceが不偏分散を演算することを表す。また、それぞれのオペレータには、必要に応じてパラメータが付与される。図8の例では、LPF_1(ローパスフィルタリング)の処理に対して、0.861のパラメータが付与されている。
したがって、図8の特徴抽出式は、PCM波形データを時間軸に沿って音程解析したデータを、音程方向に微分し、音程方向に最大値を示すIndexを計算し(一番音の強い音程の番号を得て)、時間軸方向にローパスフィルタをかけ、最後に不偏分散を計算して、その計算結果を出力するものである。
なお、本実施の形態では、入力信号は音を表す信号で波形を表すWavを採用するが、特徴抽出式は、音の信号だけでなく、マトリックス形式(多次元のマトリックスに値が入っている形式)で表現できるものであれば、静止画像、動画像など何でもよい。
例えば、入力信号が、図9に示されるような、振幅と時間とチャンネルとのマトリクスとした音声波形の信号、図10に示されるような、フレームのX軸、Y軸、RGB(R:赤,G:緑,B:青)のマトリクスと捉えた画像の信号、図11に示されるような、フレームのX軸、Y軸、RGB、および、時間のマトリクスと捉えた動画像の信号である場合にも適用可能である。さらに、マトリックスで表現できるバイナリデータなどでもよい。
なお、オペレータの種類としては、図12に示されるものがある。例えば、オペレータの種類として、平均値(Mean)、高速フーリエ変換(FFT)、標準偏差(StDev)、出現率(Ratio)、ローパスフィルタ(LPF_1)、ハイパスフィルタ(HPF_1)、絶対値(ABS)、2乗(Sqr)、平方根(Sqrt)、正規化(Normalize)、微分(Differential)、積分(Integrate)、最大値(MaxIndex)、不偏分散(UVariance)、ダウンサンプリング(DownSampling)などがある。なお、決定されたオペレータによっては処理対称軸が固定されていることがあるので、その場合、オペレータに固定されている処理対称軸を採用する。また、パラメータを必要とするオペレータが決定された場合、パラメータもランダムまたは予め設定されている値に決定する。
次に、図13乃至図18を参照して、アルゴリズム自動構築部13が遺伝的探索手法に基づいて行う、アルゴリズム自動生成の流れについて説明する。
図13に示されるように、アルゴリズム自動構築部13は、現世代の特徴抽出式1乃至mに対して、各特徴抽出式を評価するための評価値を算出する。そして、アルゴリズム自動構築部13は、現世代の特徴抽出式1乃至mを評価値の高い順に並び換えた後、選択生成、交差生成、突然変異生成、およびランダム生成を行うことにより、次世代の特徴抽出式1乃至mを生成する。現世代の特徴抽出式1乃至mを評価値の高い順に並び換えるのは、次世代の特徴抽出式を生成するための特徴抽出式を選択する際に、評価値の高い方から選択するためである。そして、次世代の特徴抽出式1乃至mが現世代の特徴抽出式1乃至mとなり、現世代の特徴抽出式1乃至mに基づく次世代の特徴抽出式1乃至mの生成が繰り返される。
選択生成、交差生成、突然変異生成、およびランダム生成について詳しく説明する。
選択生成は、現世代の特徴抽出式のうち、評価値の高い方から順に所定数の特徴抽出式を、そのまま次世代の特徴抽出式として選択することにより、新たな特徴抽出式を生成することを表す。
例えば、図14に示されるように、現世代の特徴抽出式1,2,3の評価値が、それぞれ、0.53,0.85,0.74である場合、最も評価値の高い現世代の特徴抽出式2が選択され、次世代の特徴抽出式1とされる。
交差生成は、現世代の特徴抽出式のうち、評価値の高い方が選ばれやすいような重み付けをしてランダムに選択した2つの特徴抽出式を、ランダムな位置で組み替える(交差する)ことにより、新たな特徴抽出式を生成することを表す。
例えば、図15に示されるように、評価値の高かった第1の特徴抽出式「Wav,T#Differential,T#IndexLR0」と第2の特徴抽出式「Wav,T#HPF_1;0.262544,T#Mean」が選択され、第1の特徴抽出式の「Wav,T#Differential」部分と第2の特徴抽出式の「T#Mean」部分を組み合わせて、換言すれば、第1の特徴抽出式の「T#IndexLR0」部分を第2の特徴抽出式の「T#Mean」部分に組み替えて、新たな特徴抽出式が生成される。
突然変異生成は、現世代の特徴抽出式のうち、評価値の高い方が選ばれやすいような重み付けをしてランダムに選択した特徴抽出式の一部をランダムに変更することにより、新たな特徴抽出式を生成することを表す。
例えば、図16に示されるように、評価値の高かった特徴抽出式「Wav,T#LPF_1;0.3,T#IndexLR0」が突然変異元として選択され、その特徴抽出式のなかからの1つのオペレータ「T#LPF_1;0.3」が削除されたり(突然変異例1)、オペレータ「Sqr」が追加されたり(突然変異例2)、特徴抽出式のなかの1つのオペレータ「T#LPF_1;0.3」のパラメータが0.7に変更されたりして(突然変異例3)、新たな特徴抽出式が生成される。
ランダム生成は、入力信号が1つの値(スカラ量)になるようにランダムにオペレータを組み合わせることにより、新たな特徴抽出式を生成することを表す。なお、第1世代の特徴抽出式1乃至mは、元にする前世代の特徴抽出式が存在しないため、すべてランダム生成により生成される。
以上の選択生成、交差生成、突然変異生成、およびランダム生成のうち、例えば、アルゴリズム自動構築部13は、図17に示されるように、次世代の特徴抽出式1乃至3については選択生成により求め、次世代の特徴抽出式4乃至7については交差生成により求め、次世代の特徴抽出式8乃至13については突然変異生成により求め、次世代の特徴抽出式1乃至mについてはランダム生成により求める。
図18は、現世代の特徴抽出式1乃至mから、次世代の特徴抽出式1乃至mが生成された例を示している。
図19は、アルゴリズム自動構築部13の詳細な構成例を示すブロック図である。
アルゴリズム自動構築部13は、学習データ切り出し部31、特徴抽出式リスト生成部32、特徴量計算部33、機械学習部34、および特徴量抽出アルゴリズム出力部35により構成される。
学習データ切り出し部31は、サンプル信号保存部12に保存されている学習データを切り出して、特徴量計算部33および機械学習部34に供給する。即ち、学習データ切り出し部31は、サンプル信号保存部12に保存されているサンプル信号とそのラベルを所定の単位時間ごとに分割し、分割された各単位時間のサンプル信号を特徴量計算部33に供給し、分割された各単位時間のラベルを機械学習部34に供給する。
いま、図20に示されるように、サンプル信号保存部12に保存されているサンプル信号とそのラベルが、学習データ切り出し部31により、n個の単位時間に分割されたとし、1番目乃至n番目の各単位時間のサンプル信号を、それぞれ、データD1乃至データDnと称し、データD1乃至データDnそれぞれに対応するラベルをラベルデータと称する。この場合、学習データ切り出し部31は、データD1乃至データDnを特徴量計算部33に供給し、データD1乃至データDnのラベルデータを機械学習部34に供給する。
特徴抽出式リスト生成部32は、機械学習部34から供給される現世代の特徴抽出式1乃至mの評価値に基づいて、次世代の特徴抽出式1乃至mを生成し、特徴量計算部33に供給する。具体的には、特徴抽出式リスト生成部32は、現世代の特徴抽出式1乃至mを、評価値の高い順に並び換え、現世代の所定の特徴抽出式に対する選択生成、交差生成、および突然変異生成と、ランダム生成を行うことにより、次世代の特徴抽出式1乃至mを生成する。
特徴量計算部33は、学習データ切り出し部31から供給されたデータD1乃至データDnそれぞれに対して、特徴抽出式リスト生成部32から供給された特徴抽出式1乃至mの計算を行い、計算結果を、データD1乃至データDnの各特徴量として機械学習部34に供給する。
図21は、特徴量計算部33によって計算され、機械学習部34に供給される特徴量の例を示している。
機械学習部34は、特徴量計算部33から供給されたデータD1乃至データDnの各特徴量と、学習データ切り出し部31から供給されたデータD1乃至データDnのラベルデータとを用いて、異常音判別式Uを特徴選択付き線形判別により推定する。換言すれば、特徴量計算部33から供給されたデータD1乃至データDnの各特徴量を用いて、学習データ切り出し部31から供給されたデータD1乃至データDnのラベルデータに最も適合する、特徴抽出式を用いた異常音判別式Uを推定する。また、機械学習部34は、推定した異常音判別式Uを用いた場合の、各特徴抽出式の評価値を算出し、特徴抽出式リスト生成部32に供給する。
機械学習部34の処理についてさらに詳しく説明する。
図22は、特徴量計算部33と学習データ切り出し部31から機械学習部34に供給されたデータの例を示している。
機械学習部34は、現世代の特徴抽出式1乃至mのうち、どの特徴抽出式を使用した場合または使用しない場合がデータD1乃至データDnのラベルデータに最も適合するかを評価し、使用する特徴抽出式の最適な組合せを決定する。
初めに、機械学習部34は、図23Aに示すように、現世代の特徴抽出式1乃至mの全てを使用しない状態(特徴抽出式1乃至mが未使用の状態)を基準状態として、基準状態から、図23Bに示される、各特徴抽出式の使用/未使用を1つずつ反転させた、m個の特徴抽出式の使用組み合わせを決定する。図23Aおよび図23Bにおいて、1行の0または1の並びは、特徴抽出式1乃至mの各特徴抽出式を使用する場合を“1”で、使用しない場合を“0”で表したものであり、1行の左側から順に、特徴抽出式1,2,3,・・・・,mの使用又は未使用を表す。
次に、機械学習部34は、m個の特徴抽出式の使用組み合わせそれぞれの場合について、異常音判別式Uを生成(推定)する。異常音判別式Uは、特徴抽出式1乃至mによる特徴量をX1乃至Xm、線形結合係数をb1乃至bm、切片をb0とした場合、次の式(1)で表される。
U=b1X1+b2X2+b3X3+・・・+bmXm+b0・・・(1)
なお、式(1)において、未使用とされた特徴量に対する線形結合係数の値はゼロとなる。
線形結合係数b1乃至bmと切片b0を求めるためには、最小二乗法を用いることができる。即ち、特徴量計算部33から供給されたデータD1乃至データDnの各ラベルデータのうちのk番目のラベルデータ(真値)をUkと表すとともに、式(1)によって得られる真値Ukの予測値をUk’と表すと、その予測誤差ekはek={Uk−Uk’}で表すことができる。そして、データD1乃至データDnの各ラベルデータについての予測誤差ekの二乗誤差E=Σek 2が最小となる線形結合係数b1乃至bmと切片b0を求めることにより、最適な線形結合係数b1乃至bmと切片b0を求めることができる。
求められた異常音判別式Uは、例えば、次のような式となる。
U=0.5×X1+0.3×X2+0.0×X3+・・・+0.7Xm+0.2
この異常音判別式Uの例では、線形結合係数b1,b2,b3,・・・,bm,b0が、それぞれ、0.5,0.3,0.0,・・・,0.7,0.2であり、線形結合係数がゼロである特徴抽出式3による特徴量は未使用となる。
次に、機械学習部34は、m個の特徴抽出式の使用組み合わせそれぞれの場合について生成された異常音判別式Uの評価値を計算する。ここで、異常音判別式Uの評価値を、各特徴抽出式の評価値と区別するため、評価基準値と称する。
評価基準値を求めるための評価関数には、例えば、AIC(Akaike Information Criteria)を採用することができる。AICは、小さい値ほどよい(評価が高い)ことを表す関数であり、次式(2)により計算される。
式(2)において、nは、教師データ、即ち、学習データ切り出し部31から供給されたデータの数を表し、PIは円周率を表す。また、(||E||÷n)は、データD1乃至データDnの各データに対する平均二乗誤差を表し、m’は、使用となっている特徴抽出式の数を表す。
図24は、図23Bのm個の特徴抽出式の使用組み合わせそれぞれの場合について計算された各異常音判別式Uの評価基準値を表す。
機械学習部34は、評価の最も高かった(評価基準値の最も小さかった)特徴抽出式の使用組み合わせを、次の基準状態として選択する。図24に示した例では、図25に示されるように、特徴抽出式4のみを使用することとした使用組み合わせによる異常音判別式Uの評価基準値が最も小さいため、機械学習部34は、特徴抽出式4のみを使用することとした使用組み合わせを、次の基準状態として選択する。
そして、機械学習部34は、図26Aに示される、基準状態である特徴抽出式4のみを使用することとした使用組み合わせに対し、図26Bに示される、各特徴抽出式の使用/未使用を1つずつ反転させた、m個の特徴抽出式の使用組み合わせを決定する。
機械学習部34は、決定したm個の特徴抽出式の使用組み合わせそれぞれの場合について、異常音判別式Uを生成(推定)し、その評価基準値を計算し、次の基準状態を決定することを繰り返す。以上の、基準状態の決定、異常音判別式Uの生成、その評価基準値の計算が、評価基準値が更新されなくなるまで、即ち、さらに小さい評価基準値が計算されなくなるまで、繰り返される。
評価基準値が更新されなくなった異常音判別式Uが得られると、機械学習部34は、その得られた異常音判別式Uの線形結合係数に基づいて、各特徴抽出式1乃至mの評価値を算出する。
具体的には、機械学習部34は、式(3)で表される、i番目の特徴量の寄与率Ciを、特徴抽出式iの評価値として計算する。
Ci=bi÷StDev (Xi)×StDev(T)×Correl(Xi,T)・・・(3)
ここで、StDev(Xi)は、データD1乃至データDnにおける特徴抽出式iの値(特徴量Xi)の標準偏差を表し、StDev(T)は、データD1乃至データDnのラベルデータTの標準偏差を表す。Correl(T)は、データD1乃至データDnにおける特徴抽出式iの値(特徴量Xi)と、そのラベルデータTのピアソンの相関係数を示す。
以上のように算出された各特徴抽出式1乃至mの評価値が、生成された異常音判別式Uとともに、特徴抽出式リスト生成部32に供給される。
また、次世代の特徴抽出式を生成する処理を所定回数行うなど、所定の終了条件に達した場合には、機械学習部34は、最終世代の特徴抽出式と異常音判別式Uを特徴量抽出アルゴリズム出力部35に供給する。最終世代の特徴抽出式は、特徴抽出式リスト生成部32または特徴量計算部33から取得される。
特徴量抽出アルゴリズム出力部35は、機械学習部34から供給された最終世代の特徴抽出式と異常音判別式Uを、トレードオフ分析部14(図1)に供給する。
次に、トレードオフ分析部14の詳細な処理について説明する。
トレードオフ分析部14は、アルゴリズム自動構築部13により構築されたアルゴリズム(異常音判別式U)を最初の1つのパレート最適解とし、アルゴリズムの実行速度と精度の2つの評価指標を用いたトレードオフ分析を行うことで、新たなパレート最適解を求める。なお、新たなパレート最適解を求める場合のパレート最適解の探索では、トレードオフ分析部14は、現在のパレート最適解としての特徴量抽出アルゴリズムから突然変異のみで次のパレート最適解候補を生成する簡易的な遺伝的アルゴリズムを採用する。
図27を参照して、パレート最適解について説明する。
2つの評価指標を用いてアルゴリズムを評価する場合、すべての評価指標で、評価の高い他の解が存在しない場合、その解は、パレート最適解であるということができる。反対に、すべての評価指標で、評価の高い他の解が存在する場合、その解は、パレート最適解ではない。図27では、パレート最適解が黒丸で、非パレート最適解が白丸で示されている。
図27に示したような、パレート最適解としての複数の異常音判別式Uを求めるため、トレードオフ分析部14は、初めに、パレート最適解の初期化を行う。即ち、トレードオフ分析部14は、アルゴリズム自動構築部13により構築された異常音判別式Uに含まれる特徴抽出式のうち、ラベルデータとの相関(上述のCorrel(T))が低い特徴抽出式から1つずつ順に未使用に設定することにより、アルゴリズム自動構築部13により構築された異常音判別式Uに含まれる特徴抽出式の個数を最大個数として、その最大個数から1個まで、使用する特徴抽出式の個数が1個ずつ異なる複数の異常音判別式Uを生成する。
アルゴリズム自動構築部13により構築された異常音判別式Uを基に、使用する特徴抽出式の個数が1個ずつ異なる複数の異常音判別式Uを生成することをパレート最適解の初期化という。なお、アルゴリズム自動構築部13から供給された異常音判別式Uが、すべての特徴抽出式を使用するとは限らないので、アルゴリズム自動構築部13により構築された異常音判別式Uに含まれる特徴抽出式の個数は、m個より小さい場合があり得るが、本実施の形態では、説明を簡単にするため、すべての特徴抽出式を使用する異常音判別式Uが、アルゴリズム自動構築部13から供給されたとして説明する。
パレート最適解の初期化について、図28乃至図31を参照してさらに説明する。
トレードオフ分析部14は、図28に示されるように、各特徴抽出式の計算にかかる平均時間(平均計算時間)と、各特徴抽出式により計算されるラベルデータとの相関係数のリストを作成する。平均計算時間は、データD1乃至データDnを入力して計算することにより求めることができ、相関係数は、式(3)のCorrel(T)で求めることができる。
次に、トレードオフ分析部14は、使用している特徴抽出式のうち、最も相関係数の低い特徴抽出式を未使用に設定し、残った特徴抽出式により抽出された特徴量のみを用いて、線形結合係数b1乃至bmと切片b0を求め、新たな異常音判別式Uを決定する。また、とレートオフ分析部14は、決定した新たな異常音判別式Uを用いて異常音判別を行ったときの判別にかかる時間(合計計算時間)と精度(推定精度)も計算する。
図28に示したデータの例では、特徴抽出式3の相関係数が“0.05”で最も低いため、図29に示されるように、特徴抽出式3が未使用に設定される。そして、特徴抽出式3を除く特徴抽出式1乃至mを用いたときの新たな異常音判別式Uとその精度が決定され、特徴抽出式3にかかる計算時間(0.11ms)を除く合計計算時間が計算される。
同様に、相関係数の低い順に、順次、特徴抽出式が1個ずつ未使用に設定され、新たな異常音判別式Uと、合計計算時間および精度が計算され、図30のパレート最適解候補のリストが作成される。
トレードオフ分析部14は、図30に示されるパレート最適解候補のリストから、パレート最適解のみを取り出す(非パレート最適解を削除する)。具体的には、図30に示される、パレート最適解の候補としての、特徴抽出式をm個使用した解1から、1個の特徴抽出式のみを使用した解mまでの異常音判別式Uのうち、より高精度で、かつ合計計算時間の短い他の解が存在する解3乃至解5が、非パレート最適解であるとして削除され、残った解がパレート最適解とされる。
一般的には、特徴抽出式の個数が少なくなると、合計計算時間は少なくなるが精度が低くなるという傾向をもつので、パレート最適解の初期化により生成された複数の異常音判別式Uの合計計算時間と精度をグラフにすると、図31に示すようになる。図31のグラフの横軸は合計計算時間(ms)であり、縦軸はF値による精度(FMs:F-Measures)である。
以上のパレート最適解の初期化により、初期状態のパレート最適解が決定される。
次に、トレードオフ分析部14は、初期状態としての複数のパレート最適解を突然変異させることにより新たな解を生成し、より良いパレート最適解を探索するパレート最適解の更新を行う。より良いパレート最適解に更新されると、パレート最適解で結ばれる線は、図31において矢印で示されるように、左上方向に移動する。
具体的には、トレードオフ分析部14は、初期状態としての複数のパレート最適解のなかからランダムに1つの解を選択し、その選択された解(選択解)の複数個(例えば、1ないし3個)の特徴抽出式について、使用または未使用をランダムに変更した新たな解を生成する。
図32は、選択解の特徴抽出式7を使用から未使用に変更し、特徴抽出式8を未使用から使用に変更することにより新たな解を生成した突然変異の例を示している。
そして、トレードオフ分析部14は、新たな解について、合計計算時間および精度を計算し、図30のリストを再作成して非パレート最適解を削除する。
トレードオフ分析部14は、残ったパレート最適解に対して、再びランダムに1つの解を選択し、その選択解を基に突然変異によって新たな解を生成し、より良いパレート最適解を探索する処理を、終了条件を満足するまで、例えば、所定の繰り返し回数に達するまで実行する。
図33は、パレート最適解を探索する処理を、初期状態のパレート最適解から、200回繰り返し実行した後のパレート最適解を示している。
図33において、黒丸を結ぶ実線が200回繰り返し実行した後の各パレート最適解であり、点線が初期状態のパレート最適解を示している。また、白抜きの丸(○)は、探索処理において計算された非パレート最適解を示している。
図34は、同様に、パレート最適解を探索する処理を1000回繰り返し実行した後のパレート最適解を示しており、図35は、5000回繰り返し実行した後のパレート最適解を示している。繰り返し回数が多いほど、よりよいパレート最適解が得られるが、1000回実行後と5000回実行後では大きな差はみられず、所定回数の実行で十分なパレート最適解が得られることが分かる。
次に、使用アルゴリズム決定部16および異常音自動判別部18の処理について説明する。
使用アルゴリズム決定部16は、上述したようにトレードオフ分析部14により求められ、パレート最適解保存部15に保存されているパレート最適解としての複数のアルゴリズム(異常音判別式U)のなかから、要求される処理時間および精度に基づいて、最適なアルゴリズムを決定し、異常音自動判別部18に供給する。
例えば、図36に示されるように、リソースには余裕があり、処理時間をかけても最高性能(最高精度)を要求する場合には、使用アルゴリズム決定部16は、精度の最も高いパレート最適解51のアルゴリズム(異常音判別式U)を決定し、異常音自動判別部18に供給する。
また例えば、使用アルゴリズム決定部16は、精度として0.76(FMs)以上であることが要求されている場合には、要求を満足するなかで、合計計算時間(処理時間)が最も短いパレート最適解52のアルゴリズム(異常音判別式U)を決定し、異常音自動判別部18に供給する。
さらに、使用アルゴリズム決定部16は、合計計算時間(処理時間)として1データ当たりの処理時間が2(ms)以下であることが要求されている場合には、パレート最適解53のアルゴリズム(異常音判別式U)を決定し、異常音自動判別部18に供給する。
異常音自動判別部18は、図37に示されるように、新規信号入力部17から供給される新規信号を、学習データ切り出し部31と同様の単位時間ごとに分割し、分割された各単位時間の新規信号を、使用アルゴリズム決定部16から供給されたアルゴリズムを用いて、異常音であるか、または正常音であるかを判別し、判別結果を異常音判別結果出力部19に供給する。なお、上述したように、新規信号の単位時間ごとの判別結果は、サンプル信号保存部12にも供給され、保存される。
次に、図38のフローチャートを参照して、アルゴリズム自動構築部13が行うアルゴリズム自動構築処理について説明する。
初めに、ステップS1において、学習データ切り出し部31は、サンプル信号保存部12に保存されている学習データを切り出して、特徴量計算部33および機械学習部34に供給する。具体的には、学習データ切り出し部31は、学習データから切り出したデータD1乃至データDnを特徴量計算部33に供給し、データD1乃至データDnのラベルデータを機械学習部34に供給する。
ステップS2において、特徴抽出式リスト生成部32は、機械学習部34から供給される現世代の特徴抽出式1乃至mの評価値に基づいて、次世代の特徴抽出式1乃至m(特徴抽出式リスト)を生成する特徴抽出式リスト生成処理を実行する。なお、繰り返し行われるステップS2の処理のうち、現世代の特徴抽出式1乃至mが存在しない初回のステップS2の処理では、ランダム生成によって、次世代の特徴抽出式1乃至mが生成される。特徴抽出式リスト生成処理の詳細な処理は、図39を参照して後述する。
ステップS3において、特徴量計算部33は、特徴量計算処理を実行する。即ち、特徴量計算部33は、学習データ切り出し部31から供給されたデータD1乃至データDnそれぞれに対して、特徴抽出式リスト生成部32から供給された特徴抽出式1乃至mに従い計算した結果を、データD1乃至データDnの各特徴量として機械学習部34に供給する。特徴量計算処理の詳細な処理は、図46を参照して後述する。
ステップS4において、機械学習部34は、機械学習処理を実行する。即ち、機械学習部34は、特徴量計算部33から供給されたデータD1乃至データDnの各特徴量を用いて、学習データ切り出し部31から供給されたデータD1乃至データDnのラベルデータに最も適合する、特徴抽出式を用いた異常音判別式Uを推定する。また、機械学習部34は、推定した異常音判別式Uを用いた場合の、各特徴抽出式の評価値を算出し、特徴抽出式リスト生成部32に供給する。機械学習処理の詳細な処理は、図47を参照して後述する。
ステップS5において、機械学習部34は、終了条件に達したかを判定する。具体的には、例えば、上述したステップS2乃至S4の処理を予め設定した所定回数繰り返し実行した場合や終了する操作が検出された場合、機械学習部34は、終了条件に達したと判定する。
ステップS5で、終了条件に達していないと判定された場合、処理はステップS2に戻り、それ以降の処理が繰り返される。
一方、ステップS5で、終了条件に達したと判定された場合、処理はステップS6に進み、機械学習部34は、最終世代の特徴抽出式と異常音判別式Uを特徴量抽出アルゴリズム出力部35に供給する。特徴量抽出アルゴリズム出力部35は、最終世代の特徴抽出式と異常音判別式Uを、トレードオフ分析部14に出力して、処理を終了する。
次に、図39のフローチャートを参照して、図38のステップS2において実行される、特徴抽出式リスト生成処理について説明する。
ステップS21において、特徴抽出式リスト生成部32は、生成する特徴抽出式リストは、2世代目以降であるかを判定する。
ステップS21において、2世代目以降ではない、すなわち、1世代目だと判定された場合、処理はステップS22に進み、特徴抽出式リスト生成部32は、図40を参照して後述する、ランダム生成処理を実行する。
ステップS21において、2世代目以降であると判定された場合、処理はステップS23に進み、特徴抽出式リスト生成部32は、図41を参照して後述する次世代リスト生成処理を実行する。
ステップS22またはステップS23の処理の終了後、ステップS24において、特徴抽出式リスト生成部32は、ステップS22またはステップS23の処理によって生成された特徴抽出式リストを特徴量計算部33に供給し、処理は、図38のステップS2に戻り、ステップS3に進む。
このように、1世代目においては、全ての特徴抽出式がランダムに生成され、2世代目以降においては、遺伝的探索手法を用いた次世代のリストの生成処理が実行される。
次に、図40のフローチャートを参照して、図39のステップS22において実行される、ランダム生成処理について説明する。
ステップS41において、特徴抽出式リスト生成部32は、式ループパラメータMを1に初期化して式ループを開始する。なお、式ループは、特徴抽出式リストを構成する特徴抽出式の数mだけ繰り返される。
ステップS42において、特徴抽出式リスト生成部32は、第M番目の特徴抽出式(以下、特徴抽出式[M]とも記述する)の入力信号の種類を決定する。本実施の形態では、入力信号の種類は、波形を表すWavに決定される。
ステップS43において、特徴抽出式リスト生成部32は、生成する特徴抽出式[M]の処理対称軸とオペレータをランダムに1つ決定する。
ステップS44において、特徴抽出式リスト生成部32は、現時点までに生成されている特徴抽出式[M]の演算結果がスカラ量(1次元)であるかを判定する。ステップS44において、演算結果がスカラ量ではないと判定された場合、処理はステップS43に戻り、それ以降の処理が繰り返されて、オペレータが1つ追加される。
そして、ステップS44において、演算結果がスカラ量であると判定された場合、ステップS45において、特徴抽出式リスト生成部32は、式ループパラメータMが最大値mよりも小さいかを判定する。ステップS45において、式ループパラメータMが最大値mよりも小さいと判定された場合、式ループパラメータMが1だけインクリメントされて、処理はステップS42に戻り、それ以降の処理が繰り返される。
一方、ステップS45において、式ループパラメータMが最大値mよりも小さくない(式ループパラメータMが最大値mと同値である)と判定された場合、式ループを抜けて、処理は図39のステップS22に戻り、ステップS24に進む。
以上の処理により、1世代目の特徴抽出式リストが生成される。
次に、図41のフローチャートを参照して、図39のステップS23において実行される、次世代リスト生成処理について説明する。
ステップS61において、特徴抽出式リスト生成部32は、選択生成処理により生成する特徴抽出式の数(選択数)をms、交差生成処理により生成する特徴抽出式の数(交差数)をmx、突然変異生成処理により生成する特徴抽出式の数(突然変異数)をmm、ランダム生成処理により生成する特徴抽出式の数(ランダム生成数)をmrとして、それぞれの値を、ms+mx+mm+mr=m(mは特徴抽出式の総数)を満たすように決定する。
それぞれの値は、その比率が予め定められているものであっても良いし、ms+mx+mm+mr=mを満たすようにランダムに決定しても良い。
ステップS62において、特徴抽出式リスト生成部32は、図42を参照して後述する選択生成処理を実行する。
ステップS63において、特徴抽出式リスト生成部32は、図43を参照して後述する交差生成処理を実行する。
ステップS64において、特徴抽出式リスト生成部32は、図44を参照して後述する突然変異処理を実行する。
ステップS65において、特徴抽出式リスト生成部32は、図45を参照して後述するランダム生成処理を実行する。ランダム生成処理終了後、処理は図39のステップS23に戻り、ステップS24に進む。
このような処理により、2世代目以降の特徴抽出式リストが、遺伝的探索手法に基づいて生成される。
次に、図42のフローチャートを参照して、図41のステップS62において実行される、選択生成処理について説明する。
ステップS91において、特徴抽出式リスト生成部32は、現世代の特徴抽出式を、評価値の高い順にソートする。
ステップS92において、特徴抽出式リスト生成部32は、上位ms個の特徴抽出式を次世代の特徴抽出式として採用し、処理は図41のステップS62に戻り、ステップS63に進む。
このような処理により、評価値の高い特徴抽出式を選択して、次世代の特徴抽出式リストにコピーすることができる。
次に、図43のフローチャートを参照して、図41のステップS63において実行される、交差生成処理について説明する。
ステップS121において、特徴抽出式リスト生成部32は、交差ループパラメータMXを1に初期化して、交差ループを開始する。なお、交差ループは、交差数mxだけ繰り返される。
ステップS122において、特徴抽出式リスト生成部32は、現世代の特徴抽出式リストに含まれる全ての特徴抽出式から、評価値が高いものほど選択されやすいように重み付けをしながらランダムに特徴抽出式を1つ選択して式Aとする。
ステップS123において、特徴抽出式リスト生成部32は、現世代の特徴抽出式リストに含まれる全ての特徴抽出式から、評価値が高いものほど選択されやすいように重み付けをしながらランダムに特徴抽出式を1つ選択して式Bとする。
ステップS124において、特徴抽出式リスト生成部32は、式Bは式Aとは異なる特徴抽出式であるかを判定する。ステップS124において、式Bは式Aとは異なる特徴抽出式ではないと判定された場合、処理はステップS123に戻り、それ以降の処理が繰り返されて、式Bは式Aとは異なる特徴抽出式であると判定されるまで、式Bが新たに選択される。
ステップS124において、式Bは式Aとは異なる式であると判定された場合、処理はステップS125に進み、特徴抽出式リスト生成部32は、式Aと式Bのうちの一部を組み替えて、新しい特徴抽出式を作る。
このとき、特徴抽出式リスト生成部32は、組み合わせた後の特徴抽出式を計算することにより、入力されたデータからスカラ量を求めることができるような、すなわち、先頭から順番に演算処理を実行した場合、処理軸の矛盾が発生しないような組み合わせで、この2つの式の一部を組み合わせる。
ステップS126において、特徴抽出式リスト生成部32は、ステップS125において生成された新しい特徴抽出式を次世代の特徴抽出式に加える。
ステップS127において、特徴抽出式リスト生成部32は、交差ループパラメータMXが最大値である交差数mxよりも小さいかを判定する。ステップS127において、交差ループパラメータMXが交差数mxよりも小さいと判定された場合、交差ループパラメータMXを1インクリメントして、処理はステップS122に戻り、それ以降の処理が繰り返される。一方、ステップS127において、交差ループパラメータMXが交差数mxよりも小さくない、すなわち、同一の値であると判定された場合、交差ループを抜けるので、処理は図41のステップS63に戻り、ステップS64に進む。
交差ループであるステップS122乃至S126の処理が1回実行されるごとに、次世代の特徴抽出式リストに含まれる特徴抽出式のうちの1個が生成され、交差ループが終了された場合、特徴抽出式リストに含まれる特徴抽出式のうちのmx個が生成されたことになる。
このような処理により、現世代の特徴抽出式リストのうち、評価値が高いものほど選択されやすいように重み付けをしながら特徴抽出式が選択され、それを用いて、交差生成処理により、次世代の特徴抽出式リストに含まれる特徴抽出式が生成される。
次に、図44のフローチャートを参照して、図41のステップS64において実行される、突然変異生成処理について説明する。
ステップS151において、特徴抽出式リスト生成部32は、突然変異ループパラメータMMを1に初期化して、突然変異ループを開始する。なお、突然変異ループは、突然変異数mmだけ繰り返される。
ステップS152において、特徴抽出式リスト生成部32は、現世代の特徴抽出式リストに含まれる全ての特徴抽出式から、評価値が高いものほど選択されやすいように重み付けをしながらランダムに特徴抽出式を1つ選択して式Aとする。
ステップS153において、特徴抽出式リスト生成部32は、選択した式Aの一部に対して、変更、削除、または、内部のパラメータを変更するなどの処理を施すことにより突然変異させて新しい特徴抽出式を作る。
このとき、特徴抽出式リスト生成部32は、特徴抽出式の一部を変更した後の特徴抽出式を計算することにより、入力されたデータからスカラ量を求めることができるような、すなわち、先頭から順番に演算処理を実行した場合、処理軸の矛盾が発生しないような方法で、特徴抽出式の一部を変更する。
ステップS154において、特徴抽出式リスト生成部32は、ステップS153において生成された新しい特徴抽出式を次世代の特徴抽出式に加える。
ステップS155において、特徴抽出式リスト生成部32は、突然変異ループパラメータMMが最大値である突然変異数mmよりも小さいかを判定する。ステップS127において、突然変異ループパラメータMMが突然変異数mmよりも小さいと判定された場合、突然変異ループパラメータMMを1インクリメントして、処理はステップS152に戻り、それ以降の処理が繰り返される。一方、ステップS155において、突然変異ループパラメータMMが突然変異数mmよりも小さくない、すなわち、同一の値であると判定された場合、突然変異ループを抜けるので、処理は図41のステップS64に戻り、ステップS65に進む。
突然変異ループであるステップS152乃至S154の処理が1回実行されるごとに、次世代の特徴抽出式リストに含まれる特徴抽出式のうちの1個が生成され、突然変異ループが終了された場合、特徴抽出式リストに含まれる特徴抽出式のうちのmm個が生成されたことになる。
このような処理により、現世代の特徴抽出式リストのうち、評価値が高いものほど選択されやすいように重み付けをしながら特徴抽出式が選択され、それを用いて、突然変異生成処理により、次世代の特徴抽出式リストに含まれる特徴抽出式が生成される。
次に、図45のフローチャートを参照して、図41のステップS65において実行される、ランダム生成処理について説明する。
ステップS181において、特徴抽出式リスト生成部32は、ランダム生成ループパラメータMRを1に初期化してランダム生成ループを開始する。なお、ランダム生成ループは、特徴抽出式リストを構成する特徴抽出式の数mrだけ繰り返される。
ステップS182において、特徴抽出式リスト生成部32は、第MR番目の特徴抽出式(以下、特徴抽出式[MR]とも記述する)の入力信号の種類を決定する。本実施の形態では、入力信号の種類は、波形を表すWavに決定される。
ステップS183において、特徴抽出式リスト生成部32は、生成する特徴抽出式[MR]の処理対称軸とオペレータをランダムに1つ決定する。
ステップS184において、特徴抽出式リスト生成部32は、現時点までに生成されている特徴抽出式[MR]の演算結果がスカラ量(1次元)であるかを判定する。ステップS184において、演算結果がスカラ量ではないと判定された場合、処理はステップS183に戻り、それ以降の処理が繰り返されて、オペレータが1つ追加される。
そして、ステップS184において、演算結果がスカラ量であると判定された場合、ステップS185において、特徴抽出式リスト生成部32は、ランダム生成ループパラメータMRが最大値mrよりも小さいかを判定する。ステップS185において、ランダム生成ループパラメータMRが最大値mrよりも小さいと判定された場合、ランダム生成ループパラメータMRが1だけインクリメントされて、処理はステップS182に戻り、それ以降の処理が繰り返される。一方、ステップS185において、ランダム生成ループパラメータMRが最大値mrよりも小さくない(ランダム生成ループパラメータMRが最大値mrと同値である)と判定された場合、ランダム生成ループを抜けて、処理は図41のステップS65に戻り、さらに図39のステップS23に戻り、ステップS24に進む。
ランダム生成ループであるステップS182乃至S185の処理が1回実行されるごとに、次世代の特徴抽出式リストに含まれる特徴抽出式のうちの1個が生成され、ランダム生成ループが終了された場合、特徴抽出式リストに含まれる特徴抽出式のうちのmr個が生成されたことになる。
このような処理により、ランダム生成処理により、次世代の特徴抽出式リストに含まれる特徴抽出式のうちの一部が生成される。
次に、図46のフローチャートを参照して、図38のステップS3において実行される、特徴量計算処理について説明する。
ステップS211において、特徴量計算部33は、特徴抽出式リスト生成部32から、特徴抽出式リストを取得し、式ループパラメータMを1に初期化して、式ループを開始する。なお、式ループは、特徴抽出式リストを構成する特徴抽出式の数mだけ繰り返される。
ステップS212において、特徴量計算部33は、データループパラメータNを1に初期化してデータループを開始する。なお、データループは、学習データ切り出し部31により切り出されたデータDの数nだけ繰り返される。
ステップS213において、特徴量計算部33は、データDNに対して、第M番目の特徴抽出式(特徴抽出式[M])を用いたときの特徴量を計算する。
ステップS214において、特徴量計算部33は、データループパラメータNが最大値nよりも小さいかを判定する。ステップS214において、データループパラメータNが最大値nよりも小さいと判定された場合、データループパラメータNが1だけインクリメントされて、処理はステップS213に戻り、それ以降の処理が繰り返される。
一方、ステップS214において、データループパラメータNが最大値nよりも小さくない(データループパラメータNが最大値nと同値である)と判定された場合、データループを抜けて、処理はステップS215に進む。
ステップS215において、特徴量計算部33は、式ループパラメータMが最大値mよりも小さいかを判定する。ステップS215において、式ループパラメータMが最大値mよりも小さいと判定された場合、式ループパラメータMが1だけインクリメントされて、処理はステップS212に戻り、それ以降の処理が繰り返される。一方、ステップS215において、式ループパラメータMが最大値mよりも小さくない(式ループパラメータMが最大値mと同値である)と判定された場合、式ループを抜けて、処理は図38のステップS3に戻り、ステップS4に進む。
以上の処理により、各特徴抽出式を用いた特徴量が計算される。
次に、図47のフローチャートを参照して、図38のステップS4において実行される、機械学習処理について説明する。
ステップS241において、機械学習部34は、現世代の特徴抽出式1乃至mの基準状態を作成する。即ち、機械学習部34は、現世代の特徴抽出式1乃至mの全てを未使用に設定する。
ステップS242において、機械学習部34は、特徴量ループパラメータMを1に初期化して特徴量ループを開始する。なお、特徴量ループは、特徴抽出式リストを構成する特徴抽出式の数mだけ繰り返される。
ステップS243において、機械学習部34は、基準状態の特徴抽出式1乃至mから、M番目の特徴抽出式による特徴量の使用/未使用を反転させた特徴抽出式の使用組み合わせ(以下、特徴抽出式の反転使用組み合わせ[M]とも記述する)を決定する。
ステップS244において、機械学習部34は、特徴抽出式の反転使用組み合わせ[M]における異常音判別式Uを生成(推定)する。
ステップS245において、機械学習部34は、生成された異常音判別式Uの評価基準値(AIC)を計算する。
ステップS246において、機械学習部34は、特徴量ループパラメータMが最大値mよりも小さいかを判定する。ステップS246において、特徴量ループパラメータMが最大値mよりも小さいと判定された場合、特徴量ループパラメータMが1だけインクリメントされて、処理はステップS243に戻り、それ以降の処理が繰り返される。一方、ステップS246において、特徴量ループパラメータMが最大値mよりも小さくない(特徴量ループパラメータMが最大値mと同値である)と判定された場合、特徴量ループを抜けて、処理はステップS247に進む。
そして、ステップS247において、機械学習部34は、評価の最も高かった(評価基準値の最も小さかった)特徴抽出式の反転使用組み合わせを新たな基準状態として選択する。
ステップS248において、機械学習部34は、生成された異常音判別式Uの評価基準値が更新されなくなったかを判定する。ステップS248において、評価基準値がまだ更新されていると判定された場合、処理はステップS242に戻り、それ以降の処理が繰り返される。
一方、ステップS248において、評価基準値が更新されなくなったと判定された場合、処理は図38のS4に戻り、ステップS5に進む。
次に、図48のフローチャートを参照して、トレードオフ分析部14が実行する、トレードオフ分析処理について説明する。
ステップS271において、トレードオフ分析部14は、図49を参照して後述するパレート最適解の初期化処理を行う。これにより、初期状態の複数のパレート最適解が生成される。
ステップS272において、トレードオフ分析部14は、初期状態の複数のパレート最適解のなかからランダムに1つの解を選択し、その選択された解(選択解)の突然変異によって新たな解を生成する。例えば、トレードオフ分析部14は、選択解の1ないし3個の特徴抽出式について、使用/未使用をランダムに変更した新たな解を生成する。
ステップS273において、トレードオフ分析部14は、新たな解を用いた場合の合計計算時間および精度を計算する。
続くステップS274乃至S277の処理により、トレードオフ分析部14は、パレート最適解を更新する。即ち、ステップS274において、トレードオフ分析部14は、新たな解をパレート最適解に加え、解ループパラメータKを1に初期化して解ループを開始する。なお、解ループは、現在保存しているパレート最適解の総数kだけ繰り返される。
ステップS275において、トレードオフ分析部14は、K番目のパレート最適解(以下、パレート最適解[K]とも記述する)よりも高速かつ精度の高い解が存在するかを判定する。ステップS275において、パレート最適解[K]よりも高速かつ精度の高い解が存在すると判定された場合、処理はステップS276に進み、トレードオフ分析部14は、パレート最適解[K]をパレート最適解から削除する。
一方、ステップS275において、パレート最適解[K]よりも高速かつ精度の高い解が存在しないと判定された場合、処理はステップS277に進み、トレードオフ分析部14は、解ループパラメータKが最大値kよりも小さいかを判定する。ステップS275において、解ループパラメータKが最大値kよりも小さいと判定された場合、解ループパラメータKが1だけインクリメントされて、処理はステップS275に戻り、それ以降の処理が繰り返される。
一方、解ループパラメータKが最大値kよりも小さくない(解ループパラメータKが最大値kと同値である)と判定された場合、解ループを抜けて、処理はステップS278に進む。
ステップS278において、トレードオフ分析部14は、複数のパレート最適解から突然変異させ、新たな解を生成してパレート最適解を探索する処理を所定回数繰り返したかを判定する。ステップS278において、パレート最適解を探索する処理を所定回数繰り返していないと判定された場合、処理はステップS272に戻り、それ以降の処理が繰り返される。
一方、ステップS278において、パレート最適解を探索する処理を所定回数繰り返したと判定された場合、処理は終了する。
次に、図49のフローチャートを参照して、図48のステップS271において実行される、パレート最適解の初期化処理について説明する。
ステップS301において、トレードオフ分析部14は、特徴量ループパラメータMを1に初期化して特徴量ループを開始する。なお、特徴量ループは、特徴抽出式リストを構成する特徴抽出式の数mだけ繰り返される。
ステップS302において、トレードオフ分析部14は、第M番目の特徴抽出式(以下、特徴抽出式[M]とも記述する)の計算にかかる平均時間(平均計算時間)と、ラベルデータとの相関係数を計算する。
ステップS303において、トレードオフ分析部14は、特徴量ループパラメータMが最大値mよりも小さいかを判定する。ステップS303において、特徴量ループパラメータMが最大値mよりも小さいと判定された場合、特徴量ループパラメータが1だけインクリメントされて、処理はステップS302に戻り、それ以降の処理が繰り返される。ステップS303において、特徴量ループパラメータMが最大値mよりも小さくない(特徴量ループパラメータMが最大値mと同値である)と判定された場合、特徴量ループを抜けて、処理はステップS304に進む。
ステップS304において、トレードオフ分析部14は、使用している特徴抽出式のうち、最も相関係数の低い特徴抽出式を未使用に設定する。
ステップS305において、トレードオフ分析部14は、未使用に設定された特徴抽出式を除いて、残った特徴抽出式により抽出された特徴量のみを用いて線形判別を行い、新たな異常音判別式Uを決定する。また、ステップS305において、トレードオフ分析部14は、決定した新たな異常音判別式Uを用いて異常音判別を行ったときの精度を計算する。
ステップS306において、トレードオフ分析部14は、決定した新たな異常音判別式Uを用いて異常音判別を行ったときの判別にかかる時間(合計計算時間)を計算し、パレート最適解候補のリストに加える。
ステップS307において、トレードオフ分析部14は、残っている特徴抽出式が1つであるかを判定する。ステップS307において、残っている特徴抽出式が1つではないと判定された場合、処理はステップS304に戻り、それ以降の処理が繰り返される。
一方、残っている特徴抽出式が1つであると判定された場合、処理はステップS308に進み、トレードオフ分析部14は、パレート最適解を更新する処理を行う。このパレート最適解を更新する処理は、上述した図48のステップS274乃至S277の処理と同様であるので、その説明は省略する。ステップS308の後、処理は図48のステップS271に戻り、ステップS272に進む。
以上のように、パレート最適解の初期化が行われた後、より良いパレート最適解が探索され、更新される。
上述したトレードオフ分析処理により求められ、パレート最適解保存部15に保存されているパレート最適解としての複数のアルゴリズム(異常音判別式U)のなかから、使用アルゴリズム決定部16は、現在の情報処理装置1の空きリソース状況、要求される性能などの情報に基づいて、最適なアルゴリズムを決定し、異常音自動判別部18に供給する。異常音自動判別部18は、使用アルゴリズム決定部16から供給されたアルゴリズムに基づいて、入力された新規信号が異常音であるかまたは正常音であるかを判別する。
従って、情報処理装置1は、空きリソース状況(処理速度)、要求される性能(精度)など、複数の評価指標のトレードオフ関係となる複数のアルゴリズムを提示することができる。また、情報処理装置1は、複数の評価指標のトレードオフ関係となる複数のアルゴリズムのなかから、そのときの状況に応じて最適なアルゴリズムを決定し、決定したアルゴリズムを用いた判別を行うことができる。
次に、上述したパレート最適解の概念を用いたその他の実施の形態について説明する。
図50は、本発明を適用したその他の実施の形態であるアルゴリズム自動構築システム101のブロック図である。なお、最初の実施の形態と対応する部分については同一の符号を付してあり、その説明は適宜省略する。
アルゴリズム自動構築システム101は、教師データ取得部131、特徴抽出式リスト生成部32、特徴量計算部132、評価値計算部133、およびアルゴリズム出力部134により構成されている。
教師データ取得部131は、入力される教師データとしての複数の波形信号(波形データ)とそれらのデータから抽出すべき目的変数の値を取得し、波形信号を特徴量計算部132に供給するとともに、その波形信号の目的変数の値を評価値計算部133に供給する。
例えば、図51に示されるように、l個の波形データDD1乃至DDlとその目的変数の値が教師データとして取得され、特徴量計算部132または評価値計算部133に供給される。
特徴量計算部132は、教師データ取得部131から供給された波形データDD1乃至DDlそれぞれに対して、特徴抽出式リスト生成部32から供給された特徴抽出式1乃至mの計算を行い、計算結果を、波形データDD1乃至DDlの各特徴量として評価値計算部133に供給する。
また、特徴量計算部132は、各特徴抽出式を計算するのにかかる平均時間を計算し、評価値計算部133に供給する。
図52は、特徴量計算部132により計算され、評価値計算部133に供給される各特徴量と平均時間の例を示している。
評価値計算部133は、パレート最適解の候補である解候補を生成する。
最初に、評価値計算部133は、ランダムに特徴抽出式1乃至mによる各特徴量の使用/未使用を決定する。また、評価値計算部133は、1以上のパレート最適解を既に保持している場合には、その保持しているパレート最適解のなかからランダムに1つの解を選択し、選択した解を突然変異させることにより(任意の特徴抽出式の使用/未使用を変更することにより)、特徴抽出式1乃至mによる各特徴量の使用/未使用を決定することもできる。
図53Aは、ランダムに特徴抽出式1乃至mによる各特徴量の使用/未使用が決定された例を示しており、図53Bは、パレート最適解のなかから選択した解を突然変異させることにより、特徴抽出式1乃至mによる各特徴量の使用/未使用が決定された例を示している。
次に、評価値計算部133は、決定されたm個の特徴抽出式の使用組み合わせによる、解候補としての情報推定式を生成(推定)する。すなわち、評価値計算部133は、図54に示されるように、特徴量計算部132から供給された波形データDD1乃至DDlの各特徴量と目的変数を対応付け、式(1)と同様の情報推定式に代入し、目的変数の予測誤差の二乗誤差が最小となるような線形結合係数b1乃至bmと切片b0を求める。なお、情報推定式は、速さと明るさの両方の目的変数について作成される。
続いて、評価値計算部133は、式(2)を使って、生成した情報推定式を評価するための評価基準値(情報量基準)を目的変数ごとに計算する。
また、評価値計算部133は、生成した情報推定式により目的変数を計算した場合にかかる時間である合計計算時間を計算する。具体的には、図55に示されるように、特徴量計算部132から供給された、各特徴抽出式の演算に要する平均時間のうち、未使用の特徴抽出式の平均時間を除外して合計した時間の和が、生成した情報推定式の合計計算時間となる。図55の例では、特徴抽出式3が未使用であるため、特徴抽出式3の平均時間である0.3msは合計計算時間には含まれない。
図56は、解候補としての情報推定式に対して計算された、速さの評価基準値、明るさの評価基準値、および合計計算時間を示している。
次に、評価値計算部133は、解候補の速さの評価基準値、明るさの評価基準値、および合計計算時間と、現在保持しているパレート最適解の速さの評価基準値、明るさの評価基準値、および合計計算時間とを比較して、非パレート最適解を削除する。
図57は、現在保持しているp個のパレート最適解と、解候補とを比較した例を示している。
図57に示される例では、パレート最適解3が、速さの評価基準値、明るさの評価基準値、および合計計算時間のいずれの評価指標においても、解候補より劣るので、非パレート最適解であるとしてパレート最適解から削除される。
なお、評価値計算部133は、1つのパレート最適解または解候補ごとに、各特徴抽出式の使用/未使用を表す情報、目的変数(情報の種類)ごとの情報推定式のパラメータ(線形結合係数b1乃至bmと切片b0)、目的変数(情報の種類)ごとの評価基準値、および合計計算時間を保持している。
次に、評価値計算部133は、残ったパレート最適解を用いて、各特徴抽出式の評価値を算出する。各特徴抽出式の評価値の算出の基本的な考え方は、最初の実施の形態と同様であるが、本実施の形態では、目的変数(情報の種類)が複数あり、パレート最適解(情報推定式)も複数あるので、評価値算出部133は、各パレート最適解(情報推定式)のi番目の特徴量の寄与率Ciどうしを、全ての目的変数(情報の種類)で合計した値として求める。
すなわち、上述した式(3)の寄与率C
iを、j番目(j=1乃至k)の目的変数(情報の種類)T
jについての、パレート最適解o(o=1乃至p)のi番目の特徴量X
iの寄与率C(o,X
i,T
j)として書き直すと、
と表すことができる。
そして、寄与率C(o,Xi,Tj)を全てのパレート最適解の全ての目的変数で合計する式(5)のSUM_Ciにより、各特徴抽出式の評価値が算出される。
評価値計算部133は、式(5)で表される各特徴抽出式の評価値SUM_Ciを計算し、その結果を特徴抽出式リスト生成部32に供給する。
上述したパレート最適解の更新および各特徴抽出式の評価値の計算を所定回数だけ行うことにより、所定の終了条件に達した場合には、評価値計算部133は、最終的に残ったパレート最適解をアルゴリズム出力部134に供給する。
アルゴリズム出力部134は、供給されたパレート最適解のなかから、求める速さや明るさの精度を重視するのか、または、処理速度(合計計算時間)を重視するのかなど、必要に応じて最適なアルゴリズムを選択し、出力する。なお、どのアルゴリズムを選択するかは、例えば、ユーザの指示に応じて決定してもよい。
次に、図58のフローチャートを参照して、特徴抽出式リスト生成部32、特徴量計算部132、および評価値計算部133が行う、パレート最適解探索処理について説明する。
初めに、ステップS401において、特徴抽出式リスト生成部32は、評価値計算部133から供給される現世代の特徴抽出式1乃至mの評価値に基づいて、次世代の特徴抽出式1乃至m(特徴抽出式リスト)を生成する特徴抽出式リスト生成処理を実行する。この処理は、上述した図38のステップS2の処理と同様であるので詳細な説明は省略する。
ステップS402において、特徴量計算部132は、特徴量計算処理を実行する。即ち、特徴量計算部132は、教師データ取得部131から供給された波形データDD1乃至DDlそれぞれに対して、各特徴抽出式による特徴量と各特徴抽出式を計算するのにかかる平均時間を計算する。特徴量計算処理の詳細は、図59のフローチャートを参照して後述する。
ステップS403において、評価値計算部133は、評価値計算処理を実行する。即ち、評価値計算部133は、パレート最適解の候補である解候補を生成し、現在保持しているパレート最適解と比較して、非パレート解を削除するパレート最適解の更新を行い、残ったパレート最適解に基づいて、各特徴抽出式の評価値を計算する。評価値計算処理の詳細は、図61のフローチャートを参照して後述する。
ステップS404において、評価値計算部133は、終了条件に達したかを判定する。具体的には、例えば、上述したステップS401乃至S403の処理を予め設定した所定回数繰り返し実行した場合や終了する操作が検出された場合、評価値計算部133は、終了条件に達したと判定する。
ステップS404で、終了条件に達していないと判定された場合、処理はステップS401に戻り、それ以降の処理が繰り返される。
一方、ステップS404で、終了条件に達したと判定された場合、処理はステップS405に進み、評価値計算部133は、最終世代の特徴抽出式と情報推定式のパレート最適解をアルゴリズム出力部134に出力して、処理を終了する。
アルゴリズム出力部134は、評価値計算部133から供給されたパレート最適解のなかから、速さや明るさの精度を重視するのか、または、処理速度(合計計算時間)を重視するのかなど、必要に応じて最適なアルゴリズムを選択し、出力する。
次に、図59のフローチャートを参照して、図58のステップS402において実行される、特徴量計算処理について説明する。
ステップS411において、特徴量計算部132は、特徴抽出式リスト生成部32から、特徴抽出式リストを取得し、式ループパラメータMを1に初期化して、式ループを開始する。なお、式ループは、特徴抽出式リストを構成する特徴抽出式の数mだけ繰り返される。
ステップS412において、特徴量計算部132は、データループパラメータLを1に初期化してデータループを開始する。なお、データループは、教師データ取得部131が取得した波形データDDの数lだけ繰り返される。
ステップS413において、特徴量計算部132は、波形データDDLに対して、M番目の特徴抽出式(特徴抽出式[M])を用いたときの特徴量を計算するとともに、その計算に要した時間を保持する。
ステップS414において、特徴量計算部132は、データループパラメータLが最大値lよりも小さいかを判定する。ステップS414において、データループパラメータLが最大値lよりも小さいと判定された場合、データループパラメータLが1だけインクリメントされて、処理はステップS413に戻り、それ以降の処理が繰り返される。
一方、ステップS414において、データループパラメータLが最大値lよりも小さくない(データループパラメータLが最大値lと同値である)と判定された場合、コンテンツループを抜けて、処理はステップS415に進む。
ステップS415において、特徴量計算部132は、特徴抽出式[M]を計算するのにかかる平均時間を計算する。すなわち、特徴量計算部132は、ステップS413で計算し、保持しておいた、波形データDD1乃至DDlそれぞれの特徴抽出式[M]の計算時間の平均値を計算する。
ステップS416において、特徴量計算部132は、式ループパラメータMが最大値mよりも小さいかを判定する。ステップS416において、式ループパラメータMが最大値mよりも小さいと判定された場合、式ループパラメータMが1だけインクリメントされて、処理はステップS412に戻り、それ以降の処理が繰り返される。一方、ステップS416において、式ループパラメータMが最大値mよりも小さくない(式ループパラメータMが最大値mと同値である)と判定された場合、式ループを抜けて、処理は図58のステップS402に戻り、ステップS403に進む。
次に、図60のフローチャートを参照して、図58のステップS403において実行される、評価値計算処理について説明する。
ステップS431において、評価値計算部133は、特徴抽出式1乃至mによる各特徴量の使用/未使用を決定する。評価値計算部133は、ランダムに決定したり、保持しているパレート最適解のなかからランダムに選択した1つの解の使用/未使用を変更する(突然変異させる)ことにより、特徴抽出式1乃至mによる各特徴量の使用/未使用を決定することができる。ただし、1回目のステップS431の処理では、保持しているパレート最適解がないので、必ずランダムに決定される。
ステップS432において、評価値計算部133は、目的変数ループパラメータKを1に初期化してデータループを開始する。なお、目的変数ループは、目的変数としての情報の種類kだけ繰り返される。
ステップS433において、評価値計算部133は、ステップS431で決定したm個の特徴抽出式の使用組み合わせによる、目的変数Kに対応する情報の量を推定する、解候補としての情報推定式を生成(推定)する。
ステップS434において、評価値計算部133は、式(2)を使って、目的変数Kに対応する情報の量を推定する情報推定式を評価するための評価基準値を計算する。
ステップS435において、評価値計算部133は、目的変数ループパラメータKが最大値kよりも小さいかを判定する。ステップS435において、目的変数ループパラメータKが最大値kよりも小さいと判定された場合、目的変数ループパラメータKが1だけインクリメントされて、処理はステップS433に戻り、それ以降の処理が繰り返される。
一方、ステップS435において、目的変数ループパラメータKが最大値kよりも小さくない(目的変数ループパラメータKが最大値kと同値である)と判定された場合、目的変数ループを抜けて、処理はステップS436に進む。
ステップS436において、評価値計算部133は、特徴量計算部132から供給された各特徴抽出式の平均時間に基づいて、生成した情報推定式により目的変数を計算した場合にかかる時間である合計計算時間を計算する。
ステップS437乃至S440において、評価値計算部133は、パレート最適解を更新する。即ち、ステップS437において、評価値計算部133は、解候補をパレート最適解に加え、解ループパラメータoを1に初期化して解ループを開始する。なお、解ループは、解候補を含め、現在保持しているパレート最適解の総数pだけ繰り返される。
ステップS438において、評価値計算部133は、o番目のパレート最適解(以下、パレート最適解[o]とも記述する)よりも高速かつ精度の高い解が存在するかを判定する。ステップS438において、パレート最適解[o]よりも高速かつ精度の高い解が存在すると判定された場合、処理はステップS439に進み、評価値計算部133は、パレート最適解[o]をパレート最適解から削除する。
一方、ステップS438において、パレート最適解[o]よりも高速かつ精度の高い解が存在しないと判定された場合、処理はステップS440に進み、評価値計算部133は、解ループパラメータoが最大値pよりも小さいかを判定する。ステップS438において、解ループパラメータoが最大値pよりも小さいと判定された場合、解ループパラメータoが1だけインクリメントされて、処理はステップS438に戻り、それ以降の処理が繰り返される。
一方、解ループパラメータoが最大値pよりも小さくない(解ループパラメータoが最大値pと同値である)と判定された場合、解ループを抜けて、処理はステップS441に進む。
ステップS441において、評価値計算部133は、解候補を生成してパレート最適解を探索する処理を所定回数繰り返したかを判定する。ステップS441において、パレート最適解を探索する処理を所定回数繰り返していないと判定された場合、処理はステップS431に戻り、それ以降の処理が繰り返される。
一方、ステップS441において、パレート最適解を探索する処理を所定回数繰り返したと判定された場合、処理はステップS442に進み、評価値計算部133は、残ったパレート最適解を用いて、各特徴抽出式の評価値を算出する評価値算出処理を実行する。
図61は、図60のステップS442の評価値算出処理の詳細処理を示すフローチャートである。
初めに、ステップS461において、評価値計算部133は、特徴量ループパラメータiを1に初期化して、特徴量ループを開始する。なお、特徴量ループは、特徴抽出式リストを構成する特徴抽出式の数mだけ繰り返される。
ステップS462において、評価値計算部133は、式(5)で表されるi番目の特徴抽出式の評価値SUM_Ciをゼロにリセットする。
ステップS463において、評価値計算部133は、解ループパラメータoを1に初期化して解ループを開始する。この解ループは、現在保持しているパレート最適解の数を合わせた数pだけ繰り返される。
ステップS464において、評価値計算部133は、目的変数ループパラメータjを1に初期化してデータループを開始する。なお、目的変数ループは、目的変数としての情報の種類kだけ繰り返される。
ステップS465において、評価値計算部133は、j番目の目的変数Tjについての、パレート最適解oのi番目の特徴量Xiの寄与率C(o,Xi,Tj)を求め、評価値SUM_Ciに加算する。
ステップS466において、評価値計算部133は、目的変数ループパラメータjが最大値kよりも小さいかを判定する。ステップS466において、目的変数ループパラメータjが最大値kよりも小さいと判定された場合、目的変数ループパラメータjが1だけインクリメントされて、処理はステップS465に戻り、それ以降の処理が繰り返される。
一方、ステップS466において、目的変数ループパラメータjが最大値kよりも小さくない(目的変数ループパラメータjが最大値kと同値である)と判定された場合、目的変数ループを抜けて、処理はステップS467に進む。
ステップS467において、評価値計算部133は、解ループパラメータoが最大値pよりも小さいかを判定する。ステップS467において、解ループパラメータoが最大値pよりも小さいと判定された場合、解ループパラメータoが1だけインクリメントされて、処理はステップS464に戻り、それ以降の処理が繰り返される。
一方、解ループパラメータoが最大値pよりも小さくない(解ループパラメータoが最大値pと同値である)と判定された場合、解ループを抜けて、処理はステップS468に進む。
ステップS468において、評価値計算部133は、特徴量ループパラメータiが最大値mよりも小さいかを判定する。ステップS468において、特徴量ループパラメータiが最大値mよりも小さいと判定された場合、特徴量ループパラメータiが1だけインクリメントされて、処理はステップS462に戻り、それ以降の処理が繰り返される。
一方、ステップS468において、特徴量ループパラメータiが最大値mよりも小さくない(特徴量ループパラメータiが最大値mと同値である)と判定された場合、特徴量ループを抜けて、処理は図60のステップS442に戻り、さらに図58のステップS403に戻り、図58のステップS404に進む。
以上のように、アルゴリズム自動構築システム101は、特徴抽出式リスト生成部32から供給された特徴抽出式1乃至mによる特徴量の使用/未使用をランダムに決定して作成した単一のアルゴリズムを初期状態のパレート最適解として、特徴抽出式1乃至mによる各特徴量の使用/未使用をランダムに決定したり、保持しているパレート最適解のなかからランダムに選択した1つの解を突然変異させて特徴抽出式1乃至mによる各特徴量の使用/未使用を決定することで、パレート最適解の解候補を作成して、解候補と保持しているパレート最適解の評価基準値および合計計算時間を比較することで、各目的変数の精度または処理速度を重視する度合いを変えた複数のパレート最適解を求める。
これにより、アルゴリズム自動構築システム101は、入力された新規信号の速さや明るさの量を抽出するにあたり、各目的変数の精度または処理速度のそれぞれを重視する度合いが異なるパレート最適解としての複数の情報抽出アルゴリズムを提示することができる。すなわち、複数の評価指標のトレードオフ関係となる複数のアルゴリズムを提示することができる。
そして、ユーザは、各目的変数の精度または処理速度の重要度の度合いに応じて最適なアルゴリズムを選択して、目的変数の抽出結果を得ることができる。
なお、図1の情報処理装置1に対し、アルゴリズム自動構築部13とトレードオフ分析部14に代えて、アルゴリズム自動構築システム101の教師データ取得部131、特徴量計算部132、評価値計算部133、および特徴抽出式リスト生成部32で構成される情報抽出ブロックを設けることが可能である。この場合、情報処理装置1は、入力される新規信号に対して、速さと明るさの量を抽出する情報抽出処理を行う装置として利用することができる。
従来のアルゴリズム自動構築技術では、最高性能(最高精度)のアルゴリズムのみを求めるものであったため、人がアルゴリズムを構築する場合のように、要求を満足して、必要最低限のリソースや精度で処理できるアルゴリズムを構築することはできなかったが、本発明を適用した情報処理装置1およびアルゴリズム自動構築システム101によれば、そのようなアルゴリズムの構築が可能である。
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウェアにより実行させることもできる。この場合、上述した処理は、図62に示されるようなコンピュータ500により実行される。
図62において、CPU(Central Processing Unit)201は、ROM(Read Only Memory)202に記憶されているプログラム、または、記憶部208からRAM(Random Access Memory)203にロードされたプログラムに従って各種の処理を実行する。RAM203にはまた、CPU201が各種の処理を実行する上において必要なデータなどが適宜記憶される。
CPU201、ROM202、およびRAM203は、内部バス204を介して相互に接続されている。この内部バス204にはまた、入出力インターフェース205も接続されている。
入出力インターフェース205には、キーボード、マウスなどよりなる入力部206、CRT,LCDなどよりなるディスプレイ、スピーカなどよりなる出力部207、ハードディスクなどより構成される記憶部208、並びに、モデム、ターミナルアダプタなどより構成される通信部209が接続されている。通信部209は、電話回線やCATVを含む各種のネットワークを介しての通信処理を行う。
入出力インターフェース205にはまた、必要に応じてドライブ210が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどによりなるリムーバブルメディア221が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部208にインストールされる。
なお、コンピュータ200が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
本明細書において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
1 情報処理装置, 13 アルゴリズム自動構築部, 14 トレードオフ分析部, 16 使用アルゴリズム決定部, 32 特徴抽出式リスト生成部, 33 特徴量計算部, 34 機械学習部, 101 情報抽出機, 132 特徴量計算部, 133 評価値計算部