(57)【要約】【課題】予測性能が高く、かつ、ユーザが再現可能な予測ロジックを提示できる予測モデルを生成する。【解決手段】計算機システムは、予測モデルを生成するための学習データを格納するデータベースにアクセス可能であり、学習データは、入力データ及び教師データから構成され、計算機システムは、予測対象データの入力を受信した場合、予測対象データと類似する入力データから構成される学習データを抽出するための抽出基準を設定するための第１の学習処理を実行し、抽出基準に基づいて学習データを抽出し、データセットを生成し、データセットを用いて予測モデルを生成するための第２の学習処理を実行し、予測モデルの予測ロジックを示す決定論理を生成し、決定論理を提示するための提示情報を出力する。【選択図】図２
2020126510.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つの計算機を備える計算機システムであって、
対象に関する事象を予測するための予測モデルを生成するための学習データを格納する第１のデータベースにアクセス可能であり、
前記学習データは、前記対象の特性を表す項目の値である特徴量を複数含む入力データと、教師データとから構成され、
前記少なくとも一つの計算機は、
前記複数の特徴量を含む予測対象データの入力を受信した場合、前記予測対象データと類似する前記入力データから構成される前記学習データを抽出するための抽出基準を設定するための第１の学習処理を実行し、
前記抽出基準に基づいて前記第１のデータベースから前記学習データを抽出し、抽出された前記学習データを要素とするデータセットを生成し、
前記データセットを用いて前記予測モデルを生成するための第２の学習処理を実行し、
前記予測モデルから、前記予測モデルの予測ロジックを示す決定論理を生成し、
前記決定論理を提示するための第１の提示情報を出力することを特徴とする計算機システム。
【請求項２】
請求項１に記載の計算機システムであって、
前記少なくとも一つの計算機は、前記予測モデルを用いて前記予測対象データを処理することによって予測結果を算出し、
前記第１の提示情報は、前記予測結果を含むことを特徴とする計算機システム。
【請求項３】
請求項１に記載の計算機システムであって、
前記少なくとも一つの計算機は、
前記入力データが前記予測対象データであり、かつ、前記教師データが前記算出された予測結果である、新規学習データを前記第１のデータベースに格納することを特徴とする計算機システム。
【請求項４】
請求項１に記載の計算機システムであって、
前記決定論理は、決定木、ベイジアンネットワーク、線型モデル、ニューラルネットワークのいずれかを示す情報であることを特徴とする計算機システム。
【請求項５】
請求項１に記載の計算機システムであって、
前記少なくとも一つの計算機は、前記第１の学習処理の結果に関する情報及び前記データセットに関する情報の少なくともいずれかを提示するための第２の提示情報を出力することを特徴とする計算機システム。
【請求項６】
請求項１に記載の計算機システムであって、
前記決定論理を格納する第２のデータベースにアクセス可能であり、
前記少なくとも一つの計算機は、
前記第２のデータベースに格納される前記決定論理を解析することによって、統合可能な前記決定論理を特定し、
前記特定された決定論理を統合することによって統合決定論理を生成し、
前記統合決定論理を提示するための第３の提示情報を出力することを特徴とする計算機システム。
【請求項７】
請求項６に記載の計算機システムであって、
前記少なくとも一つの計算機は、前記統合決定論理を解析することによって、前記予測対象データを構成し、予測への影響が大きい前記項目を、影響項目として特定し、
前記第３の提示情報は、前記影響項目に関する情報を含むことを特徴とする計算機システム。
【請求項８】
請求項１から請求項６のいずれか一項に記載の計算機システムであって、
前記入力データ及び前記予測対象データは、介入行為に関する予測を行う前記予測モデルの生成に必要な複数の特徴量を含むデータであることを特徴とする計算機システム。
【請求項９】
計算機システムが実行する情報の提示方法であって、
前記計算機システムは、
少なくとも一つの計算機を有し、
対象に関する事象を予測するための予測モデルを生成するための学習データを格納する第１のデータベースにアクセス可能であり、
前記学習データは、前記対象の特性を示す項目の値である特徴量を複数含む入力データと、教師データとから構成され、
前記情報の提示方法は、
前記少なくとも一つの計算機が、前記複数の特徴量を含む予測対象データの入力を受信した場合、前記予測対象データと類似する前記入力データから構成される前記学習データを抽出するための抽出基準を設定するための第１の学習処理を実行するステップと、
前記少なくとも一つの計算機が、前記抽出基準に基づいて前記第１のデータベースから前記学習データを抽出し、抽出された前記学習データを要素とするデータセットを生成するステップと、
前記少なくとも一つの計算機が、前記データセットを用いて前記予測モデルを生成するための第２の学習処理を実行するステップと、
前記少なくとも一つの計算機が、前記予測モデルから、前記予測モデルの予測ロジックを示す決定論理を生成するステップと、
前記少なくとも一つの計算機が、前記決定論理を提示するための第１の提示情報を出力するステップと、を含むことを特徴とする情報の提示方法。
【請求項１０】
請求項９に記載の情報の提示方法であって、
前記少なくとも一つの計算機が、前記予測モデルを用いて前記予測対象データを処理することによって予測結果を算出するステップを含み、
前記第１の提示情報は、前記予測結果を含むことを特徴とする情報の提示方法。
【請求項１１】
請求項９に記載の情報の提示方法であって、
前記少なくとも一つの計算機が、前記入力データが前記予測対象データであり、かつ、前記教師データが前記算出された予測結果である、新規学習データを前記第１のデータベースに格納するステップを含むことを特徴とする情報の提示方法。
【請求項１２】
請求項９に記載の情報の提示方法であって、
前記決定論理は、決定木、ベイジアンネットワーク、線型モデル、ニューラルネットワークのいずれかを示す情報であることを特徴とする情報の提示方法。
【請求項１３】
請求項９に記載の情報の提示方法であって、
前記少なくとも一つの計算機が、前記第１の学習処理の結果に関する情報及び前記データセットに関する情報の少なくともいずれかを提示するための第２の提示情報を出力するステップを含むことを特徴とする情報の提示方法。
【請求項１４】
請求項９に記載の情報の提示方法であって、
前記計算機システムは、前記決定論理を格納する第２のデータベースにアクセス可能であり、
前記情報の提示方法は、
前記少なくとも一つの計算機が、前記第２のデータベースに格納される前記決定論理を解析することによって、統合可能な前記決定論理を特定するステップと、
前記少なくとも一つの計算機が、前記特定された決定論理を統合することによって統合決定論理を生成するステップと、
前記少なくとも一つの計算機が、前記統合決定論理を解析することによって、前記予測対象データを構成し、前記予測への影響が大きい前記項目を、影響項目として特定するステップと、
前記少なくとも一つの計算機が、前記統合決定論理及び前記影響項目に関する情報を提示するための第３の提示情報を出力するステップと、を含むことを特徴とする情報の提示方法。
【請求項１５】
請求項９から請求項１４のいずれか一項に記載の情報の提示方法であって、
前記入力データ及び前記予測対象データは、介入行為に関する予測を行う前記予測モデルの生成に必要な複数の特徴量を含むデータであることを特徴とする情報の提示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象の事象の予測を行うシステムに関する。
【背景技術】
【０００２】
近年、都市計画、医療、及び金融等の様々な分野で、対象の事象を予測するシステム、いわゆる、ＡＩ（Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ）が提供されている。例えば、医療分野では、ＡＩを活用して、患者（対象）の病気の発症率（事象）の予測、患者（対象）に対して推奨される介入行為又は医療行為等の診察（事象）の決定等が行われる。
【０００３】
前述のシステムでは、学習データを用いた機械学習によって生成された予測モデルに基づいて、対象の事象の予測が行われる。例えば、予測モデルを生成するための技術として例えば、特許文献１の記載の技術が知られている。
【０００４】
特許文献１には、「予測装置５４は、ＡＤＴｒｅｅからなる予測モデル１３８を記憶する予測モデル記憶装置を含む。予測モデル１３８は、症例データから抽出される特性の組のデータが与えられると、その患者に関連したＡｘＬＮ転移等の発生を予測するように予め学習がされている。装置はさらに、診断対象となる症例データから、特性の組のデータを抽出する特性抽出部１５２と、特性抽出部１５２により抽出された特性の組のデータを予測モデル１３８に与えて、診断対象となる症例データの患者におけるＡｘＬＮ転移等の発生を予測し、予測１５４として出力するモデル適用部１５６とを含む。」ことが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−２２７８３８号公報
【非特許文献】
【０００６】
【非特許文献１】Marco Tulio Ribeiro  他、「“Why Should I Trust You?”: Explaining the Predictions of Any Classifier」、KDD '16 Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining、２０１６年８月、Pages 1135-1144
【非特許文献２】Scott M Lundberg 他、「A Unified Approach to Interpreting Model Predictions」、Advances in Neural Information Processing Systems 30、２０１７年１２月、Pages 4765-4774
【非特許文献３】R. Krishnan, G. Sivakumar, P. Bhattacharya、「Extracting decision trees from trained neural networks」、Department of Computer Science and Engineering, Indian Institute of Technology, Powai, Mumbai 400 076, India
【非特許文献４】K.-L. Du、「Clustering: A neural network approach」、Neural Networks 23、２００９年８月２９日 、Pages 89-107
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＡＩの活用に伴って、ユーザへの予測結果の根拠の解釈及び説明の提示が求められている。しかし、近年の機械学習技術の高度化によって、生成される予測モデルは複雑な構造となっている。予測モデルのブラックボックス化によって、予測モデルにより出力される予測結果の根拠の解釈及び説明が困難となっている。
【０００８】
例えば、予測モデルにより出力した介入行為が推奨される根拠をユーザである医師に提示することができない。
【０００９】
本発明は、予測性能が高く、かつ、ユーザが再現可能な予測ロジックを提示できる予測モデルを生成する技術を提供する。
【課題を解決するための手段】
【００１０】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、少なくとも一つの計算機を備える計算機システムであって、対象に関する事象を予測するための予測モデルを生成するための学習データを格納する第１のデータベースにアクセス可能であり、前記学習データは、前記対象の特性を表す項目の値である特徴量を複数含む入力データと、教師データとから構成され、前記少なくとも一つの計算機は、前記複数の特徴量を含む予測対象データの入力を受信した場合、前記予測対象データと類似する前記入力データから構成される前記学習データを抽出するための抽出基準を設定するための第１の学習処理を実行し、前記抽出基準に基づいて前記第１のデータベースから前記学習データを抽出し、抽出された前記学習データを要素とするデータセットを生成し、前記データセットを用いて前記予測モデルを生成するための第２の学習処理を実行し、前記予測モデルから、前記予測モデルの予測ロジックを示す決定論理を生成し、前記決定論理を提示するための第１の提示情報を出力する。
【発明の効果】
【００１１】
本発明の一形態によれば、予測性能が高く、かつ、ユーザが再現可能な予測ロジックを提示できる予測モデルを生成できる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１２】
【図１】実施例１の計算機システムの構成の一例を示す図である。
【図２】実施例１の計算機システムの処理の流れを説明する図である。
【図３】実施例１の計算機が実行する処理を説明するフローチャートである。
【図４】実施例１の端末に表示される画面の一例を示す図である。
【図５】実施例１の予測モデルの予測性能の解析結果を示す図である。
【図６】実施例２の計算機システムの処理の流れを説明する図である。
【図７】実施例２の計算機が実行する処理を説明するフローチャートである。
【図８】実施例３の計算機システムの構成の一例を示す図である。
【図９】実施例３の予測モデル管理情報のデータ構造の一例を示す図である。
【図１０】実施例３の計算機システムの処理の流れを説明する図である。
【図１１】実施例３の計算機が実行する処理を説明するフローチャートである。
【図１２】実施例３の計算機が実行する処理を説明するフローチャートである。
【図１３Ａ】実施例３の決定論理の統合方法の一例を示す図である。
【図１３Ｂ】実施例３の決定論理の統合方法の一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施例を、図面を用いて説明する。ただし、本発明は以下に示す実施例の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。
【００１４】
以下に説明する発明の構成において、同一又は類似する構成又は機能には同一の符号を付し、重複する説明は省略する。
【００１５】
本明細書等における「第１」、「第２」、「第３」等の表記は、構成要素を識別するために付するものであり、必ずしも、数又は順序を限定するものではない。
【００１６】
図面等において示す各構成の位置、大きさ、形状、及び範囲等は、発明の理解を容易にするため、実際の位置、大きさ、形状、及び範囲等を表していない場合がある。したがって、本発明では、図面等に開示された位置、大きさ、形状、及び範囲等に限定されない。
【実施例１】
【００１７】
図１は、実施例１の計算機システムの構成の一例を示す図である。
【００１８】
計算機システムは、計算機１００及び端末１０１から構成される。計算機１００及び端末１０１は、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）及びＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク１０５を介して互いに接続される。ネットワーク１０５の接続方式は、有線及び無線のいずれでもよい。
【００１９】
端末１０１は、ユーザが操作する装置であり、図示しない、プロセッサ、メモリ、記憶装置、ネットワークインタフェース、入力装置、及び出力装置を有する。入力装置は、キーボード、マウス、及びタッチパネル等である。出力装置は、ディスプレイ及びプリンタ等である。
【００２０】
計算機１００は、対象の事象の予測を行う計算機である。例えば、計算機１００は、患者（対象）の病気の発症率（事象）の予測、患者（対象）に対する推奨される医療行為の決定等を行うための予測モデル２０２（図２参照）を生成する。また、計算機１００は、予測対象データ２００が入力された場合、予測モデル２０２を用いて予測結果を出力する。
【００２１】
本発明は、予測モデル２０２の種別に限定されない。予測モデル２０２は、ニューラルネットワーク、決定木、ベイジアンネットワーク、及び線型モデル等、様々な種別が考えられる。
【００２２】
計算機１００は、プロセッサ１１０、メモリ１１１、及びネットワークインタフェース１１２を有する。各ハードウェア構成は内部バスを介して互いに接続される。なお、計算機１００は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置を有してもよい。また、計算機１００は、入力装置及び出力装置を有してもよい。
【００２３】
プロセッサ１１０は、メモリ１１１に格納されるプログラムを実行する。プロセッサ１１０がプログラムにしたがって処理を実行することによって、特定の機能を実現する機能部（モジュール）として動作する。以下の説明では、機能部を主語に処理を説明する場合、プロセッサ１１０が当該機能部を実現するプログラムを実行していることを示す。
【００２４】
メモリ１１１は、プロセッサ１１０が実行するプログラム及び当該プログラムが使用する情報を格納する。また、メモリ１１１は、プログラムが一時的に使用するワークエリアを含む。
【００２５】
ネットワークインタフェース１１２は、ネットワークを介して、外部装置と通信するためのインタフェースである。
【００２６】
ここで、メモリ１１１に格納されるプログラム及び情報について説明する。メモリ１１１は、データセット生成部１２０、学習部１２１、及び予測器１２２を実現するプログラムを格納し、また、学習データ管理情報１３０を格納する。
【００２７】
学習データ管理情報１３０は、予測器１２２が使用する予測モデル２０２を生成するために用いる学習データを管理するための情報である。ここで、学習データは、入力データ及び教師データから構成される。学習データ管理情報１３０には、複数の学習データが格納される。入力データは、対象の状態等を表す項目の値（特徴量）を複数含む。例えば、項目は、患者の年齢、体重、及び検査結果等を表すものであり、特徴量は、３０歳、６０ｋｇ、及び陽性等の具体的な値である。教師データは、予測モデル２０２に基づく入力データの処理することによって出力される理想的な結果を表すデータである。
【００２８】
データセット生成部１２０は、予測モデル２０２を生成するときに用いる学習データのデータセット２０１（図２参照）を生成する。学習部１２１は、データセット生成部１２０が生成したデータセット２０１を用いて機械学習を実行し、予測モデル２０２を生成する。予測器１２２は、予測モデル２０２を用いて、予測対象データ２００に対する予測を行う。
【００２９】
なお、計算機１００が有する各機能部は、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。また、計算機１００が有する機能部を複数の計算機１００に分散するように配置してもよい。
【００３０】
図２は、実施例１の計算機システムの処理の流れを説明する図である。
【００３１】
計算機１００は、端末１０１から予測対象データ２００を含む予測要求を受信する。このとき、データセット生成部１２０は、予測対象データ２００及び学習データ管理情報１３０に基づいて、データセット２０１を生成する。本発明は、データセット２０１の生成方法に一つの特徴を有する。
【００３２】
学習部１２１は、データセット２０１を用いた学習処理を実行し、予測モデル２０２を生成する。学習処理では、例えば、以下のような処理が実行される。（処理１）学習部１２１は、初期の予測モデル２０２が設定された予測器１２２に学習データを構成する入力データを入力し、予測結果を取得する。（処理２）学習部１２１は、予測結果及び学習データを構成する教師データの誤差が小さくなるように予測モデル２０２を修正又は更新する。
【００３３】
予測器１２２は、生成された予測モデル２０２を用いて予測対象データ２００を処理することによって予測結果２０３を算出する。また、予測器１２２は、予測モデル２０２に基づいてユーザが再現可能な予測ロジックである決定論理２０４を生成する。予測器１２２は、予測結果２０３及び決定論理２０４を端末１０１に送信する。
【００３４】
図３は、実施例１の計算機１００が実行する処理を説明するフローチャートである。図４は、実施例１の端末１０１に表示される画面の一例を示す図である。図５は、実施例１の予測モデル２０２の予測性能の解析結果を示す図である。
【００３５】
計算機１００は、端末１０１から予測対象データ２００を含む予測要求を受信した場合（ステップＳ１０１）、データセットの生成に用いるデータ抽出基準を設定するための学習処理を実行する（ステップＳ１０２）。
【００３６】
実施例１では、データセット生成部１２０が、Ｋ近傍法又はニューラルネットワークを用いてデータ抽出基準を生成するための学習処理を実行する。
【００３７】
（Ｋ近傍法）例えば、データセット生成部１２０は、学習データに対してＫ近傍法を適用し、特徴量空間において、入力されたデータの近傍に存在する学習データを探索するための近傍点探索指標（例えば、データ間のユークリッド距離やマハラノビス距離等）を算出する。近傍点探索指標がデータ間距離の場合、例えば予測対象データ２００との距離がデータ抽出基準となる。
【００３８】
（ニューラルネットワーク）データセット生成部１２０は、各特徴量の抽出範囲を算出するために、学習データ及び例えば、非特許文献４のニューラルネットワークを用いた学習処理を実行し、クラスタリングを行う。この場合、各クラスタにそれぞれのデータが帰属する確率や各クラスタ中心との距離がデータ抽出基準となる。
【００３９】
次に、計算機１００は、データ抽出基準及び予測対象データ２００に基づいて、データセット２０１を生成する（ステップＳ１０３）。
【００４０】
具体的には、データセット生成部１２０は、データ抽出基準に基づいて、予測対象データ２００の近傍に存在する学習データを特定し、特定された学習データを要素とするデータセット２０１を生成する。
【００４１】
次に、計算機１００は、データセット２０１を用いて、予測モデル２０２を生成するための学習処理を実行する（ステップＳ１０４）。
【００４２】
具体的には、学習部１２１がデータセット２０１を用いて学習処理を実行する。学習部１２１は、生成された予測モデル２０２をワークエリアに格納する。なお、予測モデル２０２の学習方法は公知の技術であるため詳細な説明は省略する。
【００４３】
次に、計算機１００は、予測モデル２０２を用いて、予測対象データ２００に対する予測処理を実行する（ステップＳ１０５）。
【００４４】
具体的には、予測器１２２が、予測モデル２０２に基づいて、予測対象データ２００を処理することによって予測結果２０３を算出する。このとき、予測器１２２は、非特許文献１又は非特許文献２等の技術を用いて、予測結果２０３に対する予測対象データ２００の各特徴量の影響の大きさを表す影響度を算出してよい。
【００４５】
次に、計算機１００は決定論理２０４を生成する（ステップＳ１０６）。
【００４６】
具体的には、予測器１２２は、予測モデル２０２に基づいて決定論理２０４を生成する。例えば、以下のような決定論理２０４が生成される。
【００４７】
予測モデル２０２が決定木の場合、予測器１２２は、決定木を表すグラフ及びパラメタを決定論理２０４として生成する。予測モデル２０２がベイジアンネットワークの場合、予測器１２２は、ベイジアンネットワークを表すグラフ及びパラメタを決定論理２０４として生成する。予測モデル２０２が線型モデルの場合、予測器１２２は、線型モデルを表す数式及びパラメタを決定論理２０４として生成する。
【００４８】
予測モデル２０２がニューラルネットワークの場合、予測器１２２は、例えば、非特許文献３に記載の技術を用いて、ニューラルネットワークから決定木を抽出し、決定木を表すグラフ及びパラメタを決定論理２０４として生成する。なお、ニューラルネットワークを表すグラフ及びパラメタが決定論理２０４として生成されてもよい。
【００４９】
なお、前述の決定論理２０４は、一例であってこれに限定されない。例えば、項目を行及び列の成分とする行列が決定論理２０４として生成されてもよい。行列の各セルには関連度等の値が格納される。
【００５０】
次に、計算機１００、第１の提示情報を生成し（ステップＳ１０７）、端末１０１に送信する。具体的には、以下のような処理が実行される。
【００５１】
予測器１２２は、予測結果２０３及び決定論理２０４を提示するための第１の提示情報を生成する。なお、予測結果２０３及び決定論理２０４のいずれか一方のみを提示する提示情報が生成されてもよい。
【００５２】
予測器１２２は、入力データとして予測対象データ２００が設定され、かつ、教師データとして予測結果が設定された学習データを学習データ管理情報１３０に格納する。本実施例では、学習データ管理情報１３０が更新されるため、予測を行う度にステップＳ１０２の処理が実行される。
【００５３】
なお、データ抽出基準を生成するための学習処理を繰り返し実行する必要がない場合、処理は実行されなくてもよい。この場合、ステップＳ１０２の処理は省略され、前回の学習処理の結果を用いた処理が実行される。以上がステップＳ１０７の処理の説明である。
【００５４】
端末１０１は、第１の提示情報を受信した場合、図４に示すような出力画面４００を表示する。出力画面４００は、予測結果２０３を表示する予測結果表示欄４０１及び決定論理２０４を表示する決定論理表示欄４０２を含む。
【００５５】
なお、図４に示す出力画面４００は一例であってこれに限定されない。出力画面４００は、他の表示欄及び操作ボタンを含んでもよい。
【００５６】
実施例１において生成される予測モデル２０２には以下のような特徴がある。
【００５７】
（特徴１）データセット２０１に含まれる学習データは、特徴量空間において予測対象データ２００の近傍に存在するため、すなわち、予測対象データ２００と類似性が高いため、予測に影響を与える項目の数が限定される。したがって、生成される予測モデル２０２は、全ての学習データを用いて生成された予測モデル２０２より構造が単純となる。また、予測モデル２０２の生成に要する計算コストが低いという特徴も有する。
【００５８】
例えば、予測モデル２０２が決定木の場合、決定木を構成する特徴量の数及び特徴量間を接続するリンクの数が少なくなる。このような決定木は、ユーザが再現可能な予測ロジックとして提示することができる。
【００５９】
（特徴２）データセット２０１に含まれる学習データは、予測対象データ２００に類似し、かつ、任意の特徴量に特徴を有するデータである。したがって、データセット２０１に基づいて生成された予測モデル２０２を用いた場合、任意の特徴量の違いに基づいて精度の高い予測を実現できる。
【００６０】
ここで、図５を用いて実施例１の予測モデル２０２の予測性能について説明する。図５は、機械学習ライブラリのｓｃｉｋｉｔ-ｌｅａｒｎを用いて予測性能の検証結果を示す。
【００６１】
「ＧｒａｎｄｉｅｎｔＢｏｏｓｔｉｎｇＣｌａｓｓｉｆｉｅｒ」は、Ｇｒａｎｄｉｅｎｔ  Ｂｏｏｓｔｉｎｇに基づいて生成されたデータセットから生成された予測モデルの予測性能を表す。「ＤｙｎａｍｉｃＤｅｃｉｓｉｏｎＴｒｅｅＣｌａｓｓｉｆｉｅｒ」は、実施例１の予測モデル２０２の予測性能を表す。ＮＮ５０、ＮＮ２５、及びＮＮ１０はデータセット２０１に含める学習データの数（それぞれ、５０，２５，１０）を表す。「ＫＮｅｉｇｈｂｏｒｓＣｌａｓｓｉｆｉｅｒ」はＫ近傍法に基づいて生成されたデータセットから生成された予測モデルの予測性能を表す。「ＤｅｓｉｃｉｏｎＴｒｅｅＣｌａｓｓｉｆｉｅｒ」は、決定木に基づいて生成されたデータセットから生成された予測モデルの予測性能を表す。
【００６２】
図５に示すように、実施例１の予測モデル２０２の予測性能は十分高いことが分かった。
【００６３】
実施例１によれば、予測性能が高く、かつ、ユーザが再現可能な予測ロジックを提示できるような予測モデルを生成することができる。
【実施例２】
【００６４】
実施例２では、計算機１００が、端末１０１に、抽出基準に関する情報及びデータセット２０１に関する情報を提示する。以下、実施例１との差異を中心に実施例２について説明する。
【００６５】
実施例２の計算機システムの構成は実施例１と同一である。実施例２の計算機１００の構成は実施例１と同一である。実施例２では、計算機１００が実行する処理が一部異なる。
【００６６】
図６は、実施例２の計算機システムの処理の流れを説明する図である。
【００６７】
実施例２では、データセット生成部１２０は、データ抽出基準６００及びデータセット２０１に関する情報を端末１０１に送信する。その他の処理は実施例１と同一である。
【００６８】
図７は、実施例２の計算機１００が実行する処理を説明するフローチャートである。
【００６９】
実施例２では、ステップＳ１０３の処理が実行された後、計算機１００は、第２の提示情報を生成し（ステップＳ１５１）、端末１０１に送信する。
【００７０】
具体的には、データセット生成部１２０は、データ抽出基準６００に関する情報及びデータセット２０１に関する情報を提示するための第２の提示情報を生成し、端末１０１に送信する。データ抽出基準６００に関する情報には、データ抽出基準６００だけではなく、データの類否判定において影響（寄与）が大きい項目に関する情報等が含まれてもよい。例えば、予測器が出力する予測結果に対する項目の影響度を含めることができる。
【００７１】
実施例２によれば、データセット２０１に関する情報を提示することによって、ユーザは、予測結果及び決定論理２０４をより明確に解釈することが可能になる。
【００７２】
例えば、ユーザである医師は、類似の特性又は症状を有する患者を特定することができる。また、医師は、データセット２０１を参照することによって自ら決定論理を構築し、計算機１００が出力した決定論理２０４との一致点及び類似点を確認することができる。
【実施例３】
【００７３】
実施例３では、計算機１００が、過去に生成された決定論理２０４を統合する。以下、実施例１との差異を中心に実施例３について説明する。
【００７４】
図８は、実施例３の計算機システムの構成の一例を示す図である。
【００７５】
実施例３の計算機システムの構成は実施例１と同一である。実施例３の計算機１００及び端末１０１のハードウェア構成は実施例１と同一である。実施例３では、計算機１００の機能構成が異なる。
【００７６】
計算機１００のメモリ１１１は、統合部１２３を実現するプログラムを格納し、また、予測モデル管理情報１３１を格納する。
【００７７】
統合部１２３は、複数の決定論理２０４を統合することによって統合決定論理１０００（図１０参照）を生成する。予測モデル管理情報１３１は、予測モデル２０２及び決定論理２０４等を管理するための情報である。
【００７８】
図９は、実施例３の予測モデル管理情報１３１のデータ構造の一例を示す図である。
【００７９】
予測モデル管理情報１３１は、予測対象データ９０１、予測モデル９０２、予測性能９０３、予測結果９０４、及び決定論理９０５から構成されるエントリを含む。一つの予測モデル２０２に対して一つのエントリが存在する。
【００８０】
予測対象データ９０１は、予測対象データ２００を格納するフィールドである。予測モデル９０２は、予測モデル２０２を格納するフィールドである。予測性能９０３は、予測モデル２０２の予測性能を格納するフィールドである。予測結果９０４は、予測対象データ２００に対する予測結果を格納するフィールドである。決定論理９０５は、決定論理２０４を格納するフィールドである。
【００８１】
なお、計算機１００は、予測対象データ２００、予測性能等を検索キーとする検索要求に基づいて、予測モデル管理情報１３１に格納されるエントリを検索し、検索結果を提示する検索部を含んでもよい。
【００８２】
図１０は、実施例３の計算機システムの処理の流れを説明する図である。
【００８３】
実施例３では、予測器１２２は、予測モデル２０２、予測結果２０３、及び決定論理２０４を予測モデル管理情報１３１に格納する。
【００８４】
また、実施例３では、統合部１２３が、任意のタイミングで、予測モデル管理情報１３１を参照し、統合可能な決定論理２０４を特定する。統合部１２３は、特定された決定論理２０４を統合することによって、統合決定論理１０００を生成し、端末１０１に送信する。
【００８５】
図１１は、実施例３の計算機１００が実行する処理を説明するフローチャートである。
【００８６】
実施例３では、ステップＳ１０４において、学習部１２１が、生成された予測モデル２０２の予測性能を計測し、予測モデル２０２及び予測性能を対応づけて、ワークエリアに格納する。
【００８７】
また、ステップＳ１０６の処理が実行された後、計算機１００は、予測モデル管理情報１３１を更新する。
【００８８】
具体的には、予測器１２２は、予測モデル管理情報１３１にエントリを追加し、追加されたエントリの予測対象データ９０１に予測対象データ２００を格納し、予測結果９０４に予測結果２０３を格納する。予測器１２２は、追加されたエントリの予測モデル９０２に予測モデル２０２を格納し、予測性能９０３に予測モデル２０２の予測性能を格納する。また、予測器１２２は、追加されたエントリの決定論理９０５に決定論理２０４を格納する。
【００８９】
図１２は、実施例３の計算機１００が実行する処理を説明するフローチャートである。図１３Ａ及び図１３Ｂは、実施例３の決定論理２０４の統合方法の一例を示す図である。
【００９０】
計算機１００は、端末１０１から統合要求を受信した場合に、以下の処理を開始する。統合要求には、決定論理２０４を統合するための条件を規定した統合条件情報が含まれるものとする。なお、計算機１００は、予測対象データ２００に対する予測と並列して、図１２に示す処理を実行してもよい。
【００９１】
計算機１００は、予測モデル管理情報１３１を参照し、統合条件情報に基づいて統合する決定論理２０４を特定する（ステップＳ２０１）。
【００９２】
例えば、予測性能が８０％以上である予測モデル２０２の決定論理２０４を選択する統合条件情報が設定されている場合、統合部１２３は、予測性能９０３が８０％以上のエントリを検索する。
【００９３】
次に、計算機１００は、特定された決定論理２０４を統合することによって、統合決定論理１０００を生成する（ステップＳ２０２）。
【００９４】
例えば、図１３Ａに示すような決定論理（決定木）２０４−１及び決定論理（決定木）２０４−２が特定された場合、統合部１２３は、二つの決定論理２０４−１、２０４−２の和集合を統合決定論理１０００として生成する。図１３Ｂに示すような決定論理（行列）２０４−１及び決定論理（行列）２０４−２が特定された場合、統合部１２３は、重み付け平均の演算を実行することによって二つの決定論理（行列）２０４−１、２０４−２を統合し、統合決定論理１０００を生成する。
【００９５】
なお、生成される決定論理２０４の種別に応じて、様々な統合方法を採用することができる。例えば、和集合及び積集合のいずれかを生成することによって複数の決定論理２０４を統合する方法が考えられる。また、重み付け加算及び重みづけ平均のいずれかの演算を行って複数の決定論理２０４を統合する方法が考えられる。
【００９６】
次に、計算機１００は、統合決定論理１０００に基づいて、予測への影響が大きい項目を影響項目として特定する（ステップＳ２０３）。
【００９７】
例えば、統合決定論理１０００が決定木の場合、統合部１２３は、下層への分岐の数が多いノードに対応する項目を影響項目として特定する。統合決定論理１０００がニューラルネットワークの場合、統合部１２３は、入力層の重み係数が閾値より大きい項目を影響項目として特定する。統合決定論理１０００が線型モデルの場合、統合部１２３は、数式の係数が閾値より大きい項に対応する項目を影響項目として特定する。
【００９８】
次に、計算機１００は、統合決定論理１０００及び影響項目を提示するための第３の提示情報を生成し（ステップＳ２０４）、端末１０１に送信する。
【００９９】
実施例３によれば、複数の決定論理２０４を統合することによって、正確かつ複雑な予測ロジックを再現することができる。
【０１００】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【０１０１】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【０１０２】
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、Ｃ／Ｃ＋＋、ｐｅｒｌ、Ｓｈｅｌｌ、ＰＨＰ、Ｐｙｔｈｏｎ、Ｊａｖａ（登録商標）等の広範囲のプログラム又はスクリプト言語で実装できる。
【０１０３】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
【０１０４】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
【符号の説明】
【０１０５】
１００  計算機
１０１  端末
１０５  ネットワーク
１１０  プロセッサ
１１１  メモリ
１１２  ネットワークインタフェース
１２０  データセット生成部
１２１  学習部
１２２  予測器
１２３  統合部
１３０  学習データ管理情報
１３１  予測モデル管理情報
２００  予測対象データ
２０１  データセット
２０２  予測モデル
２０３  予測結果
２０４  決定論理
４００  出力画面
６００  データ抽出基準
１０００  統合決定論理
【図１】
2020126510.tif 000003
【図２】
2020126510.tif 000004
【図３】
2020126510.tif 000005
【図４】
2020126510.tif 000006
【図５】
2020126510.tif 000007
【図６】
2020126510.tif 000008
【図７】
2020126510.tif 000009
【図８】
2020126510.tif 000010
【図９】
2020126510.tif 000011
【図１０】
2020126510.tif 000012
【図１１】
2020126510.tif 000013
【図１２】
2020126510.tif 000014
【図１３Ａ】
2020126510.tif 000015
【図１３Ｂ】
2020126510.tif 000016