JP7178995B2 - コンピュータ学習および理解のためのアーキテクチャおよびプロセス - Google Patents

コンピュータ学習および理解のためのアーキテクチャおよびプロセス Download PDF

Info

Publication number
JP7178995B2
JP7178995B2 JP2019519963A JP2019519963A JP7178995B2 JP 7178995 B2 JP7178995 B2 JP 7178995B2 JP 2019519963 A JP2019519963 A JP 2019519963A JP 2019519963 A JP2019519963 A JP 2019519963A JP 7178995 B2 JP7178995 B2 JP 7178995B2
Authority
JP
Japan
Prior art keywords
story
semantic
knowledge
engine
natural language
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.)
Active
Application number
JP2019519963A
Other languages
English (en)
Other versions
JP2019526139A (ja
Inventor
バーボラック マイク
ブキャナン デイビッド
バーナム グレッグ
チュー-キャロル ジェニファー
フェッルッチ デイビッド
カリアンプール アディティア
ラリー アダム
パシフィコ ステファノ
ワン チャン
Original Assignee
エレメンタル コグニション リミテッド ライアビリティ カンパニー
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by エレメンタル コグニション リミテッド ライアビリティ カンパニー filed Critical エレメンタル コグニション リミテッド ライアビリティ カンパニー
Publication of JP2019526139A publication Critical patent/JP2019526139A/ja
Application granted granted Critical
Publication of JP7178995B2 publication Critical patent/JP7178995B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/027Frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Human Computer Interaction (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)
  • Electrically Operated Instructional Devices (AREA)

Description

本発明は、コンピュータ学習および理解のためのアーキテクチャおよびプロセスに関する。
関連特許出願の相互参照
本出願は、参照によりその全体が本明細書に組み込まれる、2016年6月24日に出願された「Architecture and Processes for Computer Learning and Understanding」と題する米国特許出願第15/192,796号の優先権を主張する。
世界は、人工知能のロボット、機械、およびコンピュータを長い間夢見てきた。Arthur C. ClarkeのSpace OdysseyシリーズにおけるHal、およびJetsonsの漫画シリーズにおけるRosie the maidから、Star Trekシリーズにおける船上コンピュータ、ならびにStar Wars sagaにおけるR2D2およびC3POまで、私たちは本質的に学習し、理解し、考えることができる機械に魅了されてきた。
これは非常に優れたエンターテインメントのためのものであり、将来の世代の機械に向けた野心的な目標があるかもしれないが、人工知能およびインテリジェント機械の構築に関連付けられる問題は非常に複雑である。たとえば、今日、任意のテキストを介して人間と自由な対話を満足に行うことができるシステムは存在せず、そのような対話から独立して「学習」し、複雑な質問に対する正当な回答を説明するシステムははるかに少ない。
この分野では進歩があった。IBM社のWatsonのようなよく知られているシステムが、テレビのゲームショーJeopardyで成功を収め、またApple社のSiriは確かにApple製品で音楽や場所を見つけることをより容易にしている。しかし、これらのシステムは、大量のデータ、大規模なトレーニングセット、浅い言語技法、および機械学習技法を自動質問回答のタスクに単に適用するだけである。これらのシステムには深い理解が欠けている。読解力の課題に関する最近の研究は、論理的な理解と流暢な説明のための要件ではなく、狭い回答ベースの指標を用いた浅い統計的手法にまだ焦点を当てている。しかしながら、今日でもなお、どのコンピュータシステムも、任意の2級のテキストの論理的な理解と説明でさえ自律的に読み取り、構築し、伝達することはできない。
したがって、学習し、理解することができる、よりスマートな機械が引き続き必要である。
詳細な説明は、添付図面を参照して説明される。図面において、参照番号の最も左の桁は、参照番号が最初に現れる図面を識別する。異なる図面における同じ参照番号の使用は、類似または同一の項目または特徴を示す。
コンピューティング機械が、ストーリーに見られるような任意のテキストを学習し理解するために対話を通じて人間と関わるアーキテクチャおよび環境を示す図である。 図1のアーキテクチャによって実装されることができる人間との対話を通じた理解を学習および開発するためのプロセスの流れ図である。 図1のアーキテクチャによって実装されることができる人間との対話を通じた理解を学習および開発するためのプロセスの流れ図である。 テキストにおいて議論されているトピックを中心にコンピューティングシステムと対話を行うことを可能にすることによって人々を教えるためのプロセスの流れ図である。 図1の学習および理解アーキテクチャにおける選択構成要素の例示的な実装形態を示し、特定のプロセスおよびデータが構成要素間でどのように流れるかを示す図である。 コンピューティングシステムのブロック図であり、コンピューティングシステムが任意のテキストの論理的な理解を読み取り、構築し、伝達することを可能にするために、図1のアーキテクチャによって実行される選択モジュールを示す図である。 図4のアーキテクチャ構成要素によって実装されることができるテキストを学習および理解するためのプロセスの流れ図である。 図1のアーキテクチャによって採用されるストーリー解析エンジンの1つの例示的な実装形態のブロック図である。図7は、言語解析結果を生成するために、ストーリーなどのテキスト文字列を構文的に処理するために使用されることができる選択構成要素の一実装形態を示す。 ストーリー内の文などのテキスト文字列を構文的に処理するためのプロセスの流れ図である。 図1のアーキテクチャによって採用される知識統合エンジンの1つの例示的な実装形態のブロック図である。図9は、ストーリーの言語解析結果を意味的に処理するために使用されることができる選択構成要素を示す。 対応するテキスト文字列(たとえば、文)に対する意味の範囲を表すように構成されることができる生成的意味素構造の例示的なセットを示す図である。 図9の知識統合エンジンのアラインメント(alignment)モジュールが、ストーリーに対する理解を改善するために、どのようにしてフレーム意味論を進化するストーリーモデルとアラインメントするかを示すための、例示的なストーリー、例示的なエピソード、および例示的な意味構造を示す図である。 ストーリーに対するより深い理解を提供するために意味情報を推論するためのプロセスの流れ図である。 図1のアーキテクチャに見られる知識誘導エンジンの1つの例示的な実装形態のブロック図である。図13は、ストーリーの意味情報の推論を援助するためのリソースを生成するために実装されることができる選択構成要素を示す。 ストーリーに関する意味情報を推論する際に支援するストーリー内の単語/語句の意味および関係のための有力な候補を提供するためのプロセスの流れ図である。 図1のアーキテクチャに見られる信念表現および推論フレームワークの1つの例示的な実装形態のブロック図である。図15は、知識表現言語ならびに文脈差別化および意味素の推論および学習メカニズムを含む、アーキテクチャの動作をサポートするために使用されることができるフレームワーク内の選択構成要素を示す。 図1のアーキテクチャにおいて採用される対話エンジンの1つの例示的な実装形態のブロック図である。図16は、ストーリーに対するシステムの現在の理解に挑戦するか、または検証するためにユーザ質問を生成し、システムの理解を更新するためのユーザ応答を受信する、対話エンジンにおける選択構成要素を示す。 1人または複数の人間のユーザに提起するための適切な質問を生成するための、対話エンジンによって使用される依存構造の一例を示す図である。 意味構造およびフレームにおいて現時点で反映されているストーリーに対するシステムの現在の理解を検証および通知するために人間のユーザに提出するための質問を生成するためのプロセスの流れ図である。 コンピューティングシステムと人間のユーザとの間の対話セッション中にユーザのデバイスに提示され、ユーザによって見られる対話ユーザインタフェースのスクリーンレンダリングを示す図である。 対話セッションにおける次の質問を示すために、図19のスクリーンレンダリングに続いてユーザのデバイス上に提示される対話ユーザインタフェースの第2のスクリーンレンダリングを示す図である。 対話セッションにおける別の次の質問を示すために、図20の第2のスクリーンレンダリングに続いてユーザのデバイス上に提示される対話ユーザインタフェースの第3のスクリーンレンダリングを示す図である。 複数の人間のユーザに同じ質問または異なる質問を並行して分散するための分散された対話メカニズムの実装形態を示すための概略図を有するブロック図である。 複数のユーザを含む第1の例示的な分散された対話セッションの概略図である。 複数のユーザを含む第2の例示的な分散された対話セッションの概略図である。 複数のユーザ間の対話セッション中に質問を分散するためのプロセスを示す流れ図である。 ストーリーモデルと、ストーリーモデルに含まれるデータ構造が、構文処理、意味処理、および人間との対話の結果として時間の経過とともにどのように進展するかを示すブロック図である。 次第に難しくなる自然言語ストーリーおよび人間との対話を処理し、推論することを通じて、時間の経過とともにコンピュータの理解を成長させるためのプロセスを示す流れ図である。 現在の世界モデルにおける意味構造として具体化された知識が、より多くのますます難しいストーリーが対話処理、意味処理、および対話を通じた人間評価を経るにつれて時間の経過とともにどのように成長するかを示す概略図である。 確率論的信念のネットワークを徐々に定式化し、その全体的論理的一貫性を反復的に精緻化する動的なプロセスを示す視覚化の例示的なセットを示す図である。
本開示は、コンピュータ学習および理解のためのアーキテクチャおよびプロセスを説明する。本アーキテクチャは、人間との協力を通じて任意のテキストを学習することと、理解を深めることとを可能にする。共同問題解決の状況において、あるいはシステムを教えるため、または読んでいるテキストをシステムが理解するのを助けるために人間が使用される場合に、この協力が存在することができる。知識を独立して取得して、それをシステムが推論し、進展させ、意味のある対話を可能にするために、テキストから形式に変換するアーキテクチャは、タスク関連の知識へのアクセスを大幅に加速し、人間の研究、学習、発見、および問題解決を援助することによって、世界を変える。
コンピューティングアーキテクチャは、コンピュータシステムが広範囲の自然言語テキストの論理的な理解と説明を自律的に読み取り、構築し、伝達することができる、深い自然言語理解の問題に対処する。深い理解のために必要なことの多くは、本テキスト(または、任意のテキスト)には明示的に提示されていないが、代わりに、世界との対話、または、人間とのインタラクティブな対話を通じて暗黙的に学習される。本明細書に記載のプロセスは、コンピューティングシステムが、(対話によって検証された)意図された意味をますます複雑化する言語に一貫して、正確に、および独立して割り当てるために反復して学習するように、読解力などのインタラクティブな問題解決タスクにおいて人間と対話することを含む。
言語自体が難しいため、深い自然言語の理解は難しい。同じことを言う方法がたくさんあり、意味の微妙な違いが存在するので、言語は無限に構成可能である。たとえば、「タッチダウン(touchdown)」という単語は、飛行機の着陸、またはアメリカンフットボールにおける得点を指すことができる。誰かが「あなたに夢中である(mad about you)」こともあり、「あなたに怒っている(mad at you)」こともあり、それらは2つのまったく異なる意味を有する。次のスクリプトに沿ってコンピュータと会話することができると想定する。
人間:こんにちは、私は質問があります。
コンピュータ:こんにちは。どんな御用でしょうか?
人間:私は臓器再生における幹細胞の役割に関する記事を、技術的観点と倫理的観点から議論したいと思います。
コンピュータ:OK。この記事は、幹細胞が非常に有効であることを示唆しています。幹細胞は以下に関する未解決の問題を含んでいるため、この技術は機能します...
人間:幹細胞はなぜ怪我の領域に引っ張られるのですか?
コンピュータ:「なぜ」によって、あなたはおそらく「どのように」を意味します。それは合っていますか?そうであれば、幹細胞はケミカルメッセージングシステムを使用して怪我の領域に移動して集まります...
おそらく、そのような対話は2人の人間の間では合理的であるが、この種の会話は、不正確な言語によって導入される多くのレベルの複雑性のため、コンピュータにとっては難しい。語義、文法、および意図に広範な曖昧さがある。さらに、意味がしばしば暗示的であり、重要な情報が記載されておらず、背景情報が仮定されている。
この点をさらに説明するために、次の短いストーリーを考察する。
コウモリは彼に向かって飛んでいました。
ビリーはできるだけ速く走りました。
彼は無事に帰宅しました!
設定や背景によっては、このストーリーを理解する方法が複数ある。このストーリーを、「バット」という単語が飛ぶ哺乳動物を意味するものとして一度読んでほしい。次いで、「バット」が野球のバットを意味するものとしてもう一度読んでほしい。
人間として、私たちの知識と経験は、テキスト自体にはないかもしれないストーリーから意味を認識するのにも役立つ。別の例として、以下のように「エンツォとゾーイ」という題名の単純な1年生のストーリーを参照して、以下のアーキテクチャおよびプロセスの側面が説明される:
エンツォとゾーイは競走していました。エンツォが転びました。彼は膝に怪我をしました。ゾーイは振り返りました。ゾーイは勝つことを望んでいました。彼女が走っていたら勝っていたでしょう。ゾーイは止まりました。彼女は走って戻りました。彼女はエンツォが起き上がるのを助けました。
次のような単純な質問を考察する。ゾーイは何を見ましたか?なぜゾーイは止まりましたか?彼女はどこに走って戻りましたか?ゾーイは勝ちましたか?天気はどうでしたか?エンゾとゾーイは何歳ですか?コンピューティングマシンは、通常、ブランクを埋めるために必要な経験と知識で始まるわけではなく、したがって、本明細書説明されているプロセスによって、コンピューティングマシンが、ストーリーをより良く理解するためのこの学習を得るために人間の関与のための質問を定式化し、明確にすることが可能になる。
したがって、本明細書に記載されるアーキテクチャは、ストーリーなどの所与のテキストに関する質問に回答するために、人間との自然言語対話を使用して協力することによって、読むものを理解する方法を学習するコンピューティングシステムを有する。ストーリーはいくつかの読解力の質問が付随されていることがある。システムは、とりわけ読解力の質問に回答するために使用されることができる、ストーリーの意味表現を作成する。
コンピューティングシステムはまず、ストーリーの言語解析を実行し、文法解析、述語項構造、エンティティタイプ割当て、および共参照解析などの言語解析結果を生成する。この言語解析を使用して、コンピューティングシステムがストーリーの意味表現を作成し、そこにおいて、ストーリーの意味は生成的意味素(GSP)の観点から表される。GSPは、時間、空間、論理、数、変化、原因、関連、信念、知覚、表現、および意図などの、世界についての基本的な事実を表す構造の小さいセットである。GSPは、自然言語の意味の非常に広い範囲を表現するように構成されることができる。
コンピューティングシステムは、世界について何が真実であるかに関する信念を含む現在の世界モデルを維持し、継続的に更新する。現在の世界モデルはフレームの集合で作られることができ、各フレームは、いくつかの共通の文脈において真実である可能性が高いGSPなどの命題の集合である。たとえば、エンツォとゾーイのストーリーでは、フレーム構造は、競走中に一般的に何が起こるかを提供することができる。コンピューティングシステムは、現在の世界モデルの知識と大規模言語コーパスから自動的に誘導される知識に基づいてストーリーモデルの描画を構築する。
初期のストーリーモデルが構築された後、コンピューティングシステムはストーリーモデルを、やはりストーリーを読んだ人間との対話を通じてテストする。このプロセスは、読解練習を一緒に行い、質問に回答し、有効な説明を提供することを含むことができる。人間の対話により、コンピュータシステムが、ストーリーにおけるさらなる暗黙的な意味および暗黙的な背景知識を発見することが可能になり、ストーリーおよび将来の新しいストーリーを理解するためにこの暗黙の知識を使用する。人間の応答は、ストーリーモデルを更新し、コンピューティングシステムの特定の理解の選択を調整するために使用されることができる。モデルの改訂後、人間とのさらなる対話を通じて、新しい理解はさらにテストされることができる。
このように、人間との対話を通じて、コンピューティングシステムは、時間の経過とともに、逐次的なより難しい読解のテキストについての質問に回答するために学習し、質問に回答することによって、およびそれらの回答がなぜ正しいかを説明することによって、読んだものを理解するための能力を実証する。たとえば、システムは幼稚園レベルから開始し、より高い学年のレベルまで進めることができる。一部のアプリケーションでは、本システムは、やはりテキストの適切な学年レベルにある学生と対話することができる。コンピュータシステムは、人間への質問を生成して質問し、続いてその回答が、その理解を表現する論理モデルに言語をマッピングする方法を学習するために、コンピュータシステムによって使用される。
さらに、コンピュータシステムは、インタラクティブプロセスを通じて人々を教えるように構成されることができる。本システムは、所与のストーリーの相互理解に最終的に到達するために、システムの理解を評価することによって、およびシステムの回答を論理的に検証することによって、人間の学生が、読んでいるものの論理モデルを構築し、批判的に考えることを学習するために役立つ。システムは、コンピュータシステムが背景コーパス上で検出する他の類似コンテンツにストーリー要素を結びつける類推を生成することによって、および、それらの類推を考察して検証するように学生に求めることによって、類推的推論を学習し、教える。そのような複数の対話を通して、学生は自分自身の知識に疑問を持ち、批評し、調査し、および拡張する方法を学習し、コンピュータシステムは、(対話によって検証された)意図された意味をますます複雑化する言語に一貫して、正確に、および独立して割り当てるために反復して学習する。
いくつかの状況では、コンピューティングシステムは、人間の対話に加えて、他のコンピューティングシステムとさらに対話することもできる。たとえば、第1のコンピューティングシステムは、第2のコンピューティングシステムがまだ遭遇していないストーリーの理解を得た可能性がある。第1のコンピューティングシステムおよび第2のコンピューティングシステムは、第1のコンピューティングシステムが本質的に第2のコンピューティングシステムを教えることができるように、ストーリーを介して対話することができる。このように、コンピュータシステムは、異なる領域内のテキストを学習し理解することによってそれらの領域の専門知識を発展させるために、時間の経過とともに別々に開発するので、コンピュータシステムは、他のシステムの知識を統合するために互いから学習することができる。コンピュータシステム間の対話は、それぞれの意味表現を伝達するなど、非常に異なるレベルにある場合がある。
このアーキテクチャは、知識表現および機械学習などの人工知能からの技法を採用する。さらに、このアーキテクチャは、構文解析、述語項構造、エンティティタイプ割当て、共参照解析、および分散意味(たとえば、潜在的意味解析、ランダム索引付け、およびトピックモデリング)などの統計技法などの自然言語処理からの技法を採用する。
説明のためのアーキテクチャ環境
図1は、コンピューティングシステムなどの機械が、ストーリーに見られるような任意の自然言語を学習し理解するために対話を通じて人間と関わることができる例示的なアーキテクチャ100を示す。議論の目的のために、アーキテクチャは、学生が尋ねる質問に回答することよって、コンピューティングシステムが彼らから学習する、および/または彼らを教える目的で様々なレベルの学生と対話する、例示的な教育環境において一部説明される。しかしながら、このアーキテクチャは本質的にどのような環境においても実装されることができ、教育に限定されることが意図されるものではない。
アーキテクチャ100は、任意の自然言語を取り込んで解析し、人間との協力的な対話を通じて単語および概念の意味および語義を学習および理解するように構成された学習および理解コンピューティングシステム102を含む。共同問題解決の状況において、あるいはシステムを教えるため、または読んでいるテキストをシステムが理解するのを助けるために人間が使用される場合に、人間の協力が行われることができる。学習および理解コンピューティングシステム102は、ストーリー106(1)、106(T)などの任意のテキスト文字列の形態であってもよい自然言語入力を取り込むための処理および記憶能力を有する1つまたは複数のサーバ104(1)、104(2)、104(S)上でホストされてもよい。サーバ104(1)~(S)は、自然言語入力を処理し、人間とコンピューティングシステムの両方にとって自然言語入力の相互理解を改善するために、ユーザインタフェースを通じて人間と関わる。サーバ104(1)~(S)は、単一のサーバ、サーバのクラスタ、サーバファームまたはデータセンタなどを含む任意の数の方法で実施されることができるが、他のサーバアーキテクチャ(たとえば、メインフレームアーキテクチャ)も使用されることができる。
図示される実装形態では、学習および理解コンピューティングシステム102に入力されているストーリー106(1)~(T)が示されている。一般に、ストーリーは、任意の様式(発言、テキスト、OCRなど)から発信され、最終的に、コンピューティングシステム102によって処理するためにテキストのデジタルフォーマット表現(たとえば、ASCII)に変換される。ストーリーはいくつかの読解力の質問が付随されていることがある。ストーリーは、コンピューティングシステム102によって記憶され、言語のより深い理解を得るためにシステム102によって使用されることができる。この例では、「ベンとアバ」のストーリー106(1)と、「エンツォとゾーイ」のストーリー106(T)の2つのストーリーが示されている。エンツォとゾーイのストーリー106(T)は上記で提供されている。同様に、ベンとアバのストーリー106(1)も、次のように、より若い学生に適した短いストーリーである。
アバが歩いて入ってきました。
ベンがアバをテーブルに案内しました。
アバが着席しました。
ベンがアバにメニューを渡しました。
アバがスパゲッティを注文しました。
ベンが食べ物をアバに持ってきました。
アバが食べて、退出しました。
アーキテクチャ100によれば、コンピューティングシステム102は、ストーリー106(1)~(T)を人間と共有し、ストーリーのシステムの理解をテストするために時々人々と対話する。学習およびコンピューティングシステム102は、ストーリーに対する初期理解を表現するために、ストーリーの意味表現を含む初期モデルを構築する。この第1のモデルは、本明細書では「ストーリーモデル」と呼ばれ、以下でより詳細に説明される。一般的に、初期のストーリーモデルは、構文要素および/または生成的意味素(GSP)のセットを含むデータ構造に関する初期理解を表す。生成的意味素は、世界に関する基本的な事実を表し、自然言語の意味の全範囲を表現するように構成されることができる、構造の小さいセットである。たとえば、「ベンが食べ物をアバに持ってきました」という文では、構文要素は「持ってきた(brought)」を動詞として識別することができ、意味素は、アバの近くに食べ物が配置される結果をもたらす行動をベンが引き起こす、またはアバが食べ物を所有するベンの意図などの、文中のエンティティに関する事実を含むことができる。GSPは、とりわけ、読解力の質問に回答するために使用されることができる。
言葉を理解することは、書かれた単語に明示されていることよりも、言われていないことと、人間の経験の一部についてのことである。典型的には、自然言語ステートメントの最良の解釈は、世界に関する私たちの知識に関して「最も理にかなっている」ものである。コンピューティングシステム102は、世界について何が真実であるかに関する信念を含む別のモデルを維持し、継続的に更新する。この第2のモデルは、本明細書では「現在の世界モデル」と呼ばれ、以下により詳細に説明される。現在の世界モデルはフレームの集合で構成されており、各フレームは、いくつかの共通の文脈において真実である可能性が高いGSPなどの命題の集合である。コンピューティングシステム102は、現在の世界モデルにおける知識と、大規模言語コーパスなどの他のソースから自動的に誘導された知識に基づいて、初期のストーリーモデルを構築する。
初期のストーリーモデルが構築された後、学習および理解コンピューティングシステム102は、やはりストーリーを読んだユーザと対話することができる。コンピューティングシステム102は、ストーリーに対するこの初期理解をテストするために、人間に提起するための1つまたは複数のユーザ質問を形成する。たとえば、コンピューティングシステム102は、ストーリーモデルが不完全であることが分かっている場合、システムがその意味表現に高い信頼性を有していない場合、または自信を持って回答されることができない読解力の質問がある場合、質問を生成することができる。システムは、その理解を検証するために、または欠落している知識を取得するために、質問をすることがある。たとえば、ユーザ質問は、初期のストーリーモデル内の生成的意味素がストーリーの正確な意味を伝えるかどうかに挑戦するために、生成的意味素の他の可能なセットを提供することができる。ユーザ質問は、生成的意味素から変換され、入力のために人間のユーザに送信される自然言語で提供される。質問に対するユーザの応答はシステム102に返され、現在の世界モデルを補強し、ストーリーに対する新しい、および強化された理解を表現するストーリーモデルの新しい反復を修正または生成するために使用される。新しいモデルは、より多くの意味を提供するフレーム構造にさらに組み立てられることができる生成的意味素の異なるセットを関連付けるデータ構造として、新しい理解を表す。このプロセスは、コンピューティングシステム102が様々なシナリオを通して作業し、ストーリーに対するその理解が、人間のユーザがストーリーを理解する方法とアラインメントするまで、複数回繰り返されることができる。更新された現在の世界モデルは、将来的に取り入れられる可能性のある他の自然言語のストーリーを処理する際に使用するために保持される。個々のストーリーモデルはまた、必要に応じて後で呼び出されるために保存されることもできる。コンピューティングシステムが複数のストーリーについて複数のユーザ対話を経験するにつれて、現在の世界モデルは各対話において段階的に強化され、システムは一貫して正確に学習し、自然言語テキストの意味表現を独立して決定する。システムは、時間の経過とともに徐々により難しいストーリー、文書、および他のテキストを読み、次第に難しくなる主題を学習し理解するために人間と関わることができる。結果として、システムは、新しいGSPおよび新しいフレーム、ならびにシステムにおいて使用される他のリソースを用いて、現在の世界モデル138を構築および成長させ続ける。
再び図1を参照すると、コンピューティングシステム102は、対話プロセスの一部として多くの人間のユーザと対話することができ、これらのユーザは、システムに関与するための異なる目的を有することができる。議論の目的のために、人間の学生110(1)、110(2)、...、110(L)を含む人間のユーザの2つのグループが示されており、それらは、人間ベースの協力クラウドソーシングネットワーク116に属する、人間の学生集団112、および人間の協力者114(1)、114(C)に属するものとして示されている。学生110(1)~(L)は、コンピューティングシステム102が学生から学習するのと同じくらい多くをコンピューティングシステム102から学習するために、コンピューティングシステム102と対話する。学生とコンピューティングシステム102は、ストーリー106を作業するときに共同問題解決タスクに関与し、それによって、プロセスを通してそれぞれから側面を学習する。学生110(1)~(L)は、あらゆる年齢、読解レベル、または本質的にあらゆる人口統計であってよい。議論の目的のために、学生110のうちの2人は、1年生などの文法の学生110(1)と、大学生または専門家などの大人110(2)とを含む。一部のアプリケーションでは、コンピューティングシステム102は、テキストの適切な学年レベルにある学生と対話することができる。
人間の協力者114(1)~(C)は、主に、ストーリー106(1)~(T)において見られるようなテキスト文字列のシステムの理解をテストするために、コンピューティングシステム102によって関与される。人間の協力者114(1)~(C)は、正式な協力者であってもよく、コンピューティングシステム102によって提起された質問に単純に回答する訓練されていない人々であってもよい。一実装形態では、協力者114は、AmazonからのMechanical Turk(商標)クラウドソーシングプラットフォームのなどの、組織化されたクラウドソーシングネットワーク116の一部であってもよい。クラウド対話を使用することにより、アーキテクチャ100の協力的な側面を拡張することができ、コンピューティングシステムがより速いペースでより多くのことを学習することが可能になる。
学生110(1)~(L)と人間の協力者114(1)~(C)の両方は、分散されていてもよく、互いに正式な関係はなく、彼ら自身の電子デバイスを使用して学習および理解コンピューティングシステム102と単に対話するだけでよい。いくつかの実装形態では、システム102は、ストーリー(特に、より長いストーリー)を異なる部分に処理し、異なる部分についての異なるユーザ質問を異なる学生または協力者に分散し、それによって、システムが、単語や概念を並行して学習し、より迅速にストーリーを同化させることを可能にする。
学生110(1)~(L)は、システム102と直接的に、またはネットワーク120を介してシステム102と通信するユーザベースの電子デバイス118(1)、118(2)、118(D)(集合的に、デバイス118)を通じてなどの多くの方法で、学習および理解コンピューティングシステム102と対話することができる。ネットワーク120は、インターネット、ケーブルネットワーク、ワイヤレスネットワーク、およびワイヤードネットワークなどの複数の異なるタイプのネットワークの任意の1つまたは組合せを表現する。学生デバイス118は、学生110(1)~(L)がシステム102と対話することを可能にする処理、記憶、ネットワーク、および表示/オーディオ機能を有する。デバイス118は、本質的には、たとえばコンピュータ118(1)、多機能通信デバイス118(2)、およびポータブルコンピュータ118(D)を含む、任意のタイプのコンピューティングデバイスとすることができる。図示されたものとは別に、携帯情報端末(PDA)、セルラー電話、ポータブルメディアプレイヤ、タブレットコンピュータ、ネットブック、ノートブック、デスクトップコンピュータ、セットトップボックス、エンターテイメントデバイス、ケーブルボックス、ゲームシステムなどの他のタイプの電子デバイスが使用されることができる。
学生110は、テキスト、オーディオ、および/またはビジュアルを含む、異なるまたは複数の様式を通じて、学習および理解コンピューティングシステム102と対話することができる。図1に示されるように、「エンツォとゾーイ」に関するストーリー106(T)は、成人学生110(2)などの学生のうちの1人が読むために、学生デバイス118(1)のディスプレイ上に示されることができる。
同様に、学生110(1)は「ベンとアバ」のストーリー106(1)を読んでおり、今は学生デバイス118(D)に提示された対話ユーザインタフェース122によって示されるように、学習および理解コンピューティングシステム102とストーリーについて議論している。学生110(1)は、以前に同じスクリーン上でストーリーを読んだり、スピーカを介してストーリーのオーディオ表現を出力するテキスト/音声変換器を介してストーリーを聞いたりしているかもしれない。ストーリーの間、またはその完了後に、学生110(1)は、質問/コメントをユーザインタフェース122にタイプ入力することによって、または口頭で質問したり、コメントをしたりするためにデバイス118(D)に話しかけることによって、ストーリーに関する質問を尋ねることができる。図1において、学生110(1)は、吹き出し124において示される「なぜベンはアバにメニューを渡したのですか?」という口頭の質問を尋ねる。コンピュータ118(D)は、そのオーディオ質問をテキスト形式に変換し、テキスト形式の質問をUI122上に提示する。コンピュータ118(D)はまた、学生の質問をデジタル形式でネットワーク120を介してコンピューティングシステム102に送信し、そこで質問が処理される。コンピューティングシステム102は、ストーリーに対するその現在の理解およびストーリーのこの特定の要素を検査し、学生に返答を提供する。この例における学習対話のこの段階で、コンピュータシステム102が、ストーリーはベンがメニューおよび食べ物(スパゲッティ)をアバに持ってくるなどの行動を含むことを認識したと仮定する。コンピューティングシステム102は、これらの行動を、ベンがウェイターであり、アバが顧客であるレストランを含む可能性があるフレームにおそらく属するものとして識別する。したがって、学習および理解コンピューティングシステム102は、レストランの含意を仮定する応答を定式化する。図1において、例示的な応答がデバイス118(D)に送信され、「ストーリーは、ベンがメニューと食べ物をアバに持ってきたと言っています。ベンとアバはレストランにいると思います」としてUI122に提示される。「あなたは同意しますか?」などの第2のステートメントを追加することによって、コンピューティングシステムは、学生110(1)を教えるためだけではなく、システム自体の理解を評価するために、この対話をさらに使用することができる。システムの応答説明が学生にとって正確である場合、UI122に示されるように「はい」と回答することなどによって、学生はその理解を確認することができる。
このように、学習および理解コンピューティングシステム102は、学生を教えること、およびコンピューティングマシンの理解を高めるために学生から学習することとの二重目的のために、人間との対話を使用することができる。学生の視点から見れば、人間とコンピュータは一緒に学習し、問題を解決する。この例では基本的なストーリーを仮定しているが、この同じ対話が、物理学、生命科学、医学、音楽理論などの複雑な主題に及ぶ可能性があると考察する。学生110は、彼または彼女が何も知らない新しいトピックを学習することに興味があるかもしれない。情報は、伝統的な探索を通じて見つけられることができるが、学生は依然としてそのような探索の無数の結果を読んで理解しようとする必要がある。このアーキテクチャ100においては、人間の学生は、トピックに関する様々なテキスト(たとえば、白書、研究文書など)の深い理解プロセスを通じてトピックのエキスパートであるか、またはエキスパートになる、コンピューティングシステム102と対話することができる。人間の学生は自然な対話においてシステムに質問を尋ね、またテキストに関する議論を通じてトピックについて教えられることができる。
別の実装形態では、アーキテクチャ100は、協力者114(1)~(C)が、ストーリー106(1)~(T)を理解するために学習するためのプロセスの一部として、コンピューティングシステム102によって提起された質問に回答することを可能にする。協力者114(1)~(C)の各々は、デスクトップコンピュータ、ラップトップ、スマートフォン、PDA、セットトップボックス、エンターテインメントデバイス、ゲームシステムなどの何らかの種類のコンピュータまたは電子デバイスを使用することができる。学習および理解コンピューティングシステム102は、協力者に指示するのではなく、理解を改善する主目的のために協力ネットワーク116の協力者114(1)~(C)と対話する。したがって、コンピューティングシステム102は、システムの理解を確認または挑戦するために質問を提起する協力者114(1)~(C)と関与する際に、異なるUI126を提示することができる。この例では、UI126は、コンピューティングシステム102が、「ベンが食べ物をアバに持ってきました」という文に関するベンとアバのストーリー106(1)からの抜粋をより良く理解しようと試みている単純な対話を示している。UI126において、(バタフライアイコンによって表現されるような)コンピューティングシステム102に起因する1つの対話ボックス128(a)は、ユーザクエリを提供する。
ここに私が理解しようとしている文があります:
ベンが食べ物をアバに持ってきました。
以下の選択肢のどれが、上記の文に最も類似して「持ってくる」という単語を使用していますか?
コンピューティングシステム102はまた、複数の選択肢を提供し、(ユーザアイコンによって表現されるように)協力者の応答に起因する第2の対話ボックス128(b)においてそれらの選択肢を提供する。システムは、選択肢の各々の内部信頼に基づいて、生成された質問における回答の選択肢をランク付けすることができる。この例では、協力者が選択できる3つの選択肢がある。
1.何か、または誰かをどこかに連れて行く。
2.特定の状態または状況に陥らせる。
3.合法的に提示または説明する。
協力者114(C)などの協力者の1人は、ボックス128(a)内のシステム生成ユーザクエリとボックス128(b)内の選択肢を検討し、次いで、選択肢をクリックするか、回答を話すことによって選択を行う(たとえば、選択肢1)。応答は、コンピューティングシステム102に返され、ストーリーモデル、およびモデルをサポートする意味素のセットを潜在的に修正することによって、ストーリーに対する理解を改善するために使用される。この応答は、将来的に読まれる類似の文脈において、「持ってくる」という単語などの単語または語句の将来の解釈のためにさらに使用されることができる。
図1に示されるように、学習および理解コンピューティングシステム102は、サーバ104(1)~(S)に記憶され実行される複数のモジュール130を有する。モジュール130は、プログラム、アプリケーション、データ構造、データストア、アルゴリズム、ならびに本明細書に記載のコンピュータ学習および理解プロセスを実装するための他の処理ロジックおよびメモリを備える。図1には高レベルの概観を提供するために選択モジュールが示されているが、追加のモジュールおよびより詳細な議論は、後の図面を参照して本明細書で以下に提供される。
学習および理解モジュール130は、ストーリー106(1)~(T)などのストーリーを正確に描写するストーリーモデル132を生成するために、共同推論および人間との対話を通じてともに働く。ストーリーモデル132は、ストーリー内の文の初期の構文表現から、インスタンス化された生成的意味素と、ストーリーについてのより高いレベルの意味を正確に伝えるための意味構造からなるフレーム構造とを含むデータ構造まで、時間の経過とともに進展する。
モジュール130は、ストーリー(たとえばストーリー106(1)~(T))を受信し、いくつかの言語解析結果を生成するためにストーリー内の文の構文解析を実行するストーリー解析エンジン134を含む。一実装形態では、言語解析結果は、(1)文構造を提供するための構文解析と、(2)述語項構造(PAS)と、(3)文中の各エンティティにタイプを割り当てるエンティティタイプ割当てと(4)ストーリーの共参照解析によって生成された共参照連鎖とを含む。言語は一般的に曖昧であり、正しいと確信する単一の解析を決定することができない可能性があるため、潜在的に複数の言語解析結果のセットが生成される。言語解析結果およびそれらが生成される方法は、図4および図7を参照して以下により詳細に説明される。
知識統合エンジン136は、ストーリー解析エンジン134からストーリーおよび言語解析結果を入力として受信する。知識統合エンジン136は、現在の世界モデル138で維持されている世界に関するシステムの現在の知識に関して意味をなすストーリーの初期の確率論的な意味表現を構築する。最初の意味表現はストーリーモデル132の第1のバージョンを形成し、次いで、それは、人間との対話の使用、および以前に取得された知識リソースの使用を通じて、知識統合エンジン136によって時間の経過とともに進展される。ストーリーにおいて、情報はしばしば仮定されているので述べられないままであり、これも残念ながら曖昧な意味をもたらすことがある。以下でより詳細に説明されるように、知識統合エンジン136は、何が述べられていないと考えられるかを効果的に予測する関連する意味構造を推論するので、システムはより良い知識モデルを形成し、人間の学生または協力者のより賢明な質問をすることができる。ストーリーが「ベンが食べ物をアバに持ってきました」というとき、知識統合エンジン136は、「ベンはウェイターですか?」「アバはレストランにいるのですか?」など、何の情報が欠落しているかを評価する。
知識統合エンジン136は、関連する意味構造の推論を支援するために、メモリに記憶された現在の世界モデル138と知識誘導エンジン140とに依存する。現在の世界モデル138は、システムが時間の経過とともに学習し構築したすべての意味知識のリポジトリである。現在の世界モデル138は、最初は一般的であり、インスタンス化されていない生成的意味素の集合を含むか、または参照することができる。たとえば、これらの生成的意味素は、最初は任意の追加情報でインスタンス化されていない位置、時間、動作、および経験などの単純な概念のあらかじめ形成された構造を含むことができる。知識統合エンジン136は、現在の世界モデル138から関連するインスタンス化されていない意味素構造を識別し、動詞(たとえば、「行く」、「持ってくる」、「食べる」など)およびエンティティ(たとえば、「ベン」、「アバ」、「メニュー」、「スパゲッティ」)を構造にマッピングするなど、ストーリー内の文の構文解析に含まれる単語/語句でそれらをインスタンス化する。現在の世界モデル138は、フレームの集合をさらに含む。フレームとは、特定の文脈における命題(GSPを含むが、これに限定されない)に対する確率分布である。単純なケースは、特定の場所(たとえば、レストラン)において通常発生する動作などの、文脈内で真実であると考えられる命題のセットである。1つの可能な手法では、反復してアラインメントして、知られているフレームによく適合する意味構造を好むストーリーモデル132を進展させるために、知識統合エンジン136は、推論された意味構造および構文解析の出力を構築し、反復的にアラインメントする。知識統合エンジン136は、本質的に、現在の世界モデル138に組み込まれた知識でストーリーモデル132を反復的にアラインメントする。
知識統合エンジン136は、スマートな予測を行う際に支援するために、知識誘導エンジン140に問い合わせる。知識誘導エンジン140は、大規模コーパスおよび他のソースをオフラインで解析し、ストーリーのテキストによって暗示された、またはストーリーのテキストにおいて潜在的な情報をキャプチャする「誘導された知識リソース」と本明細書では呼ばれるリソースリポジトリを生成するように構成される。知識誘導エンジン140は、語義曖昧性解消、関係検出、言い換え生成、テキストの含意、シーン解析、および欠落しているテキスト生成を含むが、これらに限定されない複数のタスクを実装するために、誘導された知識リソースを使用する。
様々な適用された技法の中で、知識誘導エンジン140は、単語の語義を曖昧性解消する(たとえば、単語「ボール(ball)」は、フォーマルなダンスまたはスポーツ用具の一部であることができる)。誘導エンジン140は、単語および語句が書き換えられることができるが、おおまかに同じ意味を有する言い換えを見つける/認識することができる(たとえば、「群衆が沸き立った」は、「スタンドにおける拍手」とほぼ同じであるか?)。知識誘導エンジン140は、単語または語句間の関係をさらに検出することができる(たとえば、「OPECが油の価格を上昇させる」という語句において、「上昇させる」という語句は、量の増加の関係を有する)。知識誘導エンジン140は、他の関連知識を検出して明らかにするために、他の形式の単語および語句解析を実行することができる。これらのケースの各々において、知識誘導エンジン140は、適切な語義を選択し、意味をストーリーモデル132に注入する正確な意味構造およびフレームを構築するために、知識統合エンジン136によって使用される関連推論確率を有する候補のランク付けされたリストを知識統合エンジン136に返す。知識統合エンジン136および知識誘導エンジン140のより詳細な説明は、少なくとも図4、図9、および図13を参照して以下に提供される。
対話エンジン142は、ストーリーモデル132を取り、意味表現が不完全である領域、またはシステムがそれらの表現において低い信頼性を有する領域を識別する。信頼値は様々な方法で計算されることができ、タスクに関連し、一般的に文脈に依存する。対話エンジン142は、それらが所有する、これらのギャップを埋める情報を用いて質問に回答するために、学生110(1)~(L)および/または協力者114(1)~(C)の人口に関する対話質問を生成する。対話エンジン142は、ストーリーモデル132によって表現されるように、システムの現在の理解に挑戦または確認するために構造化された質問を生成し、これらの質問を、ネットワーク120を介して学生110(1)~(L)のうちの1人または複数、および/または協力者114(1)~(C)のうちの1人または複数に送信する。1つの例示的な質問がUI126に示されており、対話エンジン142は、「ベンが食べ物をアバに持ってきました」という文をどのように解釈するかに対するユーザのフィードバックを求める質問を作成する。ストーリーモデル132および現在の世界モデル138が質問に対する回答を提供するためには不十分であるギャップを識別するために役立つように、読解力の質問も生成されることができる。人間の学生/協力者は、ネットワーク120を介してコンピューティングシステム102にフィードバックを返し、そこで結果は対話エンジン142によって収集され、解析のために知識統合エンジン136に渡される。
対話エンジン142からの人間との対話結果に基づいて、知識統合エンジン136は、現在の世界モデル138を、修正された、または新しい意味構造、およびストーリーの新しい/改訂された概念を表現するさらに定義されたフレーム構造を用いて更新する。このように、システム102はストーリー内の言語の学習を継続し、より深い理解を得る。さらに、知識統合エンジン136は、更新された現在の世界モデル138に対してストーリーモデル132を反復的に洗練し続ける。知識統合エンジン136は、システムがストーリーの意味表現に十分な信頼性を有するなど、終了条件に達するまで対話エンジン142の助けを借りて人間とのその理解を探求し続ける。1つの手法では、知識統合エンジン136および対話エンジン142は、現在の理解がストーリーを正確に描写する確率が高いことを示唆するしきい値信頼水準に達するまで反復し続ける。しきい値は、様々なアプリケーションおよび使用状況に応じて設定および調整されることができる。
信頼水準は、所与の状況の目標に応じて様々な方法で計算されることができる。コンピューティングシステム102は、たとえば、テキストの要約または質問の回答など、言語理解を含む多くの目標に適用されることができる。そのような目標を達成するための前提条件は、コンピューティングシステム102が、その信念のうちのどれが真であるかを決定することができることである。一実装形態では、この決定を行うためにシステムによって使用されるメカニズムは、各信念に信頼値を割り当てることであり、信頼値は、信念が真であるとコンピューティングシステム102がどれほど確信するかを表現する。システム102は、各反復が最後のものよりも良好であるように、システム102がその目標をどれだけ良好に達成するかに基づいて信頼値を反復的に調整する。結局、このプロセスは、現在の信念のセットの目標に対するシステムのパフォーマンスを最大限にする信念に対する信頼のセットを見つける。この手法は、コンピューティングシステム102がその目標上のパフォーマンスを改善し、いつ改善を停止するかを決定するために展開することができる2つの戦略につながる。
第1に、システムはその信念をその目標から独立して調べることができる。すなわち、システムは、信念が真実であるという確信を訂正するために、対話エンジン142または知識誘導エンジン140からの情報を求めて信念から信念へ行くことができる。コンピューティングシステム102は、その信念のセットを使い果たしたとき、または新しい情報から生じる信頼変更が統計的有意性のレベルを下回ったことが分かったときに、より多くの情報を求めるのを止めることができる。
第2に、コンピューティングシステム102は、目標を達成する能力が十分であるか不十分であるかを判断し、次いでその結果に基づいて行動することができる。たとえば、システムの質問回答の正確さの精度が60%で、システムの目標が70%の精度を達成することである場合、システム102は、その目標が達成されるまで、その信念における信頼を改善するために、対話エンジン142または知識誘導エンジン140から情報を探す。その目標が達成されると、コンピューティングシステム102は改善を止めることができる。あるいは、所望される場合、コンピューティングシステム102は、その精度の変化が統計的有意性のレベルを下回るまで、さらに反復し続けることができる。前者に対するこの後者の手法の利点は、現在の目標と比較して新しい信念をシステムに追加することの有用性の評価も可能にすることである。すなわち、新しい信念が目標に対するシステムのパフォーマンスを改善した場合、新しい信念の有用性は高い。信念が影響を及ぼさない、または悪影響を及ぼす場合、新しい信念の有用性は低い。
知識統合エンジン136が、ストーリーモデル132はストーリー106に対する可能性のある理解を表現すると確信すると、ストーリーモデル132は、将来の検索および使用のために記憶され、索引付けされることができる。ストーリーモデル132を生成するために得られた知識はまた、現在の世界モデル138にキャプチャされる。このように、各ストーリーのために開発された理解は、将来の考察のために維持され、より多くの情報が学習されるにつれておそらくさらに洗練される。さらに、システムが複数のストーリーの複数のユーザ対話を経験するにつれて、現在の世界モデル138は、各対話において段階的に強化される。より多くのストーリーが読まれるにつれて、現在の世界モデル138はより多くの推論されたフレームとともに成長し、次第により複雑になる主題の理解を支援することができる。対話エンジン142のより詳細な説明は、少なくとも図4、図16、および図22を参照して以下に提供される。
図示された実装形態では、学習および理解モジュール130は、ストーリーモデル132および現在の世界モデル138を実装する1つの方法として、知識モデルとともに働く機能を提供する信念表現および推論フレームワーク144をさらに含む。知識モデルは、正式で構造化された知識の表現であり、「エンティティ」と「命題」からなる知識表現言語(KRL)で表されることができる。エンティティは、たとえば、「ペガサス」などの架空のものを含む世界におけるもの、または「哲学」などの抽象的なものを表現する。命題は、真または偽の可能性のあるステートメントである。命題は述語(エンティティの一種)と項のセットとを有し、各項はラベル(役割と呼ばれる)とエンティティまたは命題のいずれかである可能性がある値とを有する。同じ役割は複数の値を有することができる。信念は、動作主(必ずしもそうである必要はないが、しばしば、システム自体)がある確率で真であると考えるという命題である。
フレームワーク144は、システム内の様々なモジュールによって使用される機能構成要素を備える。フレームワークは、知識表現言語を使用し、自然言語テキストの意味を表現するように構成されることができる構造の小さいセットである「文脈的」差別化および生成的意味素のための推論および学習メカニズムを提供する。より具体的には、フレームワーク144の構成要素は、(1)エンティティおよび命題を表現するための形式的言語と、(2)頻繁に使用されることが予想される定義命題タイプのセットを提供するための共通意味構成要素と、(3)知識モデルの永続的ストレージを提供し、その知識を介してクエリをサポートするための知識ストアと、(4)知識モデルに対して異なる推論能力を提供する1つまたは複数の推論エンジンとを含むことができる。信念表現および推論フレームワークについてのより詳細な説明は、少なくとも図4および図15を参照して以下に提供される。
図1は、学習および理解コンピューティングシステム102における選択モジュール130の概要を提供する。より詳細な説明および例は、図4を参照して以下で提供される。しかしながら、より詳細な説明を提供する前に、関与する学生110(1)~(L)および協力者114(1)~(C)のアーキテクチャ100によって実装される高レベルのプロセスが、図2および図3を参照して説明される。
さらに、図1は、英語で実施される人間との例示的な対話を示している。しかしながら、本明細書で説明されるアーキテクチャ100は、言語に依存しないものであり、任意の言語で人間と対話するように構成されることができる点に留意されたい。
説明のための一般的な動作
図2Aおよび図2Bは、図1のアーキテクチャ100によって実装される、人間との対話を通じてテキスト(たとえば、ストーリー)において使用される言語の理解を学習および開発するための一般的なプロセス200を示す。プロセス200(および、流れ図を参照して説明されるすべての後続のプロセス)は、論理フローグラフ内のブロックの集合として示されており、ハードウェア、ソフトウェア、またはそれらの組合せ(たとえば、サーバ104(1)~(S)によって提供されるものなど)において実装されることができる一連の動作を表現する。ソフトウェアの文脈において、ブロックは、1つまたは複数のプロセッサによって実行されると、列挙され、参照される動作を実行するコンピュータ実行可能命令を表現する。一般に、コンピュータ実行可能命令は、特定の機能を実行するか、または特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、構成要素、データ構造などを含む。プロセッサによって実行されると、コンピューティングシステムは、ストーリーに示されているようにテキスト言語を学習し理解を得るように特別に構成された機械に変換される。動作が記述される順序は、限定として解釈されることが意図されるものではなく、任意の数の記載されたブロックが、プロセスを実装するために任意の順序で、および/または並列に組み合わせられてもよく、またはより多くの増分ステップのより多くのブロックにさらに分離されてもよい。
議論の目的のために、プロセス200は、図1のアーキテクチャ100、コンピューティングシステム102、ならびにユーザデバイス114および118を参照して説明される。さらに、コンピューティングシステム102によって実行される動作を、ユーザデバイス114および118によって実行される動作とは別に一般的に示すために、プロセス200は2つの列で示される。
図2Aを参照すると、202において、学習および理解コンピューティングシステム102においてストーリーが受信される。ストーリーは、短い「ベンとアバ」のストーリー106(1)と、短い「エンツォとゾーイ」のストーリー106(T)によって例として示されるように、複数のテキスト文で構成されている。ストーリーは、システム102によってデジタルフォーマットに取り入れられ、またはデジタルフォーマットに変換される。同じストーリーが、204においてユーザデバイス114/118によって受信され、206において、彼または彼女がストーリーを読むためにユーザに提示される。ストーリーは、ユーザが消費するためのオーディオ出力に表示および/または変換されることができる。ストーリーは、いくつかの読解力の質問が付随されていることがある。
208において、コンピューティングシステム102は、ストーリーに対する第1の理解を表現するために、第1の、または初期のストーリーモデルを生成する。第1のストーリーモデルを生成することは、210において、文ごとに、構文解析(ストーリー解析とも呼ばれる)、言語解析結果(たとえば、構文解析、述語項構造、エンティティタイプ割当て、共参照)の生成を含む。図1を参照すると、ストーリー解析エンジン134は、この解析動作を実行するように構成される。解析動作は、文構造、述語項構造(PAS)、エンティティタイプ割当て、および共参照連鎖を提供するための構文解析を含む、言語解析結果のセットを生成する。解析動作およびその例については、図4~図8を参照して以下により詳細に説明される。
言語解析結果が生成されると、212において、コンピューティングシステム102は、構文解析された文の構文表現を意味的に処理することによって、各構文解析された文の表現として意味構造を推論する。知識統合エンジン136および知識誘導エンジン140は、意味構造を推論するこの動作212をサポートするタスクを実行する。結果として得られる第1のストーリーモデルは、インスタンス化された生成的意味素とフレーム構造との関連セットなどを通じて、エンティティおよび命題の知識データ構造として表される。
214において、システムは、現在の世界モデルに関してストーリーモデルを評価する。システムは、現在の世界モデルにおける知られているフレームとよく適合する信頼性の高い意味表現をストーリーモデルが含まない領域を識別することができる。システムはまた、自信を持って答えられることができない読解力の質問があるストーリーモデルにおける欠点を識別することができる。216において、コンピューティングシステム102は、ストーリーに対するユーザの理解を調査し、および/またはストーリーに対するシステムの理解を改善し、テストし、または挑戦するために、1つまたは複数のユーザ質問を生成する。ユーザ質問は、初期のインスタンス化された生成的意味素がストーリーの正確な意味を伝えるかどうかに挑戦するために、生成的意味素の異なるセットに基づく他の可能な理解を提供する問合せを含む。ユーザ質問を生成するために、対話エンジン142が使用されることができる。
218において、ユーザ質問は、人間のユーザに提示するために、コンピュータシステム102からユーザコンピューティングデバイス114/118に送信される。220において、質問は、たとえば、図1のUI126などを介して受信され、ユーザに提示されるか、またはユーザが聞くことができるように音声出力される。222において、ユーザデバイスは、UIを介して入力されたか、または話されたユーザ応答をキャプチャする。ユーザは206において提示されたストーリーを読んでいるので、ユーザは質問に回答するためのストーリーの文脈を有する。ユーザは、質問に回答するために自分の知識、背景、および経験に依存し、それによって現在の世界モデルに追加されることができる新しい情報を提供する可能性がある。コンピューティングシステムは、以前はこの情報を有していなかった可能性もあり、有していた情報をおそらく十分に理解していないかった可能性もある。224において、ユーザデバイスは、ユーザ応答をコンピューティングシステム102に返送する。
226において、質問に対するユーザ応答が、コンピューティングシステム102で受信される。コンピューティングデバイス102とユーザデバイス114/118との間の対話は、人間のユーザから知識を適切に抽出するために複数の質問を送信することと、複数の応答を受信することとを含むことができる。
図2Bを参照すると、228において、ストーリーに対する新しい理解を表現するために、新しいストーリーモデルが生成される。この動作の一部として、230において、現在の世界モデルを更新するためにユーザ応答が使用され、232において、元のストーリーモデル132は、更新された現在の世界モデル138とアラインメントするように改訂される。新しいストーリーモデルは、インスタンス化された生成的意味素とフレーム構造との新しいセットによって表されるように、エンティティおよび命題の知識データ構造として、その新しい理解を表す。インスタンス化された生成的意味素とフレーム構造との新しいセットは、インスタンス化された生成的意味素とフレーム構造との第1のセットとはわずかではあるが異なる。
234において、新しいストーリーモデル132の形成後、そのストーリーモデルは、更新された現在の世界モデルに対して評価される。ストーリーモデルが現在の世界モデルとどれだけ良好にアラインメントしているかを決定するために、信頼性スコアが計算される。少数のフレームがストーリーから抽出された多数の信念と一致する場合、より高いスコアが与えられる。さらに、新たに述語化された信念がストーリーに関するシステムの他の信念と矛盾している場合、フレームアラインメントのセットはスコアが低い。236において、信頼性スコアがしきい値と比較される。信頼性スコアがあらかじめ確立されたしきい値を満たす場合(すなわち、236からの「はい」の分岐)など、終了条件に達した場合、238において、ストーリーモデル132はストーリーに対する正確な理解として出力される。逆に、信頼性スコアがあらかじめ設定されたしきい値を満たさない場合(すなわち、236からの「いいえ」の分岐)など、終了条件に達していない場合、216において、プロセス200は新しいストーリーモデルに対する理解をさらにテストするためにユーザ質問の新しいセットを生成するように戻る(図2A)。
図2Aおよび図2Bの例では、アーキテクチャ100は、ストーリーにおいて表現されるような自然言語をシステムが学習し、より深い理解を得るのを助けるために、人間の集団を関与させるものとして説明されている。コンピューティングシステム100は、臨時学習環境において、または協力者がシステムの知識を改善する目的で質問を提起されるより公式な協力環境において、ユーザを関与させる。しかしながら、アーキテクチャ100は、教育環境において、テキストベースの作品に記載されている特定の話題について人間に教え、システム自体の知識ベースを洗練し続けるために使用されることができる。そのような1つの例が図3を参照して説明される。
図3は、トピックを中心にインタラクティブな対話を行うことによって、関心のあるトピックについて人々に教えるための例示的なプロセス300を示す。302において、人は、コンピューティングシステム102との対話セッションを開始するために、自分のデバイス114/118を使用する。ユーザは、質問をすること、興味のあるトピックについてのステートメントを出すこと、あるいは議論するためにテキストまたは記事を参照することを含む、任意の数の方法で対話セッションを開始することができる。304において、コンピューティングシステムは、対話セッションに対する暗黙の要求を認識し、特定のトピックについてユーザを関与させ、おそらくはユーザからより多くの情報を抽出するように設計された遷移応答を生成する。遷移応答は、多くの可能性のある、あらかじめ確立され、またあらかじめ記憶された遷移ステートメントの1つである可能性がある(たとえば、「私はあなたに何を手助けできますか?」、「あなたが知りたいことについてもっと教えてくれますか?」、「あなたが「飛行機」というとき、どのタイプの飛行機に興味がありますか?」など)。いくつかの実装形態では、システムは、議論されるべきトピックを発見するためにユーザと対話するために、図2Aおよび図2Bと同じプロセスを使用することができる。システムは、人がトピックの学習を開始するのを助けるように設計されたフレームを有することができ、システムはそのフレームに関する情報を推論しようとする。変項が推論されることができない場合、システムは人間にそのことを尋ねて、上記の一般的な遷移の質問につながる。
306および308において、コンピューティングシステムおよびユーザは、自分のユーザデバイスを介して、トピックを定義するために対話セッションに関与する。310において、コンピューティングシステムは、トピックに関連する1つまたは複数のテキストを識別する。テキストは、記事、白書、製品説明、教育入門書、書籍の抜粋など、任意の数の形式で具体化されることができる。識別された後で、312においてコンピューティングシステムは、テキストからトピックに関する知識モデルを構築する。上記のように、これは、314においてテキストを構文解析し、316においてテキストを表現する意味構造を推論することを含むことができる。
この時点で、コンピューティングシステム102は、トピックをユーザと議論する準備ができている。システムは、トピックに関して読んだすべての関連情報に関する要約を生成することができる。320において、ユーザは、デバイス114/118を介して、トピックに関して質問することができる。322において、コンピューティングシステム102は、質問を受信し、新しく作成されたトピックモデルおよび現在の世界モデルに基づいてコンピュータ生成応答を定式化する。この応答は、システムが現在の世界モデルは正確であるという高い信頼性を有する基本的な情報を提供することができる。あるいは、またはそれに加えて、応答は、議論されている主題の知識モデルと現在の世界モデルとの間の相違を調整することが意図される質問の形式であることができる。324において、応答はユーザデバイスに送信され、ユーザが応答から学習するためにユーザに提示される。このインタラクティブ交換を通じて、コンピューティングシステム102は、トピックについてユーザに教え、テキストに基づいて作成された知識モデルと現在の世界モデルとをアラインメントすることを通じて、トピックを記述するテキストについてさらに学習し、より深い理解を得る。
326において、プロセス300は、ユーザが、彼または彼女がトピックを十分に学習したことを示すまで(すなわち、326からの「はい」の分岐)続く。彼または彼女が終了していない場合(すなわち、326からの「いいえ」の分岐)、ユーザは320においてトピックに関するさらなる質問をしたり、新しいトピックに移動して302においてプロセスを再開したりすることができる。ユーザが終了した場合(すなわち、326からの「はい」の分岐)、プロセス300は完了されることができる。
説明のためのシステム設計
図4は、図1の学習および理解アーキテクチャを実装する選択されたモジュール130を示す。モジュール130は、学習および理解コンピューティングシステム102によってホストされるように示されている。モジュール130は、図1において導入されたものと、追加のデータストアとを含む。図4はまた、コンピュータ生成ストーリーモデルがストーリー内の言語を理解するために人間との共同推論および対話を通じて現れるように、アーキテクチャを通じたプロセスワークフローを示すための様々なモジュール間のデータフローを示す。
図4に示されるように、テキストなどの自然言語入力は、学習および理解コンピューティングシステム102によって取り入れられ、人間の学生/協力者に関連付けられるユーザデバイス114/118にも提供される。テキストは、基本的には、自然言語で書かれた、または話された単語、語句、または文の任意のデジタル形式であってもよく、ストーリー106として図4に示されている。テキストは、読むためにユーザの表示スクリーン上に提示されてもよく、ユーザが聞くために音声で再生されてもよい。
ストーリー解析エンジン134は、対象テキストを解析して、言語解析結果のセットを生成するために実行される。言語解析結果の中には、文構造に関する情報を提供する構文解析がある。構文解析は、学生が動詞、名詞などが構造的に関連する、文法学校で学習する文の図と同様である。また、ストーリー解析エンジン134は、他の解析構成要素が動作する原始的な信念として働く、述語のパーサニュートラル(parser-neutral)表現およびそれらのインスタンス化された項を用いて述語項構造(PAS)を決定する。たとえば、「ベンが食べ物をアバに持ってきました」という文の構文解析に続いて、PASは「ベン」が主語の項であり、「食べ物」は目的語の項であり、「持ってきた」または原形の「持ってくる」が述語(または、この場合は動詞述語)であることを認識する。ストーリー解析エンジン134は、エンティティタイプを文中の様々な単語/語句にさらに割り当て、同一ではないが同じものを参照している単語/語句の共参照連鎖を導出する。
ストーリー解析エンジン134の動作を説明するために、以下のサンプルテキストを考察する。
熱い液体の岩が地面の下にある。火山は、その液体が出ることができる地面の開口部である。時々火山が噴火する。それは火山が爆発することを意味する。煙および熱い液体の岩が火山から出てくる。その液体は溶岩と呼ばれる。ベスビオ火山はイタリアの有名な火山である。
「煙および熱い液体の岩が火山から出てくる」という文について、ストーリー解析エンジン134は、「煙」および「熱い液体の岩」を主語の項として、「来る(come)」の原形の述語を有するPASを形成することができる。エンジンは、「煙」、「岩」、および「火山」を名詞として、「熱い」および「液体」を名詞「岩」を修飾する形容詞としてさらに識別し、「および」を主格名詞「煙」と「岩」との間の接続詞としてさらに認識する。また、エンジン134は、「ベスビオ火山」を山のタイプとして、および「イタリア」を国のタイプとして注釈を付けるなど、単語にエンティティタイプで注釈を付ける。ストーリー解析エンジン134は、「熱い液体の岩」、「その液体」、「熱い液体の岩」、「液体」および「溶岩」という用語がすべて同じものを参照するものとして共参照されることができることをさらに認識することができる。
ストーリー解析エンジン134は、ストーリーとともに、言語解析結果を知識統合エンジン136に出力する。言語解析結果は、ともに言語構造を構成する構文解析および述語項構造、ならびにストーリー106のエンティティタイプおよび共参照を含むことができる。ストーリー解析エンジン134の一実装形態のより詳細な説明は、図7および図8を参照して以下に提供される。
知識統合エンジン136は、現在の世界モデル138に含まれる世界に関するシステムの現在の知識に関して「意味をなす」ストーリーモデル132の初期の確率論的意味表現を構築するために、ストーリーおよび言語解析結果を入力として取り込む。知識統合エンジン136は、ストーリーモデル132を現在の世界モデル138とアラインメントするために、共同推論および人間との対話を通じて時間の経過とともにストーリーモデル132を進展させる実行可能な構成要素のセットである。知識統合エンジン136は、信念生成構成要素402と、制約構成要素404と、共同推論エンジン406とで構成される、構成可能であり高度に柔軟なモジュールである。信念生成構成要素402は、信念のセットを入力し、入力信念が与えられた場合に真実である可能性のある新しい信念に対して確率分布を出力する。先に論じたように、信念は、システムまたは別の動作主がある確率で真であると考える命題である。制約構成要素404は、信念のセットを入力し、信念のセットが真である確率を示すスコアを出力する。共同推論エンジン406は、信念生成構成要素402および制約構成要素404からの出力を受け取り、信念上の共同分散を計算する。これは、各信念の限界確率を計算するために使用され、これはストーリーモデルを構築するために使用される。共同推論エンジン406は、その時点で知られているすべての信念に基づいて考えられる信念の条件付確率を生成するように構成されることができる。状況によっては、信念生成構成要素402、制約構成要素404、および共同推論エンジン406は、一般に共同推論システムと呼ばれることがある。
共同推論エンジン406は、様々な方法で動作することができる。一実装形態では、共同推論エンジンは、複数の可能な世界を提案し、各世界は真であると考えられる信念のセットを有する。信念生成構成要素402は世界で反復的に実行され、真実である信念を観察し、新しい信念に対する分散を提案する。新しい世界は、それらの確率分布から信念を引き出すことによって作成される。制約構成要素404は、世界の確率を評価するために実行される。プロセスが終了されると、信念の限界確率は、それが真である世界の確率の合計になる。限界確率は、信念の確率間の関係をキャプチャしない可能性があるので、世界はストーリーモデル132の一部として記憶されることができる。可能性のある信念生成構成要素のより詳細な実装形態が、図9を参照して提供される。
共同推論では、知識統合エンジン136は、解釈のレベルを組み合わせる。すなわち、エンジン136は、様々なレベルの概念的豊かさでテキストを解釈する。より高いレベルの解釈はより強力であるが、より暗黙的であり、したがって推論するのがより困難である。一実装形態では、解釈レベルは、本質的に自然言語テキストである第1のレベルまたは基準レベルを含み、おそらく一連の単語(または、総称して「トークン」と呼ばれることがある)において表される。第2の、または次の解釈レベルは、自然言語テキストの言語解析を含む。この言語解析は、文法的解析および統計的単語類似性(たとえば、埋め込み)を提供するために実行されることができる。この第2のレベルの解釈は、ストーリー解析エンジン134によって提供される。
第3のレベルは、テキスト言語に関する空間的、時間的、および認知的な事実の形式でより豊かな意味を提供するための生成的基本意味の解析を含む。生成的意味素(GSP)は、意味の原子を構成するブロックと見なされることができ、ストーリー内の言語のより意味のある解釈を可能にする。GSPは、時間、空間、論理、数、変化、原因、関連、信念、知覚、表現、および意図などの、世界についての基本的な事実を表現する。GSPは、機械の知識と経験のすべてを表現するために、無数の方法でインスタンス化され、構成される。GSPは、述語と役割を持つKRL命題として表される。ストーリーエンティティおよび他のGSP命題がこれらのKRLロールを満たすとき、GSPがインスタンス化される。ストーリー内のテキストからのエンティティ(談話の文脈に存在することが明示的または暗黙的に言及されている)は、GSPに対応するKRL命題における役割をインスタンス化することができる。さらに、GSPは、別のGSPの役割において1つのGSPをネストすることを介して構成されることができる。この構成性が、システムが自然言語ステートメントの意味に関する無限の数の事実を表すことを可能にする。このように、GSP構造は、実際に文がどのように書かれているかにかかわらず、ベンとアバのストーリーにおいて、ベンがアバに何か食べ物を取ってくることの意味または語義を解釈する一般的な方法を提供する。たとえばその意味は、以下の、類似しているが同一ではない方法で表されることができる:「ベンがアバに食べ物を持ってきました」、「ベンがアバに食べ物を取ってきました」、「ベンがアバに食べ物を提供しました」、「ベンがアバに食べ物を渡しました」、「アバがベンから食べ物を受け取りました」、「アバがベンから食べ物を入手しました」、「ベンがアバに食べ物をあげました」、「アバがベンから食べ物を手に入れました」、および「ベンがアバに食べ物を持ってきました」。GSPの任意のインスタンス化が自然言語に変換されることができ、人間がGSPの内部表現に晒されることなく、システムのテキスト表現と直接対話することを可能にする。
第4および最上位レベルは、論理的または常識的知識スクリプトを提供するフレーム意味論の解析に関係し、それによってストーリーに暗黙のうちにあるものの多くを埋める。フレームとは、特定の文脈における命題(GSPなど)に対する確率分布である。単純なケースは、特定の場所において通常発生する動作などの、文脈内で真であると考えられる命題のセットである。たとえば、ベンとアバのストーリーにおいて、「レストラン」フレームはベンとアバがレストラン内にいるという暗黙の情報を提供することができ、それによって、ストーリー内の明示的な言語をより良く理解するためのテーマまたは文脈を提供する。ストーリーに記載された経験がそのフレームに記憶された経験と一致するため、レストランフレームを適用する。たとえば、レストランフレームは、レストランの文脈において発生すると考えられる次の一連の動作(ここでは自然言語表現で示されるが、実際のフレームではGSPとして表現される)のGSPで構成される:
・顧客がレストランに入る
・顧客がテーブルに着く
・顧客はウェイターが来るのを待つ
・ウェイターは顧客にメニューを持ってくる
・顧客が欲しい食べ物を選ぶ
・ウェイターが顧客に食べ物を持ってくる
・顧客が食べ物を食べる
・ウェイターが請求書を持ってくる
・顧客が請求書を支払う
・顧客がレストランを出る
知識統合エンジン136は、ベンとアバのストーリーの理解にレストランフレームを適用するなど、ストーリーを処理する際にそのようなフレームを利用する。
知識統合エンジン136は、ストーリー解析エンジン134によって生成された基本的言語解析結果(すなわち、第2のレベルの解釈)を取得し、次いで、生成的意味素(すなわち、第3のレベルの解釈)およびフレーム意味論(すなわち、第4のレベルの解釈)の使用を通じて意味を推論することによってストーリーモデル132を進展させる。
その動作の一部として、知識統合エンジン136は、生成的意味要素とより高いレベルのフレームの両方を推論するためにフレーム推論プロセスを実行する。フレーム推論プロセスは、フレーム検索、フレームアラインメント、信念予測、および評価の4つの主な側面を含む。フレーム検索では、現在の世界モデル138からフレームのサブセットが識別され、これはストーリーに関するシステムの現在の信念に関連する可能性がある。フレームは、統計的またはルールベースの技法を使用して、現場で動的に生成されることもできる。フレームアラインメントは、ストーリー内のエンティティの、フレーム内の役割(変項)に対する割当てを決定することを含む。フレームアラインメントは、統計的および/または意味論的技法に基づく様々なマッチングアルゴリズムを使用して行われる。たとえば、一実装形態では、命題がテキスト命題である場合、コンピューティングシステム102は、命題をアラインメント/一致させるために、統計的テキスト類似アルゴリズム(たとえば、Word2Vec)を使用することができる。命題がGSPベースを含むタイプエンティティおよび関係である場合、システムは、命題をアラインメント/一致させるためにオントロジ(たとえば、WordNet)に基づく意味マッチャを使用することができる。たとえば、ベンはウェイターにアラインメントし、アバは顧客にアラインメントする。アラインメントに続いて、知識統合エンジン136はフレームによって予測される信念を主張するので、フレーム内にあるがストーリー中では言及されていない各意味素構造が考えられる推論である。次いで、エンジン136は、フレームアラインメントのセットがストーリーとどれだけ良好に一致するかについてのスコアを生成する。少数のフレームがストーリーから抽出された多数の信念と一致する場合、より高いスコアが与えられる。また、フレームアラインメントのセットは、あるいは、フレームによって予測される信念が、ストーリーに関するシステムの他の信念と矛盾している場合、スコアが低い場合がある。
フレーム推論は、複数のレベルの解釈で発生する可能性がある。文レベルでは、文または節の言語構造に対応するGSPを推論するために、フレーム推論が使用されることができる。この場合、各フレームは、意味素構造と言語解析結果との混合を含む。1つの例示的な構成として、ストーリー内の文ごとに、知識統合エンジン136は、GSP構造インスタンスを生成するために、1つまたは複数のGSP構造を言語解析結果からの情報を用いてインスタンス化する。ベンとアバのストーリーにおいて、エンジン136は、おそらく、reifier役割を「持ってくる」という単語(reifier:ストーリー/持ってくる)によって参照されるイベントエンティティで満たし、動作主の役割を「ベン」という単語(動作主:ストーリー/ベン)によって参照されるエンティティで満たし、後の状態をアバが食べ物を持っているという事実に関連するネストされた命題で満たすことによって、動作GSP構造インスタンスをインスタンス化することができる。このネストされた命題は、「アバ」という単語(所有者:ストーリー/アバ)によって参照されるエンティティを有する所有者の役割と、「食べ物」という単語(所有:ストーリー/食べ物)によって参照されるエンティティを有する所有の役割とを有することができる。
エピソードレベルでは、どのGSPのセットがうまく適合すると考えられるか、およびどのような新しい推論が行われることができるかを決定するために、フレーム推論が使用されることができる。たとえば、ベンとアバのストーリーにおいて、「レストランフレーム」は、ストーリーの中で言及された動作、たとえば「ベンがアバにメニューを持ってきました」のGSPによく適合する。ベンがウェイターとアラインメントされ、アバが顧客とアラインメントされている場合、「ベンが請求書を持ってきた」、および「アバが請求書を支払った」などの新しい推論が行われることができる。
前述のように、フレームはそれ自体が命題であり、したがって他のより高いレベルのフレームによって参照されることができる。たとえば、おそらくナイフやフォークなどを使用する、咀嚼や嚥下の動作を含む一般的な食事に関するフレームがあり、このフレーム全体がある確率でレストランフレームに含まれる。一般に、フレーム推論プロセスは、ストーリーを「説明する」フレームの階層を発見するために、複数回反復することができる。
一実装形態では、基本レベルで、特定のエンティティの発生をそれらのエンティティタイプ(人、または顧客およびウェイター)に置き換えることによって、特定のテキストから一般フレームが作成されることができる。知識統合エンジン136は、現在の世界モデル138内のフレームのライブラリにアクセスし、ストーリー内の単語/語句に関連する可能性が高いことを示す1つまたは複数のフレームを選択することができる。たとえば、ベンとアバのストーリーにおいて、「メニュー」、「食べ物」、「テーブル」などの単語は、「(ウェイター)が食べ物を(顧客)に持ってくる」、および「(顧客)が食べ物を持っている」などのGSP構造インスタンスにマッピングすることができる。次いで、そのようなGSP構造インスタンスは、フレーム内の役割を定義するためにグループ化されることができ、この例では、これらのGSP構造インスタンスは、レストランフレーム、ホテルフレーム、またはパブフレームなどのホスピタリティジャンルに属するフレームに適切であることができる。これらのフレームは、総合的でより一般的なホスピタリティサービスフレームに組み合わされてもよい。選択された後で、知識統合エンジン136は、フレーム内のGSP構造インスタンスをストーリーモデル内のGSP構造インスタンスに一致させるフレーム内の概念的役割(たとえば、アバは顧客であり、ベンはウェイターである)に対するストーリー内のエンティティのアラインメントを決定する。フレーム構造のこの構築およびインスタンス化を通じて、知識統合エンジン136は、フレームをストーリーの言語的構成要素とアラインメントする。インスタンス化されたフレーム構造は、ストーリーに対する新しい理解を提供し、そこに記憶された知識体を増加させるために現在の世界モデル138に返されることができる。
時間の経過とともに、新しいフレームを誘導するために、知識統合エンジン136が使用されることもできる。フレーム誘導は、システムがより多くのテキストを読んで理解するにつれて、現在の世界モデルに追加する新しいフレームを作成するプロセスである。システムがより多くのテキストを読んで人間と対話するにつれて、現在の世界モデル136は新しいフレームの追加とともに成長し、それによって、より洗練された主題を理解するのを助けるためにその知識と能力を高める。一実装形態では、基本レベルで、特定のエンティティの発生をそれらのエンティティタイプ(人、または顧客およびウェイター)に置き換えることによって、特定のテキストから一般フレームが作成されることができる。知識統合エンジン136の一実装形態のより詳細な説明は、図9~図12を参照して以下に提供される。
知識統合エンジン136は、ストーリー内で見られる単語/語句に関してより多く学習するために、知識誘導エンジン140にさらに問い合わせることができる。知識誘導エンジン140は、大規模言語コーパス410および他のソースを解析するために、オフラインで、または他の構成要素とは別個に実行することができる、実行可能な構成要素を含む。知識誘導エンジン140は、テキストによって暗示された、またはテキストにおいて潜在的な情報をキャプチャする多数の誘導された知識リソースを導出するために、様々な技法を使用する。知識統合エンジン136は、その後、語義曖昧性解消、関係検出、言い換え生成、テキストの含意、シーン解析、および欠落しているテキスト生成などのタスクを実行するためにリポジトリ412に問い合わせることができる。
知識誘導エンジン140の一実装形態のより詳細な説明は、図13~図14を参照して以下に提供される。
学習および理解モジュール130は、様々なモジュール130のすべてによってシステム102全体で使用される基本構成要素のセットである、信念表現および推論フレームワーク144をさらに含むことができる。フレームワーク144は、知識表現言語を提供し、文脈差別化および意味素の推論および学習メカニズムなどのより高いレベルの機能を可能にする。また、フレームワーク144は、システム102が時間の経過とともに確率的命題(または、「信念」)を記憶、索引付け、検索、ナビゲート、および操作することを可能にする基本的な動作を実行する。フレームワーク144は、ストーリーモデル132および現在の世界モデル138における自然言語を表現するためのGSP構造およびフレームを定義するためのメカニズムを提供する。フレームワーク144はまた、様々な意味論的関係がストーリー文の適切な解釈のためのものである可能性を表す確率を生成することができる。
一実装形態では、ストーリーモデル132および現在の世界モデル138は、エンティティおよび命題から形成される、正式で構造化された知識の表現である知識モデルとして構造化される。エンティティは、存在する可能性のある物(たとえば、「犬」、「猫」、「トラック」など)でもよく、実際には存在しないもの(たとえば、「ペガサス」、「シャーロックホームズ」)でもよい。エンティティは、抽象概念(たとえば、「動物」、「哲学」、「動作」など)であってもよい。エンティティは名前を有することができ、それらについて知られているすべての情報によって定義される。命題は、真理値を有することができるステートメントである。すべての命題は、述語と項のセットとを有し、それはエンティティであってもよく、命題であってもよい。ストーリーモデル132は、システムによって読まれるテキスト(ストーリー)の特定の部分に記載されているものを表現することが意図された知識モデルである。現在の世界モデル138は、世界において真であることに関する一般的な知識を表現することが意図される知識モデルである。
知識モデルのこの実装形態では、フレームワーク144は、知識モデルとともに働く機能である。フレームワーク144は、エンティティおよび命題を表現するための形式的言語、頻繁に使用されることが予想される定義される命題タイプのセット、知識へのアクセスのために問い合わせられる場合がある知識モデルのための永続的ストレージ、ならびに知識モデルに対して異なる推論能力を提供する構成要素のセットを含む。
フレームワーク144の一実装形態のより詳細な説明は、図15を参照して以下に提供される。
学習および理解モジュール130は、ストーリーモデルにおいて表現されるようなストーリーに対するシステムの理解をテストまたは検証するために人間のユーザとの質疑および回答対話セッションを容易にするために、対話エンジン142をさらに含むことができる。対話エンジン142は、ストーリーモデル132および現在の世界モデル138を入力として受け取り、それらをユーザの質問を生成するための、および/またはユーザからの質問に回答するための基礎として使用し、ユーザ対話を通じて取得された知識を組み込んだ後に更新されたストーリーモデルおよび更新された現在の世界モデルを出力する。対話プロセスはまた、ユーザの質問/応答を解釈し、システムの質問/応答を定式化するのを助けるために、知識統合エンジン136および知識誘導エンジン140などの他のシステム構成要素を利用する。たとえば、ベンとアバのストーリーにおいて、食べ物がスパゲッティを指しており、意味構造の一部が満たされていないままであるということをシステムが最初は認識できない場合がある。対話エンジン142は、食物がスパゲッティであると考えられるかどうかをユーザに尋ねるための1つまたは複数の質問を生成することができる。
他の場合、システムは現在の仮定を確信していない可能性がある。たとえば、知識誘導エンジン140が、ストーリーにおいて使用される「持ってくる」という単語の2つの意味が、正確であるというおおまかに同じ確率をもたらすと予測すると仮定する。知識統合エンジン136は、意味のうちの1つを選択することができる。システムは、この選択を完全には確信していないので、対話エンジン142は、特定の文またはストーリーにおけるこの語義選択の精度に関して質問することができる。
対話エンジン142は、線形対話セッションにおいて1人のユーザに関与してもよく、より大きなユーザのグループに対して並行して質問を分散してもよい。たとえば、この分散された手法において、対話エンジンは質問を論理的に異なるセットに分け、異なるユーザに異なる質問のセットを求めることができる。分散された対話セッションにより、コンピュータシステムが、多数のユーザにわたって拡張し、複数のユーザとの並列化された対話を通じて学習プロセスの待ち時間を短縮することが可能になる。
質問は、任意の数の方法および様式でユーザに提示されることができる。ユーザは質問を考察し、応答を提供する。対話エンジン142は、どの後続の質問をユーザに尋ねるかを決定するために、応答を使用する。さらに、対話エンジン142は、現在の世界モデルおよびストーリーモデルにおける意味構造およびフレームを更新するために応答を処理し、それによってストーリーに対するシステムの理解を改善する。
対話セッションは、知識統合エンジン136が、現在の世界モデルにおける知られているフレームとよく適合するストーリーの意味表現において十分な信頼レベルを達成する場合など、終了条件が満たされるまで繰り返されることができる。一実装形態では、対話エンジン142は、精度に関する最終的な検証のためにユーザに理解を表すように課されてもよい。終了条件に達すると、ストーリーモデル132は、将来の使用のために記憶され、索引付けされ、更新された現在の世界モデル138は、他のストーリーを処理する際に使用するために保持される。
図5は、学習および理解システム102がサーバ104(1)~(S)上に実装され、ユーザデバイスが電子デバイス114/118として実装されているアーキテクチャ100の1つの例示的な実装形態をより詳細に示す。サーバ104(1)~(S)は、集合的に処理能力502とメモリ504を提供する。メモリ504は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報の記憶のために任意のタイプまたは技術で実装される、揮発性および不揮発性メモリ、取外し可能および取外し不可能媒体を含むことができる。そのようなメモリは、これに限定されないが、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)または他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージデバイス、RAIDストレージシステム、あるいは所望の情報を記憶するために使用されることができ、またコンピューティングデバイスによってアクセスされることができる任意の他の媒体を含む。
メモリ504には、データ構造、データセット、ストーリーなどのテキスト文字列、言語コーパスなどを維持するための複数のデータベースを定義する、システムデータストア506が記憶されている。この例では、データストア506は、ストーリーモデル132、現在の世界モデル138、意味素のデータベース408、大規模言語コーパス410、誘導された知識リソースリポジトリ412、および他の可能なデータストア508を含む。
学習および理解モジュール130は、メモリ504に記憶され、プロセッサ502によって実行可能なソフトウェアモジュールとして具体化されて示されている。学習および理解モジュール130は、ストーリー解析エンジン134、知識統合エンジン136、知識誘導エンジン140、対話エンジン142、ならびに信念表現および推論フレームワーク144を含む。各モジュールは、システムデータストア506のうちの1つから引き出されたデータを処理するため、またはシステムデータストア506のうちの1つに返されて記憶された出力データを生成するために、別々に呼び出されて実行されてもよい。
サーバ104(1)~(S)は、図5においてデバイス114/118として表現されるように、1つまたは複数の協力者デバイス114(1)~(C)および/または1つまたは複数の学生デバイス118(1)~(D)と通信する。デバイス114/118は、プロセッサ510およびメモリ512(たとえば、揮発性、不揮発性など)を有する。オペレーティングシステム514、リーダユーザインタフェース(UI)516、および音声/テキスト変換器518は、メモリ512に記憶され、プロセッサ510によって実行される。電子デバイス114/118は、ユーザがコンピューティングシステム102に質問をし、およびコンピューティングシステムがユーザに質問をする対話セッションの間に、人間のユーザがストーリーを読んでコンピューティングシステム102と対話できるように、リーダーUI516を示すためのディスプレイ520を含む。
デバイス114/118は、音声/テキスト変換器518においてテキストを音声に変換し、スピーカ522を通じてオーディオを出力することによって、ストーリーを音声で提示することを含む、他の対話のモードをサポートすることができる。次いで、ユーザは、ストーリーを読むのではなく、聞くことができる。ユーザはまた、マイクロフォン524によってキャプチャされ、音声/テキスト変換器518によってテキスト文字列に変換された応答を話すことによって、質問および回答を口頭にすることができる。スクリーン、キーボード、スピーカ/マイクロフォンについて論じられているが、本デバイスは、人間とコンピュータシステムとの間の対話を容易にするために、本質的に他の任意のI/Oデバイスを含むことができる。
図6は、テキストベースのストーリーを取り入れ、それらのストーリーの理解を推論し、ストーリーの理解をテストするために人間と対話するための、アーキテクチャ100、およびより具体的には、図4および図5の学習および理解モジュール130によって実装される例示的なプロセス600を示す。602において、ストーリー(または、テキスト文字列)がコンピューティングシステムによって受信される。604において、同じストーリーがユーザと共有され、ユーザデバイス上に提示される。議論のために、コンピューティングシステムとユーザの両方によって読まれたストーリーがベンとアバのストーリー106(1)であると仮定する。
606において、ストーリーの構文表現を生成するために、ストーリーが構文解析される。構文解析は、文、文中の節、または他のマルチワードテキスト文字列に対して実行されてもよい。アーキテクチャ100において、ストーリー解析エンジン134は構文解析を実行し、単語を記述する構文ラベルでタグ付けまたは注釈付けされた文の単語を保持する言語構造と、単語間の関係を定義する述語項構造とを含む言語解析結果を出力する。言語解析結果は、文および共参照連鎖内の単語に割り当てられたエンティティタイプをさらに含むことができる。私たちのストーリーの例では、構文解析は、「持ってきた」という単語を、文中の動詞述語「持ってくる」という原形を有するものとして識別する言語構造を生成することができる。「ベン」という単語は主語の項であると決定され、「食べ物」という単語は目的語の項である。さらに、「ベン」は人として分類され、「食ベ物」は栄養として分類される(たとえば)。最後に、「食べ物」および「スパゲッティ」という単語は、共通の共参照連鎖に属するものとして評価される場合がある。
608において、それらを含む意味構造およびフレームは、ストーリーの可能な解釈を表現すると推論される。一実装形態では、知識統合エンジン136は、あらかじめ確立された背景知識を考慮して構文解析から受信した言語解析結果を意味的に処理することによって意味構造を推論する。たとえば、背景知識は、一部、構文解析された文中に見られる単語/語句のための共通の関連付けまたは関係を提供するデータベース408に記憶された生成的意味素のあらかじめ形成されたインスタンス化されていない構造として一部具体化されることができる。インスタンス化されていないGSP構造は、データベースから選択され、構文的に解析された文からの要素を使用してインスタンス化される。知識統合エンジン136は、さらにより高いレベルの解釈を提供し、それによって潜在的により深い理解を可能にするために、複数のインスタンス化されたGSP構造インスタンスからそれぞれ構成されるフレームをさらに選択してインスタンス化することができる。
ベンとアバのストーリーの例を続けると、動作に対応するインスタンス化されていないGSP構造が選択され、構文的に解析された文からの情報を用いてインスタンス化されることができる。たとえば、GSP構造のreifier役割は、「持ってくる」という単語(reifier:ストーリー/持ってくる)によって参照されるイベントエンティティで満たされることができ、動作主の役割は「ベン」という単語(動作主:ストーリー/ベン)によって参照されるエンティティで満たされることができ、後の状態はアバが食べ物を持っているという事実に関連するネストされた命題で満たされることができる。このネストされた命題自体は、所有の概念に対応するGSPであり、「アバ」という単語(所有者:ストーリー/アバ)によって参照されるエンティティを有する所有者の役割と、「食べ物」という単語(所有:ストーリー/食べ物)によって参照されるエンティティを有する所有の役割とを有することができる。GSP構造の一般性は、それらの構成性に起因し、その構成性は、システムがあるGSP構造を別のGSP構造内にネストする能力に一部依存する。この例から明らかなように、文の現在の言語的解釈は、誰が何を誰にもたらしたのか、そしてこの動作の後の状態は何かを、可能性がある関係を追加することによって、より深い理解レベルに高められる。この追加の意味情報は、より豊かな理解を提供する。
ストーリーの文のために他のGSP構造がインスタンス化されると、関連するフレームが検索され、ストーリーとアラインメントされる、フレーム推論プロセスが実行される。たとえば、ベンとアバのストーリーにおいて、レストランフレームが検索されることができ、ベンはウェイターと、アバは顧客とアラインメントされることができる。次いで、たとえば、ベンが請求書を持ってきた、およびアバが請求書を支払ったなどの新しい信念がフレームから主張される。少数のフレームがストーリーから抽出された多数の信念と一致する場合、より高いスコアが与えられるように、フレームアラインメントのセットが評価される。また、フレームアラインメントのセットは、あるいは、フレームによって予測される信念が、ストーリーに関するシステムの他の信念と矛盾している場合、スコアが低い場合がある。
610において、単語/語句を解釈するための1つまたは複数の可能性のある方法を提供するために、推論動作の一部として、文中の単語/語句に関する他の意味情報が生成されることができる。たとえば、1つの手法では、知識統合エンジン136は、語義、言い換え、関係、シーン解析などのような意味情報を提供するために、知識誘導エンジン140に問い合わせることができる。生成された結果は、関連付けられる確率とともに返されてもよく、その結果、知識統合エンジン136は、より正確な推論を行うためにより可能性の高い候補を選択することができ、対話エンジン142は、間違った、または知力のないと思われる質問をすることを避けるために、確率の低い候補の使用を排除することができる。
ベンとアバのストーリーにおいて、知識誘導エンジン140は、「持ってきた」という単語、またはその原形の「持ってくる」に対して語義曖昧性解消を実行することができる。曖昧性解消を通して、(1)何か、または誰かをどこかに連れて行く、(2)特定の状態または状況に陥らせる、あるいは(3)合法的に提示または説明するなどの、「持ってくる」という単語のいくつかの可能な意味が発見される場合がある。他の解析は、「食事を提供した」という語句が「食べ物を持ってきた」の言い換えであることができるような、他のリソースを提供することができる。知識誘導エンジン140は、適切なものを選択する際に支援するために、これらの結果に関連付けられる確率をさらに提供することができる。「持ってくる」という単語は、コーパスに現れる場合、たとえば、第3の意味(すなわち、合法的に提示または説明する)とは逆に、第1の意味(すなわち、何か、または誰かをどこかに連れて行く)により関連付けられると考えられる。
612において、ストーリーは、現在の世界モデルにおける知られているフレームとよく適合する信頼性の高い意味表現をストーリーモデルが含まない領域を発見するために、または人間のユーザによって検証されるべき低い確率で推論を識別するために、現在の世界モデルから検索されたフレームに関して評価される。このように、ストーリーにおいて現在知られているものとインスタンス化されたフレームにおいて表現されているものとの間に存在するかもしれない、可能性のあるギャップが確認されることができ、GSP構造またはフレームに追加されるべき、または追加することができる情報を明らかにする。たとえば、ベンとアバのストーリーに関しては、たとえば、アラインメント動作は、「持ってくる」は、(ストーリー内の「持ってきた」という動詞に対して)どちらを選択するかについて疑問を生じる十分な可能性スコアを有する複数の意味があることを発見することができる。これらの状況において、人間との協議はその疑問を取り除くのに役立つ。
614において、ギャップまたは挑戦推論を解決するために、1つまたは複数の質問が定式化されることができる。質問は、ユーザに質問されたときに、特にコンピュータシステムがその現在の理解にあまり自信がない場合、現在の意味構造およびフレームがストーリーをどれだけ良好に表現しているかを評価することが意図されている。この動作は、たとえば、知識統合エンジン136と連携して動作する対話エンジン142によって実行されることができる。たとえば、ベンとアバのストーリーにおいて、知識統合エンジン136は、最初に「ベンがアバに食べ物を持ってきました」という文は、「持ってくる」という動詞を含む動作意味構造を含むと決定すると仮定する。定式化されるかもしれない1つの質問は、「持ってくる」という動詞が動作と見なされるべきかどうかを人に尋ねることであり、したがって動作意味構造に関連付けられる。その質問は、たとえば、「私は、「持ってくる」は動作を指し、持ってくる動作が生じた後は何かが異なると思います。それは正しいですか?」として作成されている場合がある。他の状況では、語義の周りに明瞭さの欠如がある場合がある。たとえば、知識誘導エンジン140は、問い合わせられると、知識統合エンジン136に、上記のように「持ってくる」という単語が複数の意味を有することを通知することができる。したがって、対話エンジン142は、この問題を解決しようとする質問を定式化することができる。次のように、1つの適切な質問は、図1のUI126に示されたものと同様に作成されることができる:
ここに私が理解しようとしている文があります:
ベンがアバに食べ物を持ってきました。
以下の選択肢のどれが、上記の文に最も類似して「持ってくる」という単語を使用していますか?
1.何か、または誰かをどこかに連れて行く。
2.特定の状態または状況に陥らせる。
3.合法的に提示または説明する。
616において、ユーザとの対話セッションが開かれる。セッションの間、618において、構造化された質問がコンピューティングシステム102からユーザデバイス114/118に提出される。620において、質問は、人間のユーザによる消費のために(たとえば、視覚的および聴覚的に)提示される。622において、ユーザは、質問を検査して彼または彼女の入力を提供し、それはキャプチャされて、コンピューティングシステム102に返される。たとえば、ユーザは上記の質問を検討し、選択肢1(すなわち、何か、または誰かをどこかに連れて行く)が正しい応答であると決定することができる。624において、ユーザ応答は、コンピューティングシステムによって受信され、ユーザデバイスから処理される。
626において、意味構造および/またはフレームのうちの1つまたは複数は、ストーリーの異なる解釈を開発するために、人間のユーザから受信された応答に基づいて改訂される。次いで、ストーリーモデルは、改訂された意味構造およびフレームと(動作612)、および別の対話セッション(動作616)のために新しい質問と(動作614)再アラインメントされることができる。
プロセス600は、アラインメントされたストーリーモデルについて十分な信頼水準が計算されるまで継続されることができる。一実装形態では、ストーリー内の各単語/語句の意味表現を提供するインスタンス化された意味構造の信頼性スコアが計算される。それぞれがユーザと対話することによって様々な意味構造内でテストされるので、信頼性スコアは改善する傾向がある。その時点で、ストーリーモデル132は、ストーリーに対する正確な理解として出力されることができる。それはストーリーの完全な意味表現を含み、システムは、将来の想起のためにストーリーを索引付けするか、または他のテキストを理解する際に使用することができる。
説明のためのストーリー解析エンジン
図7は、ストーリー解析エンジン134の一実装形態を示し、ストーリーなどのテキスト文字列を処理するために使用されることができる選択構成要素を示す。ストーリー解析エンジン134は、複数の可能な言語解析結果を提案し、それらの結果を知識統合エンジンに渡すように構成されており、この知識統合エンジンは、共同推論を使用して結果上の共同分散を計算する。ストーリー解析エンジン134は、ストーリー106を取り込み、自然言語処理(NLP)のためにストーリー106のデジタル表現を言語解析器702に渡す。言語解析器702はストーリー106を受信し、ストーリーを単語、語句、文、または他の定義可能なテキスト文字列などの消化可能なセグメントに分割する。言語解析器702は、テキスト文字列に対して様々な言語解析を実行するNLP構成要素のセットを有する。構文パーサ704は、文中の単語の品詞およびそれらの間の文法的関係を識別する。一実装形態では、構文パーサ704は、構文解析のためのStanford CoreNLPパッケージを使用することによって、一部実装される。
いくつかの実装形態では、ストーリーエンジン134は、1つの文に対して複数の可能な構文解析を出力する単一のパーサ、または構文解析多様性を提供するために複数のパーサ706を採用することができる。所与のアプリケーションの解析精度を最終的に改善することを目的として、所望のアプリケーションに従って解析結果を選択または統合するために、解析セレクタ708が使用されることができる。他の実装形態では、解析セレクタは存在しないかもしれないが、むしろ複数の解析結果が知識統合エンジン136に渡され、知識統合エンジン136が、以下に詳細に説明されるように、意味構造およびフレーム構造における信頼性と共同して各解析結果の信頼性を決定する。
ストーリー解析エンジン134の言語解析器702は、他の解析構成要素が動作する原始的な信念として働く、述語のパーサニュートラル表現およびそれらのインスタンス化された項を生成する述語項構造(PAS)モジュール710も含む。PASモジュール710は、文法的関係のパーサ特有の表現を述語および項の共通表現に変換し、異なるパーサによって生成された文法情報がシステム内で相互運用できるようにする。変換プロセスにおいて、PASモジュール710は、受動的な声を能動的に変更するなどの特定の正規化手順も実行し、文の処理の中心ではない特定の文法的関係を除去することによって表現を単純化する。たとえば、ストーリー106における「ベンがアバに食べ物を持ってきました」という文の構文解析に続いて、PASモジュール710は、「持ってきた」またはその原形の「持ってくる」が主な述語(この場合、口頭述語)であり、「ベン」は主語の項であり、「食べ物」は目的語の項であることを認識する。PASモジュール710は、これらの単語を適切なラベルでタグ付けまたはマークする。1つの特定の実装形態では、PASモジュール710は構文パーサ704の上に構成され、他の実装形態では、構文パーサ704およびPASモジュール710は、共通の実行可能モジュールとして実装されることができる。
図7に示されるように、言語解析器702は、入力としてストーリーエンジンから知識統合エンジン136に渡される言語解析結果712のセットを出力する。言語解析結果712の一部は、構文パーサ704および言語解析器702のPASモジュール710によって生成された言語構造714である。言語構造714は、文の単語、単語の構文ラベル、および単語間のPAS関係を含むデータ構造として具体化される。データ構造714が、キーワードがノードとして表現され、それらの関係が相互接続された分岐によって表現される、樹木状の視覚化を使用して、図7に示されている。「ベンがアバに食べ物を持ってきました」という例文を続けると、「持ってくる」という単語(すなわち、「持ってきた」の見出し語形)がノード716として示され、動詞述語として識別される。「ベン」という単語がノード718として表現され、「持ってくる」という動詞述語に関連する主語の項としてタグ付けされる。「食べ物」という単語はノード720として表現され、「持ってくる」という動詞述語に関連する目的語の項としてマーク付けされる。「アバ」という単語は、「持ってくる」という動詞述語との関係でノード722によって表現され、アバが持ってくるという述語のターゲットであることを示す。
言語解析器702は、エンティティタイプを文中の様々な単語に割り当てるためのエンティティ割当てモジュール724をさらに含む。タイプは、1つまたは複数の適用可能なオントロジからのあらかじめ定められたカテゴリである。基本的に任意の意味タイプが定義されることができるが、一般的なタイプは、人、国、場所、家具、スポーツなどを含む。この例では、エンティティタイプデータ構造726に示されているように、エンティティ割当てモジュール724は、「ベン」という単語に「人」タイプを、および「食ベ物」という単語に「栄養」タイプを割り当てる。一実装形態では、エンティティ割当てモジュール724は、エンティティタイプに自動的に注釈を付けるために使用されるStanford CoreNLPパッケージ内の名前付きエンティティ認識器を使用して実装されることができる。別の実装形態は、WordNet階層に基づいてタイプを文中の単語に割り当てる語義曖昧性解消構成要素の使用を伴うことがある。
言語解析器702はまた、文中の単語/語句の共参照を識別する共参照モジュール728を有する。共参照は、必ずしも語彙的に同一ではないが、同じ現実世界のエンティティを指す単語/語句である。この例では、ストーリー106は、「食べ物」、「食事」、および「スパゲッティ」という単語を含む他の文を有すると仮定する。共参照モジュール728は、これらの単語/語句を同じものを意味するものとして識別し、何らかの方法で単語/語句を関連付けるデータ構造730を生成することができる。共参照モジュール728は、エンティティ共参照ならびにイベント共参照を識別することができる。言語解析結果712は、知識統合エンジン136に供給され、知識統合エンジン136は、図9を参照してより詳細に説明される。
別の実装形態では、言語解析結果712がストーリーモデルに統合されると、共同推論エンジン406は、自然言語処理(NLP)解析に適用するときに上流結果の可能性を再計算するために、言語解析結果の下流をさらに活用することができる。ストーリー解析エンジン134は、ストーリー全体にわたって推論されたフレームレベルの知識から導き出された代替解析を採点する際に、より高いレベルの意味情報および世界知識を考慮する。すなわち、ストーリー解析エンジン134は、代替解析の可能性を再計算するために、より高いレベルの下流の知識を利用することができる。さらに、システムが現在の世界モデル138により多くの知識を蓄積するにつれて、この可能性を動的に再計算するこの能力は、時間の経過とともに強化される。
図8は、入ってくるストーリーを構文的に処理するために、ストーリー解析エンジン134によって実行される例示的なプロセス800を示す。プロセス800は、システムアーキテクチャ100、および図1、図4、図5、および図7のストーリー解析エンジン134を参照して説明される。802において、テキスト文字列が受信される。テキスト文字列は、ストーリーの一部であってもよく、ストーリー内の1つまたは複数の自然言語文を表現してもよい。804において、テキスト文字列が言語的に解析される。1つの手法では、これは、動作804(1)~(4)によって表現される複数の副動作を含む。
804(1)において、文中の単語の構文表現を展開するために、テキスト文字列が構文的に解析される。図7を参照すると、言語解析器702は、テキスト文字列を構文解析し、それによって単語間の文法関係を提供する言語構造714を生成するために、1つまたは複数の構文パーサ704を呼び出す。804(2)において、構文解析表現をパーサニュートラルPAS表現に変換するために、述語項構造(PAS)解析が実行される。1つの手法として、述語項構造モジュール710は、文中の特定の単語を述語および1つまたは複数の項としてタグ付けまたはマーク付けする。これらの指定は、言語構造714のデータ階層に記憶され、反映される。
804(3)において、適切なオントロジからのエンティティタイプが、テキスト文字列内の単語に割り当てられる。エンティティタイプはあらかじめ定義されている(たとえば、人、場所、物など)。エンティティ割当てモジュール724は、文脈およびオントロジ情報に基づいてテキスト文字列内の単語ごとの可能なエンティティタイプを識別し、その単語にエンティティタイプでタグ付けする。エンティティ割当ては、言語解析結果の一部を形成するデータ構造726内で維持される。
804(4)において、テキスト文字列中の任意の共参照連鎖も決定される。各文または論理的テキストセグメントは、関連付けられる言語構造を有することができるが、共参照連鎖は、ストーリー全体を調べて、共通の現実世界のエンティティを参照する単語/語句を見つけることによって形成される。この動作804(4)は、たとえば、テキスト文字列全体の単語および語句を調べて、意味情報および文脈情報に基づいて共参照連鎖を形成する単語を識別することによって、共参照モジュール728によって実行されることができる。発見された共参照は、いずれもデータ構造730に記憶される。
ともに、804(1)~(4)における言語解析は、言語構造714、エンティティタイプ構造726、および共参照構造730を含む言語解析結果のセット712を生成する。いくつかの実装形態では、言語解析器702は、同じ文について複数の解析結果を生成することができる点にさらに留意されたい。たとえば、解析器702が「猫は、それが賢いので、ねずみを捕まえた」という文を処理していると仮定する。構文上の理由や共参照連鎖のために「それ」という用語を特徴付けようとするとき、「それ」は「猫」または「ねずみ」を参照する可能性があるため、複数の回答が存在する可能性がある。この段階では、まだ追加の意味知識がないので、ストーリー解析エンジンは、知識統合エンジンによって下流に解決されるべき両方の可能性を出力することができる。
806において、言語解析結果712は知識統合エンジン136に入力されることができる。言語解析結果712は、ストーリー全体106を記述するために、完了したものとして徐々に出力されることもでき、バッチで送信されることもできる。その後、生成的意味素のセットを備える初期のストーリーモデルを生成するために、言語的解析結果が意味的に解析される。
説明のための知識統合エンジン
図9は、知識統合エンジン136の例示的な実装形態を示し、ストーリー106の言語解析結果712を意味的に処理するために使用されることができる選択構成要素を示す。言語解析結果712は、取り入れられたストーリーからストーリー解析エンジン134によって作成され、ストーリーを表現するストーリーモデル132を最初に構築するために(ストーリー106とともに)知識統合エンジン136に渡される。知識統合エンジン136は、現在の世界モデル138にキャプチャされたシステムの現在の知識に関して意味をなすストーリーの確率論的意味表現としてストーリーモデル132を構築する。
知識統合エンジン136は、ストーリーモデル132を現在の世界モデル138とアラインメントすることによって、ストーリーの意味を開発するために、共同推論および人間との対話を通じて時間の経過とともにストーリーモデル132を進展させる、高度に構成可能で柔軟性のある実行可能な構成要素のセットである。知識統合エンジン136は、ストーリー内の文の言語解析結果712を取り込み、それらの文に対する意味を提供することを開始する、関連する意味構造を推論する。共同推論により、知識統合エンジン136は、複数のレベルの解釈を組み合わせ、それによって、様々なレベルの概念的豊かさでテキストを解釈する。上記のように、より高いレベルの解釈はより豊かであるが、より暗黙的でもあるので、発見することはより困難である。第1のレベルの解釈は、ストーリーにおいて見られる明示的な自然言語テキストの認識である。第2のレベルの解釈は、ストーリー解析エンジン134によって実行される言語解析に関する。次の2つのレベルの解釈、つまり生成的意味素を提供するための意味解析(すなわち、レベル3)、およびフレーム意味論(すなわち、レベル4)は、ストーリーにおける暗黙の意味を発見するために、(知識誘導エンジン140、対話エンジン142、およびフレームワーク144の助けを借りて)知識統合エンジン136によって実行される。
図9において、知識統合エンジン136は、様々な方法で動作することができる共同推論エンジン406を有する。一実装形態では、共同推論エンジン406は、複数の可能な「世界」を提案し、各世界は真であると考えられる信念のセットを有する。信念生成構成要素402は世界で反復的に実行され、真実である信念を観察し、新しい信念に対する分散を提案する。新しい世界は、それらの確率分布から信念を引き出すことによって作成される。制約構成要素404は、世界の確率を評価するために実行される。プロセスが終了されると、信念の限界確率は、それが真である世界の確率の合計になる。限界確率は、信念の確率間の関係をキャプチャしないので、システムは世界自体をストーリーモデル132の一部として記憶することもできる。さらに、これは、たとえば、マルコフ連鎖(Markov chain)またはモンテカルロサンプリング(Monte Carlo sampling)などの技法を通じて達成されることができる。
1つの非限定的な手法では、信念生成構成要素402は、言語解析器904を含み、言語解析器904は、述語項構造(PAS)、語義、エンティティタイプ、および共参照などの、言語解析結果712内の各文または語句の言語構造を表す信念に対する確率分布を生成する。たとえば、言語解析器904は、「バットが彼に向かって飛んでいた」というテキストが真実であるとの信念を含む世界を受信し、バットが80%の確率で動物であり、20%の確率で野球のバットであるという信念を含む確率分布を出力することができる。
信念生成構成要素402は、PASおよび語義などの情報に基づいて、テキストの可能性のある意味解釈を表現するインスタンス化されたGSPに対する確率分布を生成する、言語対GSPマッパ906をさらに含むことができる。言語対GSPマッパ906は、言語解析結果命題とGSP命題の混合をそれぞれ含む現在の世界モデル138からのフレームを利用して、上述のフレーム推論プロセスを使用することができる。前の例を続けると、言語対GSPマッパ906は、バットが動物であり、「飛んで」という動詞の主語であった世界を受信し、バットが飛行動作の動作主であった確率がGSPにおいて99%であり、そうではなかった(すなわち、それは野球のバットの場合のように何らかの他の手段で彼に向かって推進された)確率が1%である確率分布を生成する。図9に表現されるように、現在の世界モデル138は、インスタンス化されていないGSP構造910(1)~(G)のGSPライブラリ908と、一般的なフレーム構造914(1)~914(F)のフレームライブラリ912とを含む、最初はそれらのインスタンス化されていない状態で、GSPおよびフレーム意味構造のライブラリを維持する。
GSPライブラリ908におけるGSP構造910(1)~(G)は、様々な事実、状況、または環境の意味をキャプチャするためにあらかじめ定義されている場合がある。たとえば、1つのGSP構造は動作を表すことができ、構造は、reifier、動作主、動作の前に何が起きるのか、後で起こるのか(すなわち、Reifier、動作主、前、後の要素)などの動作を定義する役割を含む。他のGSP構造は、経験(動作主、経験-関係(たとえば、見る、聞くなど)、および刺激の役割を有する)、空間的位置(位置関係の役割に関する、エンティティ1、エンティティ2の役割を有する)、時間的位置(時間的関係、イベント1、イベント2の役割を有する)、および所有(所有者、所有の役割を有する)を表す場合がある。
GSP構造910(1)~(G)は、基本的な種類の事実に対応するインスタンス化されていない概念として始まる。たとえば、空間的位置に関するGSP構造が存在し、インスタンス化されると、空間的位置に関する事実の意味を提供する。時間的関係のためのGSP構造が存在し、インスタンス化されると、時間的関係に関する事実を意味する。各インスタンス化されていないGSP構造910は、ストーリーにおける明示的または暗黙的な情報を用いて完了されるべき独自の特定の役割のセットを有する。空間的関係のためのGSP構造は、第1の目的語または場所のための1つの役割、第2の目的語または場所のための別の役割、ならびに第1の目的語と第2の目的語との間の空間的関係(たとえば、近く、上、中、上方、下方など)を指定するための第3の役割を有する。
ストーリーからの単語/語句は、GSP構造の複数のインスタンスに対応することができる。たとえば、単一の単語は、語義ごとに異なるGSP構造インスタンスを有することができる。「fall」という単語は、1つの意味に対してGSP構造の1つのインスタンス(たとえば、「大きな雨滴がクロエの顔に落ちました」という文中に見られるようなもの)、別の意味に対する第2のGSP構造インスタンス(たとえば、「クロエが滑って泥の中に落ちました」という文中に見られるようなもの)、および別の意味に対する第3のGSP構造インスタンス(たとえば、「温度が10度下がった」という文中に見られるようなもの)を有することができる。
構造の少なくとも1つの役割が別のGSP構造で満たされている複合GSP構造も定義されることができる。たとえば、通信のためのGSP構造(たとえば、動作主、受領者、メッセージの役割など)と、目標のための第2のGSP構造(たとえば、動作主、目標の役割)があると仮定する。通信GSP構造における「メッセージ」の役割は、目標GSP構造によって満たされることができる。これは、伝達されるメッセージ自体が何らかの動作主の目標に関する通信に関する事実を表現する複合GSP構造を形成する。そのような複合GSPは、たとえば、「アリスは、キャロルがチケットを求めているとボブに言った」または、「「トウモロコシを取って」とダンが言った」などの自然言語文に対応することができる。特定の構造を参照して上述したネストされた関係は、複合GSP構造の例である。
図10は、対応するテキスト文字列(たとえば、文)に対する意味の範囲を表すように構成されることができるGSP構造910の例示的なセット1000を示す。意味を表すためにどのように構造が構成されるべきかを確立する方法はたくさんある。この例のセット1000では、基本構造は、前、その時間、および後の要素または役割を含む、事実の時間的変化を表すための動作構造1002を含むことができる。位置、エンティティ1、およびエンティティ2の要素または役割を含む、所々に見られるものを表すための位置構造1004が存在することができる。別の例として、動作主の役割、信念、および信任で動作主が信じている事実を表す信念構造1006が存在する場合がある。
図9を参照すると、フレーム914は、特定の文脈における命題(GSPなど)に対する確率分布である。単純なケースは、特定の場所で通常発生する動作などの、文脈において真である可能性の高い命題のセットである。フレームは、様々な参加者、動作、属性、および一般に文脈に関連付けられた他の概念的な役割を指す。フレーム914は、関連する経験をグループ化することによって形成されたものと考えられることができる。一般に、フレームは異なる抽象化レベルで存在する。フレームは、エンティティが特定の人物を指す特定のエピソードを表現することができ、同様に、フレームは、エンティティについてほとんど知られていない親近感などの非常に抽象的な概念を表現することができる。フレームにおいて、GSP構造の役割の一部において参照されるエンティティは、ストーリーにおけるベンおよびアバなどの特定のエンティティではなく、顧客およびウェイターのようなより一般的なフレーム固有の役割である場合がある。たとえば、レストランフレームは、顧客のための1つの動作インスタンス(Reifierのインスタンス化された役割:座る、動作主:顧客、後:テーブルの場所)を含む、動作の2つのGSP構造インスタンスと、ウェイターのための別の動作インスタンス(Reifierのインスタンス化された役割:持ってくる、動作主:ウェイター、後:顧客のメニューまたは食べ物の場所)を含むことができる。
フレーム914は、他のフレームを参照することもできる。たとえば、レストランフレームは、食べ物や飲み物を消費する経験のためのGSP構造インスタンスの集合を定義する食べるフレームを参照することができる。フレームが親フレームから参加者、動作、および属性を継承するように、フレームが階層に配置されることができる。一例として、ファーストフードレストランフレームは、レストランフレームの子であり、レストランフレームの特定の側面を継承することができる。フレームはまた、相反するパターンで構成されることができる。たとえば、レストランフレームでは、ゲストは食事の代金を支払う。しかし、誕生日フレームでは、ゲストは食事の代金を支払わない。この後者の例に加えて、フレームは、命題は確率が低いと言うこともできる。たとえば、より具体的な誕生日フレームは、請求書を支払う確率が低いことを示唆することがあり、その確率は通常のレストランフレームにおいてはるかに高い。
現在の世界モデル138は、最初に、ライブラリ「VerbNet」などの手動でキュレーションされた意味フレームのライブラリを含むことができる。システムを準備するために、たとえば、VerbNetライブラリでコード化された動詞のセット(たとえば、子供が最初に学習する100個の動詞)が、現在の世界モデル138にインポートされることができる。残念なことに、そのような手作業によるリソースは拡張しない。したがって、コンピューティングシステムが学習するにつれて、現在の世界モデル138はもはや手動で作成されず、代わりに、処理背景コーパスから、および人間の学生および協力者との対話を通じて学習する。
図9において、フレーム内でうまく適合する可能性が高い、現在の世界モデル138に記憶された、インスタンス化されていないGSP構造910(1)~(G)のサブセットを識別し、ストーリー内のエンティティのGSP構造内の変項への割当てを決定するために、言語対GSPマッパ906は、フレーム推論プロセスを実行する。目標は、言語が参照する様々なエンティティを定義し、どのGSP構造がエンティティに当てはまるかを決定することによって、言語構造から言語をGSP構造にマッピングすることである。図示された例では、言語構造714は、動作のためにインスタンス化されていないGSP構造910に最も密接に一致するように決定されることができる動詞述語「持ってくる」を有する。一致は、キーワード一致(たとえば、言語構造714における「持ってくる」は、この特定の動作GSP構造910における単語「持ってくる」に一致する)を通じて、または類似性、概念的なものなどの他の探索戦略を通じて決定されることができる。図示されるように、動作GSP構造910は、reifier名(reifier:持ってくる)、動作主(動作主:人1)、および後の状態(後:有する)役割を含み、ネストされた命題は、所有者役割(所有者:人2)が関連付けられる所有役割(所有:もの)を有するという事実に関連する。いくつかの実装形態では、モジュール914は、言語構造714に一致することができる複数のインスタンス化されていないGSP構造を識別して選択することができる。選択プロセス中に、関連性スコアまたは信頼スコアが計算されることができる。スコアがより高いGSP構造は、言語構造714により密接に一致する構造を示す。
1つまたは複数のインスタンス化されていないGSP構造910を識別した後、言語対GSPマッパ906は、GSP構造インスタンス916を生成するために、GSP構造をインスタンス714からの情報を用いてインスタンス化する。ここでは、ベンとアバのストーリーにおけるreifierの役割は「持ってくる」(reifier:bring)として識別され、動作主の役割は「ベン」(動作主:ベン)として識別され、所有者の役割は「アバ」(所有者:アバ)として識別され、所持の役割は「食べ物」(所有:食ベ物)として識別される。GSP構造インスタンス916は、ストーリーからできるだけ多くの情報を有するインスタンス化されたバージョンである。
場合によっては、構造を完全にインスタンス化するための情報のすべてが存在しない場合があり、欠落している要素を発見するのに役立つために、ストーリーに対する理解について人間のユーザに質問するための基礎をなす不確実性が生じる。さらに、場合によっては、ストーリーの抜粋の異なる可能な意味を提供するために、複数のGSP構造インスタンスが異なるGSP構造910からインスタンス化される。複数のGSP構造インスタンスが同じストーリーの抜粋から作成され、それらのインスタンスが類似の信頼性スコアを有する場合、これはまた、どの可能な意味がストーリーにおいてより適切であるかに関して人間のユーザに問い合わせ、それによってユーザが抜粋をどのように理解したかの知識を得るようにシステムを促す。
もう1つの例として、「少年が公園にいる」というテキストがあるとする。言語対GSPマッパ906は、目的語、関係、および場所の役割を有する場所GSP構造などの、「少年」および「公園」と呼ばれるエンティティを処理するGSP構造を選択することができる。場所GSP構造は、テキスト情報(たとえば、目的語の男の子、場所の公園など)を役割に埋め込むことによって、テキストの意味をキャプチャするようにインスタンス化される。この文が「少年が公園に行った」と少し修正された場合、言語対GSPマッパ906は、動作主「少年」と効果を有する第1の動作GSP構造を有するネストされた配置を選択することができ、効果はネストされた場所GSP構造を参照する。「少女は母親に自転車を頼んだ」という文を考察する。この文は、通信GSP構造(たとえば、動作主:少女、受領者:母、メッセージ:目標_構造)、目標GSP構造(たとえば、動作主:少女、目標:所有_構造)、および所有GSP構造(たとえば、所有者:少女、所有:自転車)のインスタンス化された複合GSP構造を持つカスケードネスト配置に最適にマッピングされることができる。
図9において、信念生成構成要素402は、現在の世界モデル138から、ストーリーの現在の信念に関連することができる1つまたは複数のインスタンス化されていないフレーム914(1)~(F)を検索するために、フレーム推論プロセスを実装するエピソードフレーム推論モジュール918をさらに含む。フレームは、テキストの可能な意味解釈を表現するように識別されたGSP構造インスタンス916のサブセットに基づいて一部推論される。エピソードフレーム推論モジュール918は、エピソードフレームに対する確率分布を提案し、ストーリー内のエンティティをフレーム内の役割にアラインメントし、フレームから新しい信念が推論される。このプロセスは、ストーリーを説明するフレーム階層を発見するために反復的に発生してもよい。ベンとアバのストーリーにおいて、たとえば、レストランフレーム920は、ベンとアバがレストラン内にあるという暗黙の情報を提供することができ、それによって、ストーリー内の明示的な言語をより良く理解するためのテーマまたは文脈を提供する。レストランフレーム920は、この目的のために、ホテルまたはパブの可能な他のフレームと比較して、人々、メニュー、食べ物、およびテーブルを含むストーリーに関連する可能性がより高いものとして選択されることができる。
次いで、レストランフレーム920は、ストーリーに関係する複数のGSP構造インスタンス916を含むために、エピソードフレーム推論モジュール918によってインスタンス化される。インスタンス化されていない状態のレストランフレームは、「顧客」、「ウェイター」などへの一般的な参照を有する。エピソードフレーム推論モジュール918は、このフレームのフィールドをストーリーからの情報で満たし、顧客がアバにアラインメントし、そしてウェイターがベンにアラインメントするようにする。
ベンとアバのストーリーにおいて、ストーリー内に7つの文があり、7つの文は、少なくとも7つ、おそらくはより多くの対応するGSP構造インスタンス916(1)~(7+)によって表現されることができる。ストーリーの最初の文(すなわち、「アバが歩いて入ってきました。」)は、GSP構造インスタンス916(1)によって表現され、「歩いて」という主要な動作の用語が示されている。ストーリーを形成する第2の文(すなわち、ベンがアバをテーブルに案内しました。)は、GSP構造インスタンス916(2)によって表現され、「案内する」という主要な動作の用語が示されている。図示された各インスタンス916(1)、916(2)、...、916(6)、および916(7)において、主要な動作(すなわち、「歩く」、「案内する」、「持ってくる」、および「食べる」)が示されるが、これはストーリーから他の事実を使ってインスタンス化された構造全体を伝えることが意味されている。
一実装形態では、エピソードフレーム推論モジュール918は、様々な程度の関連性を有する複数のフレームを探索して識別することができる。各探索は、1つまたは複数のフレームを選択するために使用されることができる信頼性スコアまたは関連性スコアを返す。最終的に選択されるフレームは、ストーリー内の要素を、ストーリーを最もよく説明する方法でアラインメントすることが期待される。たとえば、ストーリーが人々、メニュー、食べ物、およびテーブルを含むので、レストランフレームが選択されることができる。しかしながら、モジュール918は、やはり人々、メニュー、食べ物、およびテーブルを含むストーリーに関連することができるホテルのフレームをさらに識別することができる。したがって、エピソードフレーム推論モジュール918は、レストランフレームとホテルのフレームの両方を選択することができ、おそらくレストランフレームはホテルのフレームより高い関連性スコアを有するが、両方とも許容しきい値を超えるスコアを有する。そのような状況では、両方のフレームが選択されてインスタンス化され、次いで、人間のユーザが、どちらが最良の選択であるかをより良く理解するための質問を生成するために使用される。
信念生成構成要素402は、さらに、ストーリーモデル内にすでにGSPが与えられると、テキストのさらなる意味解釈を表現するインスタンス化されたGSPに対する新しい確率分布を生成する、常識推論モジュール922をさらに含むことができる。たとえば、そのような推論には、計数や算術などの数値推論、イベントの順序付けなどの時間推論、および物理的な物体の部品やサイズに関する物理的な推論を含むことができる。常識推論モジュール922において使用されるアルゴリズムは、特定のGSP(たとえば、様々なタイプのストーリーモデル内のエンティティの数を数えるアルゴリズム)に特化されてもよく、演繹ルールを検索して適用するためのフレーム推論プロセスを一般的なアプリケーションであってもよい。ストーリーがより複雑になるにつれて、ストーリーを表現するために多くのフレームが使用されることができる点にさらに留意されたい。これは完全なストーリーを形成するために集まったシーンまたはエピソードに似ている。
知識統合エンジン136は、フレーム推論プロセスの評価フェーズを実装する制約構成要素404をさらに含み、可能なフレームおよびそこでのGSPがストーリーをどれだけ良好に表現するかを検査する。一実装形態では、制約構成要素404は、フレームアラインメントのセットがストーリーとどれだけ良好に一致するかについてのスコアを生成する。少数のフレームがストーリーから抽出された多数の言語解析信念と一致する場合、より高いスコアが与えられる。逆に、推論された信念がストーリーに関するシステムの他の信念と矛盾している場合、スコアがより低くなる。
共同推論エンジン406は、異なるレベルの解釈を効果的に組み合わせるために、システム内のすべての構成要素の出力を組み合わせる。共同推論エンジン406は、信念生成構成要素402および制約構成要素404からの出力を受け取り、信念上の共同分散を計算する。共同推論エンジン406は、各信念の限界確率を計算し、これはストーリーモデルを構築し、進展させるために使用される。共同推論エンジン406は、その時点で知られているすべての信念に基づいて考えられる信念の条件付確率を生成するように構成されることができる。
上記のすべての構成要素の結果を組み合わせることによって、共同推論エンジン406は、異なるレベルの解釈を組み合わせる。たとえば、ストーリー解析エンジン134が、述語項構造信念のうちの1つは確率が低い場合に、述語項構造信念に対して確率分布を生成する場合を考察する。言語対GSPマッパ906が、述語項構造信念を使用するGSPが、ストーリーの残りにも適合するエピソードフレームと良好に一致すると決定した場合、共同推論エンジンによって高い限界確率が与えられる。
このプロセスを通じて生成されたGSP構造インスタンス916およびフレームインスタンス920は、コンピューティングシステムの知識を構築し続けるために、現在の世界モデル138内のストア924に記憶される。これらのインスタンスは、さらに、ストーリーの理解を構築する際の将来の使用のために、新しいGSP構造およびフレームを構築するためにさらに使用されることができる。
図11は、ストーリーに対する理解を改善するために、知識統合エンジン136がどのようにフレーム推論を使用するかを示す。この例では、統一されたテーマまたは概念内のエピソードを記述するために、インスタンス化されていないレストランフレーム構造1104によって表現されることができる抽象的なレストランのスクリプトまたはエピソード1102とともに、ベンとアバのストーリー106が示されている。ここで、エピソード1102は、以下のように、レストラン内で何が起こるかの背景知識を提供する。
レストランとは、顧客が食べ物を食べに行く場所である。
レストランでは、顧客はテーブルに着いて、ウェイターが来るのを待つ。
ウェイターは顧客にメニューを提供する。
顧客はメニューを読む。
顧客が食べたい食べ物を選ぶ。
顧客は彼らの選択肢をウェイターに伝え、ウェイターが顧客に食べ物を持ってくる。
顧客が食べ物を食べた後、ウェイターは請求書を顧客に持ってくる。
顧客は請求書を払い、次いで顧客は去る。
レストランフレーム1104は、エピソード1102の文に関連する複数の生成的意味要素で構成される。図11において、3つのインスタンス化されていない動作GSP構造1106、1108、および1110が議論の目的のために示されている。動作GSP構造106、1108、および1110は、メモリ位置1112によって表されるように、現在の世界モデル138のメモリ位置に維持されるデータ構造として具体化される。第1の動作GSP構造1106は、「レストランとは、顧客が食べ物を食べに行く場所である」という、エピソード1102におけるオープニング文の一部を表現する。動作GSP構造1106は、データ構造のルートノードにおいて動作役割「行く」(reifier:行く)、第1の従属ノードにおいて動作主役割「顧客」(動作主:顧客)、および第2の従属ノードにおいて場所役割「レストラン」(場所:レストラン)を含む。動作GSP構造1108は、エピソード1102の第6の文の第2の節を表現し、これは、「...ウェイターが顧客に食べ物を持ってくる」というものである。動作GSP構造1108は、データ構造のルートノードにおいて動作役割「持ってくる」(reifier:持ってくる、第1の従属ノードにおいて動作主役割「ウェイター」(動作主:ウェイター)、第2の従属ノードにおいて所有役割「食ベ物」(所有:食ベ物)、および第3の従属ノードにおいて所有者役割「顧客」(所有者:顧客)を含む。第3の例示されたGSP構造1110は、「顧客が食べ物を食べた後...」という、エピソード1102の第7のセンテンスの第1の節を表現する。動作GSP構造1110は、データ構造のルートノードにおいて動作役割「食べる」(reifier:食べる)、第1の従属ノードにおいて動作主役割「顧客」(動作主:顧客)、および第2の従属ノードにおいて目的語の役割「食物」(場所:食べ物)を有する。様々な動作GSP構造1106、1108、および1110は、データ構造の様々なノード(たとえば、顧客、ウェイター、食ベ物など)における一般的なラベルで始まる点に留意されたい。
知識統合エンジン136は、ストーリー106に対する理解を改善するために、フレーム1104のフレーム意味論をストーリーモデル解釈1114とアラインメントする。この例では、フレーム構造は、インスタンス化されていないGSP構造1106、1108、および1110にそれぞれ対応するインスタンス化されたGSP構造インスタンス1116、1118、および1120を形成するために、ベンとアバのストーリー106からの詳細でインスタンス化される。インスタンス化されたGSP構造インスタンス1116において、動作主役割の項は、一般的なプレースホルダ「顧客」の代わりにストーリーエンティティ「アバ」である。ストーリーには、レストランのタイプまたは名前に関するより特定の情報がないため、場所役割は一般的なラベル「レストラン」を維持する。
インスタンス化されたGSP構造インスタンス1118の場合、一般的なプレースホルダ「ウェイター」の動作主役割は、ストーリー固有のエンティティ「ベン」に置き換えられる。所有者役割は、一般的なラベル「顧客」の代わりに、ストーリー固有のエンティティ「アバ」を仮定する。ストーリーエンティティ「スパゲッティ」も、所有役割の一般的なラベル「食べ物」を置き換える。同様に、インスタンス化されたGSP構造インスタンス1120の場合、「ウェイター」の動作主役割は「アバ」に置き換えられ、「食ベ物」の目的語の役割は「スパゲッティ」に置き換えられる。知識統合エンジン136は、複数の可能性のあるアラインメントを考慮することができる点に留意されたい。知識統合エンジン136は、各アラインメントがストーリーと適合する信頼スコアを推定する。たとえば、顧客としてのアバとウェイターとしてのベンとのアラインメントはストーリーにより適しており、次いで、ウェイターとしてのアバ、そして顧客としてのベンである。より具体的には、少数のフレームがストーリーから抽出された多数の信念と一致する場合、より高いスコアが与えられる。さらに、新たに述語化された信念がストーリーに関するシステムの他の信念と矛盾している場合、フレームアラインメントのセットはスコアが低くなる。信頼性スコアを推定する手法は、文脈に依存し、タスクに関連するため、状況によって異なる場合がある。インスタンス化されたGSP構造インスタンス1116、1118、および1120は、メモリ位置1122によって表されるように、現在の世界モデル138のメモリ位置に維持されるデータ構造として具体化される。
コンピューティングシステムのストーリーに対する理解は、基本的な構文解析よりも豊かになったが、依然としてストーリーについて学習することがもっとある。知識統合エンジン136は、そのストーリーにおいて使用される単語および語句についてより多くを学習し続けるために、知識誘導エンジン140によって提供される誘導された知識リソースにアクセスすることができる。さらに、知識統合エンジン136は、インスタンス化されたデータ構造における任意の不一致や隙間を解決するのに役立つために人間のユーザを関与させ、またはストーリーをもっともらしく説明することができる複数の可能な意味構造から最終的に選択するために、対話エンジン142をさらに呼び出すことができる。知識統合エンジン136は、ストーリー言語-意味マッピング演習および人間のユーザからのフィードバックによって学習されたものに基づいて現在の世界ライブラリ138内に維持されるGSP構造およびフレームの修正された、および新しいバージョンを構築するために、フレームワーク144とさらに協働することができる。たとえば、システムは、新しいフレームを抽出して構成するために異なる階層化メカニズムを使用して、構造化された、半構造化された、または構造化されていないデータ(テキストコーパス、画像またはビデオ集合、意味データベースなど)の大規模コーパスを調査することもできる。これらのメカニズムは、新しいフレームの直接的な知識を得るために、これらに限定されないが、統計的に意味のあるフレームを抽出するための、統計的に監視された、半監視された、監視されていない機械学習およびデータマイニング技法と、すでに記憶されているフレームから演繹的または仮説的プロセスを介して新しいフレームを生成するための論理的および確率論的推論と、対話エンジンを通じたユーザとの対話とを含む。誘発されたフレームの有用性は、特定の個々のテキストを予測する能力によって評価されることができる。
図12は、ストーリーに対するより深い理解のために意味情報を推論するために知識統合エンジン136によって実行される例示的なプロセス1200を示す。プロセス1200は、図1、図4、図5、および図9のシステムアーキテクチャ100および知識統合エンジン136を参照して説明される。1202において、構文解析およびPAS注釈を有する言語構造を含む言語解析結果が受信される。図4を参照すると、言語解析結果は、ストーリー解析エンジン134から受信されることができる。
1204において、フレーム推論は、言語構造を、より高いレベルの解釈を提供する1つまたは複数の意味構造に変換することによって行われる。1つの手法では、推論演算は、動作1204(1)~(2)によって表現される複数のサブ演算を含む。
1204(1)において、生成的意味素構造のインスタンスは、テキストが意味するものの第1のより高いレベルの解釈を提供するように形成される。この形成の一部として、1つまたは複数の既存の、インスタンス化されていないGSP構造が、1204(1)(A)においてそのような構造のライブラリから識別されることができる。インスタンス化されていないGSP構造は、現在の世界モデル138に記憶され、構造が言語構造内の単語/語句に関連する確率に基づいて識別されることができる。複数のインスタンス化されていないGSP構造は、原形がテキストの可能性のある意味を表現するのに十分な確率を示す場合に選択されることができる。選択プロセスを助けるために、確率があらかじめ定められたしきい値と比較されることができる。1204(1)(B)において、選択されたGSP構造は、言語解析結果からのデータでインスタンス化される。インスタンス化された後で、これらのGSP構造物インスタンスは、事実と推論の間の論理的接続を提供する、より堅牢な意味の範囲を提供する。
1204(2)において、フレーム推論動作は、テキストが意味するものの第2のより高いレベルの解釈を提供するために、フレーム構造を形成することをさらに含む。1204(2)(A)において、テキストのテーマまたはエピソード的な信念を表す1つまたは複数のインスタンス化されていないフレーム構造が、そのような構造のライブラリから識別されることができる。インスタンス化されていないフレーム構造は、現在の世界モデル138に記憶され、そのような構造が言語構造内の単語/語句との関連を示す確率に基づいて選択されることができる。複数のインスタンス化されていないフレーム構造は、フレームがテキストを理解するための関連するテーマ(たとえば、ベンとアバのストーリーを理解するためのレストランまたはホテルのフレーム)を表現するのに十分な確率を示す場合に識別されることができる。
1つの手法では、フレーム選択動作1204(2)(A)は、どのフレームを所与のテキスト/ストーリーに適用するかを決定する際に助けるために、追加のフレーム仮説形成プロセスを含むことができる。このサブプロセスは、図9および図11に関して先に説明したフレームアラインメントプロセスを含むだけでなく、以前の状況においてフレームを適用することによって生じるより多くの推論および新しい推論を導出する演繹プロセスをさらに含むことができる。以前の状況において適用されたフレームは、事前の背景知識を考慮して、アラインメントおよび推論がどれだけ良好に適合するかを評価するために、互換性/一貫性について検討および解析されることができる。
1204(2)(B)において、選択されたフレーム構造は、GSP構造インスタンスの集合でインスタンス化されるか、または構築される。図9に示されるように、たとえば、レストランフレーム構造は、ベンとアバのストーリー106の7つの文から形成されたGSP構造インスタンス916(1)~(7)でインスタンス化される。構築された後で、フレーム構造はテキストのより完全な理解を提供する。
1206において、意味構造(すなわち、GSP構造およびフレーム構造)が、ストーリーモデルの現在の表現とのそれらの可能なアラインメントについて評価される。評価には、フレームとGSP構造がストーリーとどれほど密接にアラインメントするかを示すスコアの計算を含むことができる。
1208において、信念上の共同分散が計算される。一実装形態では、共同推論エンジン406は、各信念の限界確率を計算し、これはストーリーモデルを構築し、進展させるために使用される。共同推論エンジン406は、その時点で知られているすべての信念に基づいて考えられる信念の条件付確率を生成するように構成されることができる。
1210においてストーリーを表現するために最も適切なフレームおよびGSPが選択され、ストーリーモデルが更新される。現在の世界モデルはまた、フレーム推論プロセスから学習した任意の情報で更新されることができる。
説明のための知識誘導エンジン
図13は、知識誘導エンジン140の例示的な実装形態を示し、テキスト文字列またはストーリーに関する意味情報を推論する際に、知識統合エンジン136および対話エンジン142を援助する選択構成要素を示す。知識誘導エンジン140は、他の構成要素による容易なアクセスのために、誘導された知識リソースリポジトリ412に記憶されることができるリソースを生成するために、オフラインで、学習および理解モジュール130内の他の構成要素からまたは独立して実行されるように実装されることができる。
物語は暗黙的である。情報は述べられないままであり、仮定され、曖昧である。コンピュータシステムは、暗黙の主体、動作、関係を予測し、さもなければ、それは言語を理解する際に苦労することになる。知識誘導エンジン140は、作成者が既存のリソースからストーリーにおいて暗黙的および述べられないままに残している場合がある知識を認識または予測し、知識統合エンジン136および対話エンジン142などの他のシステム構成要素にサービスを提供するのに役立つ構成要素のセットを有する。知識誘導エンジン140は、これらのギャップを埋めようとするので、知識統合エンジン136は、より良い知識モデルを形成することができ、対話エンジン142は、人間の学生または協力者にとってよりインテリジェントな質問を明瞭にすることができる。たとえば、ストーリーが「学生は、彼が大学に来た理由を得た」と言うとき、知識誘導エンジン140は、その文は学生が学位を取得したことを意味するのか、コースの認定を受けたのか、あるいは学生が教育されたのかを予測するための代替の意味を見つける。これらの選択肢の各々は、ストーリーのより広い文脈の範囲内で、各選択肢が、どれくらい可能性が高いかの確率値が付随されることがある。
高いレベルでは、知識誘導エンジンは、知識蓄積構成要素1302および知識誘導サービスエンジン1304を含む。知識蓄積構成要素1302は、既存の知識(たとえば、テキスト、画像、オーディオなどの非構造化されたデータ、および知識ベース、既存の論理などの構造化されたデータ)を統合すること、対話を通じて知識を蓄積すること、テンソル分解のような技法を用いた自動知識ベース完了、および知識誘導サービスエンジン1304内の構成要素を使用してデータから知識をマイニングすることを含む、様々な方法でデータ(ラベル付けされたものとラベル付けされていないもの)を蓄積する。知識蓄積構成要素1302は、データを処理し、導出されたリソースのセット、すなわち、誘導された知識リソース412を生成し、誘導された知識リソース412は、データによって暗示された情報または潜在的な情報をキャプチャする。
知識統合エンジン136および対話エンジン142からの要求は、要求された知識が利用可能であれば、誘導された知識リソース412および知識蓄積構成要素1302によってサービスされる。利用可能ではない場合、知識誘導サービスエンジン1304が、オンザフライで所望の知識を生成するために呼び出される。サービスは、これに限定されないが、以下に説明されるモジュール1306~1330を含む多数のモジュールを含む。
知識誘導エンジン140の1つの構成要素は、語義曖昧性を解消するために実行されることができる語義曖昧性解消器(word sense disambiguator)1306である。文、節、または他のテキスト文字列が与えられると、語義曖昧性解消器1306は、名詞、動詞、形容詞、副詞、および前置詞の意味を識別する。たとえば、名詞の場合、語義曖昧性解消器1306は、フォーマルダンスまたはスポーツ用具のいずれかの「ボール」という単語、または飛ぶ哺乳動物またはスポーツ用具の別の部分としての「バット」という単語を区別することができる。語義曖昧性解消器1306は、たとえば、訓練データ、大きいテキストコーパス410中の曖昧な語義、および大きいテキストコーパス410上で実行中のアルゴリズムから導出されたサンプル語義を含む、様々な方法でコンパイルされた意味注釈付きリソースを使用することができる。他の実装形態では、語義曖昧性解消器1306は、名詞、動詞、形容詞、副詞、または公に利用可能な前置詞意味目録のためのWordNetなどの既存の第三者の意味目録にさらにアクセスすることができる。
一実装形態では、語義曖昧性解消器1306は、ベクトル計算機1308および意味計算機1310を含むプログラム的ソフトウェアモジュールとして具体化される。ベクトル計算機1308は、意味定義内の構文トークンごとに異なるベクトル表現を生成し、センスベクトルを生成するためにベクトルを合計する。ベクトル計算機1308は、単語/語句を文脈として扱わずに文を処理し、縮小された文を構文解析し、構文トークンからベクトル表現を生成することによって、単語/語句の文脈ベクトルをさらに計算する。一実施形態では、トークン(単語ではなく)上で動作する単語埋め込みなどの、構文トークンごとのベクトルを作成するために埋め込みアルゴリズムが使用される。
意味計算機1310は、大規模言語コーパス410などの訓練データにおいて見出されるような周波数情報から意味ごとに事前に推定するために提供される。意味計算機1310は、意味ベクトル、文脈ベクトル、および事前の関数として単語/語句の意味を導出する。一実装形態では、意味計算機1310は、意味ベクトルおよび文脈ベクトルに対してコサイン類似関数を適用し、意味ベクトル、文脈ベクトル、および事前の3つの入力の各々に重み付けすることができる。
知識誘導サービスエンジン1304は、文またはテキスト文字列中の言い換えを見つけて認識するための言い換え検出器1312をさらに含むことができる。単語または語句の言い換えは、別の言葉または語句であり、異なる形で書かれているが、おおまかに同じ意味を有する。たとえば、「群衆が沸き立った」という語句は、「スタンドにおける拍手」という別の語句とほぼ同じである。言い換え検出器1308は、類似の語句を認識するために、大規模言語コーパス410および他のソースからの背景知識を使用する。
知識誘導サービスエンジン1304の別の構成要素は、単語または語句の関係を検出するための関係検出器1314である。関係検出器1314は、関係を有するかもしれない単語/語句を予測するために、コーパス410のようなタグ付けされたリソースからの背景知識を利用する。一例では、「ガソリン価格が下落し続ける」という語句おいて、「下降し続ける」という語句は、量を減少させる関係を有する。
テキスト含意検出器1316は、1つのテキストの部分が別のテキストを含意するか否かを決定するために、知識誘導サービスエンジン1304として実装されることもできる。エンティティ検出器1318は、単語のタイプを分類するために含まれることができる。欠落しているテキスト生成器1320は、ストーリーにおいて暗示されているが明確には言及されていないテキストを識別して作成する。テキスト埋め込み器1322は、単語/文/記事をベクトルに変換するために使用されることができる別のサービスである。ルールマイニングツール1324は、テキストから推論ルールを学習するサービスである。一実装形態では、ルールマイニングツール1324は、テキスト命題のみを含むルール、GSPのみを含むルール、2つを混合するルール(すなわち、言語から知識へのマッピングルール)などの異なるタイプの推論ルールをマイニングする。例示的な実装形態(頻繁なサブグラフマイニング手法に基づく)は、大規模言語コーパスから頻繁に共起するステートメントのセットを取り、インスタンスをタイプに一般化し(たとえば、語義曖昧性解消を使用して)、一般化されたテキスト命題を使用して潜在的な推論ルール候補を作成し、人間のユーザとの対話によって検証する。テキストマッチャ1326は、2つのテキスト部分を一致させるために使用されることができるサービスである。
知識誘導サービスエンジン1304は、どのタイプのシーンがテキストから推定されることができるかを予測するために、シーン解析器1328をさらに含むことができる。シーン解析器1328は、特定のシーンの下で最も人気のある語句を識別するために、知られているコーパス410および他のソースを調査する。一例として、「私は食べ物を注文してからコーヒーを飲んだ」というテキストがあるとする。シーン解析器1328は、「食ベ物」、「コーヒー」、「注文した」「食べ物を注文した」、および「コーヒーを飲んだ」などの単語/語句を含むシーンを検出するために、背景知識ソースを調査することができる。この例では、シーン解析器1328は、「コーヒーハウス」、「ダイナー」、「売店」、「ナイトクラブ」、「ベランダ」、「カフェ」、および「パティオ」などの可能性のあるシーンのランク付けされたリストを返すことができる。
知識誘導サービスエンジン1304は、背景知識から将来の意味素を予測するために、コーパス410および他のソース(たとえば、ウィキペディアのような非制約ソース)を訓練する、背景に基づいたコーパスベースの推論モジュール1330をさらに有する。議論の目的のための一例として、推論モジュール1330は、コーパス410内の主語-動詞-目的語(または、PAS)の組合せを調べ、どのような他の組合せがターゲットの組合せに最も密接に類似しているかを調査する。類似性は、テキスト内の密接性の関連性または可能性を計算するアルゴリズムをスコアリングすることなど、様々な方法で決定されることができる。たとえば、主語-動詞構造が「デイブが食べ物を食べる」を含むと仮定する。他の結果は、ランク付けされた順序で、「デイブは体重が増えた」(4点)、「デイブは体重が減った」(3点)、「デイブは批判を受ける」(3点)、「デイブは減量した」(2.5点)、「デイブはワインを飲む」(2.5点)、「デイブは緊張を乗り越える」(2.5点)を含むことができる。もう一つの例として、主語-動詞構造は「私は自動車を購入する」を含んでいたと仮定する。他の結果は、ランク付けされた順序で、「私はドルを与える」(6点)、「私は車の購入を繰り返す」(6点)、「私は手付金を払う」(6点)、私は証拠を払う」(5点)、および「私は車を取る」(4.5点)を含むことができる。
知識誘導エンジン140では、知識は知識蓄積構成要素1302の一部として知識テンソル1332に記憶される。テンソルは多次元キューブである。次元は、1つまたは複数のエンティティ次元、1つまたは複数の関係次元、1つまたは複数のフレーム次元、1つまたは複数の時間次元、1つまたは複数の空間次元、および1つまたは複数のシーン次元を含む(これに限定されない)。知識蓄積構成要素1302は、知識テンソル1332を定義し、それをポピュレートする知識取得および人口モジュール1334をさらに含む。図13においては、2つの軸に沿って表現された2つのエンティティ次元(たとえば、共通名詞、意味タイプなど)、および第3の軸に沿った1つの関係次元(たとえば、共通動詞)を有する、3次元キューブテンソル1336が示されている。キューブテンソル1336内の点は、所与の関係が2つのエンティティ間で保持する可能性を含む。この例では、あるエンティティが犬であり、もう1つのエンティティがリスであると仮定する。ここで、「追う」という動詞によって表される関係を表現するテンソルが、これら2つのエンティティに適用されると仮定する。リスを追う犬の結果は、高い確率をもたらす可能性が高い。逆に、テンソルが「従う」という動詞によって表される関係を表現し、その結果は、犬がリスに従うであると仮定する。これは依然として可能な結果であるが、犬が実際にリスに従っている間、犬は実際にはリスを捕まえる意図でリスを追っているため、「追う」よりも低い確率で評価される。
一実装形態では、知識誘導エンジン140は、利用可能なすべての知識を含むための1つのテンソルと、個々のアプリケーションをカバーするためのアプリケーション指向テンソルのセットとを含む。
1つの手法では、大量のテキストデータから可能性の高い常識的知識を検索するために、テンソルが使用されることができる。「学生が稼ぐ...」という語句においては、テンソルクエリツールは、「クレジット」、「度」などのテキストからいくつかの共通の候補を識別することができる。「プレイヤが稼ぐ...」という語句においては、テンソルクエリツールは、「ポイント」、「お金」などのテキストから他の共通の候補を識別することができる。これらの候補が見つかると、用語および用語のペアの類似性が計算されることができ、各用語がテンソル内のスライスとして表され、各用語のペアがテンソル内の列として表現される。関連付けられた推論確率を有する候補のランク付けされたリストは、ストーリーモデル132を現在の世界モデル138とアラインメントするのを助けるために、知識統合エンジン136によるクエリのために誘導された知識リソースリポジトリ412に記憶されることができる。
図14は、知識統合エンジン136によって行われる意味推論を援助するために、ストーリー内の単語/語句の意味および関係のための有力な候補を提供するために知識誘導エンジン140によって実行されるプロセス1400を示す。プロセス1400は、図1、図4、図5、および図13のシステムアーキテクチャ100および知識誘導エンジン140を参照して説明される。1402において、ストーリー(または、テキスト文字列)において見られる単語/語句を解析するためのクエリが受信される。アーキテクチャ100において、知識統合エンジン136は、意味的に処理された、または意味的に処理されるストーリーにおいて提供された単語のクエリを提出することができる。クエリは、単語または語句、単語/語句のトークン化バージョン、または単語/語句の他の表現を含むことができる。
1404において、単語/語句の可能な解釈を推論するために、クエリにおいて受信された単語/語句に対していくつかの解析が実行されることができる。これらの動作はオフラインで実行されることができるため、特定の語句の解析はすでに実行されており、結果は容易にアクセスできるように記憶されている可能性がある。他の状況では、解析は、オンザフライで、またはできるだけ早く実行されることができる。様々な形態の解析は、説明のための動作1406、1408、および1410によって表現される。
1406において、可能な意味を決定するために単語/語句に対して語義解析が実行される。単語/語句ごとに、意味定義を使用して異なるベクトル表現が作成され、可能な意味がそれらのベクトル表現の関数として計算される。より具体的には、語義解析1406の一実装形態が、動作1406(1)~(4)として示されている。1406(1)において、単語/語句ごとに意味ベクトルが作成される。意味ベクトルは、各意味定義の構文トークンを生成するために、最初に単語/語句に対応する意味定義を構文解析することによって計算される。これらの意味定義は、コーパス410または誘導された知識リソース412の一部であってよいルールまたは定義データストアにおいて維持されることができる。その後、対応するベクトルを生成するために、意味定義ごとのトークンがアルゴリズム的に処理され、意味ベクトルを生成するためにこれらのベクトルが加算される。
1406(2)において、意味ごとに事前に推定される。事前を推定するために、大規模言語コーパス410などの訓練データからの頻度情報が使用されることができる。1406(3)において、単語/語句ごとに文脈ベクトルが作成される。1つの手法では、文脈は、ホスト文から単語/位相を除去し、次いで単語/語句なしで文を構文的に解析することによって形成される。構文解析は、たとえば、埋め込み関数を使用して文脈ベクトルに変換される。1406(4)において、単語/語句に対する意味が、意味ベクトル、文脈ベクトル、および事前の関数として導出される。一実装形態では、コサイン類似関数が意味ベクトルおよび文脈ベクトルに適用されることができる。これらの3つの入力にさらに重み付けが適用されることができる。重み付けは、ロジスティック回帰などの教師付き学習アルゴリズムを使用して学習されることができる。
1408において、言い換え、関係、および/またはエンティティタイプを検出するために、クエリ内の単語/語句が解析される。大規模コーパス410または他のソースなどのタグ付けされたリソースからの背景知識は、解析中の単語/語句に適用することができる1つまたは複数の言い換え、関係、および/またはエンティティタイプを識別するために検査されることができる。1410において、テキスト含意検出、欠落しているテキスト生成、シーン解析、テキスト埋め込み、テキストマッチャなどの1つまたは複数の他のサービスが実行されることができる。
1412において、意味素は、大規模言語コーパスなどの背景知識ソースから予測される。背景プロセスとして、誘導エンジン140は、他のどのような組合せが関係しているかに関して、様々な主語-動詞-目的語(またはPAS)の組合せを調べるために、コーパスを解析することができる。関連性の値は、これらの組合せが大規模コーパスにおいてどのように関連する傾向があるかに基づいて計算されることができる。1414において、1404における解析を通じて他の方法で生成されなかった程度まで、解析によって発見された複数の解釈候補をランク付けするために役立つ確率が計算される。確率は、意味レベルおよびフレームレベルの理解を推論する際に適切な解釈を選択するために、クエリに応答して返され、知識統合エンジン136によって使用されることができる。
1418において、知識リソースのセットを生成するために、知識が蓄積される。関連付けられる確率を有するこれらのリソースのうちのいくつかは、システム内の他のモジュールによって容易に消費されることができるフォーマットまたは構造である。1つの手法では、3次元テンソル構造が使用される。テンソル構造では、異なる要素または値を使用して、3つのパラメータ(たとえば、2つのエンティティおよび1つの動作、1つのエンティティ、1つの事柄、1つの場所など)が評価されることができ、それらの反復ごとに確率が計算されることができる。上記の例で述べたように、犬(第1のエンティティ)とリス(第2のエンティティ)を含むストーリーが、おそらく「犬がリスに従う」よりも、「犬がリスを追う」としてそれらの間の関係を表す高い確率を有することを発見するために、2つのエンティティと1つの動作関係を有するテンソルが使用されることができる。
1420において、リソースは、誘導された知識リソースリポジトリ412などのアクセス可能なデータストアに記憶される。
説明のためのフレームワーク
図15は、信念表現および推論フレームワーク144の例示的な実装形態を示し、これは、知識表現言語ならびに文脈差別化および意味素の推論および学習メカニズムなどの、システム全体で使用される基本的な構成要素のセットである。フレームワーク144は、システムが時間の経過とともに確率的命題(または、「信念」)を記憶、索引付け、検索、ナビゲート、および操作することを可能にする。
一般に、フレームワーク144は、信念管理システム1502と、知識データベース1504と、知識表現(KR)言語定義モジュール1506とを有する。信念管理システム1502は、KR言語定義モジュール1506に従って表現される命題(または、「信念」)を記憶および問い合わせるためのソフトウェアベースの機能の集合である。知識データベース1504は、知識および推論をデータとして扱い、これらをオントロジ的に独立した単純で高速なデータ構造として公開する、特徴ストア、グラフデータベース、知識ベースなどである。一実装形態では、知識データベース1504は、高速のJava仮想マシンベースのメモリ内概念データベースとして具体化される。
KR言語定義モジュール1506は、共通の構文、最小の意味論、命題間の関連の程度、および共通の命題のタイプに対する共通の意味論的モジュールを含む、エンティティおよび命題を表現するための定義された言語のルールを維持する。KR言語は、コア表現言語1508と共通意味論的モジュール1510の2つの部分からなる。コア表現言語1508は、エンティティおよび命題をどのように表現するか、ならびに命題間の関連の程度について、構文および最小限の意味論を定義する。共通意味論的モジュール1510は、頻繁なタスクに使用されるタイプの命題である。一実装形態では、共通意味論的モジュール1510は以下を備えることができる。
・論理演算子:および、または、非、暗示する、iff。
・記述と役割:エンティティは、他のエンティティ(インスタンス)を包含する記述(クラス)の役割を果たすことができる。KR言語における任意の述語について、役割が宣言されることができ、役割を満たす概念の予想されるクラスに関する情報が提供される。
・名前:任意の概念は名前を有することができる。
・集合:エンティティは、他のエンティティの集合を表現することができる。これは、物の任意の集合(拡張子)と、メンバーを説明する記述(意図)との間に対応があるという点で、説明に関連する。
・不確実性:命題が真である関連する確率を測定する。
・時間:命題が真であると評価される指標。
・信念:動作主が何の命題を、およびいつ信じているかの表現。
説明のための対話エンジン
図16は、対話エンジン142の例示的な実装形態を示し、ストーリーに対するシステムの現在の理解に挑戦および/または確認するためのユーザ質問を生成し、システムの理解を修正するために意味構造およびフレームにおいて実装される解釈を改訂および拡張するためのユーザ応答を受信するために使用されることができる選択構成要素を示す。対話システム142は、コンピュータシステム102が、個々の人間のユーザとの拡張された対話を行うことを可能にする。各対話セッションは、1人のユーザのみを含むシリアル線形対話として、または質問を複数の人間のユーザに並行して分散させるための分散された方式で実行されることができる。分散された対話は、異なるユーザに質問するために対話セッションの内容を逆構成し、線形対話と本質的に同じまたは同様の学習結果を達成するために結果を再構成する、柔軟な対話管理を適用する。分散された対話セッションにより、コンピュータシステム102が、質問の認知的負荷を管理することによって、多数のユーザにわたって拡張し、それによって複数のユーザとの並列化された対話を通じて学習プロセスの待ち時間を短縮することが可能になる。
共同学習プロセスにおける対話の相互作用は、2つの目的のうちの1つに役立つ場合がある。第1はシステム学習をサポートすることであり、第2はユーザ学習をサポートすることである。最初のケースでは、システムが十分に自信を持ってストーリーをGSPに適切にマッピングしない場合や、ストーリーを完全に理解するために必要な推論を作成できない場合がある。これらの場合、システムは、タスクを達成するために、欠落している情報を要請するようユーザに質問をする。この学習プロセスを通じて、システムは、知識の将来の適用における正確性を保証するために、学習したことを一般化、専門化、または確認するために、追加の徹底的な質問をすることができる。システム学習戦略の例は、要請、確認、一般化/専門化を含む。要請は、対話エンジンがユーザにシステムの理解を完了させるためにギャップを埋めるように求める戦略である。たとえば、システムは「ストーリーは「ベンがアバをテーブルに案内しました」と言っている。この文脈において「案内する」が何を意味するのか説明できますか?」と尋ねることができる。この場合、有益なユーザは、「それは、「ベンがアバをテーブルに案内しました」という意味です」など、システムの理解を助けるために文をより単純な用語に言い換えることができる。
確認は、システムの信頼性が低いストーリーについて行われた解釈/推論を確認または検証するための戦略である。たとえば、システムは、「「ベンがアバをテーブルに案内しました」は、「ベンとアバが歩いていき、次いで、両者はテーブルの近くにいます」を意味します。それは正しいですか?」という質問をすることができ、または、ベンとアバのストーリーにおいて、システムは「私はアバが請求書を支払ったと思います。それは正しいですか?」などの推論された動作を確認することができる。一般化/専門化は、システムがいくつかの新しい情報を学習した後、システムの理解を高めるために、追加の徹底的な質問をすることを試みる戦略である。たとえば、システムは「アバは顧客であるため、請求書を支払ったのですか?」(はい)「顧客はいつもスパゲッティを食べますか?」(いいえ)「顧客はいつも食べ物を食べますか?」(レストランにおいて、はい)「顧客はいつも請求書を支払うのですか?」(はい)と尋ねることができる。一般化および専門化から得られたこの追加知識は、システムが将来的に適切な環境において知識を適用するのに役立つ。
ユーザの学習をサポートする場合、システムの役割は、ユーザがストーリーまたはその理由をより良く理解するのに役立つ質問をすることである。システムがここで尋ねる質問のいくつかは、以前に議論されたものと類似している場合があり、主な違いは、今はシステムがそれらの質問に対する答えを知っていることである点に留意されたい。ユーザ学習のためのいくつかの例示的な戦略は、比較/区別、一般化/専門化、および推論を含む。システムは、ユーザの能力に対するその読取り能力に応じて、これらの2つの動作モードの間を自動的に切り替えることができる。
比較/区別において、対話エンジンは、ユーザが同様のケースを区別するのに役立つ質問をする。たとえば、システムは「「ベンがアバをテーブルに案内しました」は、「ベンとアバはテーブルまで歩いた」を意味します。「ベンがアバにテーブルを見せた」は何を意味するか教えてくれませんか?」と尋ねることがある。一般化/専門化では、システムは、ユーザが知識を一般化/専門化するのに役立つ質問をする。たとえば、システムは「ストーリーにおいて言及されていないレストランでは、顧客は他に何をするのですか?」、または「すべてのレストランにウェイターがいますか?」と尋ねることができる。推論戦略の場合、システムは、ユーザがストーリーにおいて暗黙である推論を行うのを助けるために質問をすることができる。たとえば、「アバが請求書を支払って、ベンを高額のチップを渡した」と読んだ後、システムは「アバは、ウェイターとしてのベンのサービスに満足していると思いますか、それはなぜですか?」と尋ねることができる。
再び図16を参照すると、対話エンジン142は、ストーリーモデル132と現在の世界モデル138との間のギャップを埋めるために、知識統合エンジン136から要求1602を受信する。要求は、解決されるべきギャップ、確認されるべき信頼性の低い解釈、またはシステムが現在のストーリーをより良く理解するのを助けることができる他の側面に関する情報を含むことができる。特定の語義に関する質問がある場合、たとえば、その要求は、単語、その単語を含む文、その単語が有することができる複数の意味、それらの意味が文中で正しい選択肢である確率、ストーリーアイデンティティなどを含むことができる。ベンとアバのストーリー106における、「ベンがアバに食べ物を持ってきました」という文を考察する。知識統合エンジン136が、「持ってきた」という単語、またはその原形の「持ってくる」という単語に対してどの語義が最も適切なものであるかについて、より多くのことを学習したいと仮定する。要求1602は、完全な文、「持ってくる」という単語、「持ってくる」の様々な意味などを含むことができる。
知識統合エンジン136から要求が受信されると、対話エンジン142は、学生110および彼/彼女のデバイス118と、彼/彼女のデバイス114を有する協力者によって表現されるように、人間のユーザとの1つまたは複数の対話セッション1604を開始する。対話セッション1604の間に、対話エンジン142は、人間のユーザによる考察および入力のためにユーザデバイスへの質問を生成し、送信し、人間のユーザによってユーザデバイスに入力された応答を受信し処理する。
図16に示されるように、対話エンジン142は、ストーリーモデル132と現在の世界モデル138との試行されたアラインメントに基づいて質問を作成し、それらの回答を取得するために1人または複数の人間のユーザと対話する、実行可能な構成要素のセットである。ユーザの質問は、システムが現在のストーリーモデル132に十分な信頼性を有しておらず、ストーリーモデル132を現在の世界モデル138に確実にアラインメントすることがまだできない場合に発生するギャップを埋めるまたは解消するように定式化されるか、知識の将来の適用を容易にするために新しい情報を一般化/専門化しようとする。対話エンジン142は、読解力の質問をさらに利用し、および/または、ストーリーに対する新しい質問を生成することができ、そのような質問は、システムの現在のストーリーモデルと現在の世界モデルとの間のギャップが、その文脈でのストーリーを完全に理解するには不十分であることを識別するために役立つ。
対話エンジン142は、対話セッション1604の間に人間のユーザに提示される質問を定式化するためにユーザ質問生成器1606を有する。ユーザ質問生成器1606は、知識統合エンジン136から要求1602などの要求を受信し、要求に関連する情報を発見するための質問を作成する。一実装形態では、ユーザ質問生成器1606は、自然言語生成エンジン1607という依存構造ビルダ1608とを有する。自然言語生成エンジン1607は、自然言語でのストーリーモデルおよび現在の世界モデルから信念をレンダリングするために使用される。自然言語生成エンジン1607は、知識のないユーザが理解できる自然言語を生成するために、構文情報、GSPに関連付けられる自然言語テンプレート、および知識統合エンジン136からの背景コーパス情報を利用する。依存構造ビルダ1608は、要求1602のデータから依存構造1610を構築するために提供される。依存構造1610は、システムが、互いに独立しており、並行して追求されることができる対話の部分を決定することを可能にする方法で対話を表現するために使用されることができる。依存構造はまた、システムが、質問を解釈し回答するための対話コンテキストを推論することを可能にし、これは分散された対話設定において重要である。この構造では、ルートノードは親質問を表現し、ルートノードから分岐する各子ノードは、親質問に対する回答に基づく可能性のある補足質問を表現する。この表現を使用して、子ノードはそれらの親ノードに依存するが、兄弟ノードは互いに独立している。
図示された例では、ルートノードは、要求1602において受信された「持ってくる」という語義(WS)の質問に関係する。このルートノードから、「取る」(すなわち、意味選択肢1:「何か、または誰かをどこかに連れて行く」)「させる」(すなわち、意味選択肢2:「特定の状態または状況に陥らせる」)、および「合法的」(すなわち、意味選択肢3:「合法的に提示または説明する」)を含む、要求において受信される3つの意味のための3つの子ノードが示される。したがって、依存構造1610の根本的な質問(RQ)は、単純に「ベンがアバに食べ物を持ってきました」という文において、「持ってくる」という単語のどの意味が最も可能性が高いかを尋ねることであることができる。その回答に応じて、質問Q1~Q6として表現される補足質問は、人間のユーザが最初に選択する語義に応じて尋ねられることができる。ユーザが「取る」の選択肢を選択した場合、補足質問はQlとQ2になり、動作の前の状態が何であったか、および動作の後の状態が何であるかに関する質問を含むことができる。
図17は、(図16の構造1610のような)依存構造1700の別の例をより詳細に示しているが、今回は、「大きな雨滴がクロエの顔に落ちました」という例文を使用している。この例では、依存構造1700は、文中の「fell」という単語の意味などの、文自体についての質問をするように構築されている。親ノード1702は、文中の「fell」の原形として「fall」という動詞を含む。関連付けられる語義は、親ノードから可能な分岐を形成する。第1の分岐1704は、「fall」という単語の第1の意味に対応し、「重力の影響下で自由落下して降下する」ことを意味する。サンプル文の正しい語義を表現する第1の分岐1704は、自由落下の対応する語義に暗示される可能性のある事実または関係に関する質問を示唆する第1の子ノード1706につながる。ここで、第1の子ノード1706は、雨滴が落ちる前に起こったことについての質問をすることを示唆する(すなわち、尋ねる:前の状態-「落ちる前に雨滴はどこにあったか?」)、ならびに、雨滴が落ちた後に起こったことについての質問(すなわち、尋ねる:後の状態-「落ちた後の雨滴はどこにあったか?」)。
第2の分岐1708は、「敗北する」という意味を有する「fall」という単語の第2の意味に対応する。この分岐1708は、敗北の対応する語義に暗示される可能性のある事実または関係に関係する質問を示唆する第2の子ノード1710につながる。第2の子ノード1710は、「誰が敗北したか?」(すなわち、質問:誰が)、および「どのように彼らは敗北したか?」(すなわち、質問:方法)のような質問を尋ねることを示唆する場合がある。第3の分岐1712は、「fall」という単語の第3の意味に対応し、「分類される、または含まれる」ことを意味する。第3の子ノード1714は、第3の分岐1712を終了させ、「どの目的語が分類されているか」(すなわち、質問:目的語)、および「クラスは何ですか?」(すなわち、質問:クラス)などの、分類に関連する補足質問を尋ねることを示唆する。第4の分岐1716は、「指定された時間または場所で発生する」ことを意味する「fall」という単語の第4の意味に対応する。この第4の分岐1716は、ある時間または場所で発生する対応する語義に暗示される可能性のある事実または関係に関する質問を示唆する第4の子ノード1718につながる。第4の子ノード1718は、「どのようなイベントが起こったか」(すなわち、質問:イベント)、または「いつ行われたか」(すなわち、質問:時間)、あるいは「どこで起こったか」(すなわち、質問:場所)のような質問をすることを示唆することができる。
別のシナリオでは、ユーザに対するシステムの質問は、単一の文がどのように解釈されるべきかに直接関係しないが、むしろ文中で伝達される情報がシステムのストーリー全体の話の理解にどのように統合されるべきかに関連する場合がある。たとえば、この場合の親ノードは「クロエの場所」であり、対応する質問「クロエは屋内にいるか、屋外にいるか」を有することができる。ユーザが「屋内」を選択した後の質問は、「屋内で雨が降っているのはなぜですか?」(クロエはストーリーにおいて熱帯雨林にいる)であってよく、ユーザが「屋外」を選択したときは、「私は、ストーリーにおいては雨が降っていると思います。それは正しいですか?」であってよい。システムがストーリーから学習した情報の確認、要請、一般化、および専門化を試みるシナリオでも、同様に依存構造が構築されることができる。
したがって、依存構造1700は、知識統合エンジン136から受信した様々な要求ごとに構築されることができる。依存構造1700は、探索される情報の一部であることが知られている様々な要素間の関係を提供し、それによって、対話エンジンが人間のユーザと関わるための適切な質問を定式化することが可能になる。
再び図16を参照すると、依存構造ビルダ1608によって構築された依存構造1610は、ユーザとの対話セッション1604のための構造を編成する質問待ち行列エンジン1612に提供される。質問待ち行列エンジン1612は、待ち行列に記憶された複数の依存構造1610(1)~(Q)を有するように示されており、各依存構造は、構造1610(1)内の質問Q1~Qnおよび構造1610(Q)内の質問Q1~Qmによって表現されるように、その中に1つまたは複数の質問を有する。各依存構造は、1602などの要求の全部または一部を満たすために、ユーザから情報を要請するためのシステムの試みを表現する。質問は、ユーザに提示するために利用可能にされることができる順序付けられたリスト1614において維持されることができる。
待ち行列エンジン1612は、順序付けられたリスト1614内の質問を、対話セッション1604の間に人間のユーザに提出するために、質問ディスパッチャ1616に提供する。セッション1614の間、質問ディスパッチャ1616は質問をユーザデバイス114/118に送信する。質問ディスパッチャ1616は、質問をリスト1614から線形交換において単一のユーザに、または並行した方法で複数のユーザのいずれかに、連続的に送る。質問ディスパッチャ1616は、単一のユーザとのセッションを容易にする線形ディスパッチャ1618を含む。一例として、線形ディスパッチャ1618は、ベンとアバのストーリーの内容に関して単一の協力者と関わることができる。線形ディスパッチャ1618は、依存構造1610のルートノードから導出された「持ってくる」という単語の意味に関する第1の質問を定式化することができる。質問は、以下のように、ユーザデバイスUI上にディスパッチされ提示されることができる。
ここに私が理解しようとしている文があります:
ベンがアバに食べ物を持ってきました。
以下の選択肢のどれが、上記の文に最も類似して「持ってくる」という単語を使用していますか?
1.何か、または誰かをどこかに連れて行く。
2.特定の状態または状況に陥らせる。
3.合法的に提示または説明する。
これは、たとえば対話UI126として図1に示される。この初期質問の後、ユーザが選択肢1の回答を返すと仮定する。
質問ディスパッチャ1616によってユーザから受信された応答は、どの補足質問をするべきかを解析するために待ち行列エンジン1612に返される。ユーザが、「持ってくる」という動詞のための選択肢(たとえば、「持ってくる」という動詞に対する語義「連れて行く」)を選択すると、待ち行列エンジン1612は、新しい質問を決定するために、その選択された選択肢の分岐に沿って適切な依存構造を検討する。次いで、ディスパッチャ1616がユーザに送出するために、新しい質問が対話リスト1614に追加される。ベンとアバのストーリーを続けると、同じ協力者に提示して返されるべき適切な後続の質問は次のようになる:
アバに持ってこられる前の食べ物はどこにありますか?
アバに持ってこられた後の食べ物はどこにありますか?
選択肢がされることができる場合には、これらの質問ごとに複数の選択肢回答が提供されてもよく、ユーザが単純に回答を追加するための自由な対話ボックスが提供されてもよい。1つの例示的なUIのセットが、図19~図21を参照して以下により詳細に示され、説明される。
質問ディスパッチャ1616は、代替で、分散されたディスパッチャ1620を通じて、質問を複数のユーザに並行して分散させることができる。分散されたディスパッチャ1620は、質問を分離して複数のユーザに並行して分散する。分散されたディスパッチャ1620は、同じ質問を複数の人に、または異なる質問を異なる人に尋ねることができる。分散された対話セッションの例は、図22~図24を参照して以下でより詳細に提供される。
図17に示される「大きな雨滴がクロエの顔に落ちました」という文を用いた後続の質問の別の例は、たとえば、以下を含む:
対話エンジン:「大きな雨滴がクロエの顔に落ちました」における「fall」の意味は何ですか?(複数の選択肢がある)
ユーザ:選択肢1-重力の影響を受けて降下する
対話エンジン:「fall」の前の雨滴の状態は何ですか?
ユーザ:それは空にあります。
対話エンジン:「fall」の後の雨滴の状態は何ですか?
ユーザ:それはクロエの顔の上にあります。
落ちる前後の雨滴の状態に関連する2つの後続の質問は、線形対話ディスパッチャ1618によって同じ人に線形にディスパッチされてもよく、分散された対話ディスパッチャ1620によって2人の異なる人々に並行してディスパッチされてもよい。
質問ディスパッチャ1616はまた、ユーザからの応答を回答アグリゲータ1622に送信し、回答アグリゲータ1622は、対話セッション1604から返された質問/応答のペアから取得された情報を連続的に集める。質問/応答のペアは、尋ねられた質問と与えられた回答とを関連付けるデータ構造1624として記憶されることができる。図示された例では、データ構造1604は、質問/応答のペアを形成するために各質問1626を応答1628と関連付けることができ、質問/応答のペアはストーリーアイデンティティ1630にさらに関連付けられる。また、ユーザ参照アイデンティティ、日付/時刻スタンプ、使用される様式などの追加情報も記録されることができる。対話セッション1604が完了されると、質問/応答データ構造1624に組み込まれた集約された情報は、人間と対話することによって学習された結果に対応する。質問/応答データ構造1624は、現在の世界モデル138に統合され、ストーリーモデル132とさらにアラインメントするために、知識統合エンジン136に返される。
対話システム142は、システムがより多くを学習するにつれて、複数の文または複数のストーリーにわたって働く質問をさらに構成することができる。たとえば、上記のクロエの例では、対話システム142は、「大きな雨滴がクロエの顔に落ちました」という文において使用されているように、「fall」という単語の意味の周囲に質問の1つのセットを尋ねた。しかし、クロエについてのストーリーは、「クロエが滑って泥の中に落ちました」という別の文を有すると仮定する。知識統合エンジン136は、この文中の「fell」という語の使用を調べ、最初の文中の「fell」という語の使用と対照することを望む場合がある。この第2のクロエの文に対する依存構造が構成されることができ、対話エンジンが次のように連続する線形対話セッションにおいてユーザを関与させる質問をすることができる:
対話エンジン:「クロエが滑って泥の中に落ちました」における「fall」は、「大きな雨滴がクロエの顔に落ちました」と同じように使用されていますか?
ユーザ:いいえ。
対話エンジン:「クロエが滑って泥の中に落ちました」における「fall」の意味は何ですか?(複数の選択肢質問が提供される)
ユーザ:突然直立姿勢を失うことです。
対話エンジン:「fall」の前のクロエの状態は何ですか?
ユーザ:彼女は直立していました。
対話エンジン:「fall」の後のクロエの状態は何ですか?
ユーザ:彼女は地面の上におり、泥の中にいます。
システムが学習し、知識統合エンジンが単語/語句、意味、およびフレーム間の関係をますます発見すると、対話エンジンへの要求はより複雑になる可能性がある。対話エンジン142は、次第により洗練された質問を作成するために、これらの要求を使用することができる。対話エンジン142は、語義、ならびに事実および関係を満たすこと以外に、ストーリーにおけるフレームの完全性を調査し始める質問をすることができる。
したがって、一実装形態では、対話エンジン142は、単語およびフレーム意味表現を取得するための基本学習モードから、人間の学生とともにストーリーを読み、ストーリーの難しいパッセージに遭遇したときに質問をするインタラクティブモード、ならびにそれらの間の複雑性を伴う対話の他のモードに至るまでの複数の動作モードを有するシステム-イニシアチブ対話システムとして具体化されることができる。学習モードでは、知識統合エンジン136および対話エンジン142は、文中の個々の単語および基本的なフレーム表現の基本的な意味を学習するためにユーザを関与させる。これは、最も一般的に使用される単語、たとえば、6~7才の文法の学生によって通常知られているトップ動詞および名詞などを学習することから始まる。これらの単語は、適切な語義が、それらの意味を有する単語が通常どのように文法的に振る舞うのかとともに学習されることを確実にするために、サンプル文脈の中で学習される。次いで、それらの目標単語に対する学習された意味表現は、目標単語に対する一般的な意味表現を生成し、次いで将来の文を解釈するための基礎となるために、一般化プロセスを経る。
基本的なフレーム表現を発見するために、学習モードがさらに使用されることができる。これを行うために、対話エンジン142は、たとえそのような理解が明確に説明されていなくても、ユーザがストーリー内で起こっていることを理解する上での議論において人間のユーザを関与させる。対話エンジン142は、誰が関与しているか、どこでストーリーが起こっているか、ストーリー要素がどのように展開しているか、または振る舞っているか、いつストーリーが展開しているかなどの、ストーリーに関する一般的な質問を作成することができる。たとえば、ベンとアバのストーリーにおいて、対話エンジン142は、「このストーリーを読んだ後、ベンとアバがどこにいたかを言うことができますか?」のような質問を提起することができる。ユーザは、「レストラン」または「パブ」にいたと回答することができる。対話エンジンは、「レストラン(または、パブ)だったことをどうやって知ったのですか?」のような別の質問を構成するために、この応答を使用することができる。ユーザはさらに「ベンがアバをテーブルに案内し、彼女にメニューを与え、彼女に食べ物を持ってきたからです」と応答することができる。
この人間の対話から、コンピューティングシステム102は、1人の人間が第2の人間をテーブルに案内し、第2の人間にメニューを与え、第2の人間に食べ物を持ってくるどうかを学習することができ、それは第1の人間と第2の人間がレストランにいる可能性が高いことを意味する。知識統合エンジン136は、フレーム表現を改訂および更新するために、この学習された情報を使用する。場合によっては、知識統合エンジン136は、エピソードに編成されグループ化されることができるフレームを構築することによって、抽象的なスクリプトまたはエピソード(たとえば、図11におけるエピソード1102)を書くために、このユーザのフィードバックを利用することができる。1つの手法では、抽象的なフレームがすべての名詞に対して構築されることができ、次いで、複数のフレームがエピソード内で使用されることができる。
フレーム意味論のためのより高いレベルの情報を引き出すように設計された、より一般的な質問を作成するもう一つの例として、図1においてストーリー106(T)として紹介されたエンツォとゾーイのストーリーを再度考慮する。ストーリーは次の通りである:
エンツォとゾーイは競走していました。エンツォが転びました。彼は膝に怪我をしました。ゾーイは振り返りました。彼女はほとんどゴールにいました。彼女は勝つことを望んでいました。彼女が走っていたら勝っていたでしょう。エンツォは彼女の友達です。ゾーイは止まりました。彼女はエンツォの元に走って戻りました。彼女は、彼が起き上がるのを助けました。「ありがとう」とエンツォが言いました。「どういたしまして」とゾーイが言いました。「私が転んだら、あなたに私を助けて欲しいです。私はあなたを助けることができてうれしいです。」
このストーリーから、知識統合エンジン136は、一般に「競走」が何であるかについてもっと知るための要求をすることができる。要求において、知識統合エンジン136は、「競走」についての語義、「競走」という用語を使用する任意の意味構造およびフレームなどの、それが知っている限り多くの情報を提供することができる。そこから、対話エンジン142は、ユーザから知識を抽出するための1つまたは複数の質問のセットを生成する。たとえば、質問の1つの例示的なセットは、以下の質問Q1、Q2、およびQ3を含むことができる。
Q1:私は、このストーリーが競走について話していることはわかります。これらのうち、通常競走に関連するものはどれですか?
a.参加者
b.競走の勝者
c.競走の終了を示すゴール
これらの選択は、知識統合エンジン136からの要求において、他のストーリー、フレーム、コーポレート等における単語「競走」の他の使用から知られているものとして提供されることができる。
Q2:ストーリーにおいて、誰がこれらのことを行っていますか?
a.参加者
b.勝者
これらの選択は、タイプ情報および知識誘導エンジン138の誘導プロセスから生成されることができる。
Q3:競走において、通常これらの動作のうちのどれが発生しますか?
a.参加者が競走する
b.参加者が勝つことを望む
c.参加者が転ぶ
d.参加者がゴールすることで競走が終了する
これらの選択は、第2の質問Q2回答する際にユーザによって提供された情報を使用することによって、または、大規模な背景コーパスから統計的な関連付けをマイニングすることによって、ストーリーにおける名前付きエンティティを、概念/役割に置き換えることによって生成されることができる。
この対話に続いて、システムは、典型的な動作主およびそれに関連する動作などの、競走のフレームに関する新しい知識を有する。競走のフレームは完全ではない場合があるが、依然として有用である。競走のフレームは、システムが競走に言及した他のストーリーに遭遇すると、さらに構築され、満たされることができる。
図18は、意味構造およびフレームにおいて現時点で反映されているストーリーに対するコンピューティングシステムの現在の理解に挑戦するために人間のユーザに提出するための質問を生成するためのプロセス1800を示す。プロセス1800は、図1、図4、図5、および図16のシステムアーキテクチャ100および対話エンジン142を参照して説明される。上記のように、プロセス1800は、ユーザデバイス114および118によって実行される動作とは別にシステム102によって実行される動作を概略的に示すために、2つの列において示される。
1802において、上述のように質問の定式化をトリガすることができる情報を識別するために、知識統合エンジン136からの要求が受信される。これらの要素は、ストーリーモデルと現在の世界モデルとの間のギャップを埋めることと、現在の解釈に対するシステムの信頼性を改善することとを行うために使用されることができる欠落している情報を含むことができる。要求は、単語または意味構造に関する知られている情報または現在の仮定を提供するが、システムの現在の解釈を検証するためにユーザからのさらなる情報を求める。
1804において、要求に関連する欠落している、または検証する情報を発見するために、1つまたは複数の質問が生成される。一実装形態では、1806において、質問の生成は、システムが質問を解釈して回答するための対話コンテキストを推論することを可能にする依存構造を構築することを含むことができる。依存構造は、対話エンジンがオープニング質問および後続の質問をするために論理的に構造を検討することを可能にするために、ルートノードと子ノードへの分岐とを有するツリータイプのデータ構造として具体化されることができる。そのような依存構造の1つが、図17を参照して示され、説明される。1807において、自然言語生成エンジン1607は、ストーリーモデルおよび現在の世界モデルから信念をレンダリングするために、構文情報、GSPに関連付けられる自然言語テンプレート、および知識統合エンジンから渡された背景コーパス情報を使用する。このように、質問は、専門家以外のユーザが理解できる自然言語で形成される。
1808において、依存構造によってサポートされている質問は、後でユーザに分散されるように待ち行列に入れられる。質問が規則的な方法で尋ねられ、回答が受信されるように、質問はリスト内でさらに優先順位をつけられることができ、特定の依存関係の質問が、もはや質問する必要がなくなったリストから削除されることができる。質問は、質問に対する回答を取得する有用性など、様々な指標に基づいてランク付けされることができる。質問に対する回答は、回答選択肢に対するシステムの信頼性などの様々な指標に基づいてランク付けすることもできる。
1810において、コンピューティングシステム102からネットワークを介して質問をユーザデバイス114/118に送信することによって、1つまたは複数の質問がユーザに提起される。1812において、対話UIなどにおいて質問がユーザに提示される。1814において、ユーザ入力が収集され、応答がユーザデバイスからコンピューティングシステム102に返される。
1816において、応答は、次に質問される可能性のある質問を決定するために処理される。さらに、1818において、応答は集約され、現在の世界モデルを更新する際に使用するために知識統合エンジンに返される。
別の実装形態では、どのインスタンス化されたGSP構造およびフレーム構造がストーリーモデル132に追加されるべきか、または現在の世界モデル138への更新とするべきかを決定するために、対話手法が使用されることができる。知識統合エンジン136は、構成文法に従ってGSP構造のライブラリを組み合わせることによって、可能なインスタンス化されていないGSP構造の空間を探索することによって、どのGSP構造およびフレーム構造がストーリーにおける自然言語テキストの真の解釈であるかを決定する。次いで、これらのGSP構造は、知識誘導エンジンを介してアクセスされる背景コーパスから提案されたエンティティと同様に、ストーリーからのエンティティでインスタンス化される。インスタンス化されたGSP構造は、自然言語生成エンジン1607を使用して自然言語でレンダリングされる。インスタンス化されたGSP構造の自然言語レンダリングは、たとえば、知識誘導エンジン140からのテキスト含意検出器1316などの、テキスト含意またはnグラムリソースを含む様々なリソースを使用してフィルタリングされる。
元のテキストは、インスタンス化されたGSP構造のフィルタリングされた自然言語レンダリングとともに、対話エンジン142を介して1人または複数のユーザに提示される。知識統合エンジン136は、どのGSPインスタンス化構造がどの信頼性でストーリーモデル132に追加されるべきかを決定するために、ユーザの応答を解析し、信頼性、確率、およびしきい値解析を実行する。その結果得られた信念は、次いで一般化され、現在の世界モデル138に統合される。このように、知識統合エンジン136は、GSP構造およびフレーム構造をインスタンス化することを介して、言語/テキストを知識にマッピングするための一般化されたルールを自動的に作成し、スコア付けし、改良するための手法を実装する。知識統合エンジン136はさらに、GSP言語における、および/またはフレームとして語彙-構文的-意味論である言語マッピングルールを符号化するために、メカニズムを提供することができる。対話セッション中に抽出されたユーザのフィードバックは、言語マッピングルールを評価し、改訂するために使用されることができる。
テキスト解釈およびテキスト-GSPルールに加えて、システム102は、常識-意味推論ルールを抽出するための方法を採用する。含意と関連付けは、所与のテキストの真の解釈として確認されたGSP構造の間で仮定される。これらの含意および関連付けは、確認のために一般的な形式でユーザに提示される。これらの一般的な命題が確認された場合、将来の確認と洗練のために、追加の例が検索され、ユーザに提示される。
説明のための対話ユーザインタフェース
図19は、コンピューティングシステムとユーザとの間の対話を容易にする対話ユーザインタフェース(UI)1900を示す。図19に示されるUI、および以下の他のものは、議論の目的のために提供される例である。様々なタイプの質問が生成されるので、実際のインタフェースは、図19における外観とは異なる場合がある。たとえば、1つまたは複数のグラフィカルな特徴は、異なるように見えてもよく、または質問、どの情報が求められているか、ユーザのスクリーンのサイズ/タイプなどに応じて、完全に省略されてもよい。
図19において、対話UI1900は、コンピューティングシステム102と人間のユーザとの間の対話セッション1604中にユーザによって見られる、コラボレータのデバイス114(1)などのユーザのデバイス上に表示されることができる第1のスクリーンレンダリング1902として示されている。スクリーンレンダリング1902は、ブラウザ内でレンダリングされるウェブページとして示されている。しかしながら、上記のように、これは単に1つの可能な実装形態であり、プレゼンテーションおよび電子ユーザによる質問の入力を容易にするために、他の技術が採用されることができる。
スクリーンレンダリング1902は、左側に沿ってグラフィカル対話インタフェース1906を含む主領域1904を含む。グラフィカル対話インタフェース1906は、ボックス1908および1910などの一連の対話ボックスを有する。対話ボックスは、グラフィカルな表示を通じてソースに帰属されるように示され、上部ボックス1908はコンピュータシステムに由来するものとして帰属されており(他の記号が使用されることができるが、蝶のアイコンによって表現されるように)、下部ボックス1910はユーザに由来するものとして帰属されている(ユーザアイコンによって表されるように)。この例では、システムは、例示的なベンとアバのストーリーにおける「ベンが食べ物をアバに持ってきました」という文から「持ってきた」という単語を理解しようとしている。「持ってきた」という単語の意味について学習するための質問は、以下のように、上部対話ボックス1908に提供される。
そこで、ここに私が理解しようとしている文があります:
ベンがアバに食べ物を持ってきました。
以下の選択肢のどれが、上記の文に最も類似して「持ってくる」という単語を使用していますか?
次いで、可能な回答に対する複数の選択肢を提供する応答テンプレートが、第2の対話ボックス1910に配置される。この例では、選択肢は以下を含む。
1.何か、または誰かをどこかに連れて行く。
2.特定の状態または状況に陥らせる。
3.合法的に提示または説明する。
(ユーザアイコンによって視覚的に表現されるように)ユーザに帰属している間に、対話ボックス1910は、コンピュータシステムから受信された複数の選択肢のコンテンツで埋められている。ユーザ帰属は、「持ってきた」という単語の語義のこのトピックについてコンピュータシステムに返答を提供するために、選択肢のうちの1つをユーザが選択していることを伝える。応答対話ボックス1910は、他の選択肢を要求するための「その他」、この時点でストーリーが明確でないことを示すための「指定されていない」、および、ユーザが、質問に対する回答が不明な場合の「スキップ」の、一般的な動作項目をさらに含む。
また、主領域1904には、右側に沿ってアラインメントされた任意のグラフィカルボックスがある。グラフィックボックスは、どのストーリーが議論されているかを識別するためのストーリー記述ボックス1912と、考慮されているストーリーに対するシステムの現在の理解を要約するためのストーリー理解ボックス1914とを含むことができる。
この例では、ユーザが「選択肢1」を選択すると仮定すると、「ベンがアバに食べ物を持ってきました」において使用される「持ってくる」という単語の意味を「何か、または誰かをどこかに連れて行く」を意味するために提供する。対話エンジンがこの回答を受信すると、それは、次の質問を識別するために、関連付けられる依存構造を検討する。次いで、この次の質問は、図20に示されるように、ユーザに提示するためにユーザデバイスに返される。
図20は、対話セッションにおける次の質問を示すために、図19のスクリーンレンダリング1902に続いてユーザのデバイス上に提示される対話UI 1900の第2のスクリーンレンダリング2002を示す図である。この例では、対話インタフェース1906は視覚的に上方にシフトされているので、最後の対話ボックス1910のエッジは、主領域1904の上部で部★分的に見ることができる。この対話ボックス1910の下には、前の質問に対するユーザの応答に基づいて明示された次の質問を含む新しい対話ボックス2004がある。ユーザが選択肢1で回答したので、次の質問は次のようになる:
はい。ここに私の次の質問があります。
私は「持ってくる」は私に動作について伝えていると思います。何らかの変化です。つまり、動作が起こった後に何かが異なります。
それは正しいですか?
応答対話ボックス2006はまた、「はい」および「いいえ」の応答選択肢を用いてユーザに提示される。ユーザがステートメントに同意し、対話ボックス2006において「はい」と回答すると仮定する。この応答は対話エンジンに返され、対話エンジンは、次の質問を識別するために、関連付けられる依存構造を再び検討する。次いで、この次の質問は、図21に示されるように、ユーザに提示するためにユーザデバイスに返される。
また、一部ユーザの応答によって確認された情報を反映するためのストーリー理解ボックス2008の更新されたバージョンが、図20の主領域1904に示されている。ここでは、「ベン」が主語として、「持ってきた」が「動詞」として、および「食べ物」が目的語として識別されるように構文上の役割が文に追加される。
図21は、対話セッションにおける別の次の質問を示すために、図20の第2のスクリーンレンダリングに続いてユーザのデバイス上に提示される対話ユーザインタフェース1900の第3のスクリーンレンダリング2102を示す。ユーザは、最後の応答において、動作を示す「持ってくる」という単語のシステムの理解を確認したので、対話ボックス2104において提示された次の質問は、ユーザがストーリーについて理解できるかもしれないさらなる知識を調査する。この例では、質問は次の通りである:
はい、私たちが読んでいる文は次の通りです。
ベンがアバに食べ物を持ってきました。
この時点で、私はそれを理解しています。
ベンは、持ってくる動作を発生させます。
私の次の質問はこれです。
持ってくる動作のためにどんなことが変わったのですか?
応答対話ボックス2106もまた、可能な回答に対する複数の選択肢とともにユーザに提示される。この例では、5つの選択肢が提示されている。
1.食べ物はどこかに配置されています。
2.ベンはどこかにいます。
3.アバは食べ物を持っています。
4.食べ物はアバと関係があるどこかに配置されています。
5.ベンはアバと関係があるどこかにいます。
ユーザは、これらの選択肢のうちの1つまたは複数を選択してもよく、あるいは、他の選択肢を要求するための「その他」のボックス2106内の一般的な動作項目のうちの1つ、この時点でストーリーが明確ではないことを示すための「指定されず」、およびシステムに回答を返送するための「提出」を選択することができる。
ストーリー理解ボックス2108の更新されたバージョンが、前のユーザの応答によって一部確認された情報を反映するために、主領域1904に提供される。ストーリーにおける文の深められた理解を示すために、「持ってくるは、何か、または誰かをどこかに連れて行くことを意味する」の確認された意味が提供される。
対話エンジンは、依存構造において表現される関連するすべての質問が使い果たされるまで、より多くの質問を続ける。対話エンジンは、さらに自由回答形式の読解力の質問をする場合がある。ストーリー理解ボックス2108において表現されているものなどのこの知識体は、回答アグリゲータ1622によって集約され、さらなる処理のために知識統合エンジン136に返される。
説明のための分散された対話システム
前述したように、対話エンジン142は、ストーリーの自然言語テキストを議論するために、単一のユーザとの対話セッションを線形に確立することができる。これらの対話セッションは、複数の情報が求められ、後の交換は以前の質問に対する回答に依存するという点で、ワンショット交換を超えてしばしば拡張される。たとえば、コンピューティングシステムが「カエルは自分の皮膚を通じて呼吸する」という文に取り組んでいるとき、対話エンジン142は、知識統合エンジン136によって、呼吸が空気を吸うことおよび吐くことの循環プロセスであり、その目的はカエルの体が必要とする酸素を得ることであり、ほとんどの動物は自分の皮膚を通じてではなく鼻で呼吸することを学習するために、ユーザとの対話セッションに関与するように課される。場合によっては、単一のユーザとのそのような拡張された対話は、ユーザに高い認知負荷をかけることがあり、対話セッションの連続性は実行に時間がかかる。
学習プロセスを加速するために、複数のユーザを並行して参加させるために、対話セッションが展開されることができる。対話セッションは、ストーリーに関する議論内の特定の個々の質問が、他人とは独立してユーザによって回答されることができるサブ対話に分割される。たとえば、カエルの対話セッションでは、呼吸のメカニズムと目的は、関与する臓器とは無関係に調査されることができる。質問および回答のセッションを複数のユーザに分散し、ユーザを並行して参加させることで、コンピューティングシステムがより迅速に学習することが可能になる。
したがって、特定の実装形態では、対話エンジン142は、対話セッションをサブ対話セッションに分割し、それらのサブ対話セッションをより広いユーザのオーディエンスに並行して分散するために、分散された対話ディスパッチャ1620を採用する。一実装形態では、分散された対話ディスパッチャ1620は、対話セッションを分割するために文またはテキスト文字列に関連付けられる依存構造を利用し、システムが、その質問を複数のユーザに分散することによって、ユーザに与えられる認知負荷を柔軟に管理できるようにする。このように、システムは論理的に単一の対話セッションを有し、その負荷は、実際には複数のユーザに分散される。
図22~図24は、分散された対話システムの1つの例示的な実装形態をより詳細に示す。図22は、分散された対話ディスパッチャ1620が質問2202(1)、2202(2)、...、2202(P)を、コラボレータ114(1)~(C)などの複数のユーザにネットワーク120を介して分散する対話エンジン142を示す。同じ質問が複数の人々に提起されてもよく、異なる質問が異なるユーザのセットに分散されてもよい。協力者114(1)~(C)は、Amazon Mechanical Turk(商標)のようなサービスを通じて非公式に集められた、または公式に組織された、多数のユーザと見なされることができる。ユーザは質問を検討し、彼らの応答2204(1)、2204(2)、...、2204(P)を対話エンジン142に返す。
分散された対話ディスパッチャ1620は、次の質問を識別するためのユーザ応答に基づいて、依存構造1610、または対話リスト1614内のそれらの順序付けられた表現などの依存構造を通じて反復するために構造クローラ2206を含む。構造クローラ2206は、適切な分岐を選択し、他に何が学習されるべきかを発見するために、前の質問からのユーザ応答を使用する。場合によっては、依存構造1610は、データ構造において兄弟ノードとして表現されることが多い、複数の可能な補足質問につながる。これが起こると、次の質問のための異なる選択肢が、異なる協力者に並行して提示されることができる。
次いで、ユーザセレクタ2208は、補足質問を送信するために人々の1つまたは複数のグループを選択することができる。ユーザセレクタ2208は、同じ質問を、協力者114(1)~(2)によって表現されるグループなどの複数の人々に送信することを選択することができる。あるいは、ユーザセレクタ2208は、異なる質問を異なるユーザまたはユーザのセットに送信することを決定することができる。たとえば、図22に示されるように、ユーザセレクタ2208は、異なる質問2202(1)~(P)を協力者114(1)~(C)などの異なるユーザに送信することを選択することができる。このように、多くのユーザによって質問が評価され、並行して回答されることができる。これにより、コンピューティングシステムが、より迅速に拡張し学習することを可能にする。コンピューティングシステムは、任意の数の書籍を並行して読み、任意の数の人々を並行して参加させることができ、それによって、システムがより迅速に理解を得ることが可能になる。
ユーザセレクタ2208は、誰が質問を受け取るべきかを決定するために、ヒューリスティックおよびプロファイル情報を使用することができる。一実装形態では、協力者は、年齢、読書レベル、彼らが読んできた読書例など、彼らについての情報を提供するプロファイルを有することができる。同様に、ストーリーまたはテキストは、読書またはグレードレベル、語彙レーティングなどの関連プロファイル情報を有することができる。ユーザセレクタ2208は、ユーザのプロファイルをストーリーと比較し、2つの間の適切なレベルをマッピングしようと試みることができる。たとえば、テキストが高校の読書レベルに適している場合、ユーザセレクタ2208は、高等学校の読書レベル以上のユーザを識別することができる。
図23は、複数のユーザを含む、ある例示的な分散された対話セッションを示す。この例では、対話エンジン142は、「大きな雨滴がクロエの顔に落ちました」という文で作業している。対話セッションのターゲット情報は、「fall」という動詞の語義から始まる、この文の適切な意味解釈を発見または確認することである。分散された対話ディスパッチャ1620は、「「大きな雨滴がクロエの顔に落ちました」における「fall」の意味は何ですか?」という、対話ボックス2304に表現されているようなオープニング質問を第1のユーザのセット2302に聞くことができる。対話ボックス2306によって表されるように、第1のセット内の多数のユーザまたはすべてのユーザからの応答が選択肢1の「重力の影響を受けて降下する」であると仮定する。
この応答に基づいて、構造クローラ2206は、依存構造から、雨滴の前後の状態に関する2つの可能な後続の質問があることを発見する。さらに、2つの後続の質問は、依存構造内の兄弟ノードによって表現されるため、質問は並行して異なるユーザに尋ねられることができる。したがって、ユーザセレクタ2208は、対話ボックス2308によって表現される第1の後続の質問を同じ第1のユーザのセット2302に送信することを選択する。第1の後続の質問は、「「大きな雨滴がクロエの顔に落ちました」の前の雨滴の状態は何ですか?」と質問する。並行して、ユーザセレクタ2208は、対話ボックス2310によって表現される第2の後続の質問を異なるユーザのセット2312に送信する。第2の後続の質問は、「「大きな雨滴がクロエの顔に落ちました」の後の雨滴の状態は何ですか?」と質問する。
次いで、ユーザの各セットは、これらの質問に同時に回答することができる。第1の後続の質問2308について、対話ボックス2314によって表されるように、第1のグループ2302内のユーザの大部分またはすべてが、雨滴の前の状態として選択肢3の「それは空にあります」を選択したと仮定する。同様に、第2の後続の質問2310について、対話ボックス2316によって表現されるように、第2のグループ2312内のユーザの大部分またはすべてが、雨滴の後の状態として選択肢2の「それはクロエの顔の上にあります」を選択すると仮定する。この例に示されるように、質問は2つのグループに分散されているが、システムは2つの質問を同じ人物に順番に尋ねた場合と同じ結果に到達する。しかし、同じ結果がより少ない時間で達成され、個々のユーザにかかる負荷がより少なくなった。
図24は、複数のユーザを含む、別の例示的な分散された対話セッションを示す。この例では、対話エンジン142は、「エンツォとゾーイは競走していました。エンツォが転びました。」というテキストで作業している。対話セッションのターゲット情報は、「fall」という単語の語義から始まる、2つの文の正確な意味解釈を発見または確認することである。分散された対話ディスパッチャ1620は、対話ボックス2402に表現されているような「「エンツォが転びました」における「fall」は、クロエが滑って泥の中に落ちましたと同じように使用されていますか?」などのオープニング質問を第1のユーザのセット2302に聞くことができる。同時に、分散された対話ディスパッチャ1620は、対話ボックス2404に表現されるように、「「エンツォが転びました」における「fall」の意味は何ですか?」など、第2のユーザのセット2312に対して異なるオープニング質問をすることができる。
図24において、対話ボックス2406によって表されるように、第2組のユーザ2312は、一般に、第2のオープニング質問2404に対して「突然直立姿勢を失うことです」という回答で応答すると仮定する。この応答(R1)に基づいて、対話ボックス2408および2410によって表現されるように、2つの他の後続の質問が生成される。分散された対話ディスパッチャ1620は、第1のユーザのグループ2302に第1の後続の質問2408を分散し、対話ボックス2408によって表現されるように、「「クロエが滑って泥の中に落ちました」の前は、クロエは直立姿勢でした。「エンツォが転びました」の前はエンツォも直立姿勢でしたか?」と尋ねる。並行して、分散された対話ディスパッチャ1620は、対話ボックス2410によって表現されるように、第2のユーザのグループ2312に第2の後続の質問2410を分散し、「「クロエが滑って泥の中に落ちました」の後、クロエは地面の上におり、泥の中にいます。「エンツォが転びました」後、エンツォは地面の上におり、泥の中にいますか?」と尋ねる。これらの質問は互いに独立して尋ねられることがあり、したがって、異なるユーザグループは、回答している他の質問およびグループについて知る必要なしに、質問に対する応答を提供する可能性がある点に留意されたい。説明されている実装形態では、これらの後続の質問は依存構造内の兄弟ノードにおいて見られ、分散された対話ディスパッチャは自由にそれらを異なるユーザに分散することができる。
第2の後続の質問2410に対する応答が、一般に、対話ボックス2412によって表現されるように、エンツォが地面の上にいるが泥の中にはいないと仮定する。この応答(R2)に基づいて、さらに2つの後続の質問が生成され、ユーザのグループに並行して分散されることができる。対話ボックス2414によって表現されるように、分散された対話ディスパッチャ1620が、第1のグループのユーザ2302に、「転んだ後にすべての人々が地面の上にいるのは真実ですか?」と尋ねる後続の質問を分散する。対話ボックス2416によって表現されるように、分散された対話ディスパッチャ1620が、第2のユーザグループ2312に、「転んだ後に誰かが泥の中にいるときはいつですか?」と尋ねる別の後続の質問を分散する。
ユーザは、これらの後続の質問に応答することができ、対話セッションは、知識統合エンジン136からの指示の下で、対話エンジン142が対話についてのすべての質問をするまで続けることができる。応答は、現在の世界モデル138を改訂する際に使用するために集約され、知識統合エンジン136に返され、改訂された現在の世界モデルにストーリーモデル132をアラインメントする。質問が使い果たされ、ストーリーがより深く理解された後、ストーリーモデルは、図26を参照して次のセクションにおいて説明されるように、完了したと見なされる。
図25は、複数のユーザへの対話セッション中に質問を分散するためのプロセス2500を示す。プロセス2500は、図1、図4、図5および図16、ならびに図22のシステムアーキテクチャ100および対話エンジン142を参照して説明される。プロセス2500は、コンピューティングシステム102によって、具体的には対話エンジン142によって実行されることができる。
2502において、ターゲットテキスト文字列および関連付けられる依存構造が受信される。テキスト文字列は、たとえば文であってもよく、他の語句または節であってもよい。依存構造は、親ノードへの回答に応じて、子ノードが可能な後続の質問を表現するツリータイプのデータ構造である。1つの依存構造が、議論の目的のために図17において示されている。
2504において、対話セッション中に尋ねられるべき質問のシーケンスまたは一連の質問におけるオープニング質問を識別するために、ルートノードまたは親ノードがまず依存構造内で見られる。たとえば、図23を参照すると、対話エンジンは、「fall」の語義を発見するための対話セッションを開始し、対応する依存構造における1つの親ノードは、「「大きな雨滴がクロエの顔に落ちました」における「fall」の意味は何ですか?」のオープニング質問を表現することができる。2506において、対話エンジンは、その質問を1人または複数のユーザに送信するかどうかを決定する。1人のユーザの場合(すなわち、2506からの「いいえ」の分岐)、2508において、質問ディスパッチャは質問を単一のユーザに送信する。他方、複数のユーザの場合(すなわち、2506からの「はい」の分岐)、2510において、質問ディスパッチャは同じ質問を複数のユーザに送信する。質問が、多数の可能な回答で複数の選択肢回答(回答)を提供しているときなど、システムがユーザを調査することを所望する状況において、複数のユーザが選択されることができる。1つの選択肢の大部分が適切な回答として役立つ場合がある。
2512において、1つまたは複数の応答がユーザから受信され、解析される。2514において、これらの回答に基づいて、対話エンジンの構造クローラは、1つまたは複数の後続の質問を見つけるために依存構造を検討する。場合によっては、これはツリータイプの構造を親ノードから1つまたは複数の子ノードに下降することを含む。複数の子ノードが同じ分岐にある場合、関連付けられる後続の質問は、互いに独立していると見なされることができる。したがって、2516において、依存構造に表現された後続の質問が兄弟ノードに関連付けられているかどうかが決定される。兄弟ノードに関連付けられている場合(すなわち、2516からの「いいえ」の分岐)、2518において、質問は1人または複数のユーザに送信されることができる。逆に、複数の兄弟ノードが存在する場合(すなわち、2516からの「はい」の分岐)、2520において、異なる後続の質問は、1セット当たり1人または複数の異なるユーザのセットに分散されることができる。
2522において、1つまたは複数の応答がユーザから受信され、さらに解析される。同じ文またはテキスト文字列についてより多くの質問が尋ねられることができる場合、プロセス2500は、2514において依存構造のさらなる調査を継続する。依存構造内のすべての質問が追求された場合、プロセス2500は、2502において新しいテキスト文字列を続けることができる。
説明のためのストーリーモデル
ユーザ質問のすべてが尋ねられ、応答が処理された後、知識統合エンジン136は、ストーリーモデルと現在の世界モデルとの最終的なアラインメントを行う。知識統合エンジン136は、十分な信頼性を得ており、記憶および索引付けのためにストーリーモデル132を出力する準備が整っている。ストーリーモデル132は、次に図26を参照して説明されるように、プロセスの全体にわたって最終状態に進展させる。
図26は、ストーリーモデル132と、ストーリーモデルが本明細書に記載されたプロセスの結果として時間の経過とともにどのように進展するかを例示的な説明を示す。ストーリーごとに、ストーリーモデル132は、最初に、ストーリーの構文解析から導出された言語構造714、エンティティタイプ726、および共参照連鎖730を含む言語解析結果712で埋められる。これは、図26において説明のために「バージョン1」として示されている。意味処理、推論、および人間の対話セッションを通じて、ストーリーに関する追加の情報が学習される。ストーリーを表現する意味構造とフレームは、より多くのノードを埋めるために、およびより多くの関係を追加するために、反復的に改訂される。これは、FV-1を通じてバージョン2(すなわち、最後の最終バージョンの次)によって、図26に示されている。初期には、たとえばバージョン2においては、システムは、「歩く」ための動作は、人がどこから歩いてきたか、および彼/彼女がどこに行くかに関する情報を含むことを発見することができる。したがって、意味構造が作成され、ノードを埋めるために情報が求められる。時間の経過とともに、システムはさらに、人物アバがレストランに向かって歩いており、そのレストランがイタリアンレストランであったことを学習する。
意味構造およびフレームの大部分またはすべてが満たされ、意味構造およびフレームに関する信頼が十分なしきい値に上昇し、ユーザが仮定の多くまたはすべてを確認した後、図26におけるバージョンFV(最終バージョン)によって表現されるように、最終バージョンが生成されることができる。最終バージョンFVは、完成した意味構造と、完全に埋め込まれたフレームとを含む。単語はそれらの正しい意味を有し、それらの間の関係は真であり、正確である。さらに、ストーリーにおいて暗示されない情報が推論され追加されている。この時点で、ストーリーモデルは現在の世界モデルと十分にアラインメントしていると見なされる。さらなる信頼のために、システムは、読解力の質問をユーザに提起して、システムの理解が正しいかどうかを確認できるようにすることができる。ストーリーの最終バージョンが記憶され、索引付けされる。その知識はすべて、より多くのストーリーが消費されるにつれて進展し続ける現在の世界モデルにも含まれる。
コンピューティングシステムの理解の増加
また、図27は、次第に難しくなる自然言語ストーリーの反復処理と、システムの理解を評価、改善、および検証するための人間の関与とを通じて、時間の経過とともにコンピュータの理解を成長させるためのプロセス2700を示す。プロセス2700は、学習および理解コンピューティングシステム102によって実行される。一般に、GSPおよびフレーム構造などの意味構造は、ストーリーの表現を生成するために、上述の推論プロセスを使用して推論される。推論プロセスは、現在の世界モデル138において維持されている情報、ならびにシステム全体の他のリソース(GSPデータベース408、誘導された知識リソース412など)を使用する。対話セッションは、意味構造をストーリーの理解として評価するために、1人または複数の人間のユーザと一緒に行われる。推論プロセスと人間の対話を通じて学習された任意の知識は、改訂され、展開された意味構造として、現在の世界モデルに保存される。より多くのストーリーが取り入れられ、処理されるにつれて、現在の世界モデルは時間の経過とともに展開し、それによってシステムの理解が高まる。展開された知識によって、コンピューティングシステムは、より高い読解力レベルを有する、より困難な主題を扱うことができるようになる。
1つの実装形態によれば、2702において、第1の期間にわたって、初期読書力レベルの複数のストーリーがコンピューティングシステム102によって受信される。たとえば、コンピューティングシステム102は、就学前、幼稚園、または低学年の初期段階の読書レベルなどの簡単なテキストを、開始するために取り込むことができる。ストーリーはいくつかの読解力の質問が付随されていることがある。2704において、ストーリーごとに、そのストーリーを表現するためのストーリーモデルが開発される。ストーリーモデルの開発は、前述のプロセスを含む。たとえば、2706において、ストーリーを構文的に解析し、文ごとに言語解析結果(たとえば、構文解析、述語項構造、エンティティタイプ割当て、共参照)を生成するために、ストーリーが構文的に解析される。これは、たとえば、ストーリー解析エンジン134によって実行されることができる。
2708において、1つまたは複数の意味構造が、構文解析された文の構文表現を意味的に処理することによって、各解析された文の表現として推論される。一実装形態では、知識統合エンジン136、知識誘導エンジン140、および信念表現および推論フレームワーク144は、少数の意味素の観点から、言語解析結果を使用して初期の意味表現を作成するために、この行為2708をサポートするために様々なタスクを実行する。これらのモジュールは、より詳細に上述したように、世界について何が真であるかという現在の世界モデル138、GSPデータベース408、および大規模言語コーパス410から自動的に誘導される誘導された知識リソース412などのシステムリソースを引き出す。2710において、進化するストーリーモデルは、一部には、現在の世界モデル138における知られているフレームとよく適合する信頼性の高い意味表現をストーリーモデルが含まない領域を決定するために、現在の世界モデルと比較して評価される。
2712において、ストーリーに対するユーザの理解を調査し、および/またはストーリーに対するシステムの理解を改善し、テストし、または挑戦するために、やはりストーリーを読んだ1人または複数の人間のユーザと対話セッションが確立される。質問は、ユーザデバイス114/118に提出され、検討および考察のためにユーザに提示される。2714において、応答がユーザデバイスから受信され、意味構造を改訂するために使用される。ユーザの回答は、世界について何が真であるかという現在の世界モデル138において表されるストーリーに対するシステムの理解を更新するために適用されることができる。対話エンジン142は、対話セッションを容易にするために使用されることができ、知識統合エンジン136は、ユーザのフィードバックに従って意味構造を改訂するために使用されることができる。
2716において、現在の世界モデル138は、対話セッションから学習された任意の新しい知識、および任意の意味構造の改訂によって更新される。この知識は、GSPデータベース408に記憶されている、新しいインスタンス化されていないGSP構造をさらに作成するために使用されることができる。コンピューティングシステム102がより多くのストーリーを読んで処理するにつれて、時間の経過とともにより多くのGSP構造(インスタンス化されていないものと、インスタンス化されたものとの両方)が作成され、GSPデータベース408内のリソース、および現在の世界モデル138内の知識が時間の経過とともに増加する。現在の世界モデル138は、命題(GSPを含むが、これに限定されない)に対する確率分布であるフレームの集合で構成されることができる。コンピューティングシステム102がより多くのテキストを読んで理解すると、それはストーリーを解釈するために使用される新しいフレームを作成する。
2718において、現在のストーリーのストーリーモデルがストーリーモデルデータストア132に記憶され、コンピューティングシステム102によって維持される。ストーリーモデルは、いくつかはより高い読解力レベルを有する他のストーリーを推論または理解するために、将来的に使用されることができる。
2720において、コンピューティングシステム102は、次の読解力レベルまでステップアップするなど、複雑性が増す追加のストーリーを受信して処理し続ける。各取り入れられた新しいストーリーとともに、コンピューティングシステム102は、ストーリーから意味を推論し、人間とのその理解をテストすることを含むストーリーモデルを再び開発する(2704において)。ストーリーモデルが展開されると、システム102は、(2716において)新しい知識で現在の世界モデル138を更新し、将来の使用のためにストーリーモデルを記憶する(2718において)。時間の経過とともに学習および理解コンピューティングシステム102が、インスタンス化された生成的意味素とフレーム構造との関連セットなどを通じて、エンティティおよび命題の知識データ構造として表される、大規模でますます洗練される知識ベースを構築するように、このプロセスは何度も繰り返される。
図28は、現在の世界モデル138における意味構造として具体化された知識が、次第に高まる読解力のレベルの高いストーリーが対話処理、意味処理、および対話を通じた人間評価を経るにつれて時間の経過とともにどのように成長するかを示す概略図2800である。タイムライン2802に沿った早期または初期のインスタンスで、学習および理解コンピューティングシステム102は、初期レベルまたはエントリレベルの読解力を有する比較的容易なストーリーS1~Si(一般に106として参照される)を読む。これらのストーリーは、たとえば、幼稚園の生徒や低学年の学校の生徒に適切であることができる。現在の世界モデル138は、いくつかの意味構造で事前に設定されてもよく、ゼロから構築されてもよい。時間T1において、インスタンス化されたGSP構造2804(T1)およびフレーム構造2806(T1)の比較的小さいセットを有する現在の世界モデル138(T1)が示されている。
時間の経過とともに、システム102は、エントリレベルのストーリーS1~Siよりも複雑な、より多くのストーリーSj~Smを読んで処理する。たとえば、ストーリーSj~Smは、高学年、またはおそらくミドルスクールおよび中学校などの中程度の読解力レベルと考えられることができる。時間T2において、インスタンス化されたGSP構造2804(T2)およびフレーム構造2806(T2)の実質的により多くのセットによって示されるように、現在の世界モデル138(T2)は、より多くの知識で展開される。
同様に、時間の経過とともに、システム102は、以前のストーリーS1~Smよりも複雑なさらに多くのストーリーSn~Szを読んで処理する。これらのストーリーSn~Szは、高等学校または大学レベルで見られるような、より高い読解力レベルのテキストを表現することができる。時間T3において、現在の世界モデル138(T3)は、インスタンス化されたGSP構造2804(T3)およびフレーム構造2806(T3)の著しくより多くのセットを収容するように展開される。
したがって、コンピューティングシステムの言語の理解は時間依存であり、これらの意味構造を通じて表される確率的な信念のネットワークである。コンピューティングシステムがより多くのストーリーを読んで理解するにつれて、ネットワークは時間の経過とともに展開する。システムの理解は、エンドユーザーと開発者がシステムの理解を調査し、システムがどのように働いて作業しているかについてより多くのことを学習することができる多くの異なる形式の視覚化を通じて表現されることができる。
図29は、確率論的信念のネットワークを徐々に定式化し、その全体的論理的一貫性を反復的に精緻化する動的なプロセスを示す視覚化の1つの例示的なセット2900を示す。一実装形態では、学習および理解コンピューティングシステム102は、システムの理解の視覚化を生成する視覚化モジュール2902を含む。これらの視覚化は、単一のストーリーについての信念のネットワークを示す第1の、またはストーリーレベルの視覚化2904と、多くの様々なストーリーの間の関係を示すストーリー銀河視覚化2906とを含む。視覚化モジュール2902は、ユーザが単一のストーリービュー2904(または、その中のノード)をズームインすること、または単一のストーリービュー2904から銀河視覚化2906、ならびにその間のビューの範囲にズームアウトすることを可能にするズーム制御などの、ユーザ制御を可能にする。
図示された例では、単一のストーリー視覚化2904は、ノード2910および円弧2912の層またはリングからなる。各ノード2910は、どのような信念が真であるかに関する論理的仮説を表現する。各円弧2912は、ノードのペアの間に拡張し、ある信念がある確率で別の真をサポートすることを示す関係を伝える。ノードは、異なるクラスの信念を表現するために層またはリング2914に配置される。たとえば、物語の中の特定の文の存在に関する信念は、1つのリングである可能性がある。単語や語句の可能な意味についての信念は、次のリングである可能性がある。そのようなリングの存在を示すために、内側リング2914(1)および外側リング2914(2)が、図29において示されている。ノード2910、円弧2912、およびリング2914は、視覚化全体を通してそれらを区別するためにさらに色分けされてもよい。
別の実装形態では、各層またはリングは、その層またはリング内の任意の数の信念(ノード)およびサポート(円弧)を例示することを可能にするための1つまたは複数のサブリングまたはサブ構造を有する。一実装形態では、層またはリング内のノード、およびそれらの付属された円弧は、新しいデータがモジュール130のうちの1つにおける下位ドライバまたはアルゴリズムによって考慮されるときに、新しい仮説的信念がネットワークリングに追加されることを示すためにアニメーション化する。たとえば、リングは、より多くの仮説を可能にするために、それらのノード密度を回転、分割、崩壊、および/または変更することができる。
ノード2910または円弧2912の外観の変化は、たとえば、それが信じられている信頼性を表現することができる。たとえば、ノードまたはエッジの不透明性は、対応する信念が真であるというシステムの信頼性の関数である可能性がある。絶対的に真と見なされる信念は完全に不透明であるが、絶対的に偽と見なされる信念は完全に不可視である。それら2つの極端な状況の間で考えられる信念は、対応する透明性を有する。
外観の変化は、システムの推論プロセスをさらに説明することができる。たとえば、ノード2910(H)などのノード周辺のハローハイライトは、それが他の信念が暗示されるものを調査するために真であると考えられることを示すことができ、円弧上の同様のハイライトは暗示自体を示すことができる。
図示された例では、銀河視覚化2906は、複数の点2920を含み、各点は、特定の言語問題についてのストーリー視覚化2904のズームアウトされたビューを表現する。銀河ビュー2906にズームアウトし、次いで単一のストーリービュー2904に戻るアニメーションを通じて、システムが多くの言語問題の理解をどのように追求しているかを一度に知り、学習することができ、視覚化がその焦点を変えることができる。
結論
主題は、構造的特徴および/または方法論的動作に特有の言語で記載されているが、添付の特許請求の範囲に定義された主題は必ずしも記載された特定の特徴または動作に限定されないことを理解されたい。むしろ、特定の特徴および動作は、請求項を実装する例示的な形態として開示される。

Claims (17)

  1. コンピュータ実装方法であって、前記方法は、メモリに記憶されたコンピュータ実行可能命令を実行する1つまたは複数のプロセッサによって実行され、
    自然言語入力のために、
    前記自然言語入力を受信することと、
    前記自然言語入力の構文解析を実行して、1つまたは複数の言語解析結果を生成することと、
    前記1つまたは複数の言語解析結果と、大規模言語コーパスから誘導された知識を一部使用することによって、および
    前記1つまたは複数の言語解析結果と、生成的意味素(GSP)構造がどれほど正確に前記自然言語入力を表現するかの信頼性を表す現在の世界モデルにおいて維持されているデータと、前記大規模言語コーパスから誘導された前記知識とを使用して、複数の前記GSP構造を形成することによって、
    複数の意味構造を作成して、前記自然言語入力を表現することと、
    人間のユーザとの対話セッションに関与して、使用する入力を前記人間のユーザから受信して、前記自然言語入力の理解として前記意味構造を評価することであって、対話セッションに関与することは、
    人間のユーザが前記意味構造を評価するために回答するための1つまたは複数の質問を生成することと、
    コンピュータユーザインタフェースを介して提示するための前記1つまたは複数の質問を前記人間のユーザに提出することと、
    前記人間のユーザから1つまたは複数の応答を受信することと
    前記人間のユーザからの応答に基づいて前記意味構造を改訂することと、
    後続の自然言語入力のための追加の意味構造を形成するためのプロセスを繰り返すことと、
    を備えるプロセスを実行する、コンピュータ実装方法。
  2. 前記後続の自然言語入力は、次第に高まる読解力レベルを有する、請求項1に記載のコンピュータ実装方法。
  3. 前記1つまたは複数の言語解析結果は、構文解析、述語項構造、エンティティタイプ、または前記自然言語入力の共参照のうちの少なくとも1つを備える、請求項1に記載のコンピュータ実装方法。
  4. 前記人間のユーザからの前記応答に基づいて前記GSP構造を改訂し、前記人間のユーザから学習した情報、または前記改訂されたGSP構造を有する情報を用いて前記現在の世界モデルを更新することをさらに備える、請求項1に記載のコンピュータ実装方法。
  5. 前記複数の意味構造を作成することは、
    複数の生成的意味素(GSP)構造を形成することと、
    1つまたは複数のGSP構造からなる複数のフレーム構造を形成することと
    を備える、請求項1に記載のコンピュータ実装方法。
  6. 対話セッションに関与することは、複数の人間のユーザとの複数の対話セッションに関与することを備える、請求項1に記載のコンピュータ実装方法。
  7. コンピュータ実装方法であって、前記方法は、メモリに記憶されたコンピュータ実行可能命令を実行する1つまたは複数のプロセッサによって実行され、
    第1の期間にわたって第1の読解力レベルの複数の第1の自然言語入力を受信することと、
    前記複数の第1の自然言語入力の入力ごとに
    前記第1の自然言語入力を構文的に解析して、構文解析、述語項構造、エンティティタイプ、または前記第1の自然言語入力の共参照のうちの少なくとも1つを含む1つまたは複数の言語解析結果を生成することによって、前記第1の自然言語入力を構文解析して、構文表現を生成することと、
    前記言語解析結果と、生成的意味素(GSP)構造がどれほど正確に前記第1の自然言語入力における前記自然言語を表現するかの信頼性を表す現在の世界モデルにおいて維持されているデータと、大規模言語コーパスから誘導された知識とを使用して、複数の前記GSP構造を作成することによって、前記構文表現を少なくとも一部使用して、1つまたは複数の意味構造を推論することと、
    ユーザコンピューティングデバイスに、前記第1の自然言語入力を表現する前記1つまたは複数の意味構造を評価するために人間のユーザが回答するための1つまたは複数の質問を提出することと、
    前記人間のユーザからの1つまたは複数の応答に応答して、前記1つまたは複数の意味構造を改訂することと、
    1つまたは複数の最終的な意味構造が定義されるまで理解プロセスを反復することであって、ストーリーモデルの最終バージョンが前記1つまたは複数の最終的な意味構造を含むことと、
    を含む前記理解プロセスを実行することによってストーリーモデルを開発することと、
    前記第1の読解力レベルの前記複数の第1の自然言語入力に対する複数の入力モデルを記憶することと、
    第2の期間にわたって第2の読解力レベルの複数の第2の自然言語入力を受信することと、
    前記複数の第2の自然言語入力の入力ごとに、前記理解プロセスを実施し、前記複数の第1の自然言語入力の前記入力モデルのうちの1つまたは複数の前記理解プロセスを実施することから学習した情報を一部使用することによって、関連するストーリーモデルを開発することと
    を備える、コンピュータ実装方法。
  8. 1つまたは複数の意味構造を推論することは、前記GSP構造のサブセットからなる複数のフレーム構造を形成することをさらに備える、請求項7に記載のコンピュータ実装方法。
  9. 1つまたは複数の最終的な意味構造が定義されるまで、前記1つまたは複数の意味構造を改訂することは、前記ユーザに反復的に質問を提出し、終了条件に達するまで前記意味構造を改訂するためのユーザ応答を受信することであって、前記終了条件は、前記意味構造が前記第1の自然言語入力にどれだけ良好に適合しているかを表すために計算された信頼値の関数であることを備える、請求項7に記載のコンピュータ実装方法。
  10. 前記第2の自然言語入力は、前記第1の自然言語入力より高い読解力レベルを有する、請求項7に記載のコンピュータ実装方法。
  11. 前記第2の自然言語入力より高い読解力レベルの自然言語入力を引き続き受信し、前記より高い読解力レベルの前記自然言語入力についての前記理解プロセスを実施することをさらに備える、請求項7に記載のコンピュータ実装方法。
  12. データベースで維持されている現在の世界モデルと、
    前記データベースで維持されている前記現在の世界モデルにアクセスするための1つまたは複数のプロセッサと、
    前記1つまたは複数のプロセッサに結合され、コンピュータ実行可能命令を記憶したメモリと、を備え、前記コンピュータ実行可能命令が、前記1つまたは複数のプロセッサによって実行されると、前記プロセッサに、
    変化する読解力レベルの複数の自然言語入力を処理することであって、前記処理することは、一部には、前記現在の世界モデルにおいて維持されている情報を使用することによって、前記入力の表現としての意味構造を推論することを含む、ことと、
    前記自然言語入力の構文解析を実行して、言語解析結果を生成することと、
    前記言語解析結果、前記現在の世界モデルにおいて維持されている前記情報、および大規模な言語コーパスから誘導された知識を一部使用することによって、前記自然言語入力を表現するための複数の生成的意味素(GSP)構造を生成することと、
    複数のGSP構造からなるフレーム構造を形成することと、
    1人または複数の人間のユーザとの対話セッションを行って、意味構造を前記入力の理解として評価することであって、
    前記意味構造を評価するために、人間のユーザが回答するための1つまたは複数の質問を生成することと、
    コンピュータユーザインタフェースを介して提示するための前記1つまたは複数の質問を前記人間のユーザに提出することと、
    前記人間のユーザから1つまたは複数の応答を受信することと、
    を含む、前記意味構造を評価することと、
    前記自然言語入力から推論され、前記1人または複数の人間のユーザによって評価された前記意味構造を含むように、前記データベース内の前記現在の世界モデルを展開することと
    を備える動作を実行させる、コンピューティングシステム。
  13. 処理される自然言語入力は、次第に高まる読解力レベルのものである、請求項12に記載のコンピューティングシステム。
  14. 前記メモリは、
    前記人間のユーザからの前記応答に基づいて前記意味構造を改訂することと、
    前記人間のユーザから学習した情報、または前記意味構造を改訂する際に使用された情報を用いて前記現在の世界モデルを更新することと
    を備えるさらなる動作を実行する命令を記憶する、請求項12に記載のコンピューティングシステム。
  15. 現在の世界モデルを含むデータストアと、
    1つまたは複数のプロセッサと、
    前記1つまたは複数のプロセッサに結合されたメモリと、を備え、前記メモリは、
    自然言語入力を構文的に解析して、言語解析結果を生成する入力解析エンジンと、
    大規模な言語コーパスから情報を誘導するための知識誘導エンジンと、
    意味構造を形成するための知識統合エンジンであって、前記言語解析結果と、前記現在の世界モデルからの情報と、前記誘導された情報とを使用して、前記意味構造を形成し、前記意味構造は、生成的意味素(GSP)構造複数のGSP構造からなるフレーム構造を含む、前記知識統合エンジンと、
    人間のユーザによって使用されるコンピューティングデバイスに1つまたは複数の質問を生成して提出し、前記人間のユーザからの入力を示す1つまたは複数の応答を前記コンピューティングデバイスから収集するための対話エンジンと、
    を含む、前記プロセッサによって実行されるモジュールを記憶し、
    前記知識統合エンジンが、前記人間のユーザからの前記1つまたは複数の応答に基づいて前記意味構造を改訂し、前記データストア内の前記現在の世界モデルを更新し、
    前記入力解析エンジン、前記知識統合エンジン、および前記対話エンジンが、複数の入力を処理して、前記現在の世界モデル内のストーリーモデルを構築する、
    コンピューティングシステム。
  16. 前記知識統合エンジンは、終了条件に達するまで前記意味構造を改訂し続け、前記終了条件は、前記意味構造が前記入力にどれだけ良好に適合しているかを表すために計算された信頼値の関数である、請求項15に記載のコンピューティングシステム。
  17. 前記知識誘導エンジンは、語義を明確にするために語義曖昧性解消器(word sense disambiguator)を備える、請求項15に記載のコンピューティングシステム。
JP2019519963A 2016-06-24 2017-05-24 コンピュータ学習および理解のためのアーキテクチャおよびプロセス Active JP7178995B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/192,796 2016-06-24
US15/192,796 US10606952B2 (en) 2016-06-24 2016-06-24 Architecture and processes for computer learning and understanding
PCT/US2017/034323 WO2017222738A1 (en) 2016-06-24 2017-05-24 Architecture and processes for computer learning and understanding

Publications (2)

Publication Number Publication Date
JP2019526139A JP2019526139A (ja) 2019-09-12
JP7178995B2 true JP7178995B2 (ja) 2022-11-28

Family

ID=60675069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019519963A Active JP7178995B2 (ja) 2016-06-24 2017-05-24 コンピュータ学習および理解のためのアーキテクチャおよびプロセス

Country Status (6)

Country Link
US (9) US10606952B2 (ja)
EP (1) EP3475838A4 (ja)
JP (1) JP7178995B2 (ja)
KR (1) KR102414491B1 (ja)
CN (1) CN109478205B (ja)
WO (1) WO2017222738A1 (ja)

Families Citing this family (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
DE112014000709B4 (de) 2013-02-07 2021-12-30 Apple Inc. Verfahren und vorrichtung zum betrieb eines sprachtriggers für einen digitalen assistenten
US20190129941A2 (en) 2013-05-21 2019-05-02 Happify, Inc. Systems and methods for dynamic user interaction for improving happiness
US10813584B2 (en) * 2013-05-21 2020-10-27 Happify, Inc. Assessing adherence fidelity to behavioral interventions using interactivity and natural language processing
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10268674B2 (en) * 2017-04-10 2019-04-23 Dell Products L.P. Linguistic intelligence using language validator
JP6745402B2 (ja) * 2017-05-02 2020-08-26 株式会社Nttドコモ 質問推定装置
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
CN107463601B (zh) * 2017-06-13 2021-02-12 北京百度网讯科技有限公司 基于人工智能的对话理解系统构建方法、装置、设备及计算机可读存储介质
US10565196B2 (en) 2017-07-29 2020-02-18 Splunk Inc. Determining a user-specific approach for disambiguation based on an interaction recommendation machine learning model
US11170016B2 (en) 2017-07-29 2021-11-09 Splunk Inc. Navigating hierarchical components based on an expansion recommendation machine learning model
US11120344B2 (en) 2017-07-29 2021-09-14 Splunk Inc. Suggesting follow-up queries based on a follow-up recommendation machine learning model
CN107688614B (zh) * 2017-08-04 2018-08-10 平安科技(深圳)有限公司 意图获取方法、电子装置及计算机可读存储介质
JP6791825B2 (ja) * 2017-09-26 2020-11-25 株式会社日立製作所 情報処理装置、対話処理方法及び対話システム
EP3700794B1 (en) * 2017-10-03 2021-03-31 Google LLC Vehicle function control with sensor based validation
US10936863B2 (en) * 2017-11-13 2021-03-02 Way2Vat Ltd. Systems and methods for neuronal visual-linguistic data retrieval from an imaged document
US11087097B2 (en) * 2017-11-27 2021-08-10 Act, Inc. Automatic item generation for passage-based assessment
US11074269B2 (en) * 2018-01-10 2021-07-27 Reservoir Labs, Inc. Systems and methods for configuring system memory for extraction of latent information from big data
US11625531B2 (en) * 2018-02-07 2023-04-11 Nec Corporation Information processing apparatus, information processing method, and computer-readable recording medium
JP6984474B2 (ja) * 2018-02-14 2021-12-22 トヨタ自動車株式会社 情報処理装置および情報処理方法
US11869385B2 (en) * 2018-03-08 2024-01-09 Erind Pajo Methods, systems, devices, and software for managing and conveying knowledge
US11023684B1 (en) * 2018-03-19 2021-06-01 Educational Testing Service Systems and methods for automatic generation of questions from text
US10497366B2 (en) 2018-03-23 2019-12-03 Servicenow, Inc. Hybrid learning system for natural language understanding
US10679010B2 (en) 2018-03-28 2020-06-09 Wipro Limited Method and system of generating dialogue responses for users in real-time
US11232260B2 (en) * 2018-04-19 2022-01-25 Entigenlogic Llc Updating a document utilizing trusted new information
US10360912B1 (en) * 2018-04-30 2019-07-23 Sorenson Ip Holdings, Llc Presentation of indications with respect to questions of a communication session
US10719661B2 (en) 2018-05-16 2020-07-21 United States Of America As Represented By Secretary Of The Navy Method, device, and system for computer-based cyber-secure natural language learning
EP3576084B1 (de) * 2018-05-29 2020-09-30 Christoph Neumann Effiziente dialoggestaltung
US11194968B2 (en) * 2018-05-31 2021-12-07 Siemens Aktiengesellschaft Automatized text analysis
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US10942919B2 (en) * 2018-06-29 2021-03-09 Entigenlogic Llc Generating further knowledge to process query
WO2020009709A1 (en) * 2018-07-06 2020-01-09 Google Llc User-specific text record-based format prediction
WO2020018574A1 (en) * 2018-07-16 2020-01-23 W/You, Inc. System for choosing clothing and related methods
US12080187B1 (en) * 2018-07-27 2024-09-03 Elemental Cognition Inc. Information and dialog models for education
US10482181B1 (en) 2018-08-01 2019-11-19 United States Of America As Represented By The Secretary Of The Navy Device, method, and system for expert case-based natural language learning
JP7081671B2 (ja) * 2018-08-06 2022-06-07 富士通株式会社 評価プログラム、評価方法および情報処理装置
US11429794B2 (en) 2018-09-06 2022-08-30 Daniel L. Coffing System for providing dialogue guidance
US10909324B2 (en) * 2018-09-07 2021-02-02 The Florida International University Board Of Trustees Features for classification of stories
EP3850781A4 (en) 2018-09-14 2022-05-04 Coffing, Daniel L. FACT MANAGEMENT SYSTEM
US11144337B2 (en) * 2018-11-06 2021-10-12 International Business Machines Corporation Implementing interface for rapid ground truth binning
US11194973B1 (en) * 2018-11-12 2021-12-07 Amazon Technologies, Inc. Dialog response generation
RU2743898C1 (ru) 2018-11-16 2021-03-01 Общество С Ограниченной Ответственностью "Яндекс" Способ выполнения задач
KR20200057426A (ko) * 2018-11-16 2020-05-26 삼성전자주식회사 음성 인식 기반 이미지를 표시하는 전자 장치
US10943070B2 (en) * 2019-02-01 2021-03-09 International Business Machines Corporation Interactively building a topic model employing semantic similarity in a spoken dialog system
US11328007B2 (en) * 2019-02-04 2022-05-10 International Business Machines Corporation Generating a domain-specific phrasal dictionary
CN111694962A (zh) * 2019-03-15 2020-09-22 阿里巴巴集团控股有限公司 数据处理方法和装置
US11442993B2 (en) * 2019-04-03 2022-09-13 Entigenlogic Llc Processing a query to produce an embellished query response
RU2744032C2 (ru) * 2019-04-15 2021-03-02 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для определения результата выполнения задачи в краудсорсинговой среде
CN110110066B (zh) * 2019-05-09 2023-01-06 腾讯科技(深圳)有限公司 一种交互数据处理方法、装置以及计算机可读存储介质
CA3081150A1 (en) * 2019-05-21 2020-11-21 Royal Bank Of Canada System and method for machine learning architecture with variational autoencoder pooling
RU2744038C2 (ru) 2019-05-27 2021-03-02 Общество С Ограниченной Ответственностью «Яндекс» Способ и система для определения результата для задачи, выполняемой в краудсорсинговой среде
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
CN110136697B (zh) * 2019-06-06 2021-03-30 深圳市数字星河科技有限公司 一种基于多进程/线程并行运算的英语朗读练习系统
US11501753B2 (en) * 2019-06-26 2022-11-15 Samsung Electronics Co., Ltd. System and method for automating natural language understanding (NLU) in skill development
US11487945B2 (en) * 2019-07-02 2022-11-01 Servicenow, Inc. Predictive similarity scoring subsystem in a natural language understanding (NLU) framework
US11205052B2 (en) * 2019-07-02 2021-12-21 Servicenow, Inc. Deriving multiple meaning representations for an utterance in a natural language understanding (NLU) framework
US11157707B2 (en) * 2019-07-23 2021-10-26 International Business Machines Corporation Natural language response improvement in machine assisted agents
US20210035132A1 (en) * 2019-08-01 2021-02-04 Qualtrics, Llc Predicting digital survey response quality and generating suggestions to digital surveys
US11138383B2 (en) * 2019-08-21 2021-10-05 International Business Machines Corporation Extracting meaning representation from text
RU2019128272A (ru) 2019-09-09 2021-03-09 Общество С Ограниченной Ответственностью «Яндекс» Способ и система для определения производительности пользователя в компьютерной краудсорсинговой среде
US11734701B2 (en) * 2019-09-11 2023-08-22 International Business Machines Corporation Cognitive dynamic goal survey
CN110929027B (zh) * 2019-09-30 2022-08-12 珠海格力电器股份有限公司 提示系统、提示方法、计算机及废物容纳装置
TW202127364A (zh) * 2019-10-09 2021-07-16 香港商Ai機器人技術有限公司 用於創新,創意和學習即服務的系統和方法
RU2019135532A (ru) 2019-11-05 2021-05-05 Общество С Ограниченной Ответственностью «Яндекс» Способ и система для выбора метки из множества меток для задачи в краудсорсинговой среде
CN110955764B (zh) * 2019-11-19 2021-04-06 百度在线网络技术(北京)有限公司 场景知识图谱的生成方法、人机对话方法以及相关设备
CN111241282B (zh) * 2020-01-14 2023-09-08 北京百度网讯科技有限公司 文本主题生成方法、装置及电子设备
US20210240941A1 (en) * 2020-02-03 2021-08-05 Ardis AI INC. Systems and methods for simulation model of language
RU2020107002A (ru) 2020-02-14 2021-08-16 Общество С Ограниченной Ответственностью «Яндекс» Способ и система приема метки для цифровой задачи, исполняемой в краудсорсинговой среде
US11822889B2 (en) * 2020-03-20 2023-11-21 At&T Intellectual Property I, L.P. Personal conversationalist system
CN111460118B (zh) * 2020-03-26 2023-10-20 聚好看科技股份有限公司 一种人工智能冲突语义识别方法及装置
US11651156B2 (en) * 2020-05-07 2023-05-16 Optum Technology, Inc. Contextual document summarization with semantic intelligence
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
CN111832277B (zh) * 2020-06-04 2024-03-26 北京百度网讯科技有限公司 阅读理解模型的训练方法及阅读理解处理方法
CN111797241B (zh) * 2020-06-17 2023-08-22 北京北大软件工程股份有限公司 基于强化学习的事件论元抽取方法及装置
US11449535B2 (en) * 2020-07-13 2022-09-20 Servicenow, Inc. Generating conversational interfaces based on metadata
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US20220036007A1 (en) * 2020-07-31 2022-02-03 International Business Machines Corporation Bootstrapping relation training data
CN111858857B (zh) * 2020-07-31 2021-03-30 前海企保科技(深圳)有限公司 一种跨文档长文本的分层融合阅读理解方法及系统
CN112084299B (zh) * 2020-08-05 2022-05-31 山西大学 一种基于bert语义表示的阅读理解自动问答方法
WO2022043675A2 (en) * 2020-08-24 2022-03-03 Unlikely Artificial Intelligence Limited A computer implemented method for the automated analysis or use of data
US11935141B2 (en) 2020-08-31 2024-03-19 Nancy Bordier Decision assisting artificial intelligence system for voter electoral and legislative consensus building
US20220067078A1 (en) * 2020-09-02 2022-03-03 Medoid AI PC Aggregation system, Response Summary Process, and Method of Use
CN112052685B (zh) * 2020-09-11 2024-06-04 河南合众伟奇云智科技有限公司 一种基于二维时序网络的端到端文本实体关系识别方法
KR20230070488A (ko) * 2020-09-25 2023-05-23 소울 머신스 리미티드 체화된 동작주들의 이벤트 표현
CN112395876B (zh) * 2021-01-21 2021-04-13 华东交通大学 基于知识蒸馏和多任务学习的篇章关系识别方法与装置
US20220237565A1 (en) * 2021-01-25 2022-07-28 James M. Dzierzanowski Systems and methods for project accountability services
CN112948558B (zh) * 2021-03-10 2022-09-20 中国人民解放军国防科技大学 面向开放域对话系统的上下文增强的问题生成方法及装置
CN113010676B (zh) * 2021-03-15 2023-12-08 北京语言大学 一种文本知识提取方法、装置及自然语言推断系统
KR102286620B1 (ko) * 2021-04-07 2021-08-04 유희경 판매 교육 시스템
US20220343066A1 (en) * 2021-04-15 2022-10-27 Apple Inc. Digital assistant handling of personal requests
CN113221564B (zh) * 2021-04-29 2024-03-01 北京百度网讯科技有限公司 训练实体识别模型的方法、装置、电子设备和存储介质
CN113139059B (zh) * 2021-05-13 2022-07-15 八维(杭州)科技有限公司 一种基于人机对话的意向分级方法
CN112989016B (zh) * 2021-05-17 2021-08-10 南湖实验室 用于检测对话策略学习中模拟用户经验质量的方法和系统
CN113569020B (zh) * 2021-06-22 2023-10-10 复旦大学 智能会话系统中融合知识推理及知识导向的对话管理方法
US11797611B2 (en) * 2021-07-07 2023-10-24 International Business Machines Corporation Non-factoid question answering across tasks and domains
US20230009946A1 (en) * 2021-07-12 2023-01-12 International Business Machines Corporation Generative relation linking for question answering
US12073180B2 (en) 2021-08-24 2024-08-27 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US11989527B2 (en) 2021-08-24 2024-05-21 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US11977854B2 (en) 2021-08-24 2024-05-07 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US12067362B2 (en) 2021-08-24 2024-08-20 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US11989507B2 (en) 2021-08-24 2024-05-21 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US12050635B2 (en) 2021-09-17 2024-07-30 American Family Mutual Insurance Company, S.I. Systems and methods for unstructured data processing
CN114090771B (zh) * 2021-10-19 2024-07-23 广州数说故事信息科技有限公司 一种基于大数据的传播主张和消费者故事分析方法及系统
WO2023069396A1 (en) * 2021-10-21 2023-04-27 Cognizer, Inc. Semantic frame identification using transformers
US11869128B2 (en) * 2021-12-14 2024-01-09 Fujitsu Limited Image generation based on ethical viewpoints
US12112127B2 (en) * 2022-01-31 2024-10-08 Walmart Apollo, Llc Systems and methods for generating a customized graphical user interface
US11971887B2 (en) 2022-03-28 2024-04-30 International Business Machines Corporation Identifying and replacing logically neutral phrases in natural language queries for query processing
CN115293465B (zh) * 2022-10-09 2023-02-14 枫树谷(成都)科技有限责任公司 一种人群密度预测方法及系统
CN118246428B (zh) * 2024-05-27 2024-09-06 成都溯笙文化传播有限公司 基于数字人实时交互和生成式人工智能的回忆录生成系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008508581A (ja) 2004-07-27 2008-03-21 ソニー フランス エスアー 動作選択システム、動作選択方法、予測マシントレーニングシステム、予測マシントレーニング方法及び予測マシン
JP2014222511A (ja) 2010-01-18 2014-11-27 アップル インコーポレイテッド インテリジェント自動アシスタント

Family Cites Families (184)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2997469B2 (ja) * 1988-01-11 2000-01-11 株式会社日立製作所 自然言語理解方法および情報検索装置
JPH01309179A (ja) * 1988-02-04 1989-12-13 Hitachi Ltd 自然言語解析方式
JP2571599B2 (ja) * 1988-03-22 1997-01-16 富士通株式会社 データベース検索方式
CA2084443A1 (en) * 1992-01-31 1993-08-01 Leonard C. Swanson Method of item selection for computerized adaptive tests
JP2856618B2 (ja) * 1993-01-28 1999-02-10 日本電気株式会社 自然言語インタフェース方式
US5748841A (en) * 1994-02-25 1998-05-05 Morin; Philippe Supervised contextual language acquisition system
US5836771A (en) * 1996-12-02 1998-11-17 Ho; Chi Fai Learning method and system based on questioning
US20050005266A1 (en) * 1997-05-01 2005-01-06 Datig William E. Method of and apparatus for realizing synthetic knowledge processes in devices for useful applications
US5960384A (en) * 1997-09-03 1999-09-28 Brash; Douglas E. Method and device for parsing natural language sentences and other sequential symbolic expressions
US20030050927A1 (en) * 2001-09-07 2003-03-13 Araha, Inc. System and method for location, understanding and assimilation of digital documents through abstract indicia
US6604094B1 (en) * 2000-05-25 2003-08-05 Symbionautics Corporation Simulating human intelligence in computers using natural language dialog
US6618715B1 (en) * 2000-06-08 2003-09-09 International Business Machines Corporation Categorization based text processing
WO2001098942A2 (en) * 2000-06-19 2001-12-27 Lernout & Hauspie Speech Products N.V. Package driven parsing using structure function grammar
US6675159B1 (en) * 2000-07-27 2004-01-06 Science Applic Int Corp Concept-based search and retrieval system
US6778986B1 (en) 2000-07-31 2004-08-17 Eliyon Technologies Corporation Computer method and apparatus for determining site type of a web site
US8340955B2 (en) 2000-11-15 2012-12-25 International Business Machines Corporation System and method for finding the most likely answer to a natural language question
US7216073B2 (en) * 2001-03-13 2007-05-08 Intelligate, Ltd. Dynamic natural language understanding
US7436947B2 (en) * 2002-05-14 2008-10-14 Avaya Inc. Method and apparatus for automatic notification and response based on communication flow expressions
US8015143B2 (en) * 2002-05-22 2011-09-06 Estes Timothy W Knowledge discovery agent system and method
US20040034633A1 (en) * 2002-08-05 2004-02-19 Rickard John Terrell Data search system and method using mutual subsethood measures
US20050015363A1 (en) * 2003-07-15 2005-01-20 International Business Machines Corporation Method and structure for representing complex query elements in a modelling tool
US7295981B1 (en) * 2004-01-09 2007-11-13 At&T Corp. Method for building a natural language understanding model for a spoken dialog system
US20050165607A1 (en) 2004-01-22 2005-07-28 At&T Corp. System and method to disambiguate and clarify user intention in a spoken dialog system
US20070018953A1 (en) * 2004-03-03 2007-01-25 The Boeing Company System, method, and computer program product for anticipatory hypothesis-driven text retrieval and argumentation tools for strategic decision support
US7908143B2 (en) 2004-04-28 2011-03-15 International Business Machines Corporation Dialog call-flow optimization
US20050256700A1 (en) * 2004-05-11 2005-11-17 Moldovan Dan I Natural language question answering system and method utilizing a logic prover
US20060053000A1 (en) 2004-05-11 2006-03-09 Moldovan Dan I Natural language question answering system and method utilizing multi-modal logic
US7584100B2 (en) * 2004-06-30 2009-09-01 Microsoft Corporation Method and system for clustering using generalized sentence patterns
US20060036430A1 (en) 2004-08-12 2006-02-16 Junling Hu System and method for domain-based natural language consultation
US7716056B2 (en) * 2004-09-27 2010-05-11 Robert Bosch Corporation Method and system for interactive conversational dialogue for cognitively overloaded device users
US8849860B2 (en) * 2005-03-30 2014-09-30 Primal Fusion Inc. Systems and methods for applying statistical inference techniques to knowledge representations
WO2006113597A2 (en) * 2005-04-14 2006-10-26 The Regents Of The University Of California Method for information retrieval
US8764455B1 (en) * 2005-05-09 2014-07-01 Altis Avante Corp. Comprehension instruction system and method
US20070106499A1 (en) * 2005-08-09 2007-05-10 Kathleen Dahlgren Natural language search system
US7949529B2 (en) * 2005-08-29 2011-05-24 Voicebox Technologies, Inc. Mobile systems and methods of supporting natural language human-machine interactions
US8060534B1 (en) * 2005-09-21 2011-11-15 Infoblox Inc. Event management
US8290910B2 (en) * 2005-09-21 2012-10-16 Infoblox Inc. Semantic replication
US8533169B1 (en) * 2005-09-21 2013-09-10 Infoblox Inc. Transactional replication
JP2007141090A (ja) * 2005-11-21 2007-06-07 Fuji Xerox Co Ltd 質問応答システム、およびデータ検索方法、並びにコンピュータ・プログラム
US8321220B1 (en) * 2005-11-30 2012-11-27 At&T Intellectual Property Ii, L.P. System and method of semi-supervised learning for spoken language understanding using semantic role labeling
US20140134588A1 (en) * 2006-01-26 2014-05-15 Richard William Capone Educational testing network
US8204751B1 (en) * 2006-03-03 2012-06-19 At&T Intellectual Property Ii, L.P. Relevance recognition for a human machine dialog system contextual question answering based on a normalization of the length of the user input
US20160004766A1 (en) * 2006-10-10 2016-01-07 Abbyy Infopoisk Llc Search technology using synonims and paraphrasing
JP5538898B2 (ja) * 2007-01-04 2014-07-02 シンキング ソリューションズ ピーティーワイ リミテッド 言語分析
US8091070B2 (en) * 2007-01-08 2012-01-03 Microsoft Corporation Deep embedding of program languages
US20090012842A1 (en) * 2007-04-25 2009-01-08 Counsyl, Inc., A Delaware Corporation Methods and Systems of Automatic Ontology Population
US7899666B2 (en) * 2007-05-04 2011-03-01 Expert System S.P.A. Method and system for automatically extracting relations between concepts included in text
US8411935B2 (en) * 2007-07-11 2013-04-02 Behavioral Recognition Systems, Inc. Semantic representation module of a machine-learning engine in a video analysis system
US9063975B2 (en) * 2013-03-15 2015-06-23 International Business Machines Corporation Results of question and answer systems
US8280721B2 (en) * 2007-08-31 2012-10-02 Microsoft Corporation Efficiently representing word sense probabilities
US8463593B2 (en) * 2007-08-31 2013-06-11 Microsoft Corporation Natural language hypernym weighting for word sense disambiguation
US8521766B1 (en) * 2007-11-12 2013-08-27 W Leo Hoarty Systems and methods for providing information discovery and retrieval
US7809664B2 (en) * 2007-12-21 2010-10-05 Yahoo! Inc. Automated learning from a question and answering network of humans
WO2010037163A1 (en) * 2008-09-30 2010-04-08 National Ict Australia Limited Measuring cognitive load
US8335754B2 (en) 2009-03-06 2012-12-18 Tagged, Inc. Representing a document using a semantic structure
CN101872349B (zh) 2009-04-23 2013-06-19 国际商业机器公司 处理自然语言问题的方法和装置
WO2011059997A1 (en) * 2009-11-10 2011-05-19 Voicebox Technologies, Inc. System and method for providing a natural language content dedication service
US20110119047A1 (en) * 2009-11-19 2011-05-19 Tatu Ylonen Oy Ltd Joint disambiguation of the meaning of a natural language expression
US20110125734A1 (en) * 2009-11-23 2011-05-26 International Business Machines Corporation Questions and answers generation
US20110123967A1 (en) 2009-11-24 2011-05-26 Xerox Corporation Dialog system for comprehension evaluation
US20110161073A1 (en) * 2009-12-29 2011-06-30 Dynavox Systems, Llc System and method of disambiguating and selecting dictionary definitions for one or more target words
US10679605B2 (en) * 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US8700620B1 (en) * 2010-04-27 2014-04-15 Jeremy Lieberman Artificial intelligence method and apparatus
US9110882B2 (en) 2010-05-14 2015-08-18 Amazon Technologies, Inc. Extracting structured knowledge from unstructured text
US8990135B2 (en) * 2010-06-15 2015-03-24 The Regents Of The University Of Michigan Personalized health risk assessment for critical care
US10474647B2 (en) * 2010-06-22 2019-11-12 Primal Fusion Inc. Methods and devices for customizing knowledge representation systems
US9235806B2 (en) * 2010-06-22 2016-01-12 Primal Fusion Inc. Methods and devices for customizing knowledge representation systems
US8682921B2 (en) * 2010-07-07 2014-03-25 Johnson Controls Technology Company Query engine for building management systems
US8452770B2 (en) 2010-07-15 2013-05-28 Xerox Corporation Constrained nonnegative tensor factorization for clustering
US8301640B2 (en) * 2010-11-24 2012-10-30 King Abdulaziz City For Science And Technology System and method for rating a written document
US8856050B2 (en) * 2011-01-13 2014-10-07 International Business Machines Corporation System and method for domain adaption with partial observation
US20120209606A1 (en) * 2011-02-14 2012-08-16 Nice Systems Ltd. Method and apparatus for information extraction from interactions
US11068954B2 (en) * 2015-11-20 2021-07-20 Voicemonk Inc System for virtual agents to help customers and businesses
US9047567B2 (en) * 2011-07-15 2015-06-02 International Business Machines Corporation Utilizing failures in question and answer system responses to enhance the accuracy of question and answer systems
US8838434B1 (en) 2011-07-29 2014-09-16 Nuance Communications, Inc. Bootstrap call router to other languages using selected N-best translations
US9015031B2 (en) 2011-08-04 2015-04-21 International Business Machines Corporation Predicting lexical answer types in open domain question and answering (QA) systems
US20130132308A1 (en) 2011-11-22 2013-05-23 Gregory Jensen Boss Enhanced DeepQA in a Medical Environment
US20150039295A1 (en) * 2011-12-20 2015-02-05 Alona Soschen Natural language processor
CN103186523B (zh) * 2011-12-30 2017-05-10 富泰华工业(深圳)有限公司 电子设备及其自然语言分析方法
US9275341B2 (en) * 2012-02-29 2016-03-01 New Sapience, Inc. Method and system for machine comprehension
EP2839391A4 (en) 2012-04-20 2016-01-27 Maluuba Inc CONVERSATION AGENT
US9737813B2 (en) * 2012-05-07 2017-08-22 Nili Metuki Cognitive training method for semantic skills enhancement
JP5389273B1 (ja) * 2012-06-25 2014-01-15 株式会社東芝 文脈解析装置および文脈解析方法
US20140024008A1 (en) * 2012-07-05 2014-01-23 Kumar R. Sathy Standards-based personalized learning assessments for school and home
GB2505218A (en) * 2012-08-23 2014-02-26 Ibm Logical contingency analysis for domain-specific languages
US9264391B2 (en) * 2012-11-01 2016-02-16 Salesforce.Com, Inc. Computer implemented methods and apparatus for providing near real-time predicted engagement level feedback to a user composing a social media message
BR122017002789B1 (pt) * 2013-02-15 2021-05-18 Voxy, Inc sistemas e métodos para aprendizagem de idioma
US9569425B2 (en) * 2013-03-01 2017-02-14 The Software Shop, Inc. Systems and methods for improving the efficiency of syntactic and semantic analysis in automated processes for natural language understanding using traveling features
US9269354B2 (en) 2013-03-11 2016-02-23 Nuance Communications, Inc. Semantic re-ranking of NLU results in conversational dialogue applications
US20140280314A1 (en) * 2013-03-14 2014-09-18 Advanced Search Laboratories, lnc. Dimensional Articulation and Cognium Organization for Information Retrieval Systems
US9875237B2 (en) * 2013-03-14 2018-01-23 Microsfot Technology Licensing, Llc Using human perception in building language understanding models
WO2014160309A1 (en) * 2013-03-14 2014-10-02 Advanced Search Laboratories, Inc. Method and apparatus for human-machine interaction
US9311294B2 (en) * 2013-03-15 2016-04-12 International Business Machines Corporation Enhanced answers in DeepQA system according to user preferences
US9805718B2 (en) 2013-04-19 2017-10-31 Sri Internaitonal Clarifying natural language input using targeted questions
WO2014182820A2 (en) * 2013-05-07 2014-11-13 Haley Paul V System for knowledge acquisition
EP2994846A4 (en) * 2013-05-09 2017-01-25 Moodwire, Inc. Hybrid human machine learning system and method
US9772994B2 (en) * 2013-07-25 2017-09-26 Intel Corporation Self-learning statistical natural language processing for automatic production of virtual personal assistants
US9268861B2 (en) * 2013-08-19 2016-02-23 Yahoo! Inc. Method and system for recommending relevant web content to second screen application users
US9336204B1 (en) * 2013-09-18 2016-05-10 Amazon Technologies, Inc. Techniques for modifying the complexity of literary content
US9058374B2 (en) 2013-09-26 2015-06-16 International Business Machines Corporation Concept driven automatic section identification
US9189742B2 (en) 2013-11-20 2015-11-17 Justin London Adaptive virtual intelligent agent
US10079013B2 (en) 2013-11-27 2018-09-18 Sri International Sharing intents to provide virtual assistance in a multi-person dialog
US10073835B2 (en) * 2013-12-03 2018-09-11 International Business Machines Corporation Detecting literary elements in literature and their importance through semantic analysis and literary correlation
US9460085B2 (en) * 2013-12-09 2016-10-04 International Business Machines Corporation Testing and training a question-answering system
RU2579699C2 (ru) * 2013-12-19 2016-04-10 ООО "Аби ИнфоПоиск" Разрешение семантической неоднозначности при помощи не зависящей от языка семантической структуры
JP5904559B2 (ja) * 2013-12-20 2016-04-13 国立研究開発法人情報通信研究機構 シナリオ生成装置、及びそのためのコンピュータプログラム
KR20150082783A (ko) * 2014-01-08 2015-07-16 한국전자통신연구원 텍스트 빅데이터 기반 의미 프레임 운용 방법 및 이를 지원하는 장치
US20150242974A1 (en) * 2014-02-24 2015-08-27 Mindojo Ltd. Adaptive e-learning engine with embedded datagraph structure
US20150248398A1 (en) * 2014-02-28 2015-09-03 Choosito! Inc. Adaptive reading level assessment for personalized search
US9378273B2 (en) * 2014-03-13 2016-06-28 International Business Machines Corporation System and method for question answering by reformulating word problems
US20150309965A1 (en) * 2014-04-28 2015-10-29 Elwha Llc Methods, systems, and devices for outcome prediction of text submission to network based on corpora analysis
US9659005B2 (en) 2014-05-16 2017-05-23 Semantix Technologies Corporation System for semantic interpretation
US10726831B2 (en) * 2014-05-20 2020-07-28 Amazon Technologies, Inc. Context interpretation in natural language processing using previous dialog acts
CN105279145B (zh) * 2014-05-27 2018-01-09 王楠 一种计算机语义工程系统
CN107113222B (zh) * 2014-06-06 2020-09-01 谷歌有限责任公司 基于环境的主动聊天信息系统
US9323742B2 (en) * 2014-06-09 2016-04-26 Xerox Corporation Method and apparatus for providing semantic data architecture
CN104050256B (zh) * 2014-06-13 2017-05-24 西安蒜泥电子科技有限责任公司 基于主动学习的问答方法及采用该方法的问答系统
US10452992B2 (en) * 2014-06-30 2019-10-22 Amazon Technologies, Inc. Interactive interfaces for machine learning model evaluations
US11100420B2 (en) * 2014-06-30 2021-08-24 Amazon Technologies, Inc. Input processing for machine learning
US9767794B2 (en) 2014-08-11 2017-09-19 Nuance Communications, Inc. Dialog flow management in hierarchical task dialogs
US9760626B2 (en) 2014-09-05 2017-09-12 International Business Machines Corporation Optimizing parsing outcomes of documents
US10783900B2 (en) * 2014-10-03 2020-09-22 Google Llc Convolutional, long short-term memory, fully connected deep neural networks
GB2531720A (en) * 2014-10-27 2016-05-04 Ibm Automatic question generation from natural text
US9946763B2 (en) * 2014-11-05 2018-04-17 International Business Machines Corporation Evaluating passages in a question answering computer system
KR102033395B1 (ko) * 2014-11-20 2019-10-18 한국전자통신연구원 심층 자연어 질문 분석 기반 구조화된 지식베이스 질의응답 시스템 및 그 방법
US10515314B2 (en) * 2014-12-03 2019-12-24 Educational Testing Service Computer-implemented systems and methods for generating a supervised model for lexical cohesion detection
US9626622B2 (en) 2014-12-15 2017-04-18 International Business Machines Corporation Training a question/answer system using answer keys based on forum content
US9704103B2 (en) * 2014-12-16 2017-07-11 The Affinity Project, Inc. Digital companions for human users
US9373086B1 (en) 2015-01-07 2016-06-21 International Business Machines Corporation Crowdsource reasoning process to facilitate question answering
US10885803B2 (en) * 2015-01-23 2021-01-05 Massachusetts Institute Of Technology System and method for real-time analysis and guidance of learning
RU2592396C1 (ru) 2015-02-03 2016-07-20 Общество с ограниченной ответственностью "Аби ИнфоПоиск" Способ и система для машинного извлечения и интерпретации текстовой информации
US10169489B2 (en) * 2015-03-02 2019-01-01 International Business Machines Corporation Query disambiguation in a question-answering environment
US9911412B2 (en) * 2015-03-06 2018-03-06 Nuance Communications, Inc. Evidence-based natural language input recognition
US10133728B2 (en) 2015-03-20 2018-11-20 Microsoft Technology Licensing, Llc Semantic parsing for complex knowledge extraction
US20160293045A1 (en) * 2015-03-31 2016-10-06 Fujitsu Limited Vocabulary learning support system
US9720738B2 (en) * 2015-04-09 2017-08-01 International Business Machines Corporation Datacenter scheduling of applications using machine learning techniques
US20160306791A1 (en) * 2015-04-15 2016-10-20 International Business Machines Corporation Determining User-Friendly Information to Solicit in a Question and Answer System
US9672814B2 (en) * 2015-05-08 2017-06-06 International Business Machines Corporation Semi-supervised learning of word embeddings
US10108603B2 (en) * 2015-06-01 2018-10-23 Nuance Communications, Inc. Processing natural language text with context-specific linguistic model
US20160358488A1 (en) * 2015-06-03 2016-12-08 International Business Machines Corporation Dynamic learning supplementation with intelligent delivery of appropriate content
US10628735B2 (en) * 2015-06-05 2020-04-21 Deepmind Technologies Limited Reading comprehension neural networks
US10210484B2 (en) * 2015-06-05 2019-02-19 International Business Machines Corporation Altering a functional characteristic of a computer used by an invitee to a meeting
US9946924B2 (en) * 2015-06-10 2018-04-17 Accenture Global Services Limited System and method for automating information abstraction process for documents
US10496749B2 (en) * 2015-06-12 2019-12-03 Satyanarayana Krishnamurthy Unified semantics-focused language processing and zero base knowledge building system
US9880999B2 (en) * 2015-07-03 2018-01-30 The University Of North Carolina At Charlotte Natural language relatedness tool using mined semantic analysis
US20170018268A1 (en) * 2015-07-14 2017-01-19 Nuance Communications, Inc. Systems and methods for updating a language model based on user input
US10170014B2 (en) * 2015-07-28 2019-01-01 International Business Machines Corporation Domain-specific question-answer pair generation
US20170031893A1 (en) * 2015-07-30 2017-02-02 Pat Inc. Set-based Parsing for Computer-Implemented Linguistic Analysis
US10255921B2 (en) * 2015-07-31 2019-04-09 Google Llc Managing dialog data providers
US10628413B2 (en) * 2015-08-03 2020-04-21 International Business Machines Corporation Mapping questions to complex database lookups using synthetic events
US20170039873A1 (en) * 2015-08-05 2017-02-09 Fujitsu Limited Providing adaptive electronic reading support
JP6544131B2 (ja) * 2015-08-14 2019-07-17 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
US10108702B2 (en) * 2015-08-24 2018-10-23 International Business Machines Corporation Topic shift detector
US9715498B2 (en) * 2015-08-31 2017-07-25 Microsoft Technology Licensing, Llc Distributed server system for language understanding
JP6678930B2 (ja) * 2015-08-31 2020-04-15 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 分類モデルを学習する方法、コンピュータ・システムおよびコンピュータ・プログラム
WO2017044415A1 (en) * 2015-09-07 2017-03-16 Voicebox Technologies Corporation System and method for eliciting open-ended natural language responses to questions to train natural language processors
US20170075877A1 (en) * 2015-09-16 2017-03-16 Marie-Therese LEPELTIER Methods and systems of handling patent claims
US9767381B2 (en) * 2015-09-22 2017-09-19 Xerox Corporation Similarity-based detection of prominent objects using deep CNN pooling layers as features
US10289740B2 (en) 2015-09-24 2019-05-14 Searchmetrics Gmbh Computer systems to outline search content and related methods therefor
US10490094B2 (en) * 2015-09-25 2019-11-26 International Business Machines Corporation Techniques for transforming questions of a question set to facilitate answer aggregation and display
US10445656B2 (en) * 2015-09-29 2019-10-15 Cognitive Scale, Inc. Cognitive machine learning system
US20170132371A1 (en) * 2015-10-19 2017-05-11 Parkland Center For Clinical Innovation Automated Patient Chart Review System and Method
US10339160B2 (en) * 2015-10-29 2019-07-02 Qualtrics, Llc Organizing survey text responses
US10585984B2 (en) * 2015-11-10 2020-03-10 International Business Machines Corporation Techniques for improving input text processing in a data processing system that answers questions
US10521410B2 (en) * 2015-11-20 2019-12-31 International Business Machines Corporation Semantic graph augmentation for domain adaptation
US9727554B2 (en) * 2015-11-24 2017-08-08 International Business Machines Corporation Knowledge-based editor with natural language interface
US9971831B2 (en) * 2015-11-25 2018-05-15 International Business Machines Corporation Managing complex queries with predicates
US9984050B2 (en) 2015-12-01 2018-05-29 International Business Machines Corporation Ground truth collection via browser for passage-question pairings
RU2626555C2 (ru) * 2015-12-02 2017-07-28 Общество с ограниченной ответственностью "Аби Продакшн" Извлечение сущностей из текстов на естественном языке
US9754504B2 (en) * 2015-12-14 2017-09-05 International Business Machines Corporation Generating multiple choice questions and answers based on document text
KR102019757B1 (ko) * 2015-12-15 2019-09-10 한국전자통신연구원 언어 분석 오류 보정 장치 및 방법
US10262062B2 (en) * 2015-12-21 2019-04-16 Adobe Inc. Natural language system question classifier, semantic representations, and logical form templates
US9519871B1 (en) * 2015-12-21 2016-12-13 International Business Machines Corporation Contextual text adaptation
US20170185919A1 (en) * 2015-12-29 2017-06-29 Cognitive Scale, Inc. Cognitive Persona Selection
US10789539B2 (en) * 2015-12-31 2020-09-29 Nuance Communications, Inc. Probabilistic ranking for natural language understanding
US11520813B2 (en) 2016-01-04 2022-12-06 International Business Machines Corporation Entailment knowledge base in natural language processing systems
US9858336B2 (en) * 2016-01-05 2018-01-02 International Business Machines Corporation Readability awareness in natural language processing systems
US10755195B2 (en) * 2016-01-13 2020-08-25 International Business Machines Corporation Adaptive, personalized action-aware communication and conversation prioritization
US9858927B2 (en) * 2016-02-12 2018-01-02 Amazon Technologies, Inc Processing spoken commands to control distributed audio outputs
US10380258B2 (en) * 2016-03-31 2019-08-13 International Business Machines Corporation System, method, and recording medium for corpus pattern paraphrasing
US10643488B2 (en) * 2016-06-23 2020-05-05 Lystnr, Llc System and method of assessing depth-of-understanding
US10346401B2 (en) * 2016-07-07 2019-07-09 Accenture Global Solutions Limited Query rewriting in a relational data harmonization framework
US20180018322A1 (en) * 2016-07-15 2018-01-18 Intuit Inc. System and method for automatically understanding lines of compliance forms through natural language patterns
US11222266B2 (en) * 2016-07-15 2022-01-11 Intuit Inc. System and method for automatic learning of functions

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008508581A (ja) 2004-07-27 2008-03-21 ソニー フランス エスアー 動作選択システム、動作選択方法、予測マシントレーニングシステム、予測マシントレーニング方法及び予測マシン
JP2014222511A (ja) 2010-01-18 2014-11-27 アップル インコーポレイテッド インテリジェント自動アシスタント

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
亀田 雅之 外2名,曖昧性解消のための対話機構を備えた日本語解析系,電子情報通信学会技術研究報告,日本,社団法人電子情報通信学会,1991年 7月18日,第91巻第149号,pp.9-16
神田 他,マルチドメイン音声対話システムにおける対話履歴を利用したドメイン選択,情報処理学会論文誌,日本,情報処理学会,2007年5月,Vol.48 No.5,pp.1980-1989
藤井 他,三才児をモデルにした知識自動獲得システムの応用例と試行結果,情報処理学会公演論文集,日本,社団法人情報処理学会,昭和62年9月28日,第35回全国大会公演論文集(II)pp.1879-1880
銀林 他,三才児をモデルにした知識自動獲得システムの概要,情報処理学会公演論文集,日本,社団法人情報処理学会,昭和62年9月28日,第35回全国大会公演論文集(II)pp.1877-1878
黒橋 禎夫,大規模テキストコーパスからの知識獲得,システム/制御/情報,日本,システム制御情報学会,2009年11月15日,第53巻第11号,pp.18-23

Also Published As

Publication number Publication date
WO2017222738A1 (en) 2017-12-28
US10621285B2 (en) 2020-04-14
US20200034421A1 (en) 2020-01-30
US20200034422A1 (en) 2020-01-30
CN109478205A (zh) 2019-03-15
US10628523B2 (en) 2020-04-21
US10606952B2 (en) 2020-03-31
US20200034423A1 (en) 2020-01-30
US20200034424A1 (en) 2020-01-30
US20200034427A1 (en) 2020-01-30
CN109478205B (zh) 2023-11-14
US10657205B2 (en) 2020-05-19
US20200034420A1 (en) 2020-01-30
US20170371861A1 (en) 2017-12-28
KR20190019962A (ko) 2019-02-27
US10614166B2 (en) 2020-04-07
US10496754B1 (en) 2019-12-03
EP3475838A4 (en) 2020-02-19
US10599778B2 (en) 2020-03-24
JP2019526139A (ja) 2019-09-12
US10650099B2 (en) 2020-05-12
US20200034428A1 (en) 2020-01-30
US10614165B2 (en) 2020-04-07
KR102414491B1 (ko) 2022-06-28
EP3475838A1 (en) 2019-05-01

Similar Documents

Publication Publication Date Title
JP7178995B2 (ja) コンピュータ学習および理解のためのアーキテクチャおよびプロセス
Chowdhary et al. Natural language processing
US11645479B1 (en) Method for AI language self-improvement agent using language modeling and tree search techniques
US20140249801A1 (en) Systems and methods for improving the efficiency of syntactic and semantic analysis in automated processes for natural language understanding
WO2019134091A1 (en) Providing emotional care in a session
Szymański et al. Information retrieval with semantic memory model
Levison et al. The semantic representation of natural language
Vargas Narrative information extraction with non-linear natural language processing pipelines
US11948560B1 (en) Method for AI language self-improvement agent using language modeling and tree search techniques
Sicilia et al. ISABEL: An Inclusive and Collaborative Task-Oriented Dialogue System
Cingillioglu et al. Neural logic framework for digital assistants
Abdul-Kader An investigation on question answering for an online feedable Chatbot
Panesar Natural language processing (NLP) in Artificial Intelligence (AI): a functional linguistic perspective
Hassani Commonsense Knowledge for 3D Modeling: A Machine Learning Approach
Gangal A Suite of Low-Data Generation Settings Necessitating Interventions on End-to-End NLG Models
Basu Natural Language Understanding and Commonsense Reasoning Using Answer Set Programming and Its Applications
Bizuayehu Amharic chatbot on Ethiopian civil code law using a deep learning approach
Chan Understanding, Building, and Evaluating Models for Context Aware Conditional Natural Language Generation
Spooner et al. Using Answer Set Grammars to Learn Explanations for Winograd Schemas
Ross Learning Language with Multimodal Models
Speer Learning common sense knowledge from user interaction and principal component analysis
Oltramari TMEO–Tutoring Methodology for Enrichment of Ontologies
Hossain Creative natural language generation: humor and beyond
Thomas The Algorithmic Expansion of Stories
Kazantseva Topical Structure in Long Informal Documents

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190124

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200518

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20201110

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210309

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20210713

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20220208

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20220222

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20220412

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220520

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220622

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220722

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20220920

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20221018

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20221018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221115

R150 Certificate of patent or registration of utility model

Ref document number: 7178995

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150