(57)【特許請求の範囲】
【請求項１】
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから一つの前記ルールを除外したルール集合を第２のルール集合とし、前記開始状態及び前記第１のルール集合から前記終了状態が成り立つ確率を第１の推論結果とし、前記開始状態及び前記第２のルール集合から前記終了状態が成り立つ確率を第２の推論結果とするとき、
除外された前記ルール毎に、前記第１の推論結果と前記第２の推論結果との差異の大きさを示す指標である重要度を算出する算出手段と、
除外された前記ルール毎に、前記ルールと前記ルールの前記重要度とを関連付けて出力する出力手段と、
を備える推論システム。
【請求項２】
前記出力手段は、前記重要度の高い前記ルールを前記重要度の低い前記ルールよりも優先して出力する、
請求項１に記載の推論システム。
【請求項３】
前記出力手段は、前記ルールと前記ルールの前記重要度と、前記ルールに対して予め算出された重みの値と、を関連付けて出力する、
請求項１又は２に記載の推論システム。
【請求項４】
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから前記第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、前記開始状態及び前記第１のルール集合から前記終了状態が成り立つ確率を第１の推論結果とし、前記開始状態及び前記第２のルール集合から前記終了状態が成り立つ確率を第２の推論結果とするとき、
前記第３のルール集合に対して、前記第１の推論結果と前記第２の推論結果との差異の大きさを示す指標である重要度を算出する算出手段と、
除外された前記第３のルール集合毎に、前記第３のルール集合と前記第３のルール集合の前記重要度とを関連付けて出力する出力手段と、
を備える推論システム。
【請求項５】
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから前記第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、前記開始状態及び前記第１のルール集合から前記終了状態が成り立つ確率を推論した結果を第１の推論結果とし、前記開始状態及び前記第２のルール集合から前記終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、
前記第２のルール集合を構成するルールを、前記第２のルール集合を構成するルールの数量を限定しつつ、前記第１の推論結果と前記第２の推論結果との差異を小さくするように特定する特定手段と、
特定された前記第２のルール集合を出力する出力手段と、
を備える推論システム。
【請求項６】
前記特定手段は、前記差異を閾値以下にするという制約が満たされるように、かつ、前記第２のルール集合を構成するルールの数を少なくするように前記第２のルール集合を構成するルールを特定する、
請求項５に記載の推論システム。
【請求項７】
前記特定手段は、前記第２のルール集合を構成するルールの数量を閾値以下にするという制約が満たされるように、かつ、前記差異を小さくするように前記第２のルール集合を構成するルールを特定する、
請求項５に記載の推論システム。
【請求項８】
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから前記第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、前記開始状態及び前記第１のルール集合から前記終了状態が成り立つ確率を推論した結果を第１の推論結果とし、前記開始状態及び前記第２のルール集合から前記終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、
前記第３のルール集合を構成するルールを、前記第３のルール集合を構成するルールの数量を限定しつつ、前記第１の推論結果と前記第２の推論結果との差異を大きくするように特定する特定手段と、
特定された前記第３のルール集合を出力する出力手段と、
を備える推論システム。
【請求項９】
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
前記推論システムが、
第１のルール集合を構成するルールから一つの前記ルールを除外したルール集合を第２のルール集合とし、前記開始状態及び前記第１のルール集合から前記終了状態が成り立つ確率を第１の推論結果とし、前記開始状態及び前記第２のルール集合から前記終了状態が成り立つ確率を第２の推論結果とするとき、
除外された前記ルール毎に、前記第１の推論結果と前記第２の推論結果との差異の大きさを示す指標である重要度を算出し、
除外された前記ルール毎に、前記ルールと前記ルールの前記重要度とを関連付けて出力する
推論方法。
【請求項１０】
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムを実行するコンピュータにおいて、
第１のルール集合を構成するルールから一つの前記ルールを除外したルール集合を第２のルール集合とし、前記開始状態及び前記第１のルール集合から前記終了状態が成り立つ確率を第１の推論結果とし、前記開始状態及び前記第２のルール集合から前記終了状態が成り立つ確率を第２の推論結果とするとき、
除外された前記ルール毎に、前記第１の推論結果と前記第２の推論結果との差異の大きさを示す指標である重要度を算出する処理と、
除外された前記ルール毎に、前記ルールと前記ルールの前記重要度とを関連付けて出力する処理と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推論に関連する情報を出力する推論システム、推論方法、及び、プログラムに関する。
【背景技術】
【０００２】
所定の規則又は基準に基づいて、論理式（以下、「ルール」と呼ぶ）の集合から、推論を実行するシステムがある。このようなシステムは、推論システムと呼ばれている（例えば、非特許文献１を参照）。【０００３】
初期の推論システムは、その動作において論理式のみを判断基準として用いていた。しかし、近年では、論理式のような確定的な判断基準のみならず、確率的な判断基準を同時に用いた推論システムが利用可能となっている。【０００４】
このような確率的な推論システムは、ルール集合を基に、確率変数を定義し、確率的な論理推論を行う。そして、推論システムは、観測とクエリとを入力として、観測とルール集合との下でのクエリが成り立つ確率である事後確率を求める。【０００５】
このような推論手法として、例えば、Ｐｒｏｂａｂｉｌｉｓｔｉｃ  Ｓｏｆｔ  Ｌｏｇｉｃ（例えば、非特許文献２、以下、「ＰＳＬ」とする）及びＭａｒｋｏｖ  Ｌｏｇｉｃ  Ｎｅｔｗｏｒｋ（例えば、非特許文献３を参照、以下、「ＭＬＮ」とする）などがある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−００８２２１号公報
【非特許文献】
【０００７】
【非特許文献１】Lise Getoor and Ben Taskar, "Introduction to Statistical Relational Learning (Adaptive Computation and Machine Learning Series)", The MIT Press, August 31, 2007, pp.291-322, (Kristian Kersting and Luc De Raedt. "10 Bayesian logic programming: Theory and tool")
【非特許文献２】Angelika Kimmig, Stephen H. Bach, Matthias Broecheler, Bert Huang, and Lise Getoor, "A short introduction to probabilistic soft logic", NIPS Workshop on Probabilistic Programming: Foundations and Applications, edition: 2, Location: Lake Tahoe, Nevada, USA, December 07-08, 2012.
【非特許文献３】Matthew Richardson and Pedro Domingos, "Markov logic networks. Machine learning", Machine Learning, Volume 62, Issue 1, p.p. 107-136, February, 2006 (First Online, January 27, 2006), Publisher: Kluwer Academic Publishers.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
非特許文献１ないし３に記載の技術は、ルール集合、入力された観測、及び、入力されたクエリに基づいて、当該観測及びルール集合の下、当該クエリが成り立つ事後確率を算出する。以降、「観測及びルール集合の下での、クエリが成り立つ事後確率」を「推論結果」と呼ぶ。非特許文献１ないし３に記載の技術は、算出された推論結果そのものを出力することはできる。しかし、非特許文献１ないし３に記載の技術は、ルール集合及び観測から、どのように推論結果が算出されたのか、言い換えると、推論の過程又は根拠（理由）を出力しない。【０００９】
しかし、本発明の発明者は、推論システムが用いられる場面において、推論システムが、推論結果に限らず、推論結果に至る根拠又は推論の過程を提示することが望ましい場合があることを見いだした。【００１０】
例えば、推論システムのユーザが、実世界の問題を解決する場合において、自己の意思決定をサポートするために、推論システムを利用する場合を想定する。この場合、ユーザにとって、推論システムは、推論結果そのものだけを出力するよりも、推論結果に合わせて推論結果に至る根拠又は推論の過程を出力する方が好ましい。ユーザは、推論結果に加え、推論結果に至る根拠又は推論の過程を端的に確認することができると、より深い洞察に基づく意思決定が可能となるためである。例えば、ユーザは、推論結果に至る根拠の確認に基づいて、その推論結果がどの程度信頼できるものなのかを判断できるようになる。【００１１】
また、ユーザは、提示された推論根拠に基づいて、その時点における推論システムの様子が分かる。そして、ユーザは、推論システムの動作を把握して、推論システムが用いるルール及び／又は重みが適切であるか否かを考察し、考察の結果を基に推論システムを改善できる。例えば、ユーザは、予想外の推論結果を得た場合、推論の根拠となるルールを考察できる。この場合の考察の一例は、次のとおりである。
例１：想定していたルールの影響が小さい。
例２：当然あるだろうと思っていたルールがない。
例３：想定外のルールの影響が大きい。
ユーザは、上記のような考察を基に、例えば、「推論システムで用いるルールに必要なルールが足りているか」又は「（重みがある場合は）ルールの重みが適切か」などを検討できる。そして、ユーザは、そのような検討を基に、推論システムへのルールの追加及び削除、又は、重みの再設定などの要否を判断できる。
【００１２】
このように、推論システムのユーザは、観測からクエリに至る推論の過程、つまり、推論の根拠を知ることができると、結果に対する知見を増やすことができる。このことは、本発明の発明者により得られた知見である。【００１３】
しかし、推論システムに用いられている内部モデル及び動作プロセスは、多くの場合、膨大で、解釈性に乏しい。例えば、ＭＬＮの場合、観測とクエリとを含む連結なネットワークに現れるすべてのルールが、推論結果に影響する。さらに、各ルールは、推論結果の確率に対する寄与として、複雑な数式を介して関係している（例えば、非特許文献３を参照）。【００１４】
さらに、確率的な推論システムが用いるルールには、結果に対する影響が大きいルールから、ほとんど影響を与えないルールまで、多くのルールが含まれる。そのため、例えば、「推論に用いたルール集合」を抽出する場合、抽出されるルール集合は、冗長なルール集合となる。このように、非特許文献１ないし３は、結果に至る根拠を提示できないという問題点があった。【００１５】
すなわち、発明者は、一般的な推論システムに対して、次のような新規の課題を見いだした。【００１６】
（１）推論の根拠を可視化したい。【００１７】
（２）推論の根拠をユーザに提示したい。【００１８】
（３）推論の根拠をホワイトボックスにしたい。【００１９】
言い換えると、非特許文献１ないし３は、推論の根拠を、可視化したり、ユーザに提示したり、ホワイトボックスにしたりすることが開示されていない。【００２０】
本発明の目的は、上記問題点を解決し、推論の根拠を提示する推論システム、推論方法、及び、プログラムを提供することにある。
【課題を解決するための手段】
【００２１】
本発明の第一の形態における推論システムは、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、第１のルール集合を構成するルールから一つのルールを除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、除外されたルール毎に、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する算出手段と、除外されたルール毎に、ルールとルールの重要度とを関連付けて出力する出力手段と、を備える。【００２２】
本発明の第二の形態における推論システムは、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、第３のルール集合に対して、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する算出手段と、除外された第３のルール集合毎に、第３のルール集合と第３のルール集合の重要度とを関連付けて出力する出力手段と、を備える。【００２３】
本発明の第三の形態における推論システムは、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、第２のルール集合を構成するルールを、第２のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を小さくするように特定する特定手段と、特定された第２のルール集合を出力する出力手段と、を備える。
【００２４】
本発明の第四の形態における推論システムは、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、第３のルール集合を構成するルールを、第３のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を大きくように特定する特定手段と、特定された第３のルール集合を出力する出力手段と、を備える。【００２５】
本発明の第一の形態における推論方法は、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、推論システムが、第１のルール集合を構成するルールから一つのルールを除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、除外されたルール毎に、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出し、除外されたルール毎に、ルールとルールの重要度とを関連付けて出力する。【００２６】
本発明の第二の形態における推論方法は、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、推論システムが、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、第３のルール集合に対して、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出し、除外された第３のルール集合毎に、第３のルール集合と第３のルール集合の重要度とを関連付けて出力する。【００２７】
本発明の第三の形態における推論方法は、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、推論システムが、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、第２のルール集合を構成するルールを、第２のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を小さくするように特定し、特定された第２のルール集合を出力する。
【００２８】
本発明の第四の形態における推論方法は、推論システムが、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、第３のルール集合を構成するルールを、第３のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を大きくように特定し、特定された第３のルール集合を出力する。【００２９】
本発明の第一の形態におけるプログラムは、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、第１のルール集合を構成するルールから一つのルールを除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、除外されたルール毎に、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する処理と、除外されたルール毎に、ルールとルールの重要度とを関連付けて出力する処理と、をコンピュータに実行させる。
【００３０】
本発明の第二の形態におけるプログラムは、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、第３のルール集合に対して、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する処理と、除外された第３のルール集合毎に、第３のルール集合と第３のルール集合の重要度とを関連付けて出力する処理と、をコンピュータに実行させる。
【００３１】
本発明の第三の形態におけるプログラムは、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、第２のルール集合を構成するルールを、第２のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を小さくするように特定する処理と、特定された第２のルール集合を出力する処理と、をコンピュータに実行させる。
【００３２】
本発明の第四の形態におけるプログラムは、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、第３のルール集合を構成するルールを、第３のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を大きくするように特定する処理と、特定された第３のルール集合を出力する処理と、をコンピュータに実行させる。
【発明の効果】
【００３３】
本発明に基づけば、推論の根拠をユーザに提示する効果を奏することができる。
【図面の簡単な説明】
【００３４】
【図１】図１は、本発明における第１の実施形態に係る推論システムの構成の一例を示すブロック図である。
【図２】図２は、第３の実施形態に係る推論システムの構成の一例を示すブロック図である。
【図３】図３は、第３の実施形態に係る推論システムの動作の一例を示すフローチャートである。
【図４】図４は、第１の実施形態の動作の概要を説明するために用いるルール集合を示す図である。
【図５】図５は、図４のルール集合においてルールを除外したルール部分集合の一例を示す図である。
【図６】図６は、ルールと重要度とを関連付けた出力の一例を示す図である。
【図７】図７は、重みを関連付けた出力の一例を示す図である。
【図８】図８は、詳細な動作の説明に用いられるルール集合の一例を示す図である。
【図９】図９は、図８に示されているルール集合のグラフの一例を示す図である。
【図１０】図１０は、図９のルール集合において特定されたルール部分集合の一例を示す図である。
【図１１】図１１は、関連発明が出力するルール部分集合の一例を示す図である。
【図１２】図１２は、第１のデータ例のルール集合を示す図である。
【図１３】図１３は、第１のデータ例を基に特定されたルール部分集合を示す図である。
【図１４】図１４は、第２のデータ例のルール集合を示す図である。
【図１５】図１５は、第２のデータ例を基に特定されたルール部分集合を示す図である。
【図１６】図１６は、第３のデータ例のルール集合を示す図である。
【図１７】図１７は、第３のデータ例を基に特定されたルール部分集合を示す図である。
【図１８】図１８は、第４のデータ例のルール集合を示す図である。
【図１９】図１９は、第４のデータ例を基に特定されたルール部分集合を示す図である。
【図２０】図２０は、第５のデータ例のルール集合を示す図である。
【図２１】図２１は、第５のデータ例を基に特定されたルール部分集合を示す図である。
【図２２】図２２は、第６のデータ例のルール集合を示す図である。
【図２３】図２３は、第６のデータ例を基に特定されたルール部分集合を示す図である。
【図２４】図２４は、第７のデータ例のルール集合を示す図である。
【図２５】図２５は、第７のデータ例を基に特定されたルール部分集合を示す図である。
【図２６】図２６は、推論システムのハードウェアの構成の一例である情報処理装置の構成を示すブロック図である。
【発明を実施するための形態】
【００３５】
次に、本発明の実施形態について図面を参照して説明する。
【００３６】
なお、各図面は、本発明の実施形態を説明するためのものである。ただし、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。また、図面中の矢印の方向は、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
【００３７】
まず、本実施形態の説明における用語について整理する。
【００３８】
「アトム」とは、部分論理式を持たない論理式（原子論理式又は素論理式）である。アトムの例は、命題変数又は述語である。以下の説明では、アトムの例として主として述語を用いる。例えば、アトムの一例は、Ｘを変数とした場合の、「Ｘがたばこを吸う」である。なお、アトムは、関数形式を用いて表される場合もある。例えば、上記の「Ｘがたばこを吸う」は、「Ｓｍｏｋｅ（Ｘ）」のように表されてもよい。なお、アトムは、複数の変数を含んでもよい。例えば、この場合のアトムの一例は、「ＸとＹとが友人である」である。なお、関数形式を用いると、例えば、「ＸとＹとが友人である」は、「Ｆｒｉｅｎｄｓ（Ｘ，Ｙ）」となる。
【００３９】
「グラウンドアトム」は、アトムにおける変数に定数が代入されたアトムである。例えば、上記の「Ｘはたばこを吸う」の変数Ｘに特定の人物を代入したアトムが、グラウンドアトムである。より具体的には、例えば、変数Ｘに人物Ａを代入した場合のグラウンドアトムは、「Ａはたばこを吸う」である。グラウンドアトムには、真理値（Ｔｒｕｅ（１）又はＦａｌｓｅ（０））を割り当てることができる。Ａがたばこを吸う場合、このグラウンドアトムは、Ｔｒｕｅとなる。Ａがたばこを吸わない場合、このグラウンドアトムは、Ｆａｌｓｅとなる。
【００４０】
「世界」とは、グラウンドアトムの真理値の割当てである。例えば、グラウンドアトムがＮ個ある場合、グラウンドアトムへの真理値の割当て全体に含まれる要素（各割当て）を「ｘ」とすると、ｘは、「ｘ∈｛０，１｝Ｎ」となる。この各割当てそれぞれを、世界（ｘ）と呼ぶ。つまり、所定数のアトムの変数に定数が代入された結果であるグラウンドアトムにおける真理値の集合が、それぞれ、世界となる。
【００４１】
「ルール」とは、論理式であり、一般的に上記のアトムを含む論理式である。以下で用いるルールは、述語論理のルールとする。したがって、ルールは、述語を含む場合がある。すなわち、ルールは、命題、述語、定数、変数、及び、論理記号（∀、∃、¬、∧、∨、→、←、又は、⇔）を用いて記述される。本発明における実施形態が用いるルールは、後ほど説明する重みを付与されていなくてもよい。ただし、後ほど説明する詳細な動作の説明において、参考としてＭＬＮを用いるため、以下の説明では、必要に応じて、ルール集合として、重み付きルールで構成されたルール集合を用いる。なお、以下の説明では、説明の便宜のため、一階述語論理のルールを用いて説明する。ただし、本発明は、一階述語論理に限定されない。
【００４２】
なお、上記の論理記号は、一般的な述語論理に用いられる記号であり、その意味は、次のとおりである。
【００４３】
「∀（全称記号、全称量化記号、又は、普遍記号と呼ばれる）」は、「任意の〜について」又は「全ての〜について」を意味する論理記号である。
【００４４】
「∃（存在記号、特称記号、又は、存在量化記号と呼ばれる）」は、「（条件）を満たす〜が存在する」又は「ある〜に対して、」を意味する論理記号である。
【００４５】
「¬」は、否定を表す論理記号である。
【００４６】
「∧」は、連言又は論理積を表す論理記号である。
【００４７】
「∨」は、選言又は論理和を表す論理記号である。
【００４８】
「→」は、含意を表す論理記号である。例えば、「Ａ→Ｂ」は、「ＡならばＢ」を意味する。「Ａ→Ｂ」は、「¬Ａ∨Ｂ」と同値である。
【００４９】
「←」は、「→」の反対の方向の論理を示す論理記号である。例えば、「Ａ←Ｂ」は、「ＢならばＡ」を意味する。
【００５０】
「⇔」は、同値を示す論理記号である。「Ａ⇔Ｂ」は、「（Ａ→Ｂ）∧（Ａ←Ｂ）」である。
【００５１】
「観測」とは、一つ又は複数のグラウンドアトムに真理値が割り当てられることである。つまり、観測は、グラウンドアトムとその真理値との組からなる集合である。そして、観測に含まれるグラウンドアトムは、真理値が割り当てられている。つまり、観測に含まれるグラウンドアトムは、真理値が決定している。「観測する」とは、真理値が割り当てられたグラウンドアトムを取得する動作である。なお、観測の取得元は、特に制限されない。観測は、例えば、ユーザから受け取ってもよく、センサなど図示しない装置又は機器から受け取ってもよい。
【００５２】
「クエリ」とは、観測とルール集合との下で事後確率を算出される対象となるグラウンドアトム又はグラウンドアトムの論理結合である。つまり、クエリは、要素として、少なくとも一つのグラウンドアトム又はグラウンドアトムの論理結合を含む集合である。また、クエリは、推論システムにおける推論の対象である。なお、推論システムは、直接的又は間接的に、ユーザからクエリを受け取る。
【００５３】
請求の範囲に記載の「開始状態」は、観測に相当する。また、請求の範囲に記載の「終了状態」は、クエリに相当する。
【００５４】
「重み」とは、各ルールに設定されている値であり、ルールの成立又は不成立を、連続値として、確率に反映されるために用いられる値である。例えば、ＭＬＮの場合を例に用いると次のようになる。ルールが１つの場合、そのルールの重みは、「ルールが成立する確率のオッズ（ｏｄｄｓ）の対数を取ったもの」として解釈される。ここで、オッズは、「（確率／（１−確率））」である。ただし、一般に、ルールが複数ある場合には、このような単純な解釈は、知られていない。
【００５５】
単純な解釈はないが、例えば、ＭＬＮの場合には、重みは、次のように、ルールの成立又は不成立を世界の確率に反映する。
（１）重みが正のルールが成立すると、成立しない場合より、世界の確率は、高くなる。この場合、絶対値が大きいルールが成立すると、絶対値が小さいルールが成立した場合より、世界の確率は、より高くなる。
（２）重みが負のルールが成立すると、成立しない場合より、世界の確率は、低くなる。この場合、絶対値が大きいルールが成立すると、絶対値が小さいルールが成立した場合より、世界の確率は、より低くなる。
（３）重みが０のルールは、成立しても、不成立でも、世界の確率には、影響しない。
【００５６】
ただし、これは、世界の確率に対してのものである。クエリの確率に対する影響は、この限りではなく、一般に、上記のように単純には説明できない。なぜなら、クエリの確率の値は、ある世界における確率の和を取った値を、他の世界における確率の和を取った値で、除算して計算されるため、一般に、複雑に関連しているためである。
【００５７】
なお、「重み」は、既に説明しているように、ＭＬＮなど公知の技術において開示されている値である。
【００５８】
ルール集合の「重要度」とは、そのルール集合が推論の結果に、どの程度寄与するかを示す指標である。ルール集合の「重要度」は、本発明の発明者が、新規に見いだした指標である。
【００５９】
本発明において、ルール集合の重要度は、以下のように定義される。
【００６０】
（前提１）観測及びルール集合からクエリが成り立つ事後確率を推論する場合を想定する。
【００６１】
（前提２）第１のルール集合を構成するルールから、あるルール集合を除外したルール集合を、第２のルール集合とする。
【００６２】
（前提３）観測及び第１のルール集合からクエリが成り立つ確率を、第１の推論結果とする。
【００６３】
（前提４）先と同一の観測及び第２のルール集合から先と同一のクエリが成り立つ確率を第２の推論結果とする。
【００６４】
このとき、除外されたルール集合の重要度は、次のように定義される。
【００６５】
（定義）除外されたルール集合の重要度は、第１の推論結果と第２の推論結果との差異の大きさに基づいて定義される。
【００６６】
「重要度」は、一つのルールに対して定義することもできるし、ルール集合に対して定義することもできる。
【００６７】
このように、本発明における「重要度」は、前述した「重み」とは異なる概念である。
【００６８】
例えば、第１のルール集合が１００個のルールを含むルール集合であるとする。第１のルール集合を構成する１００個のルールのうち、ランダムに１０個のルールを選択して、その選択したルールを第１のルール集合から除外するとする。その結果として、９０個のルールを含む第２のルール集合が定義される。
【００６９】
ある観測と第１のルール集合との下で推論したあるクエリの確率を第１の推論結果とする。先と同じ観測と第２のルール集合との下で推論した先と同じクエリの確率を第２の推論結果とする。先ほど除外した１０個のルールの重要度は、第１の推論結果と第２の推論結果との差異の大きさを用いて定義される。
【００７０】
例えば、ある１０個のルール（以下、「第３のルール集合その１」と呼ぶ）が除外された場合には、第１の推論結果と第２の推論結果との差異が、あまり大きくないとする。また、第３のルール集合その１とは異なる他の１０個のルール（以下、「第３のルール集合その２」と呼ぶ）が除外された場合には、第１の推論結果と第２の推論結果との差異が、顕著に大きいとする。このとき、第３のルール集合その２の重要度は、第３のルール集合その１の重要度よりも高い。
【００７１】
上記の重要度の具体例は、第２のルール集合に着目して下記のように言い換えることもできる。
【００７２】
上記の第１のルール集合からある１０個のルール（第３のルール集合その１）を除外した残りのルールを第２のルール集合その１とし、先と同じ観測と第２のルール集合その１との下で推論した先と同じクエリの確率を第２の推論結果その１とする。上記第１のルール集合から他の１０個のルール（第３のルール集合その２）を除外した残りのルールを第２のルール集合その２とし、先と同じ観測と第２のルール集合その２の下で推論した先と同じクエリの確率を第２の推論結果その２とする。
【００７３】
第１の推論結果と第２の推論結果その２との差異が、第１の推論結果と第２の推論結果その１との差異よりも小さい場合、第２のルール集合その２の重要度は、第２のルール集合その１の重要度よりも高い。第２のルール集合その２に基づく推論結果は、第２のルール集合その１に基づく推論結果よりも、第１の推論結果をより正確に再現していると言えるからである。
【００７４】
なお、以下の説明において、値と閾値との比較として、「以上（equal to or more than）」という文言、又は、「以下（equal to or less than）」という文言を用いることがある。「以上（equal to or more than）」という文言は、「超える（more than）」と読み替えてもよい。また、「以下（equal to or less than）」という文言は、「未満(less than)」と読み替えてもよい。
【００７５】
［記号の説明］
以下の説明に用いる記号を説明する。
【００７６】
Ｃａｒｄ（Ｓ）は、集合Ｓの元（要素）の個数を示す関数である。
【００７７】
［［ｌ］］は、論理式ｌの解釈を表す。今の場合、一階述語論理を用いているため、解釈は、「Ｔｒｕｅ」又は「Ｆａｌｓｅ」のいずれかである。以下、値を用いて解釈を表す場合、Ｔｒｕｅ＝１、及び、Ｆａｌｓｅ＝０とする。
【００７８】
Ａは、述語である。
【００７９】
Ｆは、グラウンドされたルール、つまり、変数の値が決定しているルールである。ルールＦを区別する場合は、添え字ｊを付す。
【００８０】
Ｌは、ルールＦの全体の集合（以下、ルール集合と呼ぶ）である。ルール集合Ｌから、一つ又は複数のルールＦを除外した残りであるルール集合Ｌの部分集合を、ルール部分集合Ｌ’とする（Ｌ’⊆Ｌ）。また、除外された一つ又は複数のルールＦの集合をルール部分集合Ｌ”とする。
【００８１】
例えば、ルール集合Ｌが１００個のルールＦを含むルール集合であるとする。ルール集合Ｌを構成する１００個のルールＦのうち、ランダムに１０個のルールＦを選択して、その選択したルールＦをルール集合Ｌから除外するとする。この場合、残される９０個のルールＦを含むルール集合が、ルール部分集合Ｌ’である。また、除外される１０個のルールＦの集合が、ルール部分集合Ｌ”である。ルール部分集合Ｌ”は、除外されることを明確にするため、「除外されるルール部分集合Ｌ”」と呼ぶ場合もある。
【００８２】
なお、例えば、ルール集合Ｌの元の数（Ｃａｒｄ（Ｌ））を、Ｎとすると、ルール集合Ｌは、｛Ｆ１，Ｆ２，…，ＦＮ｝となる。
【００８３】
Ｏは、観測である。観測Ｏは、グラウンドアトムとその真理値のペアの集合である。以下では、Ｏは、空ではないとして説明を進める。
【００８４】
Ｑは、クエリである。クエリＱは、少なくとも一つのグラウンドアトム又はグラウンドアトムの論理結合を含む。
【００８５】
観測ＯとクエリＱとの具体例を示す。
【００８６】
例えば、観測Ｏに含まれる元の数（Ｃａｒｄ（Ｏ））をＭとすると、観測Ｏは、｛［［Ａ１］］＝Ｔｒｕｅ，…，［［ＡＭ］］＝Ｔｒｕｅ｝となる。このように、観測Ｏを構成する要素は、真理値が定まっている。
【００８７】
また、例えば、クエリＱに含まれる元の数をＫとする。すると、クエリＱは、｛Ａ１，Ａ２，…，ＡＫ｝となる。
【００８８】
Ｐ（Ｑ｜Ｏ，Ｌ）は、ルール集合Ｌと観測Ｏとの下でのクエリＱの確率である。以下の説明では、単に、確率Ｐ（Ｑ｜Ｏ，Ｌ）と呼ぶ。
【００８９】
ＤＬ（Ｌ’，Ｏ，Ｑ）は、観測Ｏの下で、ルール部分集合Ｌ’を用いた推論におけるクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ’）と、ルール集合Ｌを用いた推論におけるクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ）との変化量である。ＤＬ（Ｌ’，Ｏ，Ｑ）は、数式を用いて表すと、次のようになる。
ＤＬ（Ｌ’，Ｏ，Ｑ）＝Ｐ（Ｑ｜Ｏ，Ｌ’）−Ｐ（Ｑ｜Ｏ，Ｌ）
つまり、ＤＬ（Ｌ’，Ｏ，Ｑ）は、差異の一例である。そのため、以下では、差異として、ＤＬ（Ｌ’，Ｏ，Ｑ）を用いる。なお、差異の値は、正の値、負の値、又は、０となる。ただし、「差異の大きさ」は、差異の値の絶対値の大きさとする。例えば、以下の説明において、「差異ＤＬ（Ｌ’，Ｏ，Ｑ）＝−０．５」は、「差異ＤＬ（Ｌ’，Ｏ，Ｑ）＝０．３」より大きいとして説明する。
【００９０】
ｗは、ルールに付与された重みである。
【００９１】
＜本発明に関連する発明＞
本発明における第１の実施形態の説明の前に、そのルールが推論の結果にどの程度寄与するかを示す指標として、ルールに設定された「重み」を用いる例を説明する。以下の記載も、本発明の発明者が見いだした知見である。以下、ルールに設定された「重み」をそのルールが推論の結果にどの程度寄与するかを示す指標として用いる発明を、「関連発明」と呼ぶ。
【００９２】
ＭＬＮなどを用いた推論システムは、ルールＦに重みｗを設定している。そこで、本発明の関連発明として、重みｗを基に、推論の根拠を出力する発明について説明する。
【００９３】
上記のように、ＭＬＮなどの推論システムは、ルールＦに重みｗを付与する。以下の説明において、重みｗとルールＦのペアを、「重み付きルール」と呼ぶ。また、以下の説明において、特に区別の必要がない場合、重み付きルールを含め、ルールＦと呼ぶ。
【００９４】
なお、ＭＬＮなどにおいて、重みｗは、実数値、∞、又は、−∞である。ここで、∞は、任意の実数値より大きい値を表す記号である。また、−∞は、任意の実数値より小さい値を表す記号である。
【００９５】
関連発明は、推論結果を説明する根拠として、選択基準として重みｗを用いて、ルール集合Ｌからルール部分集合Ｌ’を抽出する。
【００９６】
より具体的には、関連発明は、次のように動作する。
【００９７】
まず、関連発明は、ルール集合Ｌと、ハイパーパラメタとを取得する。例えば、関連発明は、ユーザが操作する装置から、ルール集合Ｌとハイパーパラメタとを受信する。ルール集合Ｌは、上記の重みｗを含んでいる。ハイパーパラメタは、後ほど説明する。
【００９８】
関連発明は、ルールＦの重みｗを基に、ルールＦを選択して、ルール部分集合Ｌ’を出力する。
【００９９】
関連発明における選択手法としては、例えば、次の２つの方法がある。なお、関連発明は、さらに、制約を含んでもよい。制約の一例は、「観測Ｏを含むルールＦ及び／又はクエリＱを含むルールＦは、除外されない」である。
【０１００】
（第１の選択方法）  第１の方法は、重みｗの値が閾値以上のルールＦを選択する方法である。この方法の場合、関連発明は、上記のハイパーパラメタとして、重みｗの閾値を取得する。言い換えると、第１の選択方法は、重みｗの値が閾値未満のルールＦを除外する選択方法である。第１の方法における出力は、重みｗがハイパーパラメタ以上のルールＦからなるルール部分集合Ｌ’である。
【０１０１】
（第２の選択方法）  第２の方法は、重みｗの値の大きな方から所定の数のルールＦを選択する方法である。この方法の場合、関連発明は、ハイパーパラメタとして、ルールＦの数を取得する。言い換えると、第２の選択方法は、所定の数のルールＦを残すように、重みｗの小さい方からルールＦを除外する選択方法である。第２の方法における出力は、重みｗの大きい方からハイパーパラメタを用いて指定された数のルールＦを含むルール部分集合Ｌ'である。
【０１０２】
関連発明は、上記のいずれかの方法を用いてルール部分集合Ｌ’を出力する。ここで出力として選択されたルール部分集合Ｌ’は、重みｗが大きいルールＦの部分集合である。そのため、出力されたルール部分集合Ｌ’は、推論に用いられることに適したルールＦである。
【０１０３】
なお、関連発明は、上記の二つの方法を用いてもよい。つまり、関連発明は、上記の重みｗの値の閾値（第１閾値）とルールＦの数の閾値（第２閾値）とを取得する。そして、関連発明は、停止条件として、「第１閾値未満のルールＦを全て削除」及び／又は「ルールＦの数が第２閾値以下」を用いて、ルールＦを選択してもよい。
【０１０４】
（関連発明が有する課題）
上記のように、関連発明は、推論の根拠として、ルール部分集合Ｌ’を出力できる。
【０１０５】
しかし、実際に根拠を示したい推論は、「観測Ｏの下でのクエリＱの確率Ｐ」を求めるための推論である。
【０１０６】
そこで、発明者は、関連発明における、観測Ｏの下でのクエリＱの確率Ｐを求めるための推論の根拠を提示することにおいて、次のような課題を見いだした。
【０１０７】
第１の課題は、関連発明において、出力として選択されたルール部分集合Ｌ’が、「観測Ｏの下でのクエリＱの確率Ｐ」に対する影響度が考慮されていない点である。
【０１０８】
その理由は、次のとおりである。関連発明において、選択の基準として用いる重みｗは、「観測Ｏの下でのクエリＱの確率Ｐ」を推論する動作の前の段階において決定された値である。例えば、重みｗは、ルール集合Ｌが推論システムの入力として用いられる前に、機械学習を用いた重み学習処理の結果、又は、ユーザの定義に基づいて決定されている。つまり、重みｗに基づく選択は、推論段階における観測Ｏに関する情報、及び、クエリＱに関する情報を、ルールＦの選択に用いていない。このように、関連発明は、「観測Ｏの下でのクエリＱの確率Ｐ」に対する影響度を考慮していない。
【０１０９】
第２の課題は、関連発明において、出力として選択されたルール部分集合Ｌ’を用いて再推論する場合の確率Ｐが、元のルール集合Ｌを用いて推論した場合の確率Ｐに対して変化する範囲を保証できない点である。
【０１１０】
その理由は、課題１と同様に、関連発明は、推論における観測Ｏに関する情報及びクエリＱに関する情報を、ルールＦの選択に用いていないためである。関連発明が選択の基準としている重みｗが、推論の前段階に決定される値であるため、関連発明は、推論における観測Ｏに関する情報及びクエリＱに関する情報を考慮していない。そのため、関連発明は、観測Ｏの下でのクエリＱの確率の変化する範囲を保証できない。
【０１１１】
第３の課題は、関連発明が、重みｗを持たないルールＦを扱う確率的推論システムを用いることができない点である。
【０１１２】
その理由は、関連発明が、ルールＦの選択の基準として重みｗを用いているためである。
【０１１３】
例えば、非特許文献１は、ルールＦに重みｗが付与されない。したがって、関連発明は、非特許文献１を用いる推論システムにおけるルールＦを選択できない。
【０１１４】
第４の課題は、関連発明は、ルール集合を取り扱うことができない点である。
【０１１５】
その理由は、関連発明が扱う重みｗが、ルールＦ毎に設定されているからである。
【０１１６】
そこで、発明者は、以下に説明するように、上記の課題を解決する情報処理システムを見いだした。
【０１１７】
＜第１の実施形態＞
以下、図面を参照して、本発明における第１の実施形態に係る推論システム１００について説明する。
【０１１８】
推論システム１００は、観測Ｏ及びルール集合Ｌの下で、クエリＱが成り立つ確率Ｐを推論する。そして、推論システム１００は、推論の根拠を出力する。推論の根拠の一例が、ルール集合Ｌからルール部分集合Ｌ’を作成するときに除外されたルールＦである。つまり、推論システム１００の一例は、「推論の根拠」として、ルール集合Ｌと観測Ｏとの下でのクエリＱの確率Ｐを算出するルール部分集合Ｌ’を作成する際に除外されたルールＦを出力する。
【０１１９】
まず、推論システム１００の動作の概要について、図面を参照して説明する。
【０１２０】
図４は、第１の実施形態の動作の概要を説明するために用いるルール集合Ｌを示す図である。図４に示されているグラフは、例えば、次のような手法を適用して作成されたグラフである。
（１）グラウンドアトムをノードとする。
（２）グラウンドアトムのペアに対して、その２つのグラウンドアトムが同一のルールに現れるときに限り、その２つのグラウンドアトム間にエッジを引く。
【０１２１】
なお、この手法は、ＭＬＮなどで用いられている手法である。また、図４は、無向グラフである。つまり、図４において、各ルールＦにおける推論の方向は、必ずしも、左から右に限定されない。
【０１２２】
図４において、「Ｃａｎｃｅｒ（Ｘ）」は、「Ｘが癌になる」ことを示す。「Ｓｍｏｋｅ（Ｘ）」は、「Ｘがたばこを吸う」ことを示す。「Ｆａｍｉｌｙ（Ｘ，Ｙ）」は、「ＸとＹとが家族である」ことを示す。「Ｆｒｉｅｎｄｓ（Ｘ，Ｙ）」は、「ＸとＹとが友人である」ことを示す。
【０１２３】
そして、観測Ｏは、「Ａが癌になる」がＴｒｕｅとする。クエリＱは、「Ｂが癌になる」とする。
【０１２４】
つまり、図４は、「Ａが癌になる」がＴｒｕｅである観測Ｏの下で、クエリＱである「Ｂが癌になる」の確率Ｐを求める場合に、推論の根拠全体の一例であるルール集合Ｌを示す。
【０１２５】
図４に示されているルール集合Ｌに含まれるルールＦは、次のとおりである。
Ｆ１＝Ａがたばこを吸う。  →  Ａが癌になる。
Ｆ２＝Ａがたばこを吸う。  ∧  ＡとＢとが友人である。  →  Ｂがたばこを吸う。
Ｆ３＝Ａがたばこを吸う。  ∧  ＡとＢとが家族である。  →  Ｂがたばこを吸う。
Ｆ４＝Ｂがたばこを吸う。  →  Ｂは、癌になる。
【０１２６】
まず、推論システム１００は、ルール集合Ｌと観測Ｏとの下で、クエリＱの確率を算出する。この時の確率を、第１の推論結果とする。
【０１２７】
そして、推論システム１００は、いずれかのルールＦを除外した場合のルール部分集合Ｌ’と観測Ｏとの下で、クエリＱの確率を算出する。
【０１２８】
例えば、推論システム１００は、ルールＦ３を除外したとする。
【０１２９】
図５は、図４のルール集合においてルールＦ３を除外した場合のルール部分集合Ｌ’の一例を示す図である。図５に示されているルール部分集合Ｌ’は、次のようなルールＦで構成されている。
Ｆ１＝Ａがたばこを吸う。  →  Ａが癌になる。
Ｆ２＝Ａがたばこを吸う。  ∧  ＡとＢとが友人である。  →  Ｂがたばこを吸う。
Ｆ４＝Ｂがたばこを吸う。  →  Ｂは、癌になる。
【０１３０】
推論システム１００は、観測Ｏとルール部分集合Ｌ’との下で、クエリＱの確率を算出する。この時の確率を第２の推論結果とする。
【０１３１】
そして、推論システム１００は、除外したルールＦの重要度として、第１の推論結果と第２の推論結果との差異を算出する。
【０１３２】
そして、推論システム１００は、除外したルールＦと、ルールＦの重要度とを関連付けて出力する。
【０１３３】
その結果、ユーザは、重要度が高いルールＦを特定できる。
【０１３４】
例えば、ルールＦ２の重要度が、ルールＦ３の重要度より高い場合、ユーザは、ルール部分集合Ｌ’｛Ｆ１，Ｆ２，Ｆ４｝が、ルール部分集合Ｌ’｛Ｆ１，Ｆ３，Ｆ４｝より根拠として適切なことが分かる。
【０１３５】
次に、第１の実施形態に係る推論システム１００の構成について、図面を参照して説明する。
【０１３６】
図１は、本発明における第１の実施形態に係る推論システム１００の構成の一例を示すブロック図である。
【０１３７】
推論システム１００は、開始状態及びルール集合Ｌから終了状態が成り立つ確率を推論する。
【０１３８】
そのため、推論システム１００は、算出部１１０と、出力部１２０とを備える。
【０１３９】
算出部１１０は、第１のルール集合を構成するルールから一つのルールを除外したルール集合を第２のルール集合とする。そして、算出部１１０は、第１の推論結果として、開始状態及び第１のルール集合から終了状態が成り立つ確率を算出する。さらに、算出部１１０は、第２の推論結果として、先と同一の開始状態及び第２のルール集合から先と同一の終了状態が成り立つ確率を算出する。そして、算出部１１０は、除外されたルール毎に、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する。
【０１４０】
出力部１２０は、除外されたルール毎に、ルールと、ルールの重要度とを関連付けて出力する。
【０１４１】
なお、出力部１２０は、重要度が高いルールを、重要度が低いルールよりも優先して出力してもよい。
【０１４２】
上記の説明において、開始状態が、観測Ｏである。第１のルール集合が、ルール集合Ｌである。終了状態が、クエリＱである。第１の推論結果が、観測Ｏとルール集合Ｌとの下でのクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ）である。第２のルール集合が、ルール部分集合Ｌ’である。つまり、第２の推論結果は、観測Ｏとルール部分集合Ｌ’との下でのクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ’）である。そして、差異の一例は、ＤＬ（Ｌ’，Ｏ，Ｑ）である。
【０１４３】
すなわち、算出部１１０は、第１の推論結果として、観測Ｏ及びルール集合Ｌとの下で、クエリＱが成り立つ確率Ｐ（Ｑ｜Ｏ，Ｌ）を算出する。さらに、算出部１１０は、第２のルール集合として、ルール集合Ｌから一つのルールを除外したルール部分集合Ｌ’を作成する。そして、算出部１１０は、第２の推論結果として、観測Ｏ及びルール部分集合Ｌ’の下で、クエリＱが成り立つ確率Ｐ（Ｑ｜Ｏ，Ｌ’）を算出する。そして、算出部１１０は、重要度として、ＤＬ（Ｌ’，Ｏ，Ｑ）を算出する。
【０１４４】
そして、出力部１２０は、除外されたルールＦと、そのルールＦの重要度を関連付けて出力する。
【０１４５】
図６は、ルールＦとその重要度とを関連付けた出力の一例を示す図である。図６は、重要度の大きい順に、ルールＦを並べた場合を示している。なお、図６は、観測Ｏを含むルールＦ１とクエリＱを含むルールＦ４とを省略している。
【０１４６】
なお、出力部１２０が出力する出力先は、特に制限されない。出力部１２０は、図示しない、ユーザが操作する装置に、ルールＦと重要度とを送信してもよい。あるいは、出力部１２０は、図示しない表示機器を含み、その表示機器にルールＦと重要度とを表示させてもよい。
【０１４７】
推論システム１００は、ルール部分集合Ｌ’を新たなルール集合Ｌとして、同様の動作を繰り返してもよい。
【０１４８】
なお、推論システム１００の情報の取得元は、特に制限されない。例えば、算出部１１０は、図示しない外部の装置から、観測Ｏ、クエリＱ、及び、ルール集合Ｌを取得してもよい。あるいは、算出部１１０は、図示しない記憶装置に予め保持されている観測Ｏ、クエリＱ、及び、ルール集合Ｌを用いて動作してもよい。
【０１４９】
上記の説明において、算出部１１０が、重要度を算出する際に、推論を実行するとして説明した。ここでの推論は、クエリＱにおける確率Ｐを算出することである。ただし、推論を実行する構成は、算出部１１０に限定されない。例えば、図示しない推論エンジン（例えば、ＭＬＮと同様の推論エンジン）が、上記の確率Ｐを算出してもよい。この場合、算出部１１０は、「ルール集合Ｌ、ルール部分集合Ｌ’、観測Ｏ、及び、クエリＱ」をその推論エンジンに送信し、その推論エンジンから推論の結果（確率Ｐ）を取得してもよい。
【０１５０】
このように構成された推論システム１００は、推論の根拠をユーザに提示する効果を奏することができる。
【０１５１】
その理由は、次のとおりである。
【０１５２】
算出部１１０は、そのルールＦを除外した場合にクエリＱの確率Ｐの差異を算出する。つまり、算出部１１０は、ルールＦの重要度を算出する。そして、出力部１２０は、ルールＦと算出されたルールＦの重要度とを関連付けて出力する。このような動作を基に、推論システム１００は、ユーザに、クエリＱの確率Ｐに影響の程度が高いルールＦ（重要度が高いルールＦ）を提示できるためである。
【０１５３】
さらに、推論システム１００は、関連発明の課題を解決するとの効果を奏する。
【０１５４】
その理由は、次のとおりである。
【０１５５】
算出部１１０は、ルールＦの重要度として、そのルールＦを除外したルール部分集合Ｌ’及び観測Ｏの下でのクエリＱの確率Ｐと、ルール集合Ｌ及び観測Ｏの下でのクエリＱの確率Ｐとの差異を算出する。つまり、算出されたルールＦの重要度は、そのルールＦが観測Ｏの下でのクエリＱの確率Ｐに影響を与える程度を示す値である。つまり、算出部１１０は、重要度として、「観測Ｏの下でのクエリＱの確率Ｐ」に対する影響の程度を算出している。そして、出力部１２０は、ルールＦと重要度とを関連付けて出力する。そのため、推論システム１００は、「観測Ｏの下でのクエリＱの確率Ｐ」に対する影響の程度（重要度）を考慮している。つまり、推論システム１００は、関連発明の第１の課題を解決している。
【０１５６】
また、算出部１１０は、重要度として、ルール集合Ｌとルール部分集合Ｌ’とにおける確率Ｐの差異を算出している。そして、出力部１２０は、ルールＦとその重要度とを関連付けて出力する。そのため、推論システム１００は、重要度を基に、ルール集合Ｌを用いて推論した場合の確率Ｐに対して変化する範囲を保証できる。つまり、推論システム１００は、関連発明の第２の課題を解決している。
【０１５７】
さらに、算出部１１０は、ルールＦの重要度の算出において、重みｗを用いていない。そのため、算出部１１０は、重み付きではない確率的推論システムに対応できる。つまり、推論システム１００は、関連発明の第３の課題を解決している。
【０１５８】
（変形例１）
推論システム１００の算出部１１０は、ルール集合Ｌに重みｗが含まれる場合、ルールＦの特定において、差異に加え、重みｗを関連付けて出力してもよい。
【０１５９】
図７は、重みを関連付けた出力の一例を示す図である。図７は、重要度の大きい順に、ルールＦを並べた場合を示している。なお、図７は、観測Ｏを含むルールＦ１とクエリＱを含むルールＦ４とを省略している。
【０１６０】
ただし、推論システム１００は、別の項目を基にルールＦを並べてもよい。例えば、推論システム１００は、重みが大きいルールＦから、ルールＦを並べてもよい。この場合、ユーザは、重みが大きいが、重要度が高くないルールＦなど、推論における異なる知見を取得できる。
【０１６１】
このように、出力部１２０は、ルールＦと、ルールＦの重要度と、ルールＦに対して予め算出された重みの値と、を関連付けて出力してもよい。
【０１６２】
（変形例２）
推論システム１００は、制約を用いてもよい。例えば、推論システム１００は、「観測Ｏを含むルールＦ及び／又はクエリＱを含むルールＦを除外しない」との制約を用いてもよい。あるいは、推論システム１００は、ユーザから除外しないルールＦの指示を受信してもよい。あるいは、推論システム１００は、観測Ｏ又はクエリＱから所定の範囲のルールＦを除外しないようにしてもよい。あるいは、推論システム１００は、観測Ｏが時間情報を含む場合、時間を用いて除外可能な観測Ｏの範囲を設定してもよい。
【０１６３】
（変形例３）
ここまでの説明において、差異ＤＬ（Ｌ’，Ｏ，Ｑ）は、ルール集合Ｌとルール部分集合Ｌ’との確率Ｐの差として説明した。しかし、差異ＤＬ（Ｌ’，Ｏ，Ｑ）は、このような確率Ｐの差に限定されない。例えば、算出部１１０は、差異ＤＬ（Ｌ’，Ｏ，Ｑ）の差分を用いてもよい。ここで、差分とは、確率Ｐにおける、ルール部分集合Ｌ’に含まれるルールＦに対応する差分である。例えば、差分は、確率Ｐの、ルールＦがルール部分集合Ｌ’に入っているか否かにおける差分である。この場合の差分の一例を以下に示す。
【０１６４】
算出部１１０は、差異ＤＬ（Ｌ’，Ｏ，Ｑ）の代わりとして、数式１に示す差分（ＤＬ’（Ｌ’＼Ｆｊ，Ｏ，Ｑ））を用いてもよい。数式１の「＼」は、ルールの除外を示す。つまり、「ルール部分集合Ｌ’＼Ｆｊ」は、ルール部分集合Ｌ’から、さらにルールＦｊを除外することを示す。そして、差分ＤＬ’（Ｌ’＼Ｆｊ，Ｏ，Ｑ）は、差異ＤＬ（Ｌ’，Ｏ，Ｑ）と、差異ＤＬ（Ｌ’＼Ｆｊ，Ｏ，Ｑ）との差を示す。つまり、数１は、差分（ＤＬ’（Ｌ’＼Ｆｊ，Ｏ，Ｑ））が、ルール分集合Ｌ’からルールＦｊを除外した場合の差異ＤＬの変化量であることを示す。算出部１１０は、差異ＤＬ（Ｌ’，Ｏ，Ｑ）に代えて、差分ＤＬ’（Ｌ’＼Ｆｊ，Ｏ，Ｑ）を用いてもよい。
【０１６５】
【数１】
0006721036.tif 000002
【０１６６】
＜第２の実施形態＞
第１の実施形態に係る推論システム１００は、一度に、一つのルールＦを除外した。
【０１６７】
しかし、推論システム１００は、一度に、複数のルールＦ、つまりルール集合を除外してもよい。
【０１６８】
そこで、第２の実施形態として、ルール集合Ｌから複数のルールＦ、つまりルール集合を除外する推論システム１００を説明する。
【０１６９】
第２の実施形態に係る推論システム１００は、第１の実施形態に比較して、ルール集合を除外する点を除き、同様のため、適宜、構成の詳細な説明を省略する。また、動作についても、第１の実施形態の同様の説明を省略し、本実施形態に特有の動作を説明する。
【０１７０】
第２の実施形態の推論システム１００は、開始状態及びルール集合から終了状態が成り立つ確率を推論する。
【０１７１】
そして、推論システム１００は、算出部１１０と、出力部１２０とを備える。
【０１７２】
第２の実施形態に係る算出部１１０は、第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とする。そして、算出部１１０は、先と同一の開始状態及び第１のルール集合から先と同一の終了状態が成り立つ確率を第１の推論結果とする。そして、算出部１１０は、先と同一の開始状態及び第２のルール集合から先と同一の終了状態が成り立つ確率を第２の推論結果とする。そして、算出部１１０は、第３のルール集合に対して、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する。
【０１７３】
出力部１２０は、除外された第３のルール集合毎に、第３のルール集合と第３のルール集合の重要度とを関連付けて出力する。
【０１７４】
第２の実施形態に係る推論システム１００は、上記の動作を繰り返してもよい。
【０１７５】
また、第２の実施形態に係る推論システム１００は、第１の実施形態における変形例１ないし３を用いてもよい。
【０１７６】
このように、第２の実施形態の係る推論システム１００は、第１の実施形態の効果に加え、複数のルールＦの集合の重要度を算出することができるとの効果を奏する。
【０１７７】
その理由は、第２の実施形態の算出部１１０が、複数のルールＦを含むルール集合に対して重要度を算出するためである。つまり、第２の実施形態に係る推論システム１００は、複数のルールＦに対する重要度を算出できる。つまり、第２の実施形態に係る推論システム１００は、関連発明の第４の課題を解決している。
【０１７８】
＜第３の実施形態＞
次に、本発明における第３の実施形態について説明する。
【０１７９】
図２は、第３の実施形態に係る推論システム１０１の構成の一例を示すブロック図である。推論システム１０１は、特定部１３０と、出力部１４０とを備える。
【０１８０】
特定部１３０は、第１のルール集合を構成するルールから、第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とする。そして、特定部１３０は、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とする。そして、特定部１３０は、先と同一の開始状態及び第２のルール集合から先と同一の終了状態が成り立つ確率を推論した結果を第２の推論結果とする。そして、特定部１３０は、第２のルール集合を構成するルールを、第２のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を小さくするように特定する。
【０１８１】
出力部１４０は、特定された第２のルール集合を出力する。
【０１８２】
特定部１３０は、上記の動作において、第１の実施形態又は第２の実施形態の算出部１１０に相当する機能を実現する構成を用いる。つまり、特定部１３０は、ルール又はルール集合と、その重要度とを用いる。そのため、特定部１３０は、算出部１１０に加え、出力部１２０に相当する構成を用いてもよい。
【０１８３】
推論システム１０１の動作について、最適化問題を用いて詳細に説明する。
【０１８４】
以下の説明において、第１のルール集合は、ルール集合Ｌである。すなわち、ルール集合Ｌは、元のルール集合である。第２のルール集合は、ルール部分集合Ｌ’である。すなわち、ルール部分集合Ｌ’は、元のルール集合からあるルール集合が除外された残りのルール集合である。第３のルール集合は、ルール部分集合Ｌ”である。すなわち、ルール部分集合Ｌ”は、除外の対象であるルール集合である。開始状態は、観測Ｏである。終了状態は、クエリＱである。第１の推論結果は、Ｐ（Ｑ｜Ｏ，Ｌ）である。第２の推論結果は、Ｐ（Ｑ｜Ｏ，Ｌ’）である。差異は、ＤＬ（Ｌ’，Ｏ，Ｑ）である。
【０１８５】
そして、特定部１３０は、ルール集合Ｌと、観測Ｏと、クエリＱと、ハイパーパラメタεとを用いる。ハイパーパラメタεは、制約における差異の範囲を示すパラメータである。つまり、ハイパーパラメタεは、差異における閾値である。
【０１８６】
そして、特定部１３０は、次に示す最適化問題１の解として、ルール部分集合Ｌ’を特定する。
【０１８７】
［最適化問題１］
・入力：観測Ｏ、クエリＱ、ルール集合Ｌ、及び、ハイパーパラメタε
・最適化問題：
ｍｉｎｉｍｉｚｅ  Ｃａｒｄ（Ｌ'）
ｓｕｂｊｅｃｔ  ｔｏ  ｜ＤＬ（Ｌ'，Ｏ，Ｑ）｜≦ε
・出力：ルール部分集合Ｌ'
つまり、特定部１３０は、次の制約において、ルールＦの数が最も少ないルール部分集合Ｌ'を特定する。制約は、ルール部分集合Ｌ'と観測Ｏとの下でのクエリＱの確率Ｐと、ルール集合Ｌと観測Ｏとの下でのクエリＱの確率Ｐとの差異の絶対値がハイパーパラメタε以下となることである。つまり、特定部１３０は、差異ＤＬ（Ｌ'，Ｏ，Ｑ）がハイパーパラメタε以下となるルール部分集合Ｌ'の中で、ルールＦの数（Ｃａｒｄ（Ｌ'））が最も少ないルール部分集合Ｌ'を特定する。あるいは、特定部１３０は、上記ルール部分集合Ｌ'を構成するルールＦを特定する。
【０１８８】
なお、上記の最適化問題１は、除外されるルール部分集合Ｌ”を用いて、定義することもできる。その場合、最適化問題１は、次のようになる。
【０１８９】
［最適化問題１の別形式］
・入力：観測Ｏ、クエリＱ、ルール集合Ｌ、及び、ハイパーパラメタε
・最適化問題：
ｍｉｎｉｍｉｚｅ  Ｃａｒｄ（Ｌ”）
ｓｕｂｊｅｃｔ  ｔｏ  ｜ＤＬ（Ｌ’，Ｏ，Ｑ）｜≧ε
・出力：ルール部分集合Ｌ”
この場合の特定部１３０及び出力部１４０は、次のとおりである。
【０１９０】
特定部１３０は、第１のルール集合を構成するルールから、第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とする。そして、特定部１３０は、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とする。そして、特定部１３０は、先と同一の開始状態及び第２のルール集合から先と同一の終了状態が成り立つ確率を推論した結果を第２の推論結果とする。そして、特定部１３０は、第３のルール集合を構成するルールを、第３のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を大きくするように特定する。
【０１９１】
出力部１４０は、特定された第３のルール集合を出力する。
【０１９２】
［効果の説明］
第３の実施形態の効果について説明する。
【０１９３】
第３の実施形態は、推論の根拠をユーザに提示する効果に加え、ルールＦの数がより少ないルール部分集合Ｌ’を特定できるとの効果を奏する。
【０１９４】
その理由は、第３実施形態に係る特定部１３０が、差異ＤＬ（Ｌ’，Ｏ，Ｑ）の値がハイパーパラメタε以下に納まるという制約の下で、ルール部分集合Ｌ’のルールＦの数を最小にするルール部分集合Ｌ’を特定するためである。つまり、特定部１３０は、観測Ｏの下で、クエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ’）に対する影響度の大きいルールＦを取り出せる。
【０１９５】
また、第３の実施形態に係る特定部１３０は、差異ＤＬ（Ｌ'，Ｏ，Ｑ）の値がハイパーパラメタε以下に納まるという制約の下で、ルール部分集合Ｌ'を特定する。そのため、第３の実施形態において特定されたルール部分集合Ｌ'におけるクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ'）は、ルール集合Ｌを用いた場合のクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ）から、たかだかハイパーパラメタεまでしか乖離しない。つまり、第３の実施形態は、クエリＱの確率Ｐの変動を抑えたルール部分集合Ｌ'を出力できる。
【０１９６】
＜第４の実施形態＞
［構成の説明］
次に、本発明における第４の実施形態について説明する。第４の実施形態の構成及び動作は、以下に示す最適化問題を除き、第３の実施形態と同様の構成を備え、同様の動作を実行する。そこで、本実施形態に特有の動作を説明し、第３の実施形態の同様の説明は、適宜、省略する。
【０１９７】
第４の実施形態に係る特定部１３０は、ハイパーパラメタεに変えて、ハイパーパラメタＣを用いる。ハイパーパラメタＣは、制約においてルールＦの数の範囲を示すパラメータである。つまり、ハイパーパラメタＣは、ルールＦの数における閾値である。
【０１９８】
そして、特定部１３０は、次に示す最適化問題２の解として、ルール部分集合Ｌ’を特定する。
【０１９９】
［最適化問題２］
・入力：観測Ｏ、クエリＱ、ルール集合Ｌ、及び、ハイパーパラメタＣ
・最適化問題：
ｍｉｎｉｍｉｚｅ  ＤＬ（Ｌ'，Ｏ，Ｑ）
ｓｕｂｊｅｃｔ  ｔｏ  Ｃａｒｄ（Ｌ'）≦Ｃ
・出力：ルール部分集合Ｌ'
つまり、特定部１３０は、次の制約において、差異が最も小さくなるルール部分集合Ｌ'を特定する。制約は、ルール部分集合Ｌ'のルールＦの数（Ｃａｒｄ（Ｌ'））が、ハイパーパラメタＣ以下となることである。つまり、特定部１３０は、ルールＦの数（Ｃａｒｄ（Ｌ'））がハイパーパラメタＣ以下となるルール部分集合Ｌ'の中で、差異ＤＬ（Ｌ'，Ｏ，Ｑ）が最も小さくなるルール部分集合Ｌ'を特定する。あるいは、特定部１３０は、上記ルール部分集合Ｌ'を構成するルールＦを特定する。
【０２００】
なお、上記の最適化問題２は、除外されるルール部分集合Ｌ”を用いて、定義することもできる。その場合、最適化問題２は、次のようになる。
【０２０１】
［最適化問題２の別形式］
・入力：観測Ｏ、クエリＱ、ルール集合Ｌ、及び、ハイパーパラメタＣ
・最適化問題：
ｍａｘｉｍｉｚｅ  ＤＬ（Ｌ’，Ｏ，Ｑ）
ｓｕｂｊｅｃｔ  ｔｏ  Ｃａｒｄ（Ｌ”）≦Ｃ
・出力：ルール部分集合Ｌ”
なお、この場合の特定部１３０及び出力部１４０も、第３の実施形態と同様である。
【０２０２】
［効果の説明］
第４の実施形態の効果について説明する。
【０２０３】
第４の実施形態は、推論の根拠をユーザに提示する効果に加え、ルールＦの数がより少ないルール部分集合Ｌ’を特定できるとの効果を奏する。
【０２０４】
その理由は、第４の実施形態に係る特定部１３０が、ルール部分集合Ｌ’の要素（ルールＦ）の数（Ｃａｒｄ（Ｌ’））がハイパーパラメタＣ以下に納まるという制約の下で、差異ＤＬ（Ｌ’，Ｏ，Ｑ）の値を最小とするルール部分集合Ｌ’を特定するためである。つまり、特定部１３０は、観測Ｏの下で、クエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ’）に対する影響度の大きいルールＦを取り出せる。
【０２０５】
また、第４の実施形態に係る特定部１３０は、ルール部分集合Ｌ'の要素の個数（Ｃａｒｄ（Ｌ'））の値がハイパーパラメタＣ以下に納まるという制約の下で、差異ＤＬ（Ｌ'，Ｏ，Ｑ）の値を最小にするルール部分集合Ｌ'を特定する。そのため、第４の実施形態において特定されたルール部分集合Ｌ'におけるクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ'）は、制約の下で、ルール集合Ｌを用いて推論した場合のクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ）からの乖離が最も小さいルール部分集合Ｌ'となる。このように、第４の実施形態に係る特定部１３０は、ルール部分集合Ｌ'におけるクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ'）が、ルール集合Ｌを用いて推論した場合のクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ）から大きく乖離しないことを保証する。
【０２０６】
＜詳細な動作例＞
次に、図面を参照して、本発明における実施形態に係る詳細動作の一例を説明する。以下の説明は、第３の実施形態を用いて説明する。ただし、本動作例は、第３の実施形態に限定されない。
【０２０７】
本動作例の説明において、推論システム１０１は、貪欲法を用いて最適化問題１を解くとする。つまり、以下の説明において、特定部１３０は、ルール集合Ｌから、ルールＦを一つずつ除外していき、制約を満たす限りにおいて最小のルールＦの数（Ｃａｒｄ（Ｌ’））となるルール部分集合Ｌ’を、最適解とする。
【０２０８】
なお、これは、特定部１３０が用いる方法を、貪欲法に限定するものではない。例えば、特定部１３０は、複数のルールＦを減らす動作を繰り返してもよい。あるいは、特定部１３０は、一回の動作で、制約の下でルールＦの数が最小となるように、複数のルールＦを、全て同時に除外してもよい。
【０２０９】
以下の説明において、ルール部分集合Ｌ’は、複数となる。そこで、ルール部分集合Ｌ’に添え字ｉ（ｉ＝１，…，ｎ、ｎ＝自然数）を付して区別する。ルール集合Ｌから一つのルールＦを除外したルール部分集合Ｌ’を、Ｌ１とする。ルール部分集合Ｌ１から一つのルールＦを除外したルール部分集合Ｌ’を、Ｌ２とする。なお、ルール集合Ｌは、Ｌ０とする。
【０２１０】
あるルール部分集合ＬｉからルールＦｊを除外したルール部分集合をＬｉ＋１とした場合、この関係は、次のように表すとする。
【０２１１】
Ｌｉ＋１＝Ｌｉ＼｛Ｆｊ｝
さらに、ルール部分集合ＬｉにおけるクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌｉ）と、ルール部分集合Ｌｉ＋１におけるクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌｉ＋１）との差異「ＤＬｉ（Ｌｉ＋１，Ｏ，Ｑ）」を次のように定義する。
ＤＬｉ（Ｌｉ＋１，Ｏ，Ｑ）：＝Ｐ（Ｑ｜Ｏ，Ｌｉ＋１）−Ｐ（Ｑ｜Ｏ，Ｌｉ）＝Ｐ（Ｑ｜Ｏ，Ｌｉ＼｛Ｆｊ｝）−Ｐ（Ｑ｜Ｏ，Ｌｉ）
特定部１３０が、ルール部分集合Ｌ’として、ルールＦｊをｎ回除外した場合、ルール集合Ｌと最終的なルール部分集合Ｌ’との関係は、次のとおりである。
【０２１２】
Ｌ＝Ｌ０⊇Ｌ１⊇，…，⊇Ｌｎ＝Ｌ’
このとき、最適化問題１における制約条件に含まれる差異ＤＬ（Ｌ’，Ｏ，Ｑ）は、次の数２となる。
【０２１３】
【数２】
0006721036.tif 000003
【０２１４】
図面を参照して、具体的な動作を説明する。
【０２１５】
図３は、第３の実施形態に係る推論システム１０１の動作の一例を示すフローチャートである。
【０２１６】
特定部１３０は、情報（ルール集合Ｌ、観測Ｏ、クエリＱ、及び、ハイパーパラメタε）を取得する（ステップＳ２０１）。
【０２１７】
特定部１３０は、次の動作の前に、動作に用いる変数などのデータを初期化する動作を実行してもよい。例えば、特定部１３０は、以下の動作において、ルール集合ＬからルールＦを除外していく。そのため、特定部１３０は、例えば、ルール部分集合Ｌ’として用いる変数（以下、ＬＶとする）の初期値として、ルール集合Ｌを設定する。この動作は、例えば、「ＬＶ←Ｌ０」と表すことができる。
【０２１８】
あるいは、特定部１３０は、差異の合計として用いる変数（以下、ＳＤとする）を初期化してもよい。この動作は、例えば、「ＳＤ←０」と表すことできる。
【０２１９】
次に、特定部１３０は、動作が終了したか否かを判定する（ステップＳ２０２）。具体的な終了の条件は、いずれのルールＦを除外しても、差異の合計がハイパーパラメタε以下とならないことである。
【０２２０】
終了条件は、変数を用いて表すと、次のとおりである。
終了条件：｜Ｄ（ＬＶ＼｛Ｆｊ｝，Ｏ，Ｑ）＋ＳＤ｜＞ε（Ｆｊ∈ＬＶ）
終了でない場合（ステップＳ２０２でＮｏ）、特定部１３０は、除外された場合に差異の合計が最も小さくなるルールＦｊを特定する（ステップＳ２０３）。この場合の差異の合計は、「｜Ｄ（ＬＶ＼｛Ｆｊ｝，Ｏ，Ｑ）＋ＳＤ｜」である。なお、特定部１３０は、差異の合計に加え、差異（Ｄ（ＬＶ＼｛Ｆｊ｝，Ｏ，Ｑ））の大きさを判断基準に加えてもよい。
【０２２１】
次に、特定部１３０は、差異の合計を更新する（ステップＳ２０４）。例えば、特定部１３０は、「ＳＤ←Ｄ（ＬＶ＼｛Ｆｊ｝，Ｏ，Ｑ）＋ＳＤ」を実行する。
【０２２２】
そして、特定部１３０は、ルール部分集合ＬＶからステップＳ２０３で特定したルールＦｊを除外し、新たなルール部分集合ＬＶとする。つまり、特定部１３０は、特定したルールＦｊを除外して、ルール部分集合ＬＶを更新する（ステップＳ２０５）。例えば、特定部１３０は、「ＬＶ←ＬＶ＼｛Ｆｊ｝」を実行する。
【０２２３】
そして、特定部１３０は、ステップＳ２０２に戻り、終了か否かを判定する。特定部１３０は、終了条件が成立するまで、上記動作を繰り返す。
【０２２４】
動作が終了の場合（ステップＳ２０２でＹｅｓ）、特定部１３０は、その時点におけるルール部分集合ＬＶを最終的なルール部分集合Ｌ’とし（Ｌ’←ＬＶ）、最終的なルール部分集合Ｌ’を出力部１４０に送信する。
【０２２５】
ここで出力されたルール部分集合Ｌ’が、特定部１３０に特定されたルール部分集合Ｌ’である。また、ルール部分集合Ｌ’を構成するルールＦが、特定されたルールＦである。
【０２２６】
出力部１４０は、特定部１３０から受信したルール部分集合Ｌ’、つまり、特定部１３０が特定したルールＦの集合を出力する（ステップＳ２０６）。
【０２２７】
（データを用いた説明）
次に、詳細な動作について、具体的なデータを用いて説明する。
【０２２８】
図８は、以下の詳細な動作の説明に用いられるルール集合Ｌの一例を示す図である。図８に示されているように、ルール集合Ｌは、次に示す４つのルールＦ（ルールＦ１、ルールＦ２、ルールＦ３、及び、ルールＦ４）を含む。
Ｆ１＝走る（Ｒｕｎ）  →  脂肪を燃焼する（Ｂｕｒｎ  ｆａｔ）。
Ｆ２＝脂肪を燃焼する（Ｂｕｒｎ  ｆａｔ）  →  痩せる（Ｓｌｉｍ）。
Ｆ３＝脂肪を燃焼する（Ｂｕｒｎ  ｆａｔ）  →  空腹になる（Ｓｔａｒｖｅ）。
Ｆ４＝痩せる（Ｓｌｉｍ）  →  健康になる（Ｇｅｔ  ｈｅａｌｔｈｙ）。
【０２２９】
観測Ｏは、「走る」である。つまり、ルールＦ１が、観測Ｏを含むルールＦである。また、クエリＱは、「健康になる」である。つまり、ルールＦ４が、クエリＱを含むルールＦである。なお、以下の説明に用いる確率ＰとしてＭＬＮにおける確率Ｐを用いるため、各ルールＦには、重みｗが、付与されている。
【０２３０】
図９は、図８に示されているルール集合Ｌのグラフの一例を示す図である。なお、図９は、ＭＬＮと同様のグラフの構成を用いている。すなわち、図９は、図４と同様に、各述語をノードとし、同じルールＦに現れる述語同士をエッジで結ぶことを用いてルール集合Ｌをグラフ化している。
【０２３１】
なお、以下の説明において、制約は、「観測Ｏを含むルールＦ及びクエリＱを含むルールＦは、除外対象としない」とする。つまり、ルールＦ１及びルールＦ４は、除外対象から外されている。ハイパーパラメタεは、「０．３００００」とする。
【０２３２】
まず、特定部１３０は、上記データを取得する（ステップＳ２０１）。さらに、特定部１３０は、変数を初期化(ルール部分集合ＬＶ←ルール集合Ｌ、ＳＤ←０)する。
【０２３３】
なお、以下の説明の参考として、ルール集合Ｌと観測Ｏとの下におけるクエリＱの確率Ｐを次に示す。
【０２３４】
Ｐ（Ｑ｜Ｏ，｛Ｆ１，Ｆ２，Ｆ３，Ｆ４｝）＝０．９９９９５
特定部１３０は、観測Ｏを含むルールＦ１及びクエリＱを含むルールＦ４を除外しないため、特定部１３０は、ルールＦ２及びルールＦ３を除外した場合のクエリＱの確率Ｐを算出する。それぞれの確率Ｐは、次のとおりである。
Ｐ（Ｑ｜Ｏ，｛Ｆ１，Ｆ２，Ｆ４｝）＝０．９９９９５
Ｐ（Ｑ｜Ｏ，｛Ｆ１，Ｆ３，Ｆ４｝）＝０．６４７９９
ルールＦ２を除外した場合の確率Ｐと元の確率Ｐとの差異は、「０．３５１９６」である。この値は、ハイパーパラメタεより大きい。しかし、ルールＦ３を除外した場合の確率Ｐと元の確率Ｐとの差異は、「０．０００００」である。この値は、ハイパーパラメタεより小さい。そして、今の場合、ＳＤの値は、０である。つまり、終了条件｜Ｄ（ＬＶ＼｛Ｆ３｝，Ｏ，Ｑ）＋ＳＤ｜は、０であり、ハイパーパラメタεより小さい。そのため、特定部１３０は、終了でないと判定する（ステップＳ２０２でＮｏ）。
【０２３５】
特定部１３０は、除外したときの確率Ｐの差異が小さいルールＦ３を特定する（ステップＳ２０３）。
【０２３６】
なお、ルールＦ２を除外した場合の確率Ｐは、ルールＦ３を除外した場合に確率Ｐより低い。つまり、ルールＦ２を除外した場合の確率Ｐの変化量は、ルールＦ３を除外した場合の確率Ｐの変化量より大きい。このことより、ルールＦ２は、ルールＦ３より重要度が高いルールＦである。つまり、特定部１３０は、重要度が低いルールＦを特定している。
【０２３７】
特定部１３０は、差異の合計（ＳＤ）を更新する(ステップＳ２０４)。具体的には、特定部１３０は、「ＳＤ←ＳＤ＋０．０００００＝０．０００００」を実行する。
【０２３８】
そして、特定部１３０は、ルール部分集合ＬＶを更新する（ステップＳ２０５）。更新後のルール部分集合ＬＶは、｛Ｆ１，Ｆ２，Ｆ４｝である。
【０２３９】
次に、特定部１３０は、終了か否かを判定する（ステップＳ２０２）。
つまり、特定部１３０は、さらにルールＦ２を除外した場合のクエリＱの確率Ｐを算出する。この場合の確率Ｐは、次のとおりである。
Ｐ（Ｑ｜Ｏ，｛Ｆ１，Ｆ４｝）＝０．６４７９９
この場合の確率Ｐの差異の合計（ＳＤ）は、「０．３５１９６」となる。この差異は、ハイパーパラメタε（０．３００００）より大きい。そのため、特定部１３０は、終了であると判定する（ステップＳ２０２でＹｅｓ）。
【０２４０】
特定部１３０は、最終的なルール部分集合Ｌ’として、今のルール部分集合ＬＶ｛Ｆ１，Ｆ２，Ｆ４｝を特定する。つまり、特定部１３０は、ルールＦ１、ルールＦ２、及び、ルールＦ４を特定する。
【０２４１】
そして、出力部１４０は、特定されたルール部分集合Ｌ’（｛Ｆ１，Ｆ２，Ｆ４｝）を出力する（ステップＳ２０６）。
【０２４２】
図１０は、図９のルール集合Ｌにおいて特定されたルール部分集合Ｌ’の一例を示す図である。
【０２４３】
以下、参考として、図８及び図９に示されているルール集合Ｌに、ＭＬＮを用いた関連発明を適用した場合について説明する。関連発明は、重みｗを用いる。しかし、ルールＦ２とルールＦ３は、重みｗが同じである。そのため、関連発明は、ルールＦ２、又は、ルールＦ３のどちらを除外するか判定できない。そのため、関連発明は、元のルール集合Ｌ（｛Ｆ１，Ｆ２，Ｆ３，Ｆ４｝）、又は、ルールＦ２及びＦ３を除外したルール部分集合Ｌ’（｛Ｆ１，Ｆ４｝）を出力することとなる。
【０２４４】
図１１は、関連発明が出力するルール部分集合Ｌ’（｛Ｆ１，Ｆ４｝）の一例を示す図である。なお、ルール集合Ｌ（｛Ｆ１，Ｆ２，Ｆ３，Ｆ４｝）は、図９に示されている。
【０２４５】
しかし、ルール集合Ｌを出力する場合、出力結果は、ルールＦ３を含む冗長なルールの集合となっている。また、図１１に示されているルール部分集合Ｌ’（｛Ｆ１，Ｆ４｝）は、上記のように、ルール集合Ｌに対して、確率Ｐが大きく異なっている。
【０２４６】
このように、ＭＬＮを用いた関連発明は、適切なルール部分集合Ｌ’を出力できない。
【０２４７】
（その他のデータ例）
さらに、上記とは異なるデータにおける動作結果を説明する。以下の説明において、ルール集合Ｌと、特定部１３０における特定の結果としてのルール部分集合Ｌ’を示す。
【０２４８】
図１２は、第１のデータ例のルール集合Ｌを示す図である。観測Ｏは、述語Ａ１である。クエリＱは、述語Ａ３である。ルール集合Ｌを構成するルールＦは、次のとおりである。
Ｆ１：Ａ１→Ａ２（重み：１０）
Ｆ２：Ａ２→Ａ３（重み：１０）
Ｆ３：Ａ３→Ａ４（重み：１０）
Ｆ４：Ａ４→Ａ５（重み：１０）
この場合の確率Ｐ（Ｑ｜Ｏ，Ｌ）は、０．９９９９５である。
【０２４９】
図１３は、図１２に示された第１のデータ例を基に特定されたルール部分集合Ｌ’を示す図である。ルール部分集合Ｌ’における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．９９９９５である。なお、さらに、ルールＦ１を除外した場合における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．６４７９９となる。なお、ルール集合ＬからルールＦ１を除外した場合、つまり、ルール部分集合Ｌ’を｛Ｆ２，Ｆ３，Ｆ４｝とした場合における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．３７８０１となる。
【０２５０】
このように、推論システム１０１は、クエリＱの確率Ｐに影響がないルールＦ（重要度の低いルールＦ）を除外し、重要度が高いルールＦを特定できる。
【０２５１】
図１４は、第２のデータ例のルール集合Ｌを示す図である。観測Ｏは、述語Ａ４である。クエリＱは、述語Ａ３である。ルール集合ＬのルールＦは、図１２と同じである。この場合の確率Ｐ（Ｑ｜Ｏ，Ｌ）は、０．７５４９８である。
【０２５２】
図１５は、図１４に示された第２のデータ例を基に特定されたルール部分集合Ｌ’を示す図である。ルール部分集合Ｌ’における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．７５４９８である。なお、ルールＦ１を除外した場合、つまり、ルール部分集合Ｌ’を｛Ｆ２，Ｆ３，Ｆ４｝とした場合における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．６４７９９となる。
【０２５３】
このように、推論システム１０１は、観測Ｏを含むルールＦでも、クエリＱの確率Ｐに対して影響が弱いルールＦを除外し、重要度が高いルールＦを特定できる。
【０２５４】
図１６は、第３のデータ例のルール集合Ｌを示す図である。観測Ｏは、述語Ａ１及び述語Ａ４である。クエリＱは、述語Ａ３である。ルール集合ＬのルールＦは、図１２と同じである。この場合の確率Ｐ（Ｑ｜Ｏ，Ｌ）は、０．９９９９５である。
【０２５５】
図１７は、図１６に示された第３のデータ例を基に特定されたルール部分集合Ｌ’を示す図である。ルール部分集合Ｌ’における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．９９９９５である。なお、ルールＦ１を除外した場合、つまり、ルール部分集合Ｌ’を｛Ｆ２，Ｆ３，Ｆ４｝とした場合における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．６４７９９となる。
【０２５６】
このように、推論システム１０１は、観測Ｏを含むルールＦが複数ある場合でも、クエリＱの確率Ｐに対して影響が弱いルールＦを除外し、重要度が高いルールＦを特定できる。
【０２５７】
図１８は、第４のデータ例のルール集合Ｌを示す図である。観測Ｏは、述語Ａ１である。クエリＱは、述語Ａ３である。ルール集合ＬのルールＦは、次のとおりである。
Ｆ１：Ａ１→Ａ２（重み：１０）
Ｆ２：Ａ２→Ａ３（重み：１０）
Ｆ３：Ａ４→Ａ２（重み：１０）
この場合の確率Ｐ（Ｑ｜Ｏ，Ｌ）は、０．９９９９５である。
【０２５８】
図１９は、図１８に示された第４のデータ例を基に特定されたルール部分集合Ｌ’を示す図である。ルール部分集合Ｌ’における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．９９９９５である。なお、ルールＦ１を除外した場合、つまり、ルール部分集合Ｌ’を｛Ｆ２，Ｆ３｝とした場合における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．６４７９９となる。
【０２５９】
このように、推論システム１０１は、同様の接続状態のルールＦが複数あっても、優先的に観測Ｏを含むルールＦを特定できる。
【０２６０】
図２０は、第５のデータ例のルール集合Ｌを示す図である。観測Ｏは、述語Ａ１である。クエリＱは、述語Ａ３である。ルール集合ＬのルールＦは、次のとおりである。
Ｆ１：Ａ１→Ａ２（重み：１０）
Ｆ２：Ａ２→Ａ３（重み：１０）
Ｆ３：Ａ２→Ａ４（重み：１０）
この場合の確率Ｐ（Ｑ｜Ｏ，Ｌ）は、０．９９９９５である。
【０２６１】
図２１は、図２０に示された第５のデータ例を基に特定されたルール部分集合Ｌ’を示す図である。ルール部分集合Ｌ’における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．９９９９５である。なお、ルールＦ１を除外した場合、つまり、ルール部分集合Ｌ’を｛Ｆ２，Ｆ３｝とした場合における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．６０９９９となる。
【０２６２】
このように、推論システム１０１は、クエリＱの確率Ｐに影響がないルールＦを除外し、重要度が高いルールＦを特定できる。
【０２６３】
図２２は、第６のデータ例のルール集合Ｌを示す図である。観測Ｏは、述語Ａ１及び述語Ａ４である。クエリＱは、述語Ａ３である。ルール集合ＬのルールＦは、次のとおりである。
Ｆ１：Ａ１→Ａ２（重み：１００）
Ｆ２：Ａ２→Ａ３（重み：１０）
Ｆ３：Ａ４→Ａ２（重み：１）
この場合の確率Ｐ（Ｑ｜Ｏ，Ｌ）は、０．９９９９５である。
【０２６４】
図２３は、図２２に示された第６のデータ例を基に特定されたルール部分集合Ｌ’を示す図である。ルール部分集合Ｌ’における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．９９９９５である。なお、ルールＦ１を除外した場合、つまり、ルール部分集合Ｌ’を｛Ｆ２，Ｆ３｝とした場合における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．８２２９７となる。
【０２６５】
このように、推論システム１０１は、つながり方が同じ観測Ｏを含むルールＦが複数の場合でも、クエリＱの確率Ｐに影響が弱い観測Ｏを含むルールＦを除外し、重要度が高いルールＦを特定できる。
【０２６６】
図２４は、第７のデータ例のルール集合Ｌを示す図である。観測Ｏは、述語Ａ１及び述語Ａ４である。クエリＱは、述語Ａ３である。ルール集合ＬのルールＦは、次のとおりである。
Ｆ１：Ａ１→Ａ２（重み：１０）
Ｆ２：Ａ２→Ａ３（重み：１０）
Ｆ３：Ａ４→Ａ２（重み：１０）
この場合の確率Ｐ（Ｑ｜Ｏ，Ｌ）は、０．９９９９５である。
【０２６７】
図２５は、図２４に示された第７のデータ例を基に特定されたルール部分集合Ｌ’を示す図である。ルール部分集合Ｌ’における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．９９９９５である。なお、ルールＦ１を除外した場合、つまり、ルール部分集合Ｌ’を｛Ｆ２，Ｆ３｝とした場合における確率Ｐ（Ｑ｜Ｏ，Ｌ’）は、０．７５３００となる。
【０２６８】
このように、推論システム１０１は、重みｗが同じ観測Ｏを含むルールＦが複数の場合でも、クエリＱの確率Ｐに影響が弱い観測Ｏを含むルールＦを除外し、重要度が高いルールＦを特定できる。
【０２６９】
＜ハードウェア構成＞
推論システム１００及び推論システム１０１のハードウェア構成について説明する。
【０２７０】
以上の説明した推論システム１００及び推論システム１０１は、次のように構成される。
【０２７１】
推論システム１００及び推論システム１０１の各構成要素の一部又は全部は、汎用又は専用の回路（ｃｉｒｃｕｉｔｒｙ）、プロセッサ等、又は、これらの組合せを用いて実現される。これらは、単一のチップを用いて構成されてもよいし、バスを介して接続された複数のチップを用いて構成されてもよい。推論システム１００及び推論システム１０１の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せを用いて実現されてもよい。
【０２７２】
推論システム１００及び推論システム１０１の各構成要素の一部又は全部が、複数の情報処理装置又は回路等を用いて実現される場合には、複数の情報処理装置又は回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置又は回路等は、クライアントアンドサーバシステム、又は、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【０２７３】
また、推論システム１００及び推論システム１０１において、複数の構成部は、１つのハードウェアで構成されてもよい。
【０２７４】
また、推論システム１００及び推論システム１０１は、ＣＰＵ（Central Processing Unit）と、ＲＯＭ（Read Only Memory）と、ＲＡＭ（Random Access Memory）とを含むコンピュータ装置として実現されてもよい。推論システム１００及び推論システム１０１は、上記構成に加え、さらに、入出力接続回路（ＩＯＣ：Input / Output Circuit）と、ネットワークインターフェース回路（ＮＩＣ：Network Interface Circuit）とを含むコンピュータ装置として実現されてもよい。
【０２７５】
図２６は、推論システム１００及び推論システム１０１に係るハードウェアの構成の一例である情報処理装置６００の構成を示すブロック図である。
【０２７６】
情報処理装置６００は、ＣＰＵ６１０と、ＲＯＭ６２０と、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを含み、コンピュータ装置を構成している。
【０２７７】
ＣＰＵ６１０は、ＲＯＭ６２０からプログラムを読み込む。そして、ＣＰＵ６１０は、読み込んだプログラムに基づいて、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを制御する。そして、ＣＰＵ６１０を含むコンピュータは、これらの構成を制御し、図１に示される、算出部１１０と、出力部１２０としての各機能を実現する。あるいは、ＣＰＵ６１０を含むコンピュータは、これらの構成を制御し、図２に示される、特定部１３０と、出力部１４０としての各機能を実現する。
【０２７８】
ＣＰＵ６１０は、各機能を実現する際に、ＲＡＭ６３０又は内部記憶装置６４０を、プログラムの一時記憶媒体として使用してもよい。
【０２７９】
また、ＣＰＵ６１０は、コンピュータで読み取り可能にプログラムを記憶した記憶媒体７００が含むプログラムを、図示しない記憶媒体読み取り装置を用いて読み込んでもよい。あるいは、ＣＰＵ６１０は、ＮＩＣ６８０を介して、図示しない外部の装置からプログラムを受け取り、ＲＡＭ６３０に保存して、保存したプログラムを基に動作してもよい。
【０２８０】
ＲＯＭ６２０は、ＣＰＵ６１０が実行するプログラム及び固定的なデータを記憶する。ＲＯＭ６２０は、例えば、Ｐ−ＲＯＭ（Programmable-ROM）又はフラッシュＲＯＭである。
【０２８１】
ＲＡＭ６３０は、ＣＰＵ６１０が実行するプログラム及びデータを一時的に記憶する。ＲＡＭ６３０は、例えば、Ｄ−ＲＡＭ（Dynamic-RAM）である。
【０２８２】
内部記憶装置６４０は、情報処理装置６００が長期的に保存するデータ及びプログラムを記憶する。また、内部記憶装置６４０は、ＣＰＵ６１０の一時記憶装置として動作してもよい。内部記憶装置６４０は、例えば、ハードディスク装置、光磁気ディスク装置、ＳＳＤ（Solid State Drive）又はディスクアレイ装置である。
【０２８３】
ここで、ＲＯＭ６２０と内部記憶装置６４０は、不揮発性（non-transitory）の記憶媒体である。一方、ＲＡＭ６３０は、揮発性（transitory）の記憶媒体である。そして、ＣＰＵ６１０は、ＲＯＭ６２０、内部記憶装置６４０、又は、ＲＡＭ６３０に記憶されているプログラムを基に動作可能である。つまり、ＣＰＵ６１０は、不揮発性記憶媒体又は揮発性記憶媒体を用いて動作可能である。
【０２８４】
ＩＯＣ６５０は、ＣＰＵ６１０と、入力機器６６０及び表示機器６７０とのデータを仲介する。ＩＯＣ６５０は、例えば、ＩＯインターフェースカード又はＵＳＢ（Universal Serial Bus）カードである。さらに、ＩＯＣ６５０は、ＵＳＢのような有線に限らず、無線を用いてもよい。
【０２８５】
入力機器６６０は、情報処理装置６００の操作者からの入力指示を受け取る機器である。入力機器６６０は、例えば、キーボード、マウス又はタッチパネルである。
【０２８６】
表示機器６７０は、情報処理装置６００の操作者に情報を表示する機器である。表示機器６７０は、例えば、液晶ディスプレイである。表示機器６７０は、出力部１２０又は出力部１４０として動作してもよい。
【０２８７】
ＮＩＣ６８０は、ネットワークを介した図示しない外部の装置とのデータのやり取りを中継する。ＮＩＣ６８０は、例えば、ＬＡＮ（Local Area Network）カードである。さらに、ＮＩＣ６８０は、有線に限らず、無線を用いてもよい。
【０２８８】
このように構成された情報処理装置６００は、推論システム１００及び推論システム１０１と同様の効果を得ることができる。
【０２８９】
その理由は、情報処理装置６００のＣＰＵ６１０が、プログラムに基づいて推論システム１００及び推論システム１０１と同様の機能を実現できるためである。
【０２９０】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
［付記１］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから一つのルールを除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、
除外されたルール毎に、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する算出手段と、
除外されたルール毎に、ルールとルールの重要度とを関連付けて出力する出力手段と、
を備える推論システム。
［付記２］
出力手段は、重要度の高いルールを重要度の低いルールよりも優先して出力する、
付記１に記載の推論システム。
［付記３］
出力手段は、ルールとルールの重要度と、ルールに対して予め算出された重みの値と、を関連付けて出力する、
付記１又は２に記載の推論システム。
［付記４］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、
第３のルール集合に対して、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する算出手段と、
除外された第３のルール集合毎に、第３のルール集合と第３のルール集合の重要度とを関連付けて出力する出力手段と、
を備える推論システム。
［付記５］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、
第２のルール集合を構成するルールを、第２のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を小さくするように特定する特定手段と、
特定された第２のルール集合を出力する出力手段と、
を備える推論システム。
［付記６］
特定手段は、差異を閾値以下にするという制約が満たされるように、かつ、第２のルール集合を構成するルールの数を少なくするように第２のルール集合を構成するルールを特定する、
付記５に記載の推論システム。
［付記７］
特定手段は、第２のルール集合を構成するルールの数量を閾値以下にするという制約が満たされるように、かつ、差異を小さくするように第２のルール集合を構成するルールを特定する、
付記５に記載の推論システム。
［付記８］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、
第３のルール集合を構成するルールを、第３のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を大きくするように特定する特定手段と、
特定された第３のルール集合を出力する出力手段と、
を備える推論システム。
［付記９］
特定手段は、差異を閾値以上にするという制約が満たされるように、かつ、第３のルール集合を構成するルールの数を少なくするように第３のルール集合を構成するルールを特定する、
付記８に記載の推論システム。
［付記１０］
特定手段は、第３のルール集合を構成するルールの数量を閾値以下にするという制約が満たされるように、かつ、差異を大きくするように第３のルール集合を構成するルールを特定する、
付記８に記載の推論システム。
［付記１１］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
推論システムが、
第１のルール集合を構成するルールから一つのルールを除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、
除外されたルール毎に、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出し、
除外されたルール毎に、ルールとルールの重要度とを関連付けて出力する
推論方法。
［付記１２］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
推論システムが、
第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、
第３のルール集合に対して、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出し、
除外された第３のルール集合毎に、第３のルール集合と第３のルール集合の重要度とを関連付けて出力する
推論方法。
［付記１３］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
推論システムが、
第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、
第２のルール集合を構成するルールを、第２のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を小さくするように特定し、
特定された第２のルール集合を出力する
推論方法。
［付記１４］
推論システムが、
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、
第３のルール集合を構成するルールを、第３のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を大きくするように特定し、
特定された第３のルール集合を出力する
推論方法。
［付記１５］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから一つのルールを除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、
除外されたルール毎に、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する処理と、
除外されたルール毎に、ルールとルールの重要度とを関連付けて出力する処理と、
をコンピュータに実行させるプログラム。
［付記１６］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を第２の推論結果とするとき、
第３のルール集合に対して、第１の推論結果と第２の推論結果との差異の大きさを示す指標である重要度を算出する処理と、
除外された第３のルール集合毎に、第３のルール集合と第３のルール集合の重要度とを関連付けて出力する処理と、
をコンピュータに実行させるプログラム。
［付記１７］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、
第２のルール集合を構成するルールを、第２のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を小さくするように特定する処理と、
特定された第２のルール集合を出力する処理と、
をコンピュータに実行させるプログラム。
［付記１８］
開始状態及びルール集合から終了状態が成り立つ確率を推論する推論システムにおいて、
第１のルール集合を構成するルールから第１のルール集合の部分集合である第３のルール集合を除外したルール集合を第２のルール集合とし、開始状態及び第１のルール集合から終了状態が成り立つ確率を推論した結果を第１の推論結果とし、開始状態及び第２のルール集合から終了状態が成り立つ確率を推論した結果を第２の推論結果とするとき、
第３のルール集合を構成するルールを、第３のルール集合を構成するルールの数量を限定しつつ、第１の推論結果と第２の推論結果との差異を大きくするように特定する処理と、
特定された第３のルール集合を出力する処理と、
をコンピュータに実行させるプログラム。
【０２９１】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０２９２】
この出願は、２０１６年  ３月１５日に出願された日本出願特願２０１６−０５０３７３を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０２９３】
本発明は、確率的論理推論手法をコアに据えた人工知能に基づく人間の知的労働の支援において、人工知能の推論の結果に至る根拠を端的に説明する用途に適用できる。【０２９４】
本発明は、ＭＬＮ又はＰＳＬなどの推論手法に限らず、論理式を基に確率変数を定義して推論を行う確率的論理推論手法で、観測とクエリとを入力として、観測の下でのクエリの事後確率を求めるという推論を行う場合に広く適用できる。
【符号の説明】
【０２９５】
１００    推論システム
１０１    推論システム
１１０    算出部
１２０    出力部
１３０    特定部
１４０    出力部
６００    情報処理装置
６１０    ＣＰＵ
６２０    ＲＯＭ
６３０    ＲＡＭ
６４０    内部記憶装置
６５０    ＩＯＣ
６６０    入力機器
６７０    表示機器
６８０    ＮＩＣ
７００    記憶媒体
【図１】
0006721036.tif 000004
【図２】
0006721036.tif 000005
【図３】
0006721036.tif 000006
【図４】
0006721036.tif 000007
【図５】
0006721036.tif 000008
【図６】
0006721036.tif 000009
【図７】
0006721036.tif 000010
【図８】
0006721036.tif 000011
【図９】
0006721036.tif 000012
【図１０】
0006721036.tif 000013
【図１１】
0006721036.tif 000014
【図１２】
0006721036.tif 000015
【図１３】
0006721036.tif 000016
【図１４】
0006721036.tif 000017
【図１５】
0006721036.tif 000018
【図１６】
0006721036.tif 000019
【図１７】
0006721036.tif 000020
【図１８】
0006721036.tif 000021
【図１９】
0006721036.tif 000022
【図２０】
0006721036.tif 000023
【図２１】
0006721036.tif 000024
【図２２】
0006721036.tif 000025
【図２３】
0006721036.tif 000026
【図２４】
0006721036.tif 000027
【図２５】
0006721036.tif 000028
【図２６】
0006721036.tif 000029