JP2023532669A - 文書処理および応答生成システム - Google Patents

文書処理および応答生成システム Download PDF

Info

Publication number
JP2023532669A
JP2023532669A JP2022580073A JP2022580073A JP2023532669A JP 2023532669 A JP2023532669 A JP 2023532669A JP 2022580073 A JP2022580073 A JP 2022580073A JP 2022580073 A JP2022580073 A JP 2022580073A JP 2023532669 A JP2023532669 A JP 2023532669A
Authority
JP
Japan
Prior art keywords
document
question
source
answer
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022580073A
Other languages
English (en)
Inventor
デイビッド ナハムー,
イゴル ロディティス ヤブロコフ,
バイババ ゴエル,
エティエン マーチェレット,
エレン エイデ キスラル,
スティーブン ジョン レニー,
マリー ウェンゼル メティーア,
スーンソーン アティバニチャヤフォン,
ジョセフ アレン プルイット,
ジョン プルイット,
ブライアン デンプシー,
アナンド,ランガチャリ
メーガン ヒッキー,
アジンキヤ ザドブケ,
ニール ロヒット マリナー,
ルーカス サイラー,
グレゴリー ペルトン,
ソン,チョル
マシュー ブライアン コブ,
カルミ ジョセフ ロスバーグ,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pryon Inc
Original Assignee
Pryon Inc
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 Pryon Inc filed Critical Pryon Inc
Publication of JP2023532669A publication Critical patent/JP2023532669A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • G06F16/24522Translation of natural language queries to structured queries
    • 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
    • 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
    • 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/3325Reformulation based on results of preceding query
    • G06F16/3326Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages
    • G06F16/3328Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages using graphical result space presentation or visualisation
    • 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
    • G06F16/3349Reuse of stored results of previous queries
    • 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/335Filtering based on additional data, e.g. user or group profiles
    • 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/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/137Hierarchical processing, e.g. outlines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • 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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/022Knowledge engineering; Knowledge acquisition
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)
  • Document Processing Apparatus (AREA)

Abstract

ローカルデバイスにおいて、複数のソース文書のリポジトリのソース文書の、ローカルデバイスからアクセス可能な変換コンテンツと関連付けられているソースコンテンツに関連する質問を表すクエリデータを遠隔デバイスから受信することを含む、方法を含め、方法、システム、デバイス、装置、媒体、設計構造および他の実施態様が開示される。本方法は、ローカルデバイスにおける、クエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、遠隔デバイスからアクセス可能なソース文書において、変換コンテンツの少なくとも一部分に対応するソース文書の少なくとも一部分にアクセスするためのポインタ、またはソース文書の少なくとも一部分の複製のうちの1つまたは複数を含む出力データを生成することをさらに含む。【選択図】図1

Description

