(57)【特許請求の範囲】
【請求項１】
因果関係を推定する因果関係推定装置であって、
前記因果関係に対して介入操作が行われる変数と、当該変数の値との組み合わせであるクエリを特定するクエリ特定部と、
前記クエリに基づく介入操作により取得される対象変数の値と当該クエリとを含む介入データを生成する介入データ生成部と、
生成された前記介入データを用いて、前記因果関係を更新する因果関係更新部とを備え、
前記クエリ特定部は、前記クエリによる前記対象変数の推定誤差を表す期待損失に基づいて特定されるクエリのうち、更新により前記期待損失を最小化するクエリを特定する
ことを特徴とする因果関係推定装置。
【請求項２】
クエリ特定部は、期待損失が最大になるクエリのうち、更新により当該期待損失を最小化するクエリを特定する
請求項１記載の因果関係推定装置。
【請求項３】
クエリ特定部は、クエリによる対象変数の期待不確実性に基づいて特定される候補クエリのうち、当該期待不確実性を最小化するクエリを特定する
請求項１または請求項２記載の因果関係推定装置。
【請求項４】
因果関係に基づく観測データを用いて、当該因果関係を表わすモデルである因果モデルを推定する因果関係推定部を備え、
因果関係更新部は、介入データを用いて、前記因果モデルを更新する
請求項１から請求項３のうちのいずれか１項に記載の因果関係推定装置。
【請求項５】
クエリ特定部は、調査項目と当該調査項目の回答の組合せをクエリとして特定する際、当該調査項目に対する反応が現在の因果関係において最も不確実になるような調査項目および回答を特定し、
介入データ生成部は、前記クエリに応じた反応と当該クエリとを含む介入データを生成し、
因果関係更新部は、生成された前記介入データを用いて、前記因果関係を更新する
請求項１から請求項４のうちのいずれか１項に記載の因果関係推定装置。
【請求項６】
因果関係を推定する因果関係推定方法であって、
コンピュータが、前記因果関係に対して介入操作が行われる変数と、当該変数の値との組み合わせであるクエリを特定し、
前記コンピュータが、前記クエリに基づく介入操作により取得される対象変数の値と当該クエリとを含む介入データを生成し、
前記コンピュータが、生成された前記介入データを用いて、前記因果関係を更新し、
前記クエリを特定する際、当該クエリによる前記対象変数の推定誤差を表す期待損失に基づいて特定されるクエリのうち、更新により前記期待損失を最小化するクエリを特定する
ことを特徴とする因果関係推定方法。
【請求項７】
期待損失が最大になるクエリのうち、更新により当該期待損失を最小化するクエリを特定する
請求項６記載の因果関係推定方法。
【請求項８】
因果関係を推定するコンピュータに適用される因果関係推定プログラムであって、
前記コンピュータに、
前記因果関係に対して介入操作が行われる変数と、当該変数の値との組み合わせであるクエリを特定するクエリ特定処理、
前記クエリに基づく介入操作により取得される対象変数の値と当該クエリとを含む介入データを生成する介入データ生成処理、および、
生成された前記介入データを用いて、前記因果関係を更新する因果関係更新処理を実行させ、
前記クエリ特定処理で、前記クエリによる前記対象変数の推定誤差を表す期待損失に基づいて特定されるクエリのうち、更新により前記期待損失を最小化するクエリを特定させる
ための因果関係推定プログラム。
【請求項９】
コンピュータに、
クエリ特定処理で、期待損失が最大になるクエリのうち、更新により当該期待損失を最小化するクエリを特定させる
請求項８記載の因果関係推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、因果関係を推定する因果関係推定装置、因果関係推定方法および因果関係推定プログラムに関する。
【背景技術】
【０００２】
二つ以上のものの間の関係性として、因果関係および相関関係が知られている。因果関係は、二つ以上のものの間に原因と結果の関係があることを意味し、相関関係は、二つ以上のものの間の関連性を意味する。【０００３】
図５は、変数同士の関連性の例を示す説明図である。図５に示す例では、因果関係を有する変数同士について、原因に対する結果を矢印の向きで表している。例えば、変数ｘ１の変化に伴ってｘ２が変化するため、ｘ１とｘ２との間には因果関係があると言える。一方、変数ｘ１の変化に伴ってｘ２およびｘ３がそれぞれ変化するため、ｘ２とｘ３との間には相関関係があると言える。ただし、ｘ２とｘ３とついて、ｘ２またはｘ３のいずれか一方を直接操作しても、他方の変数は変化しないため、ｘ２とｘ３との間に因果関係はない。【０００４】
複数の変数の相関関係を考慮して予測を行うことが一般に行われている。ただし、予測をするためのモデルを用いても、目的変数を適切に制御できない場合がある。具体的には、相関を測るモデルを用いて相関のある変数を変化させても、目的変数が変化しない場合がある。一方、世の中には、因果関係を把握し、その影響の度合いを測ることで解決可能な様々な問題も存在する。このような問題として、例えば、携帯電話の契約を解約した原因を追究して新施策を立案することや、設備の故障の原因を追究して対策をとることなどが挙げられる。【０００５】
因果効果を正しく推定する方法として、統計的因果推論が知られている。統計因果推論は、変数間の因果構造Ｇおよび因果パラメータθをデータから推定する技術である。因果構造Ｇは、変数ｘ間の影響関係を有向辺で表現するグラフであり、因果パラメータθは、変数ｘ間の影響関係の強さに関するパラメータである。【０００６】
統計的因果推論では、変数に関する分布を仮定しない場合、マルコフ同値クラスまでは推定可能であるとしても、因果構造Ｇおよび因果パラメータθを、一意に同定することはできない。例えば、各変数についての非正規分布を仮定し、変数間の線形性を仮定することで、因果構造Ｇおよび因果パラメータθを一意に同定できるようになる。【０００７】
一方、任意の変数に特定の値を割り当てる介入操作により、因果構造を推定することが可能である。介入操作を行うことで、その上位の影響を無視した場合の変数に関する介入データを取得することができる。このデータを使用することで、一意に因果構造を推定することが可能になる。図６は、介入操作の例を示す説明図である。例えば、図６に例示する変数ｘ２に対して、値Ｃを割り当てる介入操作を行うことで、変数ｘ１の影響を無視した場合の介入データにより因果構造を推定することも可能になる。【０００８】
なお、非特許文献１には、因果構造Ｇの推定を効率的に行う介入方法が記載されている。また、非特許文献２には、因果パラメータθを効率的に行う介入方法が記載されている。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】Simon Tong, Daphne Koller, "Active Learning for Structure in Bayesian Networks", IJCAI'01 Proceedings of the 17th international joint conference on Artificial intelligence, Volume 2, p.863 - 869, 2001.
【非特許文献２】Simon Tong, Daphne Koller, "Active Learning for Parameter Estimation in Bayesian Networks", Advances in Neural Information Processing Systems 13 (NIPS 2000), 2000.
【発明の概要】
【発明が解決しようとする課題】
【００１０】
因果構造全体の推定を行うためには、多くの介入実験を行う必要がある。具体的には、因果構造Ｇを知らない状態で、ある介入操作可能な変数ｑを変化させたときの、特定の変数ｙの影響度合いを、できるだけ少ない介入操作で把握できることが好ましい。【００１１】
非特許文献１および非特許文献２は、因果全体に対する構造またはパラメータの推定を効率的に行うための介入方法を開示する。しかし、実際の場面において、必ずしも全体の因果関係を推定できなくても、特定の変数ｙの値が観測できればよい場合もある。【００１２】
すなわち、全変数間の因果構造Ｇではなく、着目したい特定の変数ｙへの影響についてのみ観測できればよい場合も存在する。例えば、図５に示す例において、ｘ１を介入変数とし、ｘ１を変化させたときのｙへの影響を観測できればよい場合、ｘ１〜ｘ６およびｙの関係を厳密に考慮せずに、モデル化できることが好ましい。【００１３】
そこで、本発明は、着目する変数に対する因果関係を効率的に推定できる因果関係推定装置、因果関係推定方法および因果関係推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明による因果関係推定装置は、因果関係を推定する因果関係推定装置であって、因果関係に対して介入操作が行われる変数と、その変数の値との組み合わせであるクエリを特定するクエリ特定部と、クエリに基づく介入操作により取得される対象変数の値とそのクエリとを含む介入データを生成する介入データ生成部と、生成された介入データを用いて、因果関係を更新する因果関係更新部とを備え、クエリ特定部が、クエリによる対象変数の推定誤差を表す期待損失に基づいて特定されるクエリのうち、更新により期待損失を最小化するクエリを特定することを特徴とする。【００１５】
本発明による因果関係推定方法は、因果関係を推定する因果関係推定方法であって、コンピュータが、因果関係に対して介入操作が行われる変数と、その変数の値との組み合わせであるクエリを特定し、コンピュータが、クエリに基づく介入操作により取得される対象変数の値とそのクエリとを含む介入データを生成し、コンピュータが、生成された介入データを用いて、因果関係を更新し、クエリを特定する際、そのクエリによる対象変数の推定誤差を表す期待損失に基づいて特定されるクエリのうち、更新により期待損失を最小化するクエリを特定することを特徴とする。【００１６】
本発明による因果関係推定プログラムは、因果関係を推定するコンピュータに適用される因果関係推定プログラムであって、コンピュータに、因果関係に対して介入操作が行われる変数と、その変数の値との組み合わせであるクエリを特定するクエリ特定処理、クエリに基づく介入操作により取得される対象変数の値とそのクエリとを含む介入データを生成する介入データ生成処理、および、生成された介入データを用いて、因果関係を更新する因果関係更新処理を実行させ、クエリ特定処理で、クエリによる対象変数の推定誤差を表す期待損失に基づいて特定されるクエリのうち、更新により期待損失を最小化するクエリを特定させることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、着目する変数に対する因果関係を効率的に推定できる。
【図面の簡単な説明】
【００１８】
【図１】本発明による因果関係推定装置の一実施形態を示すブロック図である。
【図２】因果関係推定装置の動作例を示すフローチャートである。
【図３】本発明による因果関係推定装置の概要を示すブロック図である。
【図４】少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【図５】変数同士の関連性の例を示す説明図である。
【図６】介入操作の例を示す説明図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態を図面を参照して説明する。
【００２０】
図１は、本発明による因果関係推定装置の一実施形態を示すブロック図である。本実施形態の因果関係推定装置１００は、入力部１０と、因果関係推定部２０と、クエリ特定部３０と、介入データ生成部４０と、因果関係更新部５０と、出力部６０と、記憶部７０とを備えている。
【００２１】
記憶部７０は、因果関係に基づいて観測されたデータ（以下、観測データと記す。）Ｄを記憶する。また、記憶部７０は、後述する処理で推定および更新される因果関係（因果モデル）を記憶してもよい。記憶部７０は、例えば、磁気ディスク等により実現される。なお、記憶部７０が、因果関係推定装置１００の外部に設けられていてもよい。
【００２２】
入力部１０は、記憶部７０に記憶された観測データＤを読み取り、因果関係推定部２０に入力する。
【００２３】
因果関係推定部２０は、入力された観測データＤを用いて、因果関係を表すモデル（以下、因果モデルと記す。）を推定する。本実施形態では、因果モデルは、因果構造Ｇ、および、因果モデルのパラメータ（因果パラメータ）θによる同時分布Ｐ（θ，Ｇ）で表される。
【００２４】
因果関係推定部２０が因果モデルを推定する方法は任意である。因果関係推定部２０は、例えば、観測データＤを用いて、以下の式１に示すＰ（Ｇ）およびＰ（θｉ｜Ｇ）のベイズ更新を行うことにより、因果モデルを推定してもよい。
【００２５】
【数１】
0006977877.tif 000002
【００２６】
また、Ｐ（θ｜Ｄ，Ｇ）について、以下に示す式２が成り立つ。
【００２７】
【数２】
0006977877.tif 000003
【００２８】
式２において、Ｐ（Ｄ｜θ，Ｇ）は、因果パラメータθおよび因果構造Ｇを用いた尤度である。二項分布およびベータ事前分布では、θの各パラメータは０と１の間の値をとり、θの積分は明示的に計算できる。なお、推定の際に用いられる分布は、上記分布に限定されず、他の分布が用いられてもよい。他の分布が用いられた場合でも、整数を数値で近似することが可能である。
【００２９】
以下の説明では、観測データＤの観測後に更新された（Ｇ，θ）の分布をＰ（Ｇ０，θ０）＝Ｐ（Ｇ，θ｜Ｄ）と表わす。
【００３０】
なお、因果関係推定部２０は、観測データＤのみに基づいて因果関係を推定するため、上述するように、因果構造Ｇおよび因果パラメータθを、一意に同定することはできない。そのため、因果関係推定部２０によって推定される因果関係は、曖昧性を残す因果関係であると言える。
【００３１】
クエリ特定部３０は、因果関係に対して介入操作が行われる変数と、その変数の値との組み合わせ（以下、クエリと記す。）を特定する。すなわち、クエリ特定部３０は、介入操作に用いられる変数およびその値を特定する。
【００３２】
本実施形態のクエリ特定部３０は、特定の変数ｙ（以下、対象変数ｙと記す。）への影響度合いを、できるだけ少ない介入操作で把握できるようにするため、介入操作と対象変数ｙとの曖昧性（（言い換えると、介入操作と対象変数ｙの推定の誤り易さ）に着目して、クエリを特定する。
【００３３】
以下、適宜、具体例と対応させながら、クエリ特定部３０の処理を説明する。以下の具体的な説明において、Ｘは、ｄ次元の二項確率ベクトルであり、ｙはＸにおける二項確率変数である。上述するように、ｙは対象変数であり、間接的に制御される変数である。Ｑは、Ｘにおける二項変数であり、クエリを用いて直接操作可能な（すなわち、介入可能な）変数である。  
【００３４】
Ｐ（Ｘ，ｙ｜θ）は、パラメータθのもとでの（ｄ次元の）同時分布である。θｘｉ｜ｐａ（ｘｉ）は、ｘｉの条件付きパラメータであり、ｉ＝１，…，ｄ＋１である。また、Ｐ（θｘｉ｜ｐａ（ｘｉ）｜Ｇ）は、ｘｉについての条件付きベータ事前分布である。Ｐ（θ｜Ｇ）は、Ｐ（θｘｉ｜ｐａ（ｘｉ）｜Ｇ）の総乗、すなわち、以下に例示する式３で表される。
【００３５】
【数３】
0006977877.tif 000004
【００３６】
Ｐ（Ｇ）は、離散的に均一な事前分布である。Ｄは、（Ｘ，ｙ）において観測されるＮ個のデータであり、Ｄ＝｛（ｙ１，ｘ１），…，（ｙＮ，ｘＮ）｝である。
【００３７】
クエリ特定部３０は、ある介入操作を行った時のクエリ「ｑチルダ」（以下、ｑ〜と記す。）と返却される対象変数ｙを用いて因果モデルを更新した場合に、クエリｑ〜と対象変数ｙとの関係がどれくらい曖昧かを評価する。具体的には、クエリ特定部３０は、クエリｑ〜と対象変数ｙの推定を誤ることによって実現される期待損失を評価する。期待損失の定義は任意であり、例えば、期待不確実性（uncertainty ）や、統計的な不確実性（エントロピー）が用いられる。クエリｑ〜による期待損失は、例えば、以下に示す式４で表される。
【００３８】
【数４】
0006977877.tif 000005
【００３９】
式４において、Ｇ０，θ０は、現状の因果関係を表わし、ｑは、最終的に決定すべきクエリを表わす。また、Ｅａ〜Ｐ（ａ）［ｆ（ａ）］は、分布Ｐ（ａ）のもとでの、ａに関する関数ｆ（ａ）の期待値を表す。なお、Ｐ（Ｇ０，θ０｜Ｑ:=ｑ，ｙ，ｘ）を因果関係推定部２０の処理で例示したベイズ更新することにより、損失を計算することが可能である。
【００４０】
なお、クエリ特定部３０は、言い換えると、クエリｑ〜を実行してみたときに返却されるｙおよびＸで因果モデルを更新したときの曖昧さを評価しており、また、現在の因果モデルのパラメータの分布から、返却されそうなｙとＸの期待値を算出しているとも言える。
【００４１】
なお、上記式４で表されるモデルを評価する場合、クエリ特定部３０は、例えば、以下の式５で例示する関係式を用いて期待損失を算出してもよい。
【００４２】
【数５】
0006977877.tif 000006
【００４３】
クエリ特定部３０は、期待損失に基づいて特定されるクエリのうち、期待損失を最小化するようなクエリを特定する。期待損失が大きいほど、クエリと対象変数との関係が曖昧である（すなわち、クエリと対象変数ｙとの間の推定誤差が高くなる）と言える。そこで、クエリ特定部３０は、期待損失が最も大きいクエリの中から、更新により期待損失を最小化できるクエリを特定する。
【００４４】
例えば、期待損失として、上記の式４で示す期待不確実性が用いられる場合、クエリ特定部３０は、以下に例示する式６を用いて、クエリを特定してもよい。式６では、ある介入操作を行った時に、最も期待損失が大きくなりそうなクエリｑ〜のうち、その期待損失を最も小さくするために用いられるクエリｑを決定していることを示す。
【００４５】
【数６】
0006977877.tif 000007
【００４６】
なお、上記説明では、ｍａｘ関数を用いて、期待損失が最も大きいクエリを選択する場合を例示している。ただし、クエリを選択する方法は、期待損失が最も大きいクエリを選択する方法に限定されない。例えば、クエリｑ〜によって更新された際の期待損失の平均や分散に基づいて、クエリを選択してもよい。
【００４７】
以上に示すように、クエリ特定部３０は、クエリによる対象変数の推定誤差を表す期待損失に基づいて特定されるクエリのうち、期待損失を最小化するクエリを特定する。このようにすることで、対象変数ｙに関する因果関係をより明確にすることが可能になる。なお、期待損失に基づいてクエリを特定する際、更新による期待損失が最も大きいクエリを特定することが、より好ましい。
【００４８】
すなわち、本実施形態では、因果関係全体に対する評価基準を適用するのではなく、対象変数ｙに着目した評価を行っている。上述する損失は、介入する変数と対象変数ｙとの関係にのみ焦点を当てているため、特定されるクエリを用いて因果モデルを更新することにより、少ない介入操作で、対象変数ｙに対する因果関係を明確にすることが可能になる。
【００４９】
介入データ生成部４０は、特定されたクエリに基づく介入操作により、対象変数ｙの値を取得する。そして、介入データ生成部４０は、取得した対象変数ｙとクエリとを含むデータ（以下、介入データと記す。）を生成する。介入データ生成部４０は、例えば、推定する因果関係の系に対して介入操作を行った結果を、対象変数ｙの値として取得すればよい。
【００５０】
因果関係更新部５０は、生成された介入データを用いて因果関係を更新する。具体的には、因果関係更新部５０は、因果モデルの分布Ｐ（Ｇ０，θ０）をＰ（θ０｜Ｇ０）Ｐ（Ｇ０）で更新する。本実施形態では、クエリに基づいて対象変数ｙが観測される、すなわち、他のｘは観測されない、という条件の下で更新が行われる。
【００５１】
因果関係更新部５０が因果モデルを更新する方法は任意であり、例えば、不完全データ間におけるベイズ更新が用いられてもよい。以下、算出方法の具体的な一例を説明するが、因果モデルの更新方法は、以下に例示する方法に限定されない。
【００５２】
まず、因果関係更新部５０は、ベイズ規則を用いて、パラメータの分布を更新する。具体的には、因果関係更新部５０は、以下に例示する式７に基づいて、パラメータの分布を更新する。なお、介入操作だけでは事前分布は更新されないことから、式７において、Ｐ（θ０｜Ｇ０）＝Ｐ（θ０｜Ｑ:=ｑ，Ｇ０）が成り立つ。
【００５３】
【数７】
0006977877.tif 000008
【００５４】
次に、因果関係更新部５０は、同様にベイズ規則を用いて、以下に例示する式８に基づき、グラフ構造Ｇにおける分布を（ｑ，ｙ）で更新する。
【００５５】
【数８】
0006977877.tif 000009
【００５６】
なお、式８におけるＰ（ｙ｜Ｑ:=ｑ，Ｇ０）およびＰ（ｙ｜Ｑ:=ｑ）について、それぞれ、以下に示す式９および式１０が成り立つ。
【００５７】
【数９】
0006977877.tif 000010
【００５８】
上述するように、介入操作だけでは事前分布は更新されないことから、式８において、Ｐ（Ｇ０）＝Ｐ（Ｇ０｜Ｑ:=ｑ）が成り立つ。
【００５９】
因果関係更新部５０は、算出されたモデル分布でもとの分布を置き換える。すなわち、Ｐ（θ１｜Ｇ１）＝Ｐ（θ０，Ｇ０｜Ｑ:=ｑ，ｙ）である。
【００６０】
そして、因果関係更新部５０は、任意の方法を用いて、因果関係の更新処理を繰り返すか否か判断する。因果関係更新部５０は、例えば、予め定めた更新回数を超えているか否か判断してもよいし、期待損失（不確実性）に対して設けられた閾値を下回るか否か判断してもよい。因果関係の更新処理を繰り返すと判断された場合（例えば、予め定めた更新回数を超えていない場合、期待損失が閾値を超えている場合）、クエリ特定部３０、介入データ生成部４０および因果関係更新部５０は、上述する処理を繰り返す。
【００６１】
出力部６０は、因果関係の更新結果を出力する。例えば、更新処理がｔ回繰り返された場合、出力部６０は、因果モデルとして、Ｐ（θｔ，Ｇｔ）を出力する。以上の処理からも明らかなように、ここで出力される因果モデルは、Ｑとｙの関係に焦点を当てたＸ間の因果関係の構造およびパラメータをエンコードしたものと言える。
【００６２】
入力部１０と、因果関係推定部２０と、クエリ特定部３０と、介入データ生成部４０と、因果関係更新部５０と、出力部６０とは、プログラム（因果関係推定プログラム）に従って動作するコンピュータのプロセッサ（例えば、ＣＰＵ（Central Processing Unit ）、ＧＰＵ（Graphics Processing Unit）、ＦＰＧＡ（field-programmable gate array ））によって実現される。
【００６３】
例えば、プログラムは、記憶部７０に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、入力部１０、因果関係推定部２０、クエリ特定部３０、介入データ生成部４０、因果関係更新部５０および出力部６０として動作してもよい。また、因果関係推定装置の機能がＳａａＳ（Software as a Service ）形式で提供されてもよい。
【００６４】
入力部１０と、因果関係推定部２０と、クエリ特定部３０と、介入データ生成部４０と、因果関係更新部５０と、出力部６０とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路（circuitry ）、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
【００６５】
また、因果関係推定装置の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【００６６】
次に、本実施形態の因果関係推定装置の動作を説明する。図２は、本実施形態の因果関係推定装置の動作例を示すフローチャートである。入力部１０は、観測データＤを入力する（ステップＳ１１）。因果関係推定部２０は、入力された観測データＤを用いて、基準とする因果モデルを推定する（ステップＳ１２）。
【００６７】
クエリ特定部３０は、介入操作を行うためのクエリを特定する（ステップＳ１３）。具体的には、クエリ特定部３０は、期待損失に基づいて特定されるクエリのうち、更新により期待損失を最小化できるクエリを特定する。介入データ生成部４０は、特定されたクエリで取得される対象変数の値と、そのクエリとを含む介入データを生成する（ステップＳ１４）。因果関係更新部５０は、生成された介入データを用いて因果モデルを更新する（ステップＳ１５）。
【００６８】
因果関係更新部５０は、因果モデルの更新処理を繰り返すか否か判断する（ステップＳ１６）。繰り返すと判断された場合（ステップＳ１６におけるＹｅｓ）、ステップＳ１３以降の処理が繰り返される。一方、繰り返さないと判断された場合（ステップＳ１６におけるＮｏ）、出力部６０は、更新された因果モデルを出力する（ステップＳ１７）。
【００６９】
以上のように、本実施形態では、クエリ特定部３０が、因果関係に対して介入操作が行われる変数と、その変数の値との組み合わせであるクエリを特定し、介入データ生成部４０が、クエリに基づく介入操作により取得される対象変数の値とそのクエリとを含む介入データを生成する。そして、因果関係更新部５０が、生成された介入データを用いて、因果関係を更新する。その際、クエリ特定部３０が、クエリによる対象変数の推定誤差を表す期待損失に基づいて特定されるクエリのうち、更新により期待損失を最小化するクエリを特定する。よって、着目する変数に対する因果関係を、効率的に推定することが可能になる。
【００７０】
すなわち、本実施形態では、クエリｑと対象変数ｙとの関係で最も不確実な部分に対する介入操作を実施することによって、その不確実性を効率的に軽減できるため、因果関係を表わすモデリング精度を効率的に向上させることが可能になる。
【００７１】
以下、本実施形態の因果関係推定装置の応用例を説明する。一例として、アンケート調査による回答から因果関係を推定する事案に対して、本実施形態の因果関係推定装置を利用することが可能である。この場合、各アンケート調査の内容をｘｉに、回答の内容に応じた結果をｙに、それぞれ対応付けることができる。例えば、携帯電話（キャリア）の利用者に対するアンケートとして、「通信速度が遅く、月額料金が安い場合に契約するか」という調査を行ったとする。この場合、「通信速度」や「月額料金」という調査をｘに、実際の契約の有無をｙに対応付けることができる。このような調査から、通信速度や月額料金を変化させる（すなわち、介入操作を行う）ことでの因果関係（影響度）を推定することができる。
【００７２】
また、他にも、小売りの分野において消費者の嗜好を調査するようなマーケティング調査から因果関係を推定する事案に対して、本実施形態の因果関係推定装置を利用することが可能である。例えば、消費者に対して、「あるカレーの味が辛かったら購入するか」というマーケティング調査を行ったとする。この場合、「カレーの辛さ」という調査をｘに、購入の有無をｙに対応付けることができる。このような調査から、辛さを変化させる（すなわち、介入操作を行う）ことでの因果関係（影響度）を推定することができる。
【００７３】
上記具体例において、より一般的には、質問内容または調査内容ｘｉの一部または全部がｑの候補になる。例えば、ｘｉの間でも因果関係があり、ある質問内容ｘｉでその回答を無理矢理固定したとする。この場合、ｘｉに対応する反応ｙが現在の因果モデルにおいて最も不確実になるような、質問内容とその回答を決定すればよい。そして、反応ｙを推定することに重きを置いたサンプル（ｑ，ｙ）を取得し、そのサンプルを用いて因果モデルを更新することで、反応ｙに着目したモデリング精度を向上できる。
【００７４】
このように、反応ｙに着目した情報を収集すればよいため、介入データを収集するコストを低減できるとともに、有効な施策を効率的に発見できるようになる。また、因果関係を推定する際に用いられるコンピュータも、不要な処理を抑制できるため、コンピュータの処理性能も向上させることが可能になる。
【００７５】
次に、本発明の概要を説明する。図３は、本発明による因果関係推定装置の概要を示すブロック図である。本発明による因果関係推定装置８０は、因果関係を推定する因果関係推定装置（例えば、因果関係推定装置１００）であって、因果関係に対して介入操作が行われる変数（例えば、Ｘ）と、その変数の値との組み合わせであるクエリを特定するクエリ特定部８１（例えば、クエリ特定部３０）と、クエリに基づく介入操作により取得される対象変数（例えば、ｙ）の値とそのクエリ（例えば、ｑ）とを含む介入データを生成する介入データ生成部８２（例えば、介入データ生成部４０）と、生成された介入データを用いて、因果関係を更新する因果関係更新部８３（例えば、因果関係更新部５０）とを備えている。
【００７６】
クエリ特定部８１は、クエリによる対象変数の推定誤差を表す期待損失（例えば、期待不確実性など）に基づいて特定されるクエリ（例えば、クエリｑ〜）のうち、更新により期待損失を最小化するクエリ（例えば、ｑ）を特定する。
【００７７】
そのような構成により、着目する変数（対象変数）に対する因果関係を効率的に推定できる。
【００７８】
また、クエリ特定部８１は、期待損失が最大（すなわち、ｍａｘ）になるクエリのうち、更新によりその期待損失を最小化するクエリを特定してもよい。
【００７９】
また、クエリ特定部８１は、クエリによる対象変数の期待不確実性（例えば、上記式４に示す期待不確実性）に基づいて特定される候補クエリのうち、その期待不確実性を最小化するクエリを特定してもよい。
【００８０】
また、因果関係推定装置８０は、因果関係に基づく観測データ（例えば、観測データＤ）を用いて、その因果関係を表わすモデルである因果モデル（例えば、Ｐ（θ，Ｇ））を推定する因果関係推定部（例えば、因果関係推定部２０）を備えていてもよい。そして、因果関係更新部８３は、介入データを用いて、因果モデルを更新してもよい。
【００８１】
また、クエリ特定部８１は、調査項目（例えば、「通信速度」）とその調査項目の回答（例えば、「通信速度が遅い」など）の組合せをクエリとして特定する際、その調査項目に対する反応（例えば、「契約の有無」）が現在の因果関係において最も不確実になるような調査項目および回答を特定してもよい。そして、介入データ生成部８２は、クエリに応じた反応とそのクエリとを含む介入データを生成し、因果関係更新部８３は、生成された介入データを用いて、因果関係を更新してもよい。そのような構成によれば、介入データの収集コストを低減できるとともに、有効な施策を効率的に発見できる。
【００８２】
図４は、少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ１０００は、プロセッサ１００１、主記憶装置１００２、補助記憶装置１００３、インタフェース１００４を備える。
【００８３】
上述の因果関係推定装置は、コンピュータ１０００に実装される。そして、上述した各処理部の動作は、プログラム（因果関係推定プログラム）の形式で補助記憶装置１００３に記憶されている。プロセッサ１００１は、プログラムを補助記憶装置１００３から読み出して主記憶装置１００２に展開し、当該プログラムに従って上記処理を実行する。
【００８４】
なお、少なくとも１つの実施形態において、補助記憶装置１００３は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース１００４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ（Compact Disc Read-only memory ）、ＤＶＤ−ＲＯＭ（Read-only memory）、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ１０００に配信される場合、配信を受けたコンピュータ１０００が当該プログラムを主記憶装置１００２に展開し、上記処理を実行しても良い。
【００８５】
また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置１００３に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【００８６】
１０  入力部
２０  因果関係推定部
３０  クエリ特定部
４０  介入データ生成部
５０  因果関係更新部
６０  出力部
７０  記憶部
１００  因果関係推定装置
【図１】
0006977877.tif 000011
【図２】
0006977877.tif 000012
【図３】
0006977877.tif 000013
【図４】
0006977877.tif 000014
【図５】
0006977877.tif 000015
【図６】
0006977877.tif 000016