(57)【特許請求の範囲】
【請求項１】
開始状態及び第１のルール集合から終了状態への推論に関連する推論システムにおいて、
前記第１のルール集合から第２のルール集合を選択するために用いられるパラメータを受け付ける受付手段と、
前記パラメータに対応する前記第２のルール集合を可視化する可視化手段と
を含み、
前記パラメータが、前記第１のルール集合から一つ又は複数のルールを除外して前記第２のルール集合を選択するためのパラメータであり、
前記可視化手段は、
前記第１のルール集合と前記第２のルール集合との差を可視化し、
前記第２のルール集合において前記開始状態から前記終了状態までの第１の経路が切れている場合、前記開始状態から前記終了状態への向きにたどった末端のルールまでの第２の経路、及び、前記終了状態から前記開始状態への向きにたどった末端のルールまでの第３の経路を可視化し、
さらに、前記第１のルール集合と前記第２のルール集合との差に含まれるルールの中で、前記第２の経路及び前記第３の経路をつなぐルールを可視化する
推論システム。
【請求項２】
前記可視化手段は、
前記第１の経路において切れている位置に追加されたルールを可視化する
請求項１に記載の推論システム。
【請求項３】
前記可視化手段は、
複数の前記パラメータに関連付けて前記第２のルール集合を可視化する
請求項１又は２に記載の推論システム。
【請求項４】
前記受付手段は、
前記パラメータの設定可能な範囲に対する設定する前記パラメータの値に対応する情報を用いて前記パラメータを受け付ける
請求項１ないし３のいずれか１項に記載の推論システム。
【請求項５】
前記開始状態及び前記第１のルール集合から前記終了状態が成り立つ確率を第１の推論結果とし、
前記開始状態及び前記第２のルール集合から前記終了状態が成り立つ確率を第２の推論結果とするときに、
前記パラメータが、前記第１の推論結果と前記第２の推論結果との比較結果に関連する
請求項１ないし４のいずれか１項に記載の推論システム。
【請求項６】
前記パラメータが、
前記第２のルール集合に含まれるルールの数に関連する
請求項１ないし５のいずれか１項に記載の推論システム。
【請求項７】
開始状態及び第１のルール集合から終了状態への推論に関連する推論システムが、
前記第１のルール集合から第２のルール集合を選択するために用いられるパラメータを受け付け、
前記パラメータに対応した前記第２のルール集合を可視化し、さらに、
前記第１のルール集合と前記第２のルール集合との差を可視化し、
前記第２のルール集合において前記開始状態から前記終了状態までの第１の経路が切れている場合、前記開始状態から前記終了状態への向きにたどった末端のルールまでの第２の経路、及び、前記終了状態から前記開始状態への向きにたどった末端のルールまでの第３の経路を可視化し、
さらに、前記第１のルール集合と前記第２のルール集合との差に含まれるルールの中で、前記第２の経路及び前記第３の経路をつなぐルールを可視化する
推論方法。
【請求項８】
開始状態及び第１のルール集合から終了状態への推論に関連するコンピュータにおいて、
前記第１のルール集合から第２のルール集合を選択するために用いられるパラメータを受け付ける処理と、
前記パラメータに対応した前記第２のルール集合を可視化する処理と
前記第１のルール集合と前記第２のルール集合との差を可視化する処理と、
前記第２のルール集合において前記開始状態から前記終了状態までの第１の経路が切れている場合、前記開始状態から前記終了状態への向きにたどった末端のルールまでの第２の経路、及び、前記終了状態から前記開始状態への向きにたどった末端のルールまでの第３の経路を可視化する処理と、
さらに、前記第１のルール集合と前記第２のルール集合との差に含まれるルールの中で、前記第２の経路及び前記第３の経路をつなぐルールを可視化する処理と
を前記コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推論に関連する情報を出力する推論システム、情報処理システム、推論方法、及び、プログラムに関する。
【背景技術】
【０００２】
所定の規則又は基準に基づいて、論理式（以下、「ルール」と呼ぶ）の集合から、推論を実行するシステムがある。このようなシステムは、推論システムと呼ばれている（例えば、特許文献１、及び、非特許文献１を参照）。推論システムは、有向グラフ又は無向グラフなどを用いて視覚的に表現される（例えば、特許文献２を参照）。【０００３】
初期の推論システムは、判断基準として、論理式のみを用いていた。しかし、近年では、論理式のような確定的な判断基準に限らず、確率的な判断基準を用いた推論システムが利用可能となっている。【０００４】
このような確率的な推論システムは、ルール集合を基に確率変数を定義し、確率的な論理推論を実行する。例えば、推論システムは、観測とクエリとを入力として、観測とルール集合とからクエリが成り立つ確率である事後確率を算出する。【０００５】
このような推論手法として、例えば、Probabilistic Soft Logic（ＰＳＬ（例えば、非特許文献２を参照））及びMarkov Logic Network（ＭＬＮ（例えば、非特許文献３を参照））がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１５／１４５５５５号
【特許文献２】特開平０９−２０４３０９号公報
【非特許文献】
【０００７】
【非特許文献１】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.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
非特許文献１ないし３に記載の技術は、ルール集合、入力された観測、及び、入力されたクエリに基づいて、その観測及びルール集合から、そのクエリが成り立つ事後確率を算出する。【０００９】
以降、「観測及びルール集合からクエリが成り立つ事後確率」を「推論結果」と呼ぶ。【００１０】
非特許文献１ないし３に記載の技術は、算出した推論結果を出力できる。しかし、非特許文献１ないし３に記載の技術は、ルール集合及び観測からクエリが成り立つ事後確率である推論結果がどのように算出されたのか、言い換えると、推論結果に至る推論の過程又は根拠（理由）を出力していない。【００１１】
しかし、本発明の発明者は、推論システムが用いられる場面において、推論システムが、推論結果に限らず、推論結果に至る推論の過程又は根拠を提示することが望ましい場合があることを見いだした。【００１２】
例えば、推論システムの利用者が、自己の意思決定をサポートするために、推論システムを利用する場合を想定する。この場合、利用者にとって、推論システムが算出した推論結果のみを用いた意思決定より、推論結果に加え推論結果に至る推論の過程又は根拠を用いた意思決定の方が、より深い洞察に基づく意思決定となる。例えば、利用者は、推論結果に至る推論の過程又は根拠に基づいて、その推論結果がどの程度信頼できるかなどを判断できる。【００１３】
このように、推論システムの利用者は、推論結果に至る推論の過程又は根拠を知ることができると、推論結果に対する知見を増やすことができる。このことは、本発明の発明者により得られた知見である。【００１４】
しかし、推論システムに用いられている内部モデル及び動作プロセスは、多くの場合、膨大で、解釈性に乏しい。例えば、ＭＬＮの場合、観測とクエリとを含む連結なネットワークに現れる全てのルールが、推論結果に影響する。さらに、各ルールは、推論結果の確率に対する寄与として、複雑な数式を介して関係している（例えば、非特許文献３を参照)。そのため、例えば、「推論に用いたルール集合」を抽出する場合、抽出されるルール集合は、観測とクエリとを含む連結なネットワークに現れる全てのルールを含むルール集合となる。【００１５】
さらに、確率的な推論システムが用いるルールには、結果に対する影響が大きいルールから、ほとんど影響を与えないルールまで、多くのルールが含まれる。そのため、例えば、「推論に用いたルール集合」を抽出する場合、抽出されるルール集合は、ほとんど影響を与えないルールを含む冗長なルール集合となる。そのため、利用者は、抽出されたルール集合において、どのルールが推論結果に至る推論の過程又は根拠において影響が大きいルールであるかを知ることができない。つまり、利用者は、抽出されたルール集合の全体を用いる場合、推論結果に至る推論の過程又は根拠を知ることができない。【００１６】
このように、非特許文献１ないし３は、推論結果に至る推論の過程又は根拠を提示できないという問題点があった。【００１７】
特許文献１及び２に記載の発明も、上記の課題を解決しない。【００１８】
本発明の目的は、上記問題点を解決し、推論の過程又は根拠を提示する推論システム、情報処理システム、推論方法、及び、プログラムを提供することにある。
【課題を解決するための手段】
【００１９】
本発明の一形態における推論システムは、開始状態及び第１のルール集合から終了状態への推論に関連する推論システムにおいて、第１のルール集合から第２のルール集合を選択するために用いられるパラメータを受け付ける受付手段と、パラメータに対応する第２のルール集合を可視化する可視化手段とを含む。【００２０】
本発明の一形態における情報処理システムは、上記の推論システムと、パラメータを基に、所定に最適化問題の解として第２のルール集合を選択する最適化手段とを含む。【００２１】
本発明の一形態における推論方法は、開始状態及び第１のルール集合から終了状態への推論に関連する推論システムにおいて、第１のルール集合から第２のルール集合を選択するために用いられるパラメータを受け付け、パラメータに対応した第２のルール集合を可視化する。
【００２２】
本発明の一形態におけるプログラムは、開始状態及び第１のルール集合から終了状態への推論に関連するコンピュータにおいて、第１のルール集合から第２のルール集合を選択するために用いられるパラメータを受け付ける処理と、パラメータに対応した第２のルール集合を可視化する処理とをコンピュータに実行させる。
【発明の効果】
【００２３】
本発明に基づけば、推論の過程又は根拠を提示するとの効果を奏することができる。
【図面の簡単な説明】
【００２４】
【図１】図１は、第１の実施形態に係る推論システムの構成の一例を示すブロック図である。
【図２】図２は、ルール集合の第１の例を示す図である。
【図３】図３は、所定のパラメータにおけるルール部分集合の一例を示す図である。
【図４】図４は、図３とは異なるパラメータにおけるルール部分集合の一例を示す図である。
【図５】図５は、ルール集合の可視化の一例を示す図である。
【図６】図６は、所定のパラメータの値の場合の可視化の一例を示す図である。
【図７】図７は、ルール集合の第２の例を示す図である。
【図８】図８は、ルール集合の第２の例において、所定のパラメータにおけるルール部分集合の一例を示す図である。
【図９】図９は、ルール集合の第２の例に追加するルールの一例を示す図である。
【図１０】図１０は、別の可視化を説明するためのルール集合の第３の例を示す図である。
【図１１】図１１は、複数のパラメータに対応した可視化の一例を示す図である。
【図１２】図１２は、第１の実施形態に係る推論システムの動作の一例を示すフローチャートである。
【図１３】図１３は、推論システムを含む情報処理システムの一例を示すブロック図である。
【図１４】図１４は、推論システムに係るハードウェアの構成の一例である情報処理装置の構成を示すブロック図である。
【発明を実施するための形態】
【００２５】
次に、本発明の実施形態について図面を参照して説明する。
【００２６】
なお、各図面は、本発明の実施形態を説明するためのものである。ただし、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。
【００２７】
［用語の説明］
まず、本実施形態の説明に用いる用語について整理する。
【００２８】
「アトム」とは、部分論理式を持たない論理式（原子論理式又は素論理式）である。アトムの例は、命題変数又は述語である。以下の説明では、アトムの例として、主として述語を用いる。例えば、アトムの一例は、Ｘを変数とした場合の、「Ｘがたばこを吸う」である。なお、アトムは、関数形式を用いて表される場合もある。例えば、上記の「Ｘがたばこを吸う」は、「Ｓｍｏｋｅｓ（Ｘ）」のように表されてもよい。なお、アトムは、複数の変数を含んでもよい。例えば、この場合のアトムの一例は、「ＸとＹとが友人である」である。なお、関数形式を用いると、例えば、「ＸとＹとが友人である」は、「Ｆｒｉｅｎｄｓ（Ｘ，Ｙ）」となる。
【００２９】
「グラウンドアトム」とは、アトムにおける変数に定数が代入されたアトムである。例えば、上記の「Ｘはたばこを吸う」の変数Ｘに特定の人物を代入したアトムが、グラウンドアトムである。具体的には、例えば、変数Ｘに人物Ｂｏｂを代入した場合のグラウンドアトムは、「Ｂｏｂがたばこを吸う」である。グラウンドアトムには、真理値（Ｔｒｕｅ（１）又はＦａｌｓｅ（０））を割り当てることができる。Ｂｏｂがたばこを吸う場合、このグラウンドアトムは、Ｔｒｕｅとなる。Ｂｏｂがたばこを吸わない場合、このグラウンドアトムは、Ｆａｌｓｅとなる。
【００３０】
「ルール」とは、論理式であり、一般的に上記のアトムを含む論理式である。以下の説明で用いるルールは、述語論理のルールとする。したがって、ルールは、述語を含む。すなわち、ルールは、命題、述語、定数、変数、及び、論理記号（∀、∃、¬、∧、∨、→、←、又は、⇔）を用いて記述される。本発明における実施形態が用いるルールは、後ほど説明するスコアが付与されている。なお、以下の説明では、説明の便宜のため、一階述語論理のルールを用いて説明する。ただし、本発明は、一階述語論理に限定されるわけではない。
【００３１】
なお、上記の論理記号は、一般的な述語論理に用いられる記号であり、その意味は、次のとおりである。
【００３２】
「∀」は、「任意の〜について」又は「全ての〜について」を意味する論理記号である。「∀」は、全称記号、全称量化記号、又は、普遍記号と呼ばれている。
【００３３】
「∃」は、「（条件）を満たす〜が存在する」又は「ある〜に対して」を意味する論理記号である。「∃」は、存在記号、特称記号、又は、存在量化記号と呼ばれている。
【００３４】
「¬」は、否定を表す論理記号である。
【００３５】
「∧」は、連言又は論理積を表す論理記号である。
【００３６】
「∨」は、選言又は論理和を表す論理記号である。
【００３７】
「→」は、含意を表す論理記号である。例えば、「Ａ→Ｂ」は、「ＡならばＢ」を意味する。「Ａ→Ｂ」は、「¬Ａ∨Ｂ」と同値である。
【００３８】
「←」は、「→」の反対の方向の論理を示す論理記号である。例えば、「Ａ←Ｂ」は、「ＢならばＡ」を意味する。
【００３９】
「⇔」は、同値を示す論理記号である。「Ａ⇔Ｂ」は、「（Ａ→Ｂ）∧（Ａ←Ｂ）」である。
【００４０】
なお、以下の説明において、ルールとして、アトムを２つ又は３つ含むルール（例えば、Ａ∧Ｂ→Ｃ）を用いる。ただし、これは、説明の便宜のためである。各実施形態は、４つ以上のアトムを含むルールを用いてもよい。
【００４１】
「観測」とは、一つ又は複数のグラウンドアトムに真理値が割り当てられることである。つまり、観測は、グラウンドアトムとその真理値との組からなる集合である。このように、観測に含まれるグラウンドアトムは、真理値が割り当てられている。つまり、観測に含まれるグラウンドアトムは、真理値が決定している。
【００４２】
「観測する」とは、真理値が割り当てられたグラウンドアトムを取得する動作である。なお、各実施形態における観測の送信元は、特に制限されない。各実施形態は、例えば、利用者から観測を受け取ってもよく、センサなど図示しない装置又は機器から観測を受け取ってもよい。
【００４３】
「クエリ」とは、観測とルール集合とから事後確率を算出される対象となるグラウンドアトム又はグラウンドアトムの論理結合である。つまり、クエリは、要素として、少なくとも一つのグラウンドアトム又はグラウンドアトムの論理結合を含む集合である。さらに、クエリは、推論の対象である。なお、各実施形態におけるクエリの送信元は、特に制限されない。各実施形態は、例えば、直接的又は間接的に、利用者からクエリを受け取ってもよい。
【００４４】
なお、請求の範囲に記載の「開始状態」は、観測に相当する。また、請求の範囲に記載の「終了状態」は、クエリに相当する。
【００４５】
「スコア」とは、所定の規則に基づいてルールに付与される値である。スコアは、ルールが推論の過程又は根拠に関連する程度を示す情報である。ただし、各実施形態に用いられるスコアは、特に制限されない。例えば、スコアは、ルールが推論の結果に与える影響の大きさを表す数値でもよい。あるいは、スコアは、ルールの信頼度でもよい。ここで、ルールの信頼度とは、例えば、ＭＬＮにおいて用いられるスコアである。
【００４６】
あるいは、スコアは、そのルールが含まれるルール集合における観測からクエリが成り立つ確率と、そのルールを除外したルール集合における観測からクエリが成り立つ確率との比較結果（例えば、差異、変化量、又は、比率）でもよい。
【００４７】
あるいは、スコアは、ルール集合に含まれるルールの数でもよい。
【００４８】
なお、各実施形態の説明において、スコアは、予め、設定されているとする。ただし、各実施形態は、これに限定されるものではない。例えば、後ほど説明する推論システム１００が、可視化の処理の前に、ルールのスコアを算出してもよい。
【００４９】
なお、スコアは、ルールに限らず複数のルールを含む集合（以下、「ルール部分集合」と呼ぶ）に設定されてもよい。例えば、ルール部分集合のスコアは、そのルール部分集合に含まれるルールのスコアの合計でもよい。あるいは、ルール部分集合のスコアは、ルールの全体（以下、「ルール集合」と呼ぶ）における上記確率と、ルール集合からそのルール部分集合を除外した場合における上記の確率との差異でもよい。あるいは、ルール部分集合のスコアは、ルール集合から、そのルール部分集合以外のルールを除外した場合における上記の確率の差異でもよい。このように、スコアの付与方法は、特に制限されない。ただし、ルール部分集合の作成方法は、ルール集合からルールを除外する場合に限られない。ルール部分集合は、ルール集合から所定のパラメータに基づいて選択されたルールの集合であればよい。つまり、ルールの除外は、ルール集合からルール部分集合を選択する処理の一例である。ただし、以下の説明では、一例として、ルールの除外を用いて説明する。
【００５０】
なお、ルール部分集合に含まれるルールは、一つの場合もある。したがって、以下の説明において、ルール部分集合は、一つのルールの場合を含むとする。
【００５１】
［記号の説明］
次に、以下の説明に用いる記号について説明する。
【００５２】
「関数Ｃａｒｄ（Ｓ）」は、引き数となっている集合Ｓの元（要素）の個数を表す関数である。
【００５３】
「ルールＦ」は、グラウンドされたルール、つまり、変数の値が決定しているルールである。
【００５４】
「ルール集合Ｌ」は、ルールＦの全体のルール集合（以下、第１のルール集合と呼ぶ）である。
【００５５】
「ルール部分集合Ｌ’」は、ルール集合Ｌから、一つ又は複数のルールＦを除外した残りであるルール集合Ｌの部分集合（以下、第２のルール集合と呼ぶ）である。
【００５６】
「ルール部分集合Ｌ”」は、上記において除外された一つ又は複数のルールＦの部分集合（第３のルール集合）である。
【００５７】
ルール集合Ｌと、ルール部分集合Ｌ’と、ルール部分集合Ｌ”との関係は、次のとおりである。
Ｌ'⊆Ｌ、Ｌ”⊆Ｌ、Ｌ’∪Ｌ”＝Ｌ、Ｌ’∩Ｌ”＝φ
「観測Ｏ」は、グラウンドアトムとその真理値との組（ペア）の集合である。以下の説明では、観測Ｏは、空集合でないとする。
【００５８】
「クエリＱ」は、少なくとも一つのグラウンドアトム又はグラウンドアトムの論理結合を含む集合である。
【００５９】
「確率Ｐ（Ｑ｜Ｏ，Ｌ）」は、ルール集合Ｌ及び観測ＯからクエリＱが成り立つ確率である。ルール部分集合Ｌ’及び観測ＯからクエリＱが成り立つ確率は、「確率Ｐ（Ｑ｜Ｏ，Ｌ’）」である。
【００６０】
「差異ＤＬ（Ｌ'，Ｏ，Ｑ）」は、観測Ｏ及びルール部分集合Ｌ'からクエリＱが成り立つ確率Ｐ（Ｑ｜Ｏ，Ｌ'）と、観測Ｏ及びルール集合ＬからクエリＱが成り立つクエリＱの確率Ｐ（Ｑ｜Ｏ，Ｌ）との差異（変化量）である。差異ＤＬ（Ｌ'，Ｏ，Ｑ）は、数式を用いて表すと、次のようになる。
差異ＤＬ（Ｌ'，Ｏ，Ｑ）＝Ｐ（Ｑ｜Ｏ，Ｌ'）−Ｐ（Ｑ｜Ｏ，Ｌ）
つまり、差異ＤＬ（Ｌ'，Ｏ，Ｑ）は、確率の差異である。なお、差異ＤＬ（Ｌ'，Ｏ，Ｑ）の値は、正の値、負の値、又は、０となる。なお、差異ＤＬ（Ｌ'，Ｏ，Ｑ）は、スコアの一例である。
【００６１】
［推論の例］
本発明における各実施形態の処理に関連する最適化問題及び最適化問題に用いられる推論は、限定されない。ただし、各実施形態の説明の参考として、推論に用いられる最適化問題とそのパラメータの例を説明する。
【００６２】
（１）第１の最適化問題
第１の最適化問題は、次のとおりである。
ｍｉｎｉｍｉｚｅ  Ｃａｒｄ（Ｌ’）
ｓｕｂｊｅｃｔ  ｔｏ  ＤＬ（Ｌ'，Ｏ，Ｑ）≦ε
この場合、パラメータεは、差異ＤＬ（Ｌ'，Ｏ，Ｑ）の上限を決定するパラメータである。
【００６３】
第１の最適化問題は、差異ＤＬ（Ｌ'，Ｏ，Ｑ）がパラメータε以下となるルール部分集合Ｌ’の中で、最もルールＦの数が少ないルール部分集合Ｌ’を算出する問題である。
【００６４】
スコアが差異ＤＬ（Ｌ'，Ｏ，Ｑ）である場合、パラメータεは、スコアの上限を決定するパラメータとなる。
【００６５】
例えば、後ほど説明する推論システム１００が、第１の最適化問題の解を算出する最適化部３１０にパラメータεを送付すると、最適化部３１０から第１の最適化問題の解としてルール部分集合Ｌ’を取得する。
【００６６】
（２）第２の最適化問題
第２の最適化問題は、次のとおりである。
ｍｉｎｉｍｉｚｅ  ＤＬ（Ｌ'，Ｏ，Ｑ）
ｓｕｂｊｅｃｔ  ｔｏ  Ｃａｒｄ（Ｌ’）≦Ｃ
この場合のパラメータＣは、ルール部分集合Ｌ’に含まれる要素の数（ルールＦの数）の上限を決定するパラメータである。
【００６７】
第２の最適化問題は、ルールＦの数がパラメータＣ以下となるルール部分集合Ｌ’の中で、最も差異ＤＬ（Ｌ'，Ｏ，Ｑ）が小さくなるルール部分集合Ｌ’を算出する問題である。
【００６８】
スコアがルール部分集合Ｌ’の要素数（Ｃａｒｄ（Ｌ’））である場合、パラメータＣは、スコアの上限を決定するパラメータとなる。
【００６９】
例えば、後ほど説明する推論システム１００が、第２の最適化問題の解を算出する最適化部３１０にパラメータＣを送付すると、最適化部３１０から第２の最適化問題の解としてルール部分集合Ｌ’を取得する。
【００７０】
＜第１の実施形態＞
以下、図面を参照して、本発明のおける第１の実施形態について説明する。
【００７１】
第１の実施形態に係る推論システム１００は、所定の最適化問題の解であるルール部分集合Ｌ’を可視化する。
【００７２】
ただし、既に説明しているとおり、推論システム１００が関連する最適化問題及び用いられる推論は、特に制限されない。例えば、推論システム１００は、上記の第１の最適化問題又は第２の最適化問題の最適解を可視化してもよい。この場合、例えば、以下で説明するように、推論システム１００は、パラメータを受け取り、最適化部３１０にパラメータを送信し、最適化部３１０からルール部分集合Ｌ’を取得し、ルール部分集合Ｌ’を可視化する。
【００７３】
［構成の説明］
図面を参照して、本発明における第１に実施形態に係る推論システム１００の構成について説明する。
【００７４】
まず、推論システム１００を含む情報処理システム３００を用いて、推論システム１００の概要を説明する。
【００７５】
図１３は、推論システム１００を含む情報処理システム３００の構成の一例を示すブロック図である。情報処理システム３００は、推論システム１００と、最適化部３１０とを含む。
【００７６】
推論システム１００は、最適化部３１０における最適化の処理に用いるパラメータを最適化部３１０に送信する。
【００７７】
最適化部３１０は、パラメータを用いて、所定の推論に関連する最適化問題の最適解を算出する。例えば、最適化部３１０は、観測Ｏとルール集合ＬからクエリＱへの推論に関する最適化問題の最適解として、ルール部分集合Ｌ’を選択（又は算出）する。そして、最適化部３１０は、ルール部分集合Ｌ’を推論システム１００に送信する。
【００７８】
そして、推論システム１００は、ルール部分集合Ｌ’を可視化する。
【００７９】
例えば、推論システム１００は、利用者の操作する装置からパラメータを受信し、そのパラメータに対応したルール部分集合Ｌ’を可視化する。
【００８０】
このように、推論システム１００は、観測Ｏとルール集合ＬからクエリＱへの推論に関連する。
【００８１】
次に、図面を参照して、推論システム１００について説明する。
【００８２】
図１は、第１の実施形態に係る推論システム１００の構成の一例を示すブロック図である。図１に示されているように、推論システム１００は、受付部１１０と、可視化部１２０とを含む。
【００８３】
受付部１１０は、所定の装置又はシステムから、可視化のためのパラメータを受け付ける。パラメータは、最適化部３１０が最適化問題を処理するときに用いるスコアに関連した情報である。例えば、パラメータは、スコアの範囲を指定する値、つまりルール部分集合Ｌ’の選択（又は算出）に用いられる値である。パラメータの具体例は、上記の第１の最適化問題のパラメータε又は第２の最適化問題のパラメータＣである。
【００８４】
可視化部１２０は、パラメータに関連するルール部分集合Ｌ’を取得し、ルール部分集合Ｌ’を可視化する。つまり、可視化部１２０は、パラメータに対応したルール部分集合Ｌ’を可視化する。
【００８５】
可視化部１２０の動作について、さらに詳細に説明する。一例として、可視化部１２０が、最適化問題１におけるパラメータεに対応したルール部分集合Ｌ’を可視化する場合について説明する。この場合、パラメータεは、上記の比較結果（例えば、差異ＤＬ（Ｌ'，Ｏ，Ｑ））に関連する値である。なお、最適化問題２の場合、パラメータＣは、ルールＦの数に関連する値となる。
【００８６】
まず、受付部１１０は、パラメータεを受け付ける。受付部１１０は、受け付けたパラメータεを可視化部１２０に送信する。そして、可視化部１２０は、パラメータεを最適化部３１０に送信する。
【００８７】
最適化部３１０は、パラメータεを用いて、第１の最適化問題の最適解として、ルール部分集合Ｌ’を算出し、可視化部１２０に送信する。この処理において、最適化部３１０は、例えば、観測Ｏ及びルール集合ＬからクエリＱが成り立つ確率（第１の推論結果）と、観測Ｏ及びルール部分集合Ｌ’からクエリＱが成り立つ確率（第２の推論結果）とを算出する。そして、最適化部３１０は、第１の推論結果と第２の推論結果とを基に、差異ＤＬ（Ｌ'，Ｏ，Ｑ）を算出する。そして、最適化部３１０は、差異ＤＬ（Ｌ'，Ｏ，Ｑ）を基に、ルール部分集合Ｌ’を決定する。
【００８８】
可視化部１２０は、最適化部３１０から最適解であるルール部分集合Ｌ’を取得する。
【００８９】
ただし、推論システム１００の動作は、最適化部３１０における動作と同時である必要はない。
【００９０】
例えば、予め、各パラメータεに対応したルール部分集合Ｌ’が図示しない記憶部に保持されている場合、可視化部１２０は、保持されているルール部分集合Ｌ’の中から、パラメータεに対応したルール部分集合Ｌ’を取得してもよい。
【００９１】
そして、可視化部１２０は、パラメータεに対応したルール部分集合Ｌ’を可視化する。さらに、可視化部１２０は、ルール部分集合Ｌ’に関連する情報を可視化してもよい。例えば、可視化部１２０は、パラメータεを、ルール部分集合Ｌ’と関連付けて可視化してもよい。さらに、可視化部１２０は、ルール部分集合Ｌ’のスコアを可視化してもよい。
【００９２】
図面を参照して、可視化部１２０の動作について説明する。
【００９３】
図２は、以下の説明に用いるルール集合Ｌの第１の例を示す図である。図２は、ルール集合Ｌを無向グラフとして表示した図である。図２に示されている無向グラフは、次のようにルール集合Ｌを表したグラフである。まず、ルール集合Ｌに含まれるグラウンドアトムをノード（図２の黒色の円）とする。次に、同一のルールＦに現れるグラウンドアトムの間にリンク（図２の線分）を作成する。ただし、推論システム１００が用いるルール集合Ｌ及びルール部分集合Ｌ’のグラフは、図２に示されているグラフに限られない。推論システム１００は、有向グラフなど他のグラフを用いてもよい。
【００９４】
図２において、各三角形が、一つのルールＦを示す。つまり、図２に示されているルール集合Ｌは、ルールＦ１ないしルールＦ１１を含む。なお、ルール集合Ｌは、「ε＝０．０」の場合におけるルール部分集合Ｌ’である。つまり、図２は、ルール部分集合Ｌ’の一例を示す図でもある。
【００９５】
図３は、所定のパラメータε（例えば、ε＝０．４）におけるルール部分集合Ｌ’の一例を示す図である。
【００９６】
図３において、可視化部１２０は、除外したルールＦを、破線を用いて示している。つまり、図３に示されているルール部分集合Ｌ’は、ルールＦ３、及び、ルールＦ４を除外したルール部分集合Ｌ’である。この場合、除外されたルール部分集合Ｌ”は、｛Ｆ３，Ｆ４｝である。
【００９７】
このように、図３において、可視化部１２０は、ルール集合Ｌと、ルール部分集合Ｌ’との差（つまり、除外されたルール部分集合Ｌ”）を可視化するように、ルール部分集合Ｌ’を可視化している。
【００９８】
ただし、これは、可視化部１２０における除外したルールＦの可視化の一例である。可視化部１２０は、除外したルールＦを可視化しなくてもよい。あるいは、可視化部１２０は、除外したルールＦを他のルールＦとは異なる色又は形状を用いて可視化してもよい。
【００９９】
図３に示されているルール部分集合Ｌ’は、観測ＯからクエリＱまでルールＦがつながっている。つまり、ルール部分集合Ｌ’は、観測ＯからクエリＱまでたどる経路（第１の経路）を含んでいる。このようにルール部分集合Ｌ’に観測ＯからクエリＱまでの経路が含まれる場合、可視化部１２０は、観測ＯからクエリＱまでの経路に含まれるルールＦを可視化できる。
【０１００】
なお、可視化部１２０は、経路から分離されたルールＦを可視化しなくてもよい。例えば、図３において、ルールＦ５は、観測ＯからクエリＱまでの経路から分離している。そのため、可視化部１２０は、ルールＦ５を可視化しなくてもよい。このように動作すると、可視化部１２０は、推論の過程又は根拠に関連性が高いルールＦを可視化できる。
【０１０１】
ここで、図３において、ルールＦ５は、ルール部分集合Ｌ’から分離している。そのため、ルールＦ５は、実質的にルール部分集合Ｌ’から除外されている。つまり、図３のルール部分集合Ｌ’は、ルールＦ３、Ｆ４、及びＦ５を除外したルールＦの集合である。
【０１０２】
そして、パラメータεの値の「０．４」は、差異ＤＬとして、ある程度大きな値である。つまり、図３に示されているルール部分集合Ｌ’は、パラメータεの値がある程度大きくなっても残っているルールＦの集合である。一方、ルールＦ３及びＦ４（及びＦ５）は、そのパラメータεでは除外されるルールＦである。
【０１０３】
このように、推論システム１００は、図３の表示を基に、観測ＯからクエリＱへの推論におけるルールＦの依存の程度（依存度）を示している。具体的には、推論システム１００は、ルール部分集合Ｌ’に含まれるルールＦ（例えば、ルールＦ６及びＦ７）が、除外されたルールＦ（例えば、ルールＦ３及びＦ４）と比較して、依存度が高いことを可視化している。
【０１０４】
なお、上記のように、パラメータεの値の「０．４」は、差異ＤＬとして、ある程度大きな値である。そのため、推論システム１００は、ある程度大きな差異を許容した場合でも、観測ＯとクエリＱとが接続されていること、つまり、観測ＯとクエリＱの依存関係が大きいことを可視化している。
【０１０５】
その結果、利用者は、パラメータεを基に、観測ＯとクエリＱとの依存関係が大きいことを確認できる。さらに、利用者は、ルール部分集合Ｌ’に含まれるルールＦが、除外されたルールＦと比較して依存度が高いことを確認できる。
【０１０６】
このように、推論システム１００は、利用者等に対して、可視化したルール部分集合Ｌ’を用いて、観測ＯとクエリＱとの依存関係を可視化できる。
【０１０７】
図４は、図３とは異なるパラメータε（例えば、ε＝０．５）におけるルール部分集合Ｌ’の一例を示す図である。
【０１０８】
図４に示されているルール部分集合Ｌ’は、図３において除外されたルールＦに加え、ルールＦ６及びＦ７が除外されている。その結果、ルール部分集合Ｌ’において、観測ＯからクエリＱまでの経路が、切れている。つまり、図４のルール部分集合Ｌ’は、観測ＯからクエリＱまでたどれる経路を含まない。このように、推論システム１００は、所定のパラメータにおいて経路が切れること、及び、切れるルールＦを示すことができる。
【０１０９】
図４のように、経路が切れている場合、可視化部１２０は、少なくとも、観測ＯからクエリＱへの向きに沿った末端のルールＦまでの経路（第２の経路）、又は、クエリＱから観測Ｏへの向きに沿った末端のルールＦまでの経路（第３の経路）を可視化する。図４において、第２の経路は、観測ＯからルールＦ２までの経路である。また、第３の経路は、ルールＦ８からクエリＱまでの経路である。
【０１１０】
なお、可視化部１２０は、図４に示すように第２の経路及び第３の経路の両方を可視化してもよく、どちらか一つを可視化してもよい。さらに、ルール部分集合Ｌ’が、２つを超える部分に分断された経路を含む場合、可視化部１２０は、一部の経路又は全ての経路を可視化してもよい。
【０１１１】
図３及び４を参照すると、利用者は、観測ＯからクエリＱまでの経路において、最後までつながるルールＦが、ルールＦ６及びＦ７であることを確認できる。このように、推論システム１００は、利用者等に対して、観測ＯからクエリＱまでたどる経路において、最後までつながるルールＦ（図４のルールＦ６及びＦ７）を示すことができる。言い換えると、推論システム１００は、利用者等に対して、観測ＯからクエリＱまでのルールＦの経路において、最初に切れるルールＦを示すことができる。
【０１１２】
図３及び４を参照すると、パラメータεの０．４から０．５の間の数値において、観測ＯからクエリＱまでの経路が切れることを確認できる。
【０１１３】
さらに、パラメータεの値が０．４の時にルールＦ３及びＦ４が除外され、パラメータεの値が０．５の時にルールＦ６及びＦ７が除外される。このことから、利用者は、観測ＯからクエリＱへの推論において、ルールＦ６及びＦ７の依存度が、ルールＦ３及びＦ４の依存度より高いことを確認できる。
【０１１４】
このように、推論システム１００は、利用者等に対して、観測ＯとクエリＱの依存関係の大きさの程度を、ルールＦに関連させて示すことができる。
【０１１５】
さらに、推論システム１００は、上記の内容を示すために、次のように、ルール集合Ｌ及び／又はルール部分集合Ｌ’の可視化（表示）を実行してもよい。
【０１１６】
なお、以下の説明において、推論システム１００は、図示しない表示機器及び入力機器を含むとする。具体的には、推論システム１００は、表示機器及び入力機器の一例として、図示しないタッチパネルを含むとする。
【０１１７】
図５は、ルール集合Ｌの可視化の一例を示す図である。
【０１１８】
推論システム１００は、表示機器に、パラメータεを受け付けるための表示と、そのパラメータεに対応したルール部分集合Ｌ’とを表示する。推論システム１００は、上記に加え、関連する情報（例えば、パラメータεの値及びスコアの値）を表示してもよい。
【０１１９】
図５の上部左が、ルール部分集合Ｌ’の表示である。なお、図５は、パラメータεの値が「０．０」の場合の表示である。そのため、ルール部分集合Ｌ’は、ルール集合Ｌとなっている。
【０１２０】
図５の下部が、パラメータεを受け付けるための表示である。図５において、利用者は、０．０から１．０の範囲を示すスクロールバーを用いて、パラメータεの値を設定する。例えば、この説明ではタッチパネルを用いているため、利用者は、スクロールバーの希望の位置に触れればよい。推論システム１００の受付部１１０は、タッチパネルの位置に対応したパラメータεの値を可視化部１２０に送信する。そして、可視化部１２０は、パラメータεに対応したルール部分集合Ｌ’を表示する。
【０１２１】
図６は、所定のパラメータの値（ε＝０．５）の場合の可視化の一例を示す図である。図６に示されているように、利用者が、スクロールバーの「０．５」の位置にタッチすると、推論システム１００は、その場合のルール部分集合Ｌ’を表示する。
【０１２２】
このように、受付部１１０は、パラメータεの設定可能な範囲に対する設定するパラメータεの値に対応する情報を取得する。具体的には、パラメータεの値に対応する情報とは、スクロールバーにおける位置の情報である。
【０１２３】
次に、図７ないし９を参照して、別のルール集合Ｌの場合の可視化について説明する。
【０１２４】
図７は、以下の説明に用いるルール集合Ｌの第２の例を示す図である。
【０１２５】
図７に示されているルール集合Ｌは、ルールＦ１ないしルールＦ１２を含む。なお、ルール集合Ｌは、「ε＝０．０」の場合のルール部分集合Ｌ’である。
【０１２６】
図８は、ルール集合Ｌの第２の例において、所定のパラメータε（例えば、ε＝０．０１）におけるルール部分集合Ｌ’の一例を示す図である。
【０１２７】
図８に示されているルール部分集合Ｌ’は、ルールＦ７を除外したルール部分集合Ｌ’である。その結果、ルール部分集合Ｌ’において、観測ＯからクエリＱまでの経路が、ルールＦ７のところで切れている。つまり、図８のルール部分集合Ｌ’は、観測ＯからクエリＱまでの経路がない。
【０１２８】
ここで、パラメータεの値の「０．０１」は、かなり小さな値である。そのため、利用者は、図８を参照して、観測ＯとクエリＱとの依存関係が小さいことを確認できる。さらに、利用者は、依存関係を大きくするためには、除外されたルールＦ７の位置においてルールＦを追加することが必要であることを確認できる。
【０１２９】
このように、推論システム１００は、利用者等に対して、観測ＯとクエリＱとの依存関係が小さいことを示すことができる。さらに、推論システム１００は、利用者等に、依存関係を大きくするために必要となるルールＦの位置（図８ではルールＦ７）を示すことができる。その結果、利用者等は、容易に、依存関係を大きくするためのルールＦを追加することができる。
【０１３０】
図９は、ルール集合Ｌの第２の例に追加するルールＦの一例示す図である。ただし、図９は、理解を容易にするため、図８において除外されたルールＦ７の表示を図８と同様にしている。
【０１３１】
図９において、ルールＦＡ及びルールＦＢが、追加されている。その結果、観測ＯからクエリＱまでの経路は、ルールＦ７を除外しても、つながっている。
【０１３２】
ここまでの説明では、可視化部１２０が、各パラメータに対応した可視化を実行する場合の例を説明した。しかし、可視化部１２０における可視化の手法は、上記に限られない。例えば、可視化部１２０は、複数のパラメータに対応した可視化を実行してもよい。
【０１３３】
図１０及び１１を参照して、可視化部１２０の別の可視化について説明する。
【０１３４】
図１０は、別の可視化を説明するためのルール集合Ｌの第３の例を示す図である。
【０１３５】
図１０に示されているルール集合Ｌは、４つのルールＦ（ルールＦ１ないしＦ４）を含む。図１０に示されているアトム及びルールＦは、次のとおりである。
（１）アトム（以下の説明において、Ｘ及びＹは変数である。）
Ｃａｎｃｅｒ（Ｘ）：Ｘが癌である。
Ｓｍｏｋｅｓ（Ｘ）：Ｘがたばこを吸う。
Ｆａｍｉｌｙ（Ｘ，Ｙ）：ＸとＹとが家族である。
Ｆｒｉｅｎｄｓ（Ｘ，Ｙ）：ＸとＹとが友人である。
（２）ルールＦ
Ｆ１：Ａがたばこを吸うならば、Ａが癌である。
Ｆ２：Ａがたばこを吸い、かつ、ＡとＢとが友人ならば、Ｂがたばこを吸う。
Ｆ３：Ａがたばこを吸い、かつ、ＡとＢとが家族ならば、Ｂがたばこを吸う。
Ｆ４：Ｂがたばこを吸うならば、Ｂが癌である。
【０１３６】
ここで、可視化部１２０は、二つのパラメータε（ε１＜ε２）を用いるとする。
【０１３７】
図１１は、複数のパラメータに対応した可視化の一例を示す図である。
【０１３８】
図１１において、点線で示されているルールＦ２は、パラメータε１の場合に除外されるルールＦである。つまり、パラメータε１の場合、ルールＦ２が除外される。
【０１３９】
破線で示されているルールＦ３は、パラメータε２の場合に除外されるルールＦである。パラメータε２は、パラメータε１より大きい。そのため、点線で示されているルールＦ２は、パラメータε２の場合も除外される。つまり、パラメータε２の場合、ルールＦ２及びＦ３が除外される。
【０１４０】
実線で示されているルールＦ１及びルールＦ４は、パラメータε２においても除外されないルールＦである。
【０１４１】
このように、可視化部１２０は、複数のパラメータに関連付けてルールＦを可視化してもよい。
【０１４２】
なお、可視化部１２０が用いる可視化の手法は、上記に限られない。例えば、可視化部１２０は、パラメータの値に比例又は反比例するような可視化手法を用いてもよい。ここで、パラメータの値の比例又は反比例する手法とは、例えば、パラメータの値に沿って、可視化に用いる画像の濃さ（グレー濃淡）を設定する手法、又は、パラメータの値に沿って可視化に用いる色を変更する手法などである。
【０１４３】
さらに、推論システム１００は、階層化されたルール集合Ｌを用いてもよい。この場合、可視化部１２０は、所定の指示（例えば、利用者からの指示）を基に、可視化する階層を変更してもよい。
【０１４４】
［動作の説明］
次に、図面を参照して、第１の実施形態に係る推論システム１００の動作について説明する。
【０１４５】
図１２は、推論システム１００の動作の一例を示すフローチャートである。
【０１４６】
まず、受付部１１０は、パラメータを受け付ける（ステップＳ２０１）。
【０１４７】
可視化部１２０は、パラメータを基にルール部分集合Ｌ’を取得し、取得したルール部分集合Ｌ’を可視化する（ステップＳ２０２）。例えば、可視化部１２０は、図６のような表示を用いて、ルール部分集合Ｌ’を可視化する。
【０１４８】
そして、可視化部１２０は、可視化の動作が終了か否かを判定する（ステップＳ２０３）。例えば、可視化部１２０は、図示しない利用者が操作する装置から、終了又は継続の指示を受信し、可視化動作の終了か否かを判定する。
【０１４９】
終了の場合（ステップＳ２０３でＹｅｓ）、可視化部１２０を含む推論システム１００は、動作を終了する。
【０１５０】
終了でない場合（ステップＳ２０３でＮｏ）、推論システム１００は、ステップＳ２０１に戻る。この場合、受付部１１０が、次のパラメータを受け取り、上記の動作を繰り返す。
【０１５１】
なお、推論システム１００は、ステップＳ２０２の後、ステップＳ２０１に戻るように動作してもよい。つまり、推論システム１００は、動作を終了せずに、継続して動作してもよい。
【０１５２】
［効果の説明］
第１の実施形態に係る推論システム１００の効果について説明する。
【０１５３】
上記のように、第１の実施形態に係る推論システム１００は、推論の過程又は根拠を提示するとの効果を奏することができる。
【０１５４】
その理由は、次のとおりである。
【０１５５】
受付部１１０は、ルール集合Ｌからルール部分集合Ｌ’の選択に用いられるパラメータ（例えば、パラメータε）を受け付ける。
【０１５６】
そして、可視化部１２０が、パラメータに対応するルール部分集合Ｌ’を取得し、ルール部分集合Ｌ’を可視化する。
【０１５７】
ここで、最適化部３１０は、観測ＯからクエリＱにおける推論を最適化する最適化問題の最適解としてルール部分集合Ｌ’を選択（又は算出）する。また、パラメータは、最適化部３１０におけるルール部分集合Ｌ’の選択に関連する値である。
【０１５８】
そして、ルール部分集合Ｌ’は、観測ＯからクエリＱまでの経路の少なくとも一部のルールＦの関連を示す情報である。つまり、ルール部分集合Ｌ’は、推論の過程又は根拠に関連する情報である。
【０１５９】
つまり、可視化部１２０は、推論の過程又は根拠に関連した情報であるルール部分集合Ｌ’を可視化している。
【０１６０】
このように、可視化部１２０は、推論の過程又は根拠の提示となるルール部分集合Ｌ'を可視化できるためである。
【０１６１】
さらに、推論システム１００は、以下の効果を奏する。
【０１６２】
推論システム１００は、受け付けたパラメータに対応したルール部分集合Ｌ’を可視化する。さらに、推論システム１００は、複数のパラメータに対応したルール部分集合Ｌ’を可視化する。例えば、図３及び４を参照して説明したように、推論システム１００は、ルール部分集合Ｌ’に経路が含まれるパラメータεの値が「０．４」の場合と、経路が含まれない「０．５」の場合とを可視化できる。このように、推論システム１００は、受け付けたパラメータにおいて、「観測ＯからクエリＱまでの経路が、ルール部分集合Ｌ’に含まれるか否か」を可視化できる。
【０１６３】
したがって、推論システム１００は、利用者等に対して、観測ＯとクエリＱとの依存関係を示すことができるとの効果を奏する。
【０１６４】
さらに、推論システム１００は、複数のパラメータに対応したルール部分集合Ｌ’を可視化できる。つまり、推論システム１００は、どのくらいの値のパラメータにおいて、「ルール部分集合Ｌ’において観測ＯからクエリＱまでの経路が、切れるか」を可視化できる。
【０１６５】
したがって、推論システム１００は、利用者などに対して、観測ＯとクエリＱとの依存関係の程度を示すことができるとの効果を奏する。
【０１６６】
さらに、推論システム１００は、複数のパラメータに対応したルール部分集合Ｌ’を可視化できる。言い換えると、推論システム１００は、各パラメータに対応して除外されるルールＦを可視化できる。
【０１６７】
したがって、推論システム１００は、利用者などに対して、観測ＯからクエリＱへの推論におけるルールＦの依存の程度（依存度）を示すことができるとの効果を奏する。詳細には、推論システム１００は、利用者などに対して、観測ＯからクエリＱへの推論において、依存度の高いルールＦ及び依存度の低いルールＦを示すことができるとの効果を奏する。
【０１６８】
［ハードウェア構成］
推論システム１００のハードウェア構成について説明する。
【０１６９】
推論システム１００は、次のように構成される。
【０１７０】
推論システム１００の各構成要素の一部又は全部は、汎用又は専用の回路（circuitry）、プロセッサ等、又は、これらの組合せを用いて実現される。これらは、単一のチップを用いて構成されてもよいし、バスを介して接続された複数のチップを用いて構成されてもよい。推論システム１００の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せを用いて実現されてもよい。
【０１７１】
推論システム１００の各構成要素の一部又は全部が、複数の情報処理装置又は回路等を用いて実現される場合には、複数の情報処理装置又は回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置又は回路等は、クライアントアンドサーバシステム、又は、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【０１７２】
また、推論システム１００において、複数の構成部は、１つのハードウェアで実現されてもよい。
【０１７３】
また、推論システム１００は、ＣＰＵ（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）カードである。さらに、ＮＩＣ６８０は、有線に限らず、無線を用いてもよい。ＮＩＣ６８０は、受付部１１０及び／又は可視化部１２０の一部として動作してもよい。この場合、ＮＩＣ６８０は、パラメータを受信する。あるいは、ＮＩＣ６８０は、ルール部分集合Ｌ’を送信する。さらに、ＮＩＣ６８０は、観測Ｏ、クエリＱ、及び／又は、ルール集合Ｌを受信してもよい。
【０１８７】
このように構成された情報処理装置６００は、推論システム１００と同様の効果を得ることができる。
【０１８８】
その理由は、情報処理装置６００のＣＰＵ６１０が、プログラムに基づいて推論システム１００と同様の機能を実現できるためである。
【０１８９】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【０１９０】
本発明は、確率的論理推論手法をコアに据えた人工知能に基づく人間の知的労働の支援において、人工知能の推論の結果に至る根拠を端的に説明する用途に適用できる。【０１９１】
本発明は、ＭＬＮ又はＰＳＬなどの推論手法に限らず、論理式を基に確率変数を定義して推論を行う確率的論理推論手法で、観測とクエリとを入力として、観測の下でのクエリの事後確率を求めるという推論を行う場合に広く適用できる。
【符号の説明】
【０１９２】
１００    推論システム
１１０    受付部
１２０    可視化部
３００    情報処理システム
３１０    最適化部
６００    情報処理装置
６１０    ＣＰＵ
６２０    ＲＯＭ
６３０    ＲＡＭ
６４０    内部記憶装置
６５０    ＩＯＣ
６６０    入力機器
６７０    表示機器
６８０    ＮＩＣ
７００    記憶媒体
【図１】
0006690713.tif 000002
【図２】
0006690713.tif 000003
【図３】
0006690713.tif 000004
【図４】
0006690713.tif 000005
【図５】
0006690713.tif 000006
【図６】
0006690713.tif 000007
【図７】
0006690713.tif 000008
【図８】
0006690713.tif 000009
【図９】
0006690713.tif 000010
【図１０】
0006690713.tif 000011
【図１１】
0006690713.tif 000012
【図１２】
0006690713.tif 000013
【図１３】
0006690713.tif 000014
【図１４】
0006690713.tif 000015