(57)【要約】規則記憶手段は、事実及び事実間の関係を定義した規則の集合と、規則の重要度を表す重みとを記憶する。入力データ記憶手段は、入力データを記憶する。クエリ記憶手段は、クエリを記憶する。重要度計算手段は、規則で定義されている事実の種類毎の重要度を計算する。事実データ生成手段は、入力データから、事実の種類毎に、事実として真偽が観測された事実データを、事実の種類の重要度に応じた数だけ生成する。事実データ記憶手段は、生成された事実データを記憶する。推論実行手段は、事実データと規則と重みとを用いて、クエリの結果を確率的に推論する。出力手段は、推論の結果を出力する。
2018207649.tif 000002
【特許請求の範囲】
【請求項１】
事実及び事実間の関係を定義した規則の集合と、前記規則の重要度を表す重みとを記憶する規則記憶手段と、
入力データを記憶する入力データ記憶手段と、
クエリを記憶するクエリ記憶手段と、
前記規則で定義されている前記事実の種類毎の重要度を計算する重要度計算手段と、
前記入力データから、前記事実の種類毎に、事実として真偽が観測された事実データを、前記事実の種類の重要度に応じた数だけ生成する事実データ生成手段と、
前記事実データを記憶する事実データ記憶手段と、
前記事実データと前記規則と前記重みとを用いて、前記クエリの結果を確率的に推論する推論実行手段と、
前記推論の結果を出力する出力手段と、
を含む推論システム。
【請求項２】
前記入力データは、前記事実データの集合であり、
前記事実データ生成手段は、前記入力データから、前記事実の種類毎に、前記事実の種類の重要度に応じた数だけ前記事実データをサンプリングする、
請求項１に記載の推論システム。
【請求項３】
前記入力データは、非構造化データを含み、
前記事実データ生成手段は、前記非構造化データから、前記事実の種類毎に、前記事実の種類の重要度に応じた数だけ前記事実データを抽出する、
請求項１に記載の推論システム。
【請求項４】
前記事実データ生成手段は、前記非構造化データから前記事実データを抽出する特徴抽出器を含む、
請求項３に記載の推論システム。
【請求項５】
前記重要度計算手段は、前記規則の重みに基づいて、前記事実の種類毎の重要度を計算する、
請求項１乃至４の何れかに記載の推論システム。
【請求項６】
前記重要度計算手段は、前記規則によって関連付けられている前記事実の種類同士をリンクで繋いだネットワークにおける前記事実の種類から、前記クエリとなる前記事実の種類までに至る最小のリンク数に基づいて、前記事実の種類毎の重要度を計算する、
請求項１乃至４の何れかに記載の推論システム。
【請求項７】
前記事実データ生成手段は、前記事実の種類毎の前記事実データの合計数が予め設定された値に達すると前記生成を停止する、
請求項１乃至６の何れかに記載の推論システム。
【請求項８】
事実及び事実間の関係を定義した規則の集合と、前記規則の重要度を表す重みと、入力データと、クエリとを記憶する記憶手段、および前記記憶手段に接続されたプロセッサを有する情報処理装置が実行する推論方法であって、
前記プロセッサが、前記規則で定義されている前記事実の種類毎の重要度を計算し、
前記プロセッサが、前記入力データから、前記事実の種類毎に、事実として真偽が観測された事実データを、前記事実の種類の重要度に応じた数だけ生成し、
前記プロセッサが、前記事実データと前記規則と前記重みとを用いて、前記クエリの結果を確率的に推論し、
前記プロセッサが、前記推論の結果を出力する、
推論方法。
【請求項９】
事実及び事実間の関係を定義した規則の集合と、前記規則の重要度を表す重みと、入力データと、クエリとを記憶する記憶手段に接続されたプロセッサを、
前記規則で定義されている前記事実の種類毎の重要度を計算する重要度計算手段と、
前記入力データから、前記事実の種類毎に、事実として真偽が観測された事実データを、前記事実の種類の重要度に応じた数だけ生成する事実データ生成手段と、
前記事実データと前記規則と前記重みとを用いて、前記クエリの結果を確率的に推論する推論実行手段と、
前記推論の結果を出力する出力手段と、
して機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推論システム、推論方法、およびコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
推論システムは、事実および事実間の関係を記述した規則を使用して、知識として明示されていない事実を引き出す情報処理システムである。このような推論システムに関する技術として、以下のようなものが提案されている。【０００３】
例えば、特許文献１には、重みの付いた規則の集合と観測された事実データとを使用して、知識として明示されていない事実が成り立つ確率を計算する推論システムが記載されている。【０００４】
また、非特許文献１には、ＤｅｅｐＤｉｖｅと呼ばれるオープンソースソフトウェアを使用して、テキスト等の非構造化データから推論システムで使用できる構造化された事実データを抽出する特徴抽出器が記載されている。さらに、非特許文献１には、特徴抽出器で抽出された事実データと重みの付いた規則の集合とを使用して、知識として明示されていない事実が成り立つ確率を計算する推論システムが記載されている。【０００５】
また、特許文献２には、入力に対して推論ルール毎の推論演算を行って各推論出力より確定値出力を生成するファジィ推論装置であって、推論ルール毎の推論演算を行うための手段と、各推論ルールに対して各ルール固有の絶対重み係数およびルール間での相対重み係数を設定するための手段と、推論出力を絶対および相対の重み係数により修正するための手段とを備えたファジィ推論装置が記載されている。【０００６】
また、特許文献３には、能動学習において、学習データを無作為にリサンプリングして部分データを生成することが記載されている。学習データは、そのラベル（クラスまたは関数値）が設定されたデータであり、事実データに相当する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１３−００８２２１号公報
【特許文献２】特開平２−２４４３３１号公報
【特許文献３】特開２００５−１０７７４３号公報
【非特許文献】
【０００８】
【非特許文献１】Jaeho Shin, Sen Wu, Feiran Wang, Christopher De Sa, Ce Zhang, and Christopher Re, “Incremental Knowledge Base Construction Using DeepDive” Proceedings of the VLDB Endowment (PVLDB), 2015.
【発明の概要】
【発明が解決しようとする課題】
【０００９】
一般に、推論システムでは、事実データが大規模になると推論のための計算量が増えて、推論に必要な計算時間が指数関数的に増大する傾向がある。【００１０】
そこで、推論に要する計算時間を短縮するために、特許文献３に記載するように推論に使用する事実データの量を削減することが考えられる。しかしながら、推論に使用する事実データの量を無作為に削減すると、推論の精度が大きく低下してしまう。【００１１】
本発明の目的は、上述した課題、即ち、計算量を削減するために事実データの量を無作為に削減すると推論の精度が大きく低下する、という課題を解決する推論システムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明の一形態に係る推論システムは、
事実及び事実間の関係を定義した規則の集合と、前記規則の重要度を表す重みとを記憶する規則記憶手段と、
入力データを記憶する入力データ記憶手段と、
クエリを記憶するクエリ記憶手段と、
前記規則で定義されている前記事実の種類毎の重要度を計算する重要度計算手段と、
前記入力データから、前記事実の種類毎に、事実として真偽が観測された事実データを、前記事実の種類の重要度に応じた数だけ生成する事実データ生成手段と、
前記事実データを記憶する事実データ記憶手段と、
前記事実データと前記規則と前記重みとを用いて、前記クエリの結果を確率的に推論する推論実行手段と、
前記推論の結果を出力する出力手段と、
を含む。【００１３】
本発明の他の形態に係る推論方法は、
事実及び事実間の関係を定義した規則の集合と、前記規則の重要度を表す重みと、入力データと、クエリとを記憶する記憶手段、および前記記憶手段に接続されたプロセッサを有する情報処理装置が実行する推論方法であって、
前記プロセッサが、前記規則で定義されている前記事実の種類毎の重要度を計算し、
前記プロセッサが、前記入力データから、前記事実の種類毎に、事実として真偽が観測された事実データを、前記事実の種類の重要度に応じた数だけ生成し、
前記プロセッサが、前記事実データと前記規則と前記重みとを用いて、前記クエリの結果を確率的に推論し、
前記プロセッサが、前記推論の結果を出力する。【００１４】
また、本発明の他の形態に係るコンピュータ読み取り可能な記録媒体は、
事実及び事実間の関係を定義した規則の集合と、前記規則の重要度を表す重みと、入力データと、クエリとを記憶する記憶手段に接続されたプロセッサを、
前記規則で定義されている前記事実の種類毎の重要度を計算する重要度計算手段と、
前記入力データから、前記事実の種類毎に、事実として真偽が観測された事実データを、前記事実の種類の重要度に応じた数だけ生成する事実データ生成手段と、
前記事実データと前記規則と前記重みとを用いて、前記クエリの結果を確率的に推論する推論実行手段と、
前記推論の結果を出力する出力手段と、
して機能させるプログラムを記録する。
【発明の効果】
【００１５】
本発明は上述した構成を有することにより、計算量を削減するために事実データの量を削減しても推論の精度が大きく低下するのを防止することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１の実施形態に係る推論システムのブロック図である。
【図２】本発明の第１の実施形態に係る推論システムで使用する規則（推論ルール）の例を示す図である。
【図３】本発明の第１の実施形態に係る推論システムで使用する入力データの例を示す図である。
【図４】本発明の第１の実施形態に係る推論システムで使用するクエリの例を示す図である。
【図５】本発明の第１の実施形態に係る推論システムで使用する事実データ生成条件としての事実データの総量と原始式の重要度の例を示す図である。
【図６】本発明の第１の実施形態に係る推論システムで使用する事実データの例を示す図である。
【図７】本発明の第１の実施形態に係る推論システムの推論結果の例を示す図である。
【図８】本発明の第１の実施形態に係る推論システムの動作の一例を示すフローチャートである。
【図９】本発明の第１の実施形態に係る推論システムにおいて規則から原始式を抽出する例を示す図である。
【図１０】本発明の第１の実施形態に係る推論システムにおいて規則の重みを利用して、原始式の種類毎の重要度を計算する例を示す図である。
【図１１】本発明の第１の実施形態に係る推論システムにおいてクエリとなる原始式までのホップ数を利用して原始式の種類毎の重要度を計算する例を示す図である。
【図１２】本発明の第１の実施形態に係る推論システムにおいてクエリとなる原始式までのホップ数を利用して原始式の種類毎の重要度を計算する際のネットワークの別の例を示す図である。
【図１３】本発明の第１の実施形態に係る推論システムにおいて入力データから事実データを抽出する例を示す図である。
【図１４】本発明の第２の実施形態に係る推論システムのブロック図である。
【図１５】本発明の第２の実施形態に係る推論システムで使用する入力データの例を示す図である。
【図１６】本発明の第２の実施形態に係る推論システムの動作の一例を示すフローチャートである。
【図１７】本発明の第２の実施形態に係る推論システムにおいて入力データから事実データを抽出する例を示す図である。
【図１８】本発明の第３の実施形態に係る推論システムのブロック図である。
【発明を実施するための形態】
【００１７】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
[第１の実施形態]
図１は、本発明の第１の実施形態に係る推論システム１００のブロック図である。本実施形態に係る推論システム１００は、論理式で表された知識をもとに推論を実行する論理推論システムである。より具体的には、推論システム１００は、重み付きの規則の集合と事実として観測された事実データとに基づいて、クエリの成立確率を求める確率推論を行う。推論システム１００は、主なハードウェアとして、通信インターフェイス部１０１、操作入力部１０２、画面表示部１０３、記憶部１０４、および演算処理部１０５と、を備えている。
【００１８】
通信インターフェイス部１０１は、データ通信回路から成り、図示しない有線または無線の通信回線を通じて図示しない外部の各種装置との間でデータ通信を行う機能を有している。
【００１９】
操作入力部１０２は、キーボードやマウスなどの操作入力装置から成り、オペレータの操作を検出して演算処理部１０５に出力する機能を有している。
【００２０】
画面表示部１０３は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）やＰＤＰ（Ｐｌａｓｍａ  Ｄｉｓｐｌａｙ  Ｐａｎｅｌ）などの画面表示装置から成り、演算処理部１０５からの指示に応じて、操作メニューや推論結果などの各種情報を画面表示する機能を有している。
【００２１】
記憶部１０４は、ハードディスクやメモリなどの記憶装置から成る。記憶部１０４は、演算処理部１０５で実行する各種の処理に必要な処理情報やプログラムを記憶する記憶領域を有する。具体的には、記憶部１０４は、規則記憶領域１１１、入力データ記憶領域１１２、クエリ記憶領域１１３、事実データ生成条件記憶領域１１４、事実データ記憶領域１１５、推論結果記憶領域１１６、およびプログラム記憶領域１１７を有する。
【００２２】
規則記憶領域１１１は、１以上の規則１３１を記憶する。規則１３１は、事実および事実間の関係を定義した論理式である。規則１３１は、推論ルールとも呼ばれる。
【００２３】
図２は、規則（推論ルール）１３１の例を示す。この例では、規則１３１を一階述語論理の形式で表現している。ここでは、一階述語論理で記述された規則の例を示したが、命題論理で記述された規則であってもよい。
【００２４】
図２に示す１つ目の推論ルール１は、或る人物ｘはタバコを吸っているという事実を表す原始式Ｓｍｏｋｅ（ｘ）と、或る人物ｘはガンであるという事実を表す原始式Ｃａｎｃｅｒ（ｘ）とを、合意を表す論理結合子⇒で結合した論理式である。原始式中のＳｍｏｋｅ、Ｃａｎｃｅｒは述語記号、ｘは変数記号と呼ばれる。推論ルール１は、「たばこを吸う人はガンになりやすい」という意味を表している。また、推論ルール１に付加された、ｗ＝５は、このルール１の重みである。ルールの重みは、ルールの重要度を表す。ルールの重みの値がより大きくなる程、重要度がより高くなる。
【００２５】
図２に示す２つ目の推論ルール２は、或る人物ｘと別の或る人物ｙとは友達であるという事実を表す原始式Ｆｒｉｅｎｄ（ｘ，ｙ）と、或る人物ｘはタバコを吸っているという事実を示す原始式Ｓｍｏｋｅ（ｘ）と或る人物ｙはタバコを吸っているという事実を示す原始式Ｓｍｏｋｅ（ｙ）とを同値を表す論理結合子⇔で結合した論理式とを、合意を表す論理結合子⇒で更に結合した論理式である。推論ルール２は、「タバコを吸う人の友達はタバコを吸っている可能性が高い」という意味を表している。また、ルール２には、ｗ＝１という重みが付加されている。
【００２６】
入力データ記憶領域１１２は、１以上の入力データ１３２を記憶する。本実施形態の場合、入力データ１３２は、事実として真偽が観測された事実を一階述語論理の形式で表現した事実データである。
【００２７】
図３は、入力データ１３２の例を示す。この例の入力データ１３２は、変数と真偽とのペアで構成されている。変数は、特定の個体に関する事実を表す原始式であり、真偽はその事実が真か、偽かを表している。例えば、変数がＳｍｏｋｅ（Ａ）、真偽が１である入力データは、Ａという特定の個人がタバコを吸っているという事実が真であることを表す事実データである。また、変数がＳｍｏｋｅ（Ｃ）、真偽が０である入力データは、Ｃという特定の個人がタバコを吸っているという事実が偽であることを表す事実データである。また、図３は、入力データが原始式の種類でソートされている例を示している。
【００２８】
クエリ記憶領域１１３は、クエリ１３３を記憶する。クエリは、それが真となる確率を知りたい原始式の集合である。
【００２９】
図４は、クエリ１３３の例を示す。この例のクエリ１３３は、変数で構成されている。変数は、特定の個体に関する事実を表す原始式である。例えば、変数がＣａｎｃｅｒ（Ａ）であるクエリは、Ａという特定の個人がガンである確率を問い合わせるクエリである。
【００３０】
事実データ生成条件記憶領域１１４は、入力データ記憶領域１１２に記憶されている入力データ１３２の集合から推論に使用する事実データを生成するための条件を記憶する。本実施形態の場合、事実データ生成条件記憶領域１１４は、事実データの総量１３４と原始式の重要度１３５の２つの条件を記憶する。事実データの総量１３４は、推論に使用する事実データの総量を表す。原始式の重要度１３５は、規則記憶領域１１１に記憶されている規則に含まれる原始式の種類毎の重要度を表す。
【００３１】
図５は、事実データの総量１３４と原始式の重要度１３５の例を示す。この例では、事実データの総量１３４は、１２０件であることを表している。また、この例では、原始式Ｓｍｏｋｅ（ｘ）の重要度は６、原始式Ｃａｎｃｅｒ（ｘ）の重要度は５、原始式Ｆｒｉｅｎｄ（ｘ，ｙ）の重要度は１であることを表している。
【００３２】
事実データ記憶領域１１５は、入力データ１３２の集合から生成された、推論に使用する事実データ１３６を記憶する。事実データ記憶領域１１５に記憶される事実データ１３６は、入力データ記憶領域１１２に記憶される入力データ１３２と同様に、図６に示すように変数と真偽とのペアで構成されている。
【００３３】
推論結果記憶領域１１５は、推論結果１３７を記憶する。推論結果１３７は、クエリ記憶領域１１３に記憶されたクエリ１３３の成立確率を表す。
【００３４】
図７は、推論結果１３７の例を示す。この例の推論結果１３７は、変数と確率とのペアで構成されている。変数は、特定の個体に関する事実を表す原始式であり、確率はクエリの成立確率である。例えば、変数がＣａｎｃｅｒ（Ａ）、確率が８０％である推論結果は、Ａという特定の個人がガンであるクエリの成立確率は８０％であることを表している。
【００３５】
プログラム記憶領域１１７は、プログラム１３８を記憶する。プログラム１３８は、演算処理部１０５に読み込まれて実行されることにより各種の処理部を実現するプログラムである。プログラム１３８は、通信インターフェイス部１０１などのデータ入出力機能を介して図示しない外部装置やＣＤ−ＲＯＭ等のプログラム記憶媒体から予め読み込まれてプログラム記憶領域１１７に保存される。
【００３６】
演算処理部１０５は、ＭＰＵなどのマイクロプロセッサとその周辺回路を有し、記憶部１０４からプログラム１３８を読み込んで実行することにより、上記ハードウェアとプログラム１３８とを協働させて各種処理部を実現する機能を有している。演算処理部１０５で実現される主な処理部は、入力部１２１、重要度計算部１２２、事実データ生成部１２３、推論実行部１２４、および出力部１２５である。
【００３７】
入力部１２１は、通信インターフェイス部１０１または操作入力部１０２を通じて外部から、規則１３１、入力データ１３２、クエリ１３３、および事実データの総量１３４を入力し、記憶部１０４の規則記憶領域１１１、入力データ記憶領域１１２、クエリ記憶領域１１３、および事実データ生成条件記憶領域１１４に保存する機能を有する。
【００３８】
重要度計算部１２２は、規則１３１で定義されている事実の種類毎、即ち原始式の種類毎の重要度を計算する機能を有する。具体的には、重要度計算部１２２は、規則記憶領域１１１から全ての規則１３１を読み出し、規則１３１で定義されている原始式の種類毎に、その重要度を計算する機能を有する。また、重要度計算部１２２は、計算して得られた結果の原始式の種類毎の重要度を、事実データ生成条件記憶領域１１４に原始式の重要度１３５として保存する機能を有する。
【００３９】
事実データ生成部１２３は、入力データ１３２の集合から事実データ１３６の集合を生成する機能を有する。具体的には、事実データ生成部１２３は、入力データ記憶領域１１２から全ての入力データを読み出し、また事実データ生成条件記憶領域１１４から事実データの総量１３４と原始式の重要度１３５とを読み出す。次に、事実データ生成部１２３は、事実データの総量１３４のうち、個々の原子式の種類に割り当てる事実データの件数を、個々の原始式の重要度１３５に基づいて決定する。このとき、重要度のより高い原始式の種類には、重要度のより低い原始式の種類よりもより多くの事実データの件数を割当てる。次に、事実データ生成部１２３は、サンプリング器１２６を使用して、原始式の種類毎に、入力データ１３２に含まれる当該原始式の種類に対応する入力データ１３２の集合から、当該原始式の種類に割り当てられた事実データの件数分を、無作為にサンプリングする。事実データ生成部１２３は、上記サンプリングして得られた入力データ１３２を、事実データ記憶領域１１５に事実データ１３６として保存する。
【００４０】
推論実行部１２４は、規則記憶領域１１１に記憶された規則１３１の集合と事実データ記憶領域１１５に記憶された事実データ１３６の集合とに基づいて、クエリ記憶領域１１３に記憶されたクエリ１３３の成立確率を求める確率推論を行う機能を有する。推論実行部１２４は、確率推論の結果を、推論結果記憶領域１１６に推論結果１３７として保存する。
【００４１】
出力部１２５は、推論結果記憶領域１１６から推論結果１３７を読み出し、画面表示部１０３に出力する機能を有する。また、出力部１２５は、推論結果記憶領域１１６から推論結果１３７を読み出し、通信インターフェイス部１０１を通じて外部の装置へ出力する機能を有する。
【００４２】
図８は、本実施形態に係る推論システム１００の動作の一例を示すフローチャートである。以下、図８を参照して、本実施形態にかかる推論システム１００の動作について説明する。
【００４３】
図８を参照すると、先ず、入力部１２１は、操作入力部１０２または通信インターフェイス部１０１を通じて外部から、規則１３１の集合、入力データ１３２の集合、および事実データ生成条件の一部である事実データの総量１３４を入力し、記憶部１０４の規則記憶領域１１１、入力データ記憶領域１１２、および事実データ生成条件記憶領域１１４に保存する（ステップＳ１０１）。但し、記憶部１０４の規則記憶領域１１１、入力データ記憶領域１１２、および事実データ生成条件記憶領域１１４に規則１３１の集合、入力データ１３２の集合、および事実データの総量１３４が既に記憶されている場合、ステップＳ１０１を省略してよい。
【００４４】
次に、入力部１２１は、操作入力部１０２または通信インターフェイス部１０１を通じて外部から、クエリ１３３の集合を入力し、記憶部１０４のクエリ記憶領域１１３に保存する（ステップＳ１０２）。但し、記憶部１０４のクエリ記憶領域１１３にクエリ１３３の集合が既に記憶されている場合、ステップＳ１０２を省略してよい。
【００４５】
次に、重要度計算部１２２は、記憶部１０４の規則記憶領域１１１から全ての規則１３１を読み出して解析し、規則１３１に含まれる原始式の種類をすべて抽出する（ステップＳ１０３）。例えば、重要度計算部１２２は、読み出した規則１３１が図２に示した推論ルール１と推論ルール２の場合、図９に示すように、Ｓｍｏｋｅ（ｘ）、Ｃａｎｃｅｒ（ｘ）、Ｆｒｉｅｎｄ（ｘ，ｙ）の３種類の原始式を抽出する。このとき、重要度計算部１２２は、推論ルール２に含まれるＳｍｏｋｅ（ｙ）は、推論ルール１に含まれるＳｍｏｋｅ（ｘ）と同じ種類の原始式であると認識する。
【００４６】
次に、重要度計算部１２２は、抽出した原始式の種類の重要度を計算し、事実データ生成条件記憶領域１１４に原始式の重要度１３５として保存する（ステップＳ１０４）。
【００４７】
次に、事実データ生成部１２３は、記憶部１０４の事実データ生成条件記憶領域１１４から事実データの総量１３４と原始式の重要度１３５とを読み出し、事実データの総量１３４と原始式の重要度１３５とに基づいて、原始式の種類毎の事実データの件数を計算する（ステップＳ１０５）。次に、事実データ生成部１２３は、記憶部１０４の入力データ記憶領域１１２から全ての入力データ１３２を読み出し、原始式の種類毎の入力データの集合から、原始式の種類毎の事実データの件数分、入力データをサンプリングし、事実データ記憶領域１１５に事実データ１３６として保存する（ステップＳ１０６）。
【００４８】
次に、推論実行部１２４は、記憶部１０４の規則記憶領域１１１、事実データ記憶領域１１５、およびクエリ記憶領域１１３から、全ての規則１３１、全ての事実データ１３６、および全てのクエリ１３３を読み出し、クエリ１３３毎に、そのクエリの成立確率を全ての規則１３１および全ての事実データ１３６に基づいて推論し、推論結果を推論結果記憶領域１１６に推論結果１３７として保存する（ステップＳ１０７）。
【００４９】
次に、出力部１２５は、記憶部１０４の推論結果記憶領域１１６から推論結果１３７を読み出し、画面表示部１０３に出力し、または／および、通信インターフェイス部１０１を通じて外部の装置へ出力する（ステップＳ１０８）。
【００５０】
次に、重要度計算部１２２が、規則１３１で定義されている原始式の種類毎の重要度を計算する方法について詳細に説明する。
【００５１】
＜規則の重みを利用する方法＞
最初に、規則１３１の重みを利用して、原始式の種類毎の重要度を計算する方法について説明する。規則１３１の重みはその規則１３１の重要度を表す。そのため、重要度のより高い規則に含まれる原始式の種類ほどより重要度が高いと考えられる。そこで、重要度計算部１２２は、原始式の種類の１つ１つに注目して、以下のような処理を実行する。
【００５２】
まず、重要度計算部１２２は、注目中の原始式の種類の重要度を０に初期化する。次に、１つ１つの規則１３１に注目し、注目中の原始式の種類が注目中の規則１３１に含まれていれば、注目中の規則１３１の重みを注目中の原始式の種類の重要度に加算していく。全ての規則１３１に注目し終えた時点の注目中の原始式の種類の重要度の累積値が、注目中の原始式の種類の最終的な重要度となる。具体例を図１０に示す。
【００５３】
図１０において、Ｓｍｏｋｅ（ｘ）に注目すると、その原始式は、推論ルール１と推論ルール２とに含まれている。その結果、Ｓｍｏｋｅ（ｘ）の重要度は、推論ルール１の重み「５」と推論ルール２の重み「１」とを加算した「６」となる。また、Ｃａｎｃｅｒ（ｘ）に注目すると、その原始式は、推論ルール１だけに含まれている。その結果、Ｃａｎｃｅｒ（ｘ）の重要度は、「５」となる。また、Ｆｒｉｅｎｄ（ｘ，ｙ）に注目すると、その原始式は、推論ルール２だけに含まれている。その結果、Ｆｒｉｅｎｄ（ｘ，ｙ）の重要度は、「１」である。
【００５４】
＜クエリとなる原始式までのホップ数を利用する方法＞
次に、クエリとなる原始式までのホップ数を利用して、原始式の種類毎の重要度を計算する方法について説明する。確率論理推論では、規則の集合と事実として観測された事実データとに基づいて、クエリの成立確率を求める。そのため、クエリとなる原始式が一番重要であることは明らかである。また、クエリとなる原始式以外の原始式を含む規則のうち、クエリの確率に影響を及ぼす規則は、クエリとなる原始式に合意や同値などの論理結合子によって直接あるいは１以上の他の規則を介して連結する規則である。そして、クエリの確率への影響の度合いは、クエリとなる原始式により近く連結する規則ほど大きくなる。そこで、重要度計算部１２２は、以下のような処理を実行する。
【００５５】
まず、重要度計算部１２２は、規則１３１によって関連付けられている原始式同士をリンクで繋いだネットワークを生成する。次に、重要度計算部１２２は、そのネットワークにおける原始式から、クエリとなる原始式までに至る最小のリンク数であるホップ数を原始式の種類毎に計算する。そして、重要度計算部１２２は、上記計算した原始式の種類毎のホップ数を、その原始式の種類毎の重要度とする。具体例を図１１に示す。
【００５６】
図１１において、推論ルール１は、原始式Ｓｍｏｋｅ（ｘ）、Ｃａｎｃｅｒ（ｘ）を含み、両者は合意を意味する論理結合子⇒で連結されている。また、推論ルール２は、原始式Ｆｒｉｅｎｄ（ｘ，ｙ）、Ｓｍｏｋｅ（ｘ）、Ｓｍｏｋｅ（ｙ）を含み、Ｓｍｏｋｅ（ｘ）とＳｍｏｋｅ（ｙ）とは論理結合子⇔で連結され、その連結されたものとＦｒｉｅｎｄ（ｘ，ｙ）とが論理結合子⇒で連結されている。そこで、ｘ、ｙに代入するＡ、Ｂの２人の登場人物を仮定し、原始式をノード、連結をリンクとすると、図１１に示すようなネットワークが生成される。
【００５７】
今、Ｃａｎｃｅｒをクエリとする。また、クエリ自身のホップ数を１とする。そして、最も近隣のＣａｎｃｅｒに行き着くまでのホップ数の逆数を、原始式の重要度とする。図１１を参照すると、Ｓｍｏｋｅからクエリまでのホップ数の最小値は２、Ｆｒｉｅｎｄからクエリまでのホップ数の最小値は３である。従って、Ｓｍｏｋｅ（ｘ）の重要度は「１／２」、Ｃａｎｃｅｒ（ｘ）の重要度は「１／１」、Ｆｒｉｅｎｄ（ｘ，ｙ）の重要度は「１／３」となる。
【００５８】
図１１では、Ａ、Ｂの２人の登場人物を仮定してネットワークを生成したが、そのような仮定をせずに、図１２に示すようなネットワークを生成してもよい。図１２に示すネットワークでは、Ｓｍｏｋｅ（ｘ）からクエリまでのホップ数は２、Ｆｒｉｅｎｄ（ｘ，ｙ）からクエリまでのホップ数は３である。Ｓｍｏｋｅ（ｙ）からクエリまでのホップ数は３であるが、Ｓｍｏｋｅ（ｙ）はＳｍｏｋｅ（ｘ）と同じ種類の原始式なので、より少ないＳｍｏｋｅ（ｘ）からクエリまでのホップ数「２」を採用する。そして、原始式の重要度をホップ数の逆数とすると、その結果は図１１と同じく、Ｓｍｏｋｅ（ｘ）の重要度は「１／２」、Ｃａｎｃｅｒ（ｘ）の重要度は「１／１」、Ｆｒｉｅｎｄ（ｘ，ｙ）の重要度は「１／３」となる。
【００５９】
＜その他の方法＞
上記では、原始式の種類毎の重要度を計算する方法として、規則の重みを利用する方法とクエリとなる原始式までのホップ数を利用する方法とを説明したが、その他の規則の構造を利用して原始式の種類毎の重要度を計算してもよい。その他の規則の構造として、図１１および図１２に示したネットワークにおける各ノードである原始式の出線数を利用する方法が考えられる。また、そのような出線数と上述した規則の重み、クエリとなる原始式までのホップ数を組み合わせて、原始式の種類毎の重要度を計算してもよい。ここで、規則の重み、クエリとなる原始式までのホップ数、および原始式の出線数は、規則の構造パラメータと呼ぶことができる。
【００６０】
次に、事実データ生成部１２３が、入力データ１３２の集合から事実データ１３６の集合を生成する方法について詳細に説明する。
【００６１】
今、事実データの総量１３４は、１２０件であるとする。また、原始式の種類は、Ｓｍｏｋｅ（ｘ）、Ｃａｎｃｅｒ（ｘ）、Ｆｒｉｅｎｄ（ｘ，ｙ）の３種類であり、それぞれの重要度１３５は、「６」、「５」、「１」とする。この場合、事実データ生成部１２３は、原始式の種類毎の事実データ数を次式により計算する。
原始式Ｓｍｏｋｅ（ｘ）の事実データの件数
＝１２０×（６／（６＋５＋１））＝６０
原始式Ｃａｎｃｅｒ（ｘ）の事実データの件数
＝１２０×（５／（６＋５＋１））＝５０
原始式Ｆｒｉｅｎｄ（ｘ，ｙ）の事実データの件数
＝１２０×（１／（６＋５＋１））＝１０
【００６２】
次に、事実データ生成部１２３は、図１３に示すように、入力データ記憶領域１１２に記憶されている図３の原始式Ｓｍｏｋｅに分類されている入力データから、無作為に６０件の入力データをサンプリングし、事実データ記憶領域１１５に保存する。また、事実データ生成部１２３は、図１３に示すように、入力データ記憶領域１１２に記憶されている図３の原始式Ｃａｎｃｅｒに分類されている入力データから、無作為に５０件の入力データをサンプリングし、事実データ記憶領域１１５に保存する。また、事実データ生成部１２３は、図１３に示すように、入力データ記憶領域１１２に記憶されている図３の原始式Ｆｒｉｅｎｄに分類されている入力データから、無作為に１０件の入力データをサンプリングし、事実データ記憶領域１１５に保存する。
【００６３】
このように本実施形態によれば、計算量を削減するために事実データの量を削減しても推論の精度が大きく低下するのを防止することができる。その理由は、規則１３１の構造に基づいて、規則１３１で定義されている事実の種類毎の重要度を計算する重要度計算部１２２と、入力データ１３２の集合から、事実の種類毎に、事実として真偽が観測された事実データ１３６を、事実の種類の重要度に応じた数だけ生成する事実データ生成部１２３とを備えているためである。
また本実施形態によれば、事実データの量が削減されるため、事実データを記憶するコンピュータのメモリ量を削減することができる。また本実施形態によれば、事実データの量が削減されるため推論に必要なコンピュータの計算量・計算時間を削減することができる。また本実施形態によれば、上記のようにコンピュータのメモリ量・計算量・計算時間を削減できるため、コンピュータの電力消費量を削減することができる。
【００６４】
[第２の実施形態]
図１４は、本発明の第２の実施形態に係る推論システム２００のブロック図である。本実施形態に係る推論システム２００は、主なハードウェアとして、通信インターフェイス部２０１、操作入力部２０２、画面表示部２０３、記憶部２０４、および演算処理部２０５と、を備えている。そのうち、通信インターフェイス部２０１、操作入力部２０２、および画面表示部２０３は、図１に示した第１の実施形態における通信インターフェイス部１０１、操作入力部１０２、および画面表示部１０３と同じである。
【００６５】
記憶部２０４は、ハードディスクやメモリなどの記憶装置から成る。記憶部２０４は、演算処理部２０５で行う各種の処理に必要な処理情報やプログラムを記憶する記憶領域を有する。具体的には、記憶部２０４は、規則記憶領域２１１、入力データ記憶領域２１２、クエリ記憶領域２１３、事実データ生成条件記憶領域２１４、事実データ記憶領域２１５、推論結果記憶領域２１６、およびプログラム記憶領域２１７を有する。そのうち、規則記憶領域２１１、クエリ記憶領域２１３、事実データ生成条件記憶領域２１４、事実データ記憶領域２１５、および推論結果記憶領域２１６は、図１に示した第１の実施形態における規則記憶領域１１１、クエリ記憶領域１１３、事実データ生成条件記憶領域１１４、事実データ記憶領域１１５、および推論結果記憶領域２１６と同じである。また、規則記憶領域２１１に記憶される規則２３１、クエリ記憶領域２１３に記憶されるクエリ２３３、事実データ生成条件記憶領域２１４に記憶される事実データの総量２３４と原始式の重要度２３５、および推論結果記憶領域２１６に記憶される推論結果２３７は、図１に示した第１の実施形態における規則記憶領域１１１に記憶される規則１３１、クエリ記憶領域１１３に記憶されるクエリ１３３、事実データ生成条件記憶領域１１４に記憶される事実データの総量１３４と原始式の重要度１３５、および推論結果記憶領域１１６に記憶される推論結果１３７と同じである。
【００６６】
入力データ記憶領域２１２は、入力データ２３２を記憶する。入力データ２３２は、テキストデータや画像データなどの非構造化データを含む。また、入力データ２３２は、リレーショナルデータのような構造化データを含んでいてもよい。本実施形態の場合、テキストデータ等の非構造化データを含む入力データ２３２から、一階述語論理の形式で表現した事実データを抽出する。このような入力データ２３２は、生データとも呼ばれる。
【００６７】
図１５は、入力データ２３２の例を示す。この例の入力データ２３２は、テキストデータである。入力データ２３２は、「Ａさんは愛煙家として知られている。」、「Ａさんは、友人のＢさんと良く一緒に散歩に出かける。」といった記事が含まれている。
【００６８】
プログラム記憶領域２１７は、プログラム２３８を記憶する。プログラム２３８は、演算処理部２０５に読み込まれて実行されることにより各種の処理部を実現するプログラムである。プログラム２３８は、通信インターフェイス部２０１などのデータ入出力機能を介して図示しない外部装置やＣＤ−ＲＯＭ等のプログラム記憶媒体から予め読み込まれてプログラム記憶領域２１７に保存される。
【００６９】
演算処理部２０５は、ＭＰＵなどのマイクロプロセッサとその周辺回路を有し、記憶部２０４からプログラム２３８を読み込んで実行することにより、上記ハードウェアとプログラム２３８とを協働させて各種処理部を実現する機能を有している。演算処理部２０５で実現される主な処理部は、入力部２２１、重要度計算部２２２、事実データ生成部２２３、推論実行部２２４、および出力部２２５である。そのうち、入力部２２１、重要度計算部２２２、推論実行部２２４、および出力部２２５は、図１に示した第１の実施形態における入力部１２１、重要度計算部１２２、推論実行部１２４、および出力部１２５と同じである。
【００７０】
事実データ生成部２２３は、入力データ２３２から事実データ２３６を生成する機能を有する。具体的には、事実データ生成部２２３は、入力データ記憶領域２１２から入力データ２３２を読み出し、また事実データ生成条件記憶領域２１４から事実データの総量２３４と原始式の重要度２３５とを読み出す。次に、事実データ生成部２２３は、事実データの総量２３４のうち、個々の原子式の種類に割り当てる事実データの件数を、個々の原始式の重要度２３５に基づいて決定する。このとき、重要度のより高い原始式の種類には、重要度のより低い原始式の種類よりもより多くの事実データの件数を割当てる。次に、事実データ生成部２２３は、特徴抽出器２２６を使用して、原始式の種類毎に、入力データ２３２から当該原始式の種類に割り当てられた事実データの件数分の事実データを抽出する。事実データ生成部２２３は、上記抽出して得られた事実データを、事実データ記憶領域２１５に事実データ２３６として保存する。
【００７１】
ここで、特徴抽出器２２６は、原始式の種類に１対１に対応する。例えば、１つの特徴抽出器２２６は、原始式Ｓｍｏｋｅ（ｘ）に対応する。また別の１つの特徴抽出器２２６は、原始式Ｃａｎｃｅｒ（ｘ）に対応する。さらに別の１つの特徴抽出器２２６は、原始式Ｆｒｉｅｎｄ（ｘ，ｙ）に対応する。事実データ生成部２２３は、入力データ２３１を所定のデータサイズに分割する。分割して得られたデータの塊をチャンクと呼ぶ。上記所定のデータサイズは、固定化されていてもよいし、事実データ生成条件の１つとして外部から指定できるようになっていてもよい。事実データ生成部２２３は、入力データ２３１を構成するチャンクの集合から無作為に１つのチャンクを取り出し、個々の特徴抽出器２２６に入力する。個々の特徴抽出器２２６は、入力されたチャンクを解析し、個々の特徴抽出器２２６に対応する原始式に相当する事実がチャンクに含まれていれば、その事実を抽出して一階述語論理の形式で出力する。事実データ生成部２２３は、個々の特徴抽出器２２６から出力される事実データの個数をカウントし、原始式の種類毎に割り当てた件数の事実データを出力した特徴抽出器２２６の動作を停止させる。また、特徴抽出器２２６から出力された事実データを、事実データ記憶領域２１５に事実データ２３６として保存する。このような特徴抽出器２２６として、例えば非特許文献１に記載された特徴抽出器を使用することができる。
【００７２】
図１６は、本実施形態に係る推論システム２００の動作の一例を示すフローチャートである。図１６に示すステップＳ２０１〜Ｓ２０８のうち、ステップＳ２０１〜Ｓ２０５、Ｓ２０７〜Ｓ２０８は、図８に示した第１の実施形態に係る推論システム１００のステップＳ１０１〜Ｓ１０８、Ｓ１０７〜１０８の動作と同じである。
【００７３】
図１６のステップＳ２０６では、事実データ生成部２２３は、記憶部２０４の入力データ記憶領域２１２から入力データ２３２を読み出し、原始式の種類毎の特徴抽出器２２６を用いて、入力データ２３２から、原始式の種類毎の事実データの件数分の事実データを抽出し、事実データ記憶領域２１５に事実データ２３６として保存する。
【００７４】
次に、事実データ生成部２２３が、入力データ２３２から事実データ２３６を生成する方法について詳細に説明する。
【００７５】
今、事実データの総量２３４は、１２０件であるとする。また、原始式の種類は、Ｓｍｏｋｅ（ｘ）、Ｃａｎｃｅｒ（ｘ）、Ｆｒｉｅｎｄ（ｘ，ｙ）の３種類であり、それぞれの重要度２３５は、「６」、「５」、「１」とする。この場合、事実データ生成部２２３は、原始式の種類毎の事実データ数を、原始式Ｓｍｏｋｅ（ｘ）は６０件、原始式Ｃａｎｃｅｒ（ｘ）は５０件、原始式Ｆｒｉｅｎｄ（ｘ，ｙ）は１０件として計算する。
【００７６】
次に、事実データ生成部２２３は、図１７に示すように、入力データ２３２から無作為に抽出したチャンクを、原始式Ｓｍｏｋｅ（ｘ）に対応する特徴抽出器２２６−１、原始式Ｃａｎｃｅｒ（ｘ）に対応する特徴抽出器２２６−２、および原始式Ｆｒｉｅｎｄ（ｘ，ｙ）に対応する特徴抽出器２２６−３に入力する。特徴抽出器２２６−１は、入力されたチャンクを解析し、原始式Ｓｍｏｋｅ（ｘ）に相当する事実が存在すれば、それを抽出して所定のフォーマットで出力する。また、特徴抽出器２２６−２は、入力されたチャンクを解析し、原始式Ｃａｎｃｅｒ（ｘ）に相当する事実が存在すれば、それを抽出して所定のフォーマットで出力する。また、特徴抽出器２２６−３は、入力されたチャンクを解析し、原始式Ｆｒｉｅｎｄ（ｘ，ｙ）に相当する事実が存在すれば、それを抽出して所定のフォーマットで出力する。
【００７７】
事実データ生成部２２３は、特徴抽出器２２６−１〜２２６−３から事実データが出力されたか否かを監視する。事実データ生成部２２３は、特徴抽出器２２６−１〜２２６−３から事実データが出力されたならば、その出力された事実データを事実データ記憶領域２１５に保存する。また事実データ生成部２２３は、特徴抽出器２２６−１〜２２６−３毎に事実データの生成数をカウントする。
【００７８】
事実データ生成部２２３は、１つのチャンクの処理を終えると、無作為に抽出した次の１つのチャンクについて上記と同様の動作を繰り返す。そして、事実データ生成部２２３は、特徴抽出器２２６−１から合計６０件の事実データが出力されると、特徴抽出器２２６−１の動作を停止させる。また、事実データ生成部２２３は、特徴抽出器２２６−２から合計５０件の事実データが出力されると、特徴抽出器２２６−２の動作を停止させる。また、事実データ生成部２２３は、特徴抽出器２２６−３から合計１０件の事実データが出力されると、特徴抽出器２２６−３の動作を停止させる。
【００７９】
このように本実施形態によれば、計算量を削減するために事実データの量を削減しても推論の精度が大きく低下するのを防止することができる。その理由は、規則２３１の構造に基づいて、規則２３１で定義されている事実の種類毎の重要度を計算する重要度計算部２２２と、テキスト等の非構造データを含む入力データ２３２から、事実の種類毎に、事実として真偽が観測された事実データ２３６を、事実の種類の重要度に応じた数だけ生成する事実データ生成部２２３とを備えているためである。
【００８０】
また、テキスト等の非構造データを含む入力データ２３２から、論理推論で用いる事実データのフォーマットで抽出する事実データの数が削減できるため、その分、生データから事実データを抽出するのに要する計算時間を削減することができる。
【００８１】
[第３の実施形態]
次に、本発明の第３の実施形態について説明する。
【００８２】
図１８は、本発明の第３の実施形態に係る推論システムのブロック図である。図１８を参照すると、本実施形態に係る推論システム３００は、規則記憶部３０１と、入力データ記憶部３０２と、クエリ記憶部３０３と、重要度計算部３０４と、事実データ生成部３０５と、事実データ記憶部３０６と、推論実行部３０７と、出力部３０８とから構成される。
【００８３】
規則記憶部３０１は、事実及び事実間の関係を定義した規則の集合と、規則の重要度を表す重みとを記憶する。入力データ記憶部３０２は、入力データを記憶する。クエリ記憶部３０３は、クエリを記憶する。重要度計算部３０４は、規則の構造に基づいて、規則で定義されている事実の種類毎の重要度を計算する。事実データ生成部３０５は、入力データから、事実の種類毎に、事実として真偽が観測された事実データを、事実の種類の重要度に応じた数だけ生成する。事実データ記憶部は、事実データを記憶する。推論実行部３０７は、事実データと規則と重みとを用いて、クエリの結果を確率的に推論する。出力部３０８は、推論の結果を出力する。上記の重要度計算部３０４、推論実行部３０７、および出力部３０８は、図１の重要度計算部１２２、推論実行部１２４、および出力部１２５と同様に実現することができる。また、上記の事実データ生成部は、図１の事実データ生成部１２３または図１４の事実データ生成部２２３と同様に実現することができる。
【００８４】
このように構成された本実施形態に係る推論システムは、以下のように動作する。即ち、重要度計算部３０４は、規則記憶部３０１に記憶された規則の構造に基づいて、規則で定義されている事実の種類毎の重要度を計算する。次に、事実データ生成部３０５は、入力データ記憶部３０２に記憶された入力データから、事実の種類毎に、事実として真偽が観測された事実データを、重要度計算部３０４で計算された事実の種類の重要度に応じた数だけ生成し、事実データ記憶部３０６に記憶する。次に、推論実行部３０７は、事実データ記憶部３０６に記憶された事実データと規則記憶部３０１に記憶された記憶と重みとを用いて、クエリ記憶部に記憶されたクエリの結果を確率的に推論する。次に、出力部３０８は、推論実行部３０７の推論結果を出力する。
【００８５】
このように本実施形態によれば、計算量を削減するために事実データの量を削減しても推論の精度が大きく低下するのを防止することができる。その理由は、推論に使用する規則の構造に基づいて、推論に使用する規則で定義されている事実の種類毎の重要度を計算し、入力データの集合から、事実の種類毎に、事実として真偽が観測された事実データを、事実の種類の重要度に応じた数だけ生成するためである。
【００８６】
以上、本発明を幾つかの実施形態を挙げて説明したが、本発明は、上述した実施形態に限定されるものではない。本発明の構成や詳細には、本発明の範囲内で当業者が理解しうる様々な変更をすることができる。
【００８７】
なお、本発明は、日本国にて２０１７年５月１１日に特許出願された特願２０１７−０９４９４８の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。
【産業上の利用可能性】
【００８８】
本発明は、事実および事実間の関係を記述した規則を使用して、知識として明示されていない事実を推論する推論システム、特に確率推論システムに利用できる。
【符号の説明】
【００８９】
１００…推論システム
１０１…通信インターフェイス部
１０２…操作入力部
１０３…画面表示部
１０４…記憶部
１０５…演算処理部
１１１…規則記憶領域
１１２…入力データ記憶領域
１１３…クエリ記憶領域
１１４…事実データ生成条件記憶領域
１１５…事実データ記憶領域
１１６…推論結果記憶領域
１１７…プログラム記憶領域
１２１…入力部
１２２…重要度計算部
１２３…事実データ生成部
１２４…推論実行部
１２５…出力部
１２６…サンプリング器
１３１…規則
１３２…入力データ
１３３…クエリ
１３４…事実データの総量
１３５…原始式の重要度
１３６…事実データ
１３７…推論結果
１３８…プログラム
２００…推論システム
２０１…通信インターフェイス部
２０２…操作入力部
２０３…画面表示部
２０４…記憶部
２０５…演算処理部
２１１…規則記憶領域
２１２…入力データ記憶領域
２１３…クエリ記憶領域
２１４…事実データ生成条件記憶領域
２１５…事実データ記憶領域
２１６…推論結果記憶領域
２１７…プログラム記憶領域
２２１…入力部
２２２…重要度計算部
２２３…事実データ生成部
２２４…推論実行部
２２５…出力部
２２６…特徴抽出器
２２６−１…Ｓｍｏｋｅ抽出器
２２６−２…Ｃａｎｃｅｒ抽出器
２２６−３…Ｆｒｉｅｎｄ抽出器
２３１…規則
２３２…入力データ
２３３…クエリ
２３４…事実データの総量
２３５…原始式の重要度
２３６…事実データ
２３７…推論結果
２３８…プログラム
３００…推論システム
３０１…規則記憶部
３０２…入力データ記憶部
３０３…クエリ記憶部
３０４…重要度計算部
３０５…事実データ生成部
３０６…事実データ記憶部
３０７…推論実行部
３０８…出力部
【図１】
2018207649.tif 000003
【図２】
2018207649.tif 000004
【図３】
2018207649.tif 000005
【図４】
2018207649.tif 000006
【図５】
2018207649.tif 000007
【図６】
2018207649.tif 000008
【図７】
2018207649.tif 000009
【図８】
2018207649.tif 000010
【図９】
2018207649.tif 000011
【図１０】
2018207649.tif 000012
【図１１】
2018207649.tif 000013
【図１２】
2018207649.tif 000014
【図１３】
2018207649.tif 000015
【図１４】
2018207649.tif 000016
【図１５】
2018207649.tif 000017
【図１６】
2018207649.tif 000018
【図１７】
2018207649.tif 000019
【図１８】
2018207649.tif 000020
【手続補正書】
【提出日】令和1年10月8日(2019.10.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
事実及び事実間の関係を定義した規則の集合と、前記規則の重要度を表す重みとを記憶する規則記憶手段と、
入力データを記憶する入力データ記憶手段と、
クエリを記憶するクエリ記憶手段と、
前記規則で定義されている前記事実の種類毎の重要度を計算する重要度計算手段と、
前記入力データから、前記事実の種類毎に、事実として真偽が観測された事実データを、前記事実の種類の重要度に応じた数だけ生成する事実データ生成手段と、
前記事実データを記憶する事実データ記憶手段と、
前記事実データと前記規則と前記重みとを用いて、前記クエリの結果を確率的に推論する推論実行手段と、
前記推論の結果を出力する出力手段と、
を含む推論システム。
【請求項２】
前記入力データは、前記事実データの集合であり、
前記事実データ生成手段は、前記入力データから、前記事実の種類毎に、前記事実の種類の重要度に応じた数だけ前記事実データをサンプリングする、
請求項１に記載の推論システム。
【請求項３】
前記入力データは、非構造化データを含み、
前記事実データ生成手段は、前記非構造化データから、前記事実の種類毎に、前記事実の種類の重要度に応じた数だけ前記事実データを抽出する、
請求項１に記載の推論システム。
【請求項４】
前記事実データ生成手段は、前記非構造化データから前記事実データを抽出する特徴抽出器を含む、
請求項３に記載の推論システム。
【請求項５】
前記重要度計算手段は、前記規則の重みに基づいて、前記事実の種類毎の重要度を計算する、
請求項１乃至４の何れかに記載の推論システム。
【請求項６】
前記重要度計算手段は、前記規則によって関連付けられている前記事実の種類同士をリンクで繋いだネットワークにおける前記事実の種類から、前記クエリとなる前記事実の種類までに至る最小のリンク数に基づいて、前記事実の種類毎の重要度を計算する、
請求項１乃至４の何れかに記載の推論システム。
【請求項７】
前記事実データ生成手段は、前記事実の種類毎の前記事実データの合計数が予め設定された値に達すると前記生成を停止する、
請求項１乃至６の何れかに記載の推論システム。
【請求項８】
事実及び事実間の関係を定義した規則の集合と、前記規則の重要度を表す重みと、入力データと、クエリとを記憶する記憶手段、および前記記憶手段に接続されたプロセッサを有する情報処理装置が実行する推論方法であって、
前記プロセッサが、前記規則で定義されている前記事実の種類毎の重要度を計算し、
前記プロセッサが、前記入力データから、前記事実の種類毎に、事実として真偽が観測された事実データを、前記事実の種類の重要度に応じた数だけ生成し、
前記プロセッサが、前記事実データと前記規則と前記重みとを用いて、前記クエリの結果を確率的に推論し、
前記プロセッサが、前記推論の結果を出力する、
推論方法。
【請求項９】
事実及び事実間の関係を定義した規則の集合と、前記規則の重要度を表す重みと、入力データと、クエリとを記憶する記憶手段に接続されたプロセッサを、
前記規則で定義されている前記事実の種類毎の重要度を計算する重要度計算手段と、
前記入力データから、前記事実の種類毎に、事実として真偽が観測された事実データを、前記事実の種類の重要度に応じた数だけ生成する事実データ生成手段と、
前記事実データと前記規則と前記重みとを用いて、前記クエリの結果を確率的に推論する推論実行手段と、
前記推論の結果を出力する出力手段と、
して機能させるためのプログラム。
【国際調査報告】
2018207649.tif 000021
2018207649.tif 000022