(57)【要約】【課題】病歴あるいは健診の情報から疾患を推定し状況の変化を予測する等の推定処理を行うニューラルネットワークを用いたエキスパートシステムにおいて、推定結果と共に推定の確度を出力することが可能なニューラルネットワークシステムを提供する。【解決手段】入力層のノード数、中間層の数、中間層を構成するノードの数、各重み係数の初期値、学習の方法(ノード間の伝搬関数)等の構成要素が異なるニューラルネットワークを複数生成し、それらに同じ学習処理を行う。上記の複数のニューラルネットワークにより未知のパターンの推論を行い、推論のバラツキから判定結果の確実さを数値で出力する【選択図】  図２
2012018450.tif 000002
【特許請求の範囲】
【請求項１】
内部構成が異なるＮ個(Ｎは２以上)のニューラルネットワークと、
前記Ｎ個のニューラルネットワークに同一の学習を行う学習手段と、
学習が終了した前記Ｎ個のニューラルネットワークに判定すべきデータを入力する判定データ入力手段と、
前記判定すべきデータに対する前記Ｎ個のニューラルネットワークの判定結果から特定の判定の割合を算出する確度算出手段と、
前記確度算出手段が算出した値を前記特定の判定の確度として出力する出力手段とからなることを特徴とするニューラルネットワークシステム。
【請求項２】
請求項１記載のニューラルネットワークシステムであって、
前記複数のニューラルネットワークの各々は入力層と中間層と出力層を有し、
前記学習はフィードバック伝搬関数とリンクの荷重により決定されるものであり、
前記入力層のノード数、前記中間層ノード数、前記フィードバック伝搬関数、前記リンクの荷重の選択方法の少なくとも１つが異なることにより内部構成が異なっていることを特徴とするニューラルネットワークシステム。
【請求項３】
請求項１または請求項２記載のニューラルネットワークシステムであって、
内部構成が異なるＭ個(ＭはＮより大)のニューラルネットワークを生成するニューラルネットワーク生成手段を有し、
前記学習手段は前記Ｍ個のニューラルネットワークに同一の学習を行うものであり、
学習が終了した前記Ｍ個のニューラルネットワークから推定精度が高いＮ個のニューラルネットワークを選択する選択手段を有することを特徴とするニューラルネットワークシステム。
【請求項４】
内部構成が異なるＭ個(ＭはＮより大)のニューラルネットワークを生成するニューラルネットワーク生成ステップと、
前記Ｍ個のニューラルネットワークに同一の学習を行う学習ステップと、
学習が終了した前記Ｍ個のニューラルネットワークから推定精度が高いＮ個のニューラルネットワークを選択する選択ステップと、
前記Ｎ個のニューラルネットワークに判定すべきデータを入力する判定データ入力ステップと、
前記判定すべきデータに対する前記Ｎ個のニューラルネットワークの判定結果から特定の判定の割合を算出する確度算出ステップと、
前記確度算出ステップが算出した値を前記特定の判定の確度として出力する出力ステップとからなることを特徴とするニューラルネットワークの制御方法。
【請求項５】
内部構成が異なるＭ個(ＭはＮより大)のニューラルネットワークを生成するニューラルネットワーク生成ステップと、
前記Ｍ個のニューラルネットワークに同一の学習を行う学習ステップと、
学習が終了した前記Ｍ個のニューラルネットワークから推定精度が高いＮ個のニューラルネットワークを選択する選択ステップと、
前記Ｎ個のニューラルネットワークに判定すべきデータを入力する判定データ入力ステップと、
前記判定すべきデータに対する前記Ｎ個のニューラルネットワークの判定結果から特定の判定の割合を算出する確度算出ステップと、
前記確度算出ステップが算出した値を前記特定の判定の確度として出力する出力ステップをコンピュータに実行させることを特徴とするニューラルネットワークの制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のニューラルネットワークからなるニューラルネットワークシステムに関するものであり、例えば病歴情報、健診情報から疾患を推定し状況の変化を予測するニューラルネットワークを用いたニューラルネットワークシステムに関するものであり、ニューラルネットワークシステムとその構築方法及び制御プログラムを提供するものである。
【背景技術】
【０００２】
人の疾患やプラントの故障等の対応において、外に現れた現象から原因を推定し、今後の推移を予測する手段としてニューラルネットワークの技術が利用されている。ニューラルネットワークは複数のニューロン回路により構成される。ニューロン回路は図７(ａ)に例示されるように、多入力（Ｘ1，Ｘ2，・・・・・、Ｘk）と１出力（ｙ）の回路である。多入力(Ｘ1、Ｘ2、・・・・・、Ｘk)の各々には重み係数１１３（Ｗ1，Ｗ2，・Ｗk）が対応づけられており、重み演算部１１２により、入力(Ｘi)と重み係数（Ｗi)の積が求められる。各演算部１１２の演算結果は加算回路１１４により加算され、シグモイド関数、ヘビサイド関数等の閾値手段１１５により正規化され、出力１１７（ｙ）となる。
図７(ｂ)はニューラルネットワークの一例であり、図７(ａ)に示されるニューロン回路を複数組み合わせて構成されている。ニューラルネットワークは、診断データ等の測定データの組［Ｘ1、Ｘ2、・・・・・、Ｘp］１５１が入力される入力層１５２と、疾患名等に対応する1つ以上の出力１５５を出力する出力層１５４と、入力層１５２と出力層１５４の間に位置する少なくとも１つの中間層１５３から構成されている。
【０００３】
入力層１５２のｉ番目のノード(ｉ)は入力(Ｘi)を中間層１５３のノードに分配する。中間層１５３と出力層１５４を構成するノードは図７(ａ)に示されるニューロン回路であり、前段のノードからの信号を前述の動作に従って処理し後段のノードに伝達、あるいは出力端子から出力する。
ニューラルネットワークで診断を行うには、例えば各症状あるいは健診の項目（発熱、咳、頭痛、血圧等）について、それらの項目に対応したデータ列を入力パターン［Ｘ1、Ｘ2、・・・・・、Ｘp］として、入力層１５２に入力する。また、出力層１５４の各ノードには推定すべき原因（病名等）を割り当てる。例えば出力１には「風邪」、出力２には「食中毒」、等を割り当てる。この場合、「風邪」の症状を表す入力パターンを入力部１５１から入力した時、「風邪」が割り当てられている第１のノードのみから「１」を出力し、他の原因(病名)が割り当てられているノードからは「０」を出力するように、ニューラルネットワークを学習する。
【０００４】
図８はニューラルネットワークの学習の概要を示す図である。同図では出力層のノードは１つのみであり、例えば、入力パターンが「風邪」と認識した時はＹＥＳを意味する「１」を、「風邪」と認識しなかった時はＮＯを意味する「０」を出力するように学習する。「風邪」と認識さる症状等のパターンと、「風邪」と認識させない症状等のパターンを学習パターン１６１として多数用意する。また、各学習パターンに正解の出力、即ち「風邪」又は「風邪ではない」を表す出力「ＡZ（「１」又は「０」）」を正解データ１６２として付加する。学習を開始する前のニューロン回路の各重み係数は所定の初期値、あるいはランダムな値に設定される。学習パターン１６１の因子［Ａ1］をニューラルネットワークの入力部Ｘ1に、因子［Ａ2］を入力部Ｘ2と、１つの学習パターン１６１を構成する各因子をニューラルネットワークの対応する入力部に入力する。入力された学習パターン１６１の各要素は中間層１５２と出力層１５４のニューロン回路により順次演算され、出力端１５５に出力信号［Ｚ］を出力する。
【０００５】
比較回路１６３は出力端１５５に出力された［Ｚ］と学習パターン１６１に付加されている正解データ［ＡZ］を比較する。重み変更手段１６４は出力［Ｚ］と正解データ［ＡZ］が一致するように、予め定められた方法に従って各ニューロン回路の重み係数の値を変更する。準備した各学習パターンに対して上記の学習動作を行い、全ての学習パターンに対して正しい値を出力する重み係数を決定して学習を終了する。学習が終了したニューラルネットワークに未知の症状のパターンが入力されると、当該症状のパターンの各因子の値を各ニューロン回路の重み係数に従って演算し、「風邪」に該当するか否かを「ＹＥＳ」または「ＮＯ」の２値データとして出力層１５４から出力する。ニューラルネットワークとその学習に関する公知文献には以下のものが存在する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−３１９３０１号公報
【特許文献２】特開２００５−２９３２４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
図７及び図８に示される従来のニューラルネットワーク、あるいは前記の先行技術文献等に記載されるニューラルネットワークは、入力された測定値等の入力パターンが特定の事象に該当するか否かを示すデータを出力するものである。例えば、入力された健診データから数年後に糖尿病を発症するか否かを予測するように学習されたるニューラルネットワークは、判定対象の健診データに対して「糖尿病になる」「糖尿病にならない」の予測結果を出力する。
しかし、特定の疾患が発症する危険度は連続的に変化すると考えられる。また、疾患の予防策を作成する場合、現状のままでは発症する危険性は非常に大きいのか、あるいは危険性は小さいのか等、危険性の度合いを考慮して作成される。しかし、前述したようにニューラルネットワークは「発症する」「発症しない」の２値を出力するのみであり、診断あるいは対策の作成には限定的な意義を持つのみであった。
本発明は、例えば糖尿病の発症を予測する場合、「糖尿病になる可能性は７０パーセント」「糖尿病になる可能性は３０パーセント」等、発症の可能性を数値により提示することが可能なニューラルネットワークを提供するものである。
【課題を解決するための手段】
【０００８】
ニューラルネットワークの構成は、入力層のノード数、中間層の数、中間層を構成するノードの数、各重み係数の初期値、学習の方法(ノード間の伝搬関数)等の要素により決まり、構成要素の差異により多様な構成のニューラルネットワークを生成することが可能である。構成要素が異なるニューラルネットワークであっても、それらに同一の学習を行うことにより、多くの場合、未知のパターンに対して同一の判定結果を出力するニューラルネットワークとすることが可能である。しかし、未知のパターンが「ＹＥＳ」と判定されるパターン領域と「ＮＯ」と判定されるパターン領域の境界近傍に位置すると、構成要素の異なるニューラルネットワークが異なる判定結果を出力する場合がある。本発明はニューラルネットワークの上記特性を利用することにより、判定結果の確実さを数値で出力することを可能とするものである。
【発明の効果】
【０００９】
本発明は、同一の学習パターンにより学習した構成要素が異なる複数のニューラルネットワークを用意し、この複数のニューラルネットワークに判定すべきパターンを認識させ、判定結果の「ＹＥＳ」と「ＮＯ」の割合により判定結果の確実さを数値で出力する構成である。本発明を１つの疾患の判定に用いた場合、「当該疾患の可能性は７０パーセント」等の出力が可能となる。また、出力層のノードを複数とし、各ノードに異なる疾患を対応づけて学習させた場合、各疾患の可能性を数値化し、可能性の高い順に整列して出力する等の構成が可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明に係るニューラルネットワークシステムを構成するニューラルネットワークの一実施態様を示す図
【図２】本発明に係るニューラルネットワークシステムの一実施態様の動作フローを示す図
【図３】図２における学習部の詳細を示す図
【図４】図２における検証部の詳細を示す図
【図５】図２における認識部の詳細を示す図
【図６】本発明に係るニューラルネットワークシステムのネットワーク構成図
【図７】ニューラルネットワークとニューロンの回路図
【図８】ニューラルネットワークの学習の概念を示す図
【発明を実施するための形態】
【００１１】
図１は本発明に係るニューラルネットワークシステムを構成するニューラルネットワークの概要を示す図である。本発明に係るニューラルネットワークの中間層は１層に限られるものではないが、説明の簡素化のため以下では１層で説明する。図１に示されるニューラルネットワークは、１つの入力層１５２と、１つの中間層１５３と、１つの出力層１５４からなっている。ｐ個の因子からなるパターン［Ｘ1、Ｘ2、・・、Ｘi、・・、Ｘp］の各項が入力端１５１から入力層の各ノードに入力される。入力層１５２の各ノードは入力データを中間層１５３の各ノードに分配する。入力層１５２の各ノードと中間層１５３の各ノード)を結ぶ情報伝達路には重み演算部が存在する。例えば、入力層１５２のノード(ｉ)と中間層１５３のノード(ｊ)の間には重み演算部（Ｗij)が設けられており、入力層１５２のノード(ｉ)からのデータ「Ｘi」に重み演算部（Ｗij)が有する重み係数「Ｗij」を乗じてノード(ｊ)に伝達する。
【００１２】
中力層１５３のノード(ｊ)は重み演算部（Ｗ1j)、・・、（Ｗpj)から伝達された情報を加算し、所定の方法に従って正規化した後、出力層１５４のノード(ｚ)に伝達する。中力層１５３のノード(ｊ)と出力層１５４のノード(ｚ)を結ぶ情報伝達路には重み演算部（Ｗjz)が設けられており、中力層１５３のノード(ｊ)からのデータに重み演算部（Ｗjz)が有する重み係数「Ｗjz」を乗じて出力層１５４のノード(ｚ)に伝達する。ノード(ｚ)は、重み演算部（Ｗ1z)、・・、（Ｗmz)から伝達された情報を加算し、所定の方法に従って正規化した後、認識結果「Ｚ」として出力する。
学習段階では、認識結果「Ｚ」はフィードバック手段１６２に入力されて図８に示される正解「ＡZ」と比較され、各重み演算部が有する重み係数の修正に利用される。
【００１３】
ニューラルネットワークは、入力パターンのｐ個の因子［Ｘ1、Ｘ2、・・、Ｘi、・・、Ｘp］を変数、出力［Ｚ］を計算値とする関数で表される。また、ニューラルネットワークの学習はｐ個の変数［Ｘ1、Ｘ2、・・、Ｘi、・・、Ｘp］から所期の値［Ｚ］を出力する関数のパラメータ(定数)を選定する処理と言える。従って、コンピュータプログラムによりニューラルネットワークの機能を実現することにより、異なる形態のニューラルネットワークを任意の数生成することが可能であり、また、それらを用いた推定処理を並列的に実行することも可能である。
【００１４】
図１のニューラルネットワークの形態制御手段１７０はニューラルネットワークのノード数、学習のためのフィードバックの方法を選択する制御部であり、以下の機能を有している。
１．入力層１５２のノード数の選択
２．中間層１５３のノード数の選択
３．フィードバックの方法(伝搬関数)の選択
４．リンク荷重の選択
【００１５】
［入力層１５２のノード数の選択］
入力パターンを構成する複数(図１ではＸ1〜Ｘpのｐ個)の因子には、推定に必須の因子と、利用する利用しないを任意に選択可能な因子が存在する。形態制御手段１７０は選択可能な因子を利用するか利用しないかを決定し、必須の因子と選択した因子に対応する入力ノードで入力層１５２を決定する。当該機能により、入力層１５２のノード数と使用する因子が異なる複数の形態のニューラルネットワークを生成することが可能となる。
【００１６】
［中間層１５３のノード数の選択］
ニューラルネットワークの中間層の数と各中間層に属するノード数は任意に選択することが可能である。本実施態様では各中間層に属するノード数を０〜２５の間でランダムに選択する構成となっている。ノード数が決定されると、中間層１５３の各ノード(ｊ)と入力層１５２の各ノード(ｉ)の間に信号路と重み演算部(Ｗij)を設定する。また、重み演算部(Ｗij)の重み係数(Ｗij)の初期値を設定する。
中間層１５３の各ノード(ｊ)と出力層１５４のノード(ｚ)の間に信号路と重み演算部(Ｗjz)を設定すると共に、当該重み演算部の重み係数（Ｗjz)の初期値を設定する。重み係数（Ｗij)と（Ｗjz)の初期値はランダムに設定される。中間層のノード数と重み係数の初期値はランダムに設定されるため、構成が異なる多数のニューラルネットワークを容易に生成することが可能である。
【００１７】
［フィードバック方法(伝搬関数)の選択］
ニューラルネットワークのフィードバックの形態、即ち、学習方法には、線形関数、動径関数等、多くの方法が知られている。本実施例では、線形関数、動径関数、一般回帰、誤差逆伝播によるフィードバック処理手段（プログラム）を設け、ニューラルネットワークを生成する際、上記フィードバック処理手段から一つの処理手段をランダムに選択し、フィードバック手段１６２を構成する。
【００１８】
［リンク荷重の選択］
リンク荷重の決定とは上記の伝播関数のパラメータを決定することであり、その決定方法には多くの数学的手法がある。本実施例では、バックプロパゲーション(誤差逆伝搬法)、共役勾配降下法、K-meansアルゴリズム(中心の割り当て)、最近隣法、擬似逆行行列(線形最小２乗最適化)からランダムに選択した方法に基づいて、上記伝播関数のパラメータを決定する構成となっている。
【００１９】
構成が異なるニューラルネットワークであっても、それらを同一の学習パターンを用いて学習することにより、同じ推定動作を行うニューラルネットワークとすることが可能である。同じ学習が行われた異なる構成のニューラルネットワークに、「ＹＥＳ」または「ＮＯ」と推定される典型的なパターンと類似度が高い未知のパターンを入力すると、多くのニューラルネットワークは同じ推定結果を出力する。
しかし、未知のパターンが上記の典型的なパターンの何れとも大きく異なっている、即ち、未知のパターンが「ＹＥＳ」または「ＮＯ」と推定されるパターンの領域の境界近傍に位置すると、ニューラルネットワークが異なる推定結果を出力する場合がある。全ての推定結果に対する「ＹＥＳ」の割合(または「ＮＯ」の割合)は推定結果の確からしさを表している。例えば、糖尿病の発症を予測するように学習された複数のニューラルネットワークの７０パーセントが「糖尿病になる」と予測し、３０パーセントが「糖尿病にならない」と予測した場合、「糖尿病になる可能性は７０パーセント」となる。
本発明は、構成が異なる複数のニューラルネットワークを用意して同一の学習を行い、学習が完了した複数のニューラルネットワークにより未知のデータの推定を行う。推定結果の「ＹＥＳ」または「ＮＯ」の割合から、推定結果の確からしさを数値化して出力するものである。
【実施例】
【００２０】
図２は本発明に係るニューラルネットワークシステムの構築過程と推定過程の一例を示す図である。本実施態様は構成が異なるニューラルネットワークをＭ個(例えば、十数万個)生成して同一の学習パターンにより同一の学習を行う。学習が終了したＭ個のニューラルネットワークに複数の検証パターンの判定を行わせて各ニューラルネットワークの正解率を求め、推定の精度が高いニューラルネットワークをＮ個(例えば、百個)選択する構成となっている。
【００２１】
図２のニューラルネットワーク生成部４０１は、入力層のノード数、中間層のノード数、フィードバックの方法(伝搬関数)、リンク荷重の選択方法の全部、あるいは一部をランダムに変更して構成が異なるニューラルネットワークをＭ個生成する。生成された各ニューラルネットワークを規定するデータはデータブロックとし、ニューラルネットワーク記憶部４０２に記憶される。
学習パターン記憶部４０３にはニューラルネットワークの学習に使用する学習パターンとその正解データの対が複数、例えば２００対記憶されている。６年後のメタボリックシンドロームの発症を予測する場合、健康診断において収集された２００人の受診者の、年齢、性別、Body mass index、収縮期血圧(SBP)、拡張期血圧(DBP)、血中グルコース、中性脂肪、HDLコレステロール、LDLコレステロール、AST値、ALT値、HMW-adiponectin、total adiponectin、glycated albumin、総コレステロール、遊離脂肪酸、インシュリン、HOMA-IR、喫煙の有無等に関するデータと、各受診者が６年後の健康診断においてメタボリックシンドロームと診断されたか否かを示すデータが対にして記憶される。
【００２２】
学習部４０４は学習パターン記憶部４０３に記憶された学習パターンと正解データの対を用いて、ニューラルネットワーク記憶部４０２に記憶されているＭ個のニューラルネットワークの学習を行う。学習が完了したニューラルネットワークは学習済みニューラルネットワーク記憶部４０５に記憶される。
図３はニューラルネットワークをＭ個生成する処理４２１の後に実行される、学習パターンによりＭ個のニューラルネットワークを学習する処理の概念図である。ステップ４２１で、構成が異なるニューラルネットワークをＭ個(４３２−１〜４３２−Ｍ)生成し、ニューラルネットワーク記憶部４０２に記憶する。また、同記憶部４０２にはニューラルネットワーク４３２−１ないし４３２−Ｍ対応に、フィードバックの方法とリンク荷重の選択方法に関する情報が記憶される。
ステップ４２２で、学習部４０４はニューラルネットワーク記憶部４０２に記憶されているニューラルネットワーク４３２−１ないし４３２−Ｍの学習を行う。
学習パターン記憶部４０３から読み出された学習パターン４３０はニューラルネットワーク４３２−１ないし４３２−Ｍに入力される。学習パターン４３０から各ニューラルネットワークが推定した出力は、比較部４３３−１ないし４３３−Ｍにより、同じく学習パターン記憶部４０３から読み出された正解４３１と比較される。比較結果はフィードバック４３４−１ないし４３４−Ｍを介して各ニューラルネットワークに帰還され、重み係数の修正に使用される。重み係数の修正はニューラルネットワーク４３２−１ないし４３２−Ｍ対応にニューラルネットワーク記憶部４０２に記憶されているフィードバックの方法とリンク荷重の選択方法に関する情報に基づいて行われる。
上記動作はニューラルネットワーク４３２−１ないし４３２−Ｍの全ての学習が全て終了するまで繰り返される。学習が終了したニューラルネットワーク４３２−１ないし４３２−Ｍのデータは学習済みニューラルネットワーク記憶部４０５に記憶される。
【００２３】
図２の検証パターン記憶部４０６には、検証パターンと正解データの対が記憶されている。検証パターンは学習パターンと同じ因子から構成されており、例えば、健康診断等で収集されたデータの一部を学習パターンとし、残りを検証パターンとすることにより作成可能である。検証部４０７は、学習済みニューラルネットワーク記憶部４０５に記憶されているニューラルネットワークの各々に検証パターンを入力し、その出力を正解データと比較し正解率を検証結果記憶部４０７に記憶する。
選択部４０８は検証結果記憶部４０７に記憶されているＭ個のニューラルネットワークの正解率を読み出し、正解率の高いＮ個を選択して選択ニューラルネットワーク記憶部４０９に記憶する。
【００２４】
図４は検証部４０７が実行する各ニューラルネットワークの正解率を求める処理の概念図である。
ステップ４４１で、検証部４０７は検証パターン記憶部４０６から検証パターン４５０を読み出し、学習済みニューラルネットワーク記憶部４０５に記憶されているニューラルネットワーク４３２−１ないし４３２−Ｍに入力する。各ニューラルネットワークの出力は、比較部４５３−１ないし４５３−Ｍにより、検証パターン記憶部４０５から読み出された正解４５１と比較される。比較結果は正解／不正解のデータとして正解率管理手段４５４−１ないし４５４−Ｍに記憶される。全ての検証パターンの検証が終了すると、正解率管理手段４５４−１ないし４５４−Ｍは記憶された正解／不正解のデータから正解率を計算して記憶し、ステップ４４１を終了する。
ステップ４４２で、図２の選択部４０８は正解率管理手段４５４−１ないし４５４−Ｍに記憶されている正解率を検証し、正解率が高いニューラルネットワークをＮ個、例えば１００個選択し選択ニューラルネットワーク記憶部４０９に記憶する。当該処理が終了することにより、本発明に係るニューラルネットワークの生成は終了する。
【００２５】
図２の認識部４１２は、コンピュータのキーボート、あるいはデータ記憶装置等の外部装置から読み取られた判定すべきデータ４１０を、判定パターン入力部４１１を介して受信し、選択ニューラルネットワーク記憶部４０６に記憶されているＮ個のニューラルネットワークに入力する。確度算出部４１３はＮ個のニューラルネットワークが出力したＮ個の判定結果を受け取り、判定結果が「ＹＥＳ」(または「ＮＯ」)の割合を算出して出力する。
図５は認識部４１２と確度算出部４１３が実行する判定パターンに対する認識の確度を求める処理の概念図である。
ステップ４６１で、認識部４１２は判定パターン入力部４１１を介して受信した判定パターン４７０を選択ニューラルネットワーク記憶部４０９に記憶されているニューラルネットワーク４７１−１ないし４７１−Ｎの各々に入力し、各判定結果を確度算出部４１３に送信する。
ステップ４６２で、確度算出部４１３は「ＹＥＳ」(または「ＮＯ」)の判定結果の割合を当該判定の確度４７３として出力する。
【００２６】
本発明は内部の構成は異なるが、同一の学習パターンにより学習された複数のニューラルネットワークにより未知のパターンの原因等を推定し、推定結果と共にその推定の確からしさを数値化して出力することを可能とするものである。
図１ないし図５に示される実施態様は、出力層のノードは1つであり、1つの事象、例えば「糖尿病になる／ならない」を推定する構成である。しかし、図７(ｂ)に示されるように、出力層のノードを複数とし、各ノードに異なる事象を割り当てる構成も可能である。例えば、出力層のノード１には疾患Ａ、ノード２には疾患Ｂ・・・・を割り当てることにより、１つの判定パターンから、疾患Ａの可能性はＸパーセント、疾患Ｂの可能性はＹパーセント・・・等、複数の推定結果を同時に得ることが可能となる。
【００２７】
本発明に係るニューラルネットワークシステムは１つの独立したコンピュータシステムとして構成することも、ＬＡＮあるいはインターネットにより結合されたネットワーク構成とすることも可能である。図６は本発明に係るニューラルネットワークシステムを構成する装置をＬＡＮにより接続した例である。１台又は複数台のパーソナルコンピュータ３０１(図６には１台のみが図示されている)と、サーバ３１０と、検査装置３２０等他の装置がＬＡＮ３００により接続されている。
パーソナルコンピュータ３０１は、プログラムを実行する処理装置３０２と、処理装置３０２が実行するプログラムあるいはデータを記憶するローカルファイル装置３０３、キーボード、マウス、カードリーダ等の入力装置３０４、表示装置、プリンター等の出力装置３０５等を有している。
【００２８】
サーバ３１０は、指示されたプログラムを実行し且つネットワークに接続されている他の装置との間でデータの授受を行うサーバ処理部３１１、ニューラルネットワークを生成し学習に必要なプログラムとデータを格納するＡＮＮ生成用データファィル装置３１２、図２のニューラルネットワーク記憶部４０２、学習済みニューラルネットワーク記憶部４０５、選択ニューラルネットワーク記憶部４０９となるＡＮＮファィル装置３１３、学習パターン４３０及び検証パターン４５０を記憶するパターンファイル装置３１４、及び図示されていないコンソール用の入出力装置等からなっている。
サーバ処理部３１１が実行するプログラムには、図２に示されるニューラルネットワークの生成部４０１に対応するニューラルネットワークを表す関数を生成するプログラム、学習部４０４に対応する関数の学習処理を行うプログラム、検証部４０７および選択部４０８に対応する学習が終了した関数から正解率の高い関数を選別する選別プログラム、認識部４１２及び確度算出部４１３に対応する選別された関数を用いて推論を行う推論プログラム等のプログラムが存在する。また、ＬＡＮ３００には検査装置３２０等の装置が接続されており、パーソナルコンピュータ３０１から利用可能となっている。
【００２９】
ニューラルネットワークシステムを生成する時、パーソナルコンピュータ３０１の入力装置３０４、あるいはサーバ３１０のコンソールの入力装置から、サーバ処理部３１１にニューラルネットワークシステムの生成を指示する。指示にはニューラルネットワークシステムの性能に関する指示と共に、パターンファイル装置３１４に記憶されている学習パターンと検証パターンのファイルを指定する。
サーバ処理部３１１は入力装置からの指示に従い、ニューラルネットワークの生成、学習、検証、選択を実行し、ＡＮＮファィル装置３１３の選択ニューラルネットワーク記憶部４０９に選択されたニューラルネットワークを記憶する。
使用者がパーソナルコンピュータ３０１からニューラルネットワークシステムを利用する際、キーボートあるいは他の入力装置３０４を使用して判定するデータをサーバ３１０に送信する。サーバ処理部３１１の推論プログラムは、選択ニューラルネットワーク記憶部４０９に記憶されているニューラルネットワークを用いて判定データの判定処理(図２の４１２)を実行し、その結果をパーソナルコンピュータ３０１の出力装置から出力（図２の４１３）する。
【産業上の利用可能性】
【００３０】
本発明はニューラルネットワークを利用して医療の診断等に使用する推論システムに関するものであり、システムを内部構成が異なるが、同一の学習が行われた複数のニューラルネットワークにより構成するものである。
診断等においては診断の確度はどれくらいなのか、疾患に罹患する恐れはどの程度であるか等の情報は治療等の大きな判断要素となる。しかし、従来のニューラルネットワークから得られる予測は「罹患する」か「罹患しない」のいずれかであり、罹患する確率はどの程度なのか等、予測の確からしさを得ることはできなかった。
本発明は複数のニューラルネットワークを用いて予測を行い、予測のばらつきから予測の確度を求めるものである。利用者は「ＹＥＳ」か「ＮＯ」の予測みではなく、「ＹＥＳ」の予測の確度、或いは「ＹＥＳ」の状況が発生する確率を知ることが可能となる。
【００３１】
また、複数のニューラルネットワークを選択する構成として、入力層のノード数、中間層のノード数、フィードバックの方法(伝搬関数)、リンク荷重選択方法の異なるニューラルネットワークを多数作成して学習と検証を行ない、予測性能の高いニューラルネットワークを選別する構成とすることが可能である。当該構成を採用することにより、予測性能を高めると共に予測の確度の精度を高めることが可能となる。
【図１】
2012018450.tif 000003
【図２】
2012018450.tif 000004
【図３】
2012018450.tif 000005
【図４】
2012018450.tif 000006
【図５】
2012018450.tif 000007
【図６】
2012018450.tif 000008
【図７】
2012018450.tif 000009
【図８】
2012018450.tif 000010