(57)【要約】【課題】  ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置を提供することを目的とする。【解決手段】  感度データの入力を受け付ける感度データ入力受付手段と、有効度基準データの入力を受け付ける有効度基準データ入力受付手段と、入力レコードの入力を受け付ける入力レコード入力受付手段と、経験レコードを取得する経験レコード入力受付手段と、経験レコード毎に、入力レコードと経験レコードについて、それらのフィールド毎に与えられた感度データで重み付けを行った乗算の合計を、各経験レコードに対する有効度として計算し、それを有効度基準データ毎に分類し、高い有効度基準に分類された経験レコードに於ける出力値フィールドの値を、出力データとする演算手段と、演算手段から出力データを受信し出力する出力手段と、からなるベイジアンネットワーク近似処理装置である。【選択図】  図１
2005165624.tif 000002
【特許請求の範囲】
【請求項１】
ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置であって、
各フィールドに対する重み付けを与えるデータである感度データの入力を受け付ける感度データ入力受付手段と、
有効度基準データの入力を受け付ける有効度基準データ入力受付手段と、
前記ベイジアンネットワーク近似処理装置の外部で取得された入力レコードの入力を受け付ける入力レコード入力受付手段と、
予め設定された、前記ベイジアンネットワーク近似処理装置への入力値フィールドとそれに対する出力値フィールドとからなる経験レコードを取得する経験レコード入力受付手段と、
前記経験レコード毎に、前記入力レコードと前記経験レコードについて、それらのフィールド毎に与えられた感度データで重み付けを行った乗算の合計を、各経験レコードに対する有効度として計算する有効度演算手段と、
前記経験レコードを前記有効度基準データに基づいて、前記有効度で分類し、分類された経験レコードに於ける出力値フィールドの値から出力データを計算する有効度分類手段と、
前記有効度分類手段から前記出力データを受信し出力する出力手段と、
からなることを特徴とするベイジアンネットワーク近似処理装置。
【請求項２】
ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置であって、
各フィールドに対する重み付けを与えるデータである感度データの入力を受け付ける感度データ入力受付手段と、
有効度基準データの入力を受け付ける有効度基準データ入力受付手段と、
前記ベイジアンネットワーク近似処理装置の外部で取得された入力レコードの入力を受け付ける入力レコード入力受付手段と、
予め設定された、前記ベイジアンネットワーク近似処理装置への入力値フィールドとそれに対する出力値フィールドとからなる経験レコードを取得する経験レコード入力受付手段と、
ＮＦを前記経験レコードに於ける入力値フィールドの数、ＮＩを前記入力値フィールドの要素数とすると、数１に基づいて前記経験レコード毎の有効度を計算する有効度演算手段と、
前記経験レコードを前記有効度基準データに基づいて、前記有効度で分類し、分類された経験レコードに於ける出力値フィールドの値から出力データを計算する有効度分類手段と、
前記有効度分類手段から前記出力データを受信し出力する出力手段と、
からなることを特徴とするベイジアンネットワーク近似処理装置。
【数１】
2005165624.tif 000005
【請求項３】
前記有効度分類手段は、
前記有効度演算手段で計算した有効度が前記有効度基準データよりも高い経験レコードに於ける出力値フィールドの平均値を、前記出力データとする、
ことを特徴とする請求項１又は請求項２に記載のベイジアンネットワーク近似処理装置。
【請求項４】
前記有効度分類手段は、
前記有効度演算手段で計算した有効度が前記有効度基準データよりも高く、且つ、予め定められた上位ｎ番目までに該当する経験レコードに於ける出力値フィールドの平均値を、前記出力データとする、
ことを特徴とする請求項１又は請求項２に記載のベイジアンネットワーク近似処理装置。
【請求項５】
前記有効度分類手段は、
前記有効度演算手段で計算した有効度に基づいて前記経験レコードを前記有効度基準データ毎に分類し、最も高い有効度基準に分類された経験レコードに於ける出力値フィールドの値を、前記出力データとする、
ことを特徴とする請求項１又は請求項２に記載のベイジアンネットワーク近似処理装置。
【請求項６】
前記有効度分類手段は、
前記最も高い有効度基準データに分類された経験レコードが複数ある場合には、そこに分類された経験レコードに於ける出力値フィールドの平均値を、前記出力データとする、
ことを特徴とする請求項５に記載のベイジアンネットワーク近似処理装置。
【請求項７】
前記有効度分類手段は、
前記最も高い有効度基準データに分類された経験レコードが複数ある場合には、そこに分類された経験レコードのうち、最も高い有効度の経験レコードに於ける出力値フィールドの値を、前記出力データとする、
ことを特徴とする請求項５に記載のベイジアンネットワーク近似処理装置。
【請求項８】
前記有効度分類手段は、
前記最も高い有効度基準データに分類された経験レコードが複数ある場合には、そこに分類された経験レコードのうち、任意の経験レコードに於ける出力値フィールドの値を、前記出力データとする、
ことを特徴とする請求項５に記載のベイジアンネットワーク近似処理装置。
【請求項９】
前記ベイジアンネットワーク近似処理装置は、
少なくとも、前記感度データ、前記有効度基準データ、前記入力レコードを記憶するデータ記憶手段を有しており、
前記有効度演算手段は、前記計算した各経験レコードの有効度を前記データ記憶手段に記憶し、
前記有効度分類手段は、前記有効度基準データ毎に前記経験レコードを分類する際に、前記データ記憶手段に記憶した各有効度を取得した後に前記経験レコードの分類を行う、
ことを特徴とする請求項１又は請求項２に記載のベイジアンネットワーク近似処理装置。
【請求項１０】
ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置であって、
各フィールドに対する重み付けを与えるデータである感度データの入力を受け付ける感度データ入力受付手段と、
前記ベイジアンネットワーク近似処理装置の外部で取得された入力レコードの入力を受け付ける入力レコード入力受付手段と、
予め設定された、前記ベイジアンネットワーク近似処理装置への入力値フィールドとそれに対する出力値フィールドとからなる経験レコードを取得する経験レコード入力受付手段と、
前記経験レコード毎に、前記入力レコードと前記経験レコードについて、それらのフィールド毎に与えられた感度データで重み付けを行った乗算の合計を、各経験レコードに対する有効度として計算する有効度演算手段と、
前記経験レコードを予め定められた基準に基づいて前記有効度で分類し、分類された経験レコードに於ける出力値フィールドの値から出力データを計算する有効度分類手段と、
前記有効度分類手段から前記出力データを受信し出力する出力手段と、
からなることを特徴とするベイジアンネットワーク近似処理装置。
【請求項１１】
ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置であって、
各フィールドに対する重み付けを与えるデータである感度データの入力を受け付ける感度データ入力受付手段と、
前記ベイジアンネットワーク近似処理装置の外部で取得された入力レコードの入力を受け付ける入力レコード入力受付手段と、
予め設定された、前記ベイジアンネットワーク近似処理装置への入力値フィールドとそれに対する出力値フィールドとからなる経験レコードを取得する経験レコード入力受付手段と、
ＮＦを前記経験レコードに於ける入力値フィールドの数、ＮＩを前記入力値フィールドの要素数とすると、数１に基づいて前記経験レコード毎の有効度を計算する有効度演算手段と、
前記経験レコードを予め定められた基準に基づいて前記有効度で分類し、分類された経験レコードに於ける出力値フィールドの値から出力データを計算する有効度分類手段と、
前記有効度分類手段から前記出力データを受信し出力する出力手段と、
からなることを特徴とするベイジアンネットワーク近似処理装置。
【数１】
2005165624.tif 000006
【請求項１２】
前記有効度分類手段は、
前記有効度のソーティングを行い、最も高い有効度である経験レコードに於ける出力値フィールドの値を、出力データとする、
ことを特徴とする請求項１０又は請求項１１に記載のベイジアンネットワーク近似処理装置。
【請求項１３】
前記有効度分類手段は、
前記有効度のソーティングを行い、予め定められた上位ｎ番目までに該当する経験レコードに於ける出力値フィールドの平均値を、出力データとする、
ことを特徴とする請求項１０又は請求項１１に記載のベイジアンネットワーク近似処理装置。
【請求項１４】
前記有効度分類手段は、
前記有効度のソーティングを行い、予め定められた上位ｎ番目までに該当する経験レコードに於ける出力値フィールドの値を、各々出力データとする、
ことを特徴とする請求項１０又は請求項１１に記載のベイジアンネットワーク近似処理装置。
【請求項１５】
前記有効度分類手段は、
予め定められた上位ｎ番目までに該当する経験レコードのうち、任意の経験レコードに於ける出力値フィールドの値を、出力データとする、
ことを特徴とする請求項１０又は請求項１１に記載のベイジアンネットワーク近似処理装置。
【請求項１６】
前記有効度分類手段は、
前記出力値フィールドの値に対して、選択した経験レコードの有効度を重み付けし、その重み付け後の有効度の平均値を、出力データとする、
ことを特徴とする請求項１２から請求項１５のいずれかに記載のベイジアンネットワーク近似処理装置。
【請求項１７】
前記ベイジアンネットワーク近似処理装置は、
少なくとも、前記感度データ、前記入力レコードを記憶するデータ記憶手段を有しており、
前記有効度演算手段は、前記計算した各経験レコードの有効度を前記データ記憶手段に記憶し、
前記有効度分類手段は、前記経験レコードを分類する際に、前記データ記憶手段に記憶した各有効度を取得した後に前記経験レコードの分類を行う、
ことを特徴とする請求項１０又は請求項１１に記載のベイジアンネットワーク近似処理装置。
【請求項１８】
前記各フィールドの確率分布は整数配列である、
ことを特徴とする請求項１、請求項２、請求項１０又は請求項１１のいずれかに記載のベイジアンネットワーク近似処理装置。
【請求項１９】
前記ベイジアンネットワーク近似処理装置は、
制御チップに回路として組み込まれている
ことを特徴とする請求項１から請求項１８のいずれかに記載のベイジアンネットワーク近似処理装置。
【請求項２０】
前記ベイジアンネットワーク近似処理装置は、
組み込みＣＰＵに対する外付けのコプロセッサに組み込まれている
ことを特徴とする請求項１から請求項１８のいずれかに記載のベイジアンネットワーク近似処理装置。
【請求項２１】
前記ベイジアンネットワーク近似処理装置は、
拡張ボードのハードウェアとして組み込まれている
ことを特徴とする請求項１から請求項１８のいずれかに記載のベイジアンネットワーク近似処理装置。
【請求項２２】
前記ベイジアンネットワーク近似処理装置は、
移動端末にマイクロコントローラとして内蔵されている
ことを特徴とする請求項１から請求項１８のいずれかに記載のベイジアンネットワーク近似処理装置。
【請求項２３】
前記ベイジアンネットワーク近似処理装置は、
小規模制御装置に組み込まれている
ことを特徴とする請求項１から請求項１８のいずれかに記載のベイジアンネットワーク近似処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置に関する。
【背景技術】
【０００２】
機械、装置、システム等に発生する様々な事象に対する処理を行う為に、ベイジアンネットワークと呼ばれる処理方法を用いることがある。ベイジアンネットワークとは、確率変数をノードで表し、因果関係や相関関係のような依存関係を示す変数の間にリンクを張ったグラフ構造による確率モデルであって、このリンクが因果関係の方向に有向性を有し、そのリンクを辿ったパスが循環しない非循環有向グラフで表されるモデルである（ベイジアンネットワークは下記の非特許文献１に詳しい）。
【０００３】
そして、下記特許文献１及び特許文献２には、ベイジアンネットワークを自動診断システムに用いた発明が開示されている。
【０００４】
【特許文献１】特開２００１−７５８０８号公報
【特許文献２】特開２００２−３１８６９１号公報
【０００５】
【非特許文献１】本村陽一、”確率ネットワークと知識情報処理への応用”、[online]、平成１３年１月２４日、インターネット＜ＵＲＬ：http://staff.aist.go.jp/y.motomura/DS/DS.html/＞
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述したベイジアンネットワークによる処理では、経験に基づくテーブル（過去の様々な事象について、システムへの入力値とその事象が発生した場合の出力値との対応関係のテーブル）を作成しておき、ある入力値を受け付けた場合に、その事象の対応する出力値を当該テーブルから探し、出力を行っている。従って、ある事象に対するシステムへの入力値とその全ての場合の出力値とを（つまり全てのベイズ関数の全ての出力値を）、予めテーブルに格納しておかなければならない。
【０００７】
例えば、システムに於いて発生が想定される事象が１０あり、その各事象の結果が各々４通り想定される場合（４値１０入力の場合）、テーブルとして４１０ 項目（約１００万項目）が必要となる。
【０００８】
しかしこのようなテーブルを予め用意しておくこと自体が非常に困難であり、更に、仮にこのようなテーブルを作成することが出来たとしても、そのデータ量が多量となる為、ハードウェア資源として多大なリソースが要求される。従って、ユビキタス分野などの小規模なハードウェア資源しか持たない場合には、ベイジアンネットワークを用いた処理を行うことが出来ない問題点がある。
【０００９】
又、上述したようなテーブルの更新を頻繁に行うことは困難でもある。
【課題を解決するための手段】
【００１０】
そこで本発明者は、入力値からなるレコード（入力レコード）と、過去の様々な事象について、システムへの入力値フィールドとそれに対応する適切な出力値フィールドを組み合わせたレコード（経験レコード）とに基づいてその類似性を有効度として計算し、経験レコードを有効度別に分類して、その有効度の高い経験レコードの出力値フィールドを出力値として出力することで、ベイジアンネットワークの近似処理を行う、ベイジアンネットワーク近似処理装置を発明した。
【００１１】
更に当該ベイジアンネットワークを用いた第２の問題点を解決する為、当該ベイジアンネットワーク近似処理装置をハードウェア化することで、その処理速度を高速化すると共に、小規模なハードウェア資源であってもベイジアンネットワークに近似する処理を可能とした。
【００１２】
請求項１の発明は、
ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置であって、各フィールドに対する重み付けを与えるデータである感度データの入力を受け付ける感度データ入力受付手段と、有効度基準データの入力を受け付ける有効度基準データ入力受付手段と、前記ベイジアンネットワーク近似処理装置の外部で取得された入力レコードの入力を受け付ける入力レコード入力受付手段と、予め設定された、前記ベイジアンネットワーク近似処理装置への入力値フィールドとそれに対する出力値フィールドとからなる経験レコードを取得する経験レコード入力受付手段と、前記経験レコード毎に、前記入力レコードと前記経験レコードについて、それらのフィールド毎に与えられた感度データで重み付けを行った乗算の合計を、各経験レコードに対する有効度として計算する有効度演算手段と、前記経験レコードを前記有効度基準データに基づいて、前記有効度で分類し、分類された経験レコードに於ける出力値フィールドの値から出力データを計算する有効度分類手段と、前記有効度分類手段から前記出力データを受信し出力する出力手段と、からなるベイジアンネットワーク近似処理装置である。
【００１３】
請求項２の発明は、
ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置であって、各フィールドに対する重み付けを与えるデータである感度データの入力を受け付ける感度データ入力受付手段と、有効度基準データの入力を受け付ける有効度基準データ入力受付手段と、前記ベイジアンネットワーク近似処理装置の外部で取得された入力レコードの入力を受け付ける入力レコード入力受付手段と、予め設定された、前記ベイジアンネットワーク近似処理装置への入力値フィールドとそれに対する出力値フィールドとからなる経験レコードを取得する経験レコード入力受付手段と、ＮＦを前記経験レコードに於ける入力値フィールドの数、ＮＩを前記入力値フィールドの要素数とすると、数１に基づいて前記経験レコード毎の有効度を計算する有効度演算手段と、前記経験レコードを前記有効度基準データに基づいて、前記有効度で分類し、分類された経験レコードに於ける出力値フィールドの値から出力データを計算する有効度分類手段と、前記有効度分類手段から前記出力データを受信し出力する出力手段と、からなるベイジアンネットワーク近似処理装置である。
【００１４】
請求項９の発明は、
前記ベイジアンネットワーク近似処理装置は、少なくとも、前記感度データ、前記有効度基準データ、前記入力レコードを記憶するデータ記憶手段を有しており、前記有効度演算手段は、前記計算した各経験レコードの有効度を前記データ記憶手段に記憶し、前記有効度分類手段は、前記有効度基準データ毎に前記経験レコードを分類する際に、前記データ記憶手段に記憶した各有効度を取得した後に前記経験レコードの分類を行う、ベイジアンネットワーク近似処理装置である。
【００１５】
これらの発明によって、従来のようにベイジアンネットワークを構成する全てのベイズ関数の全ての値を、予め格納しておかなくても、本発明のように経験レコード毎の有効度を計算することで、経験レコードを自動的に選択し、それに基づいてを出力データとすることが可能となる。これによって必要となる過去の事象に対する出力値を減らすことが出来、従来よりも小規模なリソースであってもベイジアンネットワークと同様な処理が可能となる。
【００１６】
請求項１０の発明は、
ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置であって、各フィールドに対する重み付けを与えるデータである感度データの入力を受け付ける感度データ入力受付手段と、前記ベイジアンネットワーク近似処理装置の外部で取得された入力レコードの入力を受け付ける入力レコード入力受付手段と、予め設定された、前記ベイジアンネットワーク近似処理装置への入力値フィールドとそれに対する出力値フィールドとからなる経験レコードを取得する経験レコード入力受付手段と、前記経験レコード毎に、前記入力レコードと前記経験レコードについて、それらのフィールド毎に与えられた感度データで重み付けを行った乗算の合計を、各経験レコードに対する有効度として計算する有効度演算手段と、前記経験レコードを予め定められた基準に基づいて前記有効度で分類し、分類された経験レコードに於ける出力値フィールドの値から出力データを計算する有効度分類手段と、前記有効度分類手段から前記出力データを受信し出力する出力手段と、からなるベイジアンネットワーク近似処理装置である。
【００１７】
請求項１１の発明は、
ベイジアンネットワークの近似処理を行うベイジアンネットワーク近似処理装置であって、各フィールドに対する重み付けを与えるデータである感度データの入力を受け付ける感度データ入力受付手段と、前記ベイジアンネットワーク近似処理装置の外部で取得された入力レコードの入力を受け付ける入力レコード入力受付手段と、予め設定された、前記ベイジアンネットワーク近似処理装置への入力値フィールドとそれに対する出力値フィールドとからなる経験レコードを取得する経験レコード入力受付手段と、ＮＦを前記経験レコードに於ける入力値フィールドの数、ＮＩを前記入力値フィールドの要素数とすると、数１に基づいて前記経験レコード毎の有効度を計算する有効度演算手段と、前記経験レコードを予め定められた基準に基づいて前記有効度で分類し、分類された経験レコードに於ける出力値フィールドの値から出力データを計算する有効度分類手段と、前記有効度分類手段から前記出力データを受信し出力する出力手段と、からなるベイジアンネットワーク近似処理装置である。
【００１８】
請求項１７の発明は、
前記ベイジアンネットワーク近似処理装置は、少なくとも、前記感度データ、前記入力レコードを記憶するデータ記憶手段を有しており、前記有効度演算手段は、前記計算した各経験レコードの有効度を前記データ記憶手段に記憶し、前記有効度分類手段は、前記経験レコードを分類する際に、前記データ記憶手段に記憶した各有効度を取得した後に前記経験レコードの分類を行う、ベイジアンネットワーク近似処理装置である。
【００１９】
これらの発明によって、従来のようにベイジアンネットワークを構成する全てのベイズ関数の全ての値を、予め格納しておかなくても、本発明のように経験レコード毎の有効度を計算することで、経験レコードを自動的に選択し、それに基づいてを出力データとすることが可能となる。これによって必要となる過去の事象に対する出力値を減らすことが出来、従来よりも小規模なリソースであってもベイジアンネットワークと同様な処理が可能となる。又、請求項１、請求項２の場合と異なり有効度基準データを用いる必要もない。
【００２０】
有効度分類手段で、有効度の分類を行う際には、各種の方法をとることが出来る。
【００２１】
例えば前記有効度演算手段で計算した有効度が前記有効度基準データよりも高い経験レコードに於ける出力値フィールドの平均値を、前記出力データとすることが出来る。
【００２２】
又、前記有効度演算手段で計算した有効度が前記有効度基準データよりも高く、且つ、予め定められた上位ｎ番目までに該当する経験レコードに於ける出力値フィールドの平均値を、前記出力データとしても良い。
【００２３】
更に、前記有効度演算手段で計算した有効度に基づいて前記経験レコードを前記有効度基準データ毎に分類し、最も高い有効度基準に分類された経験レコードに於ける出力値フィールドの値を、前記出力データとしても良い。
【００２４】
この場合には、請求項６に記載のように、前記最も高い有効度基準データに分類された経験レコードが複数ある場合には、そこに分類された経験レコードに於ける出力値フィールドの平均値を、前記出力データとしても良いし、請求項７に記載のように、前記最も高い有効度基準データに分類された経験レコードが複数ある場合には、そこに分類された経験レコードのうち、最も高い有効度の経験レコードに於ける出力値フィールドの値を、前記出力データとしても良いし、請求項８に記載のように、前記最も高い有効度基準データに分類された経験レコードが複数ある場合には、そこに分類された経験レコードのうち、任意の経験レコードに於ける出力値フィールドの値を、前記出力データとしても良い。
【００２５】
又、有効度基準データを用いない場合（請求項１０、請求項１１の場合）の有効度の分類も上述と同様に各種の方法をとることが出来る。
【００２６】
例えば前記有効度のソーティングを行い、最も高い有効度である経験レコードに於ける出力値フィールドの値を、出力データとすることが出来る。
【００２７】
又、前記有効度のソーティングを行い、予め定められた上位ｎ番目までに該当する経験レコードに於ける出力値フィールドの平均値を、出力データとしても良い。
【００２８】
更に、前記有効度のソーティングを行い、予め定められた上位ｎ番目までに該当する経験レコードに於ける出力値フィールドの値を、各々出力データとしても良い。
【００２９】
加えて、予め定められた上位ｎ番目までに該当する経験レコードのうち、任意の経験レコードに於ける出力値フィールドの値を、出力データとしても良い。
【００３０】
又、請求項１２から請求項１５のようにして選択した経験レコードの出力値フィールドに対して、その経験レコードの有効度を重み付けし、その重み付け後の有効度の平均値を、出力データとしても良い。
【００３１】
本発明にかかるベイジアンネットワーク近似処理装置は、ハードウェア上で実現することが好適であるが、その際にフィールドを構成する確率分布は小数配列よりも整数配列の方が、ハードウェアの処理に適しているので、整数配列とすると良い。
【００３２】
又、ベイジアンネットワーク近似処理装置をハードウェアとする場合には、請求項１９から請求項２３に記載のように、制御チップ等に直接回路として組み込んだり、組み込みＣＰＵに対する外付けのコプロセッサに組み込んだり、拡張ボードのハードウェアに組み込んだり、移動端末にマイクロコントローラとして内蔵したり、小規模制御装置向けのオールインワン製品として組み込むことが好適である。
【発明の効果】
【００３３】
本発明によって、ベイジアンネットワークの際に従来は必須であった各事象の全ての値を要素とするテーブルの作成が不要となる。本発明では、一部の値のみを有するテーブル（経験レコード）から類似する経験レコードを抽出するので、従来よりもリソースを必要としない。従って小規模なハードウェア資源であっても、ベイジアンネットワークの近似処理が可能となる。
【００３４】
又、従来はテーブル生成に時間がかかる為、最新の経験を直ちに反映させることが困難であったが、本発明では、テーブルを使用しない為、最新の経験を直ちに反映させることが可能となる。
【００３５】
更にハードウェア化にあたっては、ＳＤＲＡＭ（Synchronous DRAM）のバースト転送（１回のアドレス指定で複数のデータをまとめて連続的に転送する方法）に適合しているので、高速処理の効果が得られる。つまり、バースト転送を行うＳＤＲＡＭの場合、メモリにアドレスを送ると一定時間経過してからデータが連続的に返ってくるという動作が可能であり、連続したアドレスであれば、２つ目以降のデータは待ち時間なしに受け取れるので、高速処理を可能としている。そして本発明は、バースト転送に同期して演算を行えるように設計されていることから、データが一つ入力される毎にその場で演算を行いメモリの読み込みにかかる時間だけで演算が完了することから、高速処理が実現可能となる。
【発明を実施するための最良の形態】
【００３６】
本発明のベイジアンネットワーク近似処理装置１のシステム構成の一例を図１のシステム構成図を用いて説明する。
【００３７】
ベイジアンネットワーク近似処理装置１は、感度データ入力受付手段２、有効度基準データ入力受付手段３、入力レコード入力受付手段４、経験レコード入力受付手段５、データ記憶手段６、有効度演算手段７、有効度分類手段８、出力手段９とからなる。
【００３８】
ベイジアンネットワーク近似処理装置１は、外部のセンサー等から取得した入力レコード１０（後述）と予め設定している経験レコード１１（後述）とに基づいて、ベイジアンネットワーク近似処理装置１で処理を行った結果を出力データ１２として出力し、例えばモータや各種制御装置等の制御を行う。
【００３９】
フィールドとは、一つの変数に対応した確率分布データである。例えば温度センサーからの入力値やモーターへの出力値を確率分布で示したものがフィールドとなる。ベイジアンネットワーク近似処理装置１の本実施例では、確率分布は、複数の代表値に対してそれぞれの確率を整数で示した整数配列とする。例えば図５（ｃ）に示すように、温度センサーからの入力値について、「〜２０℃」の確率が２０％、「２０℃〜３０℃」の確率が７０％、「３０℃〜４０℃」の確率が１０％、「４０℃〜」の確率が０％であった場合、温度センサーからの入力値フィールドは｛２０，７０，１０，０｝という整数配列となる。
【００４０】
尚、この配列は本来ならば確率分布であるので、小数点表示（上述の整数配列の場合、｛０．２，０．７，０．１，０．０｝）となるが、ベイジアンネットワーク近似処理装置１を制御チップ等のハードウェアに回路として設ける場合には整数処理の方が有効であることから確率を１００倍し、配列の要素としている。従って、１００倍して整数配列とせずに小数表示の配列であっても良い。
【００４１】
レコードとは、一つの事象に対応する、複数のフィールドをまとめたものである。例えばある時刻に於ける「温度センサーからの入力値フィールド」、「湿度センサーからの入力値フィールド」、「人数センサーからの入力値フィールド」、「ヒーターへの出力値フィールド」等をまとめて一つのレコードとして扱うものである。同じフィールドで構成されているレコードは、レコード同士を比較することが出来、本発明のベイジアンネットワーク近似処理装置１では、当該処理装置への現在の入力値を入力レコード１０、過去に起こった事象を経験レコード１１とし、レコード同士を比較することで、適切な経験レコード１１を選び出す。
【００４２】
出力データ１２は、ベイジアンネットワーク近似処理装置１が外部に出力するフィールドである。従って過去の経験レコード１１（後述）に照らし合わせ、適切な経験レコード１１を選び出し、そこから出力データ１２を計算して、出力データ１２を出力することが、このベイジアンネットワーク近似処理装置１の機能となる。
【００４３】
入力レコード１０は、センサー等から取得した、現在のベイジアンネットワーク近似処理装置１への入力を示すレコードである。
【００４４】
経験レコード１１は、予め設定された、過去の様々な事象について、ベイジアンネットワーク近似処理装置１への入力値フィールドとそれに対応する適切な出力値フィールドとを組み合わせたレコードである。ベイジアンネットワーク近似処理装置１は、複数の経験レコード１１を、入力レコード１０と比較することで、適切な経験レコード１１を選び出し、出力値フィールドを得る。従って経験レコード１１の数が多いほど、精度の高い結果の出力が可能となる。
【００４５】
感度データ入力受付手段２は、感度データの入力をベイジアンネットワーク近似処理装置１に受け付け（受信し、以下同様）、データ記憶手段６に記憶する手段である。感度データとは、レコードを比較する際に、それぞれのフィールドにどの程度の重みを与えるかを指定するデータである。感度データは、入力レコード１０の対応するフィールドの確率分布を示す配列の要素数と、経験レコード１１の対応するフィールドの確率分布の配列の要素数とを乗じた数の要素を持つ。例えば入力値フィールドが｛２０，７０，１０，０｝で示されるような４要素の配列であった場合、対応する出力値フィールドも同様に４要素の配列であれば、この感度データは１６要素（４×４要素）からなる。感度データはフィールド毎に入力される。
【００４６】
有効度基準データ入力受付手段３は、有効度基準データの入力をベイジアンネットワーク近似処理装置１に受け付け（受信し、以下同様）、データ記憶手段６に記憶する手段である。有効度基準データとは、どれだけの有効度（後述）を持つ出力データ１２を得るかを指定する数値である。従って、有効度基準データよりも高い有効度を持つ経験レコード１１に於ける出力値フィールドを出力データ１２として得られることになる。複数の有効度基準データを指定した場合には、有効度によって経験レコード１１が分類され、分類毎に出力値フィールドが得られる。
【００４７】
有効度とは、入力レコード１０とある経験レコード１１とを比較したときの、類似の度合いを示す数値である。入力レコード１０とある経験レコード１１を、感度データに基づいて比較することで、その経験レコード１１がどの程度入力レコード１０に似ているかを有効度として示すことが出来る。ベイジアンネットワーク近似処理装置１では、有効度の高い経験レコード１１の出力値フィールドを集め、出力値を計算する。
【００４８】
入力レコード１０のあるフィールドの要素数がＮＩ個の場合、入力レコード１０の配列を１×ＮＩの配列、経験レコード１１の配列をＮＩ×１の配列とし、感度データはＮＩ×ＮＩの配列となるので、数１で有効度が計算される。この有効度の計算は、有効度演算手段７で行い、数１を用いた有効度の計算については後述する。
【数１】
2005165624.tif 000003
【００４９】
入力レコード入力受付手段４は、センサー等のベイジアンネットワーク近似処理装置１の外部で取得された入力レコード１０を、ベイジアンネットワーク近似処理装置１に入力として受け付け（受信し、以下同様）、それをデータ記憶手段６に記憶する手段である。
【００５０】
経験レコード入力受付手段５は、予め設定された経験レコード１１をベイジアンネットワーク近似処理装置１に取得し（受信し、以下同様）、それを有効度演算手段７に送出する手段である。
【００５１】
データ記憶手段６は、感度データ入力受付手段２で受け付けた感度データ、有効度基準データ入力受付手段３で受け付けた有効度基準データ、入力レコード入力受付手段４で受け付けた入力レコード１０等のデータを記憶する手段であり、例えばレジスタやキャッシュ、メモリ等が該当するが、これらに限定するものではなく、データを記憶することが出来るものであれば如何なるものであっても良い。
【００５２】
有効度演算手段７は、入力レコード１０と経験レコード１１とについて、経験レコード１１毎に、その経験レコード１１のフィールド毎に与えられた感度データで重み付けを行った乗算の合計をそれぞれの有効度として計算する手段である。
【００５３】
有効度分類手段８は、有効度演算手段７で計算した有効度を有効度基準データ毎に分類し、有効度の高い経験レコード１１に於ける出力値フィールドの値を（有効度が高いとその経験レコード１１が類似している可能性が高いことから、好適には最も高い有効度基準に分類された経験レコード１１に於ける出力値フィールドの値を）出力データ１２として、出力手段９に送出する手段である。尚、この有効度に分類された複数の経験レコード１１がある場合には、そこに分類された各経験レコード１１に於ける出力値フィールドの平均値を出力データ１２とすると良い。
【００５４】
図３に本発明のベイジアンネットワーク近似処理装置１の処理の概念図を示す。
【００５５】
具体的には、有効度演算手段７が、各経験レコード１１について、上述の数１を用いることで有効度を計算し、それを有効度分類手段８で有効度基準データ毎に分類する。そして最も高い有効度の基準に分類された経験レコード１１に於ける出力値フィールドの値を、出力データ１２として出力手段９に送出する。尚、有効度の分類は、有効度毎にソーティング（並べ替え）を行えば良い。そして複数の経験レコード１１が分類されている場合には、その各経験レコード１１の出力値フィールドの平均値を、出力データ１２として出力手段９に送出する。
【００５６】
尚、有効度演算手段７に於いて、上述した有効度の計算に際しては、一般的には感度データが固定されていることが多く、入力レコード１０の一つあたりに多数の経験レコード１１を入力する為、値が変わる頻度は「感度データ＜入力レコード１０＜経験レコード１１」である。これを利用して、入力レコード１０を受け付けた時点で先に感度データと入力レコード１０との乗算を計算しておき、これを中間データとしてデータ記憶手段６等に記憶しておき、経験レコード１１を読み込み有効度の計算に用いる際に、データ記憶手段６等に記憶した中間データと経験レコード１１の各要素とを乗算して有効度を計算しても良い。これによって処理速度、回路規模の面から有利となる。
【００５７】
つまり、「有効度＝感度データ×入力レコード１０×経験レコード１１」をまとめて計算する代わりに、「中間データ＝感度データ×入力レコード１０」を予め計算しておき、それをデータ記憶手段６に記憶し、経験レコード１１を読み込んだ際に「有効度＝中間データ×経験レコード１１」の計算をすることで、更に少ないリソースで多数の経験レコード１１の処理を行うことが出来る。
【００５８】
出力手段９は、有効度分類手段８で分類した出力データ１２を、ベイジアンネットワーク近似処理装置１の外部へ処理結果として出力する手段である。
【００５９】
本発明のベイジアンネットワーク近似処理装置１は、ハードウェア、ソフトウェアのいずれであっても処理することが出来るが、特に効果が著しいのが、ハードウェアとした場合である。
【００６０】
従来のベイジアンネットワークを処理するソフトウェアの場合、図２６（ａ）に示すように、メモリ上で読み込んだ後に、ＣＰＵで計算を行い、更にＣＰＵでの計算が終了後再度メモリ上での読み込み作業を実行している。
【００６１】
一方、本発明のベイジアンネットワーク近似処理装置１をハードウェア化した場合、図２６（ｂ）に示すように、ＳＤＲＡＭのバースト転送に適合していることから、メモリ上では常に読み込みを行い、それをハードウェアで計算している。つまり、メモリとハードウェアとの間で並行してパイプライン処理が行えることから、従来よりも高速処理の効果が得られることとなる。
【００６２】
ベイジアンネットワーク近似処理装置１は、制御チップ等に直接回路として組み込んだり、組み込みＣＰＵに対する外付けのコプロセッサに組み込んだり、拡張ボードのハードウェアに組み込んだり、ユビキタス分野向け（例えば携帯電話、ＰＨＳ、ＰＤＡ等の移動端末）にマイクロコントローラとして内蔵したり、小規模制御装置向けのオールインワン製品として組み込むことが好適である。
【００６３】
図４にベイジアンネットワーク近似処理装置１がハードウェアに組み込まれた場合の概念図を示す。図４（ａ）はＣＰＵに対する外付けのコプロセッサとなった場合であり、図４（ｂ）は拡張ボードに組み込まれた場合であり、図４（ｃ）ユビキタス分野向けにマイクロコントローラとして内蔵した場合であり、図４（ｄ）は小規模制御装置向けのオールインワン製品として組み込んだ場合である。
【００６４】
図４（ａ）の場合は、ベイジアンネットワーク近似処理装置１の演算ユニットをＣＰＵに接続する場合を示しており、経験レコード１１や入力レコード１０は、ＣＰＵから入力を受け付ける（受信する）こととなる。従ってベイジアンネットワーク近似処理装置１は、演算ユニットのチップに記録されていることとなる。
【００６５】
図４（ｂ）の場合は、拡張ボード上にコントローラとＳＤＲＡＭとベイジアンネットワーク近似処理装置１の演算ユニットとを設け、ホストはコントローラを通じて、経験レコード１１をＳＤＲＡＭに書き込んでおく。ホストが入力レコード１０をコントローラに与えると、コントローラは演算ユニットの設定を行い、ＳＤＲＡＭから演算ユニットに経験レコード１１を転送して、演算ユニットがベイジアンネットワーク近似処理を行う。この間、ホストは別の処理を行うことが出来、又、拡張ボードはホストとは関係なく高速動作できるメリットがある。
【００６６】
図４（ｃ）の場合は、図４（ａ）を高速化する為に図４（ｂ）の手法と組み合わせたものであって、ベイジアンネットワーク近似処理装置１の演算ユニットとコントローラを一体化し、外部にＳＤＲＡＭを接続し、更にＣＰＵとも接続する。ここでＳＤＲＡＭは演算ユニット専用で、ＣＰＵからはコントローラ経由でないとアクセスできない点が特徴となる。これもＳＤＲＡＭと演算ユニットとが、ホストと関係なく動作できるメリットがある。
【００６７】
図４（ｄ）の場合は、図４（ｃ）のコントローラを強化し、ワンチップマイコンとしての機能を持たせ、機器全体の制御までを行わせようとするものである。
【００６８】
上述の拡張ボードとしては、例えばGidel社のPROCStar25-1C、PROCStar25-1、PROCStar25-2、PROCStar25-３や、三菱電機エンジニアリング株式会社のKAC-02Aがある。又、コントローラとしては、例えばARM社のARM922T、ARM926EJ-S、ARM1026EJ-S 、ARM1136J(F)-S、ARM7TDMI、ARM7TDMI-S、SC100、SC200、ARM7EJ-S、ARM946E-S、ARM966E-Sや、ルネサステクノロジ社のM32R/Eシリーズ（M32102S6FP、M32104S6FP、M32121FCAWG、M32121MCB-XXXWG等）、M32R/ECUシリーズ（32170グループ(M32170F3VFP、M32170F4VFP、M32170F6VFP)、32171グループ(M32171F2VFP、M32171F3VFP、M32171F4VFP)、32172グループ(M32172F2VFP)、32173グループ(M32173F2VFP)、32174グループ(M32174F3VFP、M32174F4VFP)、32176グループ(M32176F2VFP、M32176F2VWG、M32176F2TFP、M32176F2TWG、M32176F3VFP、M32176F3VWG、M32176F3TFP、M32176F3TWG、M32176F4VFP、M32176F4VWG、M32176F4TFP、M32176F4TWG)、32180グループ(M32180F8TFP、M32180F8UFP、M32180F8VFP)、32182グループ(M32182F3TFP、M32182F3UFP、32182F3VFP、M32182F8TFP、M32182F8UFP、M32182F8VFP)、M32R/Iシリーズがある。
【実施例１】
【００６９】
次にベイジアンネットワーク近似処理装置１に於ける処理の流れについて、図２のフローチャート図及び図１のシステム構成図を用いて詳細に説明する。
【００７０】
ベイジアンネットワーク近似処理装置１で用いる、少なくとも一以上の経験レコード１１は予め設定されているものとする。
【００７１】
まずベイジアンネットワーク近似処理装置１は、感度データの入力を感度データ入力受付手段２で受け付け、それをデータ記憶手段６に記憶する（Ｓ１００）。この際に入力を受け付ける感度データの一例を図５（ａ１）から図５（ａ３）に示す。図５（ａ１）及び図５（ａ２）では感度データを対称に設定した場合であり、図５（ａ３）では感度データを非対称に設定した場合の一例である。
【００７２】
感度データは、上述したように、フィールドの類似度が、全体の類似度にどの程度影響するかを示したものである。例えばフィールドＡの感度データをフィールドＢの感度データの２倍に設定した場合、フィールドＡの方が有効度が高くなるので、フィールドＡの類似度の方がフィールドＢよりも重要であるという指定をすることとなる。このような感度データの設定をすることによって、値があまり変動しないフィールドを強調したり、値が大きく変動するフィールドを弱めたりすることにも利用可能である。一方、感度データの裾野を図５（ａ２）のように広く設定することによって、フィールドが完全に同一でなくても有効であるという指定をすることも出来る。これはノイズ成分の多いデータの場合に、変動を吸収することが出来る点で有効である。又、図５（ａ３）に示したように、感度データを非対称に設定した場合には、例えば図５（ａ３）のような場合には、入力レコード１０が経験レコード１１側よりも大きければ有効であるとして設定することも出来る。
【００７３】
尚、感度データは重み付けであるので、どのような数値基準（例えば負数）であっても良い。
【００７４】
次に、経験レコード１１の分類を行う為の、有効度基準データの入力を有効度基準データ入力受付手段３で受け付け、それをデータ記憶手段６に記憶する（Ｓ１１０）。有効度基準データの一例を図５（ｂ）に示す。
【００７５】
尚、Ｓ１００及びＳ１１０の感度データ、有効度基準データの入力受付についてはどちらが先であっても良い。
【００７６】
感度データ、有効度基準データの入力を受け付けた後、ベイジアンネットワーク近似処理装置１は、センサー等のベイジアンネットワーク近似処理装置１の外部から取得した入力レコード１０を、入力レコード入力受付手段４で受け付け、これをデータ記憶手段６に記憶する（Ｓ１２０）。
【００７７】
図５（ｃ）に入力レコード１０の一例を、図５（ｄ）に経験レコード１１の一例を示す。図５（ｃ）の例では、入力レコード１０が温度データを表す場合であって、「〜２０℃を値０」、「２０℃〜３０℃を値１」、「３０℃〜４０℃を値２」、「４０℃〜を値３」として表現しており、更に値０をとる確率は２０％、値１をとる確率は７０％、値２をとる確率は１０％、値３をとる確率は０％を示している。又、図５（ｄ）の例では、経験レコード１１として温度と湿度と風速の関係を示しており、「値が０になる確率は、温度が２０％、湿度が０％、風速が９０％」、「値が１になる確率は、温度が７０％、湿度が１０％、風速が１０％」、「値が２になる確率は、温度が１０％、湿度が２０％、風速が０％」、「値が３になる確率は、温度が０％、湿度が７０％、風速が０％」となることを示している。
【００７８】
経験レコード入力受付手段５は各経験レコード１１を一つずつ取得し（Ｓ１３０）、有効度演算手段７に対して、取得した経験レコード１１を一つずつ送出する。そして有効度演算手段７は、データ記憶手段６に記憶している入力レコード１０と感度データとを取得し、経験レコード１１のフィールドと入力レコード１０のフィールドとを比較し、このフィールドの有効度の数値を計算する（Ｓ１４０）。
【００７９】
具体的には、取得した経験レコード１１のフィールドに対応する入力レコード１０のフィールドとその感度データとを各々乗算し、それら各要素の乗算した結果を加算することで、フィールド毎に計算した有効度を計算し、各経験レコード１１に対する有効度を計算する。即ち数１の処理を行うこととなる。
【数１】
2005165624.tif 000004
【００８０】
例えば経験レコード１１のフィールドｆが｛２０，８０，０，０｝であって、その経験レコード１１のフィールドｆに対応する入力レコード１０のフィールドｆが｛０，１００，０，０｝であって、更に感度データ（＝ｓ［ｆ］［ＮＩ］［ＮＩ］）が、
ｓ［ｆ］［０］＝｛１００，２０，０，０｝
ｓ［ｆ］［１］＝｛２０，１００，２０，０｝
ｓ［ｆ］［２］＝｛０，２０，１００，２０｝
ｓ［ｆ］［３］＝｛０，０，２０，１００｝
であったとすると、その有効度は各要素毎及び感度データの対応するデータを乗算したものを加算することになるので（即ち各要素毎に、入力レコード１０のフィールド×経験レコード１１のフィールド×感度データ、を行い、その結果を全て加算する）、（２０×０×１００）＋（８０×０×２０）＋（０×０×０）＋（０×０×０）＋（２０×１００×２０）＋（８０×１００×１００）＋（０×１００×２０）＋（０×１００×０）＋（２０×０×０）＋（８０×０×２０）＋（０×０×１００）＋（０×０×２０）＋（２０×０×０）＋（８０×０×０）＋（０×０×２０）＋（０×０×１００）＝８４００００となる。
【００８１】
又、経験レコード１１のフィールドｆが｛２０，８０，０，０｝であって、その経験レコード１１のフィールドｆに対応する入力レコード１０のフィールドｆが｛２０，８０，０，０｝であって、感度データが上述と同様である場合の有効度は、（２０×２０×１００）＋（８０×２０×２０）＋（０×２０×０）＋（０×２０×０）＋（２０×８０×２０）＋（８０×８０×１００）＋（０×８０×２０）＋（０×８０×０）＋（２０×０×０）＋（８０×０×２０）＋（０×０×１００）＋（０×０×２０）＋（２０×０×０）＋（８０×０×０）＋（０×０×２０）＋（０×０×１００）＝７４４０００となる。
【００８２】
上述で各フィールド毎に有効度が計算できたので、経験レコード１１に対する有効度を計算する為に、その合計値を各フィールド毎に加算することとなる。例えば上述の例の場合、Ｓ１４０で得られた各フィールドに対する有効度を加算する。従って、この場合の有効度は８４００００＋７４４０００＝１５８４０００となる。
【００８３】
このように数１で計算した各経験レコード１１の有効度を、有効度分類手段８が、Ｓ１１０で入力を受け付けた有効度基準データ毎に分類を行い、最も高い有効度基準データに該当する経験レコード１１に於ける出力値フィールドの値を出力データ１２とする（Ｓ１５０）。当該有効度基準データに複数の経験レコード１１が分類された場合には、そこに分類された各経験レコード１１に於ける出力値フィールドの平均値を計算し、出力データとする。
【００８４】
上述の図５（ｂ）に示した有効度基準データの場合（これが最も高い有効度基準データであるとする）、上述の有効度は１５８４０００であることから、基準は「０」となり、この経験レコード１１が最も高い（この場合は経験レコード１１が一つなので、常にこの経験レコード１１の出力値フィールドの値）ので、この経験レコード１１の出力値フィールドを出力値として出力手段９に送出する。
【００８５】
Ｓ１４０及びＳ１５０に於ける処理を、図２４にコンピュータ言語の一つであるＣ言語を用いて表記する。尚、ベイジアンネットワーク近似処理装置１を制御チップ等のハードウェアとして実現する場合には、この処理がハードウェア資源上で実現されていることは言うまでもない。
【００８６】
Ｓ１５０で有効度分類手段８が処理した出力データ１２を、有効度分類手段８は出力手段９に送出し、出力手段９が出力値として、出力データ１２を出力する（Ｓ１６０）。
【実施例２】
【００８７】
次に具体的な例を用いてベイジアンネットワーク近似処理装置１の処理の流れを説明する。尚、ベイジアンネットワーク近似処理装置１で処理するモデルとして故障予測とし、入力されるのは油温と油量の２つであるとする。即ち入力レコード１０として油温と油量の２つがあり、出力されるのは故障予測にかかる出力データ１２である。
【００８８】
油温フィールドは図６（ａ）に示すように、「〜２０℃の時には値０」、「２０℃〜４０℃の時には値１」、「４０℃〜６０℃の時には値２」、「６０℃〜の時には値３」の４値を取るフィールドとし、油量フィールドは図６（ｂ）に示すように、「８００ｍｌ〜の時には値０」、「６００ｍｌ〜８００ｍｌの時には値１」、「４００ｍｌ〜６００ｍｌの時には値２」、「〜４００ｍｌの時には値３」を取るフィールドとする。ここでは、説明を容易にする為に、値が大きければ異常であるように割り当てたが、任意に割り当てて良い。又、故障予測フィールドは図６（ｃ）に示すように、「正常の時には値０」、「注意の時には値１」、「要点検の時には値２」、「非常停止の時には値３」を取るフィールドとする。
【００８９】
更に経験レコード１１として、過去の入力レコード１０と、その事象の時に出力して欲しい出力値フィールドを設定しておく。この例では図７（ａ）から図７（ｅ）の５つの経験レコード１１がある場合を説明する。図７（ａ）では事象が正常時の場合の入力レコード１０とその出力値フィールドからなる経験レコード１１のサンプル、図７（ｂ）では事象が注意時の場合の入力レコード１０とその出力値フィールドからなる経験レコード１１のサンプル１、図７（ｃ）では事象が注意時の場合の入力レコード１０とその出力値フィールドからなる経験レコード１１のサンプル２、図７（ｄ）では事象が要点検時の場合の入力レコード１０とその出力値フィールドからなる経験レコード１１のサンプル、図７（ｅ）では事象が非常停止時の場合の入力レコード１０とその出力値フィールドからなる経験レコード１１のサンプル、の場合である。
【００９０】
ベイジアンネットワーク近似処理装置１は、図８に示す油温フィールドの感度データと油量フィールドの感度データとを、ベイジアンネットワーク近似処理装置１の感度データ入力受付手段２で受け付け、それをデータ記憶手段６に記憶する（Ｓ１００）。
【００９１】
次に、ベイジアンネットワーク近似処理装置１の有効度基準データ入力受付手段３は、図９に示すデータを有する有効度基準データの入力を受け付け、それをデータ記憶手段６に記憶する（Ｓ１１０）。
【００９２】
感度データ、有効度基準データの入力を受け付けた後、本実施例では油温と油量から装置の故障予測を行うので、ベイジアンネットワーク近似処理装置１は、油温を検知する油温センサーと油量を検知する油量センサーで取得した、図１０に示す入力レコード１０を入力レコード入力受付手段４で入力を受け付け、それをデータ記憶手段６に記憶する（Ｓ１２０）。
【００９３】
次に経験レコード入力受付手段５は、各経験レコード１１を一つずつ取得し（Ｓ１３０）、有効度演算手段７に対して、取得した経験レコード１１を一つずつ送出する。そして有効度演算手段７は、データ記憶手段６に記憶している入力レコード１０と感度データとを取得する。そして有効度演算手段７は、経験レコード１１毎に、入力レコード１０と各経験レコード１１とについてフィールド毎に与えられた感度データで重み付けを行った乗算の合計をそれぞれの有効度として計算する（即ち数１を計算する）（Ｓ１４０）。
【００９４】
そして有効度分類手段８は、有効度演算手段７で計算した有効度に基づいて、経験レコード１１毎の有効度を有効度基準データ毎に分類し、高い有効度基準データ（好適には最も高い有効度基準データ）に分類された経験レコード１１に於ける出力値フィールドの値を、出力手段９で出力する出力データ１２とする（Ｓ１５０）。もし最も高い有効度基準データに分類された経験レコード１１が複数あった場合には、そこに分類された経験レコード１１の出力値フィールドの平均値を出力データ１２とする。尚、Ｓ１４０及びＳ１５０の処理について、Ｃ言語で表現すると図２４のように表現できる。
【００９５】
Ｓ１４０及びＳ１５０の処理を実施例２の具体例に当てはめると下記のような計算となる。
【００９６】
まず入力レコード１０と経験レコード１１Ａとの比較を行い有効度を有効度演算手段７で計算すると、図１１のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は６８００００となり、油量フィールドの有効度は３０００００となる。従って経験レコード１１Ａとの比較を行った場合の有効度は９８００００となる。この経験レコード１１Ａの場合の有効度をデータ記憶手段６に記憶する。
【００９７】
入力レコード１０と経験レコード１１Ｂとの比較を行い有効度を有効度演算手段７で計算すると、図１２のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は６８００００となり、油量フィールドの有効度は５００００となる。従って経験レコード１１Ｂとの比較を行った場合の有効度は７３００００となる。この経験レコード１１Ｂの場合の有効度をデータ記憶手段６に記憶する。
【００９８】
入力レコード１０と経験レコード１１Ｃとの比較を行い有効度を有効度演算手段７で計算すると、図１３のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は３２００００となり、油量フィールドの有効度は３０００００となる。従って経験レコード１１Ｃとの比較を行った場合の有効度は６２００００となる。この経験レコード１１Ｃの場合の有効度をデータ記憶手段６に記憶する。
【００９９】
入力レコード１０と経験レコード１１Ｄとの比較を行い有効度を有効度演算手段７で計算すると、図１４のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は３２００００となり、油量フィールドの有効度は５００００となる。従って経験レコード１１Ｄとの比較を行った場合の有効度は３７００００となる。この経験レコード１１Ｄの場合の有効度をデータ記憶手段６に記憶する。
【０１００】
入力レコード１０と経験レコード１１Ｅとの比較を行い有効度を有効度演算手段７で計算すると、図１５のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は４００００となり、油量フィールドの有効度は３０００００となる。従って経験レコード１１Ｅとの比較を行った場合の有効度は３４００００となる。この経験レコード１１Ｅの場合の有効度をデータ記憶手段６に記憶する。
【０１０１】
このように各経験レコード１１Ａから経験レコード１１Ｅの有効度と、Ｓ１１０で入力を受け付けた有効度基準データとを、有効度分類手段８がデータ記憶手段６から抽出し、有効度分類手段８が有効度基準データ毎に分類し、最も高い有効度基準データに分類された経験レコード１１に於ける出力値フィールドの値を、出力手段９に出力データ１２として送出する（Ｓ１５０）。ここでは最も高い有効度基準データに分類された経験レコード１１は一つなので、出力値フィールドの平均値は計算しなくても良い。
【０１０２】
従って上述の場合、経験レコード１１Ａの有効度は９８００００であることから、有効度基準データの値２（８００００１〜１００００００）に該当する。
【０１０３】
経験レコード１１Ｂの有効度は７３００００であることから、有効度基準データの値３（６００００１〜８０００００）に該当する。
【０１０４】
そして経験レコード１１Ｃの有効度は６２００００であることから、経験レコード１１Ｂと同様に有効度基準データの値３（６００００１〜８０００００）に該当する。
【０１０５】
経験レコード１１Ｄの有効度は３７００００であることから、有効度基準データの値５（２００００１〜４０００００）に該当する。
【０１０６】
経験レコード１１Ｅの有効度は３４００００であることから、経験レコード１１Ｄと同様に有効度基準データの値５（２００００１〜４０００００）に該当する。
【０１０７】
上述のように有効度基準データ毎に分類されたものを模式的に図１６に示す。そうすると最も高い有効度基準データに分類されたのが、基準値「２」の経験レコード１１Ａなので、この経験レコード１１Ａに於ける出力値フィールド（図７（ａ）に於ける経験レコード１１の故障予測の値）の値を参照すると、「１００，０，０，０」である。そして基準値「２」に分類された経験レコード１１はこれだけなので、出力データ１２の値も「１００，０，０，０」となる。従って有効度分類手段８は出力手段９で出力する出力データ１２として「１００，０，０，０」を出力手段９に送出する。
【０１０８】
出力手段９は、有効度分類手段８から出力データ１２「１００，０，０，０」を受信すると、それを出力する。従って、現在の出力結果としては、正常時であると判断できる。
【実施例３】
【０１０９】
次に経験データ、感度データ、有効度基準データは実施例２と同様であって（即ち、経験データが図７、感度データが図８、有効度基準データが図９）、入力レコード入力受付手段４で受け付け（Ｓ１２０）、データ記憶手段６に記憶した入力レコード１０が図１７に示す場合であったとする。尚、Ｓ１００、Ｓ１１０は実施例２と同様となる。
【０１１０】
実施例２と同様に、経験レコード入力受付手段５は、各経験レコード１１を一つずつ取得し（Ｓ１３０）、有効度演算手段７に対して、取得した経験レコード１１を一つずつ送出する。そして有効度演算手段７は、データ記憶手段６に記憶している入力レコード１０と感度データとを取得する。有効度演算手段７は、経験レコード１１毎に、入力レコード１０と各経験レコード１１とについてフィールド毎に与えられた感度データで重み付けを行った乗算の合計をそれぞれの有効度として計算する（即ち数１を計算する）（Ｓ１４０）。
【０１１１】
そして有効度分類手段８は、有効度演算手段７で計算した有効度に基づいて、経験レコード１１毎の有効度を有効度基準データ毎に分類し、最も高い有効度基準データに分類された経験レコード１１に於ける出力値フィールドの値を、出力手段９で出力する出力データとする（Ｓ１５０）。もし最も高い有効度基準データに分類された経験レコード１１が複数あった場合には、そこに分類された経験レコード１１に於ける出力値フィールドの平均値を計算し、出力データ１２とする。
【０１１２】
Ｓ１４０及びＳ１５０の処理を実施例３の具体例に当てはめると下記のような計算となる。
【０１１３】
まず入力レコード１０と経験レコード１１Ａとの比較を行い有効度を有効度演算手段７で計算すると、図１８のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は３２００００となり、油量フィールドの有効度は２００００となる。従って経験レコード１１Ａとの比較を行った場合の有効度は３４００００となる。この経験レコード１１Ａの場合の有効度をデータ記憶手段６に記憶する。
【０１１４】
入力レコード１０と経験レコード１１Ｂとの比較を行い有効度を有効度演算手段７で計算すると、図１９のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は３２００００となり、油量フィールドの有効度は３４００００となる。従って経験レコード１１Ｂとの比較を行った場合の有効度は６６００００となる。この経験レコード１１Ｂの場合の有効度をデータ記憶手段６に記憶する。
【０１１５】
入力レコード１０と経験レコード１１Ｃとの比較を行い有効度を有効度演算手段７で計算すると、図２０のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は６８００００となり、油量フィールドの有効度は１６００００となる。従って経験レコード１１Ｃとの比較を行った場合の有効度は８４００００となる。この経験レコード１１Ｃの場合の有効度をデータ記憶手段６に記憶する。
【０１１６】
入力レコード１０と経験レコード１１Ｄとの比較を行い有効度を有効度演算手段７で計算すると、図２１のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は６８００００となり、油量フィールドの有効度は３４０００となる。従って経験レコード１１Ｄとの比較を行った場合の有効度は１０２００００となる。この経験レコード１１Ｄの場合の有効度をデータ記憶手段６に記憶する。
【０１１７】
入力レコード１０と経験レコード１１Ｅとの比較を行い有効度を有効度演算手段７で計算すると、図２２のように油温フィールドの有効度、油量フィールドの有効度が計算できる。この場合、油温フィールドの有効度は３２００００となり、油量フィールドの有効度は２００００となる。従って経験レコード１１Ｅとの比較を行った場合の有効度は３４００００となる。この経験レコード１１Ｅの場合の有効度をデータ記憶手段６に記憶する。
【０１１８】
このように各経験レコード１１Ａから経験レコード１１Ｅの有効度と、Ｓ１１０で入力を受け付けた有効度基準データとを、有効度分類手段８がデータ記憶手段６から抽出し、有効度分類手段８が有効度基準データ毎に分類し、最も高い有効度基準データに分類された経験レコード１１に於ける出力値フィールドの値を、出力手段９に出力データ１２として送出する（Ｓ１５０）。ここでは最も高い有効度基準データに分類された経験レコード１１は一つなので、出力値フィールドの平均値は計算しなくても良い。
【０１１９】
従って上述の場合、経験レコード１１Ａの有効度は３４００００であることから、有効度基準データの値５（０〜２０００００）に該当する。
【０１２０】
経験レコード１１Ｂの有効度は６６００００であることから、有効度基準データの値３（６００００１〜８０００００）に該当する。
【０１２１】
そして経験レコード１１Ｃの有効度は８４００００であることから、有効度基準データの値２（８００００１〜１００００００）に該当する。
【０１２２】
経験レコード１１Ｄの有効度は１０２００００であることから、有効度基準データの値１（１０００００１〜１２０００００）に該当する。
【０１２３】
経験レコード１１Ｅの有効度は３４００００であることから、経験レコード１１Ａと同様に有効度基準データの値５（２００００１〜４０００００）に該当する。
【０１２４】
上述のように有効度基準データ毎に分類されたものを模式的に図２３に示す。そうすると最も高い有効度基準データに分類されたのが、基準値「１」の経験レコード１１Ｄなので、この経験レコード１１Ｄに於ける出力値フィールド（図７（ｄ）に於ける経験レコード１１の故障予測の値）の値を参照すると、「０，０，１００，０」である。そして基準値「１」に分類された経験レコード１１はこれだけなので、出力データ１２の値も「０，０，１００，０」となる。従って有効度分類手段８は出力手段９で出力する出力データとして「０，０，１００，０」を出力手段９に送出する。
【０１２５】
出力手段９は、有効度分類手段８から出力データ１２「０，０，１００，０」を受信すると、それを出力する。従って、現在の出力結果としては、要点検時であると判断できる。
【実施例４】
【０１２６】
ベイジアンネットワーク近似処理装置１に於いて、有効度分類手段８は、有効度演算手段７で計算した有効度を有効度基準データ毎に分類し、最も高い有効度基準データに属する複数の経験レコード１１のうち、最も高い有効度の経験レコード１１に於ける出力値フィールドの値を出力データ１２として、出力手段９に送出しても良い。
【０１２７】
又、有効度分類手段８は、有効度演算手段７で計算した有効度を有効度基準データ毎に分類し、最も高い有効度基準データに属する複数の経験レコード１１のうち、任意の経験レコード１１に於ける出力値フィールドの値を出力データ１２として、出力手段９に送出しても良い。
【０１２８】
更に、有効度分類手段８は、有効度演算手段７で計算した有効度を有効度基準データ毎に分類し、最も高い有効度基準データに属する複数の経験レコード１１のうち、予め定められた上位ｎ個の経験レコード１１に於ける出力値フィールドの値の平均値を出力データ１２として、出力手段９に送出しても良い。
【実施例５】
【０１２９】
次に、ベイジアンネットワーク近似処理装置１に、有効度基準データ入力受付手段３を設けない場合を図２５に示す。この場合、有効度分類手段８以外の処理は実施例１から実施例４と同様である。従って図２に於いてＳ１１０の処理も不要となる。
【０１３０】
この実施例の場合、有効度演算手段７で計算した有効度に基づいて、有効度分類手段８は、有効度演算手段７で計算した有効度のソーティング（並べ替え）を行い、最も高い有効度の経験レコード１１に於ける出力値フィールドの値を（好適には最も高い有効度基準に分類された経験レコード１１に於ける出力値フィールドの値を）出力データ１２として、出力手段９に送出する手段となる。
【０１３１】
又、有効度分類手段８は、最も高い有効度を有する経験レコード１１の出力値フィールドの値を用いずとも、予め定められた上位ｎ個に該当する有効度を有する経験レコード１１の出力値フィールドの値の平均値を出力データ１２としても良いし、上位ｎ個のうちいずれかの経験レコード１１の出力値フィールドの値を出力データ１２としても良い。更に、出力データ１２が複数あってもよい場合には、上位ｎ個の経験レコード１１の出力値フィールドの値を各々出力データ１２としても良い。
【実施例６】
【０１３２】
上述したように、実施例１から実施例５に於いて出力データ１２を生成する際に更に、各経験レコード１０の出力値フィールドを、その経験レコード１１の有効度によって、重み付けした平均値としても良い。
【０１３３】
具体的には、経験レコード１１ｒの出力値フィールドをｘｏ［ｒ］、有効度演算手段７で計算したその経験レコード１１の有効度をｖａｌ［ｒ］で示す場合、有効度分類手段８は、Σ（ｘｏ［ｒ］×ｖａｌ［ｒ］）÷Σ（ｖａｌ［ｒ］）を計算し、出力データ１２とする。そして有効度分類手段８は、その出力データ１２を出力手段９に送信し、出力手段９で当該出力データ１２を出力する。
【０１３４】
このように有効度に更に重み付けを行うことによって、有効度の高い経験レコード１１を重視しつつ、有効度がそれほど高くない経験レコード１１も取りいれた出力データ１２を得ることが出来る。
【０１３５】
又、有効度そのものではなく、有効度の２乗を使って重み平均を計算しても良い。これにより、有効度が特に高い経験レコード１１を重視した出力データ１２を得ることが出来る。
【０１３６】
本発明に於ける各手段は、その機能が論理的に区別されているのみであって、物理上あるいは事実上は同一の領域を為していても良い。
【０１３７】
尚、本発明を実施するにあたり本実施態様の機能を実現するソフトウェアのプログラムを記録した記憶媒体をシステムに供給し、そのシステムのコンピュータが記憶媒体に格納されたプログラムを読み出し実行することによって実現されることは当然である。
【０１３８】
この場合、記憶媒体から読み出されたプログラム自体が前記した実施態様の機能を実現することとなり、そのプログラムを記憶した記憶媒体は本発明を当然のことながら構成することになる。
【０１３９】
又、ＨＤＬのような回路設計言語を用いることによって、プログラム可能なＬＳＩに、本発明のベイジアンネットワーク近似処理装置１の各機能を書き込んで動作させても良い。例えばＦＰＧＡと呼ばれる（Field Programmable Gate Array）プログラム可能なロジック・デバイスに、ＨＤＬのような回路設計言語で記述したベイジアンネットワーク近似処理装置１の各機能を書き込んで、計算を行わせる。
【０１４０】
プログラムを供給する為の記憶媒体としては、例えば磁気ディスク、ハードディスク、光ディスク、光磁気ディスク、磁気テープ、不揮発性のメモリカード等を使用することができる。
【０１４１】
更に、プログラムを記憶媒体に記憶するのみならず、ネットワークからダウンロードして取得することによっても良い。
【０１４２】
又、コンピュータが読み出したプログラムを実行することにより、上述した実施態様の機能が実現されるだけではなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているオペレーティングシステムなどが実際の処理の一部又は全部を行い、その処理によって前記した実施態様の機能が実現される場合も含まれることは言うまでもない。
【０１４３】
更に、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わる不揮発性あるいは揮発性の記憶手段に書き込まれた後、そのプログラムの指示に基づき、機能拡張ボードあるいは機能拡張ユニットに備わる演算処理装置などが実際の処理の一部あるいは全部を行い、その処理により前記した実施態様の機能が実現される場合も含まれることは当然である。 
【産業上の利用可能性】
【０１４４】
本発明によって、ベイジアンネットワークの際に従来は必須であった各事象の全ての値を要素とするテーブルの作成が不要となる。本発明では、一部の値のみを有するテーブル（経験レコード）から類似する経験レコードを抽出するので、従来よりもリソースを必要としない。従って小規模なハードウェア資源であっても、ベイジアンネットワークの近似処理が可能となる。
【０１４５】
又、従来はテーブル生成に時間がかかる為、最新の経験を直ちに反映させることが困難であったが、本発明では、テーブルを使用しない為、最新の経験を直ちに反映させることが可能となる。
【０１４６】
更にハードウェア化にあたっては、ＳＤＲＡＭ（Synchronous DRAM）のバースト転送（１回のアドレス指定で複数のデータをまとめて連続的に転送する方法）に適合しているので、高速処理の効果が得られる。つまり、バースト転送を行うＳＤＲＡＭの場合、メモリにアドレスを送ると一定時間経過してからデータが連続的に返ってくるという動作が可能であり、連続したアドレスであれば、２つ目以降のデータは待ち時間なしに受け取れるので、高速処理を可能としている。そして本発明は、バースト転送に同期して演算を行えるように設計されていることから、データが一つ入力される毎にその場で演算を行いメモリの読み込みにかかる時間だけで演算が完了することから、高速処理が実現可能となる。
【図面の簡単な説明】
【０１４７】
【図１】ベイジアンネットワーク近似処理装置のシステム構成の一例を示すシステム構成図である。
【図２】ベイジアンネットワーク近似処理装置の処理の流れの一例を示すフローチャート図である。
【図３】ベイジアンネットワーク近似処理装置の処理の概念を示す概念図である。
【図４】ベイジアンネットワーク近似処理装置がハードウェアに組み込まれた場合の概念図である。
【図５】有効度基準データ、感度データ、入力レコード、経験レコードの一例を示す図である。
【図６】油温及び油量のフィールドの一例である。
【図７】経験レコードの一例である。
【図８】感度データの一例である。
【図９】有効度基準データの一例である。
【図１０】実施例２の場合の入力レコードである。
【図１１】実施例２に於いて経験レコード１１Ａの有効度を示す表である。
【図１２】実施例２に於いて経験レコード１１Ｂの有効度を示す表である。
【図１３】実施例２に於いて経験レコード１１Ｃの有効度を示す表である。
【図１４】実施例２に於いて経験レコード１１Ｄの有効度を示す表である。
【図１５】実施例２に於いて経験レコード１１Ｅの有効度を示す表である。
【図１６】実施例２に於いて有効度基準データ毎に分類した各経験レコードの出力値フィールド及びその平均値を示す表である。
【図１７】実施例３の場合の入力レコードである。
【図１８】実施例３に於いて経験レコード１１Ａの有効度を示す表である。
【図１９】実施例３に於いて経験レコード１１Ｂの有効度を示す表である。
【図２０】実施例３に於いて経験レコード１１Ｃの有効度を示す表である。
【図２１】実施例３に於いて経験レコード１１Ｄの有効度を示す表である。
【図２２】実施例３に於いて経験レコード１１Ｅの有効度を示す表である。
【図２３】実施例３に於いて有効度基準データ毎に分類した各経験レコードの出力値フィールド及びその平均値を示す表である。
【図２４】Ｓ１４０及びＳ１５０をＣ言語で表記した場合の例である。
【図２５】ベイジアンネットワーク近似処理装置の他のシステム構成の一例である。
【図２６】ベイジアンネットワーク近似処理装置をハードウェア化した場合の高速処理の概念を示す図である。
【符号の説明】
【０１４８】
１：ベイジアンネットワーク近似処理装置
２：感度データ入力受付手段
３：有効度基準データ入力受付手段
４：入力レコード入力受付手段
５：経験レコード入力受付手段
６：データ記憶手段
７：有効度演算手段
８：有効度分類手段
９：出力手段
１０：入力レコード
１１：経験レコード
１２：出力データ
【図１】
2005165624.tif 000007
【図２】
2005165624.tif 000008
【図３】
2005165624.tif 000009
【図４】
2005165624.tif 000010
【図５】
2005165624.tif 000011
【図６】
2005165624.tif 000012
【図７】
2005165624.tif 000013
【図８】
2005165624.tif 000014
【図９】
2005165624.tif 000015
【図１０】
2005165624.tif 000016
【図１１】
2005165624.tif 000017
【図１２】
2005165624.tif 000018
【図１３】
2005165624.tif 000019
【図１４】
2005165624.tif 000020
【図１５】
2005165624.tif 000021
【図１６】
2005165624.tif 000022
【図１７】
2005165624.tif 000023
【図１８】
2005165624.tif 000024
【図１９】
2005165624.tif 000025
【図２０】
2005165624.tif 000026
【図２１】
2005165624.tif 000027
【図２２】
2005165624.tif 000028
【図２３】
2005165624.tif 000029
【図２４】
2005165624.tif 000030
【図２５】
2005165624.tif 000031
【図２６】
2005165624.tif 000032