JP2023002475A - コンピュータシステム、コンピュータプログラムおよびコンピュータで実装される方法(因果関係知識の識別および抽出) - Google Patents
コンピュータシステム、コンピュータプログラムおよびコンピュータで実装される方法(因果関係知識の識別および抽出) Download PDFInfo
- Publication number
- JP2023002475A JP2023002475A JP2022097642A JP2022097642A JP2023002475A JP 2023002475 A JP2023002475 A JP 2023002475A JP 2022097642 A JP2022097642 A JP 2022097642A JP 2022097642 A JP2022097642 A JP 2022097642A JP 2023002475 A JP2023002475 A JP 2023002475A
- Authority
- JP
- Japan
- Prior art keywords
- phrase
- candidate
- phrases
- computer
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/55—Rule-based translation
- G06F40/56—Natural language generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/041—Abduction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Machine Translation (AREA)
Abstract
【課題】コーパスからの因果関係知識の抽出もしくは原因と結果の対の識別またはその両方を行うことが可能なコンピュータシステムおよび方法を提供する。【解決手段】プラットフォームコンピューティングシステム100は、人工知能モデルを活用して、変形文が候補テキストから推論されるそれぞれの確率を決定し、それぞれの確率の統計的尺度を計算し、且つ、計算された統計的尺度を査定して、第1句および第2句が互いに因果関係および非因果関係のどちらを持つかを確認する。因果関係を持つ第1句および第2句を、原因句と結果句の対のうちの1つまたは複数の対を含む知識ベースに投入する。【選択図】図1
Description
本実施形態は、人工知能(AI)モデルを活用して原因と結果の対の識別もしくはコーパスからの因果関係知識の抽出またはその両方を、特に、監視されていないかまたは実質的に監視されていない方式で行うための、システム、コンピュータプログラム製品、およびコンピュータで実装される方法に関する。
原因と結果の対の高品質集合を含むデータベースの開発には、多くの潜在的なメリットおよび用途がある。そのような集合は、特にAIシステムにおいて、様々な目的のために更に処理することができ、因果関係知識グラフとして表すことができ、決定支援または予測的分析の入力として使用することができる。原因と結果の対の集合を組み立てるには、テキスト文書およびコーパスにおけるそのような知識の自然言語記述から因果関係知識を抽出する必要がある。そのような抽出は、AIシステムでの幅広い適用に関連する困難な問題を提示する。最先端の監視型知識抽出方法を適用する際の主な問題は、手動で注釈付けされた大規模コーパスの必要性である。手動によるコーパスの注釈付けは、大規模な一般的な因果関係知識の抽出に適していない。
原因と結果の対の高品質集合を出力することができるシステム、コンピュータプログラム製品、およびコンピュータで実装される方法を開発することが技術的エラーにおける大きな進歩になるであろう。特に例示的な実施形態において、このシステム、コンピュータプログラム製品、およびコンピュータで実装される方法は、実質的または完全に監視されていない方式で動作可能である。
これらの実施形態は、人工知能(AI)モデルを活用してコーパスからの因果関係知識の抽出もしくは原因と結果の対の識別またはその両方を行うための、システム、コンピュータプログラム製品、および方法を含む。この発明の概要は、発明を実施するための形態において更に後述する簡略化された形態で代表的な概念の選択を紹介するために提供されている。この発明の概要は、特許請求の範囲に係る主題の重要な特徴または不可欠な特徴を識別することを意図しているわけでもなければ、特許請求の範囲に係る主題の範囲を限定することになるいずれかのやり方で使用されることを意図しているわけでもない。
一態様では、コンピュータシステムが、メモリと動作可能に結合されるプロセッサと、プロセッサおよびメモリと通信する人工知能(AI)プラットフォームとを備える。AIプラットフォームは、文アセンブラ、AIモデル、およびディレクタを含む。文アセンブラは、候補テキストおよび第1句と第2句の候補対にアクセスするように構成されており、候補対の第1句および第2句を複数の原因と結果のパターンに置換して、第1句と第2句とを含む複数の変形文を生成するように構成されている。AIモデルは、変形文が候補テキストから推論されるそれぞれの確率を決定し、それぞれの確率の統計的尺度を計算し、且つ、計算された統計的尺度を査定して、第1句および第2句が互いに因果関係および非因果関係のどちらを持つかを確認するように構成されている。ディレクタは、因果関係を持つ第1句と第2句とを含む候補テキストを知識ベースに投入するように構成されている。
別の態様では、コンピュータシステムが、メモリと動作可能に結合されるプロセッサと、プロセッサおよびメモリと通信する人工知能(AI)プラットフォームとを備える。AIプラットフォームは、自然言語処理(NLP)モデル、AIモデル、およびディレクタを含む。NLPモデルは、原因または結果を表す第1句を使用して自然言語(NL)の質問を生成するように構成されている。AIモデルは、候補テキストから1つまたは複数の候補第2句を抽出し、1つまたは複数の候補第2句がNLの質問に回答するそれぞれの確率を決定し、且つ、最も高い確率を有する候補第2句を、第1句との因果関係を持つものとして選択するように構成されている。ディレクタは、第1句および選択された第2句を知識ベースに投入するように構成されている。
更に別の態様では、コンピュータプログラム製品が提供される。このコンピュータプログラム製品は、プログラムコードを具現化したコンピュータ可読記憶媒体を含む。プログラムコードは、候補テキストにアクセスし、候補テキストから第1句と第2句の候補対を抽出し、且つ、候補対の第1句および第2句を複数の原因と結果のパターンに置換して、第1句と第2句とを含む複数の変形文を生成するようにプロセッサにより実行可能である。プログラムコードは、変形文が候補テキストから推論されるそれぞれの確率を決定し、それぞれの確率の統計的尺度を計算し、計算された統計的尺度を査定して、第1句および第2句が互いに因果関係および非因果関係のどちらを持つかを確認し、且つ、因果関係を持つ第1句と第2句とを含む候補テキストを知識ベースに投入するようにプロセッサにより更に実行可能である。
更なる態様では、コンピュータで実装される方法が提供される。候補テキストおよび第1句と第2句の候補対にアクセスする。第1句および第2句を複数の原因と結果のパターンに置換して、第1句と第2句とを含む複数の変形文を生成する。人工知能モデルを活用して、変形文が候補テキストから推論されるそれぞれの確率を決定し、それぞれの確率の統計的尺度を計算し、且つ、計算された統計的尺度を査定して、第1句および第2句が互いに因果関係および非因果関係のどちらを持つかを確認する。因果関係を持つ第1句と第2句とを含む候補テキストを知識ベースに投入する。
なおも更なる態様では、コンピュータで実装される方法が提供される。原因または結果を表す第1句を使用して自然言語(NL)の質問を生成するために、自然言語処理モデルを使用する。人工知能(AI)モデルを活用する。AIモデルを活用することは、候補テキストから1つまたは複数の候補第2句を抽出し、1つまたは複数の候補第2句がNLの質問に回答するそれぞれの確率を決定し、且つ、最も高い確率を有する候補第2句を、第1句との因果関係を持つものとして選択することを含む。第1句および選択された第2句を知識ベースに投入する。
例示的な実施形態の以下の詳細な説明からは、更なる態様の様々なシステム、サブシステム、デバイス、装置、モデル、プロセス、および方法を説明および例示する添付図面と併せて、これらのおよび他の特徴および利点が明らかになるであろう。
本明細書で参照する図面は明細書の一部を形成するものであり、参照により本明細書に組み込まれる。特に明記されていない限り、図面に示す特徴は、全ての実施形態でなく幾つかの実施形態のみを例示するものであることを意図する。
本明細書の図で概して説明および例示するような例示的な実施形態のコンポーネントは、多種多様な異なる構成で配置および設計され得ることが容易に解るであろう。故に、この説明および添付の図に提示されているような、本明細書に記載のシステム、コンピュータプログラム製品、および方法、並びに他の態様の実施形態の以下の詳細な説明は、実施形態の範囲を特許請求の範囲に記載されているように限定することを意図しているわけではなく、選択された実施形態を代表しているに過ぎない。
本明細書全体にわたる「選択された実施形態」、「一実施形態」、または「ある実施形態」への言及は、これらの実施形態に関連して説明する特定の特徴、構造、または特性が少なくとも1つの実施形態に含まれることを意味する。故に、本明細書全体にわたって様々な場所に出現する「選択された実施形態において」、「一実施形態において」、または「ある実施形態において」という言い回しは、必ずしも同じ実施形態を指しているとは限らない。これらの様々な実施形態を互いに組み合わせてよく、実施形態を使用して互いに修正してよいことを理解されたい。
例示されている実施形態は、図面を参照することにより最も良く理解されるであろう。全体にわたって、同様の部分は同様の数字で表記される。以下の説明は単なる例として意図されており、本明細書の特許請求の範囲に記載されているような実施形態と一致するデバイス、システム、およびプロセスの特定の選択された実施形態を単に示す。
図1を参照すると、プラットフォームコンピューティングシステム(100)の概略図が描写されている。例示的な実施形態において、システム(100)は、人工知能(AI)プラットフォーム(150)を含むかまたは組み込む。示されているように、サーバ(110)が、ネットワーク接続(105)を挟んで複数のコンピューティングデバイス(180)、(182)、(184)、(186)、(188)、および(190)と通信して提供される。サーバ(110)は、バス(114)を挟んでメモリ(116)と通信する処理ユニット(本明細書ではプロセッサとも呼ばれる)(112)で構成される。サーバ(110)は、コンピューティングデバイス(180)、(182)、(184)、(186)、(188)、および(190)のうちの1つまたは複数からネットワーク(105)を介した、自然言語処理(NLP)と機械学習(ML)とを含む認知コンピューティングのためのAIプラットフォーム(150)と共に示されている。より具体的には、コンピューティングデバイス(180)、(182)、(184)、(186)、(188)、および(190)は、1つまたは複数の有線データ通信リンクもしくは無線データ通信リンクまたはその両方を介して互いに通信し、他のデバイスまたはコンポーネントと通信する。ここで、各通信リンクは、ワイヤ、ルータ、スイッチ、送信機、または受信機などのうちの1つまたは複数を含んでよい。このネットワーク化された配置では、サーバ(110)およびネットワーク接続(105)によって、通信の検出、認識、および解決が可能になる。本明細書で描写されているもの以外のコンポーネント、システム、サブシステム、もしくはデバイス、またはそれらの組み合わせと共に、サーバ(110)の他の実施形態を使用してもよい。
本明細書には、因果関係を非因果関係と区別し、且つ、その因果関係を知識ベースに投入するためのツールで構成されているAIプラットフォーム(150)を示す。ツールは、限定されるわけではないが、文アセンブラ(152)と、例示的な実施形態では機械学習モデル(MLM)を含むAIモデル(154)と、自然言語処理(NLP)モデル(156)と、ディレクタ(158)とを含む。図1はツール(152)、(154)、(156)、および(158)の各々をAIプラットフォーム(150)の一部として示すが、ある実施形態ではツール(152)、(154)、(156)、および(158)のいずれか1つまたは組み合わせが必ずしもAIプラットフォーム(150)の一部であるわけでもAIで動作するわけでもないことを理解されたい。例示的な実施形態において、文アセンブラ(152)は非AIである、すなわち、文アセンブラ(152)の機能は人工知能を使用することなく実行される。例示的な実施形態において、AIプラットフォーム(150)は、監視されていないかまたは実質的に監視されていない状態で動作することができる。
人工知能(AI)は、コンピュータを対象としたコンピュータ科学と、人間に関連するコンピュータの挙動との分野に関する。AIとは、マシンが情報に基づいて決定を行うことができる場合のインテリジェンスを指し、所与のトピックにおける成功の機会を最大限にする。より具体的には、AIはデータセットから学習して問題を解決し、関連する推奨事項を提供することができる。例えば、AIコンピュータシステムの分野では、自然言語システム(IBM Watson(登録商標)人工インテリジェントコンピュータシステムまたは他の自然言語疑問回答システムなど)が、システムで取得した知識に基づいて自然言語を処理する。自然言語を処理するために、システムは、知識のデータベースまたはコーパスから導出されるデータを用いて訓練され得るが、結果として得られる成果は、様々な理由から不適切または不正確である可能性がある。
AIのサブセットである機械学習(ML)は、アルゴリズムを利用してデータから学習し、このデータに基づいて展望を作成する。AIとは、マシンが情報に基づいて決定を行うことができる場合のインテリジェンスを指し、所与のトピックにおける成功の機会を最大限にする。より具体的には、AIはデータセットから学習して問題を解決し、関連する推奨事項を提供することができる。認知コンピューティングは、コンピュータ科学と認知科学とを混合したものである。認知コンピューティングは、最小限のデータ、視覚認識、および自然言語処理を使用して問題を解決し、人間が関係する作用を最適化する、自己学習アルゴリズムを利用する。
AIおよび関連付けられる論理的思考の中核には、類似性の概念が存在する。自然言語およびオブジェクトを理解するプロセスには、困難であり得る相関的な視点からの論理的思考が必要である。静的構造と動的構造とを含む構造が、所与の確定的な入力に対する決定された出力またはアクションを規定する。より具体的には、決定された出力またはアクションは、構造内の明示的な関係または固有の関係に基づいている。これらの構造を構築するために適切なデータセットに依存する。
本明細書では、1つまたは複数のソースから入力(102)を受信するように構成されているAIプラットフォーム(150)を示す。例えば、AIプラットフォーム(150)は、複数のコンピューティングデバイス(180)、(182)、(184)、(186)、(188)、および(190)のうちの1つまたは複数からネットワーク(105)を挟んで入力(例えば、候補対、候補句、もしくは候補テキスト、またはそれらの組み合わせ)を受信してよい。更に、本明細書に示すように、AIプラットフォーム(150)は、第1知識ベースであるKnowledgeBase0(160)および第2知識ベースであるKnowledgeBase1(170)と動作可能に結合され、本明細書ではその各々がコーパスまたはデータベースとも呼ばれる。図1には2つの知識ベース(160)および(170)が示されているが、システム(100)の変形例が採用され得ることを理解されたい。例えば、KnowledgeBase0(160)とKnowledgeBase1(170)とを組み合わせて単一の知識ベースにしてよい。別の変形例によれば、KnowledgeBase0(160)および/またはKnowledgeBase1(170)のいずれか一方または両方が複数の知識ベースを含む。更に別の変形例によれば、他の情報を有する更なる知識基盤がAIプラットフォーム(150)と通信する。
例示的な実施形態によれば、AIプラットフォーム(150)は、処理のための入力データとして、第1句と第2句の候補対(162)、候補句(164)、もしくは候補テキスト(166)、またはそれらの組み合わせにアクセスするように構成されている。
例示的な実施形態において、第1および第2の(候補)句は名詞句である。他の例示的な実施形態において、原因句および結果句は名詞句に限定されないが、名詞句を記述する前置詞句を更に含む。非限定的な例として、「供給不足およびサイバ攻撃に起因するガソリン価格の上昇の影響について大きな懸念がある:There is a great concern about the effect of rising gasoline prices,due to supply shortages and cyberattacks」という候補テキストを考慮されたい。この例文では、文の因果関係を示す部分に「大きな懸念:a great concern」という名詞句が含まれ、それに続いて「ガソリン価格の上昇の影響について:about the effect of rising gasoline prices」という説明的な前置詞句がある。例示的な実施形態において、NLPモデル(156)は、名詞句および説明的な前置詞句を原因句または結果句のいずれか一方として抽出する。別の実施形態によれば、候補となる原因と結果の対の第1句および第2句は、第1句と第2句との間の意味関係のクラスを識別するタグで注釈付けされる。意味関係のクラスの例には、時間的、相関的、仮説的なものなどが含まれる。
[候補対の例示的な実施形態]
例示的な実施形態において、AIプラットフォーム(150)の文アセンブラ(152)は、KnowledgeBase0(160)から、KnowledgeBase0(160)から直接、または、複数のコンピューティングデバイス(180)、(182)、(184)、(186)、(188)、および(190)のうちの1つまたは複数を通じて間接的に、1つまたは複数の候補対(162)と、これらの候補対(162)を含む候補テキスト(166)(通常は候補文)とにアクセスするように構成されている。各候補対(162)は、候補となる原因と結果の意味論的な対形成を表す、少なくとも第1句および第2句を含む。別の例示的な実施形態において、NLPモデル(156)は、KnowledgeBase0(160)から候補テキスト(166)にアクセスしそれを受信するように構成されており、候補テキスト(166)を解析してその中の候補対を識別するように構成されている。
文アセンブラ(152)は、図1にはAIプラットフォーム(150)の一部として示されているが、代替的な例示的な実施形態ではAIベースでもAIプラットフォーム(150)の一部でもなく、複数の原因と結果のパターン(168)にアクセスするように構成されている。例示的な実施形態において、原因と結果のパターン(168)は互いに構文的に異なる。原因と結果のパターン(168)の例には、「XはYを引き起こす:X causes Y」、「XはYの理由である:X is the reason for Y」、「XだからY:Because of X,Y」、「XはYの原因となる:X leads to Y」、「XならばY:if X,then Y」、「Xの結果はYである:the Effect of X is Y」、「YはXの結果である:Y is a result of X」などが含まれる。例示的な実施形態において、文アセンブラ(152)は、候補対(162)の各々の第1句および第2句を複数の異なる原因と結果のパターン(168)に置換または代入することにより複数の変形文を生成するように構成されている。
ある実施形態において、AIモデル(例えば、MLM)(154)は、文アセンブラ(152)から変形文を受信するように構成されている。例示的な実施形態において、AIモデル(154)は、自然言語推論(NLI)モデルなどの推論モデルである。AIモデル(154)は、変形文の各々について、変形文が候補テキスト、例えば、候補文から推論されるそれぞれの確率を決定するように構成されている。例示的な実施形態によれば、この確率は、0と1との間の信頼スコアなどのスコアとして表されてよい。例えば、「南東部全体にわたる暴風の夏は、財産保険請求の数が増加する原因となった」という変形文の場合、AIモデル(154)は、この変形文が候補テキストにより推論される確率を査定する。
ある実施形態によれば、AIモデル(例えば、MLM)は、タスク用に設計される訓練データを使用して訓練される。例えば、ある実施形態において、自然言語推論(NLI)モデルは、人間(例えば、主題の専門家)によりキュレートされる訓練データを使用して訓練され、訓練データは、例として、「含意」、「矛盾」、または「中立」などのラベルでマーク付けされる文の対を含む。訓練インスタンスの非限定的な例として、提供される第1文は「声明が発表された後、価格の大幅な下落が観測された」と書いてあってよく、「声明」が第1句、「価格の大幅な下落」が第2句である。「声明が価格の大幅な下落を引き起こした:a statement caused a major decrease in prices」などの、原因と結果のパターンのうちの1つを使用して第2文を構築し、入力文が第2文に対して含意、矛盾、または中立であるかどうかを評価する。
例示的な実施形態において、AIモデル(154)は、変形文のそれぞれの確率の平均または中央値などの統計的尺度を計算するように更に構成されている。候補対の第1句および第2句が因果関係または非因果関係を持つことを計算された統計的尺度が示しているかどうかの査定が行われる。ある実施形態において、この査定は、計算された統計的尺度が、例として、0.5以上の統計的尺度などの所定の閾値を満たすかどうかを判断することを含む。
例示的な実施形態において、ディレクタ(158)は、KnowledgeBase1(170)と通信し、図1のKnowledgeBase1(170)は、複数の検証された原因と結果の対、例えば、Cause-Effect Pair0(1720)、Cause-Effect Pair1(1721)、およびCause-Effect PairN-1(172N-1)が予め投入された状態で描写されており、Nは任意の整数であってよい。例示的な実施形態において、ディレクタ(158)は、候補対が因果関係を有することが検証された場合に、候補テキストおよび候補対を検証された原因と結果の対としてKnowledgeBase1(170)に更に投入するように構成されている。一方、ディレクタ(158)は、候補対が非因果関係を有することが査定された場合に、候補対をKnowledgeBase1(170)に更に投入しないように構成されている。
検証された候補対には様々な用途および使途がある。例示的な実施形態において、因果関係を有することが検証された候補対は、AIモデルを訓練するために使用されてよい。別の実施形態において、因果関係を有することが検証された候補対は、将来のイベントを予想(または予測)するために使用されてよい。例えば、明日に行われる「抗議運動」があり、且つ、AIモデルが「抗議運動」と「暴力」との間の因果関係(または因果関係がないこと)を描写する場合、検証された候補対は、可能なら、警告を生成するために使用されてよい。
[候補句の例示的な実施形態]
例示的な実施形態において、NLPモデル(156)は、KnowledgeBase0(160)から、KnowledgeBase0(160)から直接、または、複数のコンピューティングデバイス(180)、(182)、(184)、(186)、(188)、および(190)のうちの1つまたは複数を通じて間接的に、1つまたは複数の第1句(164)にアクセスするように構成されている。例示的な実施形態において、アクセスされた第1句(164)の各々は、候補テキスト、例えば、候補文の原因句または結果句を表す。別の例示的な実施形態において、NLPモデル(156)は、KnowledgeBase0(160)から候補テキスト(166)にアクセスするように構成されており、候補テキスト(166)を解析してそこから第1句を抽出するように構成されている。例示的な実施形態において、NLPモデル(156)は、アクセスされた第1句(164)を使用して、アクセスされた第1句から導出されるかまたはそれを含む自然言語(NL)の質問を生成する。
例示的な実施形態において、AIモデル(154)は、質問と回答(QA)のモデルを含む。QAモデルは、例えば、SMEによりレビューされた質問と回答の対を使用して予め訓練されてよい。AIモデル(154)(例えば、QAモデル)は、候補テキストから1つまたは複数の候補第2句を抽出するように構成されている。ある実施形態によれば、アクセスされた第1句(164)は原因を表し、候補第2句は1つまたは複数の結果を表す。別の実施形態によれば、アクセスされた第1句(164)は結果を表し、候補第2句は1つまたは複数の原因を表す。
AIモデル(154)は、候補第2句の各々について、候補第2句がNLの質問に正しく回答するかどうかのそれぞれの確率を決定するように構成されている。例示的な実施形態によれば、この確率は、0と1との間の信頼スコアなどのスコアとして表されてよい。ある実施形態において、各スコアは、アクセスされた第1句と候補第2句とが互いに対して原因と結果の関係を持つ可能性の尺度を表す。この確率またはスコアに基づいて、少なくとも1つの対応候補対が選択される。例示的な実施形態によれば、選択された対応候補対の確率(例えば、スコア)は、アクセスされた第1句と候補第2句とが原因と結果の関係を有する可能性が最も高いことを反映する。例えば、スコアが0と1との間にあり、0が最も低いスコアであり、且つ、1が最も高いスコアである場合は、最も高いスコア(すなわち、1に最も近い)を有する対が選択される。
例示的な実施形態において、ディレクタ(158)は、KnowledgeBase1(170)と通信し、図1のKnowledgeBase1(170)は、複数の検証された原因と結果の対、例えば、Cause-Effect Pair0(1720)、Cause-Effect Pair1(1721)、およびCause-Effect PairN-1(172N-1)が予め投入された状態で描写されており、Nは任意の整数であってよい。例示的な実施形態において、ディレクタ(158)は、最も高いスコアを有する対応候補対(または最も高いスコアを有する複数の対応候補対)をKnowledgeBase1(170)に更に投入するように構成されている。一方、ディレクタ(158)は、非因果関係を有する第1句および第2句をKnowledgeBase1(170)に更に投入しないように構成されている。
ディレクタ(158)は、1つまたは複数の原因句と結果句の対、例えば、図1のCause-Effect Pair0(1720)、Cause-Effect Pair1(1721)、およびCause-Effect PairN(172N)を含む、KnowledgeBase1(170)と通信する。ディレクタ(158)は、最も高いスコアを有する対応候補対をKnowledgeBase1(170)に投入することにより、KnowledgeBase1(170)に投入する原因と結果の対の数を増加的に増やすように構成されている。
検証された対には様々な用途および使途がある。例示的な実施形態において、因果関係を有することが検証された候補対は、AIモデルを訓練するために使用されてよい。別の実施形態において、因果関係を有することが検証された候補対は、上述したように、将来のイベントを予想(または予測)するために使用されてよい。
[候補テキスト(候補対/句シードなし)の例示的な実施形態]
他の例示的な実施形態によれば、AIプラットフォーム(150)は候補テキスト(166)にアクセスする。
例示的な実施形態において、AIプラットフォーム(150)は、KnowledgeBase0(160)から、KnowledgeBase0(160)から直接、または、複数のコンピューティングデバイス(180)、(182)、(184)、(186)、(188)、および(190)のうちの1つまたは複数を通じて間接的に、候補テキスト(166)にアクセスするように構成されている。例示的な実施形態によれば、NLPモデル(156)は、第1句と第2句とを含む候補文を候補テキスト(166)から抽出するように構成されている。別の例示的な実施形態によれば、NLPモデル(156)は、候補句を抽出し、且つ、原因と結果との全ての組み合わせを対にして、候補となる原因と結果の対を形成するように構成されている。例示的な実施形態によれば、句の抽出は、有限状態変換器を使用して文から名詞句を抽出するためのアルゴリズムであるNPFST(またはNP)を用いて実行される。別の例示的な実施形態によれば、句の抽出は、名詞句だけでなく全ての種類の句を抽出する文の要素構成解析に基づくCP.NPFST(またはCP)を使用して実行される。Handler et al.,"Bag of What?Simple Noun Phrase Extraction for Text Analysis,Proceedings of the First Workshop of NLP and Computational Social Science,114-124(2016)を参照されたい。
例示的な実施形態において、AIプラットフォーム(150)は、KnowledgeBase0(160)から、KnowledgeBase0(160)から直接、または、複数のコンピューティングデバイス(180)、(182)、(184)、(186)、(188)、および(190)のうちの1つまたは複数を通じて間接的に、候補テキスト(166)にアクセスするように構成されている。例示的な実施形態によれば、NLPモデル(156)は、第1句と第2句とを含む候補文を候補テキスト(166)から抽出するように構成されている。別の例示的な実施形態によれば、NLPモデル(156)は、候補句を抽出し、且つ、原因と結果との全ての組み合わせを対にして、候補となる原因と結果の対を形成するように構成されている。例示的な実施形態によれば、句の抽出は、有限状態変換器を使用して文から名詞句を抽出するためのアルゴリズムであるNPFST(またはNP)を用いて実行される。別の例示的な実施形態によれば、句の抽出は、名詞句だけでなく全ての種類の句を抽出する文の要素構成解析に基づくCP.NPFST(またはCP)を使用して実行される。Handler et al.,"Bag of What?Simple Noun Phrase Extraction for Text Analysis,Proceedings of the First Workshop of NLP and Computational Social Science,114-124(2016)を参照されたい。
例示的な実施形態において、候補テキスト(166)は、構造化データもしくは非構造化データまたはその両方を含む。例えば、候補テキスト(166)は、「中学校の夏休みが短縮されても、ガス価格の低下は、夏休みの旅行が増加する原因となる:Even though secondary school summer break was shortened,a lowering of gas prices lead to a rise in summer vacation travel」という文を含んでよい。ある実施形態において、NLPモデル(156)は、「中学校の夏休みが短縮された:secondary school summer break was shortened」という第1句と「夏休みの旅行が増加する:a rise in summer vacation travel」という第2句の、非因果関係を示す第1候補対(P1)を識別する。NLPモデル(156)は、「ガス価格の低下:a lowering of gas prices」という第1句と「夏休みの旅行が増加する:a rise in summer vacation travel」という第2句の、因果関係を示す第2候補対(P2)も識別する。
例示的な実施形態において、NLPモデル(156)は、複数の因果関係パターン(169)へのアクセスを提供される。例示的な実施形態において、因果関係パターン(169)は互いに構文的に異なる。(候補対の例示的な実施形態に関連して上述した)原因と結果のパターン(168)と、因果関係パターン(169)とは、互いに同じものまたは異なるものであってもよいし、幾つかのパターンが両方のセット(168)および(169)により共有され、且つ、他のパターンがセット(168)または(169)にのみ含まれて他方には含まれない、といった形で部分的に重複してもよい。
Dunietz et al.,The BECauSE Corpus 2.0:Annotating Causality and Overlapping Relations,Proceedings of the 11th Linguistic Annotation Workshop,95-104(2017)には、因果関係構造のパターンの非限定的な例が見られる。ソースに関係なく、一般的であり、且つ、因果関係の弱い指標(例えば、「XによりY」)であることが多い、因果関係構造のパターンを除去して、因果関係パターン(169)のセットを生成することができる。以下の表には、例示的な因果関係パターンの非包括的なリストを記載する。
NLPモデル(156)は、因果関係パターン(169)と候補テキスト(166)からの候補文との各々をレンマ化するように構成されている。ある実施形態によれば、レンマ化は、因果関係パターン(169)の動詞(例えば、上記表の1番の場合は「引き起こす:causes」および「引き起こした:caused」)と、候補テキスト(166)からの候補文とを原形(例えば、「引き起こす:cause」)に変換することを含む。例えば、「XはYを引き起こす:X causes Y」という因果関係パターンの動詞を原形にレンマ化すると、「XはYを引き起こす:X cause Y」というレンマ化された因果関係パターンが生成される。動詞をレンマ化すると、因果関係パターンと候補文とを対応させ易くなる。
NLPモデル(156)は、レンマ化された因果関係パターンを、例えば、「(.*)は(.*)を引き起こす:(.*)cause(.*)」というレンマ化された正規表現に変換するように更に構成されている。レンマ化された正規表現をレンマ化された候補文(166)と比較して、1つまたは複数の対応するものを見つける。例示的な実施形態において、対応させることは、同じ動詞の原形、例えば、「引き起こす:cause」、「トリガする:trigger」、「起因する:result」、「帰する:attribute」などを有する正規表現および候補文を識別することを含む。例示的な実施形態において、対応するレンマ化された候補文は、例えば、上述した第1候補対P1が非因果関係を示し、且つ、上述した第2候補対P2が因果関係を示す、という検証の対象となる。例示的な実施形態によれば、検証は、対応するレンマ化された候補文の第1句および第2句を候補対(162)に追加すること、および、候補対の例示的な実施形態に関連して上述したように候補対を処理することを含む。
上記の説明では、特定の例示的な実施形態において複数のタスクを実行するNLPモデル(156)に言及しているが、NLPモデル(156)は、各々が1つまたは複数の特定のタスクを割り当てられる、複数のNLPモデルを含んでよく、複数のNLPモデルはNLPモデル(156)と総称されることを理解されたい。
幾つかの例示的な実施形態において、サーバ(110)は、ニューヨーク州アーモンクのインターナショナルビジネスマシンズコーポレーションから入手可能なIBM Watson(登録商標)システムであってよく、このシステムは、以下で説明する例示的な実施形態のメカニズムを用いて増強される。ツールと総称される文アセンブラ(152)、AIモデル(154)、NLPモデル(156)、およびディレクタ(158)は、サーバ(110)のAIプラットフォーム(150)に具現化されるか、またはその中に統合されるものとして示されている。ある実施形態において、ツールは、ネットワーク(105)を挟んでサーバ(110)に接続される別個のコンピューティングシステム(例えば、サーバ190)に実装されてよい。どこに具現化されようと、ツールは、原因と結果の対の識別と、原因と結果の対の知識ベースの構築とを支援するように機能する。
AIプラットフォーム(150)を利用することができる情報取り扱いシステムのタイプは、ハンドヘルドコンピュータ/携帯電話(180)などの小型ハンドヘルドデバイスからメインフレームコンピュータ(182)などの大型メインフレームシステムに及ぶ。ハンドヘルドコンピュータ(180)の例には、携帯用情報端末(PDA)、MP4プレーヤなどのパーソナルエンターテインメントデバイス、ポータブルテレビ、およびコンパクトディスクプレーヤが含まれる。情報取り扱いシステムの他の例には、ペンもしくはタブレットコンピュータ(184)、ラップトップもしくはノートブックコンピュータ(186)、パーソナルコンピュータシステム(188)、およびサーバ(190)が含まれる。示されているように、これらの様々な情報取り扱いシステムは、コンピュータネットワーク(105)を使用して共にネットワーク化されてよい。これらの様々な情報取り扱いシステムを相互接続するために使用され得るコンピュータネットワーク(105)のタイプには、ローカルエリアネットワーク(LAN)、無線ローカルエリアネットワーク(WLAN)、インターネット、公衆交換電話網(PSTN)、他の無線ネットワーク、および、情報取り扱いシステムを相互接続するために使用され得る任意の他のネットワークトポロジが含まれる。情報取り扱いシステムの多くは、ハードドライブもしくは不揮発性メモリまたはその両方などの不揮発性データストアを含む。情報取り扱いシステムのうちの幾つかは、別個の不揮発性データストアを使用してよい(例えば、サーバ(190)が不揮発性データストア(190A)を利用し、メインフレームコンピュータ(182)が不揮発性データストア(182a)を利用する)。不揮発性データストア(182A)は、様々な情報取り扱いシステムの外部にあるコンポーネントであってもよいし、情報取り扱いシステムのうちの1つの内部にあってもよい。
AIプラットフォーム(150)を支援するために採用される情報取り扱いシステムは多くの形態を取ってよく、そのうちの幾つかが図1に示されている。例えば、情報取り扱いシステムは、デスクトップ、サーバ、ポータブル、ラップトップ、ノートブック、または他のフォームファクタコンピュータもしくはデータ処理システムの形態を取ってよい。加えて、情報取り扱いシステムは、携帯用情報端末(PDA)、ゲームデバイス、ATMマシン、ポータブル電話デバイス、通信デバイス、または、プロセッサとメモリとを含む他のデバイスなどの他のフォームファクタを取ってよい。加えて、情報取り扱いシステムはノースブリッジ/サウスブリッジコントローラアーキテクチャを具現化してよいが、他のアーキテクチャが採用されてもよいことが解るであろう。
当技術分野において、アプリケーションプログラムインタフェース(API)は、2つまたはそれより多くのアプリケーション間のソフトウェア媒介として理解されている。図1で示し説明するAIプラットフォーム(150)に関して、1つまたは複数のAPIを利用して、ツール(152)、(154)、(156)、および(158)のうちの1つまたは複数、並びにそれらの関連付けられる機能を支援してよい。図2を参照すると、ツール(152)、(154)、(156)、および(158)、並びにそれらの関連付けられるAPIを示すブロック図(200)が提供されている。示されているように、AIプラットフォーム(205)内に複数のツールが埋め込まれている。これらのツールは、API0(212)に関連付けられる文アセンブラ(252)と、API1(222)に関連付けられる人工知能モデル(例えば、機械学習モデル)(254)と、API2(232)に関連付けられる自然言語処理モデル(256)と、API3(242)に関連付けられるディレクタ(258)とを含む。これらのAPIの各々は、1つまたは複数の言語およびインタフェース仕様で実装されてよい。
示されているように、API0(212)は、文アセンブラ(252)で表される機能を支援し有効にするように構成されている。API0(212)は、原因と結果のパターンを使用して第1句および第2句から文を組み立てるための機能的支援を提供する。API1(222)は、コーパスから候補文を抽出し、文および因果関係パターンをレンマ化し、正規表現を生成し、且つ、自然言語の質問を生成するための機能的支援を提供する。API2(232)は、推論を引き出し、質問と回答の対を生成し、且つ、統計的尺度およびスコアを提供するための機能的支援を提供する。API3(242)は、原因句と結果句の対を知識ベースに投入するための機能的支援を提供する。示されているように、API(212)、(222)、(232)、および(242)の各々は、別名オーケストレーション層として知られるAPIオーケストレータ(260)と動作可能に結合され、APIオーケストレータ(260)は、当技術分野において、別個のAPIを共に透過的にスレッド化するための抽象化層として機能するものと理解されている。ある実施形態において、別個のAPIの機能は、結合されるかまたは組み合わせられてよい。別の実施形態において、別個のAPIの機能は、更なるAPIへと更に分割されてよい。そのため、本明細書に示すAPIの構成は、限定的なものとして見なされるべきではない。従って、本明細書に示すように、ツールの機能は、そのそれぞれのAPIにより具現化または支援されてよい。
図3Aおよび図3Bをまとめて参照すると、候補句対が因果関係および非因果関係のどちらを持つかを確認するためのプロセス(または方法)の実施形態を示すフローチャート(300)が提供されている。
図3Aでは、テキストを含むコーパスにアクセスし(302)、原因と結果のパターンのデータベースにアクセスする(304)。例示的な実施形態において、原因と結果のパターンは互いに構文的に異なる。アクセスされたコーパスのテキストを前処理して、1つまたは複数の候補文を識別する。1つまたは複数の候補文はそれぞれ、第1句と第2句とを含む候補対を含む(306)。候補対の数を識別し、それに変数MTOTALを割り当て(308)、対応するCandidatePairカウント変数Mを初期化する(310)。
変形文は、CandidatePairMの第1句および第2句を、アクセスされた原因と結果のパターンの各々に置換することにより、CandidatePairMから構築される(312)。変形文の数を識別し、それに変数NTOTALを割り当て(314)、対応するVariantSentenceカウント変数Nを初期化する(316)。自然言語推論モデルなどのAIモデル、例えば、機械学習モデル(MLM)を使用して、VariantSentenceNがコーパステキスト、例えば、文から推論される確率を決定する(318)。VariantSentenceカウント変数Nをインクリメントし(320)、インクリメントされた変数NがNTOTALより大きいかどうかを決定する(322)。決定(322)に対する非肯定的な応答は、更なる変形文が処理のために残っていることを示すものとして解釈され、これによって、次の変形文の処理のためにステップ(318)に戻る。決定(322)に対する肯定的な応答は、CandidatePairMの全ての変形文が処理されたことを示すものとして解釈される。
図3Bを参照すると、決定(322)に対する肯定的な応答によって、図3Bに示す、CandidatePairMのVariantSentence1からVariantSentenceNTOTALまでの確率の統計的尺度が計算される(324)。統計的尺度の例には、平均および中央値が含まれる。統計的尺度が閾値を満たすかどうかを決定する(326)。決定(326)に対する肯定的な応答は、候補対の第1句と第2句との間に因果関係が存在することを示すものとして解釈される。CandidatePairMの第1句および第2句を、因果関係を有するものとして識別する(328)。決定(326)に対する非肯定的な応答があった場合は、CandidatePairMの第1句および第2句を、因果関係を有しないものとして識別する(330)。いずれにしても、ステップ(328)もしくは(330)のいずれか一方、またはステップ(326)での決定からの非肯定的な応答に続いて、CandidatePairカウント変数Mをインクリメントし(332)、インクリメントされたカウント変数MがMTOTALより大きいかどうかを決定する(334)。決定(334)に対する非肯定的な応答は、更なる候補対が処理のために残っていることを示すものとして解釈され、これによってステップ(312)に戻る。決定(334)に対する肯定的な応答は、全ての候補対が処理されたことを示すものとして解釈され、これによって、プロセスは(336)に進む。(336)では、因果関係を有する候補対を含む識別された候補文をコンパイルおよび出力する。出力された候補文を使用して、データベース、例えば、図1のKnowledgeBase1(170)に投入する(338)。
図4Aおよび図4Bをまとめて参照すると、テキスト(例えば、1つまたは複数の文)、および候補となる原因句または結果句から開始し、且つ、対応する結果句または原因句を識別するためのプロセス(または方法)の実施形態をそれぞれ示すフローチャート(400)が提供されている。
図4Aでは、テキストを含むコーパスにアクセスする(402)。原因または結果を表す1つまたは複数の第1句にもアクセスする(404)。アクセスされた第1句の数を識別し、それに変数XTOTALを割り当て(406)、対応するFirstPhraseカウント変数Xを初期化する(408)。
FirstPhraseXを自然言語処理(NLP)モデルに提示して、自然言語(NL)の質問を作成する(410)。質問と回答(QA)のモデルなどのAIモデル、例えば、機械学習モデル(MLM)にNLの質問を提示して、コーパステキストから1つまたは複数の候補第2句を抽出する(412)。FirstPhraseXを、1つまたは複数の候補第2句の各々に対応させて、対応候補対を提供する(414)。対応候補対の各々に原因と結果の関係スコアを割り当てる(416)。例示的な実施形態において、AIモデルはスコアを割り当てる。FirstPhraseXおよび候補第2句が原因と結果の関係を有する可能性が最も高いことを反映する1つまたは複数のスコアを有する対応候補対を選択する(418)。
図4Bを参照すると、選択された高いスコアの対応候補対が因果関係を有することの検証が実行される(420)。ある実施形態によれば、検証(420)は、選択された高いスコアの対応候補対を図3Aのステップ(308)から(336)にかけることによりこれらの候補対を分析することを伴ってよい。FirstPhraseカウント変数Xをインクリメントし(422)、FirstPhraseXのインクリメントされた値がXTOTALより大きいかどうかを決定する(424)。決定(424)に対する非肯定的な応答は、更なるアクセスされた第1句が処理のために残っていることを示すものとして解釈され、これによってステップ(410)に戻る。決定(424)に対する肯定的な応答は、アクセスされた第1句の全てが処理されたことを示すものとして解釈される。選択された高いスコアの対応対をコンパイルおよび出力し(426)、データベースに投入するために使用する(428)。
図5Aおよび図5Bをまとめて参照すると、テキストを含むコーパスからアクセスされる候補文が原因と結果の関係を持つかどうかを判断するためのプロセス(または方法)の実施形態を示すフローチャート(500)が提供されている。
図5Aでは、因果関係パターン(例えば、上述した図1の因果関係パターン(169))のデータベースにアクセスする(502)。例示的な実施形態において、因果関係パターンは互いに構文的に異なる。因果関係パターンをレンマ化する(504)。例示的な実施形態では、因果関係パターンの動詞をレンマ化する。例えば、「XはYを引き起こす:X causes Y」という因果関係パターンの「引き起こす:causes」という動詞と、「XはYを引き起こした:X caused Y」という因果関係パターンの「引き起こした:caused」という動詞とを、「引き起こす:cause」という動詞の原形に変換する。例示的な実施形態では、NLPモデルをレンマ化に使用する。レンマ化された因果関係句(例えば、XはYを引き起こす:X cause Y)を正規表現(例えば、「(.*)は(.*)を引き起こす:(.*)cause(.*)」に変換する(506)。正規表現の数を識別し、それに変数ZTOTALを割り当て(508)、レンマ化された正規表現カウント変数Zを初期化する(510)。
テキストを含むコーパスにアクセスする(512)。テキストのコーパスの1つまたは複数の候補文を識別する(514)。文ごとに、第1句と第2句の1つまたは複数の候補対を抽出する(516)。例示的な実施形態において、第1句および第2句は名詞句を含む。別の例示的な実施形態では、第1句および第2句のいずれか一方または両方が名詞句および説明的な前置詞句を含む。他の実施形態では、第1句および第2句のいずれか一方または両方が名詞句ではない。候補文の数を識別し、それに変数YTOTALを割り当てる(518)。CandidateSentenceのカウント変数Yを初期化する(520)。
CandidateSentenceYもレンマ化する(522)。図5Bに示すように、レンマ化されたCandidateSentenceYの第1句と第2句の1つまたは複数の対が、レンマ化された正規表現に対応するかどうかを決定する(524)。例示的な実施形態において、決定(524)は、レンマ化されたCandidateSentenceYの第1句と第2句の各対が、レンマ化されたRegexZと同じレンマ化された動詞を有するかどうかを査定することを含む。決定(524)に対する肯定的な回答は、候補文の第1句と第2句の対が潜在的に因果関係を持つことを示すものとして解釈される。肯定的表現で決定(524)に回答した場合は、CandidateSentenceYおよび句の候補対を、ある実施形態ではファイルである、リストに追加し(526)、Regexカウント変数Zをインクリメントする(528)。一方、非肯定的表現で決定(524)に回答すると、プロセスは、Regexカウント変数Zをインクリメントするステップ(528)に進む。
Regexカウント変数Zをインクリメントした(528)後、インクリメントされたRegexカウント変数ZがZTOTALより大きいかどうかを決定する(530)。決定(530)に対する非肯定的な回答は、レンマ化された正規表現の全てに関してCandidateSentenceYの対応決定が行われたわけではないことを示すものとして解釈され、これによって、プロセスは、CandidateSentenceYとインクリメントされた正規表現、例えば、RegexZとの間に対応するものが存在するかどうかを判断するための決定(524)に戻る。決定(530)に対する肯定的な回答は、CandidateSentenceYに関して全ての正規表現の対応プロセスが行われたことを示すものとして解釈され、これによって、候補文の変数がインクリメントされる(532)。
インクリメントされた変数YがYTOTALより大きいかどうかを決定する(534)。決定(534)に対する非肯定的な回答は、レンマ化された候補文の全てが処理されたわけではないことを示すものとして解釈され、これによって、プロセスは、インクリメントされたCandidateSentenceYをレンマ化するためのステップ(522)に戻る。決定(534)に対する肯定的な回答は、全てのレンマ化された候補文が処理された(すなわち、レンマ化された正規表現の全てに関して全てのレンマ化された候補文の対応決定(524)が行われた)ことを示すものとして解釈される。任意選択で、候補文の第1句および第2句が原因と結果の関係を持つことを検証するために、ステップ(526)で作られる識別された候補対を有する候補文のリストを図3Aのステップ(308)に送信する(536)。
本明細書に記載のシステム、方法、およびコンピュータプログラム製品の特定の例示的な実施形態によって、実質的または完全に監視されていない自動化方式で原因と結果の対の高品質集合が生成される。例示的な実施形態は、更なる処理のための原因と結果の対の使用と、因果関係知識グラフとしての表現と、決定支援または予測的分析のための使用とを更に伴う。
図1および図2にそれぞれ示すツールおよびAPIと、図3A、図3B、図4A、図4B、図5A、および図5Bに示すプロセスとを用いて、因果関係対を識別および検証する態様を示し説明する。機能ツール(152)、(154)、(156)、および(158)、並びにそれらの関連付けられる機能の態様は、単一の位置におけるコンピュータシステム/サーバに具現化されてもよいし、ある実施形態では、コンピューティングリソースを共有するクラウドベースのシステムにおいて構成されてもよい。図6を参照すると、図3Aから図5Bに関して上述したプロセスを実装するためのコンピュータシステム/サーバ(602)の例を示すブロック図(600)が提供されている。以下、コンピュータシステム/サーバ(602)は、クラウドベースの支援システムと通信するホスト(602)と呼ばれる。ホスト(602)は、多数の他の汎用コンピューティングシステムまたは特殊用途コンピューティングシステムの環境または構成を用いて動作可能である。ホスト(602)との使用に適し得る周知のコンピューティングシステム、環境、もしくは構成、またはそれらの組み合わせの例には、限定されるわけではないが、パーソナルコンピュータシステム、サーバコンピュータシステム、シンクライアント、シッククライアント、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラマブル家電製品、ネットワークPC、ミニコンピュータシステム、メインフレームコンピュータシステム、並びに、上記のシステム、デバイス、およびそれらの同等物のいずれかを含むファイルシステム(例えば、分散型記憶環境および分散型クラウドコンピューティング環境)が含まれる。
ホスト(602)は、コンピュータシステムにより実行される、プログラムモジュールなどのコンピュータシステム実行可能命令の一般的文脈で説明されてよい。概して、プログラムモジュールは、特定のタスクの実行または特定の抽象データ型の実装を行うルーチン、プログラム、オブジェクト、コンポーネント、ロジック、およびデータ構造などを含んでよい。ホスト(602)は、通信ネットワークを通じてリンクされるリモート処理デバイスによりタスクが実行される分散型クラウドコンピューティング環境(610)で実施されてよい。分散型クラウドコンピューティング環境では、メモリ記憶デバイスを含むローカルコンピュータシステム記憶媒体およびリモートコンピュータシステム記憶媒体の両方にプログラムモジュールが位置付けられてよい。
図6に示すように、ホスト(602)は、汎用コンピューティングデバイスの形態で示されている。ホスト(602)のコンポーネントは、限定されるわけではないが、1つまたは複数のプロセッサまたは処理ユニット(604)、例えば、ハードウェアプロセッサと、システムメモリ(606)と、システムメモリ(606)を含む様々なシステムコンポーネントを処理ユニット(604)に結合するバス(608)とを含んでよい。バス(608)は、メモリバスまたはメモリコントローラ、ペリフェラルバス、アクセラレイティッドグラフィックスポート、および様々なバスアーキテクチャのいずれかを使用するプロセッサまたはローカルバスを含む、幾つかのタイプのバス構造のいずれかの1つまたは複数を表す。限定ではなく例として、そのようなアーキテクチャは、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、エンハンスドISA(EISA)バス、ビデオエレクトロニクススタンダーズアソシエーション(VESA)ローカルバス、およびペリフェラルコンポーネントインターコネクト(PCI)バスを含む。ホスト(602)は通常、様々なコンピュータシステム可読媒体を含む。そのような媒体は、ホスト(602)からアクセス可能な任意の利用可能な媒体であってよく、揮発性媒体および不揮発性媒体の両方、並びに、取り外し可能な媒体および取り外し不可能な媒体を含む。
システムメモリ(606)は、ランダムアクセスメモリ(RAM)(630)もしくはキャッシュメモリ(632)またはその両方などの、揮発性メモリの形態のコンピュータシステム可読媒体を含むことができる。単なる例として、記憶システム(634)は、取り外し不可能な不揮発性の磁気媒体(不図示。通常は「ハードドライブ」と呼ばれる)からの読み取りおよびそこへの書き込みを行うために提供されてよい。示されてはいないが、取り外し可能な不揮発性の磁気ディスク(例えば、「フロッピディスク」)からの読み取りおよびそこへの書き込みを行うための磁気ディスクドライブと、CD-ROM、DVD-ROM、または他の光媒体などの取り外し可能な不揮発性の光ディスクからの読み取りまたはそこへの書き込みを行うための光ディスクドライブとが提供されてよい。そのような場合は、各々が1つまたは複数のデータ媒体インタフェースによりバス(608)に接続されてよい。
プログラムモジュール(642)のセット(少なくとも1つ)を有するプログラム/ユーティリティ(640)が、限定ではなく例として、オペレーティングシステム、1つまたは複数のアプリケーションプログラム、他のプログラムモジュール、およびプログラムデータと同様に、システムメモリ(606)に記憶されてよい。オペレーティングシステム、1つまたは複数のアプリケーションプログラム、他のプログラムモジュール、およびプログラムデータの各々、またはそれらの何らかの組み合わせが、ネットワーキング環境の実装を含んでよい。プログラムモジュール(642)は概して、自然言語(NL)のランダムアクションリプレイを通じた強化学習を支援し可能にするための実施形態の機能もしくは方法またはその両方を実行する。例えば、プログラムモジュール(642)のセットは、図1で説明するようなツール(152)、(154)、(156)、もしくは(158)、またはそれらの組み合わせを含んでよい。
ホスト(602)は、キーボード、ポインティングデバイスなどといった1つまたは複数の外部デバイス(614)、ディスプレイ(624)、ユーザがホスト(602)と相互作用できるようにする1つまたは複数のデバイス、もしくはホスト(602)が1つまたは複数の他のコンピューティングデバイスと通信できるようにする任意のデバイス(例えば、ネットワークカード、モデムなど)、またはそれらの組み合わせと通信してもよい。そのような通信は、入出力(I/O)インタフェース(622)を介して行われてよい。なおも更に、ホスト(602)は、ネットワークアダプタ(620)を介してローカルエリアネットワーク(LAN)、一般的なワイドエリアネットワーク(WAN)、もしくはパブリックネットワーク(例えば、インターネット)、またはそれらの組み合わせなどの1つまたは複数のネットワークと通信することができる。描写されているように、ネットワークアダプタ(620)は、バス(608)を介してホスト(602)の他のコンポーネントと通信する。ある実施形態では、分散型ファイルシステム(不図示)の複数のノードがI/Oインタフェース(622)を介して、または、ネットワークアダプタ(620)を介してホスト(602)と通信する。示されてはいないが、他のハードウェアもしくはソフトウェアコンポーネントまたはその両方がホスト(602)と併せて使用され得ることを理解されたい。例には、限定されるわけではないが、マイクロコード、デバイスドライバ、冗長処理ユニット、外部ディスクドライブアレイ、RAIDシステム、テープドライブ、およびデータアーカイバル記憶システムなどが含まれる。
この文書において、「コンピュータプログラム媒体」、「コンピュータ使用可能媒体」、および「コンピュータ可読媒体」という用語は、概してRAM(630)、キャッシュ(632)、および記憶システム(634)、例えば、取り外し可能な記憶ドライブ、および、ハードディスクドライブにインストールされるハードディスクを含む、システムメモリ(606)などの媒体を指すために使用される。
コンピュータプログラム(コンピュータ制御ロジックとも呼ばれる)は、システムメモリ(606)に記憶される。コンピュータプログラムは、ネットワークアダプタ(620)などの通信インタフェースを介して受信されてもよい。そのようなコンピュータプログラムは、実行されると、コンピュータシステムが、本明細書に記載するような本実施形態の特徴を実行できるようにする。特に、コンピュータプログラムは、実行されると、処理ユニット(604)がコンピュータシステムの特徴を実行できるようにする。従って、そのようなコンピュータプログラムは、コンピュータシステムのコントローラを表す。
ある実施形態において、ホスト(602)は、クラウドコンピューティング環境のノードである。当技術分野で知られているように、クラウドコンピューティングは、最低限の管理労力またはサービスプロバイダとの相互作用で迅速にプロビジョニングおよび解除され得る構成可能なコンピューティングリソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス)の、共有プールへの便利なオンデマンドネットワークアクセスを可能にするためのサービス提供のモデルである。このクラウドモデルは、少なくとも5つの特性と、少なくとも3つのサービスモデルと、少なくとも4つの展開モデルとを含んでよい。そのような特性の例は以下の通りである。
オンデマンドセルフサービス:クラウド消費者は、サービスプロバイダとの人間相互作用を必要とすることなく必要に応じて自動的に、サーバ時間およびネットワークストレージなどのコンピューティング機能を一方的にプロビジョニングすることができる。
幅広いネットワークアクセス:ネットワーク経由で機能を利用でき、異種のシンクライアントプラットフォームまたはシッククライアントプラットフォーム(例えば、携帯電話、ラップトップ、およびPDA)による使用を促進する標準メカニズムを通じて機能にアクセスする。
リソースのプール化:プロバイダのコンピューティングリソースをプール化して、マルチテナントモデルを使用する複数の消費者にサービスを提供する。複数の異なる物理リソースおよび仮想リソースが需要に従って動的に割り当てられ、再び割り当てられる。消費者は概して、提供されたリソースの正確な位置を制御することも認識することもないが、より高い抽象化層(例えば、国、州、またはデータセンタ)で位置を指定できる場合があるという点で、位置独立性がある。
迅速な順応性:機能を迅速かつ順応的に、場合によっては自動的にプロビジョニングして素早くスケールアウトし、迅速に解除して素早くスケールインすることができる。消費者にはプロビジョニングに利用可能な機能が無制限に見えることが多く、任意の時間に任意の数を購入することができる。
測定されたサービス:クラウドシステムは、サービスのタイプ(例えば、ストレージ、処理、帯域幅、およびアクティブなユーザのアカウント)に適した何らかの抽象化層における計測機能を活用することにより、リソース使用を自動的に制御および最適化する。リソースの使用を監視、制御、および報告して、利用されたサービスのプロバイダおよび消費者の両方に透過性を提供することができる。
サービスモデルは以下の通りである。
サービスとしてのソフトウェア(Software as a Service:SaaS):消費者に提供される機能は、クラウドインフラストラクチャ上で実行されているプロバイダのアプリケーションを使用することである。アプリケーションには、ウェブブラウザ(例えば、ウェブベースの電子メール)などのシンクライアントインタフェースを通じて様々なクライアントデバイスからアクセス可能である。消費者は、場合によっては、限られたユーザ固有のアプリケーション構成設定を例外として、ネットワーク、サーバ、オペレーティングシステム、ストレージ、または更には個々のアプリケーション機能を含む、土台となるクラウドインフラストラクチャを管理することも制御することもない。
サービスとしてのプラットフォーム(Platform as a Service:PaaS):消費者に提供される機能は、プロバイダにより支援されるプログラミング言語およびツールを使用して作成される、消費者により作成または取得されたアプリケーションをクラウドインフラストラクチャ上に展開することである。消費者は、ネットワーク、サーバ、オペレーティングシステム、またはストレージを含む、土台となるクラウドインフラストラクチャを管理することも制御することもないが、展開されるアプリケーションと、場合によっては、アプリケーションホスティング環境構成とを制御する。
サービスとしてのインフラストラクチャ(Infrastructure as a Service:IaaS):消費者に提供される機能は、処理と、ストレージと、ネットワークと、消費者が任意のソフトウェア(オペレーティングシステムおよびアプリケーションを含み得る)を展開および実行できる他の基本的なコンピューティングリソースとをプロビジョニングすることである。消費者は、土台となるクラウドインフラストラクチャを管理することも制御することもないが、オペレーティングシステム、ストレージ、展開されるアプリケーションを制御し、場合によっては、選択されたネットワーキングコンポーネント(例えば、ホストファイアウォール)を限定的に制御する。
展開モデルは以下の通りである。
プライベートクラウド:クラウドインフラストラクチャが組織のためだけに運用される。それは組織またはサードパーティにより管理されてよく、オンプレミスまたはオフプレミスで存在してよい。
コミュニティクラウド:クラウドインフラストラクチャが幾つかの組織により共有され、関心事項(例えば、ミッション、セキュリティ要件、ポリシ、およびコンプライアンス上の考慮事項)を共有している特定のコミュニティを支援する。それは組織またはサードパーティにより管理されてよく、オンプレミスまたはオフプレミスで存在してよい。
パブリッククラウド:クラウドインフラストラクチャが一般人または大規模な業界団体が利用できるようになっており、クラウドサービスを販売する組織により所有される。
ハイブリッドクラウド:クラウドインフラストラクチャが固有のエンティティのままであるが、データおよびアプリケーションの移植性(例えば、クラウド間の負荷平衡のためのクラウドバースティング)を可能にする標準技術または特許技術により共に結び付けられている、2つまたはそれより多くのクラウド(プライベート、コミュニティ、またはパブリック)の構成である。
クラウドコンピューティング環境は、ステートレス状態、低結合、モジュール性、および意味論的な相互運用性に重点を置いたサービス指向の環境である。クラウドコンピューティングの中心には、相互接続されたノードのネットワークを含むインフラストラクチャがある。
ここで図7を参照すると、例示的なクラウドコンピューティングネットワーク(700)が示されている。クラウドコンピューティングネットワーク(700)は、クラウド消費者により使用されるローカルコンピューティングデバイスが通信し得る1つまたは複数のクラウドコンピューティングノード(710)を有するクラウドコンピューティング環境(750)を含む。これらのローカルコンピューティングデバイスの例には、限定されるわけではないが、携帯用情報端末(PDA)またはセルラ電話(754A)、デスクトップコンピュータ(754B)、ラップトップコンピュータ(754C)、もしくは自動車コンピュータシステム(754N)、またはそれらの組み合わせが含まれる。クラウドコンピューティングノード(710)内の個々のノードは、互いに更に通信してよい。それらは、上述したようなプライベートクラウド、コミュニティクラウド、パブリッククラウドもしくはハイブリッドクラウド、またはそれらの組み合わせなどの、1つまたは複数のネットワークにおいて物理的または仮想的にグループ化(不図示)されてよい。これによって、クラウドコンピューティング環境(700)は、クラウド消費者がローカルコンピューティングデバイス上にリソースを維持する必要がないサービスとしての、インフラストラクチャ、プラットフォーム、もしくはソフトウェア、またはそれらの組み合わせを提供することができる。図7に示すコンピューティングデバイス(754A-N)のタイプは単に例示を意図するものであり、クラウドコンピューティング環境(750)は、任意のタイプのネットワークもしくはネットワークアドレス可能な接続またはその両方を介して(例えば、ウェブブラウザを使用して)、任意のタイプのコンピュータ化されたデバイスと通信できることが解る。
ここで図8を参照すると、図7のクラウドコンピューティングネットワークにより提供される関数抽象化層のセット(800)が示されている。図8に示すコンポーネント、層、および機能は単に例示を意図するものであり、実施形態はそれらに限定されないことを予め理解されたい。描写されているように、以下の層および対応する機能、すなわち、ハードウェアおよびソフトウェアの層(810)、仮想化層(820)、管理層(830)、および作業負荷層(840)が提供されている。
ハードウェアおよびソフトウェアの層(810)は、ハードウェアコンポーネントおよびソフトウェアコンポーネントを含む。ハードウェアコンポーネントの例には、メインフレーム、一例ではIBM(登録商標)zSeries(登録商標)システムと、RISC(Reduced Instruction Set Computer:縮小命令セットコンピュータ)アーキテクチャベースのサーバ、一例ではIBM pSeries(登録商標)システムと、IBM xSeries(登録商標)システムと、IBM BladeCenter(登録商標)システムと、記憶デバイスと、ネットワークおよびネットワーキングコンポーネントとが含まれる。ソフトウェアコンポーネントの例には、ネットワークアプリケーションサーバソフトウェア、一例ではIBM WebSphere(登録商標)アプリケーションサーバソフトウェアと、データベースソフトウェア、一例ではIBM DB2(登録商標)データベースソフトウェアとが含まれる(IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere、およびDB2は、世界中の多くの管轄で登録されているインターナショナルビジネスマシンズコーポレーションの商標である)。
仮想化層(820)は、仮想サーバ、仮想ストレージ、仮想プライベートネットワークを含む仮想ネットワーク、仮想アプリケーションおよびオペレーティングシステム、並びに、仮想クライアントといった、仮想エンティティの例の提供元であり得る抽象化層を提供する。
一例において、管理層(830)は、リソースプロビジョニング、計測および価格設定、ユーザポータル、サービス層管理、並びに、SLA計画および履行といった機能を提供してよい。リソースプロビジョニングは、クラウドコンピューティング環境内でタスクを実行するために利用されるコンピューティングリソースおよび他のリソースの動的調達を提供する。計測および価格設定は、リソースがクラウドコンピューティング環境内で利用される際のコスト追跡と、これらのリソースの消費に対する請求書作成または送り状作成とを提供する。一例において、これらのリソースは、アプリケーションソフトウェアライセンスを含んでよい。セキュリティは、クラウド消費者およびタスクのアイデンティティ検証、並びに、データおよび他のリソースの保護を提供する。ユーザポータルは、消費者およびシステム管理者にクラウドコンピューティング環境へのアクセスを提供する。サービス層管理は、必要なサービス層が満たされるようにクラウドコンピューティングリソースの配分および管理を提供する。サービス層合意(SLA)の計画および履行は、SLAに従って将来の要件が予想されるクラウドコンピューティングリソースの事前準備および調達を提供する。
作業負荷層(840)は、クラウドコンピューティング環境が利用され得る機能の例を提供する。この層から提供され得る作業負荷および機能の例には、限定されるわけではないが、マッピングおよびナビゲーション、ソフトウェア開発およびライフサイクル管理、仮想教室教育の提供、データ分析処理、トランザクション処理、並びに、因果関係知識の識別および抽出が含まれる。
本実施形態の特定の実施形態が示され説明されているが、実施形態およびそのより広範な態様から逸脱することなく本明細書の教示に基づいて変更および修正がなされ得ることは、当業者にとって明らかであろう。従って、添付の特許請求の範囲は、その範囲内において、実施形態の真の精神および範囲内にあるそのような変更および修正を全て包含すべきである。更に、実施形態は、添付の特許請求の範囲によってのみ定義されることを理解されたい。導入される請求項要素の特定の数が意図される場合は、そのような意図が請求項において明示的に記載され、そのような記載がない場合は、そのような限定が存在しないことが当業者には解るであろう。非限定的な例として、理解を助けるために、以下の添付の特許請求の範囲は、請求項要素を導入するための「少なくとも1つ」および「1つまたは複数」という導入句の使用を含む。しかしながら、そのような言い回しの使用は、「1つまたは複数」または「少なくとも1つ」という導入句と「1つ(a)」または「1つ(an)」などの不定冠詞とが同じ請求項に含まれる場合であっても、「1つ(a)」または「1つ(an)」という不定冠詞による請求項要素の導入が、そのような導入された請求項要素を含む任意の特定の請求項を、そのような要素を1つだけ含む実施形態に限定することを示唆していると解釈されるべきではない。請求項における定冠詞の使用についても同じことが当てはまる。本明細書で使用するとき「および/または」という用語は、いずれか一方または両方(または、言及される用語または表現の任意の組み合わせまたは全て)を意味し、例えば、「A、B、および/またはC」は、Aのみ、Bのみ、Cのみ、AおよびB、AおよびC、BおよびC、並びに、A、B、およびCを包含する。
本実施形態は、システム、方法、もしくはコンピュータプログラム製品、またはそれらの組み合わせであってよい。加えて、本実施形態の選択された態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、または、ソフトウェアもしくはハードウェアまたはその両方の態様を組み合わせた実施形態の形態を取ってよく、本明細書ではこれらが全て、概して「回路」、「モジュール」、または「システム」と呼ばれる場合がある。更に、本実施形態の態様は、プロセッサに本実施形態の態様を実行させるコンピュータ可読プログラム命令を有する1つまたは複数のコンピュータ可読記憶媒体に具現化されるコンピュータプログラム製品の形態を取ってよい。このように具現化されて、開示されているシステム、方法、もしくはコンピュータプログラム製品、またはそれらの組み合わせは、因果関係対の識別および検証の改善を提供するように動作する。
コンピュータ可読記憶媒体は、命令実行デバイスが使用する命令を保持および記憶し得る有形のデバイスであってよい。コンピュータ可読記憶媒体は、例えば、以下に限定されるわけではないが、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、または前述のものの任意の適切な組み合わせであってよい。コンピュータ可読記憶媒体のより具体的な例の非包括的なリストには、ポータブルコンピュータディスケットと、ハードディスクと、動的または静的なランダムアクセスメモリ(RAM)と、リードオンリメモリ(ROM)と、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)と、磁気記憶デバイスと、ポータブルコンパクトディスクリードオンリメモリ(CD-ROM)と、デジタル多用途ディスク(DVD)と、メモリスティックと、フロッピディスクと、パンチカード、または命令を記録した溝内の隆起構造などの、機械的に符号化されたデバイスと、前述のものの任意の適切な組み合わせとが含まれる。コンピュータ可読記憶媒体は、本明細書で使用するとき、それ自体が、電波または他の自由に伝搬する電磁波、導波路または他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバケーブルを通過する光パルス)、または、ワイヤを通じて伝送される電気信号などの一時的信号であると解釈されるべきではない。
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスにダウンロードされてもよいし、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、もしくは無線ネットワーク、またはそれらの組み合わせなどのネットワークを介して、外部コンピュータまたは外部記憶デバイスにダウンロードされてもよい。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、もしくはエッジサーバ、またはそれらの組み合わせを備えてよい。各コンピューティング/処理デバイス内のネットワークアダプタカードまたはネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、そのコンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するために転送する。
本実施形態の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、または、Java(登録商標)、Smalltalk(登録商標)、またはC++などといったオブジェクト指向型プログラミング言語と、「C」プログラミング言語または同様のプログラミング言語などの従来の手続き型プログラミング言語とを含む、1つまたは複数のプログラミング言語の任意の組み合わせで記述されたソースコードもしくはオブジェクトコードのいずれか一方であってよい。コンピュータ可読プログラム命令は、全部がユーザのコンピュータ上で実行されてもよいし、一部がユーザのコンピュータ上でスタンドアロンのソフトウェアパッケージとして実行されてもよいし、一部がユーザのコンピュータ上、且つ、一部がリモートコンピュータ上で実行されてもよいし、全部がリモートコンピュータ上またはサーバ上またはサーバのクラスタ上で実行されてもよい。後者のシナリオでは、リモートコンピュータが、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを通じてユーザのコンピュータに接続されてもよいし、その接続が(例えば、インターネットサービスプロバイダを使用してインターネットを通じて)外部コンピュータに対して行われてもよい。幾つかの実施形態では、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラマブルロジックアレイ(PLA)を含む電子回路が、本実施形態の態様を実行すべく、コンピュータ可読プログラム命令の状態情報を利用して電子回路をパーソナライズすることにより、コンピュータ可読プログラム命令を実行してよい。
本明細書では、実施形態に係る方法、装置(システム)、およびコンピュータプログラム製品のフローチャート図もしくはブロック図またはその両方を参照して、本実施形態の態様が説明されている。フローチャート図もしくはブロック図またはその両方の各ブロックと、フローチャート図もしくはブロック図またはその両方のブロックの組み合わせとは、コンピュータ可読プログラム命令により実装され得ることが解るであろう。
これらのコンピュータ可読プログラム命令を汎用コンピュータ、特殊用途コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供してマシンを製造することで、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャートもしくはブロック図またはその両方の1つまたは複数のブロックで指定された機能/動作を実装するための手段を作成するようにしてよい。これらのコンピュータ可読プログラム命令を、コンピュータ、プログラマブルデータ処理装置、もしくは他のデバイス、またはそれらの組み合わせを特定の方式で機能するよう指示することができるコンピュータ可読記憶媒体に記憶することで、命令を記憶したコンピュータ可読記憶媒体が、フローチャートもしくはブロック図またはその両方の1つまたは複数のブロックで指定された機能/動作の態様を実装する命令を含む製造品を備えるようにしてもよい。
コンピュータ可読プログラム命令を、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイス上にロードして、コンピュータ、他のプログラマブル装置、または他のデバイス上で一連の動作可能なステップを実行させて、コンピュータで実装されるプロセスを生成することで、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行される命令が、フローチャートもしくはブロック図またはその両方の1つまたは複数のブロックで指定された機能/動作を実装するようにしてもよい。
図中のフローチャートおよびブロック図は、本実施形態の様々な実施形態に係るシステム、方法、およびコンピュータプログラム製品の考えられる実装のアーキテクチャ、機能、および動作を示す。この際、フローチャートまたはブロック図の各ブロックは、指定された論理機能を実装するための1つまたは複数の実行可能命令を含む、命令のモジュール、セグメント、または部分を表してよい。幾つかの代替的な実装において、ブロックに記す機能は、図に記す順序とは異なる順序で行われてもよい。例えば、関連する機能に応じて、連続して示される2つのブロックが実際には実質的に同時に実行されてもよいし、これらのブロックが時として逆の順序で実行されてもよい。図に表されていない更なるブロックが、例えば、1つまたは複数の示されているブロックの前、後、またはそれと同時に含まれてよい。ブロック図もしくはフローチャート図またはその両方の各ブロック、並びに、ブロック図もしくはフローチャート図またはその両方のブロックの組み合わせが、指定された機能または動作を実行するか、または特殊用途ハードウェアとコンピュータ命令との組み合わせを実行する、特殊用途ハードウェアベースのシステムにより実装され得ることにも気付くであろう。
本明細書では例示を目的として特定の実施形態について説明してきたが、これらの実施形態の精神および範囲から逸脱することなく様々な修正がなされ得ることが解るであろう。特に、因果関係対の識別および検証は、複数の異なるコンピューティングプラットフォームにより、または、複数のデバイスに跨って実行されてよい。更に、データストレージもしくはコーパスまたはその両方は、ローカライズされてもよいし、リモートであってもよいし、複数のシステムに跨って広がっていてもよい。従って、実施形態の保護の範囲は、以下の特許請求の範囲およびその同等物によってのみ限定される。
Claims (25)
- コンピュータシステムであって、
メモリと動作可能に結合されるコンピュータプロセッサと、
前記コンピュータプロセッサと動作可能に関連付けられる文アセンブラであって、
候補テキストおよび第1句と第2句の候補対にアクセスし、且つ、
前記第1句および前記第2句を複数の原因と結果のパターンに置換して、前記第1句と前記第2句とを含む複数の変形文を生成する、
文アセンブラと、
前記コンピュータプロセッサおよび前記メモリと通信する人工知能(AI)プラットフォームであって、前記AIプラットフォームは、
AIモデルであって、
前記複数の変形文が前記候補テキストから推論されるそれぞれの確率を決定し、
前記それぞれの確率の統計的尺度を計算し、且つ、
前記計算された統計的尺度を査定して、前記第1句および前記第2句が互いに因果関係または非因果関係を持つかを確認する
ように構成されているAIモデルと、
前記因果関係を持つ前記第1句と前記第2句とを含む前記候補テキストを知識ベースに投入するように構成されているディレクタと
を有する、AIプラットフォームと
を備えるコンピュータシステム。 - 前記AIモデルは推論モデルを含む、請求項1に記載のコンピュータシステム。
- 前記候補テキストを含むコーパスと通信する自然言語処理モデル(NLPモデル)であって、前記コーパスから前記候補対を抽出するように構成されている、NLPモデル
を更に備える、請求項1に記載のコンピュータシステム。 - 前記NLPモデルは、
複数の因果関係パターンをレンマ化し、
前記レンマ化された複数の因果関係パターンを正規表現に変換し、
前記候補テキストをレンマ化し、
前記レンマ化された候補テキストが前記正規表現のうちの1つまたは複数に対応するかどうかを判断し、且つ、
前記レンマ化された候補テキストと、前記正規表現のうちの前記対応した1つまたは複数とから前記候補対を識別する
ように更に構成されている、請求項3に記載のコンピュータシステム。 - 前記NLPモデルは、
名詞句と、前記名詞句を記述する前置詞句とを前記コーパスから抽出するよう構成され、前記名詞句および前記前置詞句は、前記第1句または前記第2句をまとめて表す、請求項3に記載のコンピュータシステム。 - 前記ディレクタは、前記因果関係を持つ前記第1句と前記第2句とを含む前記候補テキストを用いて前記AIモデルを訓練するように構成されている、請求項1から5のいずれか一項に記載のコンピュータシステム。
- コンピュータシステムであって、
メモリと動作可能に結合されるコンピュータプロセッサと、
前記コンピュータプロセッサおよび前記メモリと通信する人工知能(AI)プラットフォームであって、前記AIプラットフォームは、
AIモデルであって、
原因または結果を表す第1句を使用して自然言語(NL)の質問を生成するように構成されている自然言語処理モデル(NLPモデル)と、
候補テキストから1つまたは複数の候補第2句を抽出し、
前記1つまたは複数の候補第2句が前記NLの質問に回答するそれぞれの確率を決定し、且つ、
最も高い確率を有する前記候補第2句を、前記第1句との因果関係を持つものとして選択する
ように構成されている第1AIモデルと、
前記第1句および前記選択された第2句を知識ベースに投入するように構成されているディレクタと
を有する、AIプラットフォームと
を備えるコンピュータシステム。 - 前記第1AIモデルは質問と回答(QA)のモデルを含む、請求項7に記載のコンピュータシステム。
- 前記NLPモデルは、前記候補テキストを含むコーパスと通信し、前記NLPモデルは、前記コーパスから前記第1句を抽出するように更に構成されている、
請求項7に記載のコンピュータシステム。 - 前記AIプラットフォームは、
前記第1句および前記選択された第2句にアクセスし、且つ、
前記第1句および前記選択された第2句を複数の原因と結果のパターンに置換して、前記第1句と前記選択された第2句とを含む複数の変形文を生成する
ように構成されている文アセンブラと、
前記複数の変形文が前記候補テキストから推論されるそれぞれの確率を決定し、
前記それぞれの確率の統計的尺度を計算し、且つ、
前記計算された統計的尺度を査定して、前記第1句および前記選択された第2句が互いに因果関係または非因果関係を持つかを確認する
ように構成されている第2AIモデルと
を更に有する、請求項7に記載のコンピュータシステム。 - 前記ディレクタは、前記第1句および前記選択された第2句を用いて前記AIモデルを訓練するように構成されている、請求項7から10のいずれか一項に記載のコンピュータシステム。
- プロセッサに、
候補テキストにアクセスする手順と、
前記候補テキストから第1句と第2句の候補対を抽出する手順と、
前記抽出された第1句および第2句を複数の原因と結果のパターンに置換して、前記第1句と前記第2句とを含む複数の変形文を生成する手順と、
前記複数の変形文が前記候補テキストから推論されるそれぞれの確率を決定する手順と、
前記それぞれの確率の統計的尺度を計算する手順と、
前記計算された統計的尺度を査定して、前記第1句および前記第2句が互いに因果関係または非因果関係を持つかを確認する手順と、且つ、
前記因果関係を持つ前記第1句と前記第2句とを含む前記候補テキストを知識ベースに投入する手順とを、実行させるための、コンピュータプログラム。 - 前記プロセッサに、コーパスから前記候補対を抽出する手順をさらに実行させるための、請求項12に記載のコンピュータプログラム。
- 前記プロセッサに、
複数の因果関係パターンをレンマ化する手順と、
前記レンマ化された複数の因果関係パターンを正規表現に変換する手順と、
前記候補テキストをレンマ化する手順と、
前記レンマ化された候補テキストが前記正規表現のうちの1つまたは複数に対応するかどうかを判断する手順と、且つ、
前記レンマ化された候補テキストと、前記正規表現のうちの前記対応した1つまたは複数とから前記候補対を識別する手順とをさらに実行させるための、請求項13に記載のコンピュータプログラム。 - 前記プロセッサに、
名詞句と、前記名詞句を記述する前置詞句とを前記コーパスから抽出する手順であって、前記名詞句および前記前置詞句は、前記第1句または前記第2句をまとめて表す、手順を実行させるための、請求項13または14に記載のコンピュータプログラム。 - コンピュータで実装される方法であって、
候補テキストおよび第1句と第2句の候補対にアクセスする段階と、
前記第1句および前記第2句を複数の原因と結果のパターンに置換して、前記第1句と前記第2句とを含む複数の変形文を生成する段階と
AIモデルを活用して、
前記複数の変形文が前記候補テキストから推論されるそれぞれの確率を決定し、
前記それぞれの確率の統計的尺度を計算し、且つ、
前記計算された統計的尺度を査定して、前記第1句および前記第2句が互いに因果関係または非因果関係を持つかを確認する
段階と、
前記因果関係を持つ前記第1句と前記第2句とを含む前記候補テキストを知識ベースに投入する段階と
を備えるコンピュータで実装される方法。 - 前記AIモデルは推論モデルを含む、請求項16に記載のコンピュータで実装される方法。
- コーパスから前記候補対を抽出する段階であって、前記コーパスは前記候補テキストを含む、段階
を更に備える、請求項16に記載のコンピュータで実装される方法。 - 複数の因果関係パターンをレンマ化する段階と、
前記レンマ化された複数の因果関係パターンを正規表現に変換する段階と、
前記候補テキストをレンマ化する段階と、
前記レンマ化された候補テキストが前記正規表現のうちの1つまたは複数に対応するかどうかを判断する段階と、
前記レンマ化された候補テキストと、前記正規表現のうちの前記対応した1つまたは複数とから前記候補対を識別する段階と
を更に備える、請求項18に記載のコンピュータで実装される方法。 - 名詞句と、前記名詞句を記述する前置詞句とを前記コーパスから抽出する段階であって、前記名詞句および前記前置詞句は、前記第1句または前記第2句をまとめて表す、段階
を更に備える、請求項18に記載のコンピュータで実装される方法。 - 前記因果関係を持つ前記第1句と前記第2句とを含む前記候補テキストを使用して前記AIモデルを訓練する段階を更に備える、請求項16から20のいずれか一項に記載のコンピュータで実装される方法。
- コンピュータで実装される方法であって、
原因または結果を表す第1句を使用して自然言語(NL)の質問を生成する段階と、
第1AIモデルを活用する段階であって、
候補テキストから1つまたは複数の候補第2句を抽出する段階と、
前記1つまたは複数の候補第2句が前記NLの質問に回答するそれぞれの確率を決定する段階と、
最も高い確率を有する前記候補第2句を、前記第1句との因果関係を持つものとして選択する段階と
を有する、第1AIモデルを活用する段階と、
前記第1句および前記選択された第2句を知識ベースに投入する段階と
を備えるコンピュータで実装される方法。 - 前記第1AIモデルは質問と回答(QA)のモデルを含む、請求項22に記載のコンピュータで実装される方法。
- 前記第1句および前記選択された第2句を用いて前記AIモデルを訓練する段階を更に備える、請求項22に記載のコンピュータで実装される方法。
- 前記第1句および前記選択された第2句を複数の原因と結果のパターンに置換して、前記第1句と前記選択された第2句とを含む複数の変形文を生成する段階と、
第2AIモデルを活用する段階であって、
前記複数の変形文が前記候補テキストから推論されるそれぞれの確率を決定する段階と、
前記それぞれの確率の統計的尺度を計算する段階と
を有する、第2AIモデルを活用する段階と、
前記計算された統計的尺度を査定して、前記第1句および前記選択された第2句が互いに因果関係または非因果関係を持つかを確認する段階と
を更に備える、請求項22から24のいずれか一項に記載のコンピュータで実装される方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/354,171 | 2021-06-22 | ||
US17/354,171 US11922129B2 (en) | 2021-06-22 | 2021-06-22 | Causal knowledge identification and extraction |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023002475A true JP2023002475A (ja) | 2023-01-10 |
Family
ID=84489251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022097642A Pending JP2023002475A (ja) | 2021-06-22 | 2022-06-16 | コンピュータシステム、コンピュータプログラムおよびコンピュータで実装される方法(因果関係知識の識別および抽出) |
Country Status (2)
Country | Link |
---|---|
US (1) | US11922129B2 (ja) |
JP (1) | JP2023002475A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11922129B2 (en) | 2021-06-22 | 2024-03-05 | International Business Machines Corporation | Causal knowledge identification and extraction |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10275454B2 (en) * | 2014-10-13 | 2019-04-30 | International Business Machines Corporation | Identifying salient terms for passage justification in a question answering system |
CN107861937B (zh) * | 2016-09-21 | 2023-02-03 | 松下知识产权经营株式会社 | 对译语料库的更新方法、更新装置以及记录介质 |
US10380259B2 (en) * | 2017-05-22 | 2019-08-13 | International Business Machines Corporation | Deep embedding for natural language content based on semantic dependencies |
US10528669B2 (en) | 2018-03-20 | 2020-01-07 | Wipro Limited | Method and device for extracting causal from natural language sentences for intelligent systems |
US10810260B2 (en) * | 2018-08-28 | 2020-10-20 | Beijing Jingdong Shangke Information Technology Co., Ltd. | System and method for automatically generating articles of a product |
CN109783618B (zh) | 2018-12-11 | 2021-01-19 | 北京大学 | 基于注意力机制神经网络的药物实体关系抽取方法及系统 |
CN110162636B (zh) | 2019-05-30 | 2020-05-19 | 中森云链(成都)科技有限责任公司 | 基于d-lstm的情绪原因识别方法 |
US20200401910A1 (en) | 2019-06-18 | 2020-12-24 | International Business Machines Corporation | Intelligent causal knowledge extraction from data sources |
CN110704890A (zh) | 2019-08-12 | 2020-01-17 | 上海大学 | 一种融合卷积神经网络和循环神经网络的文本因果关系自动抽取方法 |
CN111552609B (zh) | 2020-04-12 | 2022-03-11 | 西安电子科技大学 | 一种异常状态检测方法、系统、存储介质、程序、服务器 |
CN111709225B (zh) | 2020-05-09 | 2023-05-09 | 北京明略软件系统有限公司 | 一种事件因果关系判别方法、装置和计算机可读存储介质 |
CN111767408B (zh) | 2020-05-27 | 2023-06-09 | 青岛大学 | 一种基于多种神经网络集成的因果事理图谱构建方法 |
US11922129B2 (en) | 2021-06-22 | 2024-03-05 | International Business Machines Corporation | Causal knowledge identification and extraction |
-
2021
- 2021-06-22 US US17/354,171 patent/US11922129B2/en active Active
-
2022
- 2022-06-16 JP JP2022097642A patent/JP2023002475A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11922129B2 (en) | 2021-06-22 | 2024-03-05 | International Business Machines Corporation | Causal knowledge identification and extraction |
Also Published As
Publication number | Publication date |
---|---|
US11922129B2 (en) | 2024-03-05 |
US20220405487A1 (en) | 2022-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10789552B2 (en) | Question answering system-based generation of distractors using machine learning | |
US11455473B2 (en) | Vector representation based on context | |
US11501187B2 (en) | Opinion snippet detection for aspect-based sentiment analysis | |
US11645470B2 (en) | Automated testing of dialog systems | |
US11189269B2 (en) | Adversarial training data augmentation for generating related responses | |
US20180341903A1 (en) | Identifying task and personality traits | |
US11030402B2 (en) | Dictionary expansion using neural language models | |
CN110929523B (zh) | 共指解析和实体链接 | |
US20230092274A1 (en) | Training example generation to create new intents for chatbots | |
US20230236829A1 (en) | Monolithic computer application refactoring | |
US10216719B2 (en) | Relation extraction using QandA | |
JP2023535913A (ja) | 対話エージェントを用いた対話システムの性能を改善するシステム、方法、プログラム | |
JP2023510241A (ja) | 仮想エージェント対話システムの会話ログの検索方法、システム、プログラム | |
JP2024513293A (ja) | トランスフォーマベースのモデルナレッジグラフリンク予測 | |
JP2024506519A (ja) | 仮想対話システムの性能評価及び強化 | |
US11288322B2 (en) | Conversational agents over domain structured knowledge | |
JP2023002475A (ja) | コンピュータシステム、コンピュータプログラムおよびコンピュータで実装される方法(因果関係知識の識別および抽出) | |
US11443216B2 (en) | Corpus gap probability modeling | |
WO2023100050A1 (en) | Conversational agent counterfactual simulation | |
US11520783B2 (en) | Automated validity evaluation for dynamic amendment | |
US20230316101A1 (en) | Knowledge Graph Driven Content Generation | |
US20220300799A1 (en) | Neuro-Symbolic Approach for Entity Linking | |
US20220269858A1 (en) | Learning Rules and Dictionaries with Neuro-Symbolic Artificial Intelligence | |
US11429789B2 (en) | Natural language processing and candidate response identification |