関連出願の相互参照
本出願は、2020年6月25日に出願された「Document Processing and Response Generation System」と題する米国仮特許出願第63/043,906号に対する優先権およびその利益を主張し、その全文が参照により本明細書に組み入れられる。
本発明は、文書処理および応答生成システムに関し、特に、自然言語の質問として提供され得るユーザのクエリに応答して、文書の潜在的に大きなリポジトリから迅速かつ効率的に回答を決定することを容易にするアプローチに関する。
組織は、多くの場合、管理情報であれ、技術情報であれ、情報のリポジトリとしてサービス提供するために大量の文書を収集する。例えば、ある法人が人事文書の大量のライブラリを有していることがあり、これらは共に、願わくは一貫して、その法人の人事方針および手続きを定義している。法人の従業員などのユーザは、「私にはどれくらいの休暇が与えられているか」などの質問に回答するために、文書のコレクションを検索しなければならないことがある。
非構造化データおよび構造化データがファイル内に存在するファイルを中心とした処理の共通の問題は、ユーザがそのニーズおよび要望に応じて文書をナビゲートするための豊富な自然言語インタフェースが存在しないことである。そのため、例えば、多くの文書には、小さなフォントでの長い説明のページがあり、これは、必要であれば、ユーザが必要とする重要な情報を見つけるために、ユーザは説明全体を読むことを余儀なくされる。
文書の大量のライブラリが関わる状況で起こり得る別の問題は、組織が、それらの文書を容易に検索可能な文書へと整理し管理するための(すなわち、質疑応答クエリのための)リソースを有していないことがあり、そうするためにサードパーティーのサービスに依存する必要があり得ることである。さらに別の状況では、それらの文書を検索可能な形態で維持管理するためのリソースを有する組織が、(異なるロケールにおける)複数の分散されたコンピューティングネットワークを有し、(効率およびコストの理由から)検索可能な文書の同じセットを別々のローカルネットワークの各々に個別に格納するのではなく、単一の集中化された場所に格納すると決定することがある。このような状況では、特に、機密情報が、中央またはサードパーティーの検索可能な文書リポジトリに文書を格納している組織の外部の人々がアクセス可能な通信メディアを介して通信される必要がある場合、データセキュリティおよびプライバシーの問題が懸念となっている。
本開示は、ユーザによって提供されたクエリに応答して、文書処理システムによってアクセス可能な文書のライブラリおよび他の様々なデータ管理アプリケーションから回答を決定するように構成された文書処理および応答生成システムに向けられている。いくつかの実施形態において、システムは、クエリを提出したユーザに対して、ユーザがポインタによって指し示された文書(および/または文書の特定の部分)を取得できるように、ユーザが個別にアクセス可能な、文書のライブラリ(またはデータ管理アプリケーションの格納された記録)内の文書の部分(例えば、フレーズまたは抜粋)へのポインタを含む出力を返す。実際のユーザが読める回答および/または回答の要約が、加えて、または代替的にユーザに提供してもよい。文書ライブラリは、文書処理システムがアクセスする資格を有する遠隔の安全なデータリポジトリであるか、またはローカルリポジトリである可能性がある。文書処理は、ソースコンテンツの、文書オブジェクトモデル(DOM)項目に整理される変換コンテンツへの1つまたは複数の変換に基づき得る。すると、Q-A検索は変換コンテンツに適用することができる。検索精度および検索速度は、質問回答キャッシュの使用を通じて向上することができる。
したがって、いくつかの変形形態では、ローカルデバイスにおいて、複数のソース文書のリポジトリのソース文書の、ローカルデバイスからアクセス可能な変換コンテンツと関連付けられているソースコンテンツに関連する質問を表すクエリデータを遠隔デバイスから受信することを含む、第1の方法が提供される。本方法は、ローカルデバイスにおける、クエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、出力データを生成することをさらに含み、出力データは、遠隔デバイスからアクセス可能なソース文書において、変換コンテンツの少なくとも一部分に対応するソース文書の少なくとも一部分にアクセスするためのポインタ、またはソース文書の少なくとも一部分の複製のうちの1つまたは複数を含む。
第1の方法の実施形態は、以下の特徴のうちの1つ以上を含む、本開示に記載の特徴のうちの少なくともいくつかを含んでもよい。
ソース文書の少なくとも一部分にアクセスするためのポインタには、例えば、複数のソース文書のリポジトリ内のソース文書を識別する文書識別子、複数のソース文書のリポジトリ内のソース文書のネットワークアドレス、ソース文書内のソース文書の少なくとも一部分の開始位置および終了位置、ならびに/またはワードスパン(word span)のうちの1つまたは複数が含まれ得る。
変換コンテンツの少なくとも一部分は、文書オブジェクトモデル(DOM)データ項目のリポジトリに格納されてもよく、変換コンテンツの少なくとも一部分に対応するDOMデータ項目は、ソース文書の少なくとも一部分にアクセスするためのポインタと、例えば、ソースコンテンツの少なくとも一部分を表す少なくとも1つの変換された要素、ソースコンテンツの少なくとも一部分、および/またはソースコンテンツの少なくとも一部分に関連付けられたコンテキスト情報のうちの1つまたは複数とを含む。
ソース文書の少なくとも一部分に関連付けられたコンテキスト情報は、ソース文書のソースコンテンツに関連する質問に対する出力データの応答性レベルを示す1人または複数人のユーザからのフィードバックデータを含んでもよい。
本方法は、ローカルデバイスにおいてソース文書の複製を受信することと、ソース文書の複製を複数の文書セグメントにセグメント化することと、複数の文書セグメントの各々を、1つまたは複数の変換に従って1つまたは複数のそれぞれの変換セグメントに変換することとをさらに含んでもよい。
本方法は、複数のソース文書のリポジトリにおけるソース文書の位置を特定する情報を管理者から受信することをさらに含んでもよい。
1つまたは複数の変換は、例えば、複数の文書セグメントの粗いコンテンツを表す粗い数値ベクトルを生成する粗い線形化変換、および/または複数の文書セグメントのコンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含んでもよい。
粗い変換または詳細変換のうちの1つまたは複数は、BERT(トランスフォーマによる双方向エンコーダ表現)処理に基づいて1つまたは複数の文書セグメントに適用される変換を含んでもよい。
本方法は、クエリデータを、変換ソースコンテンツと適合する変換クエリデータに変換することをさらに含んでもよい。
本方法は、第1の基準に従って、変換ソースコンテンツ内の、それぞれの粗い数値ベクトルが変換クエリデータとマッチしている1つまたは複数の候補部分を特定することをさらに含んでもよい。
本方法は、それぞれの数値ベクトルに基づいて特定された1つまたは複数の候補部分に対応する1つまたは複数の詳細変換コンテンツ記録から、第2の基準に従って、クエリデータの詳細変換データにマッチする少なくとも1つの詳細変換コンテンツ記録を決定することをさらに含んでもよい。
本方法は、第2の基準に従って、変換ソースコンテンツ内の、それぞれの詳細変換コンテンツ記録が変換クエリデータとマッチしている1つまたは複数の候補部分を特定することをさらに含んでもよい。
複数の文書セグメントの各々を変換することは、1つまたは複数の変換を実装する訓練済みニューラルネットワークを使用して、複数の文書セグメントの各々を変換することを含んでもよい。
ソースコンテンツを複数の文書セグメントにセグメント化することは、1つまたは複数の前処理規則に従ってソースコンテンツを複数の文書セグメントにセグメント化することを含んでもよい。
ソースコンテンツをセグメント化することは、ソースコンテンツの1つの部分とソースコンテンツの1つまたは複数の他の部分とを意味的に関連付ける階層的規則に従って、ソースコンテンツを複数の文書セグメントにセグメント化することを含んでもよい。
本方法は、受信ソース文書に関連付けられた拡張データを取得することと、ソース文書と拡張データとの組み合わせを複数の文書セグメントにセグメント化することとをさらに含んでもよい。
拡張データを取得することは、例えば、ソース文書に含まれるリンクに基づいて拡張データを取得すること、および/または共参照解析を実行して、ソース文書において特定される1つもしくは複数の名称もしくは表現を決定し、ローカルデバイスからアクセス可能な情報リポジトリを検索して、ソース文書において特定される決定済みの1つもしくは複数の名称もしくは表現に関連付けられた追加の情報を取得することのうちの1つまたは複数を含んでもよい。
生成された出力データは、変換コンテンツの少なくとも一部分に対応するソースコンテンツの要約をさらに含んでもよい。
本方法は、出力データを遠隔デバイスに送信することをさらに含んでもよい。
本方法は、質問を表す受信クエリデータに基づいて、ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定し、変換コンテンツに適用することをさらに含んでもよい。
本方法は、受信クエリデータが所定の質問の1つにマッチするかどうかを判定することと、受信クエリデータが所定の質問の1つにマッチすると判定したことに応答して、所定の質問のうちマッチした質問に関連付けられた1つまたは複数の回答データ記録に基づいて出力データを生成することとをさらに含んでもよい。
本方法は、ソースコンテンツを1つまたは複数のコンテンツ部分に分割することと、1つまたは複数のコンテンツ部分を詳細変換に従って変換し、1つまたは複数のコンテンツ部分のコンテンツを表す詳細変換コンテンツ記録を生成することとをさらに含んでもよい。
詳細変換は、BERT(トランスフォーマによる双方向エンコーダ表現)処理に基づいて1つまたは複数の文書セグメントに適用される変換を含んでもよい。
1つまたは複数のコンテンツ部分のうちの少なくとも1つを変換することは、1つまたは複数のコンテンツ部分のうちの少なくとも1つを、質問および回答ペアの1つまたは複数のグランドトゥルースサンプルに基づいて、変換コンテンツに変換することを含んでもよい。
本方法は、詳細変換に従って変換された1つまたは複数のコンテンツ部分に基づいてソース文書の要約を導出することをさらに含んでもよく、要約を導出することは、類似度閾値を超える所定の要約部分に対してある類似度レベルを有する、変換された1つまたは複数のコンテンツ部分のうちの少なくとも1つを特定することを含む。
ローカルデバイスは、例えば、遠隔デバイスが位置し、セカンドパーティーによって運営される第2のネットワークと異なる、ファーストパーティーによって運営される第1のネットワーク、またはローカルデバイスおよび遠隔デバイスが両方とも位置する第3のネットワークのうちの1つに位置し得る。
本方法は、遠隔デバイス(例えば、顧客ネットワークノード)において、ソース文書の複製を複数の文書セグメントにセグメント化することと、遠隔デバイスにおいて、複数の文書セグメントの各々を、1つまたは複数の変換に従って1つまたは複数のそれぞれの変換セグメントに変換することと、ローカルデバイスに格納するために1つまたは複数のそれぞれの変換セグメントをローカルデバイスに伝達することとをさらに含んでもよい。
いくつかの変形形態では、遠隔デバイスから、複数のソース文書のリポジトリのソース文書の、システムからアクセス可能な変換コンテンツと関連付けられているソースコンテンツに関連する質問を表すクエリデータを受信するように構成された1つまたは複数の通信インタフェースを備えている第1のシステムが提供される。システムは、クエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、遠隔デバイスからアクセス可能なソース文書において、変換コンテンツの少なくとも一部分に対応するソース文書の少なくとも一部分にアクセスするためのポインタを少なくとも含む出力データを生成するように構成されたクエリエンジンをさらに備えてもよい。
第1のシステムの実施形態は、第1の方法に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
システムは、1つまたは複数のインタフェースを介して受信されたソース文書の複製を複数の文書セグメントにセグメント化し、1つまたは複数の変換に従って複数の文書セグメントの各々を1つまたは複数のそれぞれの変換セグメントに変換するように構成された取り込みエンジンをさらに備えてもよい。
1つまたは複数の変換は、例えば、複数の文書セグメントの粗いコンテンツを表す粗い数値ベクトルを生成する粗い線形化変換、および/または複数の文書セグメントのコンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含んでもよい。
システムは、クエリデータを、変換ソースコンテンツに適合する変換クエリデータに変換し、第1の基準に従って、変換ソースコンテンツ内の、それぞれの粗い数値ベクトルが変換クエリデータとマッチしている1つまたは複数の候補部分を特定し、それぞれの粗い数値ベクトルに基づいて特定された1つまたは複数の候補部分に対応する1つまたは複数の詳細変換コンテンツ記録から、第2の基準に従って、クエリデータの詳細変換データにマッチする少なくとも1つの詳細変換コンテンツ記録を決定するように構成されたクエリ処理モジュールをさらに備えてもよい。
ソースコンテンツをセグメント化するように構成された取り込みエンジンは、1つまたは複数の前処理規則に従ってソースコンテンツを複数の文書セグメントにセグメント化するように構成されてもよく、1つまたは複数の前処理規則は、ソースコンテンツの1つの部分とソースコンテンツの1つまたは複数の他の部分とを意味的に関連付ける1つまたは複数の階層的規則を含む。
取り込みエンジンは、受信ソース文書に関連付けられた拡張データを取得し、ソース文書と拡張データとの組み合わせを複数の文書セグメントにセグメント化するようにさらに構成されてもよい。
クエリエンジンは、質問を表す受信クエリデータに基づいて、ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定し、変換コンテンツに適用するようにさらに構成されてもよい。
クエリエンジンは、受信クエリデータが所定の質問の1つにマッチするかどうかを判定し、受信クエリデータが所定の質問の1つにマッチすると判定したことに応答して、所定の質問のうちマッチした質問に関連付けられた1つまたは複数の回答データ記録に基づいて出力データを生成するようにさらに構成されてもよい。
システムは、遠隔デバイスをさらに備えてもよい。システムは、例えば、遠隔デバイスが位置し、セカンドパーティーによって運営される第2のネットワークと異なる、ファーストパーティーによって運営される第1のネットワーク、またはローカルデバイスおよび遠隔デバイスが両方とも位置する第3のネットワークのうちの1つに位置し得る。
いくつかの変形形態において、ローカルデバイスにおいて、複数のソース文書のリポジトリのソース文書の、ローカルデバイスからアクセス可能な変換コンテンツと関連付けられているソースコンテンツに関連する質問を表すクエリデータを遠隔デバイスから受信し、クエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、遠隔デバイスからアクセス可能なソース文書において、変換コンテンツの少なくとも一部分に対応するソース文書の少なくとも一部分にアクセスするためのポインタを少なくとも含む出力データを生成するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた第1の非一時的コンピュータ可読媒体が提供される。
第1のコンピュータ可読媒体の実施形態は、第1の方法および第1のシステムに関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部を含んでもよい。
いくつかの変形形態では、ローカルデバイスにおいて、遠隔デバイスからソース文書のソースコンテンツに関連する質問を表すクエリデータを受信することと、1つまたは複数のマッチ基準に従って、ローカルデバイスで維持される質問回答キャッシュに格納された1つまたは複数の所定の質問がクエリデータにマッチするかどうかを判定することとを含む、第2の方法が提供される。本方法は、所定の質問のうちの少なくとも1つが遠隔デバイスから受信したクエリデータとマッチするという判定に応答して、質問回答キャッシュから、ソースコンテンツに関連する質問への回答に対応する、少なくとも1つの所定の質問に関連付けられた少なくとも1つの回答データ項目を取得することをさらに含む。
第2の方法の実施形態は、第1の方法、第1のシステムおよび/または第1のコンピュータ可読媒体に関連して上述した特徴の一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
質問回答キャッシュから少なくとも1つの回答データ項目を取得することは、遠隔デバイスからアクセス可能なソース文書の複製から、ソースコンテンツに関連する質問への回答に対応するソース文書の複製の少なくとも一部分にアクセスするためのポインタを少なくとも取得することを含んでもよい。
質問回答キャッシュから少なくとも1つの回答データ項目を取得することは、例えば、ソースコンテンツの少なくとも一部、および/またはソースコンテンツの少なくとも一部分の要約のうちの1つまたは複数を取得することを含んでもよい。
本方法は、対応する回答を表すデータ項目の一部が特定の質問に対する満足行く応答を表しているという指示をユーザから受信したことに応答して、特定の質問と対応する回答とのペアを表すデータ項目を質問回答キャッシュに格納することをさらに含んでもよい。
本方法は、ローカルデバイスにおいて、特定の質問に応答して、ローカルデバイスにおいて決定された初期回答データを置換するための置換用回答データを取得することであって、初期回答は特定の質問に対して不満足な回答であるとユーザによって判定されている、ことと、特定の質問と置換用回答とのペアを表すデータ項目を質問回答キャッシュに格納することとをさらに含んでもよい。
本方法は、質問回答キャッシュに格納された所定の質問のいずれも、遠隔デバイスから受信したクエリデータとマッチしないという判定に応答して、ローカルデバイスにおいて、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、クエリデータに従って複数の文書オブジェクトのうちの1つまたは複数を特定することと、ローカルデバイスにおけるクエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、変換コンテンツの少なくとも一部に基づいて出力データを生成することとをさらに含んでもよい。
出力データは、遠隔デバイスからアクセス可能なソース文書の複製において、変換コンテンツの少なくとも一部分に対応するソース文書の複製の少なくとも一部分にアクセスするためのポインタを少なくとも含んでもよい。
本方法は、ローカルデバイスで1つまたは複数のソース文書を受信すること、1つまたは複数のソース文書を複数の文書セグメントにセグメント化すること、1つまたは複数の変換に従って複数の文書セグメントの各々を1つまたは複数のそれぞれの変換セグメントに変換すること、および変換セグメントを複数の文書オブジェクトに整理することを含む、複数の文書オブジェクトを文書ストレージに格納することをさらに含んでもよい。
本方法は、質問を表す受信クエリデータに基づいて、ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定することと、特定された1つまたは複数の追加の質問のうちの少なくとも1つに応答する追加の回答データを含む追加の出力データを生成することとをさらに含んでもよい。
本方法は、例えば、ローカルデバイスおよび/または遠隔デバイスの1人もしくは複数人のユーザから受信した入力データ、ならびに/あるいはローカルデバイスに格納された、ソース文書に関連付けられた文書オブジェクトから決定されたクエリデータに対する特定された応答に関連付けられたメタデータのうちの1つあるいは複数に基づいて、1つまたは複数の追加の質問を取得することをさらに含んでもよい。そのような実施形態において、取得することは、1つまたは複数の追加の質問を表す1つまたは複数の追加の質問データ項目をクエリデータのリポジトリに格納することも含んでもよい。
ローカルデバイスで維持される質問回答キャッシュに格納された1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従ってクエリデータとマッチするかどうかを判定することは、クエリデータの言語的意味を決定することと、クエリデータと、質問回答キャッシュ内の所定の質問の少なくとも一部の対応する意味との間の意味上の類似度レベルを決定することと、クエリデータと、1つまたは複数の所定の質問のうちの少なくとも1つのそれぞれの意味との間の意味上の類似度レベルが所定の類似度閾値を超えるとき、1つまたは複数の所定の質問のうちの少なくとも1つがクエリデータとマッチすると判定することとを含んでもよい。
本方法は、クエリデータが、ローカルデバイスにおいて、ソース文書に関して実行されたそれぞれのプロセスに関連付けられた所定のコマンドのうちの1つにマッチすると判定することと、クエリデータにマッチすると判定された所定のコマンドのうちの1つに関連付けられた所定のプロセスを実行することとをさらに含んでもよい。
クエリデータが所定のコマンドのうちの1つにマッチすると判定することは、クエリデータが、ソース文書の少なくとも一部分の要約の生成を引き起こすように構成された要約コマンドにマッチすると判定することを含んでもよい。
本方法は、クエリデータに対応する質問に基づいて、1つまたは複数の拡張質問を生成することをさらに含んでもよい。
1つまたは複数の拡張質問を生成することは、例えば、a)質問中の語句の順序を変更すること、ならびに/またはb)質問中の1つもしくは複数の語に対して同義語もしくは等価な語であるように同義語データ記録から特定される置換用の語で質問中の1つもしくは複数の語を置換することのうちの1つまたは複数に基づいて、クエリデータによって表される質問を変更することを含んでもよい。
本方法は、ローカルデバイスにおいて、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、1つまたは複数の拡張質問に従って複数の文書オブジェクトのうちの1つまたは複数を特定することをさらに含んでもよい。
ローカルデバイスで維持される質問回答キャッシュに格納された1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従ってクエリデータとマッチするかどうかを判定することは、1つまたは複数の変換に従ってクエリデータを変換クエリに変換することと、変換クエリを質問回答キャッシュに格納されている変換Q-A項目に対してマッチングすることを含んでもよい。変換Q-A項目の各々は、1つまたは複数の変換に従って1つまたは複数の質問および対応する1つまたは複数の回答の変換から得られる変換データを含んでもよい。
変換Q-A項目は、1つまたは複数の質問および対応する1つまたは複数の回答のBERT(トランスフォーマによる双方向エンコーダ表現)ベースの変換から得られる変換データを含んでもよい。
いくつかの変形形態では、遠隔デバイスから、ソース文書のソースコンテンツに関連する質問を表すクエリデータを受信するように構成された通信ユニットと、所定の質問を格納するように構成された質問および回答キャッシュストレージデバイスと、通信ユニットおよび質問および回答キャッシュストレージデバイスに電気接続されたコントローラ(図1に関連して後述するクエリ処理モジュールと同じまたはその一部であってもよい)を備えた第2のシステムが提供される。コントローラは、質問および回答キャッシュに格納された所定の質問のうちの1つまたは複数が1つまたは複数のマッチ基準に従ってクエリデータとマッチするかどうかを判定し、所定の質問のうちの少なくとも1つが遠隔デバイスから受信したクエリデータとマッチするという判定に応答して、質問回答キャッシュから、ソースコンテンツに関連する質問への回答に対応する、少なくとも1つの所定の質問に関連付けられた少なくとも1つの回答データ項目を取得するように構成されている。
第2のシステムの実施形態は、第1の方法および第2の方法、第1のシステムならびに/または第1のコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
質問回答キャッシュから少なくとも1つの回答データ項目を取得するように構成されたコントローラは、遠隔デバイスからアクセス可能なソース文書の複製から、ソースコンテンツに関連する質問への回答に対応するソース文書の複製の少なくとも一部分、ソースコンテンツの少なくとも一部、および/またはソースコンテンツの少なくとも一部分の要約にアクセスするためのポインタのうちの1つまたは複数を取得するように構成されてもよい。
コントローラは、対応する回答を表すデータ項目の一部分が特定の質問に対する満足行く応答を表しているという指示をユーザから受信したことに応答して、特定の質問と対応する回答とのペアを表すデータ項目を質問回答キャッシュに格納するようにさらに構成されてもよい。
コントローラは、ローカルデバイスにおいて、特定の質問に応答して、ローカルデバイスにおいて決定された、特定の質問に対する不満足な回答であるとユーザによって判定されている初期回答データを置換するための置換用回答データを取得し、特定の質問と置換用回答とのペアを表すデータ項目を質問回答キャッシュに格納するようにさらに構成されてもよい。
コントローラは、質問回答キャッシュに格納された所定の質問のいずれも、遠隔デバイスから受信したクエリデータとマッチしないという判定に応答して、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含め検索し、クエリデータに従って複数の文書オブジェクトのうちの1つまたは複数を特定し、クエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、変換コンテンツの少なくとも一部分に基づいて出力データを生成するようにさらに構成されてもよい。
コントローラは、質問を表す受信クエリデータに基づいて、ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定し、特定された1つまたは複数の追加の質問のうちの少なくとも1つに応答する追加の回答データを含む追加の出力データを生成するようにさらに構成されてもよい。
質問回答キャッシュに格納された1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従ってクエリデータとマッチするかどうかを判定するように構成されたコントローラは、クエリデータの言語的意味を決定し、クエリデータと、質問回答キャッシュ内の所定の質問の少なくとも一部の対応する意味との間の意味上の類似度レベルを決定し、クエリデータと、1つまたは複数の所定の質問のうちの少なくとも1つのそれぞれの意味との間の意味上の類似度レベルが所定の類似度閾値を超えるとき、1つまたは複数の所定の質問のうちの少なくとも1つがクエリデータとマッチすると判定するようにさらに構成されてもよい。
コントローラは、クエリデータが、ソース文書に関して実行されたそれぞれのプロセスに関連付けられた所定のコマンドのうちの1つにマッチすると判定し、クエリデータにマッチすると判定された所定のコマンドのうちの1つに関連付けられた所定のプロセスを実行するようにさらに構成されてもよい。
クエリデータが所定のコマンドのうちの1つにマッチすると判定するように構成されたコントローラは、クエリデータが、ソース文書の少なくとも一部分の要約の生成を引き起こすように構成された要約コマンドにマッチすると判定するように構成されてもよい。
コントローラは、例えば、a)質問中の語句の順序を変更すること、ならびに/またはb)質問中の1つもしくは複数の語に対して同義語もしくは等価な語であるように同義語データ記録から特定される置換用の語で質問中の1つもしくは複数の語を置換することのうちの1つまたは複数に基づいて、クエリデータによって表される質問を変更することを含め、クエリデータに対応する質問に基づいて1つまたは複数の拡張質問を生成するようにさらに構成されてもよい。
質問回答キャッシュに格納された1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従ってクエリデータとマッチするかどうかを判定するように構成されたコントローラは、1つまたは複数の変換に従ってクエリデータを変換クエリに変換し、変換クエリを質問回答キャッシュに格納されている変換Q-A項目に対してマッチングするように構成されてもよく、変換Q-A項目の各々は、1つまたは複数の変換に従う、1つまたは複数の質問および対応する1つまたは複数の回答の変換から得られる変換データを含む。
いくつかの変形形態において、ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問を表すクエリデータを遠隔デバイスから受信し、ローカルデバイスで維持される質問回答キャッシュに格納された1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従ってクエリデータとマッチするかどうかを判定し、所定の質問のうちの少なくとも1つが遠隔デバイスから受信したクエリデータとマッチするという判定に応答して、質問回答キャッシュから、ソースコンテンツに関連する質問への回答に対応する、少なくとも1つの所定の質問に関連付けられた少なくとも1つの回答データ項目を取得するように、コンピューティングシステムの1つまたは複数のプロセッサで実行可能な命令がプログラムされた第2の非一時的コンピュータ可読媒体が提供される。
第2のコンピュータ可読媒体の実施形態は、本方法および本システムに関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部を含んでもよい。
いくつかの変形形態において、ソース文書を受信することと、ソース文書に1つまたは複数の前処理を適用して、ソース文書の構造およびコンテンツを表すコンテキスト情報を生成することと、コンテキスト情報に基づいてソース文書を変換し、質問および回答用検索可能文書を生成することとを含む、第3の方法が提供される。
第3の方法の実施形態は、方法、システムおよび/またはコンピュータ可読媒体に関連して上述した特徴の一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
1つまたは複数の前処理を適用することは、ソース文書を複数の文書セグメントにセグメント化することを含んでもよい。ソース文書を変換することは、1つまたは複数の変換に従って、複数の文書セグメントの各々を1つまたは複数の対応する変換セグメントに変換することを含んでもよい。
1つまたは複数の変換は、例えば、複数の文書セグメントの粗いコンテンツを表す粗い数値ベクトルを生成する粗い線形化変換、および/または複数の文書セグメントのコンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含んでもよい。
ソース文書をセグメント化することは、ソース文書の1つの部分とソース文書の1つまたは複数の他の部分とを意味的に関連付ける階層的規則に従って、ソースコンテンツを複数の文書セグメントにセグメント化することを含んでもよい。
階層的規則に従ってソース文書をセグメント化することは、特定の文書セグメントに、特定の文書部分のコンテンツと、特定の文書部分の位置よりも先にソース文書に位置した、特定の文書部分のコンテンツと関連付けられていると判定されているセクション見出しコンテンツとを含めることを含んでもよい。
ソース文書をセグメント化することは、ソース文書上で固定サイズまたは可変サイズのウィンドウをスライドさせて複数の文書セグメントを生成することによって、ソース文書を複数の文書セグメントにセグメント化することを含んでもよい。
ソース文書上でウィンドウをスライドさせることは、生成された第1のセグメントおよび次に生成されたセグメントがそれぞれ少なくともいくらかの重複するコンテンツを共有するように、ウィンドウのサイズよりも小さくてもよい刻みでウィンドウをスライドさせることを含んでもよい。
ソース文書に1つまたは複数の前処理を適用することは、例えば、ソース文書の1つまたは複数の他の部分の位置に対する特定の部分の位置、特定の部分の相対的なフォントサイズ、ソース文書の構造および編成、ならびに/またはソース文書の文書タイプのうちの1つまたは複数に基づいてソース文書の特定の部分に対する相対的な重要度値を決定することを含んでもよい。
ソース文書を変換することは、特定の部分に対する決定済みの相対的重要度値と、ソース文書の他の部分に対する相対的重要度値とに少なくとも部分的に基づいてソース文書を変換することを含んでもよい。
ソース文書に1つまたは複数の前処理を適用することは、マルチセルテーブルに整理された複数のサブ部分を含むソース文書の部分を識別することと、マルチセルテーブルを置換するために、各々がマルチセルテーブルに関連付けられたそれぞれのサブ部分コンテンツデータおよびコンテキスト情報を含む複数の置換部分を生成することとを含んでもよい。
ソース文書に1つまたは複数の前処理を適用することは、ユーザに提示されるソース文書に関連する1つまたは複数の質問に応答してユーザによって提供される情報に基づいて、コンテキスト情報をソース文書の1つまたは複数の部分と関連付けることを含んでもよい。
ソース文書に1つまたは複数の前処理を適用することは、質問および回答ペアの1つまたは複数のグランドトゥルースサンプルに基づいて、ソース文書の特定の部分に関連する質問および回答のコンテキスト情報を関連付けることを含んでもよい。
1つまたは複数の前処理を適用することは、ソース文書を複数の文書セグメントにセグメント化することを含んでもよい。本方法は、複数の文書セグメントのうちの少なくとも1つのセグメントについて、例えば、少なくとも1つのセグメントに関連付けられた少なくとも1つのエンティティ、少なくとも1つのセグメントに関連付けられた少なくとも1つのタスク、および/または少なくとも1つのセグメントに関連付けられた主題記述子のうちの1つまたは複数を含む少なくとも1つのセグメント記述子を識別することをさらに含んでもよい。本方法は、少なくとも1つのセグメントを少なくとも1つの記述子でタグ付けすることをさらに含んでもよい。
本方法は、ソース文書のコンテンツに関連する質問を表すクエリデータを受信することと、クエリデータに関連付けられた少なくとも1つのクエリ記述子を決定することであって、少なくとも1つの記述子が、例えば、クエリデータに関連付けられた少なくとも1つのエンティティ、クエリデータに関連付けられた少なくとも1つのタスク、および/またはクエリに関連付けられた主題記述子のうちの1つまたは複数を含む、ことと、クエリデータに対する応答を、セグメント記述子が少なくとも1つのクエリ記述子とマッチしている複数の文書セグメントのうちの1つまたは複数から検索することとをさらに含んでもよい。
本方法は、ソース文書のコンテンツに関連するユーザからの質問を表すクエリデータを受信することと、ユーザに関連付けられたセンサデバイスによって得られたセンサデータに基づいてコンテキスト情報を決定することと、セグメント記述子が決定済みコンテキスト情報にマッチしている複数の文書セグメントのうちの1つまたは複数からクエリデータに対する応答を検索することとをさらに含んでもよい。
コンテキスト情報を決定することは、ユーザが使用するカメラデバイスによって撮影された画像データから識別可能なアイテムまたは場所を決定することを含んでもよい。クエリデータに対する応答を検索することは、画像データから識別可能な決定済みのアイテムまたは場所に少なくとも部分的に基づいて、複数の文書セグメントのうちの1つまたは複数からクエリデータに対する応答を検索することを含んでもよい。
いくつかの変形形態において、ソース文書を受信するように構成された通信ユニットと、取り込みエンジンとを備えた第3のシステムが提供される。取り込みエンジンは、ソース文書に1つまたは複数の前処理を適用して、ソース文書の構造およびコンテンツを表すコンテキスト情報を生成し、コンテキスト情報に基づいてソース文書を変換し、質問および回答用検索可能文書を生成するように構成されている。
第3のシステムの実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
1つまたは複数の前処理を適用するように構成された取り込みエンジンは、ソース文書を複数の文書セグメントにセグメント化するように構成されてもよい。ソース文書を変換するように構成された取り込みエンジンは、1つまたは複数の変換に従って、複数の文書セグメントの各々を1つまたは複数の対応する変換セグメントに変換するように構成されてもよい。
1つまたは複数の変換は、例えば、複数の文書セグメントの粗いコンテンツを表す粗い数値ベクトルを生成する粗い線形化変換、および/または複数の文書セグメントのコンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含んでもよい。
ソース文書をセグメント化するように構成された取り込みエンジンは、ソース文書の1つの部分とソース文書の1つまたは複数の他の部分とを意味的に関連付ける階層的規則に従って、ソースコンテンツを複数の文書セグメントにセグメント化するように構成されてもよい。
1つまたは複数の前処理を適用するように構成された取り込みエンジンは、ソース文書を複数の文書セグメントにセグメント化するように構成されてもよい。取り込みエンジンは、複数の文書セグメントのうちの少なくとも1つのセグメントについて、例えば、少なくとも1つのセグメントに関連付けられた少なくとも1つのエンティティ、少なくとも1つのセグメントに関連付けられた少なくとも1つのタスク、および/または少なくとも1つのセグメントに関連付けられた主題記述子のうちの1つまたは複数を含む少なくとも1つのセグメント記述子を識別するようにさらに構成されてもよい。取り込みエンジンは、少なくとも1つのセグメントを少なくとも1つの記述子でタグ付けするようにさらに構成されてもよい。
本システムは、ソース文書のコンテンツに関連するユーザからの質問を表すクエリデータを受信し、ユーザに関連付けられたセンサデバイスによって得られたセンサデータに基づいてコンテキスト情報を決定し、セグメント記述子が決定済みコンテキスト情報にマッチしている複数の文書セグメントのうちの1つまたは複数からクエリデータに対する応答を検索するように構成された取り込みエンジンをさらに備えてもよい。
いくつかの変形形態において、ソース文書を受信し、ソース文書に1つまたは複数の前処理を適用して、ソース文書の構造およびコンテンツを表すコンテキスト情報を生成し、コンテキスト情報に基づいてソース文書を変換し、質問および回答用検索可能文書を生成するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた、第3の非一時的コンピュータ可読媒体が提供される。
第3のコンピュータ可読媒体の実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部を含んでもよい。
いくつかの変形形態において、ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問および回答ペアを表しており、質問および回答データ項目の履歴情報およびアクセス情報を表す質問および回答履歴情報に関連付けられている質問および回答データ項目を取得することと、質問および回答履歴情報に基づいて、質問および回答データ項目に対してデータ改良操作を実行するかどうかを決定することとを含む、第4の方法が提供される。本方法は、質問および回答データ項目が改良されるという決定に応答して、質問および回答データ項目に関連付けられた主題と、複数人のユーザにそれぞれ関連付けられた専門知識情報とに少なくとも部分的に関連する1つまたは複数のマッチ基準に従って複数人のユーザのうちの1人を選択することと、少なくとも質問および回答データ項目を複数人のユーザのうちの選択された1人に関連付けられた送信先デバイスに伝達することとをさらに含む。
第4の方法の実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
質問および回答履歴情報は、例えば、関連付けられた質問および回答データ項目がアクセスされた頻度、質問および回答データ項目に関する1人もしくは複数人のユーザによるフィードバックに基づいて決定された満足度レベル、質問および回答データ項目の質問部分に対する回答部分の応答性の信頼度レベル、ならびに/または質問および回答データ項目に関連付けられた著者情報のうちの1つまたは複数を含んでもよい。
本方法は、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを検索して得られた検索結果に従って、質問部分に対する回答部分の応答性の信頼度レベルを導出し、質問および回答データ項目の質問部分を表す質問データに従って複数の文書オブジェクトのうちの1つまたは複数を特定することをさらに含んでもよい。
信頼度レベルを導出することは、特定された1つまたは複数の複数の文書オブジェクトの数と、複数の文書オブジェクトのうちの特定された1つまたは複数に関連付けられたそれぞれの質問部分に対する質問データの近接度とに基づいて、質問部分に対する回答部分の応答性の信頼度レベルを導出することを含んでもよい。
質問および回答履歴情報に基づいて、質問および回答データ項目への改良操作を行うかどうかを決定することは、例えば、関連付けられた質問および回答データ項目がアクセスされた頻度が頻度閾値を超えていること、質問および回答データ項目に関する1人または複数人のユーザによるフィードバックに基づいて決定された満足度レベルが満足度閾値を下回っていること、質問部分に対する回答部分の応答性の信頼度が応答性閾値を超えていること、および/または著者情報が1つもしくは複数の事前に特定した名前にマッチしていることのうちの1つまたは複数に基づいて質問および回答データ項目を改良するかどうかを決定することを含んでもよい。
質問および回答データ項目は、例えば、質問および回答ペアに対する回答に対応するソース文書の少なくとも一部分、ソースコンテンツの少なくとも一部、ならびに/またはソースコンテンツの少なくとも一部分の要約に遠隔デバイスからアクセスするためのポインタのうちの1つまたは複数を含んでもよい。
本方法は、ローカルデバイスにおいて、送信先デバイスに伝達された質問および回答データ項目から導出された改良済み質問および回答データ項目を受信することと、ローカルデバイスに維持される質問回答キャッシュにおいて改良済み質問および回答データ項目を格納することとをさらに含んでもよい。
本方法は、ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する後続する質問を表すクエリデータを遠隔デバイス(データ改良が行われた送信先デバイスと同じであっても、異なっていてもよい)から受信することと、クエリデータが、1つまたは複数のマッチ基準に従って、質問回答キャッシュに格納されている、改良済み質問および回答データ項目の質問部分にマッチするかどうかを判定することと、改良済み質問および回答データ項目の質問部分が遠隔デバイスから受信したクエリデータとマッチするという判定に応答して、質問回答キャッシュから、改良済み質問および回答データ項目の少なくとも1つの回答部分を取得することと、少なくとも1つの回答部分を遠隔デバイスに送信することとをさらに含んでもよい。
本方法は、ローカルデバイスにおいて、クエリデータが質問回答キャッシュに格納された改良済み質問および回答データ項目の質問部分とマッチしないという判定に応答して、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、クエリデータに従って複数の文書オブジェクトのうちの1つまたは複数を特定することと、ローカルデバイスにおけるクエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、変換コンテンツのマッチした少なくとも一部分に基づいて出力データを生成することとをさらに含んでもよい。
本方法は、ローカルデバイスで1つまたは複数のソース文書を受信すること、1つまたは複数のソース文書を複数の文書セグメントにセグメント化すること、1つまたは複数の変換に従って複数の文書セグメントの各々を1つまたは複数のそれぞれの変換セグメントに変換すること、および変換セグメントを複数の文書オブジェクトに整理することを含む、複数の文書オブジェクトを文書ストレージに格納することをさらに含んでもよい。
いくつかの変形形態において、ローカルデバイスに実装され、ソース文書のソースコンテンツに関連する質問および回答ペアを表しており、質問および回答データ項目の履歴形成およびアクセス情報を表す質問および回答履歴情報に関連付けられている質問および回答データ項目を取得し、質問および回答データ項目に対してデータ改良操作を実行するかどうかを質問および回答履歴情報に基づいて決定し、質問および回答データ項目が改良されるという決定に応答して、質問および回答データ項目に関連付けられた主題および複数人のユーザにそれぞれ関連付けられた専門知識情報に少なくとも部分的に関連する1つまたは複数のマッチ基準に従って、複数人のユーザのうちの1人を選択するように構成された文書処理エージェントを備えた第4のシステムが提供される。システムは、複数人のユーザのうちの選択された1人に関連付けられた送信先デバイスに少なくとも質問および回答データ項目を伝達するように構成された通信ユニットをさらに備えてもよい。
第4のシステムの実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
文書処理エージェントは、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを検索して得られた検索結果に従って、質問部分に対する回答部分の応答性の信頼度レベルを導出し、質問および回答データ項目の質問部分を表す質問データに従って複数の文書オブジェクトのうちの1つまたは複数を特定するようにさらに構成されてもよい。
信頼度レベルを導出するように構成された文書処理エージェントは、特定された1つまたは複数の複数の文書オブジェクトの数と、複数の文書オブジェクトのうちの特定された1つまたは複数に関連付けられたそれぞれの質問部分に対する質問データの近接度とに基づいて、質問部分に対する回答部分の応答性の信頼度レベルを導出するように構成されてもよい。
質問および回答履歴情報に基づいて、質問および回答データ項目への改良操作を行うかどうかを決定するように構成された文書処理エージェントは、例えば、関連付けられた質問および回答データ項目がアクセスされた頻度が頻度閾値を超えていること、質問および回答データ項目に関する1人または複数人のユーザによるフィードバックに基づいて決定された満足度レベルが満足度閾値を下回っていること、質問部分に対する回答部分の応答性の信頼度が応答性閾値を超えていること、および/または著者情報が1つもしくは複数の事前に特定した名前にマッチしていることのうちの1つまたは複数に基づいて質問および回答データ項目を改良するかどうかを決定するように構成されてもよい。
通信ユニットは、ローカルデバイスにおいて、送信先デバイスに伝達された質問および回答データ項目から導出された改良済み質問および回答データ項目を受信するようにさらに構成されてもよい。文書処理エージェントは、ローカルデバイスに維持される質問回答キャッシュにおいて改良済み質問および回答データ項目を格納するようにさらに構成されてもよい。
通信ユニットは、ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する後続の質問を表すクエリデータを遠隔デバイスから受信するようにさらに構成されてもよい。文書処理エージェントは、クエリデータが、1つまたは複数のマッチ基準に従って、質問回答キャッシュに格納されている、改良済み質問および回答データ項目の質問部分にマッチするかどうかを判定し、改良済み質問および回答データ項目の質問部分が遠隔デバイスから受信したクエリデータとマッチするという判定に応答して、質問回答キャッシュから、改良済み質問および回答データ項目の少なくとも1つの回答部分を取得し、少なくとも1つの回答部分を遠隔デバイスに送信するようにさらに構成されてもよい。
文書処理エージェントは、ローカルデバイスにおいて、クエリデータが質問および回答キャッシュに格納された改良済み質問および回答データ項目の質問部分とマッチしないという判定に応答して、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、クエリデータに従って複数の文書オブジェクトのうちの1つまたは複数を特定し、ローカルデバイスにおけるクエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、変換コンテンツのマッチした少なくとも一部分に基づいて出力データを生成するようにさらに構成されてもよい。
いくつかの変形形態において、ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問および回答ペアを表しており、質問および回答データ項目の履歴形成およびアクセス情報を表す質問および回答履歴情報に関連付けられている質問および回答データ項目を取得し、質問および回答履歴情報に基づいて、質問および回答データ項目に対してデータ改良操作を実行するかどうかを決定するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた第4の非一時的コンピュータ可読媒体が提供される。命令は、質問および回答データ項目が改良されるという判定に応答して、質問および回答データ項目に関連付けられた主題と、複数人のユーザにそれぞれ関連付けられた専門知識情報とに少なくとも部分的に関連する1つまたは複数のマッチ基準に従って複数人のユーザのうちの1人を選択し、少なくとも質問および回答データ項目を複数人のユーザのうちの選択された1人に関連付けられた送信先デバイスに伝達するようにさらに構成されている。
第4のコンピュータ可読媒体の実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部を含んでもよい。
いくつかの変形形態において、1つまたは複数の文書ライブラリ由来の複数のソース文書に対して質問および回答処理を適用し、それぞれの文書記録結果を生成することと、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定することと、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の決定された類似度レベルに基づいて、1つまたは複数の文書ライブラリを管理することとを含む、第5の方法が提供される。
第5の方法の実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
1つまたは複数の文書ライブラリを管理することは、決定された類似度レベルに基づいて、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果とが互いに矛盾しているか、または互いに実質的に重複しているかのいずれかであると判定することと、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果が互いに矛盾しているか、または実質的に重複しているという判定に応答して、文書記録結果のうちの第1の文書記録結果に対応する第1のソース文書、または文書記録結果のうちの第2の文書記録結果に対応する第2のソース文書のいずれかを1つまたは複数の文書ライブラリから削除することとを含んでもよい。
文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定することは、質問および回答処理から生成され、ユーザに提供される出力データに応答するユーザ入力に基づいて類似度レベルを決定することを含んでもよい。
文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定することは、質問および回答オブジェクトを作成するための文書取り込み中に、例えば、複数のソース文書に適用される1つもしくは複数の仮想のライブラリ質問、または文書記録結果のうちの第1の文書記録結果から質問を決定すること、および決定された質問を用いて文書記録結果のうちの第2の文書記録結果のコンテンツを評価することのうちの1つまたは複数に基づいて、類似度レベルを決定することを含んでもよい。
本方法は、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルが類似度閾値を超えているという判定に応答して、文書記録結果のうちの第1の文書記録結果に対応する第1のソース文書と、文書記録結果のうちの第2の文書記録結果に対応する第2のソース文書との間の類似度を示す出力を提供することをさらに含んでもよい。
いくつかの変形形態において、複数のソース文書を含む1つまたは複数の文書ライブラリを格納する1つまたは複数のストレージデバイスと、1つまたは複数の文書ライブラリ由来の複数のソース文書に対して質問および回答処理を適用し、それぞれの文書記録結果を生成し、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定し、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の決定された類似度レベルに基づいて、1つまたは複数の文書ライブラリを管理するように構成されたプロセッサベースのコントローラとを備えた第5のシステムが提供される。
第5のシステムの実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述したの少なくとも一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴。
1つまたは複数の文書ライブラリを管理するように構成されたコントローラは、決定された類似度レベルに基づいて、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果とが互いに矛盾しているか、または互いに実質的に重複しているかのいずれかであると判定し、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果が互いに矛盾しているか、または実質的に重複しているという判定に応答して、文書記録結果のうちの第1の文書記録結果に対応する第1のソース文書、または文書記録結果のうちの第2の文書記録結果に対応する第2のソース文書のいずれかを1つまたは複数の文書ライブラリから削除するように構成されてもよい。
いくつかの変形形態において、1つまたは複数の文書ライブラリ由来の複数のソース文書に対して質問および回答処理を適用し、それぞれの文書記録結果を生成し、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定し、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の決定された類似度レベルに基づいて、1つまたは複数の文書ライブラリを管理するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた第5の非一時的コンピュータ可読媒体が提供される。
第5のコンピュータ可読媒体の実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部を含んでもよい。
いくつかの変形形態において、ローカルデバイスでソース文書を受信することと、受信ソース文書に関連付けられた拡張データを取得することと、取得した拡張データと組み合わせたソース文書を変換して質問および回答用検索可能文書を生成することとを含む、第6の方法が提供される。
第6の方法の実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
拡張データを取得することは、例えば、ソース文書に含まれるリンクに基づいて拡張データを取得すること、および/または共参照解析を実行して、ソース文書において特定される1つもしくは複数の名称もしくは表現を決定し、ローカルデバイスからアクセス可能な情報リポジトリを検索して、ソース文書において特定される決定済みの1つもしくは複数の名称もしくは表現に関連付けられた追加の情報を取得することのうちの1つまたは複数を含んでもよい。
取得された拡張データと組み合わされたソース文書を変換して、質問および回答用検索可能文書を生成することは、取得された拡張データと組み合わされたソース文書を複数の文書セグメントに分割することを含んでもよい。
本方法は、複数の文書セグメントのうちの少なくとも1つのセグメントについて、例えば、少なくとも1つのセグメントに関連付けられた少なくとも1つのエンティティ、少なくとも1つのセグメントに関連付けられた少なくとも1つのタスク、または少なくとも1つのセグメントに関連付けられた主題記述子のうちの1つまたは複数を含む少なくとも1つのセグメント記述子を識別することと、少なくとも1つのセグメントを少なくとも1つの記述子でタグ付けすることとをさらに含んでもよい。
本方法は、ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問を表すクエリデータを受信することと、クエリデータに関連付けられた少なくとも1つのクエリ記述子を決定することであって、少なくとも1つの記述子が、例えば、クエリデータに関連付けられた少なくとも1つのエンティティ、クエリデータに関連付けられた少なくとも1つのタスク、および/またはクエリに関連付けられた主題記述子のうちの1つまたは複数を含む、ことをさらに含んでもよい。本方法は、クエリデータに対する応答を、セグメント記述子が少なくとも1つのクエリ記述子とマッチしている複数の文書セグメントのうちの1つまたは複数から検索することとをさらに含んでもよい。
取得された拡張データと組み合わされたソース文書を変換することは、1つまたは複数の変換に従って、複数の文書セグメントの各々を1つまたは複数の対応する変換セグメントに変換することをさらに含んでもよい。
取得された拡張データと組み合わされたソース文書を変換することは、例えば、取得された拡張データと組み合わされたソース文書のコンテンツを表す複数の数値ベクトルを生成する粗い線形化変換、および/または取得された拡張データと組み合わされたソース文書のコンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数に従って、取得されたデータと組み合わされたソース文書を変換することを含んでもよい。
本方法は、変換済み質問および回答用検索可能文書に基づいて、拡張データと組み合わされたソース文書の要約を導出することをさらに含んでもよい。
要約を導出することは、要約記録のリポジトリから、変換済み質問および回答用検索可能文書の、所定の要約記録に対する類似度が類似度閾値を超えている少なくとも一部分を特定することを含んでもよい。
いくつかの変形形態において、ソース文書を受信するように構成された通信ユニットと、受信ソース文書に関連付けられた拡張データを取得し、取得した拡張データと組み合わせたソース文書を変換して質問および回答用検索可能文書を生成するように構成された取り込みエンジンとを備えた第6のシステムが提供される。
いくつかの変形形態において、ローカルデバイスでソース文書を受信し、受信ソース文書に関連付けられた拡張データを取得し、取得した拡張データと組み合わせたソース文書を変換して質問および回答用検索可能文書を生成するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた第6の非一時的コンピュータ可読媒体が提供される。
第6のシステムおよび第6のコンピュータ可読媒体の実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部を含んでもよい。
いくつかの変形形態において、各々がデータを処理するために使用される質問および回答モデルのうちの対応するものに関連付けられている複数のエンティティのうちの、第1のエンティティに関連付けられた1つまたは複数のソース文書を受信することと、第1のエンティティに関連付けられた1つまたは複数のソース文書を、それぞれの関連付けられた第1の質問および回答モデルに従って変換し、1つまたは複数の質問および回答用検索可能文書を生成することとを含む、第7の方法が提供される。
第7の方法の実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部と、以下の特徴のうちの1つまたは複数とを含んでもよい。
第1のエンティティに関連付けられた1つまたは複数のソース文書を変換することは、例えば、1つもしくは複数のソース文書について複数の文書セグメントのコンテンツを表す複数の数値ベクトルを生成する粗い線形化変換、または複数の文書セグメントのコンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数に従って1つまたは複数のソース文書を変換することを含んでもよい。
詳細変換は、BERT(トランスフォーマによる双方向エンコーダ表現)処理に基づいて1つまたは複数の文書セグメントに適用される変換を含んでもよい。
本方法は、1つまたは複数のソース文書に関連する質問を表すクエリデータを受信することと、1つまたは複数のソース文書のセグメントへの線形化変換の適用により生成された複数の数値ベクトルに適用される高速検索を実行して、クエリデータに応答する複数のマッチ候補を特定することとをさらに含んでもよい。
本方法は、詳細変換コンテンツ記録に従って変換されたコンテンツの部分に対するクエリデータのマッチを識別するためであって、当該部分は高速検索に従って特定された複数のマッチ候補に従って選択される、より詳細な検索を行うことをさらに含んでもよい。
第1のエンティティに関連付けられた1つまたは複数のソース文書を変換することは、第1の質問および回答モデルに従って訓練されたニューラルネットワークを使用して1つまたは複数のソース文書を変換することを含んでもよい。
本方法は、1つまたは複数のソース文書に関連する質問を表すクエリデータを受信することと、詳細変換オブジェクトに従って変換されたコンテンツの順序付けられた部分に対するクエリデータのマッチを識別するためのスライディングウィンドウ検索を実行することとをさらに含んでもよい。
第1のエンティティに関連付けられた1つまたは複数のソース文書を変換することは、1つまたは複数のソース文書からのソース文書を複数の文書セグメントにセグメント化することを含む、1つまたは複数の前処理を1つまたは複数のソース文書に適用することをさらに含んでもよい。
ソース文書をセグメント化することは、ソース文書の構造およびコンテンツを表すコンテキスト情報を各セグメントに追加することを含んでもよい。1つまたは複数のソース文書を変換することは、各セグメントに追加されたコンテキスト情報に部分的に基づいて、セグメント化されたソース文書を変換することを含んでもよい。
本方法は、1つまたは複数のソース文書からソース文書のコンテンツを拡張することをさらに含んでもよく、拡張することは、例えば、ソース文書に含まれるリンクに基づいて拡張データを取得すること、および/または共参照解析を実行して、ソース文書において特定される1つもしくは複数の名称もしくは表現を決定し、ローカルデバイスからアクセス可能な情報リポジトリを検索して、ソース文書において特定される決定済みの1つもしくは複数の名称もしくは表現に関連付けられた追加の情報を取得することのうちの1つまたは複数を含む。
1つまたは複数のソース文書を変換することは、拡張コンテンツを含むソース文書を変換することを含んでもよい。
1つまたは複数のソース文書を変換することは、事前計算された文書セグメントベクトルを少なくとも部分的に用いて、1つまたは複数のソース文書を変換することを含んでもよい。
いくつかの変形形態において、各々がデータを処理するために使用される質問および回答モデルのうちの対応するものに関連付けられている複数のエンティティのうちの、第1のエンティティに関連付けられた1つまたは複数のソース文書を受信するように構成された通信ユニットと、第1のエンティティに関連付けられた1つまたは複数のソース文書を、それぞれの関連付けられた第1の質問および回答モデルに従って変換し、1つまたは複数の質問および回答用検索可能文書を生成するように構成された取り込みエンジンとを備えた第7のシステムが提供される。
いくつかの変形形態において、各々がデータを処理するために使用される質問および回答モデルのうちの対応するものに関連付けられている複数のエンティティのうちの、第1のエンティティに関連付けられた1つまたは複数のソース文書を受信し、第1のエンティティに関連付けられた1つまたは複数のソース文書を、それぞれの関連付けられた第1の質問および回答モデルに従って変換し、1つまたは複数の質問および回答用検索可能文書を生成するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた第7の非一時的コンピュータ可読媒体が提供される。
第7のシステムおよび第7のコンピュータ可読媒体の実施形態は、方法、システムおよびコンピュータ可読媒体に関連して上述した特徴の少なくとも一部を含む本開示に記載の特徴の少なくとも一部を含んでもよい。
方法、システムおよび/またはコンピュータ可読媒体の上記変形形態のいずれも、本明細書に記載された方法、システムおよびコンピュータ可読媒体の任意の他の変形形態の特徴のいずれかと組み合わせてもよい。
本発明の他の特徴および利点は以下の説明および請求項から明らかになる。
ここで、これらおよび他の態様は、以下の図面に関連して詳細に説明される。
図1は、例示的な質問および回答用文書処理および応答生成システムの図である。 図2は、質問および回答用文書処理および応答生成システムのための例示的な手順のフローチャートである。 図3は、例示的な文書取り込み手順の図である。 図4は、文書処理(取り込み)のための手順のフローチャートである。 図5は、入力キャッシュを用いたコンテンツ管理および質疑応答のための例示的な手順のフローチャートである。 図6は、データキュレーションのための例示的な手順のフローチャートである。 図7は、顧客ネットワークが、文書処理のために提供されるユーザデータを生成する複数のアプリケーションを実行する例示的システムの概略図である。
種々の図面中の同じ参照符号は、同じ要素を示す。
図1を参照すると、文書処理および応答生成のための例示的なシステム100の図が提供される。以下により詳細に説明するように、システム100は、ソース文書(例えば、顧客の膨大な文書のライブラリ、または電子メールデータ、共同プラットフォームデータなどのデータの他のリポジトリ)を取り込み、ソース文書から検索可能な結果として得られるオブジェクト(結果として変換された)文書へのマッピングを表す文書オブジェクト(文書オブジェクトモデル、すなわちDOM、文書と呼ぶ)へと文書を変換するように構成されている。これらの文書オブジェクトは、DOMリポジトリに格納されてもよい。その文書ライブラリを提供した顧客に関連付けられたユーザ(例えば、その顧客の従業員)は、その後、クエリ(例えば、「入社2年目の従業員は年に何日休暇を取れるか」のような自然言語のクエリ)を提出し、これはシステム100によって処理され、一般的に尋ねられる質問に対するキャッシュから迅速な回答が他に得られない状況において、クエリは、取り込まれた文書の形式と互換性のある形式に処理および変換され、取り込まれた文書のうちの1つまたは複数の、ユーザのクエリに対する回答を含み得る部分を特定する。次いで、システムは、例えば、1つまたは複数のソース文書(特定された1つまたは複数の取り込まれた文書に対応する)内の位置に対するポインタを含む出力データをユーザに返し、ユーザは次に、クエリに対する回答を取得するために直接この出力データにアクセスする。いくつかの実施形態において、出力は、代替的に、または加えて、ユーザのクエリに対する回答および/またはその回答を含む文書の一部分、例えば、段落を含んでもよい。有利には、ユーザに返される出力は、ユーザによって求められた特定の情報を含む必要はなく(ただし、いくつかの例では、所望に応じてそうしてもよい)、むしろ、そのソース文書へのアクセスを許可されていないパーティーがアクセスできない、安全なサイトに格納されているソース文書の一部分へのポインタを含むだけである。したがって、この回答決定アプローチは、機密情報(例えば、極秘またはプライベート)を送信するセキュリティ機能を強化する。
いくつかの実施形態において、クエリに対する回答を見つけるために文書オブジェクトリポジトリを検索することは、典型的には2つの操作を含み、すなわち、(1)まず、高速検索または高速マッチング(FM)プロセスと呼ばれるプロセスが実行され、(2)高速マッチングプロセスは、次に、詳細検索または詳細マッチング(DM)プロセス(ここでは「詳細」検索とも呼ばれる)と呼ばれるプロセスに続く。FMプロセスとDMプロセスは、両方ともBERT(トランスフォーマによる双方向エンコーダ表現)モデルに基づくことが可能である。FMの場合、モデルは、(いくつかの実施態様において)、例えば、クエリに対する1つのベクトルと、1つの段落(例えば、コンテキストデータも含み得る200語のウィンドウ)に対する1つのベクトルという結果をもたらす。DMでは、典型的には、クエリまたは段落ごとに、例えば、単語またはサブワードの数に比例する複数のベクトルがクエリまたは段落内にある。
いくつかの実施形態において、クエリおよび/またはソース文書の変換は、顧客のネットワークで実行されてもよく、変換クエリおよび/または変換コンテンツは、その後中央サーバに通信されることに留意されたい。そのような実施形態は、(コンテンツまたはクエリデータの変換によって導出される)結果ベクトルが顧客(クライアント)の安全な空間において作成され、結果として、(実際のコンテンツまたはクエリデータではなく)結果として得られる変換済みベクトルのみが集中クラウドサーバにおいて利用可能であるか、または存在するため、ネットワークを介して機密データを通信するためのプライバシーおよびセキュリティを改善することができる。クライアントのデバイスにおけるコンテンツまたはクエリデータの変換は、変換されるデータに適用される一種の暗号化として機能することができ、したがって、サーバクラウドへの攻撃からデータを保護する安全な処理をもたらす。いくつかの実施形態において、クライアントのネットワークで変換されているデータは、さらに、(ソースデータであれクエリデータであれ)クライアントのデータのさらに強化されたセキュアな通信を提供するために暗号化することができる。
システム構成および一般的な動作
次に、文書処理および検索システム100の一般的な構成、ならびにそれが実装するプロセスが提供される。図1の種々のモジュール、ユニットおよびプロセスに対する実施態様の複雑な詳細については、さらに、本開示において後により詳細に論じられる。したがって、図1に示すように、システムは、典型的には、顧客のネットワーク150a(例示的なシステム100において、文書処理エージェント110にアクセスするn個の顧客のネットワーク/システムの1つである)と通信する文書処理エージェント110(AIベースのエージェントであってもよい)を含む。文書処理エージェント110は、顧客システム150aおよび顧客システム150nのような複数の顧客にサービスを提供する独立した遠隔サーバとして実装でき、(プライベートネットワークであれ、インターネットのようなパブリックネットワークであれ)ネットワーク通信を介してかかる顧客と通信することができる。顧客のユニットとの通信は、1つまたは複数の通信インタフェース(すべて図1に概略的に表される、サーバインタフェース120、管理インタフェース125、ユーザクエリインタフェース130および/または専門家インタフェース132など)を含む通信ユニットを通じて実現され、これは、一般に通信モジュール(例えば、有線ネットワーク通信用および/または無線ネットワーク通信用のトランシーバであり、かかるトランシーバは種々の適切なタイプの通信プロトコルに従って構成されている)を含むであろう。あるいは、文書処理エージェント110は、遠隔地に位置する必要はなく、顧客ネットワーク内の専用ノードであってもよい(例えば、顧客の1つまたは複数のプロセッサベースのデバイスのうちの1つで動作するプロセスとして実施することができる)。エージェント110が顧客のネットワーク(顧客ネットワーク150a~150nのいずれかなど)外で実行する整理は、データセキュリティを向上し得るが、内密で実行するためにはより高価であり得る。
さらに他の代替的実施形態において、システムのいくつかの部分(例えば、ソース文書および/またはユーザによって提出されたクエリに対する前処理およびベクトル化操作を行うように構成された取り込みユニット)は、顧客のネットワークのファイアウォール内に位置してもよいが、取り込まれた文書のストレージ(および任意選択で取り込まれたコンテンツを検索する検索エンジン)は、顧客のネットワークのファイアウォール外(例えば、集中クラウドサーバ)に位置してもよい。そのような代替的実施形態において、(例えば、一元化された場所で検索を実行する)クラウドサーバに送信されたデータは、データの利用が許可されていないサードパーティーには判読不能である、既にエンコードされた(取り込まれた)コンテンツへと(例えば、固定サイズの入力セグメントに適用される粗い変換を通じて、および/または粗いトランスフォーマによって処理される部分よりも小さい部分に適用される詳細数値変換によって実施されていてもよいベクトル処理を通じて)処理されていてもよく、これによってシステム100を用いて処理されるデータにプライバシーおよびセキュリティ保護の別の対策を追加し得る。これらの代替的実施形態において、入力されたクエリの処理の初期部分は、顧客ネットワークのファイアウォールの内部で処理されることもある。クライアントのファイアウォール内で(ソースコンテンツおよび/またはクエリの)変換を行うことに加えて、そのような変換データは、文書処理エージェント110に送信される前に(対称または非対称な暗号化鍵を使用して)さらに暗号化されてもよく、したがって、顧客のネットワークと(複数の顧客を対象とする)集中文書処理エージェントとの間の通信に対して実現されるセキュリティ/プライバのレベルを高める。
いくつかの実施形態において、例示的な顧客ネットワーク150aは、管理者によって(ステーション152から)制御できる専用の安全なゲートウェイ(ファイアウォールおよび/または他のセキュリティ対策によって保護されている)を潜在的に有するステーションの分散セットであってよい。顧客は一般に、大量の電子文書(例えば、顧客の業務に関連する技術文書、人事文書などの管理文書、および電子形式の他のあらゆる種類の書面)を収集している。文書は、文書ライブラリ160(顧客ネットワーク150aのコンピューティングの一部であってもよい)に整理され、ネットワーク150a内のユーザステーション154a~154cにいる様々な認可ユーザ、および管理者によって(管理ステーション154を介して)アクセス可能である。任意の数のステーションが、任意の特定の顧客ネットワーク/システムに配備されてもよい。管理者ステーション152は、特権を制御することによってライブラリ160内の文書へのアクセスを制御し、そうでなければ文書を管理することができる(例えば、ライブラリ160内の特定の文書へのアクセス、プライバシー要件に従わない部分を隠すためのコンテンツの管理)。以下で詳細に論じられるように、ライブラリ160(ネットワークで動作するエンティティの動作に関連する文書を含む)に加えて、データまたは情報の他のソースは、顧客によって採用される様々なアプリケーション(例えば、電子メールアプリケーション、Slackなどのチャットアプリケーション、Salesforceなどの顧客関係アプリケーションなど)から入手され、本明細書に記載の文書処理実施態様を通じて処理してもよい。
管理者ステーション152は、例えば管理インタフェース125を通じて、文書処理エージェント110と通信するように構成されている。機能の中でもとりわけ、管理者は、複数のソース文書を維持するリポジトリ(ライブラリ)160内のソース文書の位置を特定する情報を文書処理エージェント110に提供し、顧客ネットワーク150aに関連する文書処理エージェント110の機能の構成および動作を制御し、エージェント110によって生成されたデータを再検討し(例えば、特定の回答をオーバーライドし)、文書処理エージェント110に訓練データを提供する、などができる。前述のように、ステーション152と管理インタフェース125との間の通信は、任意の通信技術またはプロトコルに基づき確立することができる。セキュリティ機能を向上させるために、文書処理エージェント110と管理ステーション152との間の通信は、認証および/または暗号化データ(例えば、文書処理エージェント110および管理ステーション152に提供される対称または非対称な暗号化鍵を使用する)を含んでもよい。管理ステーション152とインタフェース120およびインタフェース125との間に確立された通信リンクを介して、管理者は、文書処理エージェント110が文書ライブラリにアクセスするために必要な情報を提供する。例えば、管理ステーションは、文書処理エージェント110に文書ライブラリ160のネットワークアドレス(および/またはエージェント110がアクセスし処理すべきそのライブラリ内の文書のID)を提供するメッセージを送信することができる。管理ステーションは、エージェント110に転送されるべき文書のコンテンツを暗号化するために使用される暗号化鍵(例えば、秘密対称鍵、またはエージェント110によって使用される秘密鍵に対応する公開鍵)を受信することができる。管理ステーション152と管理インタフェース125(または、管理者が通信できるインタフェース120およびインタフェース130などの他のインタフェースのいずれか)との間の通信は、以下でより詳細に説明されるように、顧客ネットワーク150aと文書処理エージェント110との間のデータおよび情報の交換を制御する他の構成設定を確立するために使用することもできる。
AIエージェントに、文書ライブラリ160の位置(例えば、ネットワークアドレスとして表される)と、顧客ネットワーク150aとエージェント110との間のデータの伝送を制御する通信機能とが提供されると、エージェント110は、リポジトリ(ライブラリ)160の文書のデータ伝送の受信を開始することができる。管理ステーション152は、送信されるコンテンツを制御し、機密コンテンツ(例えば、プライベートな詳細)の削除、コンテンツの暗号化(例えば、文書処理エージェント110における秘密鍵に対応する公開鍵を使用する)、送信されるデータの認証などを含む、文書処理エージェント110に送信される文書に何らかの送信前処理を行うことができる。文書処理エージェント110は、サーバインタフェース120を介して顧客ネットワーク150aから送信されたデータを受信し、データの認証および/または復号、(必要に応じて)フォーマット変換などを含む受信データに対するデータ前処理を実行する。次に、サーバインタフェース120は、文書ライブラリ160から送信された文書に対応するデータ(インタフェース120によって実行される任意の前処理を受ける)を、受け取った文書を処理して、その文書をネットワーク150aのユーザが提供するクエリに対する回答の決定および生成を可能にする表現に変換(転換)する文書取り込みエンジン126に渡す。典型的には、変換を適用する前に、ソース文書は、複数の部分(例えば、200語の部分、または任意の他の語に基づくセグメント)へとセグメント化され、セグメント化は、文書の様々な部分からのコンテンツを離散的なセグメントに結び付けるための様々な規則に従って実行される。前処理(すなわち、前変換)規則の例は、スライディングウィンドウによって取り込まれたコンテンツに先行する1つまたは複数の見出しを組み合わせ、それによって、1つまたは複数の見出しとウィンドウによって取り込まれたコンテンツとの間にコンテキスト上の関連性を生み出す固定長または可変長のスライディングウィンドウを使用してセグメントを構築することである。このような規則により、セグメントに対して実行される変換が、重要なコンテキスト情報と、処理中のセグメントから離れた位置(例えば、ソース文書よりもさらに離れている)にあるコンテンツ情報と組み合わせることを保証する。
ソース文書をセグメント化し、かつ/または(以下により詳細に説明するように)他のタイプの前処理を実行した後、文書取り込みエンジン126は、セグメントを検索可能なセグメント(例えば、質問および回答用検索可能セグメント)に変換するために、文書セグメントに1つまたは複数のタイプの変換を適用するように構成されている。セグメントに適用できるあるタイプの変換は、高速検索プロセスを実施するために、典型的には複数の単語/トークンを含む固定サイズ(または実質的に固定サイズ)のセグメントを数値ベクトルに変換することに基づく。このような検索は、典型的には、検索が比較的多くの単語(トークンまたは特徴)を含む入力データから生成されたマッチングベクトルに基づくため、(ユーザによって提出されたクエリに応答して)一般的に比較的多くの結果(ヒット)を返し、結果として、このような変換から実現可能な解像度がより小さいセグメントの変換から実現できるものよりも低いという点で、粗い検索である。したがって、粗いベクトル変換に基づく結果は、より小さなセグメントに適用される他の変換に比べて、変換コンテンツのテキスト的意味を正確に表現していないかもしれない。他方では、その名前が示すように、高速検索は、比較的迅速に実行することができ、したがって、(提出されたクエリに対する)可能性のある回答の可能な候補を、その後(おそらくは別のタイプの変換に基づく検索によって)より慎重に検索できるサイズまたは数へと選別するために使用され得る。取り込みエンジンによって適用され得る別の変換は、いくつかのテキストセグメント(例えば、段落)固有の回答の単語系列で回答の位置をより狭い範囲で正確に特定するために使用される、詳細ベクトル変換を生成するためのものである。一般に、詳細変換が適用される文書セグメントは、高速検索セグメント(一般に、200語などの固定サイズであるため、セグメント内に回答が存在していても、典型的にはその回答の正確な位置を特定できない)よりも細かい粒度(解像度)であり得る。
より具体的には、高速検索変換(たとえば、ニューラルネットワーク、フィルタなどを通じて実装される)がセグメントに適用され、文書セグメントのコンテンツに基づく、したがって、そのコンテンツを表す値を有するベクトルをもたらす。以下により詳細に説明するように、高速検索変換に従ってデータを変換するために、いくつかのアプローチが文書取り込みエンジン126によって適用され得る。一例では、コンテンツを表すデータは、ベクトル表現(例えば、固定サイズベクトルまたは可変サイズベクトル)に変換されてもよい。したがって、そのような例では、変換は、テキストコンテンツを数値のベクトルに変換し、これは、メタデータ(例えば、さらなる処理に使用できる追加情報を提供するテキストベースのメタデータ)または他のコンテキスト情報と関連付けられていても、関連付けていられなくてもよい。結果として変換されるベクトルは、変換された入力セグメントに関連付けられた可能な質問および回答を表すことができる。入力のコンテンツ(コンテキスト関係を含む)を表すこのようなベクトル値をもたらす変換の例は、BERT(トランスフォーマによる双方向エンコーダ表現)である。
文書取り込みエンジン126によって実行される詳細変換のために、ソースデータ(例えば、1つまたは複数の規則または基準に従ってソース文書からセグメント化されたテキストベースの部分であり、セグメント化された部分は典型的には、高速検索変換に用いられるソースセグメントよりもサイズが小さい)は典型的には、複数のベクトル化された(数値)変換コンテンツへと変換される。詳細変換はまた、BERTに従って実施されてもよい。文書取り込みエンジン126による処理は、文書内の名称付きエンティティ(例えば、人物名および会社名)の位置の検出および記録、表などの構造化データの等価なテキストの検索可能な形式への展開、知識表現(所定のフレーム構造など)への情報転換などの少なくともいくつかの言語ベースの情報を決定する自然言語前処理を含むことができる。いくつかの実施形態において、結果として得られる詳細変換データは、導出または提供されたメタデータ(そのようなメタデータは重要ではないが、文書に対する知的検索および質問応答の性能を促進することができる)と共に変換中のオリジナルコンテンツと組み合わせられ得る。いくつかの例では、変換コンテンツとソースセグメントとの組み合わせは、ソースセグメントと密接に関連し得る自動質問でさらに拡張することができるため、これらの生成された質問は特定のセグメントと(またはソースコンテンツ全体および対応する変換コンテンツを含む全文中の特定の場所に)、または特定の情報フィールドと組み合わされる。ユーザからの質問を処理するとき、ユーザの質問とこのような自動的に生成された質問との間の類似度を用いて、情報(例えば、ポインタまたは実際のユーザが理解できるコンテンツ)を返すことによって、ユーザの質問に回答することができる。
図1を引き続き参照すると、文書取り込みエンジン126によって生成された取り込みコンテンツは、文書オブジェクトモデル(DOM)リポジトリ140に格納される。リポジトリ140は、典型的には、リポジトリ140と文書処理エージェント110の他のモジュール/ユニットとの間の複数のアクセス/インタフェースポイントからアクセス可能な1つまたは複数のデータストレージデバイス(分散型であるか、または単一のローカルの場所で利用可能である)上に実装される。図1の図では、リポジトリ140は、2つのアクセスポイントを有するものとして描かれており、1つのアクセスポイントは、取り込みエンジン126とリポジトリ140との間の一方向のリンク(すなわち、エンジン126からDOMリポジトリ140へのコンテンツの書き込みを可能にするリンク)、およびクエリデータをDOMリポジトリ140に提供し(リポジトリに格納されたDOM記録を検索するために)、クエリを提出したユーザに(任意選択でいくつかのさらなる処理後に)転送される検索結果を受信するクエリ処理モジュール136に接続される双方向アクセスポイントである。いくつかの実施形態において、リポジトリへのアクセスポイントは、クエリ処理操作および文書取り込み操作を実行するように構成されたモジュールに接続された単一のポイントとして実装することができる。
DOMリポジトリ140は、(文書取り込みエンジン(取り込みエージェントとも呼ばれる)126および/またはクエリ処理モジュール136と連携して)DOM記録142a~142nを保存、管理、および検索するように構成されている。DOM記録のコンテンツは、典型的には、文書取り込みエンジン126によって実行される変換に依存する。DOM記録は、特定のソース文書またはソース文書部分に関連付けられたデータ項目を含むことができる。例えば、1つのDOM記録は、ソース文書のオリジナル部分、そのソース文書部分のメタデータ、そのソース文書部分に関連付けられたコンテキスト情報、(高速検索プロセスを容易にするために)ソース文書のオリジナル部分の1つまたは複数の固定サイズ(または実質的に固定サイズ)のセグメントに適用された変換から生じる対応する粗ベクトル、(より正確かつ改良されたテキスト検索を容易にするための)詳細変換から生じる結果として得られる対応する詳細変換コンテンツなどを含む項目の集合であってもよい。したがって、変換によりセグメントのテキストコンテンツを表す値のベクトルをもたらした場合、そのベクトルは、できればメタデータと関連付けて(ベクトルに追加または埋め込まれる)、および/またはオリジナルコンテンツと関連付けて(実際のオリジナルテキスト-コンテンツが保存される状況において、いくつかの実施形態において、セキュリティまたはプライバシー上の理由から、ソースコンテンツはその取り込み時に廃棄されても、または顧客のサイトでのみ利用可能であってもよい)リポジトリ内に格納される。変換コンテンツに関連付けられたメタデータは、オリジナルソースコンテンツに関連付けられたコンテキスト情報、およびより大きなソース文書内の変換コンテンツをもたらしたソースコンテンツの位置または場所を示す位置情報を含むことができる。このような位置情報は、顧客ネットワークに格納されたソース文書のメモリ位置(またはメモリオフセット位置)を指し示すポインタ情報の形で(すなわち、ポインタ情報がリクエスト中のユーザに返されるとき、ユーザのクエリに対する回答を構成する関連コンテンツを見つけることができるメモリ位置を見つけるために使用することができるように)提供することができる。
リポジトリ140に格納された、変換コンテンツ(セグメント化されたコンテンツに適用された様々な変換の結果としてもたらされる、いくつかの変換コンテンツ項目を含んでもよい)、メタデータ、および/またはソースコンテンツは、一緒に統一された記録構造を定義し得、ここで、変換コンテンツ、メタデータ、および/またはオリジナルソースコンテンツの各々は、統一された記録構造のフィールドまたはセグメントである。個々の記録は、それらがより大きなソース文書の個別の文書セグメントに対応する場合、より大きな文書部分(例えば、特定の文書の章)を定義するため、またはセグメント化され取り込まれたオリジナル文書全体を定義するために、(例えば、それらを順次整理することによって、または論理的なリンク/ポインタもしくは実際のリンク/ポインタを通じて)互いに関連付けることができる。
図1にさらに示すように、文書処理エージェント110は、入力(DOMリポジトリ140に配置された取り込み済み文書の少なくとも一部に関連してクエリを提出することが許可された1人または複数人のユーザからのクエリを表すデータ)を受信し、ひいては開始ユーザに返される出力データを受信するように構成されたクエリユニット(クエリスタックとも呼ぶ)をさらに含む。クエリスタックは、クエリ処理モジュール136(クエリエンジンとも呼ぶ)と通信するユーザクエリインタフェース130(サーバインタフェース120と同様であっても、または同じハードウェアおよびソフトウェアを使用して実装されてもよい)を含む。以下により詳細に説明するように、クエリ処理モジュールは、DOMリポジトリ140内に維持されるDOM記録142a~142n内の変換コンテンツと互換性がある変換クエリデータを生成するために、ユーザによって提出されたクエリに同様の変換を適用する変換エンジンを備えていてもよい。変換クエリは、リポジトリ140内の数値ベクトル変換コンテンツを検索するために使用することができる粗い数値ベクトルタイプの変換データ、(リポジトリ140内の同様にフォーマットされた詳細変換コンテンツを検索するために使用することができる)詳細変換クエリ、またはソース文書を取り込むために使用されていてもよい任意の他の変換形式を含むことができる。
リポジトリ140が複数のタイプの変換ソースコンテンツを含む実施形態において、リポジトリ140の検索は、多面的(multi-plonged)検索として実施され得る。例えば、粗い数値ベクトル表現は、一般によりコンパクトで検索しやすい(ただし、BERTベースの変換または他の何らかの変換によって達成されたかどうかにかかわらず、詳細変換された表現ほど正確ではないことがある)ため、提出されたクエリに対する回答を決定するための検索の第1のプロングは、クエリデータを粗いベクトル表現に転換し、その第1の変換クエリ表現を使用してリポジトリ140内の、クエリデータの粗い数値ベースの変換に(例えば、変換ベクトルのクエリデータと変換ベクトルの取り込まれたコンテンツデータとの間の距離、すなわち差異を表し得る何らかの近接度基準に従って)マッチする記録を検索することであってもよい。このタイプの初期検索は、高速検索と呼んでもよい。検索の結果、1つまたは複数の回答候補が特定され得る(例えば、ユーザによって提出されたクエリに応答する回答単語系列を含んでもよい可能な1000、または他の任意の数のセグメントを特定する)。次に、特定された第1の可能な結果のバッチは、クエリを詳細変換クエリに変換し、検索プロセスの第1の段階で特定された検索結果に関連付けられた詳細変換コンテンツを検索することによって検索の第2の段階を実行するために使用することができる。この検索段階は、ディテール検索、または細粒度検索と呼んでもよい。いくつかの実施形態において、高速検索は、特定された候補に関連付けられたソースコンテンツのオリジナル部分を特定するために使用されてもよく、それらの特定された部分は、その後、詳細変換コンテンツに変換されてもよいことに留意されたい。そのような実施形態において、リポジトリ140は、詳細変換コンテンツを維持する必要はなく、むしろ、ソースコンテンツの変換は、高速検索によって、どの部分がクエリに対する回答を含む可能性があると特定されたかに基づいて行われる。代替例では、クエリに対する回答の検索は、高速検索された変換コンテンツ記録の高速検索を通じてソースコンテンツの可能な候補部分を最初に特定することなく、詳細変換コンテンツ記録全体に対して直接実行されてもよい。
したがって、いくつかの実施形態において、クエリスタック(例えば、クエリ処理モジュール136)は、クエリデータを、変換ソースコンテンツと適合する(例えば、DOMリポジトリ140内の変換コンテンツ記録のうちの1つまたは複数と適合する)変換クエリデータに変換するように構成されている。例えば、高速検索に適合する変換は、単一のベクトル結果を生成するためにクエリデータ(例えば、自然言語質問)全体に適用される粗いBERTベースの変換(例えば、ソースデータから検索可能な変換コンテンツを生成するために使用されるのと同じまたは同様の訓練済み学習モデルを実装する学習エンジンを用いる)であってもよい。クエリ処理モジュールは、例えば、第1の基準に従って、変換クエリデータにマッチする、変換ソースコンテンツ内の1つまたは複数の候補部分(粗い変換から生じるそれぞれの数値ベクトルを有する)を特定する高速検索プロセスを立ち上げることができる。例えば、マッチング操作は、計算されたベクトル変換クエリデータと、リポジトリ140内の様々なベクトル変換コンテンツ記録との間の何らかの計算された距離メトリックに対応する何らかの近接度または類似度基準に基づいていてもよい。本明細書で説明するように、いくつかの実施形態において、変換コンテンツは、ユーザが尋ね得る、ソースコンテンツが可能な回答を提供する質問に対応するベクトルを含んでもよい。したがって、高速検索は、いくつかの実施形態において、変換クエリ結果(一般に、結果ベクトル記録)を、検索可能なベクトルを生成したソースコンテンツに関連して尋ねられる可能性がある質問を表す検索可能なベクトル記録と比較し得る。
クエリ処理モジュール136は、それらの粗い変換ベクトルに基づいて特定された1つまたは複数の候補部分に対応する1つまたは複数の詳細変換コンテンツ記録から、第2の基準(例えば、何らかの他の近接度または類似度メトリック)に従って、クエリデータの細密変換データにマッチする少なくとも1つの詳細変換コンテンツ記録を決定するようさらに構成されていてもよい。あるいは、高速検索が実行されない実施形態において、クエリ処理モジュール136は、第2の基準に従って、変換ソースコンテンツ内の、それぞれの詳細変換コンテンツ記録が変換クエリデータとマッチしている1つまたは複数の候補部分を特定するように構成されていてもよい。
いくつかの実施形態において、ユーザクエリインタフェース130および/またはクエリ処理モジュールは、クエリキャッシュ135および質問生成ユニット(キャッシュ135またはクエリ処理モジュール136の一部であっても、別のユニットであってもよい)に結合されてもよい。クエリキャッシュ135は、特に、頻繁に尋ねられる質問に対応する回答/コンテンツを格納している。そのような回答/コンテンツは、以前に提出されたクエリに応答して、DOM文書から(および/またはその対応する生のソースコンテンツから)以前に取得されたコンテンツを含んでもよい。そのようなキャッシュされた回答に関連付けられたカウンタは、特定の質問および回答が送信および/または取得された頻度を追跡することができる。キャッシュ135は、ある基準(閾値)期間内に要求されなかったキャッシュされたコンテンツを廃棄するように構成することもできる。回答キャッシュ内のコンテンツは、顧客システム(ネットワーク)150aのユーザが提出することが予想されるいくつかの可能性の高い質問を予測して、またはDOMリポジトリ140から取得されたかもしれないコンテンツ(例えば、ユーザからのその後のフィードバックに基づいて、提出されたクエリに対して不正確または応答性がないと判断されたコンテンツ)をオーバーライドするために管理者によって(例えば、管理インタフェース125を介してステーション152などのステーションから操作して)格納されていてもよい。したがって、いくつかの実施形態において、クエリスタックは、受信クエリデータが(回答キャッシュに格納され得る)所定の質問のうちの1つとマッチするかどうかを判定し、受信クエリデータが所定の質問のうちの1つとマッチすると決定することに応答して、(できれば回答キャッシュ内に格納される)1つまたは複数の回答データ記録に基づいて出力データを生成するように構成されている。いくつかの実施形態において、キャッシュに格納された過去の質問および関連付けられた回答へのクエリデータのマッチングは、質問とそれらの回答との組み合わせに基づくスコアを計算し、計算されたスコアをランク付けして1つまたは複数の可能性の高いマッチ候補を特定することによって実行される。
前述のように、クエリ処理モジュールは、クエリデータを通じて提出された1つまたは複数の質問に対するフォローアップ質問または関連する質問を(例えば、訓練済み学習エンジンに基づいて、および/または質問データのリポジトリを使用して)決定できる質問生成エンジンをさらに備えてもよい。いくつかの実施形態において、フォローアップ質問は、提出されたクエリを言い換える(例えば、提出中のクエリを変換および/または正規化して、例えば、訓練済み学習エンジンを使用して提出された質問を修正する)ことによって生成することができる。いくつかの実施形態において、提出されたクエリに対して(例えば、クエリ処理モジュール136を介してDOMリポジトリ140から取得されたコンテンツに基づいて)決定された回答データは、回答からさらなる質問を作るために(別のモジュールによって)処理されてもよい。そのような派生した質問は、その後、クエリ処理モジュールに再度提出されてフォローアップ回答を取得することができる。このプロセスは、所定の回数まで反復して繰り返すことができる。状況によっては、DOMリポジトリ140に格納されたコンテンツは、複数の質問(文書取り込み段階中に適用されたいずれかの変換フォーマットで表される)をソース文書の処理されたセグメント各々に関連付けてもよい(前述のように、変換コンテンツの生成は、各処理セグメントについて、処理セグメントに関連付けられた質問を表すデータ、メタデータ、ならびに変換フォーマットおよび/またはオリジナルソースコンテンツで提供されてよいコンテンツを含み得る)。したがって、クエリ(一般に、例えば、粗いBERTまたは細かいBERTタイプの変換に従って計算される変換されたフォーマット)の提出時に、少なくとも1つのDOM記録/要素が識別される。その検索結果は、おそらくは、特定された結果と提出されたクエリとのマッチをもたらしたかもしれない質問を含む、複数の質問と関連付けられ得る。追加の質問のうちの1つまたは複数(すなわち、クエリとマッチした質問以外)は、ユーザによって提出されたオリジナルクエリに密接に関係し得る追加のコンテンツを特定する検索のために再度提出する別個のクエリとして用いられてもよい。
図1にさらに示すように、クエリに対する回答の決定は、ステーション154aとユーザクエリインタフェース130との間に確立されたリンク170を介してクエリ172を提出するユーザによって開始することができる(取り込みのためにソース文書を転送するために確立されたリンクに関して述べたように、リンクは有線通信プロトコルおよび無線通信プロトコルを含む任意のタイプの通信技術またはプロトコルに基づくことが可能である)。クエリ172は、ユーザによって提出された実際の未処理の質問であっても、(例えば、プライバシーおよびセキュリティ上の理由で)部分的または完全に変換されてもよい。例えば、ステーション154aは、取り込みエンジン126によって適用された変換に相応する変換を適用してもよい(この場合、クエリスタックで同様の変換を行うことは不要になり得る)。代替的に、または加えて、クエリ172に対して認証処理および暗号化処理が行われてもよい。クエリ(質問データ)172は、文書処理エージェント110に送信され、ユーザクエリインタフェース130で受信される。クエリを受信すると、適切な回答が所定の回答のキャッシュ135においてあるかどうかの判定が行われ得る。所定の質問および回答がある(例えば、クエリデータが1つまたは複数の所定の質問にマッチする)場合、所定の回答のうちの1つまたは複数を使用して、リンク170を介して(または他の何らかのリンクを通じて)ユーザに返される出力データ(出力データ174として示す)を生成する。
しかし、一般に、クエリデータは、クエリスタックによって、(ステーション154aでまだ変換されていない場合)変換クエリデータに変換される。変換データは、DOMリポジトリ140に格納された変換ソースコンテンツのフォーマット化と適合する1つまたは複数の変換フォーマットでクエリを提供してもよい。いくつかの実施形態において、クエリデータは、1つまたは複数の追加の質問(例えば、フォローアップ質問、またはユーザによって提出された元のクエリに関連する質問)を生成するためにも使用されてもよい。クエリに対する回答が回答キャッシュから利用可能である状況では、その回答自体が、キャッシュされた回答に関連し得るさらなる1つまたは複数の質問を生成するための基礎として使用されてもよい。クエリまたは変換クエリを用いて、クエリ処理モジュール136を介して、DOMリポジトリ140を検索する。前述したように、検索は、DOMリポジトリ140にデータを格納するために使用される複数の変換フォーマットに従って、多面的なプロセスとして実行されてもよい。
提出されたクエリに応答して生成された出力は、一般に、顧客ネットワーク150aで利用可能なソースコンテンツへのポインタを含む。リポジトリ140に格納されたデータは、クエリを提出したユーザがアクセスする顧客ネットワークで利用可能な文書ライブラリで維持されるソース文書に基づいて取り込まれ、またソース文書は文書処理エージェント110で(例えば、機密データが漏洩しないように保護するために、セキュリティ上の理由のために)それらのオリジナルの形式で格納されていないかもしれないため、ユーザに返される出力は、実際の回答データがユーザに送り返されることを要求しない。代わりに、クエリの出力として返されるポインタは、ユーザのネットワーク150でユーザが利用できる適切な文書を用いて回答のアドレスまたは位置を特定することができる。例えば、図1に図示された例では、出力データは、文書162a内の回答の特定の位置へのポインタとして示される。したがって、そのようなポインタは、文書162を表すデータ、例えば、文書の開始位置があるネットワークアドレスまたはメモリ位置と、ステーション154aのユーザによって尋ねられた質問への回答を表す文書の部分の特定の位置(例えば、文書162の開始位置の先頭からの相対オフセット、または特定した部分の開始点が位置する実際のアドレスまたはメモリ位置)を含んでもよい。出力データで提供されるポインタデータは、ユーザによって提出されたクエリに(1つまたは複数の適用されたマッチ基準に従って)マッチするように(例えば、クエリ処理モジュール136によって)決定された変換コンテンツデータを含むDOM記録のメタデータフィールドに含まれてもよい。いくつかの実施形態において、出力データは、ポインタデータに加え、またはポインタデータの代わりに、変換コンテンツの少なくとも一部分に対応するソースコンテンツの少なくとも一部、および/または変換コンテンツの少なくとも一部分に対応するソースコンテンツの要約を含んでもよい。
図1に描かれたシステム100の動作に関する追加の詳細は、文書処理および応答生成のための例示的な手順200のフローチャートを示す図2を参照しながら示される。手順200は、ローカルデバイス(例えば、図1の文書処理エージェント110)において、遠隔デバイス(例えば、顧客ネットワーク150aの一部である図1のステーション154aなどのステーション)から、複数のソース文書のリポジトリ(例えば、顧客ネットワーク150aの文書ライブラリ160)のソース文書のソースコンテンツに関する質問を表すクエリデータを受信すること210を含む。ソースコンテンツは、ローカルデバイスからアクセス可能な変換コンテンツ(例えば、図1のDOMリポジトリ140に格納された変換コンテンツ)と関連付けられている。前述したように、いくつかの例では、ローカルデバイスは、例えば、遠隔デバイスが位置し、セカンドパーティーによって運営される第2のネットワーク(すなわち、顧客ネットワークは、文書処理エージェントが実装されるネットワークから物理的に離れており遠隔にある)と異なる、ファーストパーティーによって運営される第1のネットワーク、または遠隔デバイスも位置する第3のネットワーク(すなわち、ローカルデバイスと遠隔デバイスは両方とも同じネットワーク上にある、例えば、いくつかのセキュリティの問題を軽減するために文書処理エージェントが顧客のネットワーク内に留まる状況において)のうちの1つに位置し得るデバイスを指す。
図2にさらに示すように、手順200は、ローカルデバイス(110)において、クエリデータと変換コンテンツの少なくとも一部分との間のマッチの判定に応答して、遠隔デバイスからアクセス可能なソース文書において、変換コンテンツの少なくとも一部分に対応するソース文書の少なくとも一部分にアクセスするためのポインタ、および/またはソース文書の少なくとも一部分の複製(すなわち実際のユーザが読める回答)のうちの1つまたは複数を含む出力データを生成すること220をさらに含む。クエリデータと(手順200、または本明細書に記載の他の手順のいずれかに関連して)検索されるコンテンツとのマッチは、完全マッチである必要はなく、単にクエリデータと検索されるデータ部分との間の類似度のあるレベル(場合によっては調整可)を必要とし得ることに留意すべきである。
ソース文書の少なくとも一部分にアクセスするためのポインタは、例えば、複数のソース文書のリポジトリにおいて(すなわち、文書ライブラリ160において)ソース文書を識別する文書識別子、複数のソース文書のリポジトリにおけるソース文書のネットワークアドレス、ソース文書内のソース文書の少なくとも一部分の開始位置および終了位置、ならびに/またはワードスパンのうちの1つまたは複数を含んでもよい。いくつかの例では、生成された出力データは、例えば、変換コンテンツの少なくとも一部分に対応するソースコンテンツの少なくとも一部、および/または変換コンテンツの少なくとも一部分に対応するソースコンテンツの要約のうちの1つまたは複数をさらに含んでもよい。
前述したように、いくつかの例では、変換コンテンツの少なくとも一部分は、文書オブジェクトモデル(DOM)データ項目のリポジトリに格納されてもよい。変換コンテンツの少なくとも一部分に対応するDOMデータ項目には、ソース文書の少なくとも一部分にアクセスするためのポインタと、例えば、ソースコンテンツの少なくとも一部分を表す少なくとも1つの変換された要素、ソースコンテンツの少なくとも一部分、および/またはソースコンテンツの少なくとも一部分に関連付けられたコンテキスト情報のうちの1つまたは複数とが含まれ得る。ソース文書の少なくとも一部分に関連付けられたコンテキスト情報は、ソース文書のソースコンテンツに関連する質問に対する出力データの応答性レベルを示す1人または複数人のユーザからのフィードバックデータ(例えば、クエリに対する応答が良い回答を含むか、または悪い回答を含むかどうかのユーザフィードバック)を含んでもよい。
リポジトリ140内の変換コンテンツは、例えば、ソースコンテンツをセグメント化し、次に、セグメントに対して1つまたは複数の異なるタイプの変換(例えば、BERTベースの変換に従った高速検索用の粗い/固定ベクトル変換、BERTベースの変換手順に従った詳細変換であって、粗い変換に適用した変換と同様または異なっていてもよい詳細変換、および/または学習エンジンを介してまたはフィルタリング操作を介して実装される他のタイプの変換)を含む取り込みプロセスに従って生成される。したがって、いくつかの実施形態において、手順200は、ローカルデバイスにおいてソース文書の複製を受信することと、ソース文書の複製を複数の文書セグメントにセグメント化することと、複数の文書セグメントの各々を、1つまたは複数の変換に従って1つまたは複数の対応する変換セグメントに変換することとをさらに含んでもよい。管理者は、文書処理エンジンに(例えば、図1の管理インタフェース125を介して)、ソース文書を見つけられる場所についての情報を提供してもよい。したがって、手順は、複数のソース文書のリポジトリにおけるソース文書の位置を特定する情報を管理者から受信することをさらに含んでもよい。
1つまたは複数の変換は、例えば、複数の文書セグメントのコンテンツを表す数値ベクトルを生成する粗い線形化変換、および/または複数の文書セグメントのコンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含んでもよい。粗い変換(「高速検索」とも呼ばれる)または詳細変換のいずれかは、BERT(トランスフォーマによる双方向エンコーダ表現)処理に基づいて、1つまたは複数の文書セグメントに適用される(例えば、ニューラルネットワークを用いて導出される)ベクトル化変換であってもよい。粗い変換は、典型的には、詳細変換が適用されるセグメントよりもサイズが大きい固定サイズの(または実質的に固定サイズの)ソースデータセグメントに適用される。ソースデータおよびクエリに適用されるBERTベースの変換に加えて、(高速検索および/またはディテール検索に利用されるかどうかにかかわらず)さらなるタイプの変換が使用されてもよい(例えば、Word2Vecot、GloVeなど、他のNPLアプローチを実装する変換など)。
いくつかの実施形態において、手順200は、クエリデータを、変換ソースコンテンツと適合する変換クエリデータに変換することも含んでもよい。そのような実施形態において、手順は、粗い変換プロセスを通じて生成された変換ソースコンテンツにおける、第1の基準に従って変換クエリデータとマッチする1つまたは複数の候補部分を特定することによって高速検索を実施することをさらに含んでもよい。その後、細粒度検索が高速検索によって特定された候補部分に適用されてもよい。したがって、手順は、それぞれの粗い数値ベクトルに基づいて特定された1つまたは複数の候補部分に対応する1つまたは複数の詳細変換コンテンツ記録から、第2の基準に従って、クエリデータの詳細変換データにマッチする少なくとも1つの詳細変換コンテンツ記録を決定することをさらに含んでもよい。
いくつかの例では、細粒度検索は、最初に高速検索を実行することなく実行される。したがって、そのような例では、手順は、第2の基準に従って、変換ソースコンテンツ内の、それぞれの詳細変換コンテンツ記録が変換クエリデータとマッチしている1つまたは複数の候補部分を特定することを含んでもよい。
いくつかの例では、複数の文書セグメントの各々を変換することは、1つまたは複数の変換を実装する訓練済みニューラルネットワークを使用して、複数の文書セグメントの各々を変換することを含んでもよい。ソースコンテンツを複数の文書セグメントにセグメント化することは、1つまたは複数の前処理規則に従ってソースコンテンツを複数の文書セグメントにセグメント化することを含んでもよい。セグメント化は、変換されるセグメント内のコンテンツにコンテキスト(例えば、見出し情報、フォント情報、他のメタデータ情報)が追加されるように実行することができる。したがって、そのような状況では、ソースコンテンツをセグメント化することは、ソースコンテンツの1つの部分とソースコンテンツの1つまたは複数の他の部分とを意味的に関連付ける階層的規則に従って、ソースコンテンツを複数の文書セグメントにセグメント化することを含んでもよい。
いくつかの例では、手順は、受信ソース文書に関連付けられた拡張データを取得することと、ソース文書と拡張データとの組み合わせを複数の文書セグメントにセグメント化することとをさらに含んでもよい。データの拡張は、ソース文書で見つかるリンクに基づき得る。したがって、拡張データを取得することは、ソース文書に含まれるリンクに基づいて拡張データを取得することを含んでもよい。
手順200は、出力データを遠隔デバイスに送信することをさらに含んでもよい。いくつかの実施形態において、追加の質問が生成されてもよい。したがって、手順は、質問を表す受信クエリデータに基づいて、ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定し、変換コンテンツに適用することをさらに含んでもよい。
状況によっては、クエリに対する回答は、Q-Aキャッシュから提供することができる。したがって、手順200は、受信クエリデータが所定の質問のうちの1つにマッチするかどうかを判定することと、受信クエリデータが所定の質問の1つにマッチすると判定したことに応答して、所定の質問のうちマッチした質問に関連付けられた1つまたは複数の回答データ記録に基づいて出力データを生成することとを含んでもよい。
前述したように、文書の取り込みは、詳細変換(いくつかの実施形態において、以下でより詳細に説明するようにTwo-Leg-BERT実装であってもよいBERTなど)に従って実行されてもよい。したがって、いくつかの例では、手順200は、ソースコンテンツを1つまたは複数のコンテンツ部分に分割することと、1つまたは複数のコンテンツ部分を詳細変換に従って変換し、1つまたは複数のコンテンツ部分のコンテンツを表す詳細変換コンテンツ記録を生成することとをさらに含んでもよい。詳細変換は、BERT(トランスフォーマによる双方向エンコーダ表現)処理に基づいて1つまたは複数の文書セグメントに適用される変換を含んでもよい。1つまたは複数のコンテンツ部分のうちの少なくとも1つを変換することは、1つまたは複数のコンテンツ部分のうちの少なくとも1つを、質問および回答ペアの1つまたは複数のグランドトゥルースサンプルに基づいて、変換コンテンツに変換することを含んでもよい。いくつかの実施形態において、文書の要約は、要約文に近い良い文章をピックアップすることによって実現されてもよい。したがって、そのような実施形態において、手順200は、詳細変換に従って変換された1つまたは複数のコンテンツ部分に基づいてソース文書の要約を導出することをさらに含んでもよい。要約を導出することは、変換された1つまたは複数のコンテンツ部分のうちの、所定の要約部分に対する類似度レベルが類似度閾値を超えている少なくとも1つを特定することを含んでもよい。
ソース文書の取り込み:前処理およびコンテンツ変換
前述したように、Q-Aコンテンツ検索を容易にするために、ソース文書は、DOM(文書オブジェクトモデル)オブジェクトのライブラリの一部として格納される変換コンテンツを生成するために、(例えば、サーバインタフェース120を介してソース文書のソースコンテンツを受信する、図1の文書取り込みエンジン126を介して)取り込まれる。取り込みは、例えば、ソース文書を管理可能なサイズのセグメントに分割する一方で、できるだけ密接に関係するコンテキスト情報を保存するために、コンテンツに対して実行される様々な前処理操作を含む。したがって、文書取り込みエンジンは、ソース文書を受信し、ソース文書に1つまたは複数の前処理を適用して、ソース文書の構造およびコンテンツを表すコンテキスト情報を生成し、コンテキスト情報に基づいてソース文書を変換し、質問および回答用検索可能文書を生成するように構成されている。
図1の例では、本明細書に記載の取り込みプロセスが適用されるソースコンテンツは、顧客ネットワーク150aにあるライブラリ160内の文書の文書リポジトリを含む。しかしながら、顧客ネットワーク150a内であれ、他の場所であれ、そのデータコーパスが顧客の知識ベースの一部を構成し、その知識を取り込んでQ-A検索が可能な形態で保存するためにライブラリ160内の文書に対して行われる処理と同様に処理することができる他の多くのソースが存在することが可能である。そのような追加のソースの例としては、a)Slack、MS Teams、MS productivity Suite(Office 360)、Google G-Suiteなどのコラボレーションシステムに格納されているデータ(特定の送信者と受信者の間の電子メールコミュニケーションを格納する、従来の電子メールサーバを処理して、関連データ取り込んでもよい)、b)SalesForce、ServiceNowなどの企業SaaSアプリケーション内に格納されているデータ、c)顧客対応ウェブアプリケーション、従業員向けウェブアプリケーションなどといった様々なウェブサイトおよび様々なウェブアプリケーションのウェブページ内のデータが挙げられる。
文書の取り込みは、データの特定のソース、および/または情報の望ましい、もしくは意図された提示(例えば、ユーザによって提出されたクエリデータへの返信として返される応答データの提示)に基づくことができる。例えば、データ(コンテンツ)のソースが何らかの特殊なアプリケーション(Salesforce、Slackなど)由来である場合、ソースコンテンツの取り込みは、特定のソースに必要な特殊な、または専用の前処理、例えば、チャットデータ変換、またはSalesforceの記録などの特殊なフォーマットの記録に整理されたデータを、散文、またはソースコンテンツのセグメント化された部分に適用される変換により資する何らかの他のフォーマットに変換することを実行するように構成されてもよい。
応答データの特定の提示方法に基づく(または考慮する)取り込みに関して、データ提示を実現するための以下の3つの方法例を考慮する。第1の例示的アプローチでは、データはAPIベースの方法論に従って提示され、例えば、様々なフォーマットタイプ(例えば、HTML、PDF、Word文書など)のレンダラーに提供される位置(ページ番号または回答スニペットの開始/終了位置など)に加えて、回答/段落が含まれる。レンダラーは、文書内の回答スニペットおよび段落の位置を特定し、セグメントのデータの部分を太字にするか、またはハイライトすることなどによって、レンダリングされたセグメントの特殊処理を行うことができるマクロまたはプラグイン/拡張機能(extension)として実装することができる。データに対する応答を提示するための別の例示的アプローチは、(例えば、取り込みエンジンを介する)文書処理段階中に、提示の候補である文書内のセグメントのスクリーンショットを保存すること(例えば、効果的には、出力コンテンツを事前にレンダリングすること)である。クエリに応答するものとして特定されたデータの後の提示中、クライアントアプリケーションは、スニペット/段落を保持する最も適切なスクリーンショットを選択することができる。クエリ結果を提示する第3のアプローチでは、提示のための適切なセグメント化が作成された後、様々なフォーマット(例えば、Word文書、htmlなど)で利用可能であり得る処理済みの文書の全セグメントが、回答スニペットの位置を特定してハイライトできるセグメント(セグメント間の1対1マッピングが実現され、回答スニペットの開始位置/終了位置がAPIを介して共通のPDFレンダラーに渡される取得セグメントに適切につながっている)を含むPDF文書フォーマットに変換される。
前処理手順の一例は、ソース文書のソースコンテンツの、複数の文書セグメントへのセグメント化である。そのようなセグメント化は、ソース文書の1つの部分とソースコンテンツの1つまたは複数の他の部分とを意味的に関連付ける階層的規則に従って実行することができる。例えば、固定サイズまたは可変サイズ(例えば、200語)のスライディングウィンドウはソースコンテンツに適用され、コンテンツ変換を適用する維持可能なサイズのセグメントを生成することができる。しかし、小さな塊にセグメント化されると、コンテンツセグメントは、より大きなサイズのセグメントで別様に利用できたであろう重要なコンテキスト情報を失い得る。例えば、文書のセクションの途中の節は、単独では、セクション見出し、セクション内の以前の節に対する節の位置、特定のセグメントによって捕捉されない他の節に関連付けられたフォントサイズ(例えば、現在の節が脚注であるかどうか)などの重要なコンテキスト情報を含まないことがある。したがって、いくつかの実施形態において、コンテキスト情報(例えば、セクション見出し、章見出し、文書タイトル、位置、フォントタイプおよびサイズなど)が、文書セグメントのうちの1つまたは複数と組み合わされてもよい。この前処理手順は、例示的な文書取り込み手順300の図を示す図3に示されている。図3において、ソースコンテンツ310(ソース文書の一部であってもよい)は、セグメント320a~320nにセグメント化されている。各セグメントは、(ソースコンテンツにセグメント化ウィンドウを適用した結果)それ自身の個々のセグメント化されたコンテンツを有し、これは、各セグメントに関連付けられたコンテキスト情報(テキスト情報、数値情報、またはその両方であってもよい)と組み合わされる。見てとれるように、コンテキスト情報の少なくとも一部、すなわち文書ID(「文書a」)、章情報(第S章)、および見出し情報(第xセクション)は、図3に示されるセグメントと共通している。これにより、セグメントに後に適用される変換は、コンテキスト情報の少なくとも一部を保存し、それによって、変換中のセグメントと主題との関連性を保持することができる。
いくつかの例では、(より効率的な検索および取得を促すように)セグメント化プロセスを単純にするために、ソース文書は、連続する文書セグメント(各セグメントに別個に付加されるコンテキスト情報を含まない)間の重複を作り出すようにセグメント化されてもよい。したがって、例えば、セグメントがある特定のサイズ(一定または可変)のウィンドウによって作成される状況では、ウィンドウは、ウィンドウサイズのある所定の分数(例えば、200語のウィンドウの場合は150語となる3/4)によってある位置から次の位置にシフトされ得る。分数シフトの結果、重複したセグメントに適用される変換(例えば、BERTベースの変換の線形ベクトル化)により、セグメント間に何らかの相関をもたらし、これは、後のQ-A検索に対して連続するセグメント間の関連性を保持することができる。いくつかの実施形態において、見出し情報(および他のコンテキスト情報)は、分割されたセグメントに直接追加されてもよい。あるいは、見出し情報およびコンテキスト情報は、ベクトルに変換されて、これは次に、スライドウィンドウによって抽出されたコンテンツに適用される変換操作の結果としてできるベクトルに追加されるか、または結果として得られる組み合わせたデータに変換が適用される前にウィンドウによって抽出されたコンテンツに組み合わせられるかのいずれかであってもよい。隣接するセグメント同士を(例えば、セグメントを形成するために文書上でウィンドウを分数シフトすることにより)互いに関連付けることによって、上の段落および関連付けられた回答スニペットの検索および提示処理のために、(送信されたクエリに応答する)関連する段落の特定が改善される。
ソース文書のセグメント化中に適用できる別の前処理は、表情報(すなわち、オリジナルのコンテンツが表またはグリッドに配置されているとき)の処理に関する。この前処理を用いて、表(または他のタイプのデータ構造)に整理された構造化データを、等価なテキストなどの検索可能な形式に展開する。例えば、ソース文書の一部分がマルチセルテーブルであると識別すると、マルチセルテーブルを置換するための置換部分が生成され、複数の代替部分は各々、マルチセルテーブルに関連付けられた対応するサブ部分コンテンツデータおよびコンテキスト情報を含む。前処理のさらなる例は、例えば、a)ユーザに提示されるソース文書に関連する1つもしくは複数の質問に応答してユーザによって提供される情報、ならびに/またはb)質問および回答ペアの1つもしくは複数のグラウンドトゥルースサンプルに基づいて、コンテキスト情報をソース文書の1つまたは複数の部分と関連付ける手順が挙げられる。
いくつかの例では、コンテキスト情報はセグメントとともに明示的に含まれなくてもよく、発見され、拡張情報(この場合、拡張コンテキスト情報)として文書セグメントに含まれる必要があり得る。例えば、エンティティの発見(文書で参照される関連エンティティの特定)を用いて、推論中の検索(高速マッチング(FM)検索、またはディテールマッチング(DM)検索)の高速化を助け、検索精度を向上させて、改善されたスキーマを生成することができる。
以下の例示的実施態様を考慮する:
・各検索ユニット(例えば、200語ウィンドウ、段落、文書など)は、検索ユニットに関連付けられた固有のエンティティに関して分析され、特定のタスクのエンティティ(例えば、人事、著者、組織など)に関連付けられたメタデータに関しても分析される。
・各検索ユニットは、適切な固有のエンティティおよびメタデータエンティティがタグ付けされる。
・検索中、これらの検索ユニットの多くを、手元のクエリに無関係であると特定することによって排除できる、異なるヒューリスティックを使用することができる。例えば、ある使用例では、ユーザの質問が、ある特定の主題に関係すると高い信頼度で(例えば、ユーザによる主題の明示的な特定、例えば、「財務の質問があります」と述べる質問故に、または規則もしくは分類エンジンを通じて主題が特定の主題に関係すると推論できるため)判定される場合、他の主題(人事、セキュリティなど)のすべての文書/文書オブジェクトは、さらなる検討から除外でき、それらの文書は、提出されたクエリに対応して検索する必要がない。
・そのようなフィルタリングの副産物は、FM検索およびDM検索を高速化することである。加えて、無関係なカテゴリの潜在的な回答単位により誤認識エラーが生じないため、結果としてこれは検索精度の向上に役立つ。
ユーザの検索に関連する特定のエンティティ(または複数のエンティティ)に関する情報を用いて、より正確な追加の質問を生成し(例えば、追加の可能な質問回答ペアを生成できるように、入力されたクエリを言い換える異なる方法を決定し)、またデータ(変換された形式のDOMオブジェクトであれ、ユーザが読めるデータフォーマットであれ)のリポジトリの検索に使用できる追加のコンテキストを提供することもできる。
エンティティのコンテキスト情報は、特定の項目(例えば、様々な製品ブランド)に関する情報と、検索を改良し、出力結果を改善するための追加のコンテキスト情報を提供する要素とをさらに含み得る。例えば、ユーザが、カメラ(および/または他のタイプのセンサ)を備えた拡張現実システムと相互作用している状況を考慮されたい。そのようなシステムでは、カメラのうちの1つまたは複数が、ユーザが見ている位置を向いているであろう。センサデバイスによって捕捉されたシーン内の情報(例えば、シーン内に現れるオブジェクトおよびアイテムを識別するために、例えば、学習機械によって処理することができる画像データ)を用いて、ユーザによって同時に開始されたクエリにコンテキスト情報を提供することができる。例えば、ユーザが下を向き(拡張現実システムのカメラも同様に、ユーザが見ているシーンを向くようにユーザの頭部の方向および向きに従い)、自分の携帯電話用のMagSafe充電器(無線充電用)を見て、「どのように電話を充電するのですか」と尋ねた場合、(例えば、本明細書に記載されている実施態様に基づく)Q-Aシステムは、ユーザが下を見て車を見た場合に特定されるであろうものとは異なる、この質問に対する(DOMリポジトリの検索の結果生成される)回答を特定する。すなわち、拡張現実システムのセンサを用いて、コンテキスト情報(例えば、MagSafe充電器へのユーザの近さ対車への近さ)を決定(または発見)し、その決定済みコンテキスト情報に部分的に依存する検索を実行する。
いくつかの実施形態において、センサデバイス(この場合、カメラ)の向き、位置決め、および/または位置(衛星または地上信号分析を使用した位置決定技術に基づいて決定され得る)は、それ自体が、リポジトリデータの検索に密接に関連する重要なコンテキスト情報を提供することができる。例えば、カメラを下方向に向けると、クエリによって探している情報が地面の近くにあるオブジェクトに関連することを示唆することができる。別の例では、センサデバイスの位置を用いて、センサデバイスの特定の地理的位置に関連性を有する回答に検索を制限することができる(例えば、ユーザがいる特定の会議室に関連する詳細を決定する)。したがって、「ビデオ会議カメラをオンにする方法は?」といったクエリは、クエリを提起したユーザがいる特定の会議室内に位置するビデオカメラについての回答を(例えば、会社が保存している関連マニュアルまたは他のソース文書から)検索するように修正する(または制限する)ことができる。
拡張現実システム(またはセンサを備えた他のタイプのシステム)が、本明細書に記載された文書処理(例えば、Q-Aタイプの処理)の実施態様と合わせて使用できる別の例は、ストリーミングボディカメラ(またはヘルメットカメラ)を装着し得る工場労働者が、撮影されたビデオストリームから抽出されたコンテキスト情報によって修正されるクエリ質問を提起できる状況を含む。ユーザは、ある状況において、「機械」の機能もしくは操作に関する情報、または特定の「製品」に関する情報を尋ねることがある。ユーザが携帯するデバイスによって撮影された画像またはビデオは、機械の特定のブランドまたはモデルを識別することができ、ユーザが機械の操作に関する何らかの特定の情報を求めている場合、拡張現実センサを通じて識別された特定のモデルを用いて、識別された特定の機械のモデルに関連する文書(例えば、ユーザマニュアル)に検索を制限することができる。したがって、工場労働者を支援するように構成された拡張現実システムにおいて使用される場合、カメラによるストリーミングを用いて、カメラ(風景内のオブジェクトおよびアイテムを識別するために学習機械と組み合わせて使用される)によって生成されたビデオストリームに従って識別された特定の機械を考慮するようにクエリ(例えば、「ある機械」に関する情報を求める)を修正することができる。工場労働者(または技術者)のシナリオに関連する別の例では、ユーザは、ワイヤリングハーネスの接続性について尋ねるクエリを(例えば、ユーザが携帯するモバイルデバイスで動作するAIアシスタントアプリケーションなどの音声ベースのインタフェースを通じて)提起し得る。クエリは、シーンの撮影された画像(またはビデオ)に現れるワイヤリングハーネスに固有であり得る回答を検索するように修正(または制限)されてもよく、そこからハーネスの特定のモデルまたはタイプが識別できる。
撮影された画像に基づくデータをコンテキスト発見の過程で使用できる別の例は、風景が認識可能なコード(例えば、QRコード、バーコードなど)を含み、そこから意味のあるコンテキスト情報を抽出するためにデコードすることができる場合である。例えば、上記のワイヤリングハーネスの例では、ワイヤリングハーネスは、ユーザが携帯する画像撮影デバイスで撮影したときに自動的にデコードできるQRコードまたはバーコードを含むラベルを備えてもよい。その後、ワイヤリングハーネスに関連してユーザによって提起されるクエリは、得られた回答がコンテキスト発見中に識別されたQRまたはバーコードに関連するように修正される(または何らかの方法で制限される)。
本明細書に記載される例示的なシステム(例えば、拡張現実システム)のいくつかは、拡張現実ゴーグル(眼鏡)を使用して実装することができる一方、他のシステムは、ユーザが関連する風景の方向にカメラを向けるために動かすスマートフォンに搭載されたカメラを用いて実装することができることに留意されたい。そのような電話ベースの拡張現実システムのいくつかの実施形態は、人工知能(AI)アシスタントアプリケーション(例えば、Siri、Alexa、Cortanaなど)を備えてもよく、それを介して、ユーザは、拡張現実システムから決定されるコンテキスト情報に基づいて修正されるユーザのクエリを提供し得る。テキスト入力ソース、音声キャプチャソース、画像撮影ソースなどのうちの1つまたは複数からの入力を組み合わせ得る、(Q-Aデータリポジトリを検索する過程で)クエリを作成するための他のタイプのミックスモード入力ソースを使用できることにさらに留意されたい。
いくつかの実施形態において、文書処理(例えば、セグメント化)は、2つの別個のタスクとして実行することができる。ある処理タスクにおいて、ソース文書は、適切にセグメント化され、さらに拡張(例えば、セクションの見出しを表すベクトル系列は、そのセクション内の全段落のベクトルに付加できる)を行った小さな塊、例えば段落に編成される。これらの拡張は、検索精度を向上させるために用いられる。並列タスクでは、文書が提示に最も適切であるようにセグメント化される。検索処理中、上の段落および関連付けられた回答スニペットが特定されるが、ユーザに提示されるのは、特定された回答スニペットに関連付けられた(特定された回答スニペットではなく)提示コンテンツであるように、2つの異なる結果として得られたセグメント化出力は互いに関連付けられる必要である。換言すると、システムは、検索操作を容易にするために特定の節を取り込み、提示操作を容易にするためにその特定の節を別個に取り込むことができる。この例では、検索可能な取り込み済みコンテンツにクエリをマッチングした結果、節を特定すると、特定された節に関連付けられた提示コンテンツが出力される。
ソース文書を複数のセグメントにセグメント化すると、各セグメントは、セグメント(コンテンツ、および任意選択でコンテキスト情報であるが、ただし、いくつかの実施形態においてコンテキスト情報は変換せずに保存されてもよい)を、それぞれのセグメントのオリジナルコンテンツに関連する質問および回答に関連付けられた結果として変換されるコンテンツに変換する1つまたは複数のコンテンツ変換(またはトランスフォーマ)330a~330mに提供され得る。図3の例では、m個の変換が示されており、各々がセグメントのうちのいずれか1つ(セグメント320jなど)に適用されている。同じセグメント、例えば320jが、変換のそれぞれに提供されるものとして示されているが、いくつかの実施形態において、個々の変換のそれぞれが必要とし得るように、異なるサイズおよび構成のセグメントを得るために異なるセグメント化手順が適用されてもよい(例えば、粗い高速検索変換330aは、第1のセグメントサイズのセグメントに適用するように構成されてもよいのに対し、詳細変換330bは第2の異なるサイズのセグメント(例えば数語の文字列)に適用するように構成されてもよい)。
前述したように、適用され得る変換の例は、入力データの固定サイズの(典型的には大きな)セグメントをベクトル(ベクトルは一様な次元であってもよいが、必ずしもそうでなければならないわけではない)に変換することに基づく高速検索(高速マッチ、または粗検索とも呼ばれる)変換である。結果として得られる変換ベクトルは、変換された入力セグメントに関連付けられた可能な質問および回答を表すことができる。結果として得られるベクトルは、一般に、(例えば、別の、より細粒度の変換に従って変換されたコンテンツを使用して)より徹底的に検索する必要がある可能な文書オブジェクト数を狭めるための出発点を提供する。例えば、高速検索変換結果と、高速検索変換コンテンツと適合する提示に変換クエリデータとのマッチに基づいて、変換コンテンツリポジトリ(例えば、DOMリポジトリ140)を検索すると、結果として得られる検索は、例えば、1000個の候補(または他の任意の数の候補)をもたらすことができる。より改良されたコンテンツマッチングが、高速検索変換コンテンツの検索によって特定された候補に対応する変換コンテンツオブジェクトに対して実行することができる。高速検索(粗い)変換は、BERTアプローチに従って実施されてもよい。図3の変換ユニット/モジュール330bによって実行されるものとして示された別の変換は、図3の例では、BERT(トランスフォーマによる双方向エンコーダ表現)アプローチにも基づく詳細変換である。
BERTアプローチの下では、クエリが受信されると、文書内の関連する系列は、回答を含み得る文書の一部(例えば、段落)を識別し、特定の回答を含む文書の部分の語のスパンを特定することによって、迅速に(おそらくは、例えば高速検索処理を使用して以前に識別されていてもよいオブジェクトのセットから)識別することができる。いくつかの例では、BERTアプローチの下では、質問および回答が結び付けられ(例えば、質問および回答を分離する適切なマーカを用いたWordPiece埋め込みを使用してトークン化され)、自己注意に基づくネットワークで一緒に処理される。ネットワークの出力は、回答の可能な開始位置ごとのスコアと、回答の可能な終了位置ごとのスコアとを示し、回答のスパンに対する総合スコアは、回答の対応する開始位置および終了位置の合計となる。すなわち、段落およびクエリの埋め込まれたベクトルが、多くの層を通じて混合され、その後、判断層およびセグメンタロジックによって、質問が段落によって回答可能であるかどうかを判定し、回答可能である場合、段落のどこに回答のスパンがあるかを正確に特定する効率的な方法を提供する自己注意法が使用される。
BERTベースのアプローチでは、ネットワークは、まず、入力から単語が省略され、ボキャブラリの単語に対して確率分布を提供する出力層によってネットワークにより予測されるマスク言語モデルタスクで訓練され得る。マスク言語モデルタスクにてネットワークを訓練すると、出力層は取り除かれ、質疑応答タスクの場合には、層が追加されて、開始、終了、および確信度の出力が得られ、ネットワークはターゲットドメインの教師付き訓練データで(例えば、Stanford Question Answering Dataset、すなわちSQuADを使用して)さらに訓練(例えば、ファインチューニング、転移学習)される。ターゲットドメインの質問応答のためにネットワークを訓練した後、さらなる訓練を用いて、ネットワークを新しいドメインに適応させてもよい。BERTに使用される別の訓練戦略は、隣接文クイズ(next-sentence prediction)であり、学習エンジンは、2つの入力セグメント(例えば、そのようなセグメントは、テキスト-ソースの隣接文であってもよい)のどちらがこの2つのセグメントの最初であるかを決定するように訓練される。モデルを訓練するとき、マスク言語訓練手順および隣接文訓練手順は両方とも、複合損失関数を最小化しようとする最適化手順を使用することによって組み合わされてもよい。代替的に、または加えて、(コンテキスト認識/理解を達成するための)他の訓練戦略を、BERTのための前述の訓練戦略のうちの1つと別個に、または組み合わせて使用してもよい。
BERTアプローチに基づく例示的実施形態において、Two-Leg BERTアプローチと呼ばれる、クエリの処理の多くが、クエリに対する回答が見つかり得る文書の部分(例えば、段落)の処理から分離されている実施態様が使用されてもよい。一般に、Two-Leg BERTアプローチでは、ニューラルネットワークアーキテクチャは2つの「脚」を有しており、1つの脚はクエリを処理し、もう1つの脚は段落を処理し、2つの脚の出力は、クエリの単語および段落の単語の埋め込み/エンコードの系列である。これらの系列は、質疑応答ネットワークに渡される。このアプローチを用いる特定の方法は、段落のBERT埋め込みシーケンスを事前に計算し、クエリが利用可能になったときに質疑応答の計算を完了することである。有利なことに、段落の処理の多くは、問い合わせが受信される前に実行されるため、クエリおよび各段落が順番に結合されて一緒に処理されるネットワークを使用する場合と比較して、クエリに対する応答は、より少ない遅延で計算され得る。段落は一般にクエリよりもはるかに長いため(例えば、6~10語に対して200~300語)、前処理が特に効果的である。連続的なクエリが同じ段落に対して適用される場合、段落脚の出力は各クエリに再利用してもよいため、全体の計算量は低減され得る。低遅延および低減された総計算量は、サーバべースの解決策においても有利であることができる。前述したように、本明細書に記載の実施態様では、ソース文書のBERTベースの処理は、典型的にはリポジトリ(図1のDOMリポジトリ140など)に格納される変換コンテンツを生成する。BERTベースの変換されるコンテンツが生成される基礎となる文書も同様に保持されてもよく、結果として得られる変換コンテンツに関連付けられる(同様に、他の変換を介して得られた対応する変換コンテンツに関連付けられる)。
いくつかの実施形態において、(例えば、高速の粗い変換のため、および/または詳細変換のために使用される)BERTベースのトランスフォーマは、エンコーダベースの構成に従って実装されてもよい。例えば、BERTベースのトランスフォーマの構造は、複数の積層されたエンコーダセルを含んでもよく、入力エンコーダセルは、入力系列(例えば、文)全体を受信して処理する。入力された文全体を処理することによって、BERTベースの実施態様は、個々の部分(例えば、入力シーケンス内の単語)間のコンテキスト関係を処理し、学習することができる。エンコーダ層は、1つまたは複数の自己注意ヘッド(例えば、入力データの異なる部分、例えば、文中の単語間の関係を決定するように構成されている)と、それに続くフィードフォワードネットワークにより実現され得る。エンコーダ実装における異なる層の出力は、正規化層に向けられ、後続の層によるさらなる処理のために結果として得られた出力を適切に構成してもよい。
いくつかの実施形態において、高速検索ベクトル変換(セグメントをコンパクトなサイズの数値ベクトルに変換する)は、テキストのトークン化されたバージョンに適用されてもよい(例えば、BERTプロセスを通じて達成される変換などのいくつかの変換が、中間(例えば、トークン化)コンテンツを生成するために既に実行されてもよく、その後に高速検索変換が適用される)ことに留意されたい。
変換モジュール(高速検索変換、BERTベースの変換、または他のタイプの変換)は、質問回答ペアに関連付けられた変換コンテンツを生成するように事前に訓練されたニューラルネットワークを介して実装されてもよい。他の変換の実装は、フィルタおよびアルゴリズム変換を使用して実現されてもよい。ニューラルネットワーク実装の訓練は、公に利用可能であってもよく、その文書ライブラリを管理するためにシステム100を使用する顧客によって内部で/私的に開発されたものであってもよい質問-回答グラウンドトゥルースの大規模訓練サンプルを用いて実現され得る。
ニューラルネットワークに基づく実装では、異なるタイプのニューラルネットワークアーキテクチャ、構成、および/または実装アプローチが使用されてもよい。使用され得る例示的ニューラルネットワークとしては、畳み込みニューラルネットワーク(CNN)、フィードフォワードニューラルネットワーク、リカレントニューラルネットワーク(RNN)などが挙げられる。フィードフォワードネットワークは、入力データの1つまたは複数の部分に接続しているノード(「ニューロン」または「学習要素」)の1つまたは複数の層を含む。フィードフォワードネットワークでは、入力とノード層との接続性は、入力データおよび中間データがネットワークの出力に向かって順方向に伝播するようになっている。フィードフォワードネットワークの構成/構造には、典型的には、フィードバックループまたはサイクルがない。畳み込み層は、学習した同じ変換をデータのサブセクションに適用することによって、ネットワークが効率的に特徴を学習することを可能にする。
ニューラルネットワーク(および本明細書に記載される様々な手順および操作を実現するための他のネットワーク構成および実装)は、処理機能、ならびに他の計算機能および制御機能を提供する1つまたは複数のマイクロプロセッサ、マイクロコントローラ、および/またはデジタル信号プロセッサを備えた計算プラットフォームを含む、任意の計算プラットフォーム上に実装することができる。計算プラットフォームは、1つまたは複数のCPU、1つまたは複数のグラフィックス処理ユニット(例えばCUDA Cプラットフォームに従ってプログラム可能なGPU、例えばNVIDIA GPU)を備えることができ、少なくとも部分的に、本明細書に記載のニューラルネットワーク、プロセス、および方法のためのプロセスおよび機能を実装するために特殊目的論理回路、例えばFPGA(フィールドプログラマブルゲートアレイ)、ASIC(特定用途向け集積回路)、DSPプロセッサ、加速処理ユニット(APU)、アプリケーションプロセッサ、カスタマイズされた専用回路などをさらに備えてもよい。ニューラルネットワークを実装するために使用される計算プラットフォームは、典型的には、データおよびデバイス内でプログラムされた機能を実行するためのソフトウェア命令を格納するためのメモリもさらに備える。一般的に言えば、コンピュータアクセス可能な記憶媒体としては、コンピュータに命令および/またはデータを提供するために、使用中にコンピュータによってアクセス可能な任意の非一時的記憶媒体が挙げられ得る。例えば、コンピュータアクセス可能な記憶媒体としては、磁気ディスクまたは光ディスクおよび半導体(ソリッドステート)メモリ、DRAM、SRAMなどの記憶媒体が挙げられ得る。
本明細書に記載されたニューラルネットワークの使用を通じて実施される様々な学習プロセスは、TensorFlow(ニューラルネットワークなどの機械学習アプリケーションに使用されるオープンソースのソフトウェアライブラリ)を使用して構成またはプログラムされてもよい。採用可能な他のプログラミングプラットフォームとしては、keras(オープンソースのニューラルネットワークライブラリ)ビルディングブロック、NumPy(アレイを処理するモジュールを実現するために有用なオープンソースのプログラミングライブラリ)ビルディングブロックなどが挙げられる。
次に図4を参照すると、文書処理(取り込み)のための手順400のフローチャートが示されている。手順400は、ソース文書を受信すること410と、ソース文書の構造および/またはコンテンツを表すコンテキスト情報を生成するためにソース文書に1つまたは複数の前処理を適用すること420とを含む。文書は、文書の顧客ライブラリから(例えば、顧客ネットワークの許可された管理者によって提供されるリンクまたは伝達に従って)、および/または他のデータソース(顧客の電子メールサーバ、チャットサーバ、特殊アプリケーションサーバなど)からアクセスされる、システム100のサーバインタフェース120などのインタフェースを介して遠隔の文書処理エージェントで受信されてもよい。
いくつかの実施形態において、1つまたは複数の前処理を適用することは、ソース文書を複数の文書セグメントにセグメント化することを含んでもよい。ソース文書をセグメント化することは、ソース文書の1つの部分とソース文書の1つまたは複数の他の部分とを意味的に関連付ける階層的規則に従って、ソースコンテンツを複数の文書セグメントにセグメント化することを含んでもよい。そのような実施形態において、階層的規則に従ってソース文書をセグメント化することは、特定の文書セグメントにおいて、特定の文書部分のコンテンツと、特定の文書部分の位置よりも先にソース文書に位置しており、特定の文書部分のコンテンツと関連付けられていると判定されているセクション見出しコンテンツとを組み合わせる(含める)ことを含んでもよい。
いくつかの例では、ソース文書に1つまたは複数の前処理を適用することは、マルチセルテーブルに整理された複数のサブ部分を含むソース文書の部分を識別することと、マルチセルテーブルを置換するために、各々がマルチセルテーブルに関連付けられたそれぞれのサブ部分コンテンツデータおよびコンテキスト情報を含む複数の置換部分を生成することとを含んでもよい。いくつかの他の例では、ソース文書に1つまたは複数の前処理を適用することは、ユーザに提示されるソース文書に関連する1つまたは複数の質問に応答してユーザによって提供される情報に基づいて、コンテキスト情報をソース文書の1つまたは複数の部分と関連付けることを含んでもよい。加えて、または代替的に、ソース文書に1つまたは複数の前処理を適用することは、質問および回答ペアの1つまたは複数のグランドトゥルースサンプルに基づいて、ソース文書の特定の部分に関連する質問および回答のコンテキスト情報を関連付けることを含んでもよい。
ソース文書に1つまたは複数の前処理を適用することは、例えば、ソース文書の1つまたは複数の他の部分の位置に対する特定の部分の位置、特定の部分の相対的なフォントサイズ、ソース文書の構造および編成、ソース文書の文書タイプ(PDFかWord文書か)などのうちの1つまたは複数に基づいてソース文書の特定の部分に対する相対的な重要度値を決定することも含んでもよい。
前述したように、いくつかの変形形態では、前処理は、セグメントにタグを付け、その後、クエリの提出時に、タグがクエリデータに関連付けられたタグ/記述子とマッチしない、または矛盾しているそれらの検索可能な文書セグメントを検索から排除するために使用することができる重要なコンテキスト情報(例えば、エンティティ、タスク、主題)の決定を含むことができる。すなわち、クエリデータは、(例えば、規則、ヒューリスティック、(学習エンジン実装に基づき得る)分類エンジンを使用して)タグまたは記述子の形態でコンテキストデータを導出するように処理され、それらのタグ/記述子は、マッチする/矛盾のないタグ/記述子を有する(例えば、変換された形態の)文書セグメントにマッチングされてもよい。したがって、そのような変形形態では、1つまたは複数の前処理を適用することは、ソース文書を複数の文書セグメントにセグメント化することを含んでもよい。これらの例では、手順400は、複数の文書セグメントのうちの少なくとも1つのセグメントについて、例えば、少なくとも1つのセグメントに関連付けられた少なくとも1つのエンティティ、少なくとも1つのセグメントに関連付けられた少なくとも1つのタスク、および/または少なくとも1つのセグメントに関連付けられた主題記述子のうちの1つまたは複数を含む少なくとも1つのセグメント記述子を決定することと、少なくとも1つのセグメントを少なくとも1つの記述子でタグ付けすることとをさらに含んでもよい。この手順は、ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問を表すクエリデータを受信することと、クエリデータに関連付けられた少なくとも1つのクエリ記述子を決定することであって、少なくとも1つのクエリ記述子が、例えば、クエリデータに関連付けられた少なくとも1つのエンティティ、クエリデータに関連付けられた少なくとも1つのタスク、および/またはクエリに関連付けられた主題記述子のうちの1つまたは複数を含む、ことと、クエリデータに対する応答を、セグメント記述子が少なくとも1つのクエリ記述子とマッチしている複数の文書セグメントのうちの1つまたは複数から検索することとをさらに含んでもよい。前述したように、クエリのタグ/記述子とマッチしないタグを有する検索可能なセグメントは、検索プロセスから除外/排除されてもよい。別の例では、本方法は、ローカルデバイスにおいて、ソース文書のコンテンツに関連するユーザからの質問を表すクエリデータを受信することと、ユーザに関連付けられたセンサデバイスによって得られたセンサデータに基づいてコンテキストを決定することと、決定されたコンテキストにマッチするセグメント記述子を有する複数の文書セグメントのうちの1つまたは複数からクエリデータに対する応答を検索することとをさらに含んでもよい。そのような実施形態において、コンテキスト情報を決定することは、ユーザが使用するカメラデバイスによって撮影された画像データから(例えば、画像に現れるオブジェクトを検出および識別するように構成された学習機械を使用して)識別可能なアイテムまたは場所を決定することを含んでもよく、クエリデータに対する応答を検索することは、画像データから識別可能な決定済みのアイテムまたは場所に少なくとも部分的に基づいて、複数の文書セグメントのうちの1つまたは複数からクエリデータに対する応答を検索することを含んでもよい。コンテキスト情報は、音声センサ、クエリを提出するユーザによって使用されるモバイルデバイスに備えられる無線通信センサ(例えば、無線トランシーバ、衛星測位受信機など)など、ユーザに関連付けられた他のセンサデバイスからも取得できることが理解されるであろう。前述したように、いくつかの例では、センサデバイスは、ストリーミング画像撮影センサを備えた拡張現実システムの一部であってもよい。受信したクエリに応答して実行される検索を容易にするためのコンテキスト情報の決定は、手順400に関してのみならず、本開示の他の手順および方法のいずれかに関しても実行できることに留意されたい。
図4を引き続き参照すると、手順400は、質問および回答用検索可能文書を生成するために、コンテキスト情報に基づいてソース文書を変換すること430をさらに含む。いくつかの例では、ソース文書を変換することは、1つまたは複数の変換に従って、複数の文書セグメントの各々を1つまたは複数の対応する変換セグメントに変換することを含んでもよい。1つまたは複数の変換は、例えば、複数の文書セグメントのコンテンツを表す複数の数値ベクトルを生成するための、BERTアプローチに基づき得る粗い線形化変換(コンパクトサイズ変換)(例えば、高速検索変換)、または複数の文書セグメントのコンテンツを表す高解像度で変換されるコンテンツ記録を生成するためのディテール検索変換(例えば、任意選択でTwo-Leg-BERT変換であってもよいBERTベースの変換)のうちの1つまたは複数を含んでもよい。粗い変換は、文書セグメントを、セグメントを表す単一の(固定サイズまたは可変サイズの)ベクトルに変換し得る一方、ディテール検索変換は、文書セグメントを表す複数のベクトルを生成し得る。したがって、1つまたは複数の変換は、例えば、複数の文書セグメントの粗いコンテンツを表す粗い数値ベクトルを生成する粗い線形化変換、または複数の文書セグメントのコンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含んでもよい。ソース文書を変換することは、特定の部分に対する決定済みの相対的重要度値と、ソース文書の他の部分に対する相対的重要度値とに少なくとも部分的に基づいてソース文書を変換することを含んでもよい。
キャッシュを用いた質疑応答
本明細書に記載されているように、検索時間を短縮し、精度を向上させ、DOMリポジトリ上の変換コンテンツの検索によって得られたであろう悪い回答をオーバーライドできるように、図1に模式的に描かれたキャッシュ135のような入力キャッシュが使用されてもよい。キャッシュ135などキャッシュは、頻繁に尋ねられる質問に対応する回答/コンテンツを格納するように構成されている。そのような回答/コンテンツは、以前に提出されたクエリに応答して、DOM文書から(および/またはその対応する生のソースコンテンツから)以前に取得されたコンテンツを含んでもよい。そのようなキャッシュされた回答に関連付けられたカウンタは、特定の質問および回答が送信および/または取得された頻度を追跡することができる。キャッシュは、ある基準(閾値)期間内に要求されなかったキャッシュ済みコンテンツを廃棄するようにさらに構成されてもよい。キャッシュはまた、ユーザ(文書のライブラリが文書処理、検索および応答生成エージェントによって管理されているエンティティ/組織の指定される主題の専門家など)によって提供される置換用コンテンツに基づいて、キャッシュまたはDOMリポジトリから得られたコンテンツを改良(キュレーション)することができる。
前述したように、いくつかの実施形態において、顧客ネットワーク(図1の顧客ネットワーク150aなど)は、既存の文書からのみならず、知識が動的に生成され渡され得る様々なアプリケーション(例えば、電子メールアプリケーション、メッセージングアプリケーション、チャットアプリケーション、様々な共同フレームワークなど)からも、取り込みおよび格納のための(すなわち、制度的知識/チーム固有の知識を維持するように)ソースデータを提供し得る。このような知識は、DOMリポジトリ140などのグローバルリポジトリに取り込まれ、保存されることが可能であり、取り込まれたオブジェクトは、ソースコンテンツが由来するアプリケーションを特定する情報(例えば、メタデータ)と関連付けられている。特定の状況下で、質問および回答キャッシュ構造またはデバイスに格納される、文書のライブラリ(図1のライブラリ160など)からのソースコンテンツに対応する質問および回答の記録/オブジェクトと同様に、いくつかの実施形態において、顧客ネットワークによってサポートされる他のアプリケーションから生成されるデータの一部は、提出されたクエリに応答して本格的な検索を開始しなくても済むように、キャッシュ構造に格納され得る。そのような実施形態において、キャッシュ(図1のキャッシュ135など)は、例えば、クエリが頻繁に尋ねられる質問であるため、またはクエリが、さもなければDOMリポジトリから取得されるものよりも正確であると特徴付けられた、もしくは指定された応答、または重要もしくは貴重な情報項目であると特徴付けられた応答と関連付けられているため、同様の質問(および/またはその対応する回答)が既にキャッシュに格納されているかどうかを最初に確認することが可能である。例えば、ユーザによって提起された(特定のアプリケーションの機能について問い合わせる)「どのように~」といった高い情報価値を有する質問を含むクエリは、特定のアプリケーションに関連付けられたキャッシュへの格納を保証すると判断され得る。これにより、別様に文書化されないかもしれないが、1人または複数の経験豊富なユーザ(または専門家)から得られる無形のノウハウに相当する流動的な制度的情報をコード化することができる。さらに、コード化された制度的知識を特定のキャッシュへと整理すること自体が、(すなわち、分類自体が保存されているメタデータまたはコンテキスト情報の一形態であるため)無形のノウハウの捕捉の一部を構成する。
顧客によって操作されるそれぞれのアプリケーションに固有の知識へのアクセスを容易にするために、ウィジェット(例えば、クエリプロセスまたはウィンドウの呼び出しを引き起こすために、例えばJavaプログラミング言語に基づいて実装される)が、ユーザがその特定のアプリケーションに係る質問(例えば、「ハウツー」に関する質問)を入力できる(これは、「アプリケーション内検索」と呼ばれる)クエリインタフェースを提供するように実装されてもよい。例えば、顧客ネットワーク750(顧客ネットワーク150aと同様であってもよい)が、m個のアプリケーション、例えば、電子メールサーバ、Slackアプリケーション、または将来的な使用のために保存するのに十分な価値があり得るユーザデータを(ユーザ間の対話を通じて、または任意のユーザと機械との対話を通じて)生成する任意の他のタイプのアプリケーションを実行する(図1に描かれたシステム100の一部を形成してもよい)、例示的システム700の概略図である図7を考慮する。システム700において、アプリケーション760bは、ウィジェットが選択されると、ユーザは、ウィンドウを開く(例えば、ドロップダウンウィンドウまたはメニューを表示させる)か、またはユーザがクエリを入力できるインタフェース内の入力エントリ領域を起動させることができる、ウィジェット(シェブロンボタン762bとして表される)を含むユーザインタフェースを有するものとして示される。あるいは、いくつかの実施形態において、クエリは、アプリケーションの共通インタフェースに提供できるが、アプリケーションが(DOMデポジトリ140などのデポジトリの、または文書処理エージェントのQ-Aキャッシュの1つもしくは複数の)Q-A検索を起動するトリガとして入力されたデータを認識するように前置きされてもよい。アプリケーション(例えば、Slack、または何らかの他の対話型または共同アプリケーションなど)が、別のユーザへの通信としてではなく、文書処理エージェント(または手順)に向けられたクエリとしてクエリを認識するように、クエリを前置きする方法の一例は、「ヘイ、プリオン」(または他の所定の表現)などの表現を入力することによるものである。図7において、アプリケーション760aは、ユーザがアプリケーションによってクエリを起動する要求と認識される入力を提出できるチャットインタフェース762aを備えた、Slackなどのチャットベースのアプリケーションとして描かれている。
クエリに対する応答を決定する効率および精度をさらに向上させるために、取り込まれるデータの別のソースを構成する各顧客ネットワークアプリケーション/プラットフォームは、そのアプリケーションから発生したデータを格納するための別個の専用キャッシュ構造と関連付けられてもよい(そのような各キャッシュについて、キャッシュ格納の基準は、キャッシュ135に関して説明したものと同様であってもよく、すなわち質問および取得された応答が求められる頻度に基づく、特定の応答が満足いくものとしてフラグを立てられたかどうかに基づく、専門家ユーザが特定の質問に対して応答をコンパイルしたかに基づく、など)。様々なアプリケーションが専用キャッシュに関連付けられ得るが、キャッシュは、特定のアプリケーションにサービスを提供するために論理的に分割された物理的場所で一元管理することができ、または単一のキャッシュ(単一の物理的場所または複数の分散場所であるかにかかわらない)が、顧客ネットワークによって使用される複数のアプリケーションのうちの1つまたは複数に(例えば、識別子、フラグ、または記録フィールドを使用して)関連付けることができることが理解されるであろう。したがって、顧客ネットワーク150aがSlackアプリケーション(または任意の他のチャットアプリケーション、情報共有アプリケーション、または共同アプリケーション)を使用する場合、そのアプリケーションを介して生成されたデータは、DOMリポジトリ140で処理および保存されてもよく、情報の少なくとも一部は、そのアプリケーションのための専用キャッシュ、またはSlackアプリケーションからの質問および回答の記録/オブジェクトを格納するために専用とされる(図1のキャッシュ135などのグローバルキャッシュの)キャッシュセクションに格納されている。
ユーザは、顧客ネットワーク750のユーザに利用可能な様々なアプリケーションのうちの1つまたは複数にアクセスし、使用することが許可され得る(アプリケーションのいくつかはローカルサーバ上で動作していてもよいが、アプリケーションのうちの1つまたは複数はクラウドベースのアプリケーションであってもよい)。生成された、または別様にアプリケーションa~mに提供されたデータの一部またはすべては、図1のエージェント110と構成および/または実装が類似していてもよい文書処理エージェント710に(例えば、ネットワーク管理者によって促され得るように)転送されてもよい。エージェント710は、顧客ネットワーク750とは異なる論理ブロックに実装されるものとして示されているが、前述したように、エージェント710の少なくとも一部(およびいくつかの例では、すべて)は、顧客ネットワーク750を構成するサーバに実装されてもよい。エージェント710は、顧客ネットワーク750の様々なノード間(およびエージェント710が集中システムである場合には、他の複数の顧客ネットワークのノードとの間)の通信を実現するための様々なインタフェース(図7には特に示されていないが、図1のインタフェース120、インタフェース125、インタフェース130およびインタフェース132と同様である)を備え、取り込みエンジンなどのモジュール(図7には示されていないが、図1の取り込みエンジン126と同様である)、クエリ処理モジュール(図7には特に示されていないが、図1のモジュール136と同様である)、およびキャッシュ730(図1のキャッシュ135と同様であってもよい)をさらに備える。図7に示されるように、キャッシュ730は、顧客ネットワーク750によって操作されるアプリケーション760a~760mの各々のための専用キャッシュデバイスを備えてもよい。それらのキャッシュは、単一の物理的な場所(例えば、エージェント710を実現しているサーバ)、またはアプリケーション760a~760mが動作しているサーバに配置され得る。前述したように、アプリケーション760a~760mとしては、顧客ネットワーク750のユーザのうちの1人または複数人によってアクセス可能な文書ライブラリ(ライブラリ760mと記され、図1のライブラリ160と同様であってもよい)、電子メールアプリケーション、チャットアプリケーションなどが挙げられ得る。様々なアプリケーション760a~760mを介して生成されたコンテンツが、(例えば、本明細書で記載の取り込みプロセスを通じて実施され得る質問および回答処理を通じて)格納を必要とすると判断される状況では、そのコンテンツの一部は、それぞれのアプリケーション760a~760mに関連付けられた質問および回答キャッシュに格納され得る。例えば、アプリケーション760aを通じて生成されたコンテンツが(例えば、アプリケーション760aのユーザによって生成された後続のクエリに応答して)頻繁に検索される場合、そのコンテンツに対する質問および回答のエントリ(例えば、質問および回答ペア)は、アプリケーション760aに対応する「キャッシュa」に格納され得る。その後のクエリ時に、クエリデータが、キャッシュ内の質問-回答エントリがクエリデータとマッチするかどうかを確認するために処理されてもよく、マッチする場合には、図1のDOMリポジトリ140などのデータリポジトリを検索する必要なく、格納されたキャッシュエントリに対する回答部分をクエリに対する応答として提供してもよい。
次に図5を参照すると、入力キャッシュを用いたコンテンツ管理および質疑応答のための例示的手順500のフローチャートが示されている。手順500は、ローカルデバイス(例えば、図1の文書処理エージェント110)において、遠隔デバイス(例えば、顧客ネットワーク150a内の端末ステーションのうちの1つ)から、ソース文書のソースコンテンツに関連する質問を表すクエリデータを受信すること510を含む。手順500は、ローカルデバイスで維持される質問回答キャッシュ(例えば、キャッシュ135)に格納された1つまたは複数の所定の質問が、1つまたは複数のマッチ基準に従ってクエリデータとマッチするかどうかを判定すること520をさらに含む。前述したように、キャッシュがQ-Aペア(すなわち、質問およびその関連付けられた回答)を格納した実施形態においてキャッシュに格納された過去の質問および関連付けられた回答へのクエリデータのマッチングは、質問とそれらの回答との組み合わせに基づくスコアを計算し、計算されたスコアをランク付けして1つまたは複数の可能性の高いマッチ候補を特定することによって実行される。
質問回答キャッシュ(「質問格納部」とも呼ばれる)の検索は、意味表現に基づき、質問類似度(言い換え)処理を使用してもよい。したがって、いくつかの例では、ローカルデバイスで維持される質問回答キャッシュに格納された1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従ってクエリデータとマッチするかどうかを判定することは、クエリデータの言語的意味を決定することと、クエリデータと、質問回答キャッシュ内の所定の質問の少なくとも一部の対応する意味との間の意味上の類似度レベルを決定することと、クエリデータと、1つまたは複数の所定の質問のうちの少なくとも1つのそれぞれの意味との間の意味上の類似度レベルが所定の類似度閾値を超えるとき、1つまたは複数の所定の質問のうちの少なくとも1つがクエリデータとマッチすると判定することとを含んでもよい。いくつかの実施形態において、クエリデータとキャッシュデータとのマッチングは、BERTベースのモデルと同様のプロセスに基づく厳密なOR演算によっても実施することができる。そのような実施形態において、クエリのベクトルは、頻繁に尋ねられる質問のベクトルと、以前に見つかった回答のベクトルとの組み合わせに対してマッチングされる。したがって、そのような実施形態において、新しいクエリは、キャッシュ(前述したように、エンティティの全コンテンツソースからのQ-Aペアを格納するグローバルキャッシュであっても、または異なるアプリケーションを使用して生成された個々のコンテンツソースに関連付けられた専用キャッシュであってもよい)内の既存の古い質問および/または既存の回答に対してマッチングされてもよい。マッチングプロセスは、質問、回答、および/または質問-回答ペアに対する現在のクエリデータの近接度または類似度を決定することを含む。新しい質問(現在のクエリに対応する)と既存の質問とのマッチングは、言い換え問題として扱うことができるのに対し、新しい質問と古い回答とのマッチングは、読解マッチング問題として考えることができる。このように、2つのマッチングステップ(新しい質問と既存の質問とのマッチング、および新しい質問と既存の回答とのマッチング)の組み合わせにより、パフォーマンスを向上させることができる。
図5を引き続き参照すると、手順500は、所定の質問のうちの少なくとも1つが遠隔デバイスから受信したクエリデータとマッチするという判定に応答して、質問回答キャッシュから、ソースコンテンツに関連する質問への回答に対応する、少なくとも1つの所定の質問に関連付けられた少なくとも1つの回答データ項目を取得すること530をさらに含む。いくつかの例では、質問回答キャッシュから少なくとも1つの回答データ項目を取得することは、遠隔デバイスからアクセス可能なソース文書の複製から、ソースコンテンツに関連する質問への回答に対応するソース文書の複製の少なくとも一部分にアクセスするためのポインタを少なくとも取得することを含んでもよい。質問回答キャッシュから少なくとも1つの回答データ項目を取得することは、例えば、ソースコンテンツの少なくとも一部、および/またはソースコンテンツの少なくとも一部分の要約のうちの1つまたは複数を取得することを含んでもよい。
ユーザに送られたクエリ結果に対する(そのユーザによって提出されたクエリに応答する)ユーザフィードバックを使用して、ユーザが彼/彼女が提出したクエリに対する良い回答であることを示したQ-Aペアをキャッシュしてもよい。したがって、手順500は、対応する回答を表すデータ項目の一部分が特定の質問に対する満足のいく回答を表しているという指示をユーザから受けたことに応答して、特定の質問および対応する回答のペアを表すデータ項目を質問回答キャッシュに格納することをさらに含んでもよい。
いくつかの例では、クエリに応答して送られた回答(例えば、回答がキャッシュ135またはDOMリポジトリ140を検索した結果として得られたかどうか)が不正確または不満足である(すなわち、「悪い」回答である)という判定が行われると、正しい回答が(例えば、顧客ネットワークのユーザによって)提供され、キャッシュに格納されて誤った回答をオーバーライドすることが可能である。したがって、手順500は、ローカルデバイスにおいて、特定の質問に応答して、ローカルデバイスにおいて決定された初期回答データを置換するための置換用回答データを取得することであって、初期回答は特定の質問に対する不満足な回答であるとユーザによって判定されている、ことと、特定の質問と置換用回答とのペアを表すデータ項目を質問回答キャッシュに格納することとをさらに含んでもよい。
いくつかの実施形態において、提出されたクエリと質問回答キャッシュ内の質問とがマッチしていない場合、メイン文書ストレージ(例えば、図1のDOMリポジトリ140)が検索されてもよい。したがって、手順500は、質問回答キャッシュに格納された所定の質問のいずれも、遠隔デバイスから受信したクエリデータとマッチしないという判定に応答して、ローカルデバイスにおける、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、クエリデータに従って複数の文書オブジェクトのうちの1つまたは複数を特定することをさらに含んでもよい。そのような実施形態において、ローカルデバイスにおけるクエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、手順は、変換コンテンツの少なくとも一部分に基づいて出力データを生成することをさらに含んでもよい。出力データは、遠隔デバイスからアクセス可能なソース文書の複製において、変換コンテンツの少なくとも一部分に対応するソース文書の複製の少なくとも一部分にアクセスするためのポインタを少なくとも含んでもよい。手順は、ローカルデバイスで1つまたは複数のソース文書を受信すること、1つまたは複数のソース文書を複数の文書セグメントにセグメント化すること、1つまたは複数の変換に従って複数の文書セグメントの各々を1つまたは複数のそれぞれの変換セグメントに変換すること、および変換セグメントを複数の文書オブジェクトに整理することを含む、複数の文書オブジェクトを文書ストレージに格納することをさらに含んでもよい。
本明細書に記載の実施態様は、(例えば、図1に示すクエリ処理モジュール136またはユーザクエリインタフェース130によって)フォローアップ質問推奨を生成し、フォローアップ質問のうちの少なくとも1つに応答する出力データを提供するようにさらに構成されている。例えば、手順500は、質問を表す受信クエリデータに基づいて、ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定することと、特定された1つまたは複数の追加の質問のうちの少なくとも1つに応答する追加の回答データを含む追加の出力データを生成することとをさらに含んでもよい。この機能は、例えば、最初に提出されたクエリに対する応答を受け取ったユーザが、その応答を有用であると考え、主題に関する追加情報を所望し得る状況で使用され得る。したがって、そのような追加情報は、最初に提出されたクエリにある意味で関連しているフォローアップ質問を提案することによって生成することができる。いくつかの実施形態において、追加の質問は、ユーザおよび管理者のフィードバックから、ならびに/またはユーザによって提出されたクエリに対して決定された応答に関連付けられた質問から生成されてもよい。したがって、手順は、例えば、ローカルデバイスおよび/もしくは遠隔デバイスの1人もしくは複数人のユーザから受信した入力データ、ならびに/またはソース文書に関連付けられた(ローカルデバイスに格納された)文書オブジェクトから決定されたクエリデータに対する特定された応答に関連付けられたメタデータのうちの1つまたは複数に基づいて、1つまたは複数の追加の質問を取得することをさらに含んでもよい。そのような実施形態において、手順は、1つまたは複数の追加の質問を表す1つまたは複数の追加の質問データ項目をクエリデータのリポジトリに格納することをさらに含んでもよい。
いくつかの実施形態において、本明細書に記載のシステムは、質問拡張手順の一部として追加の推奨される質問を生成してもよい。そのような実施形態において、特定の会社が配備するQAシステム(図1のシステム100など)に対して、頭字語、互いの同義語である複数の単語、または既存の単語の同義語となり得る新しい単語が現れてもよい。特定の会社のための管理ステーション152によって例えば管理される同義語ファイルを使用して、新しい質問(例えば、意味的に類似または同一である)を構築し、新しい質問(例えば、同義語は、オリジナルの質問の単語の一部を置換するために同義語ファイルから特定されている)を提出させることが可能である。新しい質問は、文書処理エージェントによって(例えば、本明細書に記載のように、図1のDOMリポジトリ140を検索することによって)処理され、(拡張された質問に対応する)新しいクエリに応答する出力が、問い合わせ中のユーザ(または、何らかの他のユーザ、例えば、管理者または生成された応答をキュレートする役割がある専門家ユーザ)に提供される。いくつかの実施形態において、拡張質問に対する応答は、関連付けられた信頼度レベルにより特定され、最高ランクの回答/応答(例えば、DOMリポジトリ140と連携して動作するクエリ処理モジュールによって決定される、n=1、2、3、...、または他の任意のゼロでない整数値を有する最高信頼度レベルの上位n個の応答)が、拡張された質問クエリへの出力として提示される。次いで、出力を受け取るユーザは、ユーザが最も適切である、または満足いくと考える応答(その応答は、最も高い計算済み信頼度レベルを有する応答であってもよいが、そうである必要はない)を選択することができる。いくつかの実施態様では、元のクエリの語句を置換する同義語は、1つの単語に対してであっても、複数の単語に対してであっても、または質問中のいくつかの単語の順序の変更に対応していてもよい。元のクエリにおける同義語の置換は、異なる同義語/置換規則に基づいて、元の提出された質問を修正して、拡張質問を作成してもよい。拡張質問の数は、この機能またはタスクに専用となる所望の計算リソースに従って調整または構成され得る、0、1、2、または任意の他の数であることができる。
したがって、拡張質問の生成に関連する実施他形態において、手順500は、クエリデータに対応する質問に基づいて、1つまたは複数の拡張質問を生成することをさらに含んでもよい。1つまたは複数の拡張質問を生成することは、例えば、a)クエリデータに対応する質問中の語句の順序を変更すること、および/またはb)置換用の語が質問中の1つもしくは複数の語に対して同義語もしくは等価な語であるとい判断に基づいて、同義語データ記録(例えば、同義語ファイル)から特定される置換用の語で質問中の1つもしくは複数の語を置換することのうちの1つまたは複数に基づいて、クエリデータ中の質問を変更することを含んでもよい。手順は、ローカルデバイスにおいて、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、1つまたは複数の拡張質問に従って複数の文書オブジェクトのうちの1つまたは複数を特定することをさらに含んでもよい。
本明細書に記載の実施態様は、受信したクエリが(質問ではなく)コマンドであるかどうかを判定するようにさらに構成されている。したがって、そのような実施態様では、手順500は、クエリデータが、ローカルデバイスにおいて、ソース文書に関して実行されたそれぞれのプロセスに関連付けられた所定のコマンドのうちの1つにマッチすると判定することと、クエリデータにマッチすると判定された所定のコマンドのうちの1つに関連付けられた所定のプロセスを実行することとをさらに含んでもよい。いくつかの例では、クエリデータが所定のコマンドのうちの1つにマッチすると判定することは、クエリデータが、ソース文書の少なくとも一部分の要約の生成を引き起こすように構成された要約コマンドにマッチすると判定することを含んでもよい。
データキュレーション
本明細書に記載の実施態様は、データをキュレーションするために使用されてもよい。特に、質問および回答(Q-A)データ項目(例えば、ユーザによって提出されたクエリに対する応答)が(例えば、メタデータに基づいて)選択され、Q-Aデータ項目のデータキュレーション(改良)のために複数人の専門家のうちの1人に送られる。専門家は、例えば、Q-Aデータ項目の主題を適切な専門家にマッチングさせることによって、利用可能な専門家に関する情報に基づいて、および/または他の基準に基づいて選択することができる。専門家は、項目を編集し、(制度化的知識/部族の知識を獲得するために)いくつかの追加データを追加し、改良された回答を(例えば、図1のキャッシュ135の一部であってもよい知識キャッシュに、またはリポジトリ140に格納するために)アーカイブに送り返す。データキュレーションフレームワークは、専門家ユーザからの参加を増加させる方法として報酬システムも組み込んでもよい(したがって、利用可能な専門家の名簿を拡大し、専門家を選択するためのより多くの選択肢および基準をシステムに提供する)。
Q-A項目をキュレーションのために専門家に送るかどうかを決定するために用いられるメタデータは、Q-A項目の形成およびその後のアクセスに関する履歴情報を表す履歴情報を含んでもよい。そのような履歴情報の例としては、Q-A項目がユーザによってアクセスされた頻度、回答が良いか悪いかを示すユーザからのフィードバック、質問への回答の応答性の信頼度レベル、Q-Aデータ項目がマイニングされたソース文書の著者などが挙げられる。応答性の信頼度レベル(履歴情報の種類の1つであり、これに基づいてデータ項目を改良のために専門家に送るかどうかの判断が行われる)は、取り込まれた文書に対して行われた検索結果のランキングに基づくことができ、例えば、信頼度レベルは、「ヒット」がいくつ発生したか、および特定された文書部分に関連付けられた質問がユーザによって提出された元のクエリにどれだけ近いかに依存する。Q-Aデータ項目の履歴情報をそれぞれの閾値と比較し、Q-Aデータ項目を選択された専門家に送るか否かを決定することができる。例えば、最高ランクの回答に関連付けられた信頼度レベルが、ある所定の閾値を下回る場合、クエリモジュールによって実装される規則ベースの機構は、クエリ(および、任意選択でDOMリポジトリ上でクエリを実行することによって特定される応答のうちの1つまたは複数)を、専門家(例えば、経験豊富なユーザ)によるさらなるレビューに向ける必要があると判断してもよい。検索結果を扱う規則またはプロセスの異なる例は、上位3つまたは他の任意の数の上位にランク付けされた回答に関連付けられた信頼度レベルを考慮し、それらすべての上位にランク付けされた回答がある所定の閾値(これは、上位にランク付けされた回答だけを評価するために使用された閾値と同じであっても、異なっていてもよい)を下回る場合、クエリを専門家に送る必要があると判定することを含んでもよい。検索結果を扱う規則のさらに別の例は、信頼度レベルとユーザによるフィードバックとの組み合わせを使用することであってもよい(例えば、ユーザに提供された応答の信頼度レベルが第3の所定の閾値未満であり、ユーザが提供された応答が不満足であると示す)。逆に、この例では、ユーザが応答を許容できるものであると示した場合、応答に対する信頼度レベルが第3の所定の閾値未満であったとしても、さらなるキュレーションは必要ないであろう。(例えば、履歴情報に基づく)検索結果を扱うための他の規則またはプロセスが使用されてもよい。規則およびプロセスは、応答を扱うために実装された何らかの順序または規則階層に従って実行されてもよい(例えば、複数の規則が、規則またはプロセスのうちの1つまたは複数が課す条件が満たされるまで、所定のクエリ応答の集合に対してある順序で適用されてもよい)。
専門家がキュレーション済み(改良済み)Q-Aデータ項目を返すと、キュレーション済みQ-Aデータ項目はキャッシュされる(例えば、キャッシュ135に格納される)。キュレーション済みデータ項目は、ユーザクエリインタフェース130を介して、またはシステム100の他のインタフェースのいずれかと同様に実装されてもよい専用の専門家インタフェース132を介してエージェント110に伝達されるが、選択された専門家(例えば、専門家インタフェース132へのリンク176を確立した図1のステーション154bにいる専門家)およびステーション152にいる管理者によってのみアクセスされ得る。
後続のクエリにおいて、クエリデータがキャッシュに格納されたキュレーション済みのQ-A項目の質問部分とマッチする場合、キュレーション済みのQ-A項目の回答部分を用いて、クエリを提出したユーザに送達可能な出力データを生成する。しかしながら、後続のクエリにおいて、クエリデータが、キャッシュ内のQ-Aデータ項目の質問部分のいずれともマッチしない場合(それらの項目が、本明細書に記載される他のプロセスのいくつかの結果としてキュレーションされたか、または格納されたかにかかわらない)、クエリデータを用いて、DOMリポジトリの通常の検索を実行し、クエリに対する可能な応答を取得する。前述したように、いくつかの実施形態において、キャッシュ項目に対するクエリデータのマッチングは、(例えば、BERTベースのプロセスに基づいて)クエリをキャッシュ内の質問、およびキャッシュ内の回答項目に対してマッチングさせるマッチング手順に基づいて実施されてもよい。
したがって、図6を参照すると、データキュレーションのための例示的手順600のフローチャートが示されている。手順600は、ローカルデバイス(例えば、図1の文書処理エージェント110)において、ソース文書のソースコンテンツに関連する質問および回答ペアを表す質問および回答データ項目を取得すること610を含む。質問および回答データ項目は、質問および回答データ項目の履歴情報およびアクセス情報を表す質問および回答履歴情報と関連付けられている。手順600は、質問および回答履歴情報に基づいて、質問および回答データ項目に対してデータ改良操作を実行するかどうかを決定すること620をさらに含む。
質問および回答履歴情報(Q-Aデータ項目に関連付けられたメタデータの一部であってもよい)は、例えば、関連付けられた質問および回答データ項目がアクセスされた頻度、質問および回答データ項目に関する1人もしくは複数人のユーザによるフィードバックに基づいて決定された満足度レベル、質問および回答データ項目の質問部分に対する回答部分の応答性の信頼度レベル、ならびに/または質問および回答データ項目に関連付けられた著者情報のうちの1つまたは複数を含んでもよい。
いくつかの例では、手順は、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを検索して得られた検索結果に従って、質問部分に対する回答部分の応答性の信頼度レベルを導出し、質問および回答データ項目の質問部分を表す質問データに従って複数の文書オブジェクトのうちの1つまたは複数を特定することをさらに含んでもよい。そのような例では、信頼度レベルは、DOMリポジトリの検索を使用して見つかったものに基づいている。したがって、信頼度レベルを導出することは、特定された1つまたは複数の複数の文書オブジェクトの数と、複数の文書オブジェクトのうちの特定された1つまたは複数に関連付けられたそれぞれの質問部分に対する質問データの近接度レベルとに基づいて、質問部分に対する回答部分の応答性の信頼度レベルを導出することを含んでもよい。いくつかの実施形態において、質問および回答履歴情報に基づいて、質問および回答データ項目への改良操作を行うかどうかを決定することは、例えば、i)関連付けられた質問および回答データ項目がアクセスされた頻度が頻度閾値を超えていること、ii)質問および回答データ項目に関する1人または複数人のユーザによるフィードバックに基づいて決定された満足度レベルが満足度閾値を下回っていること、iii)質問部分に対する回答部分の応答性の信頼度が応答性閾値を超えていること、および/またはiv)著者情報が1つもしくは複数の事前に特定した名前にマッチしていることのうちの1つまたは複数に基づいて質問および回答データ項目を改良するかどうかを決定することを含んでもよい。
引き続き図6を参照すると、手順600は、質問および回答データ項目が改良されるという判定に応答して、質問および回答データ項目に関連付けられた主題と、複数人のユーザにそれぞれ関連付けられた専門知識情報とに少なくとも部分的に関連する1つまたは複数のマッチ基準に従って複数人のユーザ(専門家)のうちの1人を選択すること630と、少なくとも質問および回答データ項目を複数人のユーザのうちの選択された1人に関連付けられた送信先デバイス(例えば図1の例ではデバイス154b)に伝達すること640とをさらに含む。
質問および回答データ項目は、例えば、質問および回答ペアへの回答に対応するソース文書の少なくとも一部分に遠隔デバイスからアクセスするためのポインタ、ソースコンテンツの少なくとも一部、ならびに/またはソースコンテンツの少なくとも一部分の要約にのうちの1つまたは複数を含んでもよい。いくつかの実施形態において、手順は、データ処理エージェントの質問回答キャッシュに改良済み(キュレーション済み)質問および回答ペアを格納することを含んでもよい。したがって、手順600は、ローカルデバイスにおいて、送信先デバイスに伝達された質問および回答データ項目から導出された改良済み質問および回答データ項目を受信することと、ローカルデバイスで維持される質問回答キャッシュにおいて改良済み質問および回答データ項目を格納することとをさらに含んでもよい。
キャッシュに格納されたキュレーション済み質問および回答ペアについて質問要素にマッチする後続のクエリでは、キュレーション済み質問および回答ペアに対するキャッシュに格納されたキュレーション済み回答要素が、問い合わせ中のユーザに返送される。したがって、手順は、ローカルデバイスにおいて、遠隔デバイス(例えば、一般ユーザがクエリを提出しているステーション154a)から、ソース文書のソースコンテンツに関連する後続の質問を表すクエリデータを受信することと、クエリデータが、1つまたは複数のマッチ基準に従って、質問回答キャッシュに格納されている、改良済み質問および回答データ項目の質問部分にマッチするかどうかを判定することとをさらに含んでもよい。改良済み質問および回答データ項目の質問部分が遠隔デバイスから受信したクエリデータとマッチするという判定に応答して、質問回答キャッシュから、改良済み質問および回答データ項目の少なくとも1つの回答部分を取得し、少なくとも1つの回答部分を遠隔デバイスに送信する。
一方、提出されたクエリデータがキャッシュ内のどの質問要素ともマッチしない場合、クエリは、文書リポジトリ(例えば、図1のシステム100のDOMリポジトリ140)に対する検索要求として提出される。したがって、そのような実施形態において、手順は、ローカルデバイスにおいて(すなわち、図1のエージェント110において)、クエリデータが、質問および回答キャッシュに格納された改良済み質問および回答データ項目の質問部分とマッチしないという判定に応じて、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、クエリデータに従って複数の文書オブジェクトのうちの1つまたは複数を特定することをさらに含んでもよい。ローカルデバイスにおいて、クエリデータと変換コンテンツの少なくとも一部分とのマッチの判定に応答して、変換コンテンツのマッチした少なくとも一部分に基づいて出力データを生成する。前述したように、DOMリポジトリ内のコンテンツは、ローカルデバイスで1つまたは複数のソース文書を受信すること、1つまたは複数のソース文書を複数の文書セグメントにセグメント化すること、1つまたは複数の変換に従って複数の文書セグメントの各々を1つまたは複数のそれぞれの変換セグメントに変換すること、および変換セグメントを複数の文書オブジェクトに整理することを含む、複数の文書オブジェクトを文書ストレージに格納することによって生成されてもよい。
さらなる実施形態
本明細書に記載の実施態様のさらなる実施形態は、以下の特徴のいくつかを含み得る。
文書処理エージェント110は、文書ライブラリの維持機能、クリーンアップ機能および管理機能を実装するように構成されてもよい。例えば、エージェント110は、矛盾した回答/文書および重複している回答/文書を検出するように構成されてもよい。使用中(例えば、管理者がログから疑わしい回答を確認している間)、システムは、管理者またはユーザのいずれかがエラー文書を削除できるように構成されてもよい。いくつかの例では、エージェント110は、異なる文書で文書ライブラリに格納された段落のペアが(例えば、そのコンテンツに関して)近すぎる、または同一である場合などに警告を管理者に発することができる検出機能を実装してもよい。
したがって、いくつかの実施形態において、1つまたは複数の文書ライブラリ由来の複数のソース文書に対して質問および回答処理を適用し、それぞれの文書記録結果を生成することと、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定することと、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の決定された類似度レベルに基づいて、1つまたは複数の文書ライブラリを管理することとを含む方法が提供される。
例示的な実施形態は、以下の特徴のうちの1つまたは複数を含む。1つまたは複数の文書ライブラリを管理することは、決定された類似度レベルに基づいて、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果とが互いに矛盾している、または互いに実質的に重複していると判定することを含んでもよい。管理することは、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果が互いに矛盾しているか、または実質的に重複しているという判定に応答して、文書記録結果のうちの第1の文書記録結果に対応する第1のソース文書、または文書記録結果のうちの第2の文書記録結果に対応する第2のソース文書のいずれかを1つまたは複数の文書ライブラリから削除することをさらに含んでもよい。
文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定することは、質問および回答処理から生成され、ユーザに提供される出力データに応答するユーザ入力に基づいて類似度レベルを決定することを含んでもよい。文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定することは、質問および回答オブジェクトを作成するための文書取り込み中に、例えば、複数のソース文書に適用される1つもしくは複数の仮想のライブラリ質問のうちの1つもしくは複数に基づいて、類似度レベルを決定すること、または文書記録結果のうちの第1の文書記録結果から質問を決定し、決定された質問を用いて文書記録結果のうちの第2の文書記録結果のコンテンツを評価することを含んでもよい。本方法は、文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルが類似度閾値を超えているという判定に応答して、文書記録結果のうちの第1の文書記録結果に対応する第1のソース文書と、文書記録結果のうちの第2の文書記録結果に対応する第2のソース文書との間の類似度を示す出力を提供することをさらに含んでもよい。
本明細書に記載の文書処理実施態様に含まれ得る特徴の別のセットは、対話型読込みに関するものである。この機能のセットについては、文書(例えば、記事)は、関連するコンテンツへのポインタとともにダウンロードされてもよい。関連するコンテンツは、取り込まれ、質疑応答のために拡張することができる(例えば、Wikiページの参照)。文書のライブラリは、関連コンテンツを質疑応答用動的拡張文書コンテンツ(対話型読込みとも呼ばれる)に含めるように強化することができる。
いくつかの実施態様において、(オリジナルを拡張するための)関連する補完的なコンテンツは、(a)オリジナル文書内のURLを使用して、それらのURLのコンテンツを知識ベースに読み出すこと、および/または(b)重要なエンティティのセットを見つけるためにソース文書に対して実行されるエンティティおよび共参照(CoRef)解析(オリジナルのコンテンツソース内の特定の名前または用語を参照し得る表現および用語を識別するための自然言語処理手順)を行い、オリジナル文書に関連している大規模リポジトリ(インターネット全体、データリポジトリを含むプライベートネットワークなど)内の文書を見つけるために、検索タスクを実行することによって取得され得る。このように、CoRef解析プロセスに基づいて特定された文書は、本明細書に記載されているQ-Aシステムのための知識ベースを拡張するために使用される。
さらに、取り込みエンジン(例えば、図1の取り込みエンジン126)の前処理機能に関して前述したように、コンテンツ拡張は、ソース文書の検索可能なセグメントのコンテンツに追加の価値ある情報を導入するために、文書および他の類似の文書におけるエンティティ、および他のコンテキスト記述子の(例えば、推論処理を通じた)発見をさらに含んでもよい。このコンテキスト情報の発見を用いて、検索機能の高速度化および精度向上に役立つことができる。拡張データ(コンテキストデータであれ実際のデータであれ)を決定することは、以下の操作を含んでもよい。
・各検索ユニット(例えば、200語ウィンドウ、段落、文書など)は、検索ユニットに関連付けられた固有のエンティティに関して、さらにあるタスクのメタデータエンティティ(例えば、人事、著者、組織など)に関しても分析される。
・各検索ユニットは、固有のエンティティおよびメタデータエンティティを特定する適切な記述子がタグ付けされる。
・検索中、これらの検索ユニットの多くを、手元のクエリに無関係であると特定することによって排除できる、様々なヒューリスティックを使用することができる。例えば、ある使用例では、ユーザの質問が、ある特定の主題に関係すると高い信頼度で(例えば、ユーザによる主題の明示的な特定、例えば、「財務の質問があります」と述べる質問故に、または規則もしくは分類エンジンを通じて主題が特定の主題に関係すると推論できるため)判定される場合、他の主題(人事、セキュリティなど)のすべての文書/文書オブジェクトは、さらなる検討から除外でき、それらの文書は、提出されたクエリに応じて検索する必要がない。
・そのようなフィルタリングの副産物は、高速マッチ検索およびディテールマッチ検索を高速度化することである。加えて、無関係なカテゴリの潜在的な回答単位により誤認識エラーが生じないため、結果としてこれは検索精度の向上に役立つ。
したがって、いくつかの実施形態においては、手順は、複数の文書セグメントのうちの少なくとも1つのセグメントについて、例えば、少なくとも1つのセグメントに関連付けられた少なくとも1つのエンティティ、少なくとも1つのセグメントに関連付けられた少なくとも1つのタスク、および/または少なくとも1つのセグメントに関連付けられた主題記述子のうちの1つまたは複数を含む少なくとも1つのセグメント記述子を識別することと、少なくとも1つのセグメントを少なくとも1つの記述子でタグ付けすることとをさらに含んでもよい。そのような例では、手順は、ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問を表すクエリデータを受信することと、クエリデータに関連付けられた少なくとも1つのクエリ記述子を決定することであって、少なくとも1つの記述子が、例えば、クエリデータに関連付けられた少なくとも1つのエンティティ、クエリデータに関連付けられた少なくとも1つのタスク、および/またはクエリに関連付けられた主題記述子のうちの1つまたは複数を含む、ことと、クエリデータに対する応答を、セグメント記述子が少なくとも1つのクエリ記述子とマッチしている複数の文書セグメントのうちの1つまたは複数から検索することとをさらに含んでもよい。
特定の実施態様は、関連文書の分析を実行し、関連文書からの結果を使用して、システム100によって管理される主な文書に対する適切な補足検索を行うことができる。エージェント110は、例えば、関連文書のコンテンツが膨大すぎて完全に見ることができず、ユーザが関連文書に関してどのような質問をすればよいか分からない場合に、アクセスされた関連文書を要約するようにさらに構成されてもよい。そのような状況下では、関連文書の要約を用いて、どのような情報を尋ねることができるかを示唆することができる。この要約は、関連文書のコンテンツから質問-回答ペアを自動的に特定するために使用することもできる。
したがって、いくつかの実施形態において、ローカルデバイスでソース文書を受信することと、受信ソース文書に関連付けられた拡張データを取得することと、取得した拡張データと組み合わせたソース文書を変換して質問および回答用検索可能文書を生成することとを含む方法が提供される。
本方法の実施形態は、以下の特徴のうちの1つまたは複数を含んでもよい。拡張データを取得することは、例えば、ソース文書に含まれるリンクに基づいて拡張データを取得すること、および/または共参照解析を実行して、ソース文書において特定される1つもしくは複数の名称もしくは表現を決定し、情報リポジトリを検索して、ソース文書において特定される決定済みの1つもしくは複数の名称もしくは表現に関連付けられた追加の情報を取得することのうちの1つまたは複数を含んでもよい。
取得された拡張データと組み合わされたソース文書を変換して、質問および回答用検索可能文書を生成することは、取得された拡張データと組み合わされたソース文書を複数の文書セグメントにセグメント化することを含んでもよい。
取得された拡張データと組み合わされたソース文書を変換することは、1つまたは複数の変換に従って、複数の文書セグメントの各々を1つまたは複数の対応する変換セグメントに変換することをさらに含んでもよい。取得された拡張データと組み合わされたソース文書を変換することは、例えば、取得された拡張データと組み合わされたソース文書のコンテンツを表す複数のベクトルを生成する(例えば、高速マッチングまたは高速検索手順に従う)粗い線形化変換、および/または取得された拡張データと組み合わされたソース文書のコンテンツを表す高解像度で変換コンテンツ記録(そこからソースコンテンツ内の回答の位置の狭い範囲を決定できる)を生成する詳細変換のうちの1つまたは複数に従って、取得されたデータと組み合わされたソース文書を変換することを含んでもよい。
本方法は、変換済み質問および回答用検索可能文書に基づいて、拡張データと組み合わされたソース文書の要約を導出することをさらに含んでもよい。要約を導出することは、要約記録のリポジトリから、変換済み質問および回答用検索可能文書の、所定の要約記録に対する類似度が類似度閾値を超えている少なくとも一部分を特定することを含んでもよい。
さらに前述したように、本明細書に記載の文書処理実施態様は、ベクトル検索の変形形態を実施する(例えば、実用的/製品化可能なトランスフォーマに基づく文書Q-Aおよび検索を実施する)様々な人工知能(AI)技術を備えてもよい。本明細書に記載のトランスフォーマに基づくアプローチは、高精度(エラスティックサーチ(elastic search)よりも優れている)を提供し、自動Q-Aコーパス生成(訓練用)および「MI」訓練に使用することができる。そのような技術の計算努力により、線形スケーリングよりも小さい非線形スケーリング(文書ライブラリのサイズに伴う非線形成長)を達成できる。トランスフォーマ技術は、より高い精度で大規模な文書に対する必要な訓練材料を低減するために、強化されたカスタマイズ性能をさらに提供する。実施態様はまた、文書セクションベクトルの事前計算、Q-Aモデルのクライアント固有の適応、階層的高速マッチング、スライディングウィンドウ検索、トランスフォーマの限定されたコンテキストが限定し過ぎないようにリテラルワード(例えば、主題見出し)よりも多くを含むコンテキスト拡張などを含んでもよい。
いくつかの実施形態において、各々がデータを処理するために使用される質問および回答モデルのうちの対応するものに関連付けられている複数のエンティティのうちの、第1のエンティティに関連付けられた1つまたは複数のソース文書を受信することと、第1のエンティティに関連付けられた1つまたは複数のソース文書を、それぞれの関連付けられた第1の質問および回答モデルに従って変換し、1つまたは複数の質問および回答用検索可能文書を生成することとを含む方法が提供される。
本方法の実施形態は、以下の特徴のうちの1つまたは複数を含んでもよい。第1のエンティティに関連付けられた1つまたは複数のソース文書を変換することは、例えば、1つもしくは複数のソース文書について複数の文書セグメントのコンテンツを表す複数の数値ベクトルを生成する線形化変換、および/または複数の文書セグメントのコンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数に従って1つまたは複数のソース文書を変換することを含んでもよい。本方法は、詳細変換コンテンツ記録のうちの1つまたは複数に線形化変換を適用して、詳細変換コンテンツのうちの1つまたは複数に対応するコンテンツに対する結果として得られる高解像度(fine-resolution)数値ベクトルを導出することをさらに含んでもよい。いくつかの例では、詳細変換は、BERT(トランスフォーマによる双方向エンコーダ表現)処理に基づいて1つまたは複数の文書セグメントに適用される変換を含んでもよい。本方法は、1つまたは複数のソース文書に関連する質問を表すクエリデータを受信することと、1つまたは複数のソース文書のセグメントへの線形化変換の適用により生成された複数の数値ベクトルに適用される高速検索を実行して、クエリデータに応答する複数のマッチ候補を特定することとをさらに含んでもよい。本方法は、詳細変換コンテンツ記録(オブジェクト)に従って変換されたコンテンツの部分に対するクエリデータのマッチを識別するためであって、当該部分は高速検索に従って特定された複数のマッチ候補に従って選択される、より詳細な検索を行うことをさらに含んでもよい。
いくつかの例では、第1のエンティティに関連付けられた1つまたは複数のソース文書を変換することは、第1の質問および回答モデルに従って訓練されたニューラルネットワークを使用して1つまたは複数のソース文書を変換することを含んでもよい。本方法は、1つまたは複数のソース文書に関連する質問を表すクエリデータを受信することと、例えば、詳細変換コンテンツ記録に従って変換されたコンテンツの順序付けられた部分に対するクエリデータのマッチを識別するためのスライディングウィンドウ検索を実行することとをさらに含んでもよい。
いくつかの実施形態において、第1のエンティティに関連付けられた1つまたは複数のソース文書を変換することは、1つまたは複数のソース文書からのソース文書を複数の文書セグメントにセグメント化することを含む、1つまたは複数の前処理を1つまたは複数のソース文書に適用することをさらに含んでもよい。ソース文書をセグメント化することは、ソース文書の構造および/またはコンテンツを表すコンテキスト情報を各セグメントに追加することを含んでもよい。そのような実施形態において、1つまたは複数のソース文書を変換することは、各セグメントに追加されたコンテキスト情報に部分的に基づいて、セグメント化されたソース文書を変換することを含んでもよい。
本方法は、(1つまたは複数のソース文書から)ソース文書のコンテンツを拡張することをさらに含んでもよく、拡張することは、例えば、ソース文書に含まれるリンクに基づいて拡張データを取得すること、および/または共参照解析を実行して、ソース文書において特定される1つもしくは複数の名称もしくは表現を決定し、ローカルデバイスからアクセス可能な情報リポジトリを検索して、ソース文書において特定される決定済みの1つもしくは複数の名称もしくは表現に関連付けられた追加の情報を取得することのうちの1つまたは複数を含む。1つまたは複数のソース文書を変換することは、拡張コンテンツを含むソース文書を変換することを含んでもよい。1つまたは複数のソース文書を変換することは、事前計算された文書セグメントベクトルを少なくとも部分的に用いて、1つまたは複数のソース文書を変換することを含んでもよい。
図1~図7に関連して記載された様々な実施態様(システム、デバイスおよび方法)は、本明細書に記載の実施態様において処理および検索される特定の文書タイプに従って、必要に応じて調整されてもよいことに留意されたい。例えば、PDF文書を処理するように構成された実施態様(使用される基準、使用される閾値レベルなどを含む)の変形形態は、Word MSまたはテキスト文書を処理するために必要であり得る。
別途定義されない限り、本明細書で使用されるすべての技術用語および科学用語は、一般的に、または従来から理解されているのと同じ意味を有する。本明細書で使用される場合、冠詞「a」および「an」は、冠詞の文法的対象の1つまたは複数(すなわち、少なくとも1つ)を意味する。例として、「要素(an element)」は、1つの要素または複数の要素を意味する。量、期間などの測定可能な値に言及するときに本明細書で使用される「約」および/または「およそ」は、指定した値の±20%または±10%、±5%、または+0.1%の変動が本明細書に記載されるシステム、デバイス、回路、方法および他の実施態様の文脈において適切であるような、そのような変動を包含している。量、期間、物理的属性(例えば周波数)などの測定可能な値に言及するときに本明細書で使用される「実質的に」も、指定した値の±20%または±10%、±5%、または+0.1%の変動が本明細書に記載されるシステム、デバイス、回路、方法および他の実施態様の文脈において適切であるような、そのような変動を包含している。
請求項を含め本明細書で使用される場合、「~のうちの少なくとも1つ」または「~のうちの1つまたは複数」が後置きされた項目のリストで使用される「または」は、例えば、「A、B、またはCのうちの少なくとも1つ」というリストが、AもしくはBもしくはCもしくはABもしくはACもしくはBCもしくはABC(すなわち、AおよびBおよびC)、または複数の特徴を有する組み合わせ(例えば、AA、AAB、ABBCなど)を意味するような離接的リストを示す。また、本明細書で使用する場合、特に明記しない限り、機能または動作がある項目または条件「に基づく」という記載は、その機能または動作が記載された項目または条件に基づいており、記載された項目または条件に加え、1つまたは複数の項目および/または条件に基づいていてもよいということを意味する。
特定の実施形態が本明細書に詳細に開示されているが、これは例示のみを目的として行われたものであり、添付の請求項の範囲によって定義される本発明の範囲を限定することを意図するものではない。本明細書に記載の開示された実施形態の特徴のいずれかを、本発明の範囲内で互いに組み合わせたり、再整理したりするなどして、より多くの実施形態を作り出すことができる。いくつかの他の態様、利点および修正は、以下に提示される請求項の範囲内であると考えられる。提示された請求項は、本明細書に開示された実施形態および特徴の少なくとも一部を表すものである。他の特許請求されていない実施形態および特徴も企図される。

