(57)【要約】  トレーニングサンプルが１つしか与えられない場合でも新たな確率的ルールを学習できる情報処理システムを提供する。学習システム１００は、ＫＢ（knowledge base）記憶部１１０と、ルール生成部１３０と、重み算出部１４０と、を含む。ＫＢ記憶部１１０は、複数のイベントのイベント間のルール群を記憶する。ルール生成部１３０は、１以上の新たなルールを、ルール群、及び、イベント間の含意スコアに基づいて生成する。重み算出部１４０は、確率的推論に適用される１以上の新たなルールの重みを含意スコアに基づいて算出する。【選択図】図１
2019525336.tif 000002
【特許請求の範囲】
【請求項１】
複数のイベントのイベント間のルール群を記憶する知識記憶手段と、
１以上の新たなルールを、前記ルール群、及び、前記イベント間の含意スコアに基づいて生成する、ルール生成手段と、
確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する、重み算出手段と、
を備える、情報処理システム。
【請求項２】
前記重み算出手段は、前記新たなルールの重みを、前記新たなルールに関するイベントと他のイベントとの間のルールの重み、及び、前記新たなルールに関するイベント間の含意スコアに基づいて算出する、
請求項１に記載の情報処理システム。
【請求項３】
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフで表わされ、
前記ルール生成手段は、新たなエッジの候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、選択した新たなエッジの候補の含意スコアの合計が最大になるような、最小数の新たなエッジの候補を選択することにより、前記１以上の新たなルールを生成する、
請求項１又は２に記載の情報処理システム。
【請求項４】
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフで表わされ、
前記ルール生成手段は、新たなエッジ候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、選択した新たなエッジの候補について前記重み算出手段により算出される前記重みを用いて得られる、前記観測値及び前記ターゲットイベントの結合確率が最大になるような、最小数の新たなエッジの候補を選択することにより、前記１以上の新たなルールを生成する、
請求項１又は２に記載の情報処理システム。
【請求項５】
１以上の新たなルールを、複数のイベントのイベント間のルール群、及び、前記イベント間の含意スコアに基づいて生成し、
確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する、
情報処理方法。
【請求項６】
前記新たなルールの重みを、前記新たなルールに関するイベントと他のイベントとの間のルールの重み、及び、前記新たなルールに関するイベント間の含意スコアに基づいて算出する、
請求項５に記載の情報処理方法。
【請求項７】
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフで表わされ、
新たなエッジの候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、選択した新たなエッジの候補の含意スコアの合計が最大になるような、最小数の新たなエッジの候補を選択することにより、前記１以上の新たなルールを生成する、
請求項５又は６に記載の情報処理方法。
【請求項８】
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフで表わされ、
新たなエッジ候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、選択した新たなエッジの候補について算出される前記重みを用いて得られる、前記観測値及び前記ターゲットイベントの結合確率が最大になるような、最小数の新たなエッジの候補を選択することにより、前記１以上の新たなルールを生成する、
請求項５又は６に記載の情報処理方法。
【請求項９】
コンピュータに、
１以上の新たなルールを、複数のイベントのイベント間のルール群、及び、前記イベント間の含意スコアに基づいて生成し、
確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する、
処理を実行させるプログラムを記憶する、コンピュータにより読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理方法、及び、コンピュータにより読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
推論方法として、知識ベース（knowledge base）（ＫＢとも表記される）を利用した確率的推論が知られている。確率的推論では、観測値、及び、クエリ（ターゲットイベント）が入力されると、観測値が与えられたときのクエリの確率が、ＫＢ内のルール集合に基づいて計算される。非特許文献４に開示されているマルコフロジックネットワーク（Markov Logic Network）（ＭＬＮとも表記される）は確率的推論の一例である。確率的推論では、非特許文献４に示されているように、確率、又は、重みが、ＫＢ内の各ルールに割り当てられる。
【０００３】
確率的推論では、決定論的推論と同様に、ＫＢ内の不完全なルールの影響を受ける。しかしながら、ＫＢのルール集合を手動で定義するのには多大な労力を要する。そのため、様々な確率的推論フレームワークについて、データに基づいて新たなルールを自動的に学習する幾つかの方法が提案されている。例えば、非特許文献１では、論理的学習法、及び、関係性学習処理に関するホーン節（Horn clause）を、カーネルを利用して学習する方法が開示されている。非特許文献２では、事前確率付きのベイジアンネットワークを構造学習する方法が開示されている。非特許文献３では、ＭＬＮを構造学習する方法が開示されている。これらの方法は、サンプル数ｎ＞＞１の大量のトレーニングデータを必要とする。ここで、各トレーニングデータのサンプルは、過去からの観測値を結合した集合である。
【０００４】
関連技術として、特許文献１には、テキストが別のテキストを含意しているかどうかを、テキストの組み合わせに対する特徴量に基づいて評価する、テキスト含意評価装置が開示されている。特許文献２には、各エッジがコスト値を有するエッジ群からなるハイパーグラフを含む知識ベースが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第２０１３／０５８１１８号
【特許文献２】特開平０７−３３４３６８号公報
【非特許文献】
【０００６】
【非特許文献１】Paolo Frasconi, et al., “kLog: A Language for Logical and Relations Learning with Kernels”, Artificial Intelligence, Volume 217, p.p. 117-143, December 2014
【非特許文献２】Vikash Mansinghka, et al., “Structured Priors for Structure Learning”,. Proceedings of the Twenty-Second Conference on Uncertainty in Artificial Intelligence (UAI 2006), July 2006
【非特許文献３】Jan Van Haaren, et al., “Lifted generative learning of Markov logic networks”, Machine Learning, Volume 103, Issue 1, p.p. 27-55, April 2016
【非特許文献４】Matthew Richardson, et al., “Markov logic networks”, Machine Learning, Volume 62, Issue 1, p.p. 107-136, February 2006
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述の非特許文献では、汎用ルールを過剰適合が発生することなく学習するために、ｎ個（ｎ＞＞１）のトレーニングサンプルが必要となる。しかしながら、このような大量のトレーニングデータの取得が常に可能であるとは限らない。極端な場合、トレーニングサンプルは１つしか存在しない。
【０００８】
本発明の目的は、上述の課題を解決し、トレーニングサンプルが１つしか与えられない場合でも新たな確率的ルールを学習できる、情報処理システム、情報処理方法、及び、コンピュータにより読み取り可能な記録媒体を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の一態様における情報処理システムは、複数のイベントのイベント間のルール群を記憶する知識記憶手段と、１以上の新たなルールを、前記ルール群、及び、前記イベント間の含意スコアに基づいて生成する、ルール生成手段と、確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する、重み算出手段と、を備える。
【００１０】
本発明の一態様における情報処理方法は、１以上の新たなルールを、複数のイベントのイベント間のルール群、及び、前記イベント間の含意スコアに基づいて生成し、確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する。
【００１１】
本発明の一態様におけるコンピュータにより読み取り可能な記録媒体は、コンピュータに、１以上の新たなルールを、複数のイベントのイベント間のルール群、及び、前記イベント間の含意スコアに基づいて生成し、確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する、処理を実行させるプログラムを記憶する。
【発明の効果】
【００１２】
本発明の効果は、トレーニングサンプルが１つしか与えられない場合でも、新たな確率的ルールを学習できることである。
【図面の簡単な説明】
【００１３】
【図１】実施形態の特徴的な構成を示すブロック図である。
【図２】実施形態における学習システム１００の構成を示すブロック図である。
【図３】実施形態において学習システム１００をコンピュータ上で実現する場合の構成を示すブロック図である。
【図４】実施形態における学習システム１００の処理を示すフローチャートである。
【図５】実施形態におけるＫＢ内のルールの例を示す図である。
【図６】実施形態におけるＫＢ内のルールに基づくグラウンデッドネットワークの例を示す図である。
【図７】実施形態における新たなエッジの候補、及び、スコアの例を示す図である。
【図８】実施形態における新たなエッジの選択例を示す図である。
【図９】実施形態における新たなエッジの候補、及び、スコアの他の例を示す図である。
【図１０】実施形態における新たなエッジの候補、及び、スコアのさらに他の例を示す図である。
【図１１】実施形態における新たなルールに関するグラフの一部の例を示す図である。
【発明を実施するための形態】
【００１４】
本発明の実施形態について以下に説明する。
【００１５】
はじめに、本発明の実施形態の構成について説明する。図２は、実施形態における学習システム１００の構成を示すブロック図である。学習システム１００は、本発明の情報処理システムの一実施形態である。図２を参照すると、実施形態の学習システム１００は、ＫＢ（knowledge base）記憶部（知識記憶モジュールとも記載する）１１０と、入力部１２０と、ルール生成部（ルール生成モジュールとも記載する）１３０と、重み算出部（重み算出モジュールとも記載する）１４０と、を含む。ルール生成部１３０は、エッジ候補生成部１３１と、スコア算出部１３２と、エッジ選択部１３３と、ルール決定部１３４と、を含む。
【００１６】
ＫＢ記憶部１１０は、イベント間の１以上のルールを含むＫＢを記憶する。
【００１７】
図５は、実施形態におけるＫＢ内のルールの例を示す図である。
【００１８】
図５のＫＢでは、以下の３種類のルール：（X, sell, Y）＝＞（X, earn, Z）、（X, sell, Y）＝＞（X, drop, Y）、及び、（X, drop, Y）＝＞（X, go bankrupt）が存在する。ここで、「（X, sell, Y）」は、動詞「sell（売る）」、意味的主語「X」、及び、意味的目的語「Y」を含むイベント「X sells Y」を、述語項構造で表したものである。記号「＝＞」は、記号の左側のイベントが前提、記号の右側のイベントが結論である、含意関係（implication relation）を示す。ここで、用語「含意（implication）」は、「Peter buys book」＝＞「Peter sells book」のような未来予測だけでなく、「Peter buys book」＝＞「Peter owns book」のようなテキストの伴意（textual entailment）を含む広い意味に用いられる。簡単のため、各ルールは、１つの前提イベント、及び、１つの結論イベントを含むと仮定する（ホーン節（Horn clause））。確率的推論では、非特許文献４に示されるように、確率、又は、重みが各ルールに割り当てられる。
【００１９】
ＫＢ内のルールは、複数のトレーニングサンプルに基づいて生成され、ＫＢに前もって記憶されていると仮定する。
【００２０】
ここで、（X, sell, Y）のようなイベントは、非グラウンデッドイベント（ungrounded event）と呼ばれ、プレースホルダーＸ、及び、Ｙが、主語、及び、目的語にそれぞれ対応する。一方、（ABC, sell, computer）のようなイベントは、グラウンデッドイベント（grounded event）と呼ばれ、各プレースホルダーはエンティティで置き換えられている。
【００２１】
図６は、実施形態おけるＫＢ内のルールに基づくグラウンデッドネットワーク（grounded network）の例を示す図である。
【００２２】
図６では、グラウンデッドネットワークは、無向エッジにより連結されたグラフとして表わされる。グラフでは、各ノードがグラウンデッドイベントに対応し、２つのノードの間の各エッジは、２つのイベントの間のルールに対応する。エッジは、対応する２つのイベントが同じルールで発生する場合、かつその場合にのみ記載される。なお、一般的に、イベントの共起を含むルールのような更に複雑なルールを設けることもできる。
【００２３】
ＫＢを用いて、確率的クエリを実行できる。例えば、観測値（観測イベント）の集合Ｏが与えられた場合の、ターゲットイベントＴの確率を導出することができる。観測値、及び、ターゲットイベントがｅｏ：＝（ABC, sell, computer）、及び、ｅｔ：＝（ABC, go bankrupt）のように定義される場合、確率Ｐ（Ｔ＝ｅｔ｜Ｏ＝｛ｅｏ｝）は、例えば非特許文献４に従って算出することができる。
【００２４】
しかしながら、観測値及びターゲットイベントがｅｏ：＝（ABC, produce, computer）、及び、ｅｔ：＝（ABC, go bankrupt）のように定義される場合、観測値、及び、当該観測値に関連するルールは、図５に示すＫＢ内に定義されない、すなわち観測値ｅｏは未知の観測値であるため、観測値｛ｅｏ｝は、Ｐ（Ｔ＝ｅｔ｜Ｏ＝｛ｅｏ｝）を導出する際には無関係となる。別の表現をすると、確率は、Ｐ（Ｔ＝ｅｔ｜Ｏ＝｛ｅｏ｝）＝Ｐ（Ｔ＝ｅｔ）と表現される。
【００２５】
上記に基づくと、ＫＢ内の「ルールの欠落（rule is missing）」は「∃ｅｏ∈Ｏについて：グラウンデッドネットワークに、観測イベントｅｏとターゲットイベントｅｔを接続する経路が存在しない」場合、かつその場合のみと定義される。ｅｏとターゲットイベントｅｔとの間の経路が無いことが、Ｐ（Ｔ＝ｅｔ｜Ｏ＝｛ｅｏ｝）＝Ｐ（Ｔ＝ｅｔ）が成立するための十分条件である。
【００２６】
欠落ルールの定義により、全ての観測値がターゲットイベントの結果に直接影響する、又は、間接的に影響するという暗黙的な仮定がなされる。しかしながら、この仮定は必ずしも真である訳ではない。例えば、（Peter, buy, ice cream）のようなイベントは、ｅｔ＝（ABC, go bankrupt）という結果に関連付けられない可能性が非常に高い。一般的に、このような非関連イベントは、フィルタリングにより容易に除去できる。
【００２７】
上記仮定によれば、観測値ｅｏ＝（ABC, produce, computer）をターゲットイベントｅｔ＝（ABC, go bankrupt）に（直接、又は、間接的に）接続する１以上のルールが欠落している。
【００２８】
実施形態では、新たなルール（欠落ルール）は、グラフ上の新たなエッジの候補から選択される新たなエッジに基づいて生成される。新たなエッジの候補は、グラフ上で、観測値、又は、ターゲットイベントを含むサブグラフ群を接続するエッジとして定義される。ここで、サブグラフはグラフの一部であり、グラフにおいてエッジで接続されたノードを探索することにより得られる、ノード群、及び、エッジ群からなる。他のいずれのノードにも接続されないノード（独立ノード）も、サブグラフと考える。
【００２９】
図７は、実施形態における、新たなエッジの候補、及び、スコアの例を示す図である。
【００３０】
入力部１２０は、観測値の集合、及び、ターゲットイベントを、新たなトレーニングサンプルとして、ユーザなどから受信する。
【００３１】
ルール生成部１３０のエッジ候補生成部１３１は、観測値の集合、及び、ターゲットイベントが入力されると、入力された観測値の集合、及び、ターゲットイベントについて、新たなエッジの候補を生成する。
【００３２】
図７では、グラフは、観測値（ABC, produce, computer）を含むサブグラフ１、及びターゲットイベント（ABC, go bankrupt）を含むサブグラフ２からなる。例えば、エッジ候補生成部１３１は、図７の破線で示すように、サブグラフ１、及び、サブグラフ２を接続する新たなエッジの候補を生成する。
【００３３】
新たなエッジを新たなエッジの候補の中から選択するために、スコア算出部１３２は、新たなエッジの候補の各々のエッジスコアＳを算出する。エッジスコアＳは、Ｓ（ａ，ｂ）＝ｍａｘ｛ｓ（ａ，ｂ），ｓ（ｂ，ａ）｝として定義される。ここで、ｓ（ａ，ｂ）はイベントａとイベントｂとの間の含意スコアであり、イベントａがイベントｂを含意する程度を表わす。スコア算出部１３２は、含意スコアｓを、例えば以下に説明する一段予測推定（One-Step-Predictor）（ＯＳＰ）方法を用いて算出する。
【００３４】
ＯＳＰ方法では、はじめに、イベントａ、及び、ｂの各単語を、次元ｄを有するWord Embeddingにマッピングする。次に、Word Embeddingを用いて、イベントａ、及び、ｂについて、次元ｈを有するEvent Embedding ｅａ、及び、ｅｂを生成する。最後に、含意スコアｓ（ａ，ｂ）、ｓ（ｂ，ａ）を、Event Embedding ｅａ、及び、ｅｂ、並びに、所定の重み行列を用いて算出する。
【００３５】
例えば、スコア算出部１３２は、図７に示すように、新たなエッジの候補の各々のエッジスコアＳを算出する。ＯＳＰ方法の利点は、任意の２つのイベント間のエッジスコアを算出できることである。しかしながら、ＯＳＰは単なるヒューリスティックな方法に過ぎず、一般に、信頼できるスコアを算出できない。したがって、ＯＳＰによりエッジスコアＳを算出した新たなルールの候補の内、必要最小限のルールをＫＢに含める必要がある。
【００３６】
正式には、その目標は次のように記述できる：観測値の集合、及び、１以上の欠落ルールを含むＫＢが与えられた場合に、ＫＢを増強して、最も妥当であり、かつ、最もシンプルな推論経路を見つける。
【００３７】
この目標は、例えば、新たなエッジとして、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、かつ、選択した新たなエッジの候補のエッジスコアの合計値が最大となるような、最小数の新たなエッジの候補を選択することにより達成できる。
【００３８】
エッジ選択部１３３は、生成した新たなエッジの候補から、エッジスコアに基づいて、新たなエッジを選択する。
【００３９】
図８は、実施形態における、新たなエッジの選択例を示す図である。図７において、サブグラフ１のイベント（ABC, produce, computer）とサブグラフ２のイベント（ABC, sell, computer）との間の新たなエッジの候補のエッジスコアは最大値「９」である。この場合、エッジ選択部１３３は、図８に示すように、イベント（ABC, produce, computer）とイベント（ABC, sell, computer）との間の新たなエッジの候補を、新たなエッジとして選択する。
【００４０】
図９、及び、図１０は、実施形態における、新たなエッジの候補、及び、スコアの他の例を示す図である。
【００４１】
図９では、観測値、及び、ターゲットイベントは以下のように定義される：ｅｏ：＝（ABC, produce, computer）、ｅｔ：＝（ABC, go bankrupt）。観測値ｅｏは、ＫＢ内で定義される。すなわち観測値ｅｏは、既知の観測値である。グラフは、観測値（ABC, produce, computer）を含むサブグラフ１、及び、ターゲットイベント（ABC, go bankrupt）を含むサブグラフ２からなる。この場合、サブグラフ１のイベント（ABC, sell, computer）とサブグラフ２のイベント（ABC, drop, computer）との間の新たなエッジの候補のエッジスコアは最大値「２５」である。エッジ選択部１３３は、イベント（ABC, sell, computer）とイベント（ABC, drop, computer）との間の新たなエッジの候補を、新たなエッジとして選択する。
【００４２】
図１０では、観測値、及び、ターゲットイベントは以下のように定義される：｛ｅｏ｝：＝｛（ABC, produce, computer）,（ABC, drop, computer）｝、ｅｔ：＝（ABC, go bankrupt）。観測値｛ｅｏ｝は、ＫＢ内で定義される。すなわち観測値ｅｏは、既知の観測値である。グラフは、観測値（ABC, produce, computer）を含むサブグラフ１、観測値（ABC, drop, computer）を含むサブグラフ２、及び、ターゲットイベント（ABC, go bankrupt）を含むサブグラフ３からなる。この場合、サブグラフ１のイベント（ABC, sell, computer）とサブグラフ２のイベント（ABC, drop, computer）との間の新たなエッジの候補のエッジスコア、及び、サブグラフ２のイベント（ABC, drop, computer）とサブグラフ３のイベント（ABC, go bankrupt）との間の新たなエッジの候補のエッジスコアの合計値は最大値「５０」である。エッジ選択部１３３は、これらの新たなエッジ候補を、新たなエッジとして選択する。
【００４３】
次に、ルール決定部１３４は、選択した新たなエッジについて、追加すべき新たなルールを含意スコアに基づいて決定する。ここで、ルール決定部１３４は、例えば、イベントａとイベントｂとの間で選択した新たなエッジについて、ｓ（ａ，ｂ）＞ｓ（ｂ，ａ）の関係が成り立つ場合にはルールａ＝＞ｂを新たなルールとして決定し、ｓ（ａ，ｂ）＞ｓ（ｂ，ａ）の関係が成り立たない場合にはルールｂ＝＞ａを新たなルールとして決定する。
【００４４】
図８の場合、２つの選択肢：（ABC, produce, computer）＝＞（ABC, sell, computer）、（ABC, sell, computer）＝＞（ABC, produce, computer）がある。ｓ（（ABC, sell, computer）,（ABC, produce, computer））＝６、及び、ｓ（（ABC, produce, computer）,（ABC, sell, computer））＝９の関係が成り立つ場合、ルール決定部１３４は、ルール（ABC, produce, computer）＝＞（ABC, sell, computer）を新たなルールとして決定する。
【００４５】
この時点で、決定論的推論の推論経路、すなわち観測値ｅｏ＝（ABC, produce, computer）からターゲットイベントｅｔ＝（ABC, go bankrupt）に至る推論経路が得られている。確率的推論を行なう場合、確率Ｐ（（ABC, go bankrupt）｜（ABC, produce, computer））を算出することが更に必要である。以下の説明では、確率的推論が、非特許文献４に開示されているＭＬＮを用いて行なわれると仮定する。この場合、新たなルールの重みを決定する必要がある。
【００４６】
重み算出部１４０は、新たなルールの重みを、以下の２つのステップに従って算出する。ここでは、イベントａとイベントｂとの間の新たなルールｒ：（ａ＝＞ｂ）が決定され、新たなルールｒの重みｗｒが算出されると仮定する。
【００４７】
第１ステップでは、重み算出部１４０が条件的確率を、含意スコアを用いて、数式１で定義されるＯＳＰに基づいて取得する。
[数１]
2019525336.tif 000003
ここで、全ての含意スコアが正であり、イベントｂ’（ｂ’≠ｂ）は互いに排他的であると仮定する。含意スコアｓ（ａ，ｂ）が、所定の確率（０〜１）を示すように定義されている場合、重み算出部１４０は、数式２で定義される条件的確率を取得してもよい。
[数２]
2019525336.tif 000004
【００４８】
第２ステップでは、重み算出部１４０が重みｗｒを、当該重みが以下の２つの条件に従うと仮定して算出する：１．ＫＢ内の全ての他のルールの重みは不変である、２．ＭＬＮに基づく確率Ｐ（ｂ｜ａ）はＰＯＳＰ（ｂ｜ａ）に等しい。以下に示すように、これらの２つの条件が重みｗｒを一意に定義する。
【００４９】
図１１は、実施形態における、新たなルールｒ：（ａ＝＞ｂ）に関するグラフの一部の例を示す図である。
【００５０】
ＰＭＬＮは、ＫＢ内の全ルール∪｛ａ＝＞ｂ｝、の重みで定義される確率分布を指すものとする。また、ベクトルｘが、図１１に示すように、イベントａに直接接続されるイベントｘ１、ｘ２、…を指すものとする。同様に、ベクトルｙが、図１１に示すように、イベントｂに直接接続されるイベントｙ１、ｙ２、…を指すものとする。元のグラフでは、イベントａとイベントｂとの間には経路が無かったので、イベントａ、及び、イベントｂの両方に接続されるイベントは存在しない。この場合、ＭＬＮに基づく条件的確率ＰＭＬＮ（ｂ｜ａ）は、数式３で表わすことができる。
[数３]
2019525336.tif 000005
ここで、１ｒ（ａ，ｂ）はルールｒの指示関数である。すなわちルールｒ：（ａ＝＞ｂ）が満たされる場合に１であり、ルールｒが満たされない場合に０である。１ｆ（ｘ，ａ）、及び、１ｆ（ｂ，ｙ）もルールｆ：（ｘ＝＞ａ）、及び、ルールｒ：（ｂ＝＞ｙ）の指示関数である。すなわち、ルールｆが満たされる場合に１であり、ルールｆが満たされない場合に０である。Ｆａ、及び、Ｆｂは、それぞれ、イベントａ、及び、イベントｂを含む全てのルールの集合である。
【００５１】
以下、イベントａ、又は、イベントｂが真もしくは偽であるかどうかが、イベントが真である場合にａ＝Ｔ、又は、ｂ＝Ｔ、イベントが偽である場合にａ＝Ｆ、又は、ｂ＝Ｆにより明示的に示される。
【００５２】
条件的確率ＰＭＬＮ（ｂ＝Ｔ｜ａ＝Ｔ）は、数式３に定義されるｔ（ａ，ｂ）、ｇ（ａ）、及び、ｈ（ｂ）を用いて、数式４で表される。
[数４]
2019525336.tif 000006
【００５３】
数式４から、正しい重みｗｒを数式５で算出できる。
[数５]
2019525336.tif 000007
ここで、ｐはｐ：＝ＰＯＳＰ（ｂ＝Ｔ｜ａ＝Ｔ）のように定義される。
【００５４】
重み算出部１４０は、重みｗｒを、数式５を用いて算出する。新たなルールの重みは、図７、図９、及び、図１０に示す例の全てについて、数式５により算出できることは明らかである。
【００５５】
重み算出部１４０は、生成した新たなルール、及び、算出した重みをユーザなどに出力する。更に、重み算出部１４０は、生成した新たなルール、及び、算出した重みをＫＢに追加してもよい。この場合、重み算出部１４０は、生成した新たなルールから変換される、非グラウンデッドイベント間の新たなルールを追加してもよい。
【００５６】
また、学習システム１００の推論モジュール（図示せず）は、確率的クエリを実行し、生成した新たなルール、及び、算出した重みを用いて、確率Ｐ（Ｔ＝ｅｔ｜Ｏ＝｛ｅｏ｝）を算出してもよい。
【００５７】
学習システム１００は、ＣＰＵ（central processing unit）とプログラムを格納する記録媒体とを含み、プログラム制御に従って動作するコンピュータでもよい。図３は、実施形態において、学習システム１００がコンピュータ上で実現する場合の構成を示すブロック図である。
【００５８】
図３を参照すると、学習システム１００は、ＣＰＵ１０１と、記憶デバイス１０２（記録媒体）と、通信デバイス１０３と、キーボードのような入力デバイス１０４と、ディスプレイのような出力デバイス１０５と、を含む。ＣＰＵ１０１は、コンピュータプログラムを実行して、入力部１２０、ルール生成部１３０、及び、重み算出部１４０の機能を実現する。記憶デバイス１０２は、ＫＢ記憶部１１０の情報を記憶する。入力デバイス１０４は、トレーニングサンプルをユーザなどから受信してもよい。出力デバイス１０５は、新たなルール、及び、新たなルールの重みをユーザなどに出力（表示）してもよい。通信デバイス１０３は、トレーニングサンプルを他のシステムから受信し、新たなルール、及び、重みを他のシステムに送信してもよい。
【００５９】
図３の学習システム１００のモジュールが、有線、又は、無線で相互に接続される複数のデバイスにそれぞれ配置されてもよい。学習システム１００において新たなルールを生成するサービスは、ＳａａＳ（Software as a Service）としてユーザなどに提供されてもよい。
【００６０】
図３の学習システム１００のモジュールは回路（circuitry）上で実現されてもよい。ここで、用語「circuitry」は、シングルチップ、マルチデバイス、チップセット、又は、クラウドを概念的に含む用語として定義される。
【００６１】
次に、本発明の第１の実施形態における、学習システム１００の動作について説明する。
【００６２】
図４は、実施形態における学習システム１００の処理を示すフローチャートである。ここで、図５に示すＫＢがＫＢ記憶部１１０に格納されており、図６に示すグラウンデッドネットワークが学習システム１００において生成されていると仮定する。
【００６３】
入力部１２０は、観測値の集合、及び、ターゲットイベントを、新たなトレーニングサンプルとしてユーザなどから受信する（ステップＳ１０１）。例えば、入力部１２０は、観測値ｅｏ＝（ABC, produce, computer）、及び、ターゲットイベントｅｔ＝（ABC, go bankrupt）を受信する。
【００６４】
エッジ候補生成部１３１は、新たなエッジの候補を、観測値の集合、及び、ターゲットイベントについて生成する（ステップＳ１０２）。例えば、エッジ候補生成部１３１は、新たなエッジの候補を図７の破線のように生成する。
【００６５】
スコア算出部１３２は、新たなエッジの候補の各々のエッジスコアＳを算出する（ステップＳ１０３）。例えば、スコア算出部１３２は、図７に示すように、生成した新たなエッジの候補について、エッジスコアを算出する。
【００６６】
エッジ選択部１３３は、エッジスコアに基づいて、生成した新たなエッジの候補から、新たなエッジを選択する（ステップＳ１０４）。例えば、エッジ選択部１３３は、図８に示すように、新たなエッジとして、イベント（ABC, produce, computer）とイベント（ABC, sell, computer）との間の新たなエッジの候補を選択する。
【００６７】
ルール決定部１３４は、選択した新たなエッジについて、追加すべき新たなルールを含意スコアに基づいて決定する（ステップＳ１０５）。例えば、ルール決定部１３４は、ルール（ABC, produce, computer）＝＞（ABC, sell, computer）を新たなルールとして決定する。
【００６８】
重み算出部１４０は、新たなルールの重みを、含意スコア、及び、数式５に基づいて算出する（ステップＳ１０６）。例えば、重み算出部１４０は、新たなルール（ABC, produce, computer）＝＞（ABC, sell, computer）の重みを算出する。
【００６９】
重み算出部１４０は、生成した新たなルール、及び、算出した重みを出力する（ステップＳ１０７）。例えば、重み算出部１４０は、新たなルール（ABC, produce, computer）＝＞（ABC, sell, computer）、及び、当該新たなルールの重みを出力する。
【００７０】
以上により、学習システム１００の動作が完了する。
【００７１】
上述の実施形態では、ルール生成部１３０が、新たなエッジの候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、選択した新たなエッジの候補の含意スコアの合計値が最大になるような、最小数の候補を選択することにより、新たなルールを生成した。そして、重み算出部１４０が、新たなルールについて、確率的推論のための重みを、含意スコアに基づいて算出した。しかしながら、新たなルールをＫＢ内のルール、及び、含意スコアに基づいて生成し、重みを含意スコアに基づいて算出できれば、他の方法を用いてもよい。
【００７２】
例えば、ルール生成部１３０は、含意スコアの合計値を用いる代わりに、観測値、及び、ターゲットイベントの結合確率を用いてもよい。この場合、ルール生成部１３０は、新たなエッジ候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、観測値、及び、ターゲットイベントの結合確率が最大になるような、最小数の候補を選択することにより、新たなルールを生成する。観測値、及び、ターゲットイベントの結合確率は、選択した新たなエッジの候補に関するルールが存在すると仮定し、かつ、選択した新たなエッジの候補の重みを用いて、ＭＬＮに従って得られる。選択した新たなエッジの候補の重みは、重み算出部１４０により、数式５を用いて算出される。
【００７３】
次に、実施形態の特徴的な構成について説明する。
【００７４】
図１は、実施形態の特徴的な構成を示すブロック図である。
【００７５】
図１を参照すると、学習システム１００は、ＫＢ（knowledge base）記憶部１１０と、ルール生成部１３０と、重み算出部１４０と、を含む。ＫＢ記憶部１１０は、複数のイベントのイベント間のルール群を記憶する。ルール生成部１３０は、１以上の新たなルールを、ルール群、及び、イベント間の含意スコアに基づいて生成する。重み算出部１４０は、確率的推論に適用される１以上の新たなルールの重みを含意スコアに基づいて算出する。
【００７６】
本発明の第１の実施形態によれば、新たな確率的ルールを、トレーニングサンプルが１つしか与えられない場合でも学習できる。その理由は、ルール生成部１３０が、１以上の新たなルールを、複数のイベントのイベント間のルール群、及び、イベント間の含意スコアに基づいて生成し、重み算出部１４０が、確率的推論に適用される１以上の新たなルールの重みを、含意スコアに基づいて算出するからである。
【００７７】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【００７８】
本発明は、確率的論理型推論システムなどに適用可能である。ルールを自動的に完成させることができることは、ルールの全ての候補を前もって生成しておくことができない（又は、そのために非常にコストがかかる）状況において極めて重要である。
【符号の説明】
【００７９】
１００  学習システム
１０１  ＣＰＵ
１０２  記憶デバイス
１０３  通信デバイス
１０４  入力デバイス
１０５  出力デバイス
１１０  ＫＢ記憶部
１２０  入力部
１３０  ルール生成部
１３１  エッジ候補生成部
１３２  スコア算出部
１３３  エッジ選択部
１３４  ルール決定部
１４０  重み算出部
【図１】
2019525336.tif 000008
【図２】
2019525336.tif 000009
【図３】
2019525336.tif 000010
【図４】
2019525336.tif 000011
【図５】
2019525336.tif 000012
【図６】
2019525336.tif 000013
【図７】
2019525336.tif 000014
【図８】
2019525336.tif 000015
【図９】
2019525336.tif 000016
【図１０】
2019525336.tif 000017
【図１１】
2019525336.tif 000018
【手続補正書】
【提出日】平成30年6月6日(2018.6.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
（削除）
【請求項２】
（削除）
【請求項３】
複数のイベントのイベント間のルール群を記憶する知識記憶手段と、
１以上の新たなルールを、前記ルール群、及び、前記イベント間の含意スコアに基づいて生成する、ルール生成手段と、
確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する、重み算出手段と、
を備え、
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフで表わされ、
前記ルール生成手段は、新たなエッジの候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、選択した新たなエッジの候補の含意スコアの合計が最大になるような、最小数の新たなエッジの候補を選択することにより、前記１以上の新たなルールを生成する、
情報処理システム。
【請求項４】
複数のイベントのイベント間のルール群を記憶する知識記憶手段と、
１以上の新たなルールを、前記ルール群、及び、前記イベント間の含意スコアに基づいて生成する、ルール生成手段と、
確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する、重み算出手段と、
を備え、
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフで表わされ、
前記ルール生成手段は、新たなエッジ候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、選択した新たなエッジの候補について前記重み算出手段により算出される前記重みを用いて得られる、前記観測値及び前記ターゲットイベントの結合確率が最大になるような、最小数の新たなエッジの候補を選択することにより、前記１以上の新たなルールを生成する、
情報処理システム。
【請求項５】
（削除）
【請求項６】
（削除）
【請求項７】
１以上の新たなルールを、複数のイベントのイベント間のルール群、及び、前記イベント間の含意スコアに基づいて生成し、
確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する、
情報処理方法であって、
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフで表わされ、
新たなエッジの候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、選択した新たなエッジの候補の含意スコアの合計が最大になるような、最小数の新たなエッジの候補を選択することにより、前記１以上の新たなルールを生成する、
情報処理方法。
【請求項８】
１以上の新たなルールを、複数のイベントのイベント間のルール群、及び、前記イベント間の含意スコアに基づいて生成し、
確率的推論に適用される前記１以上の新たなルールの重みを、前記含意スコアに基づいて算出する、
情報処理方法であって、
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフで表わされ、
新たなエッジ候補から、観測値、又は、ターゲットイベントを含む全てのサブグラフを接続し、選択した新たなエッジの候補について算出される前記重みを用いて得られる、前記観測値及び前記ターゲットイベントの結合確率が最大になるような、最小数の新たなエッジの候補を選択することにより、前記１以上の新たなルールを生成する、
情報処理方法。
【請求項９】
（削除）
【請求項１０】
複数のイベントのイベント間のルール群を含む知識ベースを記憶する知識記憶手段と、
１以上の新たなルールを、前記知識ベースに含まれるルールの重み、及び、前記知識ベースにルールが含まれないイベントの各ペアの含意スコアに基づいて生成する、ルール生成手段と、
を備える、情報処理システム。
【請求項１１】
さらに、前記知識ベースにルールが含まれないイベントの各ペアについて、当該イベントのペアの一方のイベントと前記知識ベースにおける当該イベントのペア以外のイベント間のルールの重み、及び、当該イベントのペアの含意スコアに基づき、重みを算出する、重み算出手段を備え、
前記ルール生成手段は、前記知識ベースにルールが含まれないイベントの各ペアについて算出された重みに基づき、前記１以上の新たなルールを生成する、
請求項１０に記載の情報処理システム。
【請求項１２】
前記ルール生成手段は、前記知識ベースにルールが含まれないイベントのペアから、選択したイベントのペアについて算出された重みを用いることにより得られる、観測イベントとターゲットイベントとの結合確率が最大となるような、最小数のイベントのペアを選択することにより、前記１以上の新たなルールを生成する、
請求項１０または１１に記載の情報処理システム。
【請求項１３】
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフにより表され、
前記ルール生成手段は、前記知識ベースにルールが含まれないイベントのペアから、観測イベントまたは目的イベントを含む全てのサブグラフが接続され、前記結合確率が最大となるような、最小数のイベントのペアを選択することにより、前記１以上の新たなルールを生成する、
請求項１２に記載の情報処理システム。
【請求項１４】
複数のイベントのイベント間のルール群を含む知識ベースを記憶し、
１以上の新たなルールを、前記知識ベースに含まれるルールの重み、及び、前記知識ベースにルールが含まれないイベントの各ペアの含意スコアに基づいて生成する、
情報処理方法。
【請求項１５】
さらに、前記知識ベースにルールが含まれないイベントの各ペアについて、当該イベントのペアの一方のイベントと前記知識ベースにおける当該イベントのペア以外のイベント間のルールの重み、及び、当該イベントのペアの含意スコアに基づき、重みを算出し、
前記知識ベースにルールが含まれないイベントの各ペアについて算出された重みに基づき、前記１以上の新たなルールを生成する、
請求項１４に記載の情報処理方法。
【請求項１６】
前記知識ベースにルールが含まれないイベントのペアから、選択したイベントのペアについて算出された重みを用いることにより得られる、観測イベントとターゲットイベントとの結合確率が最大となるような、最小数のイベントのペアを選択することにより、前記１以上の新たなルールを生成する、
請求項１４または１５に記載の情報処理方法。
【請求項１７】
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフにより表され、
前記知識ベースにルールが含まれないイベントのペアから、観測イベントまたは目的イベントを含む全てのサブグラフが接続され、前記結合確率が最大となるような、最小数のイベントのペアを選択することにより、前記１以上の新たなルールを生成する、
請求項１６に記載の情報処理方法。
【請求項１８】
コンピュータに、
複数のイベントのイベント間のルール群を含む知識ベースを記憶し、
１以上の新たなルールを、前記知識ベースに含まれるルールの重み、及び、前記知識ベースにルールが含まれないイベントの各ペアの含意スコアに基づいて生成する、
処理を実行させるプログラムを記憶する、コンピュータにより読み取り可能な記録媒体。
【手続補正書】
【提出日】平成31年1月22日(2019.1.22)
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のイベントのイベント間のルール群を含む知識ベースを記憶する知識記憶手段と、
１以上の新たなルールを、前記知識ベースに含まれるルールの重み、及び、前記知識ベースにルールが含まれないイベントの各ペアの含意スコアに基づいて生成する、ルール生成手段と、
を備える、情報処理システム。
【請求項２】
さらに、前記知識ベースにルールが含まれないイベントの各ペアについて、当該イベントのペアの一方のイベントと前記知識ベースにおける当該イベントのペア以外のイベント間のルールの重み、及び、当該イベントのペアの含意スコアに基づき、重みを算出する、重み算出手段を備え、
前記ルール生成手段は、前記知識ベースにルールが含まれないイベントの各ペアについて算出された重みに基づき、前記１以上の新たなルールを生成する、
請求項１に記載の情報処理システム。
【請求項３】
前記ルール生成手段は、前記知識ベースにルールが含まれないイベントのペアから、選択したイベントのペアについて算出された重みを用いることにより得られる、観測イベントとターゲットイベントとの結合確率が最大となるような、最小数のイベントのペアを選択することにより、前記１以上の新たなルールを生成する、
請求項１または２に記載の情報処理システム。
【請求項４】
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフにより表され、
前記ルール生成手段は、前記知識ベースにルールが含まれないイベントのペアから、観測イベントまたは目的イベントを含む全てのサブグラフが接続され、前記結合確率が最大となるような、最小数のイベントのペアを選択することにより、前記１以上の新たなルールを生成する、
請求項３に記載の情報処理システム。
【請求項５】
複数のイベントのイベント間のルール群を含む知識ベースを記憶し、
１以上の新たなルールを、前記知識ベースに含まれるルールの重み、及び、前記知識ベースにルールが含まれないイベントの各ペアの含意スコアに基づいて生成する、
情報処理方法。
【請求項６】
さらに、前記知識ベースにルールが含まれないイベントの各ペアについて、当該イベントのペアの一方のイベントと前記知識ベースにおける当該イベントのペア以外のイベント間のルールの重み、及び、当該イベントのペアの含意スコアに基づき、重みを算出し、
前記知識ベースにルールが含まれないイベントの各ペアについて算出された重みに基づき、前記１以上の新たなルールを生成する、
請求項５に記載の情報処理方法。
【請求項７】
前記知識ベースにルールが含まれないイベントのペアから、選択したイベントのペアについて算出された重みを用いることにより得られる、観測イベントとターゲットイベントとの結合確率が最大となるような、最小数のイベントのペアを選択することにより、前記１以上の新たなルールを生成する、
請求項５または６に記載の情報処理方法。
【請求項８】
前記ルール群は、イベントに対応するノードと、ノード間のルールに対応するエッジと、を含むグラフにより表され、
前記知識ベースにルールが含まれないイベントのペアから、観測イベントまたは目的イベントを含む全てのサブグラフが接続され、前記結合確率が最大となるような、最小数のイベントのペアを選択することにより、前記１以上の新たなルールを生成する、
請求項７に記載の情報処理方法。
【請求項９】
コンピュータに、
複数のイベントのイベント間のルール群を含む知識ベースを記憶し、
１以上の新たなルールを、前記知識ベースに含まれるルールの重み、及び、前記知識ベースにルールが含まれないイベントの各ペアの含意スコアに基づいて生成する、
処理を実行させるプログラム。
【国際調査報告】
2019525336.tif 000019