(57)【特許請求の範囲】
【請求項１】
値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、観測モデルに、
一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している、観測取得計画を入力して、
前記コストが付与された前記観測を取得する、観測取得部と、
全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、前記観測取得部で取得された前記観測とを、論理包含を含む一階述語論理式で表された知識データに適用して、ありうる帰結に至る一階述語論理式と、前記一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する、仮説生成部と、
を備えている、
ことを特徴とする仮説生成装置。
【請求項２】
請求項１に記載の仮説生成装置であって、
値を持たない項を含む一階述語論理式による問い合わせを受け付けると、前記観測モデルが用いる前記規則又は前記規則とは異なる規則に沿って、前記問い合わせに対応した観測を出力する、観測出力部と、
前記観測取得部に、前記観測出力部への前記観測取得計画の入力と、それによって出力された観測の取得とを行わせ、そして、前記仮説生成部に、取得させた観測と、サンプルとなる観測とを与えて、仮説推論結果を生成させる、シミュレーション実行部と、
前記シミュレーション実行部が生成させた仮説推論結果に含まれるコストを用いて、前記観測取得計画を更新する、観測取得計画更新部と、
を更に備えることを特徴とする仮説生成装置。
【請求項３】
請求項２に記載の仮説生成装置であって、
前記シミュレーション実行部が、生成された仮説推論結果を構成するコストが予め設定された閾値以下となるまで、前記観測取得部に観測を取得させ、前記仮説生成部に仮説推論結果を生成させる、
ことを特徴とする仮説生成装置。
【請求項４】
請求項１〜３のいずれかに記載の仮説生成装置であって、
前記観測取得部が、前記観測取得計画における、コストが最も低い観測を、前記観測モデルに適用することを規定した規則に沿って、前記コストが付与された前記観測を取得する、
ことを特徴とする仮説生成装置。
【請求項５】
（ａ）値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、観測モデルに、
一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している、観測取得計画を入力して、
前記コストが付与された前記観測を取得する、ステップと、
（ｂ）全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、前記（ａ）のステップで取得された前記観測とを、論理包含を含む一階述語論理式で表された知識データに適用して、ありうる帰結に至る一階述語論理式と、前記一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する、ステップと、
を有する、
ことを特徴とする仮説生成方法。
【請求項６】
コンピュータに、
（ａ）値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、観測モデルに、
一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している、観測取得計画を入力して、
前記コストが付与された前記観測を取得する、ステップと、
（ｂ）全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、前記（ａ）のステップで取得された前記観測とを、論理包含を含む一階述語論理式で表された知識データに適用して、ありうる帰結に至る一階述語論理式と、前記一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する、ステップと、
を実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮説推論技術によって仮説を生成するための、仮説生成装置及び仮説生成方法に関し、更には、これらを実現するためのプログラムに関する。
【背景技術】
【０００２】
仮説推論は、ある物事が発生した際に観測された事象と、推論知識（例えば常識）とから、それらと矛盾しない仮設を立てて推論を行うことである。一般的な仮説推論では、観測は与えられるものとして考えられているが、仮設を改善及び検証するために、仮説推論を実行する装置が外部から能動的に観測を取得することも有る（例えば、特許文献１及び２参照）。【０００３】
図１０は、従来からの仮説推論を実行する装置の構成を示すブロック図である。図１０の例では、仮説生成装置は、能動的に観測を取得する機能を備えている。また、図１０に示すように、仮説生成装置は、仮説生成部と、仮説検証部と、推論知識格納部とを備えている。更に、仮説生成装置は、装置外部にある観測の取得先（観測取得源）に接続されている。【０００４】
また、仮説生成装置において、仮説生成部は、仮説を生成する。具体的には、仮説生成部は、まず、一階述語論理式のうち、全ての項が値を持つ一階述語論理式である観測を受け付ける。次いで、仮説生成部は、一階述語論理式のうち、論理包含を含む一階述語論理式で表された知識データを用いて、受け付けた観測から、ありうる帰結に至る一階述語論理式と、それら一階述語論理式の悪さを評価したコストとで構成された仮説推論結果を出力する。【０００５】
仮説検証部は、仮説推論結果を構成する一階述語論理式のうち、観測から得た値を持つ項（変数）と、値を持たない項とを含む一階述語論理式を特定し、特定した一階述語論理式における値を持たない項に値が含められた観測を、観測取得源から取得する。その後、仮説生成部は、仮説検証部によって取得された観測を用いて、先に出力した仮説推論結果を検証し、必要に応じてこれを修正する。【０００６】
また、非特許文献１〜３は、上述の仮説生成部で行われる仮説の生成処理に関する研究について具体的に開示している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平８−１２２３９８号公報
【特許文献２】特開２０１６−９１０３９号公報
【非特許文献】
【０００８】
【非特許文献１】Inoue, Naoya, and Kentaro Inui. ILP-Based Reasoning for WeightedAbduction. Plan, Activity, and Intent Recognition. 2011.
【非特許文献２】Inoue, Naoya, et al. Coreference Resolution with ILP-based WeightedAbduction. COLING. 2012.
【非特許文献３】Kazeto Yamamoto, Naoya Inoue, Kentaro Inui, Yuki Arase and JunichiTsujii. Boosting the Efficiency of First-order Abductive Reasoning UsingPre-estimated Relatedness between Predicates. International Journal of MachineLearning and Computing, Vol. 5, No. 2, pp. 114-120. April 2015.
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、図１０に示した従来からの仮説生成装置では、仮説検証部は、仮説生成部によって導出された仮説推論結果を検証するために、外部の観測取得源から観測を取得する必要がある。一方で、仮説生成部が所定のコストを持つ仮説推論結果を出力するために必要となる、観測取得源からの観測の取得回数は、出来る限り最少に抑える必要がある。【００１０】
しかしながら、図１０に示した装置では、ある時点での外部の観測取得源からの観測の取得は、同時点で導出された仮説推論結果のみに基づいて行われるため、冗長になり易く、観測の取得回数を抑えることは困難である。この点について以下に具体的に説明する。【００１１】
まず、仮説生成部から出力される仮説推論結果は、仮説検証部から出力された観測が追加されると、非単調に変化する。このため、仮説推論結果に必要とされる観測は、時点毎に異なることになる。従って、少ない回数の観測取得を通じて特定の仮説推論結果、即ち、指定された閾値以下のコストを持つ仮説推論結果を得るためには、仮説生成部から出力される仮説推論結果（特にコスト）が、観測の追加によってどのように変化するかを予測して、観測取得源から観測を取得する必要がある。しかしながら、このような予測は極めて困難であるため、結果、上述したように、観測取得源からの観測の取得は冗長となってしまう。【００１２】
本発明の目的の一例は、上記問題を解消し、仮説推論結果の検証に必要となる観測の取得において、冗長化を抑制し得る、仮説生成装置、仮説生成方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１３】
上記目的を達成するため、本発明の一側面における仮説生成装置は、
値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、観測モデルに、
一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している、観測取得計画を入力して、
前記コストが付与された前記観測を取得する、観測取得部と、
全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、前記観測取得部で取得された前記観測とを、論理包含を含む一階述語論理式で表された知識データに適用して、ありうる帰結に至る一階述語論理式と、前記一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する、仮説生成部と、
を備えている、
ことを特徴とする。【００１４】
また、上記目的を達成するため、本発明の一側面における仮説生成方法は、
（ａ）値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、観測モデルに、
一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している、観測取得計画を入力して、
前記コストが付与された前記観測を取得する、ステップと、
（ｂ）全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、前記（ａ）のステップで取得された前記観測とを、論理包含を含む一階述語論理式で表された知識データに適用して、ありうる帰結に至る一階述語論理式と、前記一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する、ステップと、
を有する、
ことを特徴とする。【００１５】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、
（ａ）値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、観測モデルに、
一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している、観測取得計画を入力して、
前記コストが付与された前記観測を取得する、ステップと、
（ｂ）全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、前記（ａ）のステップで取得された前記観測とを、論理包含を含む一階述語論理式で表された知識データに適用して、ありうる帰結に至る一階述語論理式と、前記一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する、ステップと、
を実行させる、ことを特徴とする。
【発明の効果】
【００１６】
以上のように、本発明によれば、仮説推論結果の検証に必要となる観測の取得の冗長化を抑制することができる。
【図面の簡単な説明】
【００１７】
【図１】図１は、本発明の実施の形態における仮説生成装置の概略構成を示すブロック図である。
【図２】図２は、本発明の実施の形態における仮説生成装置の具体的構成を示すブロック図である。
【図３】図３は、本発明の実施の形態における仮説生成装置１００の観測取得計画の更新処理時の動作を示すフロー図である。
【図４】図４は、本発明の実施の形態における仮説生成装置１００の仮説生成処理時の動作を示すフロー図である。
【図５】図５は、本発明の実施の形態における仮説生成装置を実現するコンピュータの一例を示すブロック図である。
【図６】図６は、図３に示したステップＡ１〜Ａ４の実施例を示す図である。
【図７】図７は、図３に示したステップＡ５の実施例を示す図である。
【図８】図８は、図４に示したステップＢ１〜Ｂ３の実施例を示す図である。
【図９】図９は、図４に示したステップＢ４の実施例を示す図である。
【図１０】図１０は、従来からの仮説推論を実行する装置の構成を示すブロック図である。
【発明を実施するための形態】
【００１８】
（実施の形態）
以下、本発明の実施の形態における、仮説生成装置、仮説生成方法、及びプログラムについて、図１〜図５を参照しながら説明する。
【００１９】
［装置構成］
最初に、図１を用いて、本実施の形態における仮説生成装置の概略構成を説明する。図１は、本発明の実施の形態における仮説生成装置の概略構成を示すブロック図である。
【００２０】
図１に示す、本実施の形態における仮説生成装置１００は、仮説推論技術を用いて仮説を生成する装置である。図１に示すように、仮説生成装置１００は、観測取得部３０と、仮説生成部４０とを備えている。
【００２１】
また、仮説生成装置１００は、論理包含を含む一階述語論理式で表された知識データと、観測取得計画とを利用する。観測取得計画は、一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している。
【００２２】
観測取得部３０は、観測モデル５０に、観測取得計画を入力して、コストが付与された観測を取得する。観測モデル５０は、値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、モデルである。観測モデル５０は、実際には、仮説生成装置１００の外部の装置に保持されている。
【００２３】
仮説生成部４０は、全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、観測取得部３０で取得された観測とを、知識データに適用する。そして、仮説生成部４０は、この２つ観測の知識データへの適用によって、ありうる帰結に至る一階述語論理式と、この一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する。
【００２４】
また、本実施の形態において、「一階述語論理式による仮説の評価を示すコスト」は、言い換えると、仮説推論結果を構成する一階述語論理式における、悪さを評価したコストである（下記の参考文献を参照）。「悪さ」は、一階述語論理式で構成される仮説推論結果の蓋然性及び説明性等の低さを意味しており、蓋然性及び説明性等は、知識データの中に埋め込まれた重みを利用して計算される。
［参考文献］
Inoue, Naoya, and Kentaro Inui. "Large-scale cost-basedabduction in full-fledged first-order predicate logic with cutting planeinference." Logics in Artificial Intelligence. Springer, Berlin,Heidelberg, 2012. 281-293.
【００２５】
このように、本実施の形態では、受け付けられた観測と知識データとから、仮説推論結果が生成される際に、観測取得計画に沿って取得された観測が加えられる。このため、本実施の形態によれば、仮説推論結果の検証に必要となる観測の取得において、冗長化が抑制される。
【００２６】
続いて、図２を用いて、本実施の形態における仮説生成装置１００の構成をより具体的に説明する。図２は、本発明の実施の形態における仮説生成装置の具体的構成を示すブロック図である。
【００２７】
図２に示すように、本実施の形態における仮説生成装置１００は、上述した観測取得部３０、及び仮説生成部４０に加え、推論知識格納部１０と、観測取得計画格納部２０と、観測出力部６０と、シミュレーション実行部７０と、観測取得計画更新部８０とを備えている。
【００２８】
このうち、推論知識格納部１０は、上述した知識データを格納する。観測取得計画格納部２０は、上述した観測取得計画を格納する。
【００２９】
観測出力部６０は、値を持たない項を含む一階述語論理式による問い合わせを受け付けると、観測モデル５０が用いる規則又はこの規則とは異なる規則に沿って、問い合わせに対応した観測を出力する。なお、観測モデル５０が用いる規則とは異なる規則としては、観測モデル５０が用いる規則に類似する規則が挙げられる。
【００３０】
類似する規則とは、観測モデル５０の入出力の対応付けを近似することによって得られる規則である。ある問い合わせの系列に対して観測モデル５０から出力された観測の系列の例が得られている場合に、例えば、教師あり学習に基づいて、観測モデル５０が用いる規則に類似する規則を求めることが出来る。
【００３１】
シミュレーション実行部７０は、観測取得部３０に、観測出力部６０への観測取得計画の入力と、それによって出力された観測の取得とを行わせる。更に、シミュレーション実行部７０は、仮説生成部４０に、観測取得部３０に取得させた観測と、サンプルとなる観測とを与えて、仮説推論結果を生成させる。また、シミュレーション実行部７０は、生成された仮説推論結果を構成するコストが予め設定された閾値以下となるまで、観測取得部３０に観測を取得させ、仮説生成部４０に仮説推論結果を生成させる。
【００３２】
観測取得計画更新部８０は、シミュレーション実行部７０が生成させた仮説推論結果に含まれるコストを用いて、観測取得計画を更新する。
【００３３】
また、本実施の形態では、観測取得部３０は、観測取得計画における、コストが最も低い観測を、観測モデル５０に適用することを規定した規則に沿って、コストが付与された観測を取得する。
【００３４】
［装置動作］
次に、本発明の実施の形態における仮説生成装置１００の動作について図３及び図４を用いて説明する。また、以下の説明においては、適宜図１及び図２を参酌する。更に、本実施の形態では、仮説生成装置１００を動作させることによって、仮説生成方法が実施される。よって、本実施の形態における仮説生成方法の説明は、以下の仮説生成装置１００の動作説明に代える。
【００３５】
まず、図３を用いて、観測取得計画の更新処理について説明する。図３は、本発明の実施の形態における仮説生成装置１００の観測取得計画の更新処理時の動作を示すフロー図である。
【００３６】
最初に、図３に示すように、シミュレーション実行部７０は、外部から、シミュレーションで生成される仮説推論結果を構成するコストの閾値と、サンプルとなる観測との入力を受け付ける（ステップＡ１）。
【００３７】
次に、シミュレーション実行部７０は、観測取得部３０に、観測出力部６０への観測取得計画の入力と、それによって出力された観測の取得とを実行させる（ステップＡ２）。これにより、観測取得部３０は、取得した観測をシミュレーション実行部７０に出力する。
【００３８】
次に、シミュレーション実行部７０は、仮説生成部４０に、ステップＡ２で観測取得部３０に取得させた観測と、サンプルとなる観測とを与えて、仮説推論結果を生成させる（ステップＡ３）。
【００３９】
次に、シミュレーション実行部７０は、ステップＡ３で生成された仮説推論結果を構成するコストが予め設定された閾値以下となっているかどうかを判定する（ステップＡ４）。そして、ステップＡ４の判定の結果、コストが閾値以下となっていない場合は、シミュレーション実行部７０は、再度ステップＡ２及びＡ３を実行する。
【００４０】
一方、ステップＡ４の判定の結果、コストが閾値以下となっている場合は、シミュレーション実行部７０は、観測取得計画更新部８０に、観測取得計画の更新を指示する。これにより、観測取得計画更新部８０は、ステップＡ３で生成した仮説推論結果に含まれるコストを用いて、観測取得計画格納部２０における観測取得計画を更新する（ステップＡ５）。
【００４１】
続いて、図４を用いて、仮説の生成処理について説明する。図４は、本発明の実施の形態における仮説生成装置１００の仮説生成処理時の動作を示すフロー図である。
【００４２】
図４に示すように、最初に、仮説生成部４０は、全ての項が値を持つ一階述語論理式である観測の入力を受け付ける（ステップＢ１）。
【００４３】
次に、観測取得部３０は、観測取得計画格納部２０から観測取得計画を取得する（ステップＢ２）。次に、観測取得部３０は、ステップＢ２で受け取った観測取得計画を、観測モデル５０に入力して、コストが付与された観測を取得する（ステップＢ３）。また、観測取得部３０は、取得した観測を仮説生成部４０に出力する。
【００４４】
次に、仮説生成部４０は、ステップＢ１で受け付けた観測と、ステップＢ３で取得された観測とを、推論知識格納部１０に格納されている知識データに適用して、仮説推論を実行し、実行の結果得られた仮説推論結果を出力する（ステップＢ４）。
【００４５】
［実施の形態における効果］
このように、本実施の形態では、仮説推論結果が生成される際に、観測取得計画に沿って取得された観測が加えられる。また、観測取得計画は、予め、シミュレーションによって、コストが閾値以下となるように更新されている。このため、仮説生成部４０から出力される仮説推論結果が非単調に変化しても、本実施の形態によれば、指定された閾値以下のコストを持つ仮説推論結果を導出するまでにおいて、冗長な観測取得が削減される。
【００４６】
［プログラム］
本実施の形態におけるプログラムは、コンピュータに、図３に示すステップＡ１〜Ａ５、図４に示すステップＢ１〜Ｂ４を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における仮説生成装置１００と仮説生成方法とを実現することができる。この場合、コンピュータのプロセッサは、観測取得部３０、仮説生成部４０、観測出力部６０、シミュレーション実行部７０、及び観測取得計画更新部８０として機能し、処理を行なう。
【００４７】
また、本実施の形態では、推論知識格納部１０及び観測取得計画格納部２０は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって実現される。
【００４８】
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、観測取得部３０、仮説生成部４０、観測出力部６０、シミュレーション実行部７０、及び観測取得計画更新部８０のいずれかとして機能しても良い。また、推論知識格納部１０及び観測取得計画格納部２０は、本実施の形態におけるプログラムを実行するコンピュータとは別のコンピュータ上に構築されていても良い。
【００４９】
［物理構成］
ここで、本実施の形態におけるプログラムを実行することによって、仮説生成装置１００を実現するコンピュータについて図５を用いて説明する。図５は、本発明の実施の形態における仮説生成装置を実現するコンピュータの一例を示すブロック図である。
【００５０】
図５に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。なお、コンピュータ１１０は、ＣＰＵ１１１に加えて、又はＣＰＵ１１１に代えて、ＧＰＵ（Graphics Processing Unit）、又はＦＰＧＡ（Field-ProgrammableGate Array）を備えていても良い。
【００５１】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００５２】
また、記憶装置１１３の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【００５３】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００５４】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記録媒体、又はＣＤ−ＲＯＭ（Compact DiskRead Only Memory）などの光学記録媒体が挙げられる。
【００５５】
なお、本実施の形態における仮説生成装置１００は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、仮説生成装置１００は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【実施例】
【００５６】
次に、図６〜図９を用いて、本実施の形態における仮説生成装置１００の実施例を説明する。また、以下においては、上述の図３及び図４に示した各ステップに沿って説明する。【００５７】
［ステップＡ１〜Ａ４］
図６は、図３に示したステップＡ１〜Ａ４の実施例を示す図である。図６に示すように、シミュレーション実行部７０は、推論知識格納部１０と、観測取得計画格納部２０と、観測取得部３０と、仮説生成部４０と、観測出力部６０とを用いて、仮説推論結果（観測取得計画実行結果）を出力する。【００５８】
本実施例では、図６に示すように、シミュレーション実行部７０に入力される観測は「C(Taro, y)$10」であるとする。また、この観測において、小文字で始まる引数は変数、大文字で始まる引数は定数である。更に、観測を示すリテラルの右肩にのっている「$10」はそのリテラルのコストである。【００５９】
また、図６に示すように、推論知識格納部１０には、知識データ「A(x,y)0.8→C(x,y)」と、「B(x,y)2→C(x,y)」とが格納されているとする。これらの知識データは、重み付き仮説推論（非特許文献１〜３参照）における重み付き推論規則を表している。また、知識データを示すリテラルの右肩にのっている数字は、重みを表している。【００６０】
図６に示すように、観測出力部６０は、２種類の規則「If A(Taro, y) is queried, return null」及び「If B(Taro, y) is queried, returnB(Taro, Jiro)$0」に沿って、観測を出力する。これらの規則は、「あるリテラル(e.g., A(Taro, y))が問い合わせとして観測モデルに入力されると、特定の値(e.g., null)を返す」ということを表している。【００６１】
図６に示すように、観測取得計画格納部２０は、観測取得計画として、「[Next:A(Taro, y), CCost: 0]」と、「[Next: B(Taro, y), CCost: 0]」とを格納している。また、図６の例では、観測取得計画は、辞書として表され、「Next」には観測モデル５０に問い合わせるべき一階述語論理式が含まれ、「CCost」には、問い合わせるべき一階述語論理式に対して将来得られるコストが評価として含まれている。【００６２】
以上の条件下において、シミュレーション実行部７０は、観測取得計画「[Next:A(Taro, y), CCost: 0]」に従って、ステップＡ２（観測取得シミュレーション１）及びＡ３（仮説生成シミュレーション１）を実行する。更に、シミュレーション実行部７０は、「[Next: B(Taro, y), CCost: 0]」に従ってもステップＡ２（観測取得シミュレーション２）及びＡ３（仮説生成シミュレーション２）を実行する。【００６３】
具体的には、観測取得部３０は、シミュレーション実行部７０の指示により、観測取得計画 [Next: A(Taro, y), CCost: 0]に従い、観測出力部６０に、Query:A(Taro,y)を入力する（観測取得シミュレーション１）。これにより、観測出力部６０は、問い合わせとして、この観測取得計画を受け付け、内包する規則に基づいて「null」を返却する（図７のブロック上段）。そして、観測取得部３０は、観測として、「null」を取得し、これをシミュレーション実行部７０に出力する。【００６４】
次いで、仮説生成部４０は、シミュレーション実行部７０の指示により、観測「null」と、推論知識格納部１０に含まれる知識データと、入力された観測「C(Taro, y)$10」とを用いて仮説推論を行い、仮説推論結果を出力する（仮説生成シミュレーション１）。この仮説推論結果には、重み付き仮説推論を行った際のコスト（図６の例では「$8」）が含まれる。【００６５】
また、本実施例では、コストは、上述した参考文献に記載の計算方法に沿って計算される。具体的には、仮説生成部４０は、推論知識格納部１０に含まれる知識データ「A(x,y)0.8→C(x,y)」に「C(Taro, y)$10」適用して、後ろ向き連鎖を行って、「C(Taro,y)$08」を仮説する。この結果、コスト$8が得られる。【００６６】
続いて、観測取得部３０は、残りの観測取得計画[Next: B(Taro,y), CCost: 0]に従い、観測出力部６０に、Query:B(Taro, y)を入力する（観測取得シミュレーション２）。これにより、観測出力部６０は、問い合わせとして、この観測取得計画を受け付け、内包する規則に基づいて「B(Taro, Jiro)」を返却する。そして、観測取得部３０は、観測として、「B(Taro, Jiro)」を取得し、これをシミュレーション実行部７０に出力する。【００６７】
次いで、仮説生成部４０は、シミュレーション実行部７０の指示により、観測「B(Taro,Jiro)」と、推論知識格納部１０に含まれる知識データ「B(x,y)2→C(x,y)」と、入力された観測「C(Taro, y)$10」とを用いて仮説推論を行い、仮説推論結果を出力する（仮説生成シミュレーション２）。この場合の仮説推論結果にも、重み付き仮説推論を行った際のコスト（図６の例では「$0」）が含まれる。【００６８】
具体的には、仮説生成部４０は、推論知識格納部１０に含まれる知識データ「B(x,y)2→C(x,y)」に「C(Taro, y)$10」適用して、後ろ向き連鎖を行って、「C(Taro, y)$20」を仮説する。これにより、コストは$20となるが、仮説生成シミュレーション２では、コストは、観測取得計画[Next: B(Taro, y), CCost: 0]」と単一化されるので、最終的なコストは$0となる。【００６９】
加えて、観測取得シミュレーション１及び仮説生成シミュレーション１では、観測取得部３０は、観測出力部６０に、Query:B(Taro, y)も入力する。この場合、仮説生成部は、コストを「$0」と算出する。また、観測取得シミュレーション２及び仮説生成シミュレーション２では、観測取得部３０は、観測出力部６０に、Query:A(Taro, y)も入力する。この場合も、仮説生成部は、コストを「$0」と算出する。【００７０】
以上の結果、図６に示すように、ステップＡ１〜Ａ４の結果、仮説推論結果に含まれるコスト（観測取得計画実行結果）が得られる。シミュレーション実行部７０は得られた観測取得計画実行結果を、観測取得計画更新部８０に出力する。【００７１】
［ステップＡ５］
図７は、図３に示したステップＡ５の実施例を示す図である。図７に示すように、観測取得計画更新部８０は、観測取得計画実行結果を入力として受け取り、受け取った観測取得計画実行結果に基づいて、観測取得計画を更新する。【００７２】
図７に示すように、観測取得計画更新部８０は、図６の例で得られた観測取得計画実行結果に基づいて、観測取得計画に含まれるCCostを更新する。本実施例では、観測取得計画実行結果に含まれるコスト(Totalcost)の累積値（総和）がCCostとして扱われ、観測取得計画が更新される。【００７３】
具体的には、「Next: A(Taro, y)」に対応するCCostは、仮説生成シミュレーション１によって計算された「$8」と、仮説生成シミュレーション２によって計算された「$0」との和$8となる。また、「Next:B(Taro, y)」に対応するCCostは、仮説生成シミュレーション１によって計算された「$0」と、仮説生成シミュレーション２によって計算された「$0」との和$0となる。【００７４】
［ステップＢ１〜Ｂ３］
図８は、図４に示したステップＢ１〜Ｂ３の実施例を示す図である。図８に示すように、仮説生成部４０は、全ての項が値を持つ一階述語論理式である観測の入力を受け付ける。観測取得部３０は、観測取得計画を入力として受け取り、観測取得計画を基に観測モデル５０から観測を取得し、取得した観測を出力する。【００７５】
具体的には、観測取得部３０は、最もCCostの低い観測取得計画（本例では、[Next: B(Taro, y), CCost: 0]）を選択し、選択した観測取得計画に基づいて、観測モデル５０に問い合わせを行う（本実施例では、B(Taro, y)が問い合わされている）。【００７６】
また、本実施例では、図８に示すように、その問い合わせの結果として、観測モデル５０から B(Taro, y)$0が取得されている。観測取得部３０は、この取得した観測と、先に入力されて内部に保持している観測C(Taro, y)$10とを、合わせて出力する。なお、本実施例では、観測モデル５０は、観測出力部６０に含まれている規則と同じ規則に従って、観測を出力すると仮定する。【００７７】
［ステップＢ４］
図９は、図４に示したステップＢ４の実施例を示す図である。図９に示すように、仮説生成部４０は、ステップＢ１で受け付けた観測と、ステップＢ３で出力された観測とを入力として受け取り、受け取った観測と、知識データとを基に仮説推論を行い、仮説推論結果を出力する。図９に示すように、得られた仮説推論結果のコストは、予め設定された閾値（本実施例では「Total cost $0」）以下のコストを持つ仮説推論結果が導出されている。【００７８】
［従来との比較］
ところで、図１０に示した従来の仮説生成装置を用いて観測を取得した場合、予め設定された閾値以下のコスト（例えば、Total cost $0とする）を持つ仮説推論結果を導出するためには、少なくとも２回以上の観測取得源（観測モデル）からの観測取得が必要となる。この点について以下に説明する。【００７９】
まず、図１０に示した従来の仮説生成装置では、以下の２つの手法が提案されている。第１の手法は、観測と知識データとに基づいて、仮説生成部がコスト最小となる仮説推論結果を生成し、その仮説推論結果に含まれる一階述語論理式を観測取得源に問い合わせる手法である。第２の手法は、観測と知識データとに基づいて、仮説生成部が導出した仮説推論結果全てに対して適用可能な解析で観測を得る手法である。上述の２つの手法について、図６に示した観測と知識データとに基づいて観測を取得する場合について検討する。【００８０】
まず、第１の手法による場合を考えると、本実施例ではコスト最小となる仮説は、A(Taro,y)$8であり、仮説検証部は、A(Taro, y)$8を、観測取得源に問い合せる。この場合、観測取得源からはnullが返される。この「null」と、C(Taro,y)$10とを観測として、仮説生成部に入力した際の仮説推論結果に含まれるコストは$8となり、$0に達していない。【００８１】
続いて、第２の手法による場合を考えると、仮説生成部は、A(Taro, y)$0.8とB(Taro, y)$20とを、それぞれ仮説推論結果として出力する。この結果に基づいて、仮説検証部は、A(Taro, y)とB(Taro, y)とを、観測取得源への問い合わせ候補として扱う。そして、第２の手法では、複数の問い合わせ候補内のどちらを問い合わせるかを決定することが出来ないため、仮説検証部は、２回、観測取得源に問い合わせを行う必要がある。【００８２】
以上により、本実施例によれば、従来の仮説生成装置を用いた場合に比べて、予め設定された閾値以下のコストを持つ仮説推論結果を導出するまでにおける、冗長な観測取得を削減できることがわかる。【００８３】
上述した実施の形態の一部又は全部は、以下に記載する（付記１）〜（付記１２）によって表現することができるが、以下の記載に限定されるものではない。【００８４】
（付記１）
値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、観測モデルに、
一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している、観測取得計画を入力して、
前記コストが付与された前記観測を取得する、観測取得部と、
全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、前記観測取得部で取得された前記観測とを、論理包含を含む一階述語論理式で表された知識データに適用して、ありうる帰結に至る一階述語論理式と、前記一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する、仮説生成部と、
を備えている、
ことを特徴とする仮説生成装置。【００８５】
（付記２）
付記１に記載の仮説生成装置であって、
値を持たない項を含む一階述語論理式による問い合わせを受け付けると、前記観測モデルが用いる前記規則又は前記規則とは異なる規則に沿って、前記問い合わせに対応した観測を出力する、観測出力部と、
前記観測取得部に、前記観測出力部への前記観測取得計画の入力と、それによって出力された観測の取得とを行わせ、そして、前記仮説生成部に、取得させた観測と、サンプルとなる観測とを与えて、仮説推論結果を生成させる、シミュレーション実行部と、
前記シミュレーション実行部が生成させた仮説推論結果に含まれるコストを用いて、前記観測取得計画を更新する、観測取得計画更新部と、
を更に備えることを特徴とする仮説生成装置。【００８６】
（付記３）
付記２に記載の仮説生成装置であって、
前記シミュレーション実行部が、生成された仮説推論結果を構成するコストが予め設定された閾値以下となるまで、前記観測取得部に観測を取得させ、前記仮説生成部に仮説推論結果を生成させる、
ことを特徴とする仮説生成装置。【００８７】
（付記４）
付記１〜３のいずれかに記載の仮説生成装置であって、
前記観測取得部が、前記観測取得計画における、コストが最も低い観測を、前記観測モデルに適用することを規定した規則に沿って、前記コストが付与された前記観測を取得する、
ことを特徴とする仮説生成装置。【００８８】
（付記５）
（ａ）値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、観測モデルに、
一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している、観測取得計画を入力して、
前記コストが付与された前記観測を取得する、ステップと、
（ｂ）全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、前記（ａ）のステップで取得された前記観測とを、論理包含を含む一階述語論理式で表された知識データに適用して、ありうる帰結に至る一階述語論理式と、前記一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する、ステップと、
を有する、
ことを特徴とする仮説生成方法。【００８９】
（付記６）
付記５に記載の仮説生成方法であって、
（ｃ）値を持たない項を含む一階述語論理式による問い合わせを受け付けると、前記観測モデルが用いる前記規則又は前記規則とは異なる規則に沿って、前記問い合わせに対応した観測を出力する、ステップと、
（ｄ）前記（ｃ）のステップにおいて前記観測取得計画が入力された場合に、それによって出力された観測の取得を行い、そして、取得した観測と、サンプルとなる観測とを用いて、仮説推論結果を生成する、ステップと、
（ｅ）前記（ｄ）のステップで生成された仮説推論結果に含まれるコストを用いて、前記観測取得計画を更新する、ステップと、
を更に有することを特徴とする仮説生成方法。【００９０】
（付記７）
付記６に記載の仮説生成装置であって、
前記（ｄ）のステップが、生成された仮説推論結果を構成するコストが予め設定された閾値以下となるまで、実行される、
ことを特徴とする仮説生成方法。【００９１】
（付記８）
付記５〜７のいずれかに記載の仮説生成方法であって、
前記（ａ）のステップにおいて、前記観測取得計画における、コストが最も低い観測を、前記観測モデルに適用することを規定した規則に沿って、前記コストが付与された前記観測を取得する、
ことを特徴とする仮説生成方法。【００９２】
（付記９）
コンピュータに、
（ａ）値を持たない項を含む一階述語論理式による問い合わせを受け付けると、設定された規則に沿って、前記問い合わせに対応した観測を出力する、観測モデルに、
一階述語論理式で表現され、且つ問い合わせの対象となる観測、及びそれに対して将来得られるコストを登録している、観測取得計画を入力して、
前記コストが付与された前記観測を取得する、ステップと、
（ｂ）全ての項が値を持つ一階述語論理式である観測を受け付け、受け付けた観測と、前記（ａ）のステップで取得された前記観測とを、論理包含を含む一階述語論理式で表された知識データに適用して、ありうる帰結に至る一階述語論理式と、前記一階述語論理式による仮説の評価を示すコストとで構成された、仮説推論結果を生成する、ステップと、
を実行させる、プログラム。
【００９３】
（付記１０）
付記９に記載のプログラムであって、
（ｃ）値を持たない項を含む一階述語論理式による問い合わせを受け付けると、前記観測モデルが用いる前記規則又は前記規則とは異なる規則に沿って、前記問い合わせに対応した観測を出力する、ステップと、
（ｄ）前記（ｃ）のステップにおいて前記観測取得計画が入力された場合に、それによって出力された観測の取得を行い、そして、取得した観測と、サンプルとなる観測とを用いて、仮説推論結果を生成する、ステップと、
（ｅ）前記（ｄ）のステップで生成された仮説推論結果に含まれるコストを用いて、前記観測取得計画を更新する、ステップと、
を更に実行させることを特徴とするプログラム。
【００９４】
（付記１１）
付記１０に記載のプログラムであって、
前記（ｄ）のステップが、生成された仮説推論結果を構成するコストが予め設定された閾値以下となるまで、実行される、
ことを特徴とするプログラム。
【００９５】
（付記１２）
付記９〜１１のいずれかに記載のプログラムであって、
前記（ａ）のステップにおいて、前記観測取得計画における、コストが最も低い観測を、前記観測モデルに適用することを規定した規則に沿って、前記コストが付与された前記観測を取得する、
ことを特徴とするプログラム。                                                                           
【００９６】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【００９７】
以上のように、本発明によれば、仮説推論結果の検証に必要となる観測の取得の冗長化を抑制することができる。本発明は、仮説推論が利用される種々の分野に有用である。
【符号の説明】
【００９８】
１０  推論知識格納部
２０  観測取得計画格納部
３０  観測取得部
４０  仮説生成部
５０  観測モデル
６０  観測出力部
７０  シミュレーション実行部
８０  観測取得計画更新部
１００  仮説生成装置
１１０  コンピュータ
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
【図１】
0006908134.tif 000002
【図２】
0006908134.tif 000003
【図３】
0006908134.tif 000004
【図４】
0006908134.tif 000005
【図５】
0006908134.tif 000006
【図６】
0006908134.tif 000007
【図７】
0006908134.tif 000008
【図８】
0006908134.tif 000009
【図９】
0006908134.tif 000010
【図１０】
0006908134.tif 000011