Claims (136)

  1. ローカルデバイスにおいて、複数のソース文書のリポジトリのソース文書の、ローカルデバイスからアクセス可能な変換コンテンツと関連付けられているソースコンテンツに関連する質問を表すクエリデータを遠隔デバイスから受信することと、
    前記ローカルデバイスにおける、前記クエリデータと前記変換コンテンツの少なくとも一部分とのマッチの判定に応答して、前記遠隔デバイスからアクセス可能な前記ソース文書において、前記変換コンテンツの前記少なくとも一部分に対応する前記ソース文書の少なくとも一部分にアクセスするためのポインタ、または前記ソース文書の前記少なくとも一部分の複製のうちの1つまたは複数を含む出力データを生成することと
    を含む、方法。
  2. 前記ソース文書の前記少なくとも一部分にアクセスするための前記ポインタは、前記複数のソース文書のリポジトリ内の前記ソース文書を識別する文書識別子、前記複数のソース文書のリポジトリ内の前記ソース文書のネットワークアドレス、前記ソース文書内の前記ソース文書の前記少なくとも一部分の開始位置および終了位置、またはワードスパン(word span)のうちの1つまたは複数を含む、請求項1に記載の方法。
  3. 前記変換コンテンツの前記少なくとも一部分は、文書オブジェクトモデル(DOM)データ項目のリポジトリに格納され、前記変換コンテンツの前記少なくとも一部分に対応するDOMデータ項目は、前記ソース文書の前記少なくとも一部分にアクセスするための前記ポインタと、前記ソースコンテンツの前記少なくとも一部分を表す少なくとも1つの変換された要素、前記ソースコンテンツの前記少なくとも一部分、または前記ソースコンテンツの前記少なくとも一部分に関連付けられたコンテキスト情報のうちの1つまたは複数とを含む、請求項1に記載の方法。
  4. 前記ソース文書の前記少なくとも一部分に関連付けられた前記コンテキスト情報は、前記ソース文書の前記ソースコンテンツに関連する前記質問に対する前記出力データの応答性レベルを示す1人または複数人のユーザからのフィードバックデータを含む、請求項3に記載の方法。
  5. 前記ローカルデバイスにおいて前記ソース文書の複製を受信することと、
    前記ソース文書の前記複製を複数の文書セグメントにセグメント化することと、
    前記複数の文書セグメントの各々を、1つまたは複数の変換に従って1つまたは複数のそれぞれの変換セグメントに変換することと
    をさらに含む、請求項1に記載の方法。
  6. 前記複数のソース文書の前記リポジトリにおける前記ソース文書の位置を特定する情報を管理者から受信することをさらに含む、請求項5に記載の方法。
  7. 前記1つまたは複数の変換は、前記複数の文書セグメントの粗いコンテンツを表す粗い数値ベクトルを生成する粗い線形化変換、または前記複数の文書セグメントの前記コンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含む、請求項5に記載の方法。
  8. 前記粗い変換および前記詳細変換のうちの少なくとも1つは、BERT(トランスフォーマによる双方向エンコーダ表現)処理に基づいて1つまたは複数の文書セグメントに適用される変換を含む、請求項7に記載の方法。
  9. 前記クエリデータを、前記変換ソースコンテンツと適合する変換クエリデータに変換することをさらに含む、請求項7に記載の方法。
  10. 第1の基準に従って、前記変換ソースコンテンツ内の、それぞれの粗い数値ベクトルが前記変換クエリデータとマッチしている1つまたは複数の候補部分を特定することをさらに含む、請求項9に記載の方法。
  11. それぞれの数値ベクトルに基づいて特定された前記1つまたは複数の候補部分に対応する1つまたは複数の詳細変換コンテンツ記録から、第2の基準に従って、前記クエリデータの詳細変換データにマッチする少なくとも1つの詳細変換コンテンツ記録を決定することをさらに含む、請求項10に記載の方法。
  12. 第2の基準に従って、前記変換ソースコンテンツ内の、それぞれの詳細変換コンテンツ記録が前記変換クエリデータとマッチしている1つまたは複数の候補部分を特定することをさらに含む、請求項9に記載の方法。
  13. 前記ソースコンテンツを前記複数の文書セグメントにセグメント化することは、
    1つまたは複数の前処理規則に従って前記ソースコンテンツを前記複数の文書セグメントにセグメント化することを含む、請求項5に記載の方法。
  14. 前記ソースコンテンツをセグメント化することは、前記ソースコンテンツの1つの部分と前記ソースコンテンツの1つまたは複数の他の部分とを意味的に関連付ける階層的規則に従って、前記ソースコンテンツを前記複数の文書セグメントにセグメント化することを含む、請求項13に記載の方法。
  15. 前記受信ソース文書に関連付けられた拡張データを取得することと、
    前記ソース文書と前記拡張データとの組み合わせを前記複数の文書セグメントにセグメント化することと
    をさらに含む、請求項5に記載の方法。
  16. 前記拡張データを取得することは、
    前記ソース文書に含まれるリンクに基づいて前記拡張データを取得すること、または
    共参照解析を実行して、前記ソース文書において特定される1つもしくは複数の名称もしくは表現を決定し、前記ローカルデバイスからアクセス可能な情報リポジトリを検索して、前記ソース文書において特定される前記決定済みの1つもしくは複数の名称もしくは表現に関連付けられた追加の情報を取得すること
    のうちの1つまたは複数を含む、請求項15に記載の方法。
  17. 前記質問を表す前記受信クエリデータに基づいて、前記ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定し、前記変換コンテンツに適用することをさらに含む、請求項1に記載の方法。
  18. 前記受信クエリデータが所定の質問の1つにマッチするかどうかを判定することと、
    前記受信クエリデータが前記所定の質問の1つにマッチすると判定したことに応答して、前記所定の質問のうち前記マッチした質問に関連付けられた1つまたは複数の回答データ記録に基づいて前記出力データを生成することと
    をさらに含む、請求項1に記載の方法。
  19. 前記ローカルデバイスは、前記遠隔デバイスが位置し、セカンドパーティーによって運営される第2のネットワークと異なる、ファーストパーティーによって運営される第1のネットワーク、または前記遠隔デバイスも位置する第3のネットワークのうちの1つに位置する、請求項1に記載の方法。
  20. 前記遠隔デバイスにおいて、前記ソース文書の前記複製を複数の文書セグメントにセグメント化することと、
    前記遠隔デバイスにおいて、前記複数の文書セグメントの各々を、1つまたは複数の変換に従って1つまたは複数のそれぞれの変換セグメントに変換することと、
    前記ローカルデバイスに格納するために前記1つまたは複数のそれぞれの変換セグメントを前記ローカルデバイスに伝達することと
    をさらに含む、請求項1に記載の方法。
  21. 遠隔デバイスから、複数のソース文書のリポジトリのソース文書の、システムからアクセス可能な変換コンテンツと関連付けられているソースコンテンツに関連する質問を表すクエリデータを受信するように構成されている、1つまたは複数の通信インタフェースと、
    前記クエリデータと前記変換コンテンツの少なくとも一部分とのマッチの判定に応答して、前記遠隔デバイスからアクセス可能な前記ソース文書において、前記変換コンテンツの前記少なくとも一部分に対応する前記ソース文書の少なくとも一部分にアクセスするためのポインタ、または前記ソース文書の前記少なくとも一部分の複製のうちの1つまたは複数を含む出力データを生成するように構成されているクエリエンジンと
    を備える、システム。
  22. 1つまたは複数のインタフェースを介して受信された前記ソース文書の前記複製を複数の文書セグメントにセグメント化し、1つまたは複数の変換に従って前記複数の文書セグメントの各々を1つまたは複数のそれぞれの変換セグメントに変換するように構成されている取り込みエンジンをさらに備える、請求項21に記載のシステム。
  23. 前記1つまたは複数の変換は、前記複数の文書セグメントの粗いコンテンツを表す粗い数値ベクトルを生成する粗い線形化変換、または前記複数の文書セグメントの前記コンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含む、請求項22に記載のシステム。
  24. 前記クエリデータを、前記変換ソースコンテンツと適合する変換クエリデータに変換し、
    第1の基準に従って、前記変換ソースコンテンツ内の、それぞれの粗い数値ベクトルが前記変換クエリデータとマッチしている1つまたは複数の候補部分を特定し、
    それぞれの数値ベクトルに基づいて特定された前記1つまたは複数の候補部分に対応する1つまたは複数の詳細変換コンテンツ記録から、第2の基準に従って、前記クエリデータの詳細変換データにマッチする少なくとも1つの詳細変換コンテンツ記録を決定するように構成されているクエリ処理モジュールをさらに備えている、請求項22に記載のシステム。
  25. 前記ソースコンテンツをセグメント化するように構成されている前記取り込みエンジンは、
    1つまたは複数の前処理規則に従って前記ソースコンテンツを前記複数の文書セグメントにセグメント化するように構成されており、前記1つまたは複数の前処理規則は、前記ソースコンテンツの1つの部分と前記ソースコンテンツの1つまたは複数の他の部分とを意味的に関連付ける1つまたは複数の階層的規則を含む、請求項22に記載のシステム。
  26. 前記取り込みエンジンは、前記受信ソース文書に関連付けられた拡張データを取得し、前記ソース文書と前記拡張データとの組み合わせを前記複数の文書セグメントにセグメント化するようにさらに構成されている、請求項22に記載のシステム。
  27. 前記クエリエンジンは、前記質問を表す前記受信クエリデータに基づいて、前記ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定し、前記変換コンテンツに適用するようにさらに構成されている、請求項21に記載のシステム。
  28. 前記クエリエンジンは、
    前記受信クエリデータが所定の質問の1つにマッチするかどうかを判定し、
    前記受信クエリデータが前記所定の質問の1つにマッチすると判定したことに応答して、前記所定の質問のうち前記マッチした質問に関連付けられた1つまたは複数の回答データ記録に基づいて前記出力データを生成するよう
    にさらに構成されている、請求項21に記載のシステム。
  29. 前記遠隔デバイスをさらに備えており、前記システムは、遠隔デバイスが位置し、セカンドパーティーによって運営される第2のネットワークと異なる、ファーストパーティーによって運営される第1のネットワーク、または前記遠隔デバイスも位置する第3のネットワークのうちの1つに位置する、請求項21に記載のシステム。
  30. ローカルデバイスにおいて、複数のソース文書のリポジトリのソース文書の、ローカルデバイスからアクセス可能な変換コンテンツと関連付けられているソースコンテンツに関連する質問を表すクエリデータを遠隔デバイスから受信し、
    前記ローカルデバイスにおける、前記クエリデータと前記変換コンテンツの少なくとも一部分とのマッチの判定に応答して、前記遠隔デバイスからアクセス可能な前記ソース文書において、前記変換コンテンツの前記少なくとも一部分に対応する前記ソース文書の少なくとも一部分にアクセスするためのポインタ、または前記ソース文書の前記少なくとも一部分の複製のうちの1つまたは複数を含む出力データを生成する
    ように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた非一時的コンピュータ可読媒体。
  31. ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問を表すクエリデータを遠隔デバイスから受信することと、
    前記ローカルデバイスで維持される質問回答キャッシュに格納された1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従って前記クエリデータとマッチするかどうかを判定することと、
    前記所定の質問のうちの少なくとも1つが前記遠隔デバイスから受信した前記クエリデータとマッチするという判定に応答して、前記質問回答キャッシュから、前記ソースコンテンツに関連する前記質問への回答に対応する、少なくとも1つの所定の質問に関連付けられた少なくとも1つの回答データ項目を取得することと
    を含む、方法。
  32. 前記質問回答キャッシュから少なくとも1つの回答データ項目を取得することは、
    前記遠隔デバイスからアクセス可能な前記ソース文書の複製から、前記ソースコンテンツに関連する前記質問への前記回答に対応する前記ソース文書の前記複製の少なくとも一部分にアクセスするためのポインタを少なくとも取得することを含む、請求項31に記載の方法。
  33. 前記質問回答キャッシュから少なくとも1つの回答データ項目を取得することは、
    前記ソースコンテンツの少なくとも一部、または前記ソースコンテンツの少なくとも一部分の要約のうちの1つまたは複数を取得することを含む、請求項31に記載の方法。
  34. 対応する回答を表すデータ項目の一部が特定の質問に対する満足行く応答を表しているという指示をユーザから受信したことに応答して、前記特定の質問および前記対応する回答のペアを表すデータ項目を前記質問回答キャッシュに格納することをさらに含む、請求項31に記載の方法。
  35. 前記ローカルデバイスにおいて、特定の質問に応答して、前記ローカルデバイスにおいて決定された初期回答データを置換するための置換用回答データを取得することであって、前記初期回答は前記特定の質問に対する不満足な応答であるとユーザによって判定されている、ことと、
    前記特定の質問および前記置換用回答のペアを表すデータ項目を前記質問回答キャッシュに格納することと
    をさらに含む、請求項31に記載の方法。
  36. 前記質問回答キャッシュに格納された前記所定の質問のいずれも、前記遠隔デバイスから受信した前記クエリデータとマッチしないという判定に応答して、前記ローカルデバイスにおいて、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、前記クエリデータに従って前記複数の文書オブジェクトのうちの1つまたは複数を特定することと、
    前記ローカルデバイスにおいて、前記クエリデータと前記変換コンテンツの少なくとも一部分とのマッチの判定に応答して、前記変換コンテンツの前記少なくとも一部分に基づいて出力データを生成することと
    をさらに含む、請求項31に記載の方法。
  37. 前記出力データは、前記遠隔デバイスからアクセス可能な前記ソース文書の複製において、前記変換コンテンツの前記少なくとも一部分に対応する前記ソース文書の前記複製の少なくとも一部分にアクセスするためのポインタを少なくとも含む、請求項36に記載の方法。
  38. 前記ローカルデバイスで1つまたは複数のソース文書を受信すること、
    前記1つまたは複数のソース文書を複数の文書セグメントにセグメント化すること、
    1つまたは複数の変換に従って前記複数の文書セグメントの各々を1つまたは複数のそれぞれの変換セグメントに変換すること、および
    前記変換セグメントを前記複数の文書オブジェクトに整理すること
    を含む、複数の文書オブジェクトを文書ストレージに格納することをさらに含む、請求項36に記載の方法。
  39. 前記質問を表す前記受信クエリデータに基づいて、ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定することと、
    前記特定された1つまたは複数の追加の質問のうちの少なくとも1つに応答する追加の回答データを含む追加の出力データを生成することと
    をさらに含む、請求項31に記載の方法。
  40. 前記ローカルデバイスおよび/または前記遠隔デバイスの1人もしくは複数人のユーザから受信した入力データ、あるいは前記ローカルデバイスに格納された、前記ソース文書に関連付けられた文書オブジェクトから決定された前記クエリデータに対する特定された応答に関連付けられたメタデータのうちの1つまたは複数に基づいて、前記1つまたは複数の追加の質問を取得することと、
    前記1つまたは複数の追加の質問を表す1つまたは複数の追加の質問データ項目をクエリデータの前記リポジトリに格納することと
    をさらに含む、請求項39に記載の方法。
  41. 前記ローカルデバイスで維持される前記質問回答キャッシュに格納された前記1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従って前記クエリデータとマッチするかどうかを判定することは、
    前記クエリデータの言語的意味を決定することと、
    前記クエリデータと、前記質問回答キャッシュ内の前記所定の質問の少なくとも一部の対応する意味との間の意味上の類似度レベルを決定することと、
    前記クエリデータと、前記1つまたは複数の所定の質問の前記少なくとも1つのそれぞれの意味との間の意味上の類似度レベルが所定の類似度閾値を超えるとき、前記1つまたは複数の所定の質問のうちの少なくとも1つがクエリデータとマッチすると判定することと
    を含む、請求項31に記載の方法。
  42. 前記クエリデータが、前記ローカルデバイスにおいて、前記ソース文書に関して実行されたそれぞれのプロセスに関連付けられた所定のコマンドのうちの1つにマッチすると判定することと、
    前記クエリデータにマッチすると判定された前記所定のコマンドのうちの1つに関連付けられた前記所定のプロセスを実行することと
    をさらに含む、請求項31に記載の方法。
  43. 前記クエリデータが所定のコマンドのうちの1つにマッチすると判定することは、
    前記クエリデータが、前記ソース文書の少なくとも一部分の要約の生成を引き起こすように構成されている要約コマンドにマッチすると判定することを含む、請求項42に記載の方法。
  44. 前記クエリデータに対応する前記質問に基づいて、1つまたは複数の拡張質問を生成することをさらに含む、請求項31に記載の方法。
  45. 前記1つまたは複数の拡張質問を生成することは、
    a)前記質問中の語句の順序を変更すること、またはb)前記質問中の1つもしくは複数の語に対して同義語もしくは等価な語であるように同義語データ記録から特定される置換用の語で前記質問中の前記1つもしくは複数の語を置換することのうちの1つまたは複数に基づいて、前記クエリデータによって表される前記質問を変更することを含む、請求項44に記載の方法。
  46. 前記ローカルデバイスにおいて、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、前記1つまたは複数の拡張質問に従って前記複数の文書オブジェクトのうちの1つまたは複数を特定することをさらに含む、請求項44に記載の方法。
  47. 前記ローカルデバイスで維持される前記質問回答キャッシュに格納された前記1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従って前記クエリデータとマッチするかどうかを判定することは、
    1つまたは複数の変換に従って前記クエリデータを変換クエリに変換することと、
    前記変換クエリを前記質問回答キャッシュに格納されている変換Q-A項目に対してマッチングすることと
    を含む、前記変換Q-A項目の各々は、前記1つまたは複数の変換に従う、1つまたは複数の質問および対応する1つまたは複数の回答の変換から得られる変換データを含む、請求項31に記載の方法。
  48. 前記変換Q-A項目は、前記1つまたは複数の質問および前記対応する1つまたは複数の回答のBERT(トランスフォーマによる双方向エンコーダ表現)ベースの変換から得られる前記変換データを含む、請求項47に記載の方法。
  49. ソース文書のソースコンテンツに関連する質問を表すクエリデータを遠隔デバイスから受信するように構成されている通信ユニットと、
    所定の質問を格納するように構成されている質問および回答キャッシュストレージデバイスと、
    前記通信ユニットおよび前記質問および回答キャッシュストレージデバイスに電気接続されたコントローラであって、
    質問回答キャッシュに格納された前記所定の質問のうちの1つまたは複数が1つまたは複数のマッチ基準に従って前記クエリデータとマッチするかどうかを判定し、
    前記所定の質問のうちの少なくとも1つが前記遠隔デバイスから受信した前記クエリデータとマッチするという判定に応答して、前記質問回答キャッシュから、前記ソースコンテンツに関連する前記質問への回答に対応する、少なくとも1つの所定の質問に関連付けられた少なくとも1つの回答データ項目を取得するように構成されているコントローラと
    を備える、システム。
  50. 前記質問回答キャッシュから少なくとも1つの回答データ項目を取得するように構成されている前記コントローラは、
    前記遠隔デバイスからアクセス可能な前記ソース文書の複製から、前記ソースコンテンツに関連する前記質問への前記回答に対応する前記ソース文書の前記複製の少なくとも一部分にアクセスするためのポインタ、前記ソースコンテンツの少なくとも一部、または前記ソースコンテンツの前記少なくとも一部分の要約のうちの1つまたは複数を取得するように構成されている、請求項49に記載のシステム。
  51. 前記コントローラは、対応する回答を表すデータ項目の一部分が特定の質問に対する満足行く応答を表しているという指示をユーザから受信したことに応答して、前記特定の質問と前記対応する回答とのペアを表す前記データ項目を前記質問回答キャッシュに格納させるようにさらに構成されている、請求項49に記載のシステム。
  52. 前記コントローラは、
    前記ローカルデバイスにおいて、特定の質問に応答して、前記特定の質問に対する不満足な回答であるとユーザによって判定されている初期回答データを置換するための置換用回答データを取得し、
    前記特定の質問と前記置換用回答とのペアを表すデータ項目を前記質問回答キャッシュに格納させるようにさらに構成されている、請求項49に記載のシステム。
  53. 前記コントローラは、
    前記質問回答キャッシュに格納された前記所定の質問のいずれも、前記遠隔デバイスから受信した前記クエリデータとマッチしないという判定に応答して、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含め検索し、前記クエリデータに従って記複数の前記文書オブジェクトのうちの1つまたは複数を特定し、
    前記クエリデータと前記変換コンテンツの少なくとも一部とのマッチの判定に応答して、前記変換コンテンツの前記少なくとも一部分に基づいて出力データを生成するようにさらに構成されている、請求項49に記載のシステム。
  54. 前記コントローラは、
    前記質問を表す前記受信クエリデータに基づいて、ソース文書に関連付けられた複数の質問を表すクエリデータのリポジトリから1つまたは複数の追加の質問を特定し、
    前記特定された1つまたは複数の追加の質問のうちの少なくとも1つに応答する追加の回答データを含む追加の出力データを生成するようにさらに構成されている、請求項49に記載のシステム。
  55. 前記質問回答キャッシュに格納された前記1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従って前記クエリデータとマッチするかどうかを判定するように構成されている前記コントローラは、
    前記クエリデータの言語的意味を決定し、
    前記クエリデータと、前記質問回答キャッシュ内の前記所定の質問の少なくとも一部の対応する意味との間の意味上の類似度レベルを決定し、
    前記クエリデータと、前記1つまたは複数の所定の質問のうちの前記少なくとも1つのそれぞれの意味との間の意味上の類似度レベルが所定の類似度閾値を超えるとき、前記1つまたは複数の所定の質問のうちの少なくとも1つがクエリデータとマッチすると判定するように構成されている、請求項49に記載のシステム。
  56. 前記コントローラは、前記クエリデータが、前記ローカルデバイスにおいて、前記ソース文書に関して実行されたそれぞれのプロセスに関連付けられた所定のコマンドのうちの1つにマッチすると判定し、前記クエリデータにマッチすると判定された前記所定のコマンドのうちの前記1つに関連付けられた前記所定のプロセスを実行するようにさらに構成されている、請求項49に記載のシステム。
  57. 前記クエリデータが所定のコマンドのうちの1つにマッチすると判定するように構成されている前記コントローラは、
    前記クエリデータが、前記ソース文書の少なくとも一部分の要約の生成を引き起こすように構成されている要約コマンドにマッチすると判定するように構成されている、請求項56に記載のシステム。
  58. 前記コントローラは、
    a)質問中の語句の順序を変更すること、またはb)質問中の1つもしくは複数の語に対して同義語もしくは等価な語であるように同義語データ記録から特定される置換用の語で前記質問中の前記1つもしくは複数の語を置換することのうちの1つまたは複数に基づいて、前記クエリデータによって表される前記質問を変更することを含め、前記クエリデータに対応する前記質問に基づいて1つまたは複数の拡張質問を生成するように構成されている、請求項49に記載のシステム。
  59. 質問回答キャッシュに格納された前記1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従って前記クエリデータとマッチするかどうかを判定するように構成されている前記コントローラは、
    1つまたは複数の変換に従って前記クエリデータを変換クエリに変換し、
    前記変換クエリを前記質問回答キャッシュに格納されている変換Q-A項目に対してマッチングするように構成されており、前記変換Q-A項目の各々は、前記1つまたは複数の変換に従って1つまたは複数の質問および対応する1つまたは複数の回答の変換から得られる変換データを含む、請求項49に記載のシステム。
  60. ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問を表すクエリデータを遠隔デバイスから受信し、
    前記ローカルデバイスで維持される質問回答キャッシュに格納された1つまたは複数の所定の質問が1つまたは複数のマッチ基準に従って前記クエリデータとマッチするかどうかを判定し、
    前記所定の質問のうちの少なくとも1つが前記遠隔デバイスから受信した前記クエリデータとマッチするという判定に応答して、前記質問回答キャッシュから、前記ソースコンテンツに関連する前記質問への回答に対応する、少なくとも1つの所定の質問に関連付けられた少なくとも1つの回答データ項目を取得するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた非一時的コンピュータ可読媒体。
  61. ソース文書を受信することと、
    前記ソース文書に1つまたは複数の前処理を適用して、前記ソース文書の構造およびコンテンツを表すコンテキスト情報を生成することと、
    前記コンテキスト情報に基づいて前記ソース文書を変換し、質問および回答用検索可能文書を生成することと
    を含む、方法。
  62. 前記1つまたは複数の前処理を適用することは、前記ソース文書を複数の文書セグメントにセグメント化することを含み、
    前記ソース文書を変換することは、1つまたは複数の変換に従って、前記複数の文書セグメントの各々を1つまたは複数の対応する変換セグメントに変換することを含む、請求項61に記載の方法。
  63. 前記1つまたは複数の変換は、前記複数の文書セグメントの粗いコンテンツを表す粗い数値ベクトルを生成する粗い線形化変換、または前記複数の文書セグメントの前記コンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含む、請求項62に記載の方法。
  64. 前記ソース文書をセグメント化することは、前記ソース文書の1つの部分と前記ソース文書の1つまたは複数の他の部分とを意味的に関連付ける階層的規則に従って、前記ソースコンテンツを前記複数の文書セグメントにセグメント化することを含む、請求項62に記載の方法。
  65. 階層的規則に従って前記ソース文書をセグメント化することは、
    特定の文書セグメントに、特定の文書部分のコンテンツと、前記特定の文書部分の位置よりも先に前記ソース文書に位置した、前記特定の文書部分の前記コンテンツと関連付けられていると判定されているセクション見出しコンテンツとを含めることを含む、請求項64に記載の方法。
  66. 前記ソース文書をセグメント化することは、前記ソース文書上で固定サイズまたは可変サイズのウィンドウをスライドさせて前記複数の文書セグメントを生成することによって、前記ソース文書を前記複数の文書セグメントにセグメント化することを含む、請求項62に記載の方法。
  67. 前記ソース文書上で前記ウィンドウをスライドさせることは、生成された第1のセグメントおよび次に生成されたセグメントがそれぞれ少なくともいくらかの重複するコンテンツを共有するように、前記ウィンドウのサイズよりも小さくてもよい刻みで前記ウィンドウをスライドさせることを含む、請求項66に記載の方法。
  68. 前記ソース文書に前記1つまたは複数の前処理を適用することは、
    前記ソース文書の1つまたは複数の他の部分の位置に対する特定の部分の位置、前記特定の部分の相対的なフォントサイズ、前記ソース文書の構造および編成、または前記ソース文書の文書タイプのうちの1つまたは複数に基づいて前記ソース文書の前記特定の部分に対する相対的な重要度値を決定することを含む、請求項61に記載の方法。
  69. 前記ソース文書を変換することは、前記特定の部分に対する決定済みの相対的重要度値と、前記ソース文書の他の部分に対する相対的重要度値とに少なくとも部分的に基づいて前記ソース文書を変換することを含む、請求項68に記載の方法。
  70. 前記ソース文書に前記1つまたは複数の前処理を適用することは、
    マルチセルテーブルに配置された複数のサブ部分を含む前記ソース文書の部分を識別することと、
    前記マルチセルテーブルを置換するために、各々が前記マルチセルテーブルに関連付けられたそれぞれのサブ部分コンテンツデータおよびコンテキスト情報を含む複数の置換部分を生成することと
    を含む、請求項61に記載の方法。
  71. 前記ソース文書に前記1つまたは複数の前処理を適用することは、
    ユーザに提示される前記ソース文書に関連する1つもしくは複数の質問に応答して前記ユーザによって提供される情報に基づいて、コンテキスト情報を前記ソース文書の1つまたは複数の部分と関連付けることを含む、請求項61に記載の方法。
  72. 前記ソース文書に前記1つまたは複数の前処理を適用することは、
    質問および回答ペアの1つまたは複数のグランドトゥルースサンプルに基づいて、前記ソース文書の特定の部分に関連する質問および回答のコンテキスト情報を関連付けることを含む、請求項61に記載の方法。
  73. 前記1つまたは複数の前処理を適用することは、前記ソース文書を複数の文書セグメントにセグメント化することを含み、前記方法は、
    前記複数の文書セグメントのうちの少なくとも1つのセグメントについて、少なくとも1つのセグメントに関連付けられた少なくとも1つのエンティティ、前記少なくとも1つのセグメントに関連付けられた少なくとも1つのタスク、または前記少なくとも1つのセグメントに関連付けられた主題記述子のうちの1つまたは複数を含む少なくとも1つのセグメント記述子を識別することと、
    前記少なくとも1つのセグメントを前記少なくとも1つの記述子でタグ付けすることと
    をさらに含む、請求項61に記載の方法。
  74. 前記ソース文書の前記コンテンツに関連する質問を表すクエリデータを受信することと、
    前記クエリデータに関連付けられた少なくとも1つのクエリ記述子を決定することであって、前記少なくとも1つの記述子が、前記クエリデータに関連付けられた少なくとも1つのエンティティ、前記クエリデータに関連付けられた少なくとも1つのタスク、または前記クエリに関連付けられた主題記述子のうちの1つまたは複数を含む、ことと、
    前記クエリデータに対する応答を、セグメント記述子が前記少なくとも1つのクエリ記述子とマッチしている前記複数の文書セグメントのうちの1つまたは複数から検索することと
    をさらに含む、請求項73に記載の方法。
  75. 前記ソース文書の前記コンテンツに関連するユーザからの質問を表すクエリデータを受信することと、
    前記ユーザに関連付けられたセンサデバイスによって得られたセンサデータに基づいてコンテキスト情報を決定することと、
    セグメント記述子が前記決定済みコンテキスト情報にマッチしている前記複数の文書セグメントのうちの1つまたは複数から前記クエリデータに対する応答を検索することと
    をさらに含む、請求項73に記載の方法。
  76. 前記コンテキスト情報を決定することは、前記ユーザが使用するカメラデバイスによって撮影された画像データから識別可能なアイテムまたは場所を決定することを含み、前記クエリデータに対する前記応答を検索することは、前記画像データから識別可能な前記決定済みのアイテムまたは場所に少なくとも部分的に基づいて、前記複数の文書セグメントのうちの1つまたは複数から前記クエリデータに対する前記応答を検索することを含む、請求項75に記載の方法。
  77. ソース文書を受信するように構成されている通信ユニットと、
    前記ソース文書に1つまたは複数の前処理を適用して、前記ソース文書の構造およびコンテンツを表すコンテキスト情報を生成し、前記コンテキスト情報に基づいて前記ソース文書を変換し、質問および回答用検索可能文書を生成するように構成されている取り込みエンジンと
    を備える、システム。
  78. 前記1つまたは複数の前処理を適用するように構成されている前記取り込みエンジンは、前記ソース文書を複数の文書セグメントにセグメント化するように構成されており、
    前記ソース文書を変換するように構成されている前記取り込みエンジンは、1つまたは複数の変換に従って、前記複数の文書セグメントの各々を1つまたは複数の対応する変換セグメントに変換するように構成されている、請求項77に記載のシステム。
  79. 前記1つまたは複数の変換は、前記複数の文書セグメントの粗いコンテンツを表す粗い数値ベクトルを生成する粗い線形化変換、または前記複数の文書セグメントの前記コンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数を含む、請求項78に記載のシステム。
  80. 前記ソース文書をセグメント化するように構成されている前記取り込みエンジンは、
    前記ソース文書の1つの部分と前記ソース文書の1つまたは複数の他の部分とを意味的に関連付ける階層的規則に従って、前記ソースコンテンツを前記複数の文書セグメントにセグメント化するように構成されている、請求項78に記載のシステム。
  81. 前記1つまたは複数の前処理を適用するように構成されている前記取り込みエンジンは、前記ソース文書を複数の文書セグメントにセグメント化するように構成されており、前記取り込みエンジンは、
    前記複数の文書セグメントのうちの少なくとも1つのセグメントについて、
    少なくとも1つのセグメントに関連付けられた少なくとも1つのエンティティ、前記少なくとも1つのセグメントに関連付けられた少なくとも1つのタスク、または前記少なくとも1つのセグメントに関連付けられた主題記述子のうちの1つまたは複数を含む少なくとも1つのセグメント記述子を識別し、
    前記少なくとも1つのセグメントを前記少なくとも1つの記述子でタグ付けするようにさらに構成されている、請求項77に記載のシステム。
  82. 前記ソース文書の前記コンテンツに関連するユーザからの質問を表すクエリデータを受信し、
    前記ユーザに関連付けられたセンサデバイスによって得られたセンサデータに基づいてコンテキスト情報を決定し、
    セグメント記述子が前記決定済みコンテキスト情報にマッチしている前記複数の文書セグメントのうちの1つまたは複数から前記クエリデータに対する応答を検索するように構成されている取り込みエンジンをさらに備える、請求項81に記載のシステム。
  83. ソース文書を受信し、
    前記ソース文書に1つまたは複数の前処理を適用して、前記ソース文書の構造およびコンテンツを表すコンテキスト情報を生成し、
    前記コンテキスト情報に基づいて前記ソース文書を変換し、質問および回答用検索可能文書を生成するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた非一時的コンピュータ可読媒体。
  84. ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問および回答ペアを表しており、質問および回答データ項目の履歴情報およびアクセス情報を表す質問および回答履歴情報に関連付けられている前記質問および回答データ項目を取得することと、
    前記質問および回答履歴情報に基づいて、前記質問および回答データ項目に対してデータ改良操作を実行するかどうかを決定することと、
    前記質問および回答データ項目が改良されるという判定に応答して、前記質問および回答データ項目に関連付けられた主題と、前記複数人のユーザにそれぞれ関連付けられた専門知識情報とに少なくとも部分的に関連する1つまたは複数のマッチ基準に従って複数人のユーザのうちの1人を選択することと、
    少なくとも前記質問および回答データ項目を前記複数人のユーザのうちの前記選択された1人に関連付けられた送信先デバイスに伝達することと
    を含む、方法。
  85. 前記質問および回答履歴情報は、前記関連付けられた質問および回答データ項目がアクセスされた頻度、前記質問および回答データ項目に関する1人もしくは複数人のユーザによるフィードバックに基づいて決定された満足度レベル、前記質問および回答データ項目の質問部分に対する回答部分の応答性の信頼度レベル、または前記質問および回答データ項目に関連付けられた著者情報のうちの1つまたは複数を含む、請求項84に記載の方法。
  86. 1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを検索して得られた検索結果に従って、前記質問部分に対する前記回答部分の応答性の信頼度レベルを導出し、前記質問および回答データ項目の前記質問部分を表す質問データに従って前記複数の文書オブジェクトのうちの1つまたは複数を特定することをさらに含む、請求項85に記載の方法。
  87. 前記信頼度レベルを導出することは、前記特定された1つまたは複数の複数の文書オブジェクトの数と、前記複数の文書オブジェクトのうちの特定された1つまたは複数に関連付けられたそれぞれの質問部分に対する前記質問データの近接度とに基づいて、前記質問部分に対する前記回答部分の応答性の前記信頼度レベルを導出することを含む、請求項86に記載の方法。
  88. 前記質問および回答履歴情報に基づいて、前記質問および回答データ項目への改良操作を行うかどうかを決定することは、
    前記関連付けられた質問および回答データ項目がアクセスされた頻度が頻度閾値を超えていること、
    前記質問および回答データ項目に関する前記1人または複数人のユーザによるフィードバックに基づいて決定された満足度レベルが満足度閾値を下回っていること、
    前記質問部分に対する前記回答部分の応答性の前記信頼度が応答性閾値を超えていること、または
    前記著者情報が1つもしくは複数の事前に特定した名前にマッチしていること
    のうちの1つまたは複数に基づいて前記質問および回答データ項目を改良するかどうかを決定することを含む、請求項85に記載の方法。
  89. 前記質問および回答データ項目は、前記質問および回答ペアへの回答に対応する前記ソース文書の少なくとも一部分に遠隔デバイスからアクセスするためのポインタ、前記ソースコンテンツの少なくとも一部、または前記ソースコンテンツの少なくとも一部分の要約のうちの1つまたは複数を含む、請求項84に記載の方法。
  90. 前記ローカルデバイスにおいて、前記送信先デバイスに伝達された前記質問および回答データ項目から導出された改良済み質問および回答データ項目を受信することと、
    前記ローカルデバイスに維持される質問回答キャッシュにおいて前記改良済み質問および回答データ項目を格納することと
    をさらに含む、請求項84に記載の方法。
  91. 前記ローカルデバイスにおいて、前記ソース文書の前記ソースコンテンツに関連する後続の質問を表すクエリデータを遠隔デバイスから受信することと、
    前記クエリデータが、1つまたは複数のマッチ基準に従って、前記質問回答キャッシュに格納されている、前記改良済み質問および回答データ項目の質問部分にマッチするかどうかを判定することと、
    前記改良済み質問および回答データ項目の前記質問部分が前記遠隔デバイスから受信した前記クエリデータとマッチするという判定に応答して、前記質問回答キャッシュから、前記改良された質問および回答データ項目の少なくとも1つの回答部分を取得し、前記少なくとも1つの回答部分を前記遠隔デバイスに送信することと
    をさらに含む、請求項90に記載の方法。
  92. 前記クエリデータが、前記質問回答キャッシュに格納された前記改良済み質問および回答データ項目の前記質問部分とマッチしないという判定に応じて、前記ローカルデバイスにおいて、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、前記クエリデータに従って前記複数の文書オブジェクトのうちの1つまたは複数を特定することと、
    前記ローカルデバイスにおいて、前記クエリデータと前記変換コンテンツの少なくとも一部分とのマッチの判定に応答して、前記変換コンテンツの前記マッチした少なくとも一部分に基づいて出力データを生成することと
    をさらに含む、請求項91に記載の方法。
  93. 前記ローカルデバイスで1つまたは複数のソース文書を受信すること、
    前記1つまたは複数のソース文書を複数の文書セグメントにセグメント化すること、
    1つまたは複数の変換に従って前記複数の文書セグメントの各々を1つまたは複数のそれぞれの変換セグメントに変換すること、および
    前記変換セグメントを前記複数の文書オブジェクトに整理すること
    を含む、前記複数の文書オブジェクトを前記文書ストレージに格納することをさらに含む、請求項92に記載の方法。
  94. ローカルデバイスに実装され、
    ソース文書のソースコンテンツに関連する質問および回答ペアを表しており、前記質問および回答データ項目の履歴情報およびアクセス情報を表す質問および回答履歴情報に関連付けられている質問および回答データ項目を取得し、質問および回答データ項目に対してデータ改良操作を実行するかどうかを前記質問および回答履歴情報に基づいて決定し、
    前記質問および回答データ項目が改良されるという決定に応答して、前記質問および回答データ項目に関連付けられた主題および複数人のユーザにそれぞれ関連付けられた専門知識情報に少なくとも部分的に関連する1つまたは複数のマッチ基準に従って、前記複数人のユーザのうちの1人を選択するように構成されている文書処理エージェントと、
    前記複数人のユーザのうちの前記選択された1人に関連付けられた送信先デバイスに少なくとも前記質問および回答データ項目を伝達するように構成されている通信ユニットと
    を備える、システム。
  95. 前記質問および回答履歴情報は、前記関連付けられた質問および回答データ項目がアクセスされた頻度、前記質問および回答データ項目に関する1人もしくは複数人のユーザによるフィードバックに基づいて決定された満足度レベル、前記質問および回答データ項目の質問部分に対する回答部分の応答性の信頼度レベル、または前記質問および回答データ項目に関連付けられた著者情報のうちの1つまたは複数を含む、請求項94に記載のシステム。
  96. 前記文書処理エージェントは、
    1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを検索して得られた検索結果に従って、前記質問部分に対する前記回答部分の応答性の信頼度レベルを導出し、前記質問および回答データ項目の前記質問部分を表す質問データに従って前記複数の文書オブジェクトのうちの1つまたは複数を特定するようにさらに構成されている、請求項95に記載のシステム。
  97. 前記信頼度レベルを導出するように構成されている前記文書処理エージェントは、
    前記特定された1つまたは複数の複数の文書オブジェクトの数と、前記複数の文書オブジェクトのうちの前記特定された1つまたは複数に関連付けられたそれぞれの質問部分に対する前記質問データの近接度とに基づいて、前記質問部分に対する前記回答部分の応答性の前記信頼度レベルを導出するように構成されている、請求項96に記載のシステム。
  98. 前記質問および回答履歴情報に基づいて、前記質問および回答データ項目への改良操作を行うかどうかを決定するように構成されている前記文書処理エージェントは、
    前記関連付けられた質問および回答データ項目がアクセスされた頻度が頻度閾値を超えていること、
    前記質問および回答データ項目に関する前記1人または複数人のユーザによるフィードバックに基づいて決定された満足度レベルが満足度閾値を下回っていること、
    前記質問部分に対する前記回答部分の応答性の前記信頼度が応答性閾値を超えていること、または
    前記著者情報が1つもしくは複数の事前に特定した名前にマッチしていること
    のうちの1つまたは複数に基づいて前記質問および回答データ項目を改良するかどうかを決定するように構成されている、請求項95に記載のシステム。
  99. 前記質問および回答データ項目は、前記質問および回答ペアへの回答に対応する前記ソース文書の少なくとも一部分に遠隔デバイスからアクセスするためのポインタ、前記ソースコンテンツの少なくとも一部、または前記ソースコンテンツの前記少なくとも一部分zの要約のうちの1つまたは複数を含む、請求項94に記載のシステム。
  100. 前記通信ユニットは、前記ローカルデバイスにおいて、前記送信先デバイスに伝達された前記質問および回答データ項目から導出された改良済み質問および回答データ項目を受信するようにさらに構成されており、
    前記文書処理エージェントは、前記ローカルデバイスに維持される質問回答キャッシュにおいて前記改良済み質問および回答データ項目を格納するようにさらに構成されている、請求項94に記載のシステム。
  101. 前記通信ユニットは、前記ローカルデバイスにおいて、前記ソース文書の前記ソースコンテンツに関連する後続の質問を表すクエリデータを遠隔デバイスから受信するようにさらに構成されており、
    前記文書処理エージェントは、
    前記クエリデータが、1つまたは複数のマッチ基準に従って、前記質問回答キャッシュに格納されている、前改良済み質問および回答データ項目の質問部分にマッチするかどうかを判定し、
    前改良済み質問および回答データ項目の前記質問部分が前遠隔デバイスから受信した前記クエリデータとマッチするという判定に応答して、前記質問回答キャッシュから、前改良済み質問および回答データ項目の少なくとも1つの回答部分を取得し、前記少なくとも1つの回答部分を前記遠隔デバイスに送信するようにさらに構成されている、請求項100に記載のシステム。
  102. 前記文書処理エージェントは、
    前記クエリデータが、前記質問回答キャッシュに格納された前記改良済み質問および回答データ項目の前記質問部分とマッチしないという判定に応じて、前記ローカルデバイスにおいて、1つまたは複数のソース文書に対応する変換コンテンツの複数の文書オブジェクトを含む文書ストレージを検索し、前記クエリデータに従って前記複数の文書オブジェクトのうちの1つまたは複数を特定し、
    前記ローカルデバイスにおける、前記クエリデータと前記変換コンテンツの少なくとも一部分とのマッチの判定に応答して、前記変換コンテンツの前記マッチした少なくとも一部分に基づいて出力データを生成するようにさらに構成されている、請求項101に記載のシステム。
  103. ローカルデバイスにおいて、ソース文書のソースコンテンツに関連する質問および回答ペアを表しており、質問および回答データ項目の履歴情報およびアクセス情報を表す質問および回答履歴情報に関連付けられている前記質問および回答データ項目を取得し、
    前記質問および回答履歴情報に基づいて、前記質問および回答データ項目に対してデータ改良操作を実行するかどうかを判定し、
    前記質問および回答データ項目が改良されるという判定に応答して、前記質問および回答データ項目に関連付けられた主題と、前記複数人のユーザにそれぞれ関連付けられた専門知識情報とに少なくとも部分的に関連する1つまたは複数のマッチ基準に従って複数人のユーザのうちの1人を選択し、
    少なくとも前記質問および回答データ項目を前記複数人のユーザのうちの前記選択された1人に関連付けられた送信先デバイスに伝達するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた非一時的コンピュータ可読媒体。
  104. 1つまたは複数の文書ライブラリ由来の複数のソース文書に対して質問および回答処理を適用し、それぞれの文書記録結果を生成することと、
    前記文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定することと、
    前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果との間の前記決定された類似度レベルに基づいて、1つまたは複数の文書ライブラリを維持することとを含む、方法。
  105. 前記1つまたは複数の文書ライブラリを管理することは、
    前記決定された類似度レベルに基づいて、前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果とが互いに矛盾しているか、または互いに実質的に重複しているかのいずれかであると判定することと、
    前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果が互いに矛盾しているか、または実質的に重複しているという判定に応答して、前記文書記録結果のうちの前記第1の文書記録結果に対応する第1のソース文書、または前記文書記録結果のうちの前記第2の文書記録結果に対応する第2のソース文書のいずれかを前記1つまたは複数の文書ライブラリから削除することと
    を含む、請求項104に記載の方法。
  106. 前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果との間の類似度レベルを決定することは、
    前記質問および回答処理から生成され、前記ユーザに提供される出力データに応答するユーザ入力に基づいて前記類似度レベルを決定することを含む、請求項104に記載の方法。
  107. 前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果との間の前記類似度レベルを決定することは、前記質問および回答オブジェクトを作成するための文書取り込み中に、前記複数のソース文書に適用される1つもしくは複数の仮想のライブラリ質問、または前記文書記録結果のうちの前記第1の文書記録結果から質問を決定し、前記決定された質問を用いて前記文書記録結果のうちの前記第2の文書記録結果のコンテンツを評価することのうちの1つまたは複数に基づいて、前記類似度レベルを決定することを含む、請求項104に記載の方法。
  108. 前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果との間の前記類似度レベルが類似度閾値を超えているという判定に応答して、前記文書記録結果のうちの前記第1の文書記録結果に対応する第1のソース文書と、前記文書記録結果のうちの前記第2の文書記録結果に対応する第2のソース文書との間の類似度を示す出力を提供することをさらに含む、請求項107に記載の方法。
  109. 複数のソース文書を含む1つまたは複数の文書ライブラリを格納する1つまたは複数のストレージデバイスと、
    前記1つまたは複数の文書ライブラリ由来の前記複数のソース文書に対して質問および回答処理を適用し、それぞれの文書記録結果を生成し、
    前記文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定し、
    前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果との間の前記決定された類似度レベルに基づいて、前記1つまたは複数の文書ライブラリを管理するように構成されているプロセッサベースのコントローラと
    を備える、システム。
  110. 前記1つまたは複数の文書ライブラリを管理するように構成されている前記コントローラは、
    前記決定された類似度レベルに基づいて、前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果とが互いに矛盾しているか、または互いに実質的に重複しているかのいずれかであると判定し、
    前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果が互いに矛盾しているか、または実質的に重複しているという判定に応答して、前記文書記録結果のうちの前記第1の文書記録結果に対応する第1のソース文書、または前記文書記録結果のうちの前記第2の文書記録結果に対応する第2のソース文書のいずれかを前記1つまたは複数の文書ライブラリから削除するように構成されている、請求項109に記載のシステム。
  111. 1つまたは複数の文書ライブラリ由来の複数のソース文書に対して質問および回答処理を適用し、それぞれの文書記録結果を生成し、
    前記文書記録結果のうちの第1の文書記録結果と第2の文書記録結果との間の類似度レベルを決定し、
    前記文書記録結果のうちの前記第1の文書記録結果と前記第2の文書記録結果との間の前記決定された類似度レベルに基づいて、前記1つまたは複数の文書ライブラリを管理するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた非一時的コンピュータ可読媒体。
  112. ローカルデバイスでソース文書を受信することと、
    前記受信ソース文書に関連付けられた拡張データを取得することと、
    前記取得した拡張データと組み合わせた前記ソース文書を変換して質問および回答用検索可能文書を生成することと
    を含む、方法。
  113. 前記拡張データを取得することは、
    前記ソース文書に含まれるリンクに基づいて前記拡張データを取得すること、または
    共参照解析を実行して、前記ソース文書において特定される1つもしくは複数の名称もしくは表現を決定し、前記ローカルデバイスからアクセス可能な情報リポジトリを検索して、前記ソース文書において特定される前記決定済みの1つもしくは複数の名称もしくは表現に関連付けられた追加の情報を取得すること
    のうちの1つまたは複数を含む、請求項112に記載の方法。
  114. 前記取得された拡張データと組み合わされた前記ソース文書を変換して、前記質問および回答用検索可能文書を生成することは、
    前記取得された拡張データと組み合わされた前記ソース文書を複数の文書セグメントに分割することを含む、請求項112に記載の方法。
  115. 前記複数の文書セグメントのうちの少なくとも1つのセグメントについて、少なくとも1つのセグメントに関連付けられた少なくとも1つのエンティティ、少なくとも1つのセグメントに関連付けられた少なくとも1つのタスク、または前記少なくとも1つのセグメントに関連付けられた主題記述子のうちの1つまたは複数を含む少なくとも1つのセグメント記述子を識別することと、
    前記少なくとも1つのセグメントを前記少なくとも1つの記述子でタグ付けすることと
    をさらに含む、請求項114に記載の方法。
  116. 前記ローカルデバイスにおいて、前記ソース文書のソースコンテンツに関連する質問を表すクエリデータを受信することと、
    前記クエリデータに関連付けられた少なくとも1つのクエリ記述子を決定することであって、前記少なくとも1つの記述子が、前記クエリデータに関連付けられた少なくとも1つのエンティティ、前記クエリデータに関連付けられた少なくとも1つのタスク、または前記クエリに関連付けられた主題記述子のうちの1つまたは複数を含む、ことと、
    前記クエリデータに対する応答を、セグメント記述子が前記少なくとも1つのクエリ記述子とマッチしている前記複数の文書セグメントのうちの1つまたは複数から検索することと
    をさらに含む、請求項115に記載の方法。
  117. 前記取得された拡張データと組み合わされた前記ソース文書を変換することは、
    1つまたは複数の変換に従って、前記複数の文書セグメントの各々を1つまたは複数の対応する変換セグメントに変換することをさらに含む、請求項114に記載の方法。
  118. 前記取得された拡張データと組み合わされた前記ソース文書を変換することは、
    前記取得された拡張データと組み合わされた前記ソース文書のコンテンツを表す複数の数値ベクトルを生成する粗い線形化変換、または前記取得された拡張データと組み合わされた前記ソース文書の前記コンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数に従って、前記取得されたデータと組み合わされた前記ソース文書を変換することを含む、請求項112に記載の方法。
  119. 前記変換済み質問および回答用検索可能文書に基づいて、前記拡張データと組み合わされた前記ソース文書の要約を導出することをさらに含む、請求項112に記載の方法。
  120. 前記要約を導出することは、要約記録のリポジトリから、前記変換済み質問および回答用検索可能文書の、所定の要約記録に対する類似度が類似度閾値を超えている少なくとも一部分を特定することを含む、請求項119に記載の方法。
  121. ソース文書を受信するように構成されている通信ユニットと、
    前記受信ソース文書に関連付けられた拡張データを取得し、前記取得した拡張データと組み合わせた前記ソース文書を変換して質問および回答用検索可能文書を生成するように構成されている取り込みエンジンと
    を備える、システム。
  122. ローカルデバイスでソース文書を受信し、
    前記受信ソース文書に関連付けられた拡張データを取得し、
    前記取得した拡張データと組み合わせた前記ソース文書を変換して質問および回答用検索可能文書を生成するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた非一時的コンピュータ可読媒体。
  123. 各々がデータを処理するために使用される質問および回答モデルのうちの対応するものに関連付けられている複数のエンティティのうちの、第1のエンティティに関連付けられた1つまたは複数のソース文書を受信することと、
    前記第1のエンティティに関連付けられた前記1つまたは複数のソース文書を、それぞれの関連付けられた前記第1の質問および回答モデルに従って変換し、1つまたは複数の質問および回答用検索可能文書を生成することと
    を含む、方法。
  124. 前記第1のエンティティに関連付けられた前記1つまたは複数のソース文書を変換することは、
    前記1つもしくは複数のソース文書について複数の文書セグメントのコンテンツを表す複数の数値ベクトルを生成する粗い線形化変換、または前記複数の文書セグメントの前記コンテンツを表す詳細変換コンテンツ記録を生成する詳細変換のうちの1つまたは複数に従って前記1つまたは複数のソース文書を変換することを含む、請求項123に記載の方法。
  125. 前記詳細変換は、BERT(トランスフォーマによる双方向エンコーダ表現)処理に基づいて1つまたは複数の文書セグメントに適用される変換を含む、請求項124に記載の方法。
  126. 前記1つまたは複数のソース文書に関連する質問を表すクエリデータを受信することと、
    前記1つまたは複数のソース文書のセグメントへの線形化変換の適用により生成された前記複数の数値ベクトルに適用される高速検索を実行して、前記クエリデータに応答する複数のマッチ候補を特定することと
    をさらに含む、請求項124に記載の方法。
  127. 前記詳細変換コンテンツ記録に従って変換されたコンテンツの部分に対する前記クエリデータのマッチを識別するためであって、前記部分は前記高速検索に従って特定された前記複数のマッチ候補に従って選択される、より詳細な検索を行うことをさらに含む、請求項126に記載の方法。
  128. 前記第1のエンティティに関連付けられた前記1つまたは複数のソース文書を変換することは、
    前記第1の質問および回答モデルに従って訓練されたニューラルネットワークを使用して前記1つまたは複数のソース文書を変換することを含む、請求項123に記載の方法。
  129. 前記1つまたは複数のソース文書に関連する質問を表すクエリデータを受信することと、
    前記詳細変換オブジェクトに従って変換されるコンテンツの順序付けられた部分に対する前記クエリデータのマッチを識別するためのスライディングウィンドウ検索を実行することと
    をさらに含む、請求項124に記載の方法。
  130. 前記第1のエンティティに関連付けられた前記1つまたは複数のソース文書を変換することは、
    前記1つまたは複数のソース文書からのソース文書を複数の文書セグメントにセグメント化することを含む、1つまたは複数の前処理を前記1つまたは複数のソース文書に適用することをさらに含む、請求項123に記載の方法。
  131. 前記ソース文書をセグメント化することは、前記ソース文書の構造およびコンテンツを表すコンテキスト情報を各セグメントに追加することを含み、
    前記1つまたは複数のソース文書を変換することは、前記各セグメントに追加された前記コンテキスト情報に部分的に基づいて、前セグメント化されたソース文書を変換することを含む、請求項130に記載の方法。
  132. 前記1つまたは複数のソース文書からソース文書のコンテンツを拡張することをさらに含み、前記拡張することは、前記ソース文書に含まれるリンクに基づいて拡張データを取得すること、または共参照解析を実行して、前記ソース文書において特定される1つもしくは複数の名称もしくは表現を決定し、ローカルデバイスからアクセス可能な情報リポジトリを検索して、前記ソース文書において特定される前記決定済みの1つもしくは複数の名称もしくは表現に関連付けられた追加の情報を取得することのうちの1つまたは複数を含む、請求項123に記載の方法。
  133. 前記1つまたは複数のソース文書を変換することは、
    前記拡張コンテンツを含む前記ソース文書を変換することを含む、請求項132に記載の方法。
  134. 前記1つまたは複数のソース文書を変換することは、
    事前計算された文書セグメントベクトルを少なくとも部分的に用いて、前記1つまたは複数のソース文書を変換することを含む、請求項123に記載の方法。
  135. 各々がデータを処理するために使用される質問および回答モデルのうちの対応するものに関連付けられている複数のエンティティのうちの、第1のエンティティに関連付けられた1つまたは複数のソース文書を受信するように構成されている通信ユニットと、
    前記第1のエンティティに関連付けられた前記1つまたは複数のソース文書を、それぞれの関連付けられた前記第1の質問および回答モデルに従って変換し、1つまたは複数の質問および回答用検索可能文書を生成するように構成されている取り込みエンジンと
    を備える、システム。
  136. 各々がデータを処理するために使用される質問および回答モデルのうちの対応するものに関連付けられている複数のエンティティのうちの、第1のエンティティに関連付けられた1つまたは複数のソース文書を受信し、
    前記第1のエンティティに関連付けられた前記1つまたは複数のソース文書を、それぞれの関連付けられた前記第1の質問および回答モデルに従って変換し、1つまたは複数の質問および回答用検索可能文書を生成するように、コンピューティングシステムの1つまたは複数のプロセッサ上で実行可能な命令がプログラムされた非一時的コンピュータ可読媒体。

JP2022580073A 2020-06-25 2021-06-25 文書処理および応答生成システム Pending JP2023532669A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063043906P 2020-06-25 2020-06-25
US63/043,906 2020-06-25
PCT/US2021/039145 WO2021263138A1 (en) 2020-06-25 2021-06-25 Document processing and response generation system

Publications (1)

Publication Number Publication Date
JP2023532669A true JP2023532669A (ja) 2023-07-31

Family

ID=79031008

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022580073A Pending JP2023532669A (ja) 2020-06-25 2021-06-25 文書処理および応答生成システム

Country Status (9)

Country Link
US (5) US20210406293A1 (ja)
EP (1) EP4172805A4 (ja)
JP (1) JP2023532669A (ja)
KR (1) KR20230025714A (ja)
CN (1) CN116157790A (ja)
AU (1) AU2021298000A1 (ja)
CA (1) CA3184248A1 (ja)
GB (1) GB2611716A (ja)
WO (1) WO2021263138A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11544446B2 (en) * 2018-11-29 2023-01-03 Sap Se Support hierarchical distribution of document objects
US20210289264A1 (en) * 2020-03-12 2021-09-16 Motorola Solutions, Inc. Appearance search using a map
US20220027578A1 (en) * 2020-07-27 2022-01-27 Nvidia Corporation Text string summarization
US11853381B2 (en) * 2020-11-13 2023-12-26 Google Llc Hybrid fetching using a on-device cache
US20220414168A1 (en) * 2021-06-24 2022-12-29 Kyndryl, Inc. Semantics based search result optimization
US11797611B2 (en) * 2021-07-07 2023-10-24 International Business Machines Corporation Non-factoid question answering across tasks and domains
US11816636B2 (en) * 2021-08-26 2023-11-14 Microsoft Technology Licensing, Llc Mining training data for training dependency model
US20230095180A1 (en) * 2021-09-29 2023-03-30 International Business Machines Corporation Question answering information completion using machine reading comprehension-based process
US11748405B2 (en) * 2021-10-15 2023-09-05 EMC IP Holding Company LLC Method and apparatus for presenting search results
US20230244706A1 (en) * 2022-02-03 2023-08-03 Naver Corporation Model globalization for long document summarization
US20240005096A1 (en) * 2022-07-01 2024-01-04 Maplebear Inc. (Dba Instacart) Attribute prediction with masked language model
WO2024015321A1 (en) * 2022-07-11 2024-01-18 Pryon Incorporated Methods and systems for improved document processing and information retrieval
US11860914B1 (en) * 2023-02-27 2024-01-02 Casetext, Inc. Natural language database generation and query system
US11995411B1 (en) 2023-02-28 2024-05-28 Casetext, Inc. Large language model artificial intelligence text evaluation system
US11972223B1 (en) 2023-06-30 2024-04-30 Casetext, Inc. Query evaluation in natural language processing systems

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5227874A (en) * 1986-03-10 1993-07-13 Kohorn H Von Method for measuring the effectiveness of stimuli on decisions of shoppers
US7716077B1 (en) * 1999-11-22 2010-05-11 Accenture Global Services Gmbh Scheduling and planning maintenance and service in a network-based supply chain environment
US20040117352A1 (en) * 2000-04-28 2004-06-17 Global Information Research And Technologies Llc System for answering natural language questions
JP3592228B2 (ja) * 2000-10-24 2004-11-24 Necパーソナルプロダクツ株式会社 磁気ヘッドクリーナ機構
KR100621784B1 (ko) * 2003-11-11 2006-09-13 학교법인 한국정보통신학원 사용자 단말 특성 기반의 멀티미디어 소비 방법과 시스템
US7565362B2 (en) 2004-11-11 2009-07-21 Microsoft Corporation Application programming interface for text mining and search
JP5105802B2 (ja) * 2005-09-07 2012-12-26 株式会社リコー 情報処理装置
US20070219958A1 (en) * 2006-03-20 2007-09-20 Park Joseph C Facilitating content generation via participant interactions
US8751327B2 (en) * 2006-03-20 2014-06-10 Amazon Technologies, Inc. Facilitating content generation via messaging system interactions
KR101112989B1 (ko) * 2008-04-11 2012-04-23 한국전자통신연구원 지능형 정보 서비스를 위한 계층적 문서 분류 장치 및 방법
US8380531B2 (en) * 2008-07-25 2013-02-19 Invivodata, Inc. Clinical trial endpoint development process
US8510198B2 (en) * 2009-06-18 2013-08-13 Fiduciary Benchmarks, Inc. System and method for evaluating defined contribution plans
WO2011016023A1 (en) * 2009-08-01 2011-02-10 Medingo Ltd. Methods, systems, and devices for interactive learning
WO2011094734A2 (en) * 2010-02-01 2011-08-04 Jumptap, Inc. Integrated advertising system
US20140222773A1 (en) * 2011-06-15 2014-08-07 Trinity College Dublin A network system for generating application specific hypermedia content from multiple sources
US9082035B2 (en) 2011-08-29 2015-07-14 Qualcomm Incorporated Camera OCR with context information
US20130103445A1 (en) * 2011-10-25 2013-04-25 Bazaarvoice, Inc. Method and system for smart question routing
US20130132308A1 (en) * 2011-11-22 2013-05-23 Gregory Jensen Boss Enhanced DeepQA in a Medical Environment
US9356574B2 (en) * 2012-11-20 2016-05-31 Karl L. Denninghoff Search and navigation to specific document content
US9507852B2 (en) * 2013-12-10 2016-11-29 Google Inc. Techniques for discriminative dependency parsing
KR101572911B1 (ko) * 2014-02-21 2015-12-02 한국과학기술원 문서 추천 방법, 문서 선택 방법 및 문서 추천 장치
US20150242802A1 (en) * 2014-02-24 2015-08-27 Bsharp Sales Enablers Private Limited Distributed learning system and method for presenting a sales pitch
US10276154B2 (en) 2014-04-23 2019-04-30 Lenovo (Singapore) Pte. Ltd. Processing natural language user inputs using context data
US10430445B2 (en) * 2014-09-12 2019-10-01 Nuance Communications, Inc. Text indexing and passage retrieval
US20160098737A1 (en) * 2014-10-06 2016-04-07 International Business Machines Corporation Corpus Management Based on Question Affinity
US20160196490A1 (en) * 2015-01-02 2016-07-07 International Business Machines Corporation Method for Recommending Content to Ingest as Corpora Based on Interaction History in Natural Language Question and Answering Systems
US11232466B2 (en) 2015-01-29 2022-01-25 Affectomatics Ltd. Recommendation for experiences based on measurements of affective response that are backed by assurances
US9916533B2 (en) * 2015-03-10 2018-03-13 International Business Machines Corporation Enhancement of massive data ingestion by similarity linkage of documents
US10108702B2 (en) 2015-08-24 2018-10-23 International Business Machines Corporation Topic shift detector
AU2017200378A1 (en) * 2016-01-21 2017-08-10 Accenture Global Solutions Limited Processing data for use in a cognitive insights platform
US10430426B2 (en) * 2016-05-03 2019-10-01 International Business Machines Corporation Response effectiveness determination in a question/answer system
US10169549B2 (en) * 2017-03-30 2019-01-01 Adobe Inc. Digital image processing including refinement layer, search context data, or DRM
US11373632B2 (en) * 2017-05-10 2022-06-28 Oracle International Corporation Using communicative discourse trees to create a virtual persuasive dialogue
US10726198B2 (en) 2017-10-17 2020-07-28 Handycontract, LLC Method, device, and system, for identifying data elements in data structures
US11016966B2 (en) * 2018-06-26 2021-05-25 Adobe Inc. Semantic analysis-based query result retrieval for natural language procedural queries
US11573991B2 (en) * 2018-11-30 2023-02-07 Samsung Electronics Co., Ltd. Deep reinforcement learning-based multi-step question answering systems
US10484542B1 (en) * 2018-12-28 2019-11-19 Genesys Telecommunications Laboratories, Inc. System and method for hybridized chat automation
US20200279105A1 (en) * 2018-12-31 2020-09-03 Dathena Science Pte Ltd Deep learning engine and methods for content and context aware data classification
US11281863B2 (en) * 2019-04-18 2022-03-22 Salesforce.Com, Inc. Systems and methods for unifying question answering and text classification via span extraction
WO2020219490A1 (en) * 2019-04-23 2020-10-29 Textio, Inc. Passively suggesting text in an electronic document
US11775775B2 (en) * 2019-05-21 2023-10-03 Salesforce.Com, Inc. Systems and methods for reading comprehension for a question answering task
US11687734B2 (en) * 2019-07-05 2023-06-27 Elsevier, Inc. Systems and methods to extract the context of scientific measurements using targeted question answering
US11705226B2 (en) * 2019-09-19 2023-07-18 Tempus Labs, Inc. Data based cancer research and treatment systems and methods
US11593672B2 (en) * 2019-08-22 2023-02-28 International Business Machines Corporation Conversation history within conversational machine reading comprehension
US11720793B2 (en) 2019-10-14 2023-08-08 Google Llc Video anchors
WO2021092260A1 (en) * 2019-11-05 2021-05-14 Strong Force Vcn Portfolio 2019, Llc Control tower and enterprise management platform for value chain networks
CN111026799B (zh) * 2019-12-06 2023-07-18 安翰科技(武汉)股份有限公司 胶囊内窥镜检查报告文本结构化方法、设备及介质
US11914954B2 (en) * 2019-12-08 2024-02-27 Virginia Tech Intellectual Properties, Inc. Methods and systems for generating declarative statements given documents with questions and answers
US11640505B2 (en) * 2019-12-09 2023-05-02 Salesforce.Com, Inc. Systems and methods for explicit memory tracker with coarse-to-fine reasoning in conversational machine reading
US11481388B2 (en) 2019-12-18 2022-10-25 Roy Fugère SIANEZ Methods and apparatus for using machine learning to securely and efficiently retrieve and present search results
US11709873B2 (en) * 2020-01-13 2023-07-25 Adobe Inc. Reader-retriever approach for question answering
US20210240775A1 (en) * 2020-02-03 2021-08-05 Intuit Inc. System and method for providing automated and unsupervised inline question answering
US20210279622A1 (en) * 2020-03-09 2021-09-09 Adobe Inc. Learning with limited supervision for question-answering with light-weight markov models
CN111159416B (zh) * 2020-04-02 2020-07-17 腾讯科技(深圳)有限公司 语言任务模型训练方法、装置、电子设备及存储介质
US11475303B2 (en) * 2020-04-14 2022-10-18 Microsoft Technology Licensing, Llc Spread neural networks
EP3907647A1 (en) * 2020-05-05 2021-11-10 Dassault Systèmes Improving similarity search of industrial component models
US11881210B2 (en) * 2020-05-05 2024-01-23 Google Llc Speech synthesis prosody using a BERT model
CN113673260A (zh) * 2020-05-15 2021-11-19 阿里巴巴集团控股有限公司 模型处理方法、装置、存储介质和处理器
US20210365500A1 (en) 2020-05-19 2021-11-25 Miso Technologies Inc. System and method for question-based content answering
US20210374524A1 (en) * 2020-05-31 2021-12-02 Salesforce.Com, Inc. Systems and Methods for Out-of-Distribution Detection
US11580975B2 (en) * 2020-06-01 2023-02-14 Salesforce.Com, Inc. Systems and methods for response selection in multi-party conversations with dynamic topic tracking
US20210374547A1 (en) 2020-06-01 2021-12-02 Nvidia Corporation Selecting annotations for training images using a neural network
US11410426B2 (en) 2020-06-04 2022-08-09 Microsoft Technology Licensing, Llc Classification of auditory and visual meeting data to infer importance of user utterances
US11574128B2 (en) * 2020-06-09 2023-02-07 Optum Services (Ireland) Limited Method, apparatus and computer program product for generating multi-paradigm feature representations
US11775839B2 (en) * 2020-06-10 2023-10-03 International Business Machines Corporation Frequently asked questions and document retrieval using bidirectional encoder representations from transformers (BERT) model trained on generated paraphrases
CN111475658B (zh) 2020-06-12 2020-12-25 北京百度网讯科技有限公司 知识表示学习方法、装置、设备以及存储介质
US20210390609A1 (en) 2020-06-12 2021-12-16 Nextsmarty Holdings Pte. Ltd System and method for e-commerce recommendations
US11983210B2 (en) * 2020-06-16 2024-05-14 Virginia Tech Intellectual Properties, Inc. Methods and systems for generating summaries given documents with questions and answers
US20220027413A1 (en) 2020-07-21 2022-01-27 Rivian Ip Holdings, Llc Inline search query refinement for navigation destination entry

Also Published As

Publication number Publication date
US20210406320A1 (en) 2021-12-30
CA3184248A1 (en) 2021-12-30
GB202301086D0 (en) 2023-03-08
GB2611716A (en) 2023-04-12
US20240070150A1 (en) 2024-02-29
US20210406735A1 (en) 2021-12-30
EP4172805A1 (en) 2023-05-03
US20210406293A1 (en) 2021-12-30
US11593364B2 (en) 2023-02-28
KR20230025714A (ko) 2023-02-22
US20210406264A1 (en) 2021-12-30
AU2021298000A1 (en) 2023-02-02
US11734268B2 (en) 2023-08-22
CN116157790A (zh) 2023-05-23
WO2021263138A1 (en) 2021-12-30
EP4172805A4 (en) 2024-06-19

Similar Documents

Publication Publication Date Title
US11593364B2 (en) Systems and methods for question-and-answer searching using a cache
US20170293627A1 (en) Dynamic semantic models having multiple indices
US10839136B2 (en) Generation of collateral object representations in collaboration environments
US10102246B2 (en) Natural language consumer segmentation
US11687570B2 (en) System and method for efficient multi-relational entity understanding and retrieval
US20230205824A1 (en) Contextual Clarification and Disambiguation for Question Answering Processes
US20230090050A1 (en) Search architecture for hierarchical data using metadata defined relationships
WO2022019973A1 (en) Enterprise knowledge graphs using enterprise named entity recognition
EP4182813A1 (en) Enterprise knowledge graph building with mined topics and relationships
US11573967B2 (en) Enterprise knowledge graphs using multiple toolkits
CN113971210B (zh) 一种数据字典生成方法、装置、电子设备及存储介质
WO2024015321A1 (en) Methods and systems for improved document processing and information retrieval
KR102532216B1 (ko) Esg 보조 툴을 이용하여 정형화된 esg 데이터로 이루어진 esg 데이터베이스를 구축하는 방법 및 이를 수행하는 esg 서비스 제공 시스템
KR20160007057A (ko) 의미 태깅된 자연어 질의의 의도에 부합하는 정보 추출 및 제공 방법 및 시스템
EP4182855A1 (en) Annotations for enterprise knowledge graphs using multiple toolkits
US9244921B2 (en) Altering relevancy of a document and/or a search query
US20240073465A1 (en) Fine-grained recommendation systems
KR102183815B1 (ko) 데이터 관리 시스템 및 데이터 관리 방법
US20220414129A1 (en) Contextual search in collaborative communications applications
WO2024015252A1 (en) Supervised summarization and structuring of unstructured documents
WO2023112041A1 (en) Enabling federated concept maps in logical architecture of data mesh
CN115525736A (zh) 查询改写方法及其装置、设备、介质
CN117931858A (zh) 数据查询方法、装置、计算机设备和存储介质
KR20170103270A (ko) 히스토리 탐색을 위한 인덱싱