JP6918140B2 - Generation of query variants using a trained generative model - Google Patents

Generation of query variants using a trained generative model Download PDF

Info

Publication number
JP6918140B2
JP6918140B2 JP2019558737A JP2019558737A JP6918140B2 JP 6918140 B2 JP6918140 B2 JP 6918140B2 JP 2019558737 A JP2019558737 A JP 2019558737A JP 2019558737 A JP2019558737 A JP 2019558737A JP 6918140 B2 JP6918140 B2 JP 6918140B2
Authority
JP
Japan
Prior art keywords
query
variant
trained
response
generative model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019558737A
Other languages
Japanese (ja)
Other versions
JP2020518912A (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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2020518912A publication Critical patent/JP2020518912A/en
Application granted granted Critical
Publication of JP6918140B2 publication Critical patent/JP6918140B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3338Query expansion
    • 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/242Query formulation
    • 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
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • 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/047Probabilistic or stochastic 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/0475Generative networks
    • 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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

トレーニング済み生成モデルを用いたクエリ変異形の生成に関する。 Regarding the generation of query variants using a trained generative model.

検索クエリのルールベースの書き換えが、検索システムのクエリ処理構成要素内で利用されてきた。たとえば、あるルールベースの書き換えは、「the」、「a」などの一定のストップワードをクエリから除去することによってクエリの書き換えを生成し得る。次いで、書き換えられたクエリが検索システムにサブミットされ得、書き換えられたクエリに応答する検索結果が返される。 Rule-based rewriting of search queries has been used within the query processing components of search systems. For example, a rule-based rewrite can generate a query rewrite by removing certain stopwords such as "the" and "a" from the query. The rewritten query can then be submitted to the search system, returning search results that respond to the rewritten query.

さらに、たとえばサブミットされたクエリ(たとえば、「人々はXも検索する(people also search for X)」)に関係する追加のクエリを推奨するために、類似のクエリの集合が、検索システムにおいて利用されてきた。所与のクエリに対する類似のクエリは、しばしばナビゲーショナルクラスタリングによって決定される。たとえば、「面白い猫のピクチャ(funny cat pictures)」というクエリについて、「面白い猫のピクチャ(funny cat pictures)」のサブミットに続いて、「キャプション付きの面白い猫のピクチャ(funny cat pictures with captions)」という類似のクエリがユーザによって頻繁にサブミットされていることに基づいて、その類似のクエリが決定され得る。したがって、所与のクエリについての類似のクエリが事前定義される。 In addition, a set of similar queries is utilized in the search system to recommend additional queries related to, for example, submitted queries (eg, "people also search for X"). I came. Similar queries to a given query are often determined by navigational clustering. For example, for the query "funny cat pictures", submit "funny cat pictures" followed by "funny cat pictures with captions". The similar query can be determined based on the frequent submission of the similar query by the user. Therefore, a similar query for a given query is predefined.

本明細書の実施形態は、サブミットされたクエリについてのクエリ変異形を生成することに関するシステム、方法、およびコンピュータ可読媒体を対象とする。多くの実施形態では、トレーニング済み生成モデルを利用して、クエリ変異形が実行時に生成される。生成モデルへのクエリのトークンの適用に基づいて、任意選択で生成モデルへの追加の入力特徴の適用に基づいて、クエリの変異形をアクティブに生成するのに生成モデルが利用され得るという点で、生成モデルは生産的である。このようにして、クエリに基づいて生成モデルがトレーニングされなかった場合であっても、任意のクエリの変異形を生成するのに生成モデルが利用され得る。したがって、新規なクエリについての変異形、およびいわゆる「テール」クエリ(すなわち、しきい値未満のサブミット頻度および/またはサブミット量のクエリ)についての変異形を生成するのに生成モデルが利用され得る。その結果、よりリッチなクエリ入力は、より効率的な関連結果の識別につながり得るので、クエリがより効果的に処理され得る。たとえば、単に低いサブミット頻度および/またはサブミット量であるというだけで、クエリは除外されない。効率の改善は、関連結果が取得され得る速度にあり得る。初期クエリが如何なる関連結果も生成しない場合にユーザが修正後のクエリを再サブミットすることを必要としないからである。開示した実施形態は、複数のクエリ変異形を自動的にテストすることを可能にする。変異形を生成するのに使用されるモデルのトレーニングを介して、結果の収束も保証され得、したがって、単に複数のクエリの同時処理によってではなく、目標とするクエリ変異形生成によって効率の改善が達成される。したがって、開示される方法を実施するプロセッサの処理能力および電力消費を含む、クエリを処理するのに必要とされる技術的リソースの使用が、本発明の実施形態を通じて最適化される。 Embodiments herein are directed to systems, methods, and computer-readable media relating to the generation of query variants for submitted queries. In many embodiments, a trained generative model is utilized to generate query variants at run time. Based on the application of query tokens to the generative model, and optionally the application of additional input features to the generative model, the generative model can be used to actively generate variants of the query. , The generative model is productive. In this way, the generative model can be used to generate variants of any query, even if the generative model was not trained based on the query. Therefore, generative models can be used to generate variants for new queries, and for so-called "tail" queries (ie, sub-threshold submit frequency and / or submit amount queries). As a result, richer query inputs can lead to more efficient identification of related results, allowing queries to be processed more effectively. For example, a query is not excluded simply because it has a low submit frequency and / or a submit amount. The improvement in efficiency can be in the rate at which the relevant results can be obtained. This is because the user does not need to resubmit the modified query if the initial query does not produce any relevant results. The disclosed embodiments make it possible to automatically test multiple query variants. Convergence of results can also be guaranteed through training of the model used to generate the mutant, thus improving efficiency by targeting query mutation generation rather than simply by simultaneous processing of multiple queries. Achieved. Therefore, the use of technical resources required to process a query, including the processing power and power consumption of a processor that implements the disclosed method, is optimized throughout the embodiments of the present invention.

いくつかの実施形態では、生成モデルは、1つまたは複数の「記憶層」を有するニューラルネットワークモデルなどのニューラルネットワークモデルである。記憶層は、長-短期記憶(「LSTM」)ユニットおよび/またはゲート付き再帰型ユニット(「GRU」)などの1つまたは複数の再帰型ニューラルネットワーク(RNN)ユニットを含む。 In some embodiments, the generative model is a neural network model, such as a neural network model with one or more "memory layers". The storage layer contains one or more recurrent neural network (RNN) units, such as long-short-term memory (“LSTM”) units and / or gated recurrent units (“GRU”).

生成モデルが記憶層を有するニューラルネットワークモデルであるいくつかの実施形態では、生成モデルはシーケンスツーシーケンスモデルである。たとえば、シーケンスツーシーケンスモデルは、クエリのトークンが(たとえば、トークンごと、または組合せごとに)モデルに対する入力として適用され得るものであり得、トークンの符号化が、ネットワークの層にわたって生成される。さらに、生成された符号化が、ネットワークの追加の層にわたって復号化され得、得られる復号化がクエリの変異形を(直接的または間接的に)示す。たとえば、得られる復号化がネットワークのソフトマックス層に適用され、クエリの変異形が生成され得る。それらの実施形態のいくつかのバージョンでは、生成モデルは、シーケンスツーシーケンスニューラル機械翻訳モデルと同一または類似のアーキテクチャを有し、クエリ変異形特有のトレーニングデータを利用してトレーニングされる。たとえば、クエリ変異形特有のトレーニングデータは、(たとえば、同義クエリ変異形生成のためにトレーニングするための)同一の文書に対する「クリック」をそれぞれ有するクエリ対、(たとえば、補足クエリ変異形生成(follow-up query variant generation)のためにトレーニングするための)連続してサブミットされたクエリ対、および/または(たとえば、正規化クエリ変異形生成のためにトレーニングするための)元のカノニカルクエリ対に基づき得る。そのようなモデルは、任意選択で、翻訳トレーニングデータに基づいて事前トレーニングされ得る。 In some embodiments where the generative model is a neural network model with a storage layer, the generative model is a sequence-to-sequence model. For example, a sequence-to-sequence model can be one in which the tokens of the query can be applied as input to the model (eg, per token, or per combination), and the coding of the tokens is generated across layers of the network. In addition, the generated coding can be decoded across additional layers of the network, and the resulting decoding indicates a variant (directly or indirectly) of the query. For example, the resulting decoding can be applied to the softmax layer of the network to generate variants of the query. In some versions of those embodiments, the generative model has the same or similar architecture as the sequence-to-sequence neural machine translation model and is trained using query variant-specific training data. For example, query variant-specific training data is a query pair that each has a "click" on the same document (for example, to train for synonymous query variant generation), (eg, supplemental query variant generation (follow)). Based on consecutively submitted query pairs (for training for -up query variant generation) and / or original canonical query pairs (for example, for training for normalized query variant generation) obtain. Such models can optionally be pre-trained based on translation training data.

いくつかの実施形態では、複数のタイプのクエリ変異形のうちの任意の1つの生成を可能にするように生成モデルがトレーニングされる点で、生成モデルは「マルチタスク」モデルとしてトレーニングされる。それらの実施形態のうちのいくつかでは、生成モデルの所与のパスについて生成されるべきクエリ変異形のタイプが、所与のパスにおけるモデルに適用されるタイプ値入力に基づいて示され得、タイプ値入力は、生成されるべきクエリ変異形のタイプを示す。クエリ変異形のタイプには、たとえば、同義クエリ、補足クエリ、汎化クエリ、正規化クエリ、言語翻訳クエリ、含意クエリ(entailment query)、仕様クエリ、および/または明確化クエリ(すなわち、明確化を促すためにユーザへの出力として提供されるクエリ)が含まれ得る。より高いまたは低い粒度のものを含む、追加および/または代替のタイプが定義されもよい。生成モデルのトレーニングの際に、様々なタイプからのトレーニングデータが利用され得、トレーニングデータの各インスタンスは、そのインスタンスについてのクエリ変異形のタイプを示し、トレーニング中にトレーニングインスタンス入力として利用され得るタイプ値入力を含む。これらの実施形態のうちのいくつかでは、そのような形でマルチタスクモデルをトレーニングすることは、様々なタイプのトレーニングデータにわたる情報共有を活用し得、それにより、トレーニングされるマルチタスクモデルがよりロバストな性能となり得る。 In some embodiments, the generative model is trained as a "multitasking" model in that the generative model is trained to allow the generation of any one of multiple types of query variants. In some of those embodiments, the type of query variant to be generated for a given path of the generative model can be indicated based on the type value input applied to the model in the given path. The type value input indicates the type of query variant to be generated. The types of query variants include, for example, synonymous queries, supplemental queries, generalized queries, canonical queries, language translation queries, entailment queries, specification queries, and / or clarification queries (ie, clarifications). Can include queries) provided as output to the user to prompt. Additional and / or alternative types may be defined, including those with higher or lower particle size. Training data from various types can be used when training the generation model, and each instance of the training data indicates the type of query variant for that instance and can be used as a training instance input during training. Including value input. In some of these embodiments, training a multitasking model in such a manner can take advantage of information sharing across different types of training data, thereby making the multitasking model to be trained more It can be a robust performance.

トレーニング後に、マルチタスクモデルは、第1のパスにおけるクエリについて、(たとえば、第1のタイプ値を入力として適用することに基づいて)第1のタイプの変異形を生成し、第2のパスにおけるクエリについて、(たとえば、第2のタイプ値を入力として適用することに基づいて)第2のタイプの変異形を生成するために利用され得る。追加のタイプの追加の変異形が、追加のパスにおいて生成され得る。本明細書において説明されるように、マルチタスクモデルを利用して生成される追加のパスの量は、クエリごとに異なり得る。たとえば、追加のパスの量は、たとえば、あるパスにおいて生成される変異形、および/またはそのような変異形に対する応答に基づいて、その場その場で制御され得る。さらに、後続のパスが、前のパスにおいて生成された前の変異形と同一のタイプの変異形を生成し得る。それらの状況のうちのいくつかでは、本明細書において説明されるように、後続のパスは、前の変異形(たとえば、前の変異形自体および/または前の変異形についての応答)および/または他の前の変異形に基づく情報を利用し得、それによって、後続のパスの変異形が前の変異形とは異なるものとなり得る。 After training, the multitasking model produces variants of the first type for queries in the first pass (eg, based on applying the first type value as input) and in the second pass. For queries, it can be used to generate variants of the second type (eg, based on applying a second type value as input). Additional variants of additional types can be generated in additional paths. As described herein, the amount of additional paths generated using the multitasking model can vary from query to query. For example, the amount of additional paths can be controlled in-situ, for example, based on the variants produced in a path and / or the response to such variants. In addition, subsequent passes may generate variants of the same type as the previous variants generated in the previous path. In some of those situations, subsequent paths are the previous variant (eg, the previous variant itself and / or the response to the previous variant) and / as described herein. Alternatively, information based on other previous variants may be utilized, which may result in variants of the subsequent path being different from previous variants.

いくつかの実施形態では、元のクエリの複数の変異形が、生成モデルを利用して生成され、複数の変異形のそれぞれが検索システムにサブミットされ、複数の変異形のそれぞれについて、対応する応答が受信される。応答のうちの1つまたは複数に基づいて出力が生成され得、元のクエリに応答して出力が提供される。たとえば、出力は、(たとえば、検索システムによって提供される応答スコアによって示される)「最良の」応答、「最良の」応答のうちの複数、ならびに/あるいは(たとえば、変異形が補足タイプであるときの)変異形および対応する応答を含み得る。このように、および他の方式で、元のクエリの変異形に対する応答が、元のクエリに応答して、出力を提供するのに利用され得、出力が元のクエリに直接回答する。さらに、元のクエリの変異形に対する応答が、元のクエリに対する応答および/または他の変異形に対する応答を確証/確認するのに利用され得る。たとえば、元のクエリに対する「回答」の精度が、元のクエリの変異形について肯定的回答が提供されるかどうかに基づいて決定され得る。たとえば、補足タイプの変異形について他の肯定的回答が提供されるかに基づき、かつ/または(元のクエリの回答に類似の)肯定的な類似の回答が、同義タイプ、汎化タイプ、および/または言語翻訳タイプの変異形にとって利用可能であるかどうかに基づく。このようにして、および他の方式で、根拠のない/裏付けのない応答が決定されても提供される出力では利用され得ない、かつ/または提供される出力において利用されるとしても裏付けなしとのフラグが付けられ(たとえば、「潜在的にでたらめ」とのフラグが付けられ)得る。 In some embodiments, multiple variants of the original query are generated utilizing a generative model, each of the plurality of variants is submitted to the search system, and the corresponding response for each of the plurality of variants. Is received. Output can be generated based on one or more of the responses and the output is provided in response to the original query. For example, the output is the "best" response (eg, indicated by the response score provided by the search system), multiple of the "best" responses, and / or when the variant is a complementary type. ) Variants and corresponding responses may be included. In this way, and in other ways, the response to the variant of the original query can be used to respond to the original query and provide output, and the output answers the original query directly. In addition, the response to the original query variant can be used to confirm / confirm the response to the original query and / or the response to other variants. For example, the accuracy of the "answer" to the original query can be determined based on whether a positive answer is provided for the variant of the original query. For example, positive similar answers (similar to the original query answer) are synonymous, generalized, and based on whether other positive answers are provided for supplemental type variants. / Or based on availability for linguistic translation type variants. In this way, and in other ways, even if an unsubstantiated / unsubstantiated response is determined, it cannot be utilized in the provided output, and / or even if it is utilized in the provided output, it is unsubstantiated. Can be flagged (for example, flagged as "potentially bullshit").

いくつかの実施形態および/または状況では、複数の応答が、変異形に応答して検索システムによって返される。いくつかの他の実施形態および/または状況では、検索システムは、変異形に応答して単一の応答を提供する。それらの実施形態のうちのいくつかでは、単一の応答は、「回答」(たとえば、検索システムが見なした応答が、変異形に対する回答である)、または回答が未知であるという指示のどちらかを含む。他の実施形態では、回答が未知であるという指示は、検索システムによる任意の応答の欠如であり得る。検索システムは、複数のドメインにわたって動作する検索システム、または1つまたは複数の特定のドメイン(たとえば、オンラインショッピングドメイン)に個別化される検索システムであり得る。検索システムによって返される応答は、たとえば、検索結果(たとえば、文書からのコンテンツのスニペット、および文書へのリンク)、回答(たとえば、検索システムによって権威ある回答と見なされるコンテンツ)、イメージ、ビデオ、または知識グラフエンティティ、「ヌル」応答(たとえば、「回答なし」応答)であり得る。いくつかの状況では、追加または代替として、生成された変異形が、明確化を促すために(元のクエリをサブミットした)ユーザへの出力として提供され得、プロンプトに応答してユーザによって提供されたユーザインターフェース入力を明確にすることが、変異形に対する「応答」として利用され得る。そのようなユーザ提供の応答は、別の変異形生成に影響を及ぼすために利用され得る。たとえば、そのようなユーザ提供の応答は、変異形を生成する別の反復において生成モデルに渡されるコンテキストベクトルを生成するのに利用され得る。 In some embodiments and / or situations, multiple responses are returned by the search system in response to the variant. In some other embodiments and / or situations, the search system provides a single response in response to the variant. In some of those embodiments, a single response is either a "answer" (eg, the response that the search system sees is an answer to a variant) or an indication that the answer is unknown. Including. In other embodiments, the indication that the answer is unknown can be the lack of any response by the search system. A search system can be a search system that operates across multiple domains, or a search system that is personalized to one or more specific domains (eg, online shopping domains). The response returned by the search system is, for example, search results (for example, snippets of content from the document and links to the document), answers (for example, content that the search system considers to be authoritative answers), images, videos, or A knowledge graph entity can be a "null" response (for example, a "no answer" response). In some situations, as an addition or alternative, the generated variant may be provided as output to the user (submitting the original query) for clarification and provided by the user in response to the prompt. Clarifying the user interface input can be used as a "response" to the variant. Such user-provided responses can be utilized to influence the generation of other variants. For example, such a user-provided response can be used to generate a context vector that is passed to the generative model in another iteration that produces the variant.

いくつかの実施形態では、複数の生成モデルが生成され得、生成モデルのそれぞれが、ユーザの固有グループの過去のクエリサブミットに基づくトレーニングデータに基づいてトレーニングされる。たとえば、第1の生成モデルが、属性AおよびBを有するユーザの過去のクエリサブミットに基づくトレーニングデータに基づいて生成され得る。第2の生成モデルが、属性BおよびCを有するユーザの過去のクエリサブミットに基づくトレーニングデータに基づいて生成され得る。(属性Aではなく)属性BおよびCを有するユーザのサブミットされたクエリについて、第2の生成モデルが、そのユーザについての変異形を生成する際に(第1の生成モデルをも選択することなく)使用するために選択され得る。ユーザ属性BおよびCは、第2の生成モデルをトレーニングする際に利用されるものと合致するからである。このようにして、生成モデルが、複数の利用可能な生成モデルから選択され得、したがって、選択された生成モデルがユーザの属性に合わせられる。この結果、選択された生成モデルを利用して、ユーザにとってより適切なクエリ変異形が生成され得る。たとえば、科学研究者について、たとえばフリーランスライタと比べて非常に異なる変異形が生成され得る。 In some embodiments, multiple generative models can be generated, each of which is trained based on training data based on past query submissions of a unique group of users. For example, a first generative model can be generated based on training data based on past query submissions of users with attributes A and B. A second generative model can be generated based on training data based on past query submissions of users with attributes B and C. For submitted queries for users with attributes B and C (rather than attribute A), when the second generative model generates a variant for that user (without even selecting the first generative model). ) Can be selected for use. This is because the user attributes B and C match those used when training the second generative model. In this way, the generative model can be selected from a plurality of available generative models, and thus the selected generative model is tailored to the user's attributes. As a result, the selected generative model can be used to generate more appropriate query variants for the user. For example, for scientific researchers, very different variants can be generated compared to, for example, freelance writers.

いくつかの実施形態では、複数の生成モデルが生成され得、生成モデルのそれぞれが、ユーザの特定の属性、特定の時間的属性、および/または他の属性などの特定の属性に関連する過去のクエリサブミットに基づくトレーニングデータに基づいてトレーニングされる。たとえば、第1の生成モデルが、オンラインショッピングタスクに関連する過去のクエリサブミットに基づくトレーニングデータに基づいて生成される。たとえば、過去のクエリサブミットがオンラインショッピング検索システムにサブミットされることに基づいて、ユーザがサブミットに関連してショッピングコンテンツ(たとえば、ある広告)を選択することに基づいて、検索結果がショッピング中心であることに基づいて、ユーザがサブミットに続いてトランザクションを完了することなどに基づいて識別され得る。第2の生成モデルが、異なる特定の属性に関連する過去のクエリサブミットに基づくトレーニングデータに基づいて生成され得る。たとえば、第2の生成モデルは、位置(たとえば、任意の位置、任意のレストラン位置、会合位置など)に移動するタスクに関連する過去のクエリサブミットに基づくトレーニングデータに基づいて生成され得る。たとえば、過去のクエリサブミットが、位置への移動前および/または移動中にサブミットされることに基づいて、スケジューリングされたカレンダ入力に時間的に近くにサブミットされることなどに基づいて識別され得る。ユーザのサブミットされたクエリについて、ユーザのタスクが予測され得、予測されるタスクに対応する生成モデルが、そのサブミットされたクエリについての変異形を生成するために選択される。たとえば、ユーザのカレンダ入力および/または電子通信が、ユーザが位置に移動中である(または位置に間もなく移動する)ことを示す場合、先行する例における第2の生成モデルが、そのモデルが位置に移動するタスクに関連することに基づいて選択され得る。このようにして、生成モデルが、複数の利用可能な生成モデルから選択され得、したがって、選択された生成モデルが、携わっている、または携わるべき予測されるタスクなどのユーザタスクに合わせられる。この結果、選択された生成モデルを利用して、ユーザの現タスクにとってより適切なクエリ変異形が生成され得る。上記および本明細書の別の箇所で説明されるように、様々な実施形態では、生成モデルはマルチタスクモデルであり得、様々な異なるタイプのクエリ変異形の生成を可能にする。それらの様々な実施形態のうちのいくつかは、生成モデルの使用がユーザクエリを拡大する変異形を生成することを可能にし、クエリを拡張する複数の経路の探索を可能にする。そのような変異形は、同時または順番に、(たとえば、任意選択で、そのような変異形に基づくクエリを最初に発行することなく)ユーザへの提示のために提供され得、ユーザがクエリを拡張するための様々な経路を探索することを可能にする。追加または代替として、そのような変異形に対する応答が、検索システムから取得され得、応答が、ユーザへの提示のために提供され、ユーザがクエリに対する拡張のために様々な応答を探索することを可能にする。 In some embodiments, multiple generative models may be generated, each of which has a history associated with a particular attribute of the user, a particular temporal attribute, and / or other attributes. Training based on query submission Training based on data. For example, the first generative model is generated based on training data based on past query submissions related to online shopping tasks. For example, based on past query submissions being submitted to an online shopping search system, search results are shopping-centric based on the user selecting shopping content (eg, an ad) in relation to the submission. Based on that, the user can be identified based on completing the transaction following the submit. A second generative model can be generated based on training data based on past query submissions related to different specific attributes. For example, a second generative model can be generated based on training data based on past query submissions related to tasks moving to a position (eg, any position, any restaurant position, meeting position, etc.). For example, past query submits may be identified based on being submitted closer in time to the scheduled calendar input, based on being submitted before and / or during the move to a position. For a user's submitted query, the user's task can be predicted, and a generative model corresponding to the predicted task is selected to generate a variant for that submitted query. For example, if a user's calendar input and / or electronic communication indicates that the user is moving to a position (or is about to move to a position), then the second generative model in the preceding example is that model is in position. It can be selected based on what is relevant to the task to be moved. In this way, the generative model can be selected from a plurality of available generative models, and thus the selected generative model is tailored to user tasks such as the tasks that are or are expected to be involved. As a result, the selected generative model can be used to generate more appropriate query variants for the user's current task. As described above and elsewhere herein, in various embodiments, the generative model can be a multitasking model, allowing the generation of various different types of query variants. Some of those various embodiments allow the use of generative models to generate variants that extend the user query, allowing the search for multiple pathways that extend the query. Such variants may be provided simultaneously or sequentially (eg, optionally, without first issuing a query based on such variants) for presentation to the user, allowing the user to query. Allows you to explore various routes to extend. As an addition or alternative, a response to such a variant may be obtained from the search system, the response being provided for presentation to the user, and the user searching for various responses for extension to the query. to enable.

本明細書において説明されるいくつかの実施形態は、(たとえば、身体的障害のために)クエリを策定する際に困難を有し得るユーザによってサブミットされるクエリの変異形を生成するのに利用され得る。たとえば、クエリは、凝視誘導(gaze-guided)(または他の低労力)ユーザインターフェース入力を利用してユーザによって策定され得、本明細書において説明される技法に従ってクエリ変異形が生成される。このようにして、ユーザがそのような変異形を手動で生成することを必要とすることなく、クエリのクエリ変異形が生成され、ユーザに提示され得る。 Some embodiments described herein are used to generate variants of a query submitted by a user who may have difficulty formulating a query (eg, due to physical disability). Can be done. For example, the query can be formulated by the user using gaze-guided (or other low-labor) user interface input, and query variants are generated according to the techniques described herein. In this way, query variants of a query can be generated and presented to the user without the user having to manually generate such variants.

本明細書において説明されるように、生成モデルは、生成モデルへのクエリのトークンの適用に基づいて、任意選択で生成モデルへの追加の入力特徴の適用に基づいて、クエリの変異形をアクティブに生成するのに利用され得る。それらの実施形態のうちのいくつかでは、追加の入力特徴は、クエリをサブミットしたユーザに関連する属性、時間的属性、および/または他の特徴を含み得る。ユーザに関連する属性は、たとえば、ユーザの位置(たとえば、ケンタッキー州ルイビル、「レストラン」内、米国南東部)、ユーザに関連するタスク(たとえば、料理、車の修理、旅行の計画)、および/またはユーザの位置の天候を含み得る。ユーザに関連するタスクは、ユーザが現在携わっている、またはユーザが携わるべきタスクであり得る。いくつかの実施形態では、タスクは、たとえば、ユーザの記憶されたカレンダエントリ、ユーザの電子通信(たとえば、ユーザに送られ、またはユーザによって送られたチャットメッセージまたは他の通信)、ユーザによってサブミットされた過去のクエリなどの様々な信号に基づいて予測される。時間的属性は、たとえば、現在時刻、現在の曜日、および/または現在の日付を含み得る。このようにして、生成モデルを利用するクエリ変異形生成が、生成モデルへの追加の入力特徴の適用に基づいて、ユーザおよび/または現コンテキストに対してパーソナライズされ得る。 As described herein, the generative model activates a variant of the query based on the application of the query token to the generative model and optionally the application of additional input features to the generative model. Can be used to generate. In some of those embodiments, additional input features may include attributes, temporal attributes, and / or other features related to the user who submitted the query. User-related attributes are, for example, the user's location (for example, Louisville, Kentucky, within the "Restaurant", Southeastern United States), user-related tasks (for example, cooking, car repair, travel planning), and /. Or it may include the weather at the user's location. Tasks related to the user can be tasks that the user is currently involved in or should be involved in. In some embodiments, the task is submitted by the user, for example, a user's remembered calendar entry, a user's electronic communication (eg, a chat message sent to or sent by the user or other communication). Predicted based on various signals such as past queries. Time attributes can include, for example, the current time, the current day of the week, and / or the current date. In this way, query variant generation utilizing the generative model can be personalized for the user and / or the current context based on the application of additional input features to the generative model.

いくつかの実施形態では、生成モデルが、クエリの変異形を生成するのに利用され得、広告または他のコンテンツが、そのようなコンテンツが変異形のうちの1つまたは複数に割り当てられることに基づいて、クエリを生成したクライアントデバイスに提供される。それらの実施形態のうちのいくつかでは、生成モデルによって生成された変異形が、本明細書において説明されるような技法を利用して、クライアントデバイスおよび/またはクライアントデバイスのユーザに合わせられ得る。たとえば、生成モデルが、ユーザの属性に基づいて選択され得、かつ/またはユーザに関連する属性が、生成モデルに対する入力として提供され、変異形を生成する際に利用され得る。 In some embodiments, a generative model can be utilized to generate variants of a query, where an advertisement or other content is assigned such content to one or more of the variants. Based on, it is provided to the client device that generated the query. In some of those embodiments, the variants generated by the generative model can be tailored to the client device and / or the user of the client device using techniques as described herein. For example, a generative model may be selected based on the user's attributes and / or user-related attributes may be provided as input to the generative model and used in generating variants.

いくつかの実施形態では、生成モデルが、複数の時間ステップのそれぞれにおいて元のクエリの変異形(および/または変異形のトークン)を生成するのに利用される。それらの実施形態のうちのいくつかでは、所与の時間ステップにおいて、変異形が生成されるかどうか、および/またはどの変異形が生成されるかは、現状態特徴に基づき得る。現状態特徴は、たとえば、元のクエリに対する検索システム応答、前の時間ステップにおいて生成された元のクエリの変異形に対する検索システム応答、前の時間ステップにおいて生成された元のクエリの変異形、元のクエリの変異形(たとえば、ユーザに対するプロンプトとして提供される明確化変異形)に対するユーザ応答、および/または元のクエリに基づく特徴を含み得る。このようにして、セッション中のクエリの前に生成された変異形、以前に生成された変異形に対する応答、および/または元のクエリに基づいて、セッション中のクエリについての変異形生成に動的に影響を及ぼし得る。たとえば、いくつかの実施形態では、そのような現状態特徴のうちの1つまたは複数が、別の変異形が生成されるべきかどうか、または代替として、別の変異形の生成なしに、元のクエリに応答して前の変異形(および/または元のクエリ)に対する応答がその代わりに提供されるべきかどうかを決定するのに利用され得る。さらに、たとえば、いくつかの追加または代替の実施形態では、そのような現状態特徴のうちの1つまたは複数が、時間ステップでの変異形生成に影響を及ぼすように、生成モデルに対する入力として(直接的または間接的に)適用され得る。たとえば、現状態特徴のベクトル概要が、生成された変異形に影響を及ぼすように、生成モデルに対する入力として生成され、適用され得る。 In some embodiments, the generative model is utilized to generate variants (and / or mutant tokens) of the original query at each of multiple time steps. In some of those embodiments, whether or not variants are produced and / or which variants are produced in a given time step can be based on current state characteristics. Current state features are, for example, the search system response to the original query, the search system response to the variant of the original query generated in the previous time step, the variant of the original query generated in the previous time step, the original. Can include user responses to variants of the query (eg, clarification variants provided as a prompt to the user) and / or features based on the original query. In this way, it is dynamic to generate mutations for the query during the session based on the mutants generated before the query during the session, the response to the previously generated mutants, and / or the original query. Can affect. For example, in some embodiments, one or more of such current state features may or may not produce another variant, or, as an alternative, without the generation of another variant. Can be used to determine whether a response to a previous variant (and / or the original query) should be provided instead in response to a query for. Further, for example, in some additional or alternative embodiments, as input to the generative model, one or more of such current state features influence mutation generation in time steps ( Can be applied (directly or indirectly). For example, a vector overview of current state features can be generated and applied as input to the generative model to influence the generated variants.

いくつかの実施形態では、トレーニング済み制御モデルが、複数の時間ステップのそれぞれにおいて、変異形が生成されるべきかどうか、および/または時間ステップでの変異形生成に影響を及ぼすように生成モデルに対する入力として提供される特徴を決定するのに利用される。たとえば、トレーニング済み制御モデルは、フィードフォワードニューラルネットワークモデルまたは再帰型ニューラルネットワーク(RNN)モデルであり得る。現状態特徴は、トレーニング済み制御モデルに対する入力として適用され、モデルにわたって、別の変異形が生成されるべきかどうかを示す値、および/または変異形生成に影響を及ぼすように生成モデルに提供されるべき特徴(たとえば、現状態特徴のベクトル概要および/またはリワード信号)(別の変異形が生成されるべき場合)が生成され得る。このようにして、俳優-批評家環境内で、制御モデルは「批評家」として働き得、生成モデルは「俳優」として働き得る。したがって、トレーニング済み制御モデルは、観測された現状態特徴に基づいて、別の変異形が生成されるべきかどうか、および/またはそのような生成に影響を及ぼすための特徴を決定するのに利用され得る。このようにして、トレーニング済み制御モデルは、所与のクエリについて生成される追加の変異形の量を制御し得る。制御モデルは、たとえば、所与のクエリについて前の反復において生成された変異形および/またはそのような変異形に対する応答に基づいて、所与のクエリについて変異形生成の反復量を動的に決定するので、そのような制御により、生成される変異形の量がクエリごとに異なるものとなり得る。そのような動的制御により、しばしば、比較的大きい(たとえば、5超、10超、または15超)量の変異形が生成され、かつ/またはそのような変異形に対する比較的大きい量の応答が考慮され得ることを理解されたい。 In some embodiments, the trained control model is directed against the generative model to influence whether the variant should be generated at each of the multiple time steps and / or the mutation generation at the time step. It is used to determine the features provided as input. For example, the trained control model can be a feedforward neural network model or a recurrent neural network (RNN) model. Current state features are applied as inputs to the trained control model and are provided to the generative model to indicate whether another variant should be generated across the model and / or to influence mutation generation. Features to be generated (eg, vector summaries of current state features and / or reward signals) (if another variant should be generated) can be generated. In this way, within the actor-critic environment, the control model can act as a "critic" and the generative model can act as an "actor". Therefore, the trained control model is used to determine whether another variant should be generated and / or the characteristics to influence such generation, based on the observed current state features. Can be done. In this way, the trained control model can control the amount of additional variants generated for a given query. The control model dynamically determines the amount of mutation generation iterations for a given query, for example, based on the variants generated in the previous iteration for a given query and / or the response to such variants. As such, such control can result in different amounts of variants being generated from query to query. Such dynamic control often produces a relatively large amount of variants (eg, greater than 5, 10 or greater than 15) and / or a relatively large amount of response to such variants. Please understand that it can be considered.

いくつかの実施形態では、制御モデルおよび/または生成モデルは、強化学習に基づいて少なくとも部分的にトレーニングされ得る。それらの実施形態のうちのいくつかでは、制御モデルと生成モデルは別々にトレーニングされるが、互いに組み合わせてトレーニングされる。強化学習に基づいて制御モデルおよび/または生成モデルをトレーニングする際に、生成された変異形が検索システムにサブミットされ得、検索システムからの応答(および任意選択で応答の欠如)がリワードを示し得る。たとえば、「回答」応答である、クエリ変異形に対する応答について、(たとえば、「回答」応答についての、検索システムによって提供される応答スコアによって示される)回答応答の品質に比例する(もしくは、そうでなければ関連した)リワードが割り当てられ得る。それらの例のうちのいくつかでは、クエリ変異形に応答して応答が提供されない場合、かつ/または応答が(たとえば、検索システムからの出力に基づいて)「回答」応答ではないと見なされるとき、リワードは割り振られない。言い換えれば、最後の「回答」応答だけがリワードされ、(たとえば、モンテカルロQ学習手法で)そのようなリワードに基づいて中間アクションが更新される。このようにして、Q関数学習、または他の強化関数学習が、強化学習中に対話される検索システムによって提供される応答に対して調節されるリワードに基づいて行われ得る。本明細書において説明される強化学習の実施形態では、所与の時間ステップでの状態が、(たとえば、前述のような)状態特徴のうちの1つまたは複数によって示され、アクションはクエリ変異形であり(すなわち、別のクエリ変異形を生成し)、または「回答」応答を提供し得る。アクションスペースの各アクションが、対応する質問または「回答」応答を定義する文字列と対にされ得る。 In some embodiments, the control model and / or generative model can be trained at least partially based on reinforcement learning. In some of those embodiments, the control model and the generative model are trained separately, but in combination with each other. When training control and / or generative models based on reinforcement learning, the generated variants can be submitted to the search system and the response from the search system (and optionally lack of response) can be rewarded. .. For example, a response to a query variant, which is a "answer" response, is proportional to (or so is) the quality of the response response (eg, indicated by the response score provided by the search system for the "answer" response). Rewards (otherwise associated) can be assigned. In some of those examples, when no response is provided in response to a query variant and / or when the response is considered not to be a "answer" response (eg, based on output from the search system). , Rewards are not allocated. In other words, only the final "answer" response is rewarded, and intermediate actions are updated based on such rewards (for example, in Monte Carlo Q-learning techniques). In this way, Q-function learning, or other reinforcement function learning, can be based on rewards adjusted for the responses provided by the search system interacted during reinforcement learning. In the reinforcement learning embodiments described herein, the state at a given time step is indicated by one or more of the state features (eg, as described above), and the action is a query variant. (Ie, it produces another query variant), or can provide an "answer" response. Each action in the action space can be paired with a string that defines the corresponding question or "answer" response.

いくつかの実施形態では、クライアントデバイスを介してユーザのユーザインターフェース入力に基づいて生成される元のクエリを受け取ることを含む、1つまたは複数のプロセッサによって実施される方法が提供される。方法は、トレーニング済み生成モデルに対する入力として、元のクエリのトークンと、ユーザに関連する1つまたは複数の属性とを適用することをさらに含む。トレーニング済み生成モデルは、1つまたは複数の記憶層を有するシーケンスツーシーケンスディープニューラルネットワークモデルである。方法は、トレーニング済み生成モデルに対するトークンおよび1つまたは複数の属性の適用に基づいて、元のクエリの少なくとも1つの変異形を生成することをさらに含む。方法は、少なくとも1つの変異形と、少なくとも1つの変異形に対する少なくとも1つの検索システム応答との少なくとも1つに基づいて出力を生成することをさらに含む。方法は、元のクエリに応答して、クライアントデバイスを介した提示のために出力を提供することをさらに含む。 Some embodiments provide methods performed by one or more processors, including receiving the original query generated based on the user's user interface input via the client device. The method further includes applying the token of the original query and one or more attributes associated with the user as input to the trained generative model. The trained generative model is a sequence-to-sequence deep neural network model with one or more storage layers. The method further comprises generating at least one variant of the original query based on the application of tokens and one or more attributes to the trained generative model. The method further comprises generating output based on at least one variant and at least one search system response to at least one variant. The method further comprises responding to the original query and providing output for presentation through the client device.

いくつかの実施形態では、元のクエリを受け取ること、トレーニング済み生成モデルに対する入力として元のクエリのトークンを適用すること、およびトレーニング済み生成モデルに対する元のクエリのトークンの適用に基づいて、元のクエリの複数の変異形を生成することを含む、1つまたは複数のプロセッサによって実施される方法が提供される。元のクエリは、クライアントデバイスを介したユーザのユーザインターフェース入力に基づいて生成され得る。生成された変異形のそれぞれは元のクエリとは異なり、変異形を生成することは、トレーニング済み生成モデルの学習されたパラメータに基づいて変異形を生み出すことを含む。トレーニング済み生成モデルは、複数のタイプのクエリ変異形の生成を可能にするようにトレーニングされ、生成された変異形は、複数のタイプのクエリ変異形のうちの第1のタイプである第1の変異形と、複数のタイプのクエリ変異形のうちの第2のタイプである第2の変異形とを含む。方法は、複数の変異形のうちの少なくとも1つおよび/または複数の変異形のうちの少なくとも1つに対する少なくとも1つの検索システム応答に基づいて出力を生成すること、ならびに元のクエリに応答して、クライアントデバイスを介した提示のために出力を提供することをさらに含む。 In some embodiments, the original query is received, the original query token is applied as input to the trained generative model, and the original query token is applied to the trained generative model. A method performed by one or more processors is provided that involves generating multiple variants of the query. The original query can be generated based on the user's user interface input through the client device. Each of the generated variants is different from the original query, and generating a variant involves generating a variant based on the trained parameters of a trained generative model. The trained generative model is trained to allow the generation of multiple types of query variants, and the generated variants are the first of the multiple types of query variants. Includes variants and a second variant, the second of multiple types of query variants. The method produces output based on at least one search system response to at least one of the variants and / or at least one of the variants, and in response to the original query. Further includes providing output for presentation through the client device.

いくつかの実施形態では、クライアントデバイスを介したユーザのユーザインターフェース入力に基づいて生成される元のクエリを受け取ることを含む、1つまたは複数のプロセッサによって実施される方法が提供される。方法は、トレーニング済み生成モデルがユーザと共通の1つまたは複数の属性を有するユーザのグループの過去のクエリサブミットに基づいてトレーニングされることに基づいて、複数のトレーニング済み生成モデルから、トレーニング済み生成モデルを選択することをさらに含む。方法は、選択されたトレーニング済み生成モデルに対する入力として元のクエリのトークンを適用すること、トレーニング済み生成モデルに対する元のクエリのトークンの適用に基づいて、元のクエリの少なくとも1つの変異形を生成すること、ならびに少なくとも1つの変異形および/または少なくとも1つの変異形に対する少なくとも1つの検索システム応答に基づいて出力を生成することをさらに含む。方法は、元のクエリに応答して、クライアントデバイスを介した提示のために出力を提供することをさらに含む。 Some embodiments provide methods performed by one or more processors, including receiving the original query generated based on the user's user interface input through the client device. The method is a trained generative model from multiple trained generative models, based on the trained generative model being trained based on past query submissions of a group of users with one or more attributes in common with the user. Further includes selecting a model. The method is to apply the token of the original query as input to the selected trained generative model, and generate at least one variant of the original query based on applying the token of the original query to the trained generative model. And / or generating output based on at least one search system response to at least one variant and / or at least one variant. The method further comprises responding to the original query and providing output for presentation through the client device.

いくつかの実施形態では、元のクエリを受け取ること、トレーニング済み生成モデルに対する入力として元のクエリのトークンを適用すること、および入力に基づいて、トレーニング済み生成モデルを介して元のクエリの変異形を生成することを含む、1つまたは複数のプロセッサによって実施される方法が提供される。元のクエリは、クライアントデバイスを介したユーザのユーザインターフェース入力に基づいて生成され得る。トレーニング済み生成モデルを介して生成された変異形は元のクエリとは異なり、クエリの変異形を生成することは、トレーニング済み生成モデルの学習されたパラメータに基づいて変異形を生み出すことを含む。方法は、検索システムへのクエリの変異形のサブミットに基づいて、クエリの変異形についての変異形応答を決定すること、トレーニング済み生成モデルに追加の入力を適用すること、および追加の入力に基づいて、トレーニング済み生成モデルを介して元のクエリの追加の変異形を生成することをさらに含む。トレーニング済み生成モデルに適用された追加の入力は、元のクエリのトークンと、元のクエリの変異形の変異形トークンとの少なくとも1つを含む。生成された追加の変異形は、変異形および元のクエリとは異なり、元のクエリの追加の変異形を生成することは、トレーニング済み生成モデルの学習されたパラメータに基づいて追加の変異形を生み出すことを含む。方法は、検索システムへの元のクエリの追加の変異形のサブミットに基づいて、元のクエリの追加の変異形についての追加の変異形応答を決定することをさらに含む。方法は、変異形応答および/または追加の変異形応答に基づいて出力を生成すること、および元のクエリに応答して、クライアントデバイスを介した提示のために出力を提供することをさらに含む。 In some embodiments, receiving the original query, applying the token of the original query as input to the trained generative model, and based on the input, a variant of the original query through the trained generative model. Methods are provided that are performed by one or more processors, including the generation of. The original query can be generated based on the user's user interface input through the client device. Mutants generated through a trained generative model are different from the original query, and generating a variant of a query involves producing a variant based on the trained parameters of the trained generative model. The method is based on submitting a variant of the query to the search system to determine the variant response for the variant of the query, applying additional inputs to the trained generative model, and based on the additional inputs. It further includes generating additional variants of the original query through a trained generative model. The additional input applied to the trained generative model contains at least one of the tokens of the original query and the mutant tokens of the variants of the original query. The additional variants generated are different from the variants and the original query, and generating additional variants of the original query can generate additional variants based on the trained parameters of the trained generative model. Including producing. The method further comprises determining additional variant responses for additional variants of the original query based on submitting additional variants of the original query to the search system. The method further comprises generating output based on the mutant response and / or additional mutant response, and providing output for presentation through the client device in response to the original query.

いくつかの実施形態では、クライアントデバイスを介したユーザのユーザインターフェース入力に基づいて生成された元のクエリを受け取ることを含む、1つまたは複数のプロセッサによって実施される方法が提供される。方法は、ユーザについての予測されるタスクを決定すること、およびトレーニング済み生成モデルに対する入力として、元のクエリのトークンと、ユーザについての予測されるタスクの1つまたは複数のタスク属性とを適用することをさらに含む。方法は、トレーニング済み生成モデルに対するトークンおよび1つまたは複数のタスク属性の適用に基づいて、元のクエリの少なくとも1つの変異形を生成することをさらに含む。方法は、少なくとも1つの変異形および/または少なくとも1つの変異形に対する少なくとも1つの検索システム応答に基づいて出力を生成すること、ならびに元のクエリに応答して、クライアントデバイスを介した提示のために出力を提供することをさらに含む。 Some embodiments provide methods performed by one or more processors, including receiving the original query generated based on the user's user interface input through the client device. The method determines the expected task for the user and applies the token of the original query and one or more task attributes of the expected task for the user as input to the trained generative model. Including that further. The method further comprises generating at least one variant of the original query based on the application of tokens and one or more task attributes to the trained generative model. The method produces output based on at least one variant and / or at least one search system response to at least one variant, and for presentation through the client device in response to the original query. Further includes providing output.

いくつかの実施形態では、クライアントデバイスを介したユーザのユーザインターフェース入力に基づいて生成された元のクエリを受け取ることを含む、1つまたは複数のプロセッサによって実施される方法が提供される。方法は、ユーザについての予測されるタスクを決定することをさらに含む。方法は、トレーニング済み生成モデルが予測されるタスクに関連する過去のクエリサブミットに基づいてトレーニングされることに基づいて、複数のトレーニング済み生成モデルから、トレーニング済み生成モデルを選択することをさらに含む。方法は、選択されたトレーニング済み生成モデルに対する入力として元のクエリのトークンを適用すること、トレーニング済み生成モデルに対する元のクエリのトークンの適用に基づいて、元のクエリの少なくとも1つの変異形を生成すること、ならびに少なくとも1つの変異形および/または少なくとも1つの変異形に対する少なくとも1つの検索システム応答に基づいて出力を生成することをさらに含む。方法は、元のクエリに応答して出力を提供することをさらに含む。 Some embodiments provide methods performed by one or more processors, including receiving the original query generated based on the user's user interface input through the client device. The method further comprises determining the expected task for the user. The method further comprises selecting a trained generative model from a plurality of trained generative models based on the trained generative model being trained based on past query submissions associated with the predicted task. The method is to apply the token of the original query as input to the selected trained generative model, and generate at least one variant of the original query based on applying the token of the original query to the trained generative model. And / or generating output based on at least one search system response to at least one variant and / or at least one variant. The method further comprises providing output in response to the original query.

本明細書において開示される様々な実施形態は、本明細書において説明される方法のうちの1つまたは複数などの方法を実施するようにプロセッサ(たとえば、中央演算処理装置(CPU)、グラフィックス処理装置(GPU)、および/またはテンソル処理装置(TPU))によって実行可能な命令を記憶する1つまたは複数の非一時的コンピュータ可読記憶媒体を含み得る。さらに別の様々な実施形態は、本明細書において説明される方法のうちの1つまたは複数などの方法を実施するように記憶された命令を実行するように動作可能な1つまたは複数のプロセッサを含む1つまたは複数のコンピュータのシステムを含み得る。 Various embodiments disclosed herein include a processor (eg, a central processing unit (CPU), graphics) to implement a method such as one or more of the methods described herein. It may include one or more non-temporary computer-readable storage media that store instructions that can be executed by a processing unit (GPU) and / or a tensor processing unit (TPU). Yet another various embodiment is one or more processors capable of operating to execute a stored instruction to perform a method such as one or more of the methods described herein. May include a system of one or more computers including.

前述の概念および本明細書においてより詳細に説明される追加の概念のすべての組合せが、本明細書において開示される主題の一部として企図されていることを理解されたい。たとえば、本開示の終わりに現れる特許請求される主題のすべての組合せが、本明細書において開示される主題の一部として企図されている。 It should be understood that all combinations of the above concepts and additional concepts described in more detail herein are intended as part of the subject matter disclosed herein. For example, all combinations of claims appearing at the end of this disclosure are intended as part of the subject matter disclosed herein.

本明細書において開示した実施形態が実施され得る例示的環境のブロック図である。FIG. 5 is a block diagram of an exemplary environment in which the embodiments disclosed herein can be implemented. 本明細書において開示した実施形態に従って生成モデルをトレーニングすることの一例を示す図である。It is a figure which shows an example of training a generative model according to the embodiment disclosed in this specification. クエリの1つまたは複数の変異形を生成するのに生成モデルを利用することの一例を示す図である。It is a figure which shows an example of using a generative model to generate one or more variants of a query. 制御モデルが変異形の生成を制御するのに利用される、クエリの1つまたは複数の変異形を生成するのに生成モデルを利用することの別の例を示す図である。FIG. 5 illustrates another example of using a generative model to generate one or more variants of a query, where the control model is used to control the generation of variants. 本明細書において開示した実施形態に従って生成モデルをトレーニングする方法を示すフローチャートである。It is a flowchart which shows the method of training the generative model according to the embodiment disclosed in this specification. クエリの1つまたは複数の変異形を生成するのに生成モデルを利用する方法を示すフローチャートである。It is a flowchart which shows how to use a generative model to generate one or more variants of a query. 制御モデルが変異形の生成を制御するのに利用される、クエリの1つまたは複数の変異形を生成するのに生成モデルを利用する方法を示すフローチャートである。It is a flowchart showing how to use a generative model to generate one or more variants of a query, where the control model is used to control the generation of variants. 本明細書において開示した実施形態に従って生成された変異形に基づく出力を提供するための例示的グラフィカルユーザインターフェースを示す図である。FIG. 5 illustrates an exemplary graphical user interface for providing output based on variants generated according to the embodiments disclosed herein. 本明細書において開示した実施形態に従って生成された変異形に基づく出力を提供するための例示的グラフィカルユーザインターフェースを示す図である。FIG. 5 illustrates an exemplary graphical user interface for providing output based on variants generated according to the embodiments disclosed herein. コンピューティングデバイスの例示的アーキテクチャを示す図である。It is a figure which shows the exemplary architecture of a computing device.

図1は、本明細書において開示した実施形態が実施され得る例示的環境を示す。図1の例示的環境は、クライアントデバイス106、クエリシステム110、検索システム140、生成モデルトレーニングエンジン120、およびトレーニングインスタンスエンジン122を含む。そのようなシステムおよびエンジンはそれぞれ、たとえば通信ネットワークを通じて通信する、1つまたは複数のコンピューティングデバイス内で実施され得る。通信ネットワークは、インターネットなどの広域ネットワーク(WAN)、1つまたは複数のイントラネット、ならびに/あるいは1つまたは複数のバスサブシステムを含み得る。任意選択で、通信ネットワークは、1つまたは複数の標準通信技術、プロトコル、および/またはプロセス間通信技法を利用し得る。 FIG. 1 shows an exemplary environment in which the embodiments disclosed herein can be implemented. The exemplary environment of FIG. 1 includes a client device 106, a query system 110, a search system 140, a generative model training engine 120, and a training instance engine 122. Each such system and engine can be implemented within one or more computing devices that communicate, for example, through a communication network. Communication networks can include wide area networks (WANs) such as the Internet, one or more intranets, and / or one or more bus subsystems. Optionally, the communication network may utilize one or more standard communication techniques, protocols, and / or interprocess communication techniques.

クエリシステム110、検索システム140、生成モデルトレーニングエンジン120、およびトレーニングインスタンスエンジン122は、本明細書において説明される技法がその中で実施され得、かつ/または本明細書において説明されるシステム、構成要素、技法がそれとインターフェースし得る例示的な構成要素である。図1のシステム110、140、およびエンジン120、122のうちの1つまたは複数によって実施される動作はそれぞれ、複数のコンピュータシステムにわたって分散され得る。いくつかの実施形態では、システム110、140、およびエンジン120、122のうちの1つまたは複数の態様が単一のシステムとして組み合わされ得、かつ/あるいは1つまたは複数の態様がクライアントデバイス106上で実施され得る。たとえば、それらの実施形態のうちのいくつかでは、クエリシステム110の態様が検索システム140の態様と組み合わされ得る。 The query system 110, search system 140, generative model training engine 120, and training instance engine 122 are systems, configurations in which the techniques described herein can be performed and / or described herein. Elements and techniques are exemplary components that can interface with them. The operations performed by one or more of the systems 110, 140, and engines 120, 122 of FIG. 1 can each be distributed across multiple computer systems. In some embodiments, one or more aspects of the systems 110, 140, and engines 120, 122 may be combined as a single system and / or one or more aspects may be on the client device 106. Can be carried out at. For example, in some of those embodiments, aspects of query system 110 may be combined with aspects of search system 140.

クライアントデバイス106のユーザは、クライアントデバイス106の1つまたは複数のユーザインターフェース入力デバイスを介してユーザインターフェース入力を提供することによって、クライアントデバイス106を介してクエリを策定し得る。クライアントデバイス106はクエリシステム110にクエリをサブミットする。いくつかの状況では、クエリはテキスト形式である。他の状況では、クエリは音声および/または他の形式でサブミットされ、クエリシステム110(または他の構成要素)によってテキスト形式に変換され得る。 A user of client device 106 may formulate a query through client device 106 by providing user interface input through one or more user interface input devices of client device 106. Client device 106 submits a query to query system 110. In some situations, the query is in text format. In other situations, the query can be submitted in audio and / or other formats and converted to text format by the query system 110 (or other component).

受け取ったクエリについて、クエリシステム110は、受け取ったクエリの1つまたは複数の変異形を生成し、クライアントデバイス106への出力を提供させ、出力は、変異形のうちの1つまたは複数に基づく。いくつかの実施形態では、出力は、ユーザによる考慮のために、提案される代替変異形として提供されるべき変異形のうちの1つまたは複数を含む。いくつかの実施形態では、追加または代替として、出力は、検索システム140からの1つまたは複数の応答に基づくコンテンツを含み、応答は、検索システム140への変異形のうちの1つまたは複数のサブミットに基づく。検索システム140は、1つまたは複数のリソース166のアクセスに基づいて応答を決定し得、従来の情報検索技法などの様々な技法を利用し得る。応答に基づくコンテンツは、たとえば、応答に基づく(たとえば、応答と同一の)グラフィカルおよび/または可聴「回答」または他の検索結果であり得る。応答に基づくコンテンツが提供される場合、クエリシステム110は、クライアントデバイス106にコンテンツを直接的に提供し得、または検索システム140に、クライアントデバイス106にコンテンツを提供させ得る。いくつかの実施形態では、任意選択で、クエリシステム110および検索システム140は、同一のパーティによって制御され、かつ/または互いに協働して働き得る。1つまたは複数のデータベース内の生成された変異形に割り当てられる広告などの、追加および/または代替の出力が、生成された変異形に基づいて提供され得る。 For the received query, the query system 110 generates one or more variants of the received query and causes it to provide output to the client device 106, the output being based on one or more of the variants. In some embodiments, the output comprises one or more of the variants to be provided as proposed alternative variants for user consideration. In some embodiments, as an addition or alternative, the output contains content based on one or more responses from search system 140, and the response is one or more of variants to search system 140. Based on submission. The search system 140 may determine the response based on the access of one or more resources 166 and may utilize various techniques such as conventional information retrieval techniques. Response-based content can be, for example, response-based (eg, identical to the response) graphical and / or audible "answers" or other search results. If the response-based content is provided, the query system 110 may provide the content directly to the client device 106, or the search system 140 may cause the client device 106 to provide the content. In some embodiments, optionally, the query system 110 and the search system 140 may be controlled by the same party and / or work in concert with each other. Additional and / or alternative output, such as advertisements assigned to the generated variants in one or more databases, may be provided based on the generated variants.

図1では、クエリシステム110は、変異形エンジン112およびコントローラエンジン114を含む。いくつかの実施形態では、変異形エンジン112およびコントローラエンジン114の1つまたは複数の態様が、クライアントデバイス106などの、クエリシステム110とは別々の構成要素として組み合わされ、かつ/または実施され得る。いくつかの実施形態では、コントローラエンジン114が省略され得る。 In FIG. 1, the query system 110 includes a mutant engine 112 and a controller engine 114. In some embodiments, one or more embodiments of the variant engine 112 and the controller engine 114 may be combined and / or implemented as separate components from the query system 110, such as the client device 106. In some embodiments, the controller engine 114 may be omitted.

変異形エンジン112は、サブミットされたクエリについての1つまたは複数のクエリ変異形を生成するのに、1つまたは複数のトレーニング済み生成モデル152を利用する。いくつかの実施形態では、変異形エンジン112は、トレーニング済み生成モデル152を介して動作する1つまたは複数のCPU、GPU、および/またはTPUを含む。変異形エンジン112は、生成モデル152のうちの1つに対する入力としてクエリのトークンを適用すること、および入力に基づいて、生成モデルを介して変異形を生成することによって、サブミットされたクエリについての変異形を生成する。多くの実施形態では、変異形を生成する際に、変異形エンジン112は、生成モデルに対する入力として追加の入力特徴をさらに適用し、追加の入力特徴に基づいて変異形を生成する。 The variant engine 112 utilizes one or more trained generative models 152 to generate one or more query variants for submitted queries. In some embodiments, the variant engine 112 comprises one or more CPUs, GPUs, and / or TPUs operating through a trained generative model 152. The variant engine 112 applies a token of the query as input to one of the generative models 152, and based on the input, generates variants through the generative model for submitted queries. Generate variants. In many embodiments, in generating variants, the variant engine 112 further applies additional input features as inputs to the generative model and generates variants based on the additional input features.

いくつかの実施形態では、追加の入力特徴は、クエリをサブミットしたユーザに関連する属性、時間的属性、および/または他の特徴を含み得る。たとえば、元のクエリについての変異形を生成する際に、変異形エンジン112は、生成モデル152のうちの1つに対する入力として、元のクエリのトークン、クエリをサブミットしたユーザの属性(たとえば、ユーザの位置、ユーザが携わるタスク)、および時間的属性(たとえば、現在の曜日、現在時刻)を適用して、適用した入力に基づいて、生成モデルを介して変異形を生成し得る。 In some embodiments, the additional input features may include attributes, temporal attributes, and / or other features that are relevant to the user who submitted the query. For example, when generating a variant for the original query, the variant engine 112 takes the token of the original query as input to one of the generative models 152, the attributes of the user who submitted the query (eg, the user). The location, the task the user is involved in), and the temporal attributes (eg, current day of the week, current time) can be applied to generate variants through the generative model based on the input applied.

いくつかの実施形態では、追加または代替として、元のクエリについての変異形を生成することの所与の反復において適用された追加の入力特徴が、前の反復において生成された元のクエリの変異形に基づく特徴、および/またはそのような変異形に対する検索システム応答に基づく特徴を含む。たとえば、元のクエリについての変異形を生成する際に、変異形エンジン112は、複数の時間ステップのそれぞれにおいて変異形を生成し得る。所与の時間ステップにおいて、変異形エンジン112は、生成モデル152のうちの1つに対する入力として、元のクエリに対する検索システム応答、前の時間ステップにおいて生成された元のクエリの変異形に対する検索システム応答、前の時間ステップにおいて生成された元のクエリの変異形、および/または元のクエリに基づく特徴を適用し得る。このようにして、所与の時間ステップの変異形生成が、以前に生成された変異形、以前に生成された変異形に対する応答、および/または元のクエリの影響を受け得る。 In some embodiments, as an addition or alternative, additional input features applied in a given iteration of generating a variant for the original query are variants of the original query generated in the previous iteration. Includes shape-based features and / or features based on the search system response to such variants. For example, in generating a variant for the original query, the variant engine 112 may generate a variant at each of multiple time steps. At a given time step, the variant engine 112 receives a search system response to the original query as input to one of the generative models 152, a search system for variants of the original query generated in the previous time step. Responses, variants of the original query generated in the previous time step, and / or features based on the original query can be applied. In this way, mutation generation at a given time step can be affected by previously generated mutations, responses to previously generated mutations, and / or the original query.

いくつかの実施形態では、追加または代替として、元のクエリについての変異形を生成する所与の反復において適用された追加の入力特徴がタイプ値を含む。たとえば、いくつかの実施形態では、生成モデル152のうちの1つは、複数のタイプのクエリ変異形のうちのいずれか1つの生成を可能にするようにトレーニングされるという点で、「マルチタスク」モデルであり得る。それらの実施形態のうちのいくつかでは、変異形エンジン112は、生成モデル152のうちの1つに対する入力として、生成されるべきクエリ変異形のタイプを示すタイプ値を適用し得る。クエリ変異形のタイプには、たとえば、同義クエリ、補足クエリ、汎化クエリ、正規化クエリ、言語翻訳クエリ、および/または含意クエリが含まれ得る。いくつかの実施形態では、変異形エンジン112は、変異形を生成する複数の反復のそれぞれにおいて異なるタイプ値を選択し、それによって、同一の生成モデルを利用して異なるタイプの複数の変異形を生成する。 In some embodiments, additional or alternative additional input features applied in a given iteration that generate variants for the original query include type values. For example, in some embodiments, one of the generative models 152 is trained to allow the generation of any one of multiple types of query variants. Can be a model. In some of those embodiments, the variant engine 112 may apply a type value indicating the type of query variant to be generated as input to one of the generative models 152. Types of query variants can include, for example, synonymous queries, supplemental queries, generalized queries, normalized queries, linguistic translation queries, and / or implication queries. In some embodiments, the variant engine 112 selects different type values for each of the multiple iterations that generate the variant, thereby utilizing the same generative model to generate multiple variants of different types. Generate.

いくつかの実施形態では、複数の生成モデル152が変異形エンジン112にとってアクセス可能であり、変異形エンジン112は、1つまたは複数のパラメータに基づいて、サブミットされたクエリについての変異形を生成するための複数の生成モデル152のうちの1つまたは複数のサブセットを選択する。たとえば、複数の生成モデル152が提供され得、生成モデルのそれぞれが、ユーザの固有グループの過去のクエリサブミットに基づくトレーニングデータに基づいてトレーニングされる。たとえば、第1の生成モデルが、属性AおよびBを有するユーザの過去のクエリサブミットに基づくトレーニングデータに基づいて生成され得る。第2の生成モデルが、属性BおよびCを有するユーザの過去のクエリサブミットに基づくトレーニングデータに基づいて生成され得る。(属性Aではなく)属性BおよびCを有するユーザのサブミットされたクエリについて、変異形エンジン112は、そのクエリについての変異形を生成する際に(第1の生成モデルをも選択することなく)第2の生成モデルを選択し得る。ユーザ属性BおよびCは、第2の生成モデルをトレーニングする際に利用されるものと合致するからである。 In some embodiments, multiple generative models 152 are accessible to the variant engine 112, which generates variants for the submitted query based on one or more parameters. Select one or a subset of multiple generative models 152 for. For example, multiple generative models 152 may be provided, each of which is trained based on training data based on past query submissions of a unique group of users. For example, a first generative model can be generated based on training data based on past query submissions of users with attributes A and B. A second generative model can be generated based on training data based on past query submissions of users with attributes B and C. For submitted queries for users with attributes B and C (rather than attribute A), the variant engine 112 will generate variants for that query (without even selecting the first generative model). A second generative model can be selected. This is because the user attributes B and C match those used when training the second generative model.

図1には、生成モデルトレーニングエンジン120およびトレーニングインスタンスエンジン122も示されている。トレーニングインスタンスエンジン122は、トレーニングインスタンスを生成し、トレーニングインスタンスデータベース164内にトレーニングインスタンスを記憶する。たとえば、トレーニングインスタンスエンジン122は、ユーザの大集団の過去のクエリサブミットを記憶する、サブミットされたクエリデータベース162に基づいて、複数のトレーニングインスタンスを生成し得る。生成モデルトレーニングエンジン120は、データベース164の記憶されたトレーニングインスタンスに基づいて、生成モデル152をトレーニングする。本明細書において説明されるように、いくつかの実施形態では、任意選択で、生成モデル152のうちの1つまたは複数は、トレーニングインスタンスデータベース164のトレーニングインスタンスに依拠しない強化学習技法を利用してさらにトレーニングされ得る。エンジン120、122、ならびにデータベース162および164の実施形態の追加の説明が、以下の図2に関する説明において与えられる。 Figure 1 also shows the generative model training engine 120 and the training instance engine 122. The training instance engine 122 creates a training instance and stores the training instance in the training instance database 164. For example, the training instance engine 122 may generate multiple training instances based on a submitted query database 162 that stores past query submissions for a large population of users. The generative model training engine 120 trains the generative model 152 based on the stored training instances in database 164. As described herein, in some embodiments, optionally, one or more of the generative models 152 utilize a training instance-independent reinforcement learning technique in the training instance database 164. Can be further trained. Additional instructions for embodiments of engines 120, 122, and databases 162 and 164 are provided in the description with respect to FIG. 2 below.

コントローラエンジン114は、設けられるとき、変異形エンジン112と協働して働き、変異形エンジン112が変異形を生成するかどうかを制御し、かつ/または変異形生成に影響を及ぼすパラメータを生成し、変異形エンジン112に提供する。任意選択で、コントローラエンジン114は、変異形エンジン112が変異形を生成するかどうかを制御する際に、かつ/または変異形生成に影響を及ぼすパラメータを生成する際に、1つまたは複数のトレーニング済み制御モデル154を利用する。いくつかの実施形態では、変異形エンジン112は、トレーニング済み制御モデル154を介して動作する1つまたは複数のCPU、GPU、および/またはTPUを含む。 When provided, the controller engine 114 works in concert with the mutant engine 112 to control whether the mutant engine 112 produces variants and / or to generate parameters that influence mutation generation. , Provided to the mutant engine 112. Optionally, the controller engine 114 trains one or more in controlling whether the mutant engine 112 produces mutations and / or in generating parameters that affect mutation generation. Use the completed control model 154. In some embodiments, the variant engine 112 comprises one or more CPUs, GPUs, and / or TPUs operating via a trained control model 154.

いくつかの実施形態では、コントローラエンジン114は、サブミットされたクエリについて、何らかの変異形がサブミットされたクエリについて変異形エンジン112によって生成されるべきであるかどうかを決定する。たとえば、コントローラエンジン114は、サブミットされたクエリ自体に基づいて、かつ/またはサブミットされたクエリについて検索システム140からの応答(それが存在する場合)に基づいてそのような決定を行い得る。たとえば、コントローラエンジン114は、回答応答が検索システム140によって返されない場合、または何らかの返された回答応答が不十分な品質である(たとえば、しきい値を満たすことができない検索システム提供のスコアを有する)場合にのみ、変異形を生成することを決定し得る。それらの実施形態のうちのいくつかでは、コントローラエンジン114は、サブミットされたクエリのトークンおよび/またはサブミットされたクエリに対する応答の特徴を、制御モデル154のうちの1つに適用し、変異形が生成されるべきであるかどうかを示す制御モデル154を介して出力を生成する。いくつかの追加または代替の実施形態では、コントローラエンジン114は、サブミットされたクエリのトークンおよび/または制御モデル154のうちの1つに対する応答の特徴を適用し、変異形を生成する際に生成モデルに対する入力として適用するために変異形エンジン112に提供される制御モデル154を介して出力を生成する(それによって、変異形生成に影響を及ぼす)。 In some embodiments, the controller engine 114 determines for a submitted query whether any variant should be generated by the variant engine 112 for the submitted query. For example, the controller engine 114 may make such a decision based on the submitted query itself and / or on the response (if any) from the search system 140 for the submitted query. For example, the controller engine 114 has a search system-provided score where the response is not returned by the search system 140, or some returned response is of inadequate quality (eg, the threshold cannot be met). ) Only in case can it be decided to generate a variant. In some of those embodiments, the controller engine 114 applies the token of the submitted query and / or the response characteristics to the submitted query to one of the control models 154 and the variant is It produces output through a control model 154 that indicates whether it should be generated. In some additional or alternative embodiments, the controller engine 114 applies the response characteristics to one of the submitted query tokens and / or control model 154 and generates a generative model in generating the variant. Generates output through the control model 154 provided to the mutation engine 112 for application as an input to (thus affecting mutation generation).

本明細書において説明されるように、いくつかの実施形態では、変異形エンジン112は、複数の時間ステップのそれぞれにおいて、サブミットされたクエリの変異形を生成する。それらの実施形態のうちのいくつかでは、コントローラエンジン114は、変異形生成がいつ停止すべきかを決定する。言い換えれば、変異形エンジン112が所与の時間ステップにおいて変異形を生成するかどうかは、コントローラエンジン114からの許可を条件とする。さらに、コントローラエンジン114は、各時間ステップについて、時間ステップでの変異形生成に影響を及ぼす特徴を提供し得る。変異形生成が停止すべきかどうかを決定する際に、かつ/または変異形生成に影響を及ぼす特徴を生成する際に、コントローラエンジン114は、1つまたは複数の制御モデル154のうちの少なくとも1つを利用し得る。 As described herein, in some embodiments, the variant engine 112 produces variants of the submitted query at each of the plurality of time steps. In some of those embodiments, the controller engine 114 determines when mutation generation should stop. In other words, whether the variant engine 112 produces variants in a given time step is subject to permission from the controller engine 114. In addition, the controller engine 114 may provide features that influence mutation generation at each time step for each time step. The controller engine 114 is at least one of one or more control models 154 in deciding whether mutagenesis should be stopped and / or in generating features that affect mutagenesis. Can be used.

一例として、コントローラエンジン114は、制御モデル154のうちの1つに対する入力として、元のクエリに対する検索システム応答、前の時間ステップにおいて変異形エンジン112によって生成された元のクエリの変異形に対する検索システム応答、前の時間ステップにおいて変異形エンジンによって生成された元のクエリの変異形、および/または元のクエリに基づく特徴を適用し得る。コントローラエンジン114は、適用された入力に基づいて、制御モデルを介して出力を生成し、出力を利用して、別の変異形を生成し、またはその代わりに変異形生成を停止するように変異形エンジン112に指示するかどうかを決定し得る。変異形生成が停止されるとき、コントローラエンジン114は、その代わりに、サブミットされたクエリに応答して、以前に生成された変異形および/または以前に生成された変異形に対する応答を出力として提供し得る。このようにして、俳優-批評家環境内で、コントローラエンジン114は「批評家」として働き得、変異形エンジン112は「俳優」として働き得る。コントローラエンジン114、制御モデル154のうちの1つ、および/またはコントローラエンジン114の変異形エンジン112との対話の実施形態の追加の説明が、以下で図4に関して説明される。 As an example, the controller engine 114 is a search system response to the original query as input to one of the control models 154, a search system for variants of the original query generated by the variant engine 112 in the previous time step. Responses, variants of the original query generated by the variant engine in the previous time step, and / or features based on the original query can be applied. The controller engine 114 mutates to generate an output through a control model based on the applied input and use the output to generate another variant, or instead stop mutating. It can be decided whether to instruct the shape engine 112. When mutagenesis is stopped, the controller engine 114 instead provides as output a response to previously generated mutagens and / or previously generated mutagens in response to the submitted query. Can be. In this way, within the actor-critic environment, the controller engine 114 can act as a "critic" and the mutant engine 112 can act as an "actor". An additional description of an embodiment of the interaction of the controller engine 114, one of the control models 154, and / or the variant engine 112 of the controller engine 114 is described below with respect to FIG.

図2を参照すると、生成モデル152の生成モデル152Aをトレーニングする一例が示されている。トレーニングインスタンス164Aが、トレーニングインスタンスデータベース164から取り出される。トレーニングインスタンス164Aは、トレーニングインスタンスエンジン122(図1)によって、たとえばユーザによって以前にサブミットされ、サブミットされたクエリデータベース162(図1)内に記憶された1対のクエリに基づいて生成され得る。一例として、クエリの対は、「ロジャームーアはダンディ2華麗な冒険においてアストンマーチンを運転したか(did roger moore drive an aston martin in the persuaders)」という前の時間のユーザのクエリと、(前の時間のクエリに対して同義タイプである)「ロジャームーアはダンディ2華麗な冒険においてどのような車を運転したか(what car did roger moore drive in the persuaders)」という後の時間の(たとえば、前の時間のクエリの直後の)ユーザのクエリとを含み得る。別の例として、クエリの対は、「レオナルドダビンチがモナリザを描いたか(did leonardo da vinci paint mona lisa)」という前の時間のユーザのクエリと、(前の時間のクエリに対する補足タイプである)「誰がレオナルドダビンチにモナリザを描くように依頼したか(who commissioned leonardo da vinci to paint the mona lisa)」という後の時間のユーザのクエリとを含み得る。 With reference to FIG. 2, an example of training the generative model 152A of the generative model 152 is shown. Training instance 164A is retrieved from the training instance database 164. Training instance 164A can be generated by the training instance engine 122 (Figure 1) based on a pair of queries previously submitted, for example by the user, and stored in the submitted query database 162 (Figure 1). As an example, the query pair is the user's query of the previous time, "did roger moore drive an aston martin in the persuaders", and (previous). A synonym for the time query) "what car did roger moore drive in the persuaders" (for example, before) Can include the user's query (immediately after the time query). As another example, the query pair is the previous time user's query "did leonardo da vinci paint mona lisa" and (a supplementary type to the previous time query). It can include a user's query for a later time, "who commissioned leonardo da vinci to paint the mona lisa".

トレーニングインスタンス164Aは、クエリ(たとえば、対のうちの前の時間のサブミットされたクエリ)、属性、およびタイプを含むトレーニングインスタンス入力を含む。属性は、たとえば、クエリをサブミットしたユーザの属性、クエリの時間的属性(たとえば、サブミットの曜日)、クエリに対する検索システム応答の特徴などを含み得る。タイプは、トレーニングインスタンス出力内にどのようなタイプの変異形が含まれるかを示すタイプ値であり得る。いくつかの実施形態では、タイプは人間のラベリングによって割り当てられ得、またはトレーニングインスタンス164Aを生成するのに利用されるクエリ対の特徴に基づいて(たとえば、クエリ対のクエリのサブミットの時間的分離の大きさ、クエリ対のクエリについての検索システム応答の比較に基づいて)トレーニングインスタンスエンジン122によって推論され得る。トレーニングインスタンス164Aはまた、変異形(たとえば、対のうちの後の時間にサブミットされたもの)を含むトレーニングインスタンス出力をも含む。 Training instance 164A contains training instance inputs that include queries (eg, submitted queries for the previous time of a pair), attributes, and types. Attributes can include, for example, the attributes of the user who submitted the query, the temporal attributes of the query (eg, the day of the week of submission), the characteristics of the search system response to the query, and so on. The type can be a type value that indicates what type of variant is included in the training instance output. In some embodiments, the type can be assigned by human labeling, or based on the characteristics of the query pair used to generate training instance 164A (for example, the temporal separation of query submissions in the query pair). Can be inferred by the training instance engine 122 (based on size, comparison of search system responses for query-to-query queries). Training instance 164A also includes training instance output containing variants (eg, those submitted at a later time in a pair).

生成モデルトレーニングエンジン120は、トレーニングインスタンスのトレーニングインスタンス入力を生成モデル152Aに対する入力として適用する。生成モデルトレーニングエンジン120は、適用された入力と、生成モデル152Aの現在学習されたパラメータとに基づいて、生成モデル152Aを介して出力をさらに生成する。生成モデルトレーニングエンジン120は、トレーニングインスタンス164Aのトレーニングインスタンス出力に対する生成された出力の比較に基づく勾配をさらに生成し、勾配に基づいて生成モデル152Aを更新する(たとえば、生成モデル152A全体を介して勾配を逆伝播する)。 The generative model training engine 120 applies the training instance input of the training instance as the input to the generative model 152A. The generative model training engine 120 further generates output through the generative model 152A based on the applied inputs and the currently learned parameters of the generative model 152A. The generative model training engine 120 further generates a gradient based on the comparison of the generated output to the training instance output of the training instance 164A and updates the generative model 152A based on the gradient (eg, gradient through the generative model 152A as a whole). Backpropagation).

適用された入力に基づいて出力を生成する際に、生成モデルトレーニングエンジン120は、入力のすべてまたは部分を生成モデル152Aのエンコーダ層153Aに適用し、エンコーダ層153A介して符号化を生成する。たとえば、入力の元のクエリのトークンがエンコーダ層153Aに適用され得る。エンジン120は、生成モデル152Aのデコーダ層154Aに符号化をさらに適用し、デコーダ層154Aを介して符号化の復号化を生成し得る。次いで、エンジン120は、生成された符号化をソフトマックス層155Aに適用し、生成された符号化の適用に基づいて、ソフトマックス層155Aを介して出力を生成する。いくつかの実施形態では、エンジン120は、入力の属性および/またはタイプを他の層に適用し、かつ/または「サイド入力」としてエンコーダ層153A、デコーダ層154A、および/またはソフトマックス層155Aのうちの1つに適用する。それらの実施形態のうちのいくつかでは、エンジン120は、デコーダ層154Aの上流側ではなく、エンコーダ層153Aの下流側の他の層に属性および/またはタイプを適用する。 In generating the output based on the applied inputs, the generative model training engine 120 applies all or part of the inputs to the encoder layer 153A of the generative model 152A and produces the coding through the encoder layer 153A. For example, the token of the original query of the input may be applied to encoder layer 153A. The engine 120 may further apply the coding to the decoder layer 154A of the generative model 152A and generate a decoding of the coding through the decoder layer 154A. The engine 120 then applies the generated coding to the softmax layer 155A and produces an output through the softmax layer 155A based on the application of the generated coding. In some embodiments, the engine 120 applies input attributes and / or types to other layers and / or as "side inputs" of encoder layer 153A, decoder layer 154A, and / or softmax layer 155A. Applies to one of them. In some of those embodiments, engine 120 applies attributes and / or types to other layers downstream of encoder layer 153A rather than upstream of decoder layer 154A.

図2は単一のトレーニングインスタンス164Aだけを示すが、多くの追加のトレーニングインスタンスがトレーニング生成モデル152Aにおいて利用されることを理解されたい。いくつかの実施形態では、単一のトレーニングインスタンス164Aおよび追加のトレーニングインスタンスが選択され、それによって、生成モデル152Aがいくつかの属性に特に適合されるようにトレーニングされることに留意されたい。たとえば、生成モデル152Aは、いくつかの属性を有するユーザの過去のサブミットに基づいて生成されるトレーニングインスタンスのみを選択する(またはトレーニングインスタンスに偏らせる)ことによってトレーニングされ得る。たとえば、トレーニングインスタンスのトレーニングインスタンス入力内に明示的に含まれるユーザの属性が、そのような選択において利用され得る。さらに、たとえば、生成モデル152Aは、いくつかのタスク属性に関連するトレーニングインスタンスのみを選択する(またはトレーニングインスタンスに偏らせる)ことによってトレーニングされ得る。たとえば、選択は、携わる(または携わるべき)いくつかのタスクに関連してサブミットされたクエリに偏り得る。いくつかの実施形態では、生成モデル152Aは、トレーニングインスタンス入力内に複数の異なる「タイプ」を含むトレーニングインスタンスを利用してトレーニングされることにも留意されたい。本明細書において説明されるように、これにより、複数の異なるタイプの変異形を生成し得、実行時に、対応するタイプ値を入力として適用することによって特定のタイプに偏り得るマルチタスクモデルの生成が可能となる。 Figure 2 shows only a single training instance 164A, but it should be understood that many additional training instances are utilized in the training generation model 152A. Note that in some embodiments, a single training instance 164A and additional training instances are selected, thereby training the generative model 152A to specifically fit some attributes. For example, the generative model 152A can be trained by selecting (or biasing towards) training instances that are generated based on the user's past submissions with several attributes. For example, user attributes explicitly contained within the training instance input of a training instance can be utilized in such a selection. Further, for example, the generative model 152A can be trained by selecting (or biasing towards) training instances only related to some task attributes. For example, selection can be biased towards queries submitted in relation to several tasks involved (or should be involved). It should also be noted that in some embodiments, the generative model 152A is trained utilizing a training instance that contains multiple different "types" within the training instance input. As described herein, this creates a multitasking model that can generate multiple different types of variants and, at run time, can be biased towards a particular type by applying the corresponding type values as inputs. Is possible.

図3は、クエリの1つまたは複数の変異形を生成するのに生成モデルを利用することの一例を示す。図3では、元のクエリおよびユーザの属性が、クライアントデバイス106から変異形エンジン112に送信される。いくつかの他の実施形態では、属性のうちの1つまたは複数(たとえば、すべて)が、クライアントデバイス106によってクエリと共に送信されないことがあり、さらにはクライアントデバイス106によって全く送信されないことがある。たとえば、ユーザの属性が、クライアントデバイスからリモートに記憶され得る。たとえば、属性がリモートに記憶され、(たとえば、他のクライアントデバイスを介した)ユーザの過去の対話に基づき、変異形エンジン112によってリモートストレージからアクセスされ得る。 Figure 3 shows an example of using a generative model to generate one or more variants of a query. In Figure 3, the original query and user attributes are sent from the client device 106 to the variant engine 112. In some other embodiments, one or more of the attributes (eg, all) may not be sent with the query by the client device 106, or even not at all by the client device 106. For example, a user's attributes can be stored remotely from a client device. For example, attributes are stored remotely and can be accessed from remote storage by the variant engine 112 based on the user's past interactions (eg, through other client devices).

変異形エンジン112は、生成モデル152のうちの少なくとも1つを利用して、元のクエリの1つまたは複数の変異形を生成する。変異形を生成する際に、変異形エンジン112は、生成モデル152のうちの1つを選択する際に属性を利用し得、かつ/または生成モデルのうちの1つに対する入力として属性のうちの1つまたは複数を適用し得る。変異形エンジン112は、生成モデルおよび/または他の特徴(たとえば、複数の変異形が反復的に生成される場合の、過去に生成された変異形)に元のクエリのトークンをさらに適用し得る。 The variant engine 112 utilizes at least one of the generative models 152 to generate one or more variants of the original query. In generating the variant, the variant engine 112 may utilize the attribute in selecting one of the generative models 152 and / or of the attributes as an input to one of the generative models. One or more may be applied. The variant engine 112 may further apply the tokens of the original query to the generative model and / or other features (eg, previously generated variants when multiple variants are generated iteratively). ..

いくつかの実施形態では、変異形エンジン112は、元のクエリに基づいて提供されるべき出力として変異形をクライアントデバイス106に送信する。いくつかの実施形態では、追加または代替として、変異形エンジン112は、検索システム140に変異形のうちの1つまたは複数を提供し、検索システム140は、変異形についての1つまたは複数の応答(たとえば、単一の回答検索結果、または複数の検索結果)を決定し、元のクエリに基づいて提供されるべき出力として応答をクライアントデバイスに送信する。 In some embodiments, the variant engine 112 sends the variant to the client device 106 as output that should be provided based on the original query. In some embodiments, as an addition or alternative, the variant engine 112 provides the search system 140 with one or more of the variants, which in turn provides one or more responses to the variant. Determine (for example, a single answer search result, or multiple search results) and send the response to the client device as output that should be provided based on the original query.

図4は、クエリの1つまたは複数の変異形を生成するのに生成モデルを利用することの別の例を示す。具体的には、図4は、制御モデルが変異形の生成を制御するのに利用される一例を示す。 Figure 4 shows another example of using a generative model to generate one or more variants of a query. Specifically, FIG. 4 shows an example in which a control model is used to control the generation of variants.

図4では、元のクエリおよびユーザの属性が、クライアントデバイス106からコントローラエンジン114に送信される。図3の場合と同じく、いくつかの他の実施形態では、属性のうちの1つまたは複数(たとえば、すべて)が、クライアントデバイス106によってクエリと共に送信されないことがあり、さらにはクライアントデバイス106によって全く送信されないことがある。 In Figure 4, the original query and user attributes are sent from the client device 106 to the controller engine 114. As in FIG. 3, in some other embodiments, one or more of the attributes (eg, all) may not be sent with the query by the client device 106, or even by the client device 106 at all. It may not be sent.

いくつかの実施形態では、コントローラエンジン114は、1つまたは複数の制御モデル154を利用して、元のクエリの変異形を生成するかどうかを決定する。たとえば、コントローラエンジン114は、元のクエリのトークン、元のクエリに対する検索システム応答、および/またはユーザの属性を制御モデル154のうちの1つに適用して、変異形を生成するかどうかを決定し得る。いくつかの他の実施形態では、コントローラエンジン114は、デフォルトで、少なくとも1つの変異形または元のクエリが生成されるべきであると決定し得る。 In some embodiments, the controller engine 114 utilizes one or more control models 154 to determine whether to generate a variant of the original query. For example, the controller engine 114 applies the token of the original query, the search system response to the original query, and / or the user's attributes to one of the control models 154 to determine whether to generate a variant. Can be done. In some other embodiments, the controller engine 114 may determine by default that at least one variant or original query should be generated.

コントローラエンジン114は、1つまたは複数の制御モデル154を介した出力に基づいて決定されたリワード信号を変異形エンジン112に提供し、現状態も提供する。現状態は、たとえば、元のクエリ、ユーザの属性、および/または一方もしくは両方に基づく特徴ベクトルを含み得、特徴ベクトルも、1つまたは複数の制御モデル154を介した出力に基づく。 The controller engine 114 provides the mutant engine 112 with a reward signal determined based on the output through one or more control models 154, and also provides the current state. The current state can include, for example, the original query, the user's attributes, and / or feature vectors based on one or both, and the feature vectors are also based on the output through one or more control models 154.

変異形エンジンは、元のクエリの1つまたは複数の変異形を生成するのに、生成モデル152のうちの少なくとも1つを利用し得る。変異形を生成する際に、変異形エンジン112は、提供された状態、および任意選択でリワード信号を利用し得る。たとえば、変異形エンジン112は、学習されたリワード関数にリワード信号を適用して、クエリ変異形を生成する際のリワードを決定し得る。変異形エンジン112は、検索システム140に変異形を提供する。それに応答して、検索システム140は、1つまたは複数の応答を生成し、コントローラエンジン114に応答を提供する。 The mutation engine may utilize at least one of the generative models 152 to generate one or more variants of the original query. In generating the variant, the variant engine 112 may utilize the reward signal in the provided state and optionally. For example, the variant engine 112 may apply a reward signal to a learned reward function to determine the reward for generating a query variant. The variant engine 112 provides variants to the search system 140. In response, the search system 140 generates one or more responses and provides the response to the controller engine 114.

コントローラエンジン114は、今までのところ生成された変異形および/またはそれらの対応する応答を利用して、別の変異形が変異形エンジン112によって生成されるべきかどうかを判定する。たとえば、コントローラエンジン114は、今までのところ生成された変異形のトークンおよび/または対応する応答の特徴を、制御モデル154のうちの1つに対する入力として適用し、入力に基づいて制御モデルを介して出力を生成し、出力を利用して、別の変異形が生成されるべきかどうかを決定し得る。いくつかの実施形態では、コントローラエンジン114は、入力の一部として、元のクエリのトークン、元のクエリに対する検索システム応答、および/またはユーザの属性を入力の一部としてさらに適用する。 The controller engine 114 utilizes the mutants generated so far and / or their corresponding responses to determine if another variant should be generated by the mutant engine 112. For example, the controller engine 114 applies the previously generated mutant tokens and / or corresponding response features as inputs to one of control model 154, and based on the inputs via the control model. The output can be used to determine if another variant should be generated. In some embodiments, the controller engine 114 further applies the token of the original query, the search system response to the original query, and / or the user's attributes as part of the input.

別の変異形が生成されるべきであるとコントローラエンジン114が決定する場合、コントローラエンジン114は、更新されたリワード信号および更新された現状態(たとえば、今までのところ生成された変異形および/または対応する変異形応答に基づいて更新される)を提供し得る。次いで、変異形エンジン112は、1つまたは複数の別の変異形を生成し、検索システム140に変異形を提供し得、対応する応答が再び提供される。次いで、コントローラエンジン114は、別の変異形および対応する応答に基づいて、別の変異形が生成されるべきかどうかを再び決定し得る。 If the controller engine 114 determines that another variant should be generated, the controller engine 114 will receive an updated reward signal and an updated current state (eg, the mutants generated so far and / /. Or updated based on the corresponding variant response). The variant engine 112 may then generate one or more alternative variants and provide the variant to search system 140, again providing the corresponding response. The controller engine 114 may then redetermine whether another variant should be generated based on another variant and the corresponding response.

所与の反復において、別の変異形が生成されるべきでないとコントローラエンジン114が決定する場合、コントローラエンジン114は、1つまたは複数の検索システム応答および/または1つまたは複数の生成された変異形を、元のクエリに基づいて提供されるべき出力としてクライアントデバイス106に送信する。たとえば、コントローラエンジン114は、すべての提供された応答を記憶し、応答のうちのただ1つを応答出力(たとえば、最高品質応答、または他の応答によっても確認された最高品質応答)として提供し得る。別の例として、コントローラエンジン114は、応答のうちの複数(たとえば、N個の最良の応答、応答の多様なセット)を提供し得る。 If, in a given iteration, the controller engine 114 determines that another variant should not be generated, the controller engine 114 will have one or more search system responses and / or one or more generated mutations. Send the form to client device 106 as output that should be provided based on the original query. For example, the controller engine 114 remembers all the responses provided and provides only one of the responses as a response output (for example, the highest quality response, or the highest quality response confirmed by other responses). obtain. As another example, the controller engine 114 may provide multiple of the responses (eg, N best responses, a diverse set of responses).

いくつかの実施形態では、制御モデル154、生成モデル152、コントローラエンジン114、および/または変異形エンジン112が、強化学習を利用してトレーニングされ得る。それらの実施形態のうちのいくつかでは、制御モデル154および/または生成モデル152が、当初は他の技法を利用してトレーニングされ、強化学習を通じて改良され得る。たとえば、生成モデル152は、当初は図2に関して説明されたようにトレーニングされ、強化学習を通じてさらにトレーニングされ得る。 In some embodiments, the control model 154, the generative model 152, the controller engine 114, and / or the variant engine 112 can be trained utilizing reinforcement learning. In some of those embodiments, control model 154 and / or generative model 152 can be initially trained using other techniques and improved through reinforcement learning. For example, the generative model 152 is initially trained as described with respect to FIG. 2 and can be further trained through reinforcement learning.

それらの実施形態のうちのいくつかでは、俳優-批評家アルゴリズム内で、俳優コントローラエンジン114および制御モデル154は「批評家」と見なされ、変異形エンジン112および生成モデル152は「俳優」と見なされ得る。一般に、俳優は変異形を生成し、環境を変異形でプローブする。環境は、たとえば検索システム140であり得る。一般に、批評家は、環境から来る証拠(たとえば、回答文字列などの応答、またはそのランク付けされたリスト)を累積して、グローバルアクション/判断dを生成し、グローバル状態sを維持し、俳優にリワード信号rおよびコンテキストcを提供する。 In some of those embodiments, within the actor-critic algorithm, the actor controller engine 114 and control model 154 are considered "critics," and the mutant engine 112 and generative model 152 are considered "actors." Can be done. In general, actors generate variants and probe the environment with the variants. The environment can be, for example, search system 140. In general, critics accumulate evidence from the environment (for example, responses such as answer strings, or their ranked list) to generate global actions / judgments d, maintain global state s, and actors. Provides a reward signal r and a context c to.

俳優および批評家の挙動は、2つの異なる時間スケールでの強化によって駆動され得る。俳優は、より細かい時間スケール(t'で索引付けされる)で動作し得る。各ステップにおいて、俳優は、コンテキストを条件として、次の変異形を生成する。批評家は、環境からの証拠をグローバル状態s内に累積する。いくつかの状況では、状態は、少なくとも元のクエリ、生成された変異形、および観測(たとえば、生成された変異形に対する検索システム応答)、ならびにネットワークに供給するのに使用されるベクトル概要hを含む(s=({qt,ot}1..T,ht))。グローバル状態を仮定すると、批評家は、各時間ステップにおいてグローバル判断dを行い、応答を放出し、または変異形生成およびより多くの証拠の蓄積のサイクルを続行する。批評家はまた、俳優にコンテキストを供給して、変異形生成、およびリワード信号を調整する。批評家は、状態-アクション対「Q関数」Q(st,dt)の値を直接モデル化する。Q関数のこの値は、リワード信号として俳優に渡される。Q関数は、応答(たとえば、元のクエリに対する応答)に関して定義されるグローバルリワード、および行われた決定dのシーケンスを使用してトレーニングされる。時間スケールの分離により、変異形生成およびグローバル意思決定という2つのタスクを別々にモデル化するが、エンドツーエンド性能を最適化するように一緒にトレーニングすることが可能となる。 The behavior of actors and critics can be driven by reinforcements on two different time scales. Actors can operate on a finer time scale (indexed by t'). At each step, the actor produces the following variants, subject to context. Critics accumulate evidence from the environment within the global state s. In some situations, the state at least gives the original query, the mutants generated, and the observations (eg, the search system response to the mutants generated), and the vector summary h used to feed the network. Includes (s = ({q t , o t } 1 .. T , h t )). Assuming a global state, critics make a global judgment d at each time step, release a response, or continue the cycle of mutagenesis and accumulation of more evidence. Critics also provide context to actors to coordinate mutation generation and reward signals. Critics directly model the value of state-action vs. "Q function" Q (s t , d t). This value of the Q function is passed to the actor as a reward signal. The Q function is trained using the global rewards defined for the response (eg, the response to the original query), and the sequence of decisions d made. Time-scale separation allows the two tasks of mutation generation and global decision-making to be modeled separately, but trained together to optimize end-to-end performance.

批評家が変異形生成およびより多くの証拠の蓄積のサイクルを続行する代わりに応答を放出するとき、終端状態に達する。俳優についてのアクションスペースが、A:={(a,<w>):a∈{question,answer},<w>∈Strings}と定義され得る。上式で、aは変異形で環境をプローブすること、または応答を放出することであり得る。アクションが、変異形または回答(放出された応答)を定義する文字列<w>と対にされる。いくつかの実施形態では、「変異形で環境をプローブする」アクションはリワードを受け取らず、「応答を放出するアクション」は、回答の品質に比例するリワードを受け取る。批評家は、現状態から予想される戻りE[Gs]にアクション(a,<w>)をマッピングするQ関数を学習し得る。「応答を放出するアクション」だけがリワードされる場合、予想される戻りはE[γκR]と表され、ただし[0,1]は割引きであり、kは最終状態までの反復数であり、Rは最終リワードである。 A terminal state is reached when critics release a response instead of continuing the cycle of mutagenesis and accumulation of more evidence. The action space for an actor can be defined as A: = {(a, <w>): a ∈ {question, answer}, <w> ∈ Strings}. In the above equation, a can be a variant probing the environment or releasing a response. The action is paired with the string <w> that defines the variant or answer (the released response). In some embodiments, the "probing the environment in a variant" action does not receive rewards, and the "responding action" receives rewards that are proportional to the quality of the response. Critics can learn a Q function that maps an action (a, <w>) to the expected return E [Gs] from the current state. If only the "action that emits a response" is rewarded, the expected return is expressed as E [γ κ R], where [0,1] is the discount and k is the number of iterations to the final state. , R is the final reward.

モンテカルロQ学習手法を利用してQ関数トレーニングが達成され得る。最終状態に達するまで変異形がサンプリングされ得、リワードが決定され、Q関数のすべての中間予測がγκに向かって更新され得る。俳優は変異形を生成し、たとえば、入力として、元のクエリ、最後の変異形、および場合によっては、変異形および応答の履歴を条件とするより多くの特徴を取り、1つまたは複数の別の変異形を返すシーケンスツーシーケンスモデルを含み得る。俳優は、モンテカルロポリシー勾配手法と共にトレーニングされ得る。環境から受け取られる応答セットは、これまでに見られた回答のメモリとして働く。応答セットは、俳優およびQ関数に特徴を提供し、かつ/または批評家が何らかの中間反復において見られた回答を返すことを可能にするのに使用され得る。 Q-function training can be achieved using the Monte Carlo Q-learning technique. Mutants can be sampled until the final state is reached, rewards are determined, and all intermediate predictions of the Q function can be updated towards γ κ. The actor produces variants, for example, as input, taking more features subject to the original query, the last variant, and, in some cases, the history of variants and responses, one or more distinctions. May include a sequence-to-sequence model that returns a variant of. Actors can be trained with the Monte Carlo policy gradient technique. The response set received from the environment acts as a memory of the answers that have been seen so far. The response set can be used to provide features for actors and Q functions and / or allow critics to return the answers seen in some intermediate iterations.

次に図5を参照すると、本明細書において開示される様々な実施形態に従って生成モデルをトレーニングする方法500を示すフローチャートが与えられる。便宜上、流れ図の動作が、動作を実施するシステムを参照しながら説明される。このシステムは、1つまたは複数のプロセッサ(たとえば、CPU、GPU、および/またはTPU)などの1つまたは複数の構成要素を含み得る。方法500の動作が特定の順序で示されているが、これは限定を意味するものではない。1つまたは複数の動作が並べ替えられ、省略され、または追加され得る。 Next, with reference to FIG. 5, a flowchart showing a method 500 for training the generative model according to various embodiments disclosed herein is provided. For convenience, the operation of the flow diagram will be described with reference to the system performing the operation. The system may include one or more components such as one or more processors (eg, CPU, GPU, and / or TPU). The behavior of Method 500 is shown in a particular order, but this does not imply a limitation. One or more actions can be sorted, omitted, or added.

ブロック552において、システムは、トレーニングインスタンスのグループを選択する。たとえば、生成モデルがマルチタスクモデルとなるように方法500においてトレーニングされるとき、システムは、グループが複数のタイプの変異形生成を実演するトレーニングインスタンスを含むようにグループを選択し得る。さらに、たとえば、追加または代替として、生成モデルが特定のグループのユーザに個別化されるようにトレーニングされている場合、システムは、トレーニングインスタンスが、特定のグループに準拠するユーザによるクエリの過去のサブミットに基づくトレーニングインスタンスのみを含み、または著しい量(たとえば、半分超、70%超)のトレーニングインスタンスを含むようにグループを選択し得る。さらに、たとえば、追加または代替として、生成モデルが特定のタスクに個別化されるようにトレーニングされている場合、システムは、トレーニングインスタンスが、特定のタスクに関連するクエリの過去のサブミットに基づくトレーニングインスタンスのみを含み、または著しい量(たとえば、半分超、70%超)のトレーニングインスタンスを含むようにグループを選択し得る。 At block 552, the system selects a group of training instances. For example, when the generative model is trained in method 500 to be a multitasking model, the system may select the group to include training instances that demonstrate multiple types of variant generation. In addition, for example, if the generative model is trained to be personalized to a particular group of users, as an addition or alternative, the system will submit the training instance to a past query by a user who conforms to that particular group. Groups may be selected to include only training instances based on, or to include significant amounts (eg, more than half, more than 70%) of training instances. In addition, for example, if the generative model is trained to be personalized to a particular task, for example, as an addition or alternative, the system will make the training instance a training instance based on past submissions of queries related to the particular task. Groups may be selected to include only or to include significant amounts (eg, more than half, more than 70%) of training instances.

ブロック554において、システムは、グループのトレーニングインスタンスを選択する。 At block 554, the system selects a training instance for the group.

ブロック556において、システムは、トレーニングインスタンスのトレーニングインスタンス入力を生成モデルに対する入力として適用する。トレーニングインスタンス入力は、たとえば、元のクエリの用語、属性(たとえば、元のクエリをサブミットしたユーザの属性)、および(元のクエリの変異形のタイプを示す)タイプ値を含み得る。 At block 556, the system applies the training instance input of the training instance as input to the generative model. The training instance input can include, for example, the terms and attributes of the original query (eg, the attributes of the user who submitted the original query), and the type values (indicating the type of variant of the original query).

ブロック558において、システムは、適用されたトレーニングインスタンス入力に基づいて、生成モデルを介して変異形を生成する。 At block 558, the system generates variants through a generative model based on the applied training instance inputs.

ブロック560において、システムは、トレーニングインスタンス出力(すなわち、トレーニングインスタンス出力内で示される変異形)に対する生成された変異形の比較に基づいて、トレーニングインスタンスについての誤りを決定する。 At block 560, the system determines an error for the training instance based on a comparison of the generated variants to the training instance output (ie, the variants shown within the training instance output).

ブロック562において、システムは、誤りに基づいて生成モデルを更新する。たとえば、誤りは、生成モデルを更新するために生成モデルを介して逆伝播される勾配であり得る。 At block 562, the system updates the generative model based on the error. For example, the error can be a gradient that is backpropagated through the generative model to update the generative model.

ブロック564において、システムは、グループ内に何らかの追加の未処理のトレーニングインスタンスがあるかどうかを決定する。そうである場合、システムはブロック554に進み、追加のトレーニングインスタンスを選択する。次いで、システムは、追加のトレーニングインスタンスに基づいてブロック556、558、560、および562を実施する。 At block 564, the system determines if there are any additional raw training instances in the group. If so, the system goes to block 554 and selects additional training instances. The system then implements blocks 556, 558, 560, and 562 based on additional training instances.

ブロック564の反復において、グループ内の何らかの追加の未処理のトレーニングインスタンスがない(または他のトレーニング基準が満たされた)とシステムが判定する場合、システムはブロック566に進み、トレーニングは終了する。 In the iteration of block 564, if the system determines that there are no additional unprocessed training instances in the group (or other training criteria have been met), the system proceeds to block 566 and training ends.

図5は特定の非バッチトレーニング手法を示すが、追加または代替として、バッチトレーニング(たとえば、トレーニングインスタンスのバッチに基づいて誤りが決定され、逆伝播される場合)がトレーニングにおいて利用され得ることを理解されたい。さらに、様々な実施形態では、方法500に基づいてトレーニング済み生成モデルが、本明細書において開示される技法に従ってさらにトレーニングされ得ることを理解されたい。たとえば、生成モデルが強化学習技法を利用してさらにトレーニングされ得、別々の制御モデルとは別々であるが、別々の制御モデルと組み合わせてさらにトレーニングされ得る。さらに、複数の生成モデルが生成される場合、方法500は、別のモデルを生成するために、ブロック552での異なる選択基準と共に反復され得る。 Figure 5 shows a particular non-batch training technique, but understands that batch training (for example, when an error is determined and backpropagated based on a batch of training instances) can be used in training as an addition or alternative. I want to be done. Further, it should be understood that in various embodiments, the trained generative model based on Method 500 can be further trained according to the techniques disclosed herein. For example, a generative model can be further trained using reinforcement learning techniques, and can be further trained separately from a separate control model, but in combination with a separate control model. Further, if multiple generative models are generated, method 500 can be repeated with different selection criteria in block 552 to generate another model.

次に図6を参照すると、本明細書において開示される様々な実施形態による、クエリの1つまたは複数の変異形を生成するのに生成モデルを利用する方法600を示すフローチャートが与えられる。便宜上、流れ図の動作が、動作を実施するシステムを参照しながら説明される。このシステムは、1つまたは複数のプロセッサ(たとえば、CPU、GPU、および/またはTPU)などの1つまたは複数の構成要素を含み得る。方法600の動作が特定の順序で示されているが、これは限定を意味するものではない。1つまたは複数の動作が並べ替えられ、省略され、または追加され得る。 Then, with reference to FIG. 6, a flowchart is provided showing a method 600 of utilizing the generative model to generate one or more variants of the query, according to various embodiments disclosed herein. For convenience, the operation of the flow diagram will be described with reference to the system performing the operation. The system may include one or more components such as one or more processors (eg, CPU, GPU, and / or TPU). The behavior of Method 600 is shown in a particular order, but this does not imply a limitation. One or more actions can be sorted, omitted, or added.

ブロック652において、システムはクエリを受け取る。 At block 652, the system receives the query.

ブロック654において、システムは、複数の候補生成モデルから生成モデルを選択する。いくつかの実施形態では、システムは、ブロック652のクエリをサブミットしたユーザの1つまたは複数の属性に基づいて生成モデルを選択する。たとえば、システムは、ユーザの1つまたは複数の属性に合致する属性に関連して生成モデルが記憶されることに基づいて、生成モデルを選択し得る。たとえば、生成モデルは、それらの属性を有するユーザの過去のクエリサブミットに基づくトレーニングインスタンスに基づいてトレーニングされることに基づいて、そのような属性に関連して記憶され得る。いくつかの実施形態では、ブロック654は省略され得る(たとえば、単一の生成モデルだけが利用可能であり得る)。 At block 654, the system selects a generative model from a plurality of candidate generative models. In some embodiments, the system selects a generative model based on the attributes of one or more of the users who submitted the query in block 652. For example, the system may choose a generation model based on the fact that the generation model is stored in relation to an attribute that matches one or more of the user's attributes. For example, generative models can be stored in relation to such attributes based on being trained based on training instances based on past query submissions of users with those attributes. In some embodiments, block 654 may be omitted (for example, only a single generative model may be available).

ブロック656において、システムは、クエリのトークンおよび追加の値を生成モデルに対する入力として適用する。クエリをサブミットしたユーザの属性、時間的属性、および/または受け取ったクエリについての検索システム応答についての属性などの様々な追加の値が適用され得る。1つの特定の例として、追加の値は、クエリをサブミットしたユーザの予測されるタスク属性を含み得る。予測されるタスク属性は、たとえば、ユーザによってコンピューティングデバイス上で最近閲覧されたコンテンツ、ユーザの記憶されたカレンダエントリ、および/またはユーザの電子通信に基づいて予測され得る。 At block 656, the system applies the query token and additional values as input to the generative model. Various additional values may be applied, such as the attributes of the user who submitted the query, the temporal attributes, and / or the attributes of the search system response for the received query. As one particular example, additional values may include the expected task attributes of the user who submitted the query. The predicted task attributes can be predicted, for example, based on the content recently viewed by the user on the computing device, the user's stored calendar entries, and / or the user's electronic communications.

ブロック658において、システムは、適用された入力に基づいて、生成モデルを介して1つまたは複数の変異形を生成する。 At block 658, the system generates one or more variants through a generative model based on the input applied.

ブロック660において、システムは、別の変異形を生成するかどうかを決定する。いくつかの実施形態では、システムは、これまでに生成された変異形のプロパティに基づいて、かつ/またはこれまでに生成された変異形についての検索システムからの応答に基づいて、別の変異形を生成するかどうかを決定する。たとえば、システムは、これまでに生成された変異形に対する応答が検索システムおよび/または応答の品質尺度によって見つかったかどうかに基づいて、別の変異形を生成するかどうかを決定し得る。たとえば、応答が見つからなかった場合、かつ/または品質尺度が1つまたは複数の品質基準を満たすことができなかった場合、システムは別の変異形を生成し得る。 At block 660, the system determines whether to generate another variant. In some embodiments, the system is based on the properties of the previously generated variant and / or the response from the search system for the previously generated variant. Decide whether to generate. For example, the system may decide whether to generate another variant based on whether the response to the previously generated variant was found by the search system and / or the quality scale of the response. For example, if no response is found and / or the quality scale fails to meet one or more quality criteria, the system may generate another variant.

ブロック660の反復において、システムが別の変異形を生成することを決定する場合、システムはブロック662に進み、ブロック656の後続の反復において生成モデルに対する入力として適用されるべき1つまたは複数の追加の値を更新する。たとえば、システムは、ブロック658の最新の反復において生成された変異形を反映するように、変異形に対する応答を反映するように、かつ/またはブロック658の次の反復についてのタイプ値を変更するように追加の値を更新し得る。次いで、システムは、更新された追加の値を使用してブロック656の別の反復を実施し、次いでブロック658および660に進む。 If, at the iteration of block 660, the system decides to generate another variant, the system proceeds to block 662 and one or more additions that should be applied as inputs to the generative model in subsequent iterations of block 656. Update the value of. For example, the system may change the type value for the next iteration of block 658 to reflect the response to the variant, to reflect the variant generated in the latest iteration of block 658, and / or to reflect the response to the variant. Additional values can be updated for. The system then performs another iteration of block 656 with the updated additional values, and then proceeds to blocks 658 and 660.

ブロック660の反復において、システムが別の変異形を生成しないことを決定する場合、システムはブロック664に進み、生成された変異形のうちの1つまたは複数に基づく出力を提供する。出力は、変異形のうちの1つまたは複数ならびに/あるいは変異形のうちの1つまたは複数に対する検索システム応答を含み得る。 If, in the iteration of block 660, the system decides not to generate another variant, the system proceeds to block 664 and provides output based on one or more of the generated variants. The output may include a search system response to one or more of the variants and / or one or more of the variants.

図7は、制御モデルが変異形の生成を制御するのに利用される、クエリの1つまたは複数の変異形を生成するのに生成モデルを利用する方法700を示すフローチャートである。便宜上、流れ図の動作が、動作を実施するシステムを参照しながら説明される。このシステムは、1つまたは複数のプロセッサ(たとえば、CPU、GPU、および/またはTPU)などの1つまたは複数の構成要素を含み得る。方法700の動作が特定の順序で示されているが、これは限定を意味するものではない。1つまたは複数の動作が並べ替えられ、省略され、または追加され得る。 FIG. 7 is a flow chart showing how the generative model is used to generate one or more variants of a query, where the control model is used to control the generation of variants. For convenience, the operation of the flow diagram will be described with reference to the system performing the operation. The system may include one or more components such as one or more processors (eg, CPU, GPU, and / or TPU). The behavior of Method 700 is shown in a particular order, but this does not imply a limitation. One or more actions can be sorted, omitted, or added.

ブロック752において、システムはクエリを受け取る。 At block 752, the system receives the query.

ブロック754において、システムは、現状態に基づいて、制御モデルを介して制御出力を生成する。たとえば、現状態は、現クエリのトークン、現クエリに対する検索システム応答、および/または他の特徴に基づき得る。 At block 754, the system produces a control output via a control model based on the current state. For example, the current state can be based on the token of the current query, the search system response to the current query, and / or other features.

ブロック756において、システムは、制御出力に基づいて、受け取ったクエリの変異形を生成するかどうかを決定する。いくつかの実施形態では、ブロック754およびブロック756の最初の反復が省略され得る。言い換えれば、それらの実施形態では、システムは、(たとえば、受け取ったクエリに対する検索システム応答の有効性をチェックするために)常に変異形を生成することを決定し得る。 At block 756, the system decides whether to generate a variant of the received query based on the control output. In some embodiments, the first iteration of block 754 and block 756 may be omitted. In other words, in those embodiments, the system may decide to always generate variants (eg, to check the validity of the search system response to the received query).

ブロック756の反復において、システムが変異形を生成しないことを決定する場合、システムはブロック766に進み、現検索システム応答および/または生成された変異形に基づく出力を提供する。 If, in the iteration of block 756, the system decides not to generate a variant, the system proceeds to block 766 to provide the current search system response and / or output based on the mutant generated.

ブロック756の反復において、システムが変異形を生成することを決定する場合、システムはブロック758に進む。 If, in the iteration of block 756, the system decides to generate a variant, the system proceeds to block 758.

ブロック758において、システムは、ブロック754の最新の反復において生成された制御出力に基づいて、リワード信号および/またはコンテキストを決定する。リワード信号は、本明細書において説明される、学習されたQ関数に基づき得、コンテキストは、たとえば、現状態および/または現状態のベクトル概要を含み得る。 At block 758, the system determines the reward signal and / or context based on the control output generated in the latest iteration of block 754. The reward signal can be obtained based on the learned Q function described herein, and the context can include, for example, a current state and / or a vector outline of the current state.

ブロック760において、システムは、受け取ったクエリおよびリワード信号ならびに/あるいはブロック758のコンテキストに基づいて、生成モデルを介して変異形を生成する。 At block 760, the system generates variants through a generative model based on the received queries and reward signals and / or the context of block 758.

ブロック762において、システムは、ブロック760において生成された変異形に対する応答を決定する。たとえば、システムは、検索システムに変異形をサブミットし、変異形に応答する検索システムから応答を受け取り得る。いくつかの状況では、検索システムは、応答を返さず、かつ/または「ヌル」を生成し、そのそれぞれは、応答(たとえば、回答)が利用可能でないことを示す。 At block 762, the system determines the response to the variants generated at block 760. For example, the system may submit a variant to a search system and receive a response from a search system that responds to the variant. In some situations, the search system does not return a response and / or produces a "null", each of which indicates that a response (eg, an answer) is not available.

ブロック764において、システムは、変異形、および変異形に対する応答に基づいて、現状態を更新する。次いで、システムはブロック754に戻り、ブロック764の更新を含む現状態に基づいて、制御モデルを介して制御出力を生成する。このようにして、ブロック764の後続の反復において、以前に生成された変異形および応答(すなわち、ブロック760および762の前の反復において生成されたもの)が、ブロック754の次の反復において考慮され得る。次いで、システムはブロック756に戻り、制御出力に基づいて、受け取ったクエリの別の変異形を生成するかどうかを決定する。システムが別の変異形を生成することを決定するとき、ブロック758の次の反復において提供されるリワード信号およびコンテキストは同様に、以前に生成された変異形および応答(すなわち、ブロック760および762の前の反復において生成されたもの)を条件とし得ることに留意されたい。このようにして、ブロック760の次の反復の変異形生成が、結果として以前に生成された変異形および応答の影響を受ける。 At block 764, the system updates the current state based on the variant and the response to the variant. The system then returns to block 754 to generate control output via the control model based on the current state, including updates to block 764. In this way, in subsequent iterations of block 764, previously generated variants and responses (ie, those generated in previous iterations of blocks 760 and 762) are considered in the next iteration of block 754. obtain. The system then returns to block 756 to determine whether to generate another variant of the received query based on the control output. When the system decides to generate another variant, the reward signal and context provided in the next iteration of block 758 will likewise be the previously generated variant and response (ie, blocks 760 and 762). Note that it can be conditional on (generated in the previous iteration). In this way, the next iteration of mutation generation in block 760 is affected by the resulting previously generated mutations and responses.

次に図8Aおよび図8Bを参照すると、本明細書において開示した実施形態に従って生成された変異形に基づく出力を提供するための例示的グラフィカルユーザインターフェース800Aおよび800Bが示されている。グラフィカルユーザインターフェース800Aおよび800Bは、クライアントデバイス106において(たとえば、クライアントデバイス106において実行中のブラウザ内、および/またはクライアントデバイス106において実行中の別のアプリケーション内で)提示され得る。 Then, with reference to FIGS. 8A and 8B, exemplary graphical user interfaces 800A and 800B are shown to provide output based on the variants generated according to the embodiments disclosed herein. The graphical user interfaces 800A and 800B may be presented on the client device 106 (eg, in a browser running on the client device 106 and / or in another application running on the client device 106).

図8Aでは、ユーザが「レオナルドダビンチがモナリザを描いたか(did leonardo da vinci paint mona lisa)」というクエリ891Aを提供した。それに応答して、応答892Aを含み、2つの変異形893Aをも含む出力が提供される。2つの変異形893Aは、本明細書において開示した実施形態に従って生成され得る。いくつかの実施形態では、変異形のそれぞれが選択可能であり、選択に応答して、対応する変異形を新しいクエリとしてサブミットさせる。いくつかの実施形態では、応答892Aも、本明細書において開示した実施形態に従って生成される変異形に基づく。たとえば、いくつかの状況では、応答892Aは、クエリ891Aの変異形(変異形893Aとは異なる変異形)についての応答であり得、かつ/または応答892Aはクエリ891Aについてのものであり得るが、(たとえば、それらの変異形も肯定的応答を生成したことを保証することによって)クエリの変異形に対する応答に基づいて検証され得る。 In Figure 8A, the user provided query 891A: "Did leonardo da vinci paint mona lisa". In response, an output is provided that includes response 892A and also contains two variants 893A. Two variants 893A can be generated according to the embodiments disclosed herein. In some embodiments, each of the variants is selectable, and in response to the selection, the corresponding variant is submitted as a new query. In some embodiments, response 892A is also based on the variants produced according to the embodiments disclosed herein. For example, in some situations, response 892A can be a response to a variant of query 891A (a variant different from variant 893A), and / or response 892A can be to query 891A, It can be validated based on the response to the variant of the query (for example, by ensuring that those variants also produced a positive response).

図8Bでは、ユーザが「ミケランジェロがモナリザを描いたか(did michelangelo paint the mona lisa)」というクエリ891Aを提供した。それに応答して、「いいえ」という応答892Bを含む出力が提供される。任意選択で、図8Bのボックス895Bは表示のために表示されないことがあるが、「いいえ」という応答892Bを生成するために、本明細書において説明される技法に従って生成され得る変異形の例として提示されるボックス895Bは、元のクエリ(「O」で示される)を表示し、元のクエリに応答して回答応答が検索システムによって生成されたことを示すために、括弧内の「Y」を含む。たとえば、回答応答は、「はい、ミケランジェロがモナリザを描きました(yes, Michelangelo did paint the Mona Lisa)」であり得る。しかしながら、回答応答を提供する代わりに、「補足」変異形である複数の変異形が、元のクエリの応答の正確さを検証するために生成される。具体的には、変異形V1、V2、およびV3が生成される。括弧内の「N」で示されるように、それらの補足変異形のそれぞれに応答して、検索システムによって「回答なし」応答が生成された。回答がそれらの複数の補足について利用可能でないことに鑑みて、コントローラエンジンは、元のクエリに対する「回答応答」が不正確であると決定し得る(補足は如何なる回答にも至らないからである)。その結果、コントローラエンジンは「いいえ」という応答892Bを提供する。 In Figure 8B, the user provided the query 891A, "Did michelangelo paint the mona lisa." In response, an output containing response 892B "No" is provided. Optionally, box 895B in FIG. 8B may not be visible for display, but as an example of a variant that can be generated according to the techniques described herein to generate a "no" response 892B. The box 895B presented displays the original query (indicated by an "O") and an "Y" in parentheses to indicate that the response response was generated by the search system in response to the original query. including. For example, the response could be "yes, Michelangelo did paint the Mona Lisa." However, instead of providing a response response, multiple variants that are "supplementary" variants are generated to verify the accuracy of the response of the original query. Specifically, variants V1, V2, and V3 are generated. The search system generated an "no answer" response in response to each of those complementary variants, as indicated by the "N" in parentheses. Given that the answer is not available for those multiple supplements, the controller engine can determine that the "answer response" to the original query is inaccurate (because the supplement does not lead to any answer). .. As a result, the controller engine provides a "no" response 892B.

グラフィカルインターフェースの例が図8Aおよび8Bにおいて提示されるが、追加または代替として、ユーザの発話入力に基づいてクエリが受け取られ得、かつ/または、追加または代替として、その変異形および/または応答がクライアントデバイスを介してユーザへの提示のために可聴に提供され得ることを理解されたい。 Examples of graphical interfaces are presented in Figures 8A and 8B, but as an addition or alternative, a query may be received based on the user's utterance input, and / or, as an addition or alternative, its variants and / or responses. It should be understood that it can be audibly provided for presentation to the user via the client device.

本明細書において説明されるシステムがユーザについての個人情報を収集し、または個人情報を利用し得る状況では、プログラムまたは特徴がユーザ情報(たとえば、ユーザのソーシャルネットワークについての情報、ソーシャルアクションまたは活動、職業、ユーザのプリファレンス、またはユーザの現在の地理的位置)を収集するかどうかを制御し、またはユーザにとってより関係のあり得るコンテンツをコンテンツサーバから受け取るかどうか、かつ/またはどのように受け取るかを制御する機会がユーザに与えられ得る。さらに、一定のデータが、記憶され、または使用される前に、個人識別可能情報が除去されるように、1つまたは複数の方式で扱われ得る。たとえば、ユーザについて個人識別可能情報が決定され得るようにユーザの識別が扱われ得、またはユーザの特定の地理的位置を決定することができないように、地理的位置情報が取得されるユーザの地理的位置が汎化され得る(都市、ZIPコード、州レベルなど)。したがって、ユーザは、ユーザについてどのように情報が収集および/または使用されるかに関する制御を有し得る。 In situations where the systems described herein may collect or utilize personal information about a user, the program or feature may be user information (eg, information about the user's social network, social actions or activities, etc. Controls whether to collect occupations, user preferences, or the user's current geographic location, or whether and / or how to receive content from the content server that may be more relevant to the user. The user may be given the opportunity to control. In addition, certain data may be treated in one or more ways so that personally identifiable information is removed before it is stored or used. For example, a user's geography from which geolocation information is obtained so that the user's identity can be treated so that personally identifiable information about the user can be determined, or the user's specific geographic location cannot be determined. Geolocation can be generalized (city, ZIP code, state level, etc.). Therefore, the user may have control over how information is collected and / or used for the user.

図9は、任意選択で、本明細書において説明される技法の1つまたは複数の態様を実施するのに利用され得る例示的コンピューティングデバイス910のブロック図である。コンピューティングデバイス910は、バスサブシステム912を介していくつかの周辺デバイスと通信する少なくとも1つのプロセッサ914(たとえば、CPU、GPU、および/またはTPU)を含む。これらの周辺デバイスは、たとえばメモリサブシステム925およびファイル記憶サブシステム926を含む記憶サブシステム924と、ユーザインターフェース出力デバイス920と、ユーザインターフェース入力デバイス922と、ネットワークインターフェースサブシステム915とを含み得る。入力および出力デバイスは、コンピューティングデバイス910とのユーザ対話を可能にする。ネットワークインターフェースサブシステム915は、外部ネットワークに対するインターフェースを提供し、他のコンピューティングデバイス内の対応するインターフェースデバイスに結合される。 FIG. 9 is a block diagram of an exemplary computing device 910 that can optionally be utilized to implement one or more aspects of the techniques described herein. The computing device 910 includes at least one processor 914 (eg, CPU, GPU, and / or TPU) that communicates with several peripheral devices via the bus subsystem 912. These peripheral devices may include, for example, a storage subsystem 924 including a memory subsystem 925 and a file storage subsystem 926, a user interface output device 920, a user interface input device 922, and a network interface subsystem 915. Input and output devices allow user interaction with the computing device 910. The network interface subsystem 915 provides an interface to the external network and is coupled to the corresponding interface device within other computing devices.

ユーザインターフェース入力デバイス922は、キーボードと、マウス、トラックボール、タッチパッド、グラフィックスタブレットなどのポインティングデバイスと、スキャナと、ディスプレイ内に組み込まれたタッチスクリーンと、音声認識システム、マイクロフォン、および/または他のタイプの入力デバイスなどのオーディオ入力デバイスとを含み得る。一般には、「入力デバイス」という用語の使用は、すべての可能なタイプのデバイス、およびコンピューティングデバイス910内に、もしくは通信ネットワーク上に情報を入力するための方式を含むものとする。 The user interface input device 922 includes a keyboard, a pointing device such as a mouse, trackball, touchpad, graphics tablet, a scanner, a touch screen built into the display, a voice recognition system, a microphone, and / or others. It may include an audio input device such as an input device of the type. In general, the use of the term "input device" shall include all possible types of devices, and methods for inputting information within the computing device 910 or over communication networks.

ユーザインターフェース出力デバイス920は、ディスプレイサブシステム、プリンタ、ファックスマシン、またはオーディオ出力デバイスなどの非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、投影デバイス、または通常のイメージを作成するための何らかの他の機構を含み得る。ディスプレイサブシステムはまた、オーディオ出力デバイスを介するような非視覚的表示をも提供し得る。一般に、「出力デバイス」という用語の使用は、すべての可能なタイプのデバイス、およびコンピューティングデバイス910からの情報をユーザまたは別のマシンもしくはコンピューティングデバイスに出力するための方式を含むものとする。 The user interface output device 920 may include a non-visual display such as a display subsystem, printer, fax machine, or audio output device. The display subsystem may include a flat panel device such as a cathode ray tube (CRT), a liquid crystal display (LCD), a projection device, or any other mechanism for creating a normal image. The display subsystem may also provide a non-visual display, such as through an audio output device. In general, the use of the term "output device" shall include all possible types of devices, and methods for outputting information from the computing device 910 to the user or another machine or computing device.

記憶サブシステム924は、本明細書において説明されるモジュールのうちのいくつかまたはすべての機能を提供するプログラミングおよびデータ構成を記憶する。たとえば、記憶サブシステム924は、本明細書において説明される方法の選択された態様を実施するための論理を含み得る。 The storage subsystem 924 stores programming and data structures that provide some or all of the functionality of the modules described herein. For example, the storage subsystem 924 may include logic for implementing selected aspects of the methods described herein.

これらのソフトウェアモジュールは一般に、プロセッサ914だけによって、または他のプロセッサと組み合わせて実行される。記憶サブシステム924内で使用されるメモリ925は、プログラム実行中の命令およびデータの記憶のためのメインランダムアクセスメモリ(RAM)930と、固定の命令が記憶される読取り専用メモリ(ROM)932とを含むいくつかのメモリを含み得る。ファイル記憶サブシステム926は、プログラムおよびデータファイルについての永続的記憶を提供し得、ハードディスクドライブ、ソリッドステートドライブ、フロッピィディスクドライブおよび関連する取外し可能媒体、CD-ROMドライブ、光学ドライブ、または取外し可能メディアカートリッジを含み得る。いくつかの実施形態の機能を実施するモジュールは、記憶サブシステム924内のファイル記憶サブシステム926によって、またはプロセッサ914によってアクセス可能な他のマシン内に記憶され得る。 These software modules are generally executed by processor 914 alone or in combination with other processors. The memory 925 used in the storage subsystem 924 consists of a main random access memory (RAM) 930 for storing instructions and data during program execution, and a read-only memory (ROM) 932 for storing fixed instructions. May include some memory including. The file storage subsystem 926 may provide persistent storage for programs and data files, including hard disk drives, solid state drives, floppy disk drives and related removable media, CD-ROM drives, optical drives, or removable media. May include cartridges. Modules that perform the functions of some embodiments may be stored by file storage subsystem 926 in storage subsystem 924 or in other machines accessible by processor 914.

バスサブシステム912は、コンピューティングデバイス910の様々な構成要素およびサブシステムに所期の通りに互いに通信させるための機構を提供する。バスサブシステム912が単一のバスとして概略的に示されているが、バスサブシステムの代替実装は複数のバスを使用し得る。 The bus subsystem 912 provides various components and subsystems of the computing device 910 to allow them to communicate with each other as desired. Although the bus subsystem 912 is schematically shown as a single bus, alternative implementations of the bus subsystem may use multiple buses.

コンピューティングデバイス910は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または任意の他のデータ処理システムもしくはコンピューティングデバイスを含む様々なタイプであり得る。コンピュータおよびネットワークの常に変化する性質のために、図9に示されるコンピューティングデバイス910の説明は、いくつかの実施形態を示すための特定の例に過ぎないものとする。図9に示されるコンピューティングデバイスよりも多くの、または少ない構成要素を有する、コンピューティングデバイス910の多くの他の構成が可能である。 The computing device 910 can be of various types, including workstations, servers, computing clusters, blade servers, server farms, or any other data processing system or computing device. Due to the ever-changing nature of computers and networks, the description of the computing device 910 shown in FIG. 9 shall be merely a specific example to illustrate some embodiments. Many other configurations of the computing device 910 are possible, with more or fewer components than the computing device shown in FIG.

106 クライアントデバイス
110 クエリシステム
112 変異形エンジン
114 コントローラエンジン
120 生成モデルトレーニングエンジン
122 トレーニングインスタンスエンジン
140 検索システム
152 生成モデル
152A 生成モデル
153A エンコーダ層
154 制御モデル
154A デコーダ層
155A ソフトマックス層
162 データベース
164 データベース
164A トレーニングインスタンス
166 リソース
800A グラフィカルユーザインターフェース
800B グラフィカルユーザインターフェース
891A クエリ
892A 応答
892B 応答
893A 変異形
895B ボックス
910 コンピューティングデバイス
912 バスサブシステム
914 プロセッサ
915 ネットワークインターフェースサブシステム
920 ユーザインターフェース出力デバイス
922 ユーザインターフェース入力デバイス
924 記憶サブシステム
925 メモリ
926 ファイル記憶サブシステム
930 メインランダムアクセスメモリ(RAM)
932 読取り専用メモリ(ROM)
106 Client device
110 query system
112 Mutant engine
114 controller engine
120 Generative model training engine
122 Training Instance Engine
140 search system
152 Generative model
152A generative model
153A encoder layer
154 Control model
154A decoder layer
155A Softmax layer
162 database
164 database
164A training instance
166 resources
800A graphical user interface
800B graphical user interface
891A query
892A response
892B response
893A variant
895B box
910 computing device
912 Bus subsystem
914 processor
915 Network Interface Subsystem
920 user interface output device
922 User Interface Input Device
924 Storage subsystem
925 memory
926 File storage subsystem
930 Main Random Access Memory (RAM)
932 Read-only memory (ROM)

Claims (36)

1つまたは複数のプロセッサによって実施される方法であって、
元のクエリを受け取るステップであって、前記元のクエリが、クライアントデバイスを介したユーザのユーザインターフェース入力に基づいて生成される、ステップと、
トレーニング済み生成モデルに対する入力として、前記元のクエリのトークンを適用するステップと、
前記トレーニング済み生成モデルに対する前記元のクエリのトークンの適用に基づいて、前記元のクエリの少なくとも1つの変異形を生成するステップと、
前記少なくとも1つの変異形と、前記少なくとも1つの変異形に対する少なくとも1つの検索システムの応答との少なくとも1つに基づいて出力を生成するステップと、
前記元のクエリに応答して、前記クライアントデバイスを介した提示のために前記出力を提供するステップと
を含み、
前記少なくとも1つの変異形を生成するステップの前に、前記方法は、トレーニング済み制御モデルを利用するコントローラエンジンによって、前記元のクエリについての前記検索システムからの少なくとも1つ応答に基づいて、何らかの変異形が前記元のクエリについて生成されるべきであるかどうかを決定するステップを含み、前記何らかの変異形が前記元のクエリについて生成されるべきであるかどうかを決定するステップが、
前記トレーニング済み制御モデルに対するコントローラ入力として前記少なくとも1つ応答の特徴を適用するステップと、
前記コントローラ入力に基づいて、前記トレーニング済み制御モデルを介してコントローラ出力を生成するステップと、
前記コントローラ出力に基づいて、前記少なくとも1つの変異形を生成することを決定するステップとを含む、方法。
A method implemented by one or more processors
A step that receives the original query, wherein the original query is generated based on the user's user interface input through the client device.
The step of applying the token of the original query as input to the trained generative model,
A step of generating at least one variant of the original query based on the application of the token of the original query to the trained generative model.
A step of generating output based on at least one of the at least one variant and the response of at least one search system to the at least one variant.
In response to the original query, viewing including the step of providing said output for presentation via said client device,
Prior to the step of generating the at least one variant, the method is performed by a controller engine utilizing a trained control model, based on at least one response from the search system for the original query. A step of determining whether the form should be generated for the original query and a step of determining whether any variant should be generated for the original query.
The step of applying the at least one response feature as a controller input to the trained control model, and
A step of generating a controller output through the trained control model based on the controller input,
A method comprising the step of determining to generate the at least one variant based on the controller output.
前記トレーニング済み生成モデルに対する前記入力の一部として、前記ユーザに関連する1つまたは複数の属性を適用するステップ
をさらに含む、請求項1に記載の方法。
The method of claim 1, further comprising applying one or more attributes related to the user as part of the input to the trained generative model.
前記トレーニング済み生成モデルに対する前記1つまたは複数の属性に基づいて、前記元のクエリの少なくとも1つの変異形を生成するステップ
をさらに含む、請求項2に記載の方法。
The method of claim 2, further comprising generating at least one variant of the original query based on the one or more attributes to the trained generative model.
前記1つまたは複数の属性が、前記ユーザの位置、前記ユーザが現在携わっているタスク、および前記ユーザの前記位置の天候のうちの1つまたは複数を含む、請求項2または3に記載の方法。 The method of claim 2 or 3, wherein the one or more attributes include one or more of the user's location, the task the user is currently engaged in, and the weather at the user's location. .. 前記トレーニング済み生成モデルに対する前記入力の一部として、現在時刻、現在の曜日、および現在の日付のうちの少なくとも1つを含む1つまたは複数の時間的属性を適用するステップ
をさらに含む、請求項1から4のいずれか一項に記載の方法。
Claims further include the step of applying one or more temporal attributes, including at least one of the current time, the current day of the week, and the current date, as part of the input to the trained generative model. The method according to any one of 1 to 4.
前記ユーザについての予測されるタスクを決定するステップと、
前記トレーニング済み生成モデルに対する入力として、
前記ユーザについての前記予測されるタスクの1つまたは複数のタスク属性
を適用するステップと
をさらに含み、
前記元のクエリの少なくとも1つの変異形を生成するステップが、前記トレーニング済み生成モデルに対する前記1つまたは複数のタスク属性の適用に基づく、請求項1から5のいずれか一項に記載の方法。
Steps to determine the expected task for the user, and
As an input to the trained generative model
Further including the step of applying one or more task attributes of the predicted task for the user.
Luz step generates at least one variant of the original query, based on the application of the one or more tasks attributes for the trained generative model, according to any one of claims 1 to 5 Method.
前記ユーザの前記予測されるタスクを決定するステップが、前記クライアントデバイスまたは追加のクライアントデバイスを介した前記ユーザとの1つまたは複数の対話に基づく、請求項6に記載の方法。 Luz step to determine the task to be the prediction of the user, based on one or more interactions with the user via the client device or additional client devices A method according to claim 6. 前記1つまたは複数の対話が、前記ユーザによって送られた電子通信、または前記ユーザによって作成されたカレンダエントリを含む、請求項7に記載の方法。 Wherein one or more interaction, including calendar entries created by electronic communication, or the user sent by the previous SL user The method of claim 7. 前記ユーザの前記予測されるタスクを決定するステップが、前記ユーザに送られた電子通信、または前記ユーザの記憶されたカレンダエントリに基づく、請求項6に記載の方法。 The absence steps to determine which tasks the expected users, based on calendar entries stored in electronic communication, or the user sent to the user A method according to claim 6. トレーニングインスタンス入力およびトレーニングインスタンス出力を含むトレーニングインスタンスを生成するステップであって、
前記トレーニングインスタンス入力が、
第1のクエリの第1のクエリトークンと、
タスク属性と
を含み、
前記トレーニングインスタンス出力が、
第2のクエリの第2のクエリトークン
を含み、
前記第1のクエリの過去のサブミットと、その後に続く前記第2のクエリの過去のサブミットとが、前記予測されるタスクに関連すると決定することに基づいて、前記トレーニングインスタンスが、前記タスク属性と共にトレーニングインスタンス入力として生成される、ステップと、
前記生成されたトレーニングインスタンスに基づいて前記生成モデルをトレーニングするステップと
をさらに含む、請求項6に記載の方法。
A step to generate a training instance that contains a training instance input and a training instance output.
The training instance input is
The first query token of the first query and
Including task attributes
The training instance output is
Contains the second query token of the second query
The training instance, along with the task attributes, is based on determining that the past submits of the first query followed by the past submits of the second query are related to the predicted task. Steps and steps generated as training instance inputs
The method of claim 6, further comprising training the generative model based on the generated training instance.
前記トレーニング済み生成モデルが前記予測されるタスクに関連する過去のクエリサブミットに基づいてトレーニングされることに基づいて、複数のトレーニング済み生成モデルから、トレーニング済み生成モデルを選択するステップ
を含む、請求項6から10のいずれか一項に記載の方法。
A claim comprising the step of selecting a trained generative model from a plurality of trained generative models based on the trained generative model being trained based on past query submissions associated with the predicted task. The method according to any one of 6 to 10.
前記予測されるタスクに関連する前記過去のクエリサブミットに基づいて生成されるトレーニングインスタンスを選択するステップと、
前記選択されたトレーニングインスタンスに基づいて前記生成モデルをトレーニングするステップと
をさらに含む、請求項11に記載の方法。
The step of selecting a training instance generated based on the past query submission related to the predicted task, and
11. The method of claim 11, further comprising training the generative model based on the selected training instance.
2つ以上の以前にサブミットされたクエリのグループが前記予測されるタスクに関連すると決定するステップと、
前記グループの前記以前にサブミットされたクエリに基づいて、前記トレーニングインスタンスのうちの1つを生成するステップと、
前記トレーニングインスタンスのうちの前記1つを、前記予測されるタスクに関連するものとしてラベリングするステップと
をさらに含み、
前記予測されるタスクに関連する前記以前にサブミットされたクエリに基づいて生成される前記トレーニングインスタンスを選択するステップが、前記ラベリングに基づいて前記トレーニングインスタンスのうちの前記1つを選択するステップを含む、請求項12に記載の方法。
The step of determining that a group of two or more previously submitted queries is relevant to the predicted task, and
With the step of generating one of the training instances based on the previously submitted query of the group.
Further including the step of labeling the one of the training instances as related to the predicted task.
The step of selecting the training instance generated based on the previously submitted query related to the predicted task includes the step of selecting the one of the training instances based on the labeling. , The method of claim 12.
2つ以上の以前にサブミットされたクエリの前記グループが前記予測されるタスクに関連すると決定するステップが、前記以前にサブミットされたクエリのサブミットに続いて実施されるコンピューティングベースのアクションに基づく、請求項13に記載の方法。 Luz steps to determine that the group of the submitted query more than one previously associated with the task to be the expected, the computing-based actions previously carried out following the submission of the submitted query 13. The method of claim 13. 前記トレーニング済み生成モデルが前記ユーザと共通の1つまたは複数の属性を有するユーザのグループの過去のクエリサブミットに基づいてトレーニングされることに基づいて、複数のトレーニング済み生成モデルから、トレーニング済み生成モデルを選択するステップと、
前記選択されたトレーニング済み生成モデルに対する入力として前記元のクエリのトークンを適用するステップと
をさらに含む、請求項1から5のいずれか一項に記載の方法。
A trained generative model from multiple trained generative models based on the trained generative model being trained based on past query submissions of a group of users with one or more attributes in common with the user. Steps to select and
The method of any one of claims 1-5, further comprising applying the token of the original query as input to the selected trained generative model.
前記トレーニング済み生成モデルが、1つまたは複数の記憶層を有するディープニューラルネットワークモデルである、請求項1から15のいずれか一項に記載の方法。 The method according to any one of claims 1 to 15, wherein the trained generative model is a deep neural network model having one or more storage layers. 前記クエリの前記変異形を生成するステップが、前記トレーニング済み生成モデルの学習されたパラメータに基づいて前記変異形を生み出すステップを含み、
前記トレーニング済み生成モデルに追加の入力を適用するステップであって、前記追加の入力が、前記元のクエリの前記トークンと、前記元のクエリの前記変異形の変異形トークンとの少なくとも1つを含む、ステップと、
前記追加の入力に基づいて、前記トレーニング済み生成モデルを介して前記元のクエリの追加の変異形を生成するステップであって、前記追加の変異形が、前記変異形および前記元のクエリとは異なり、前記元のクエリの前記追加の変異形を生成するステップが、前記トレーニング済み生成モデルの前記学習されたパラメータに基づいて前記追加の変異形を生み出すステップを含む、ステップと、
前記検索システムへの前記元のクエリの前記追加の変異形のサブミットに基づいて、前記元のクエリの前記追加の変異形についての追加の変異形応答を決定するステップと、
前記変異形応答と、前記追加の変異形応答との少なくとも1つに基づいて出力を生成するステップと、
前記元のクエリに応答して、前記クライアントデバイスを介した提示のために前記出力を提供するステップと
をさらに含む、請求項1から16のいずれか一項に記載の方法。
Luz step to produce the variants of the query comprises the step of producing the variants based on the learned parameters of the trained generative model,
A step of applying additional inputs to the trained generative model, wherein the additional inputs make at least one of the token of the original query and the variant token of the variant of the original query. Including, steps and
Based on the additional input, a step of generating an additional variant of the original query through the trained generative model, wherein the additional variant is the variant and the original query. Differently, the step of generating the additional variant of the original query comprises the step of generating the additional variant based on the learned parameters of the trained generative model.
A step of determining an additional variant response for the additional variant of the original query based on the submission of the additional variant of the original query to the search system.
A step of generating an output based on at least one of the mutant response and the additional mutant response.
The method of any one of claims 1-16, further comprising the step of providing the output for presentation through the client device in response to the original query.
前記トレーニング済み生成モデルが、複数のタイプのクエリ変異形を生成するようにトレーニングされ、前記変異形が、前記複数のタイプのクエリ変異形のうちの第1のタイプであり、前記追加の変異形が、前記複数のタイプのクエリ変異形のうちの第2のタイプである、請求項17に記載の方法。 The trained generative model is trained to generate a plurality of types of query variants, wherein the variant is the first type of the plurality of types of query variants, the additional variant. The method of claim 17, wherein is the second type of the plurality of types of query variants. 前記第1のタイプが、同義クエリ、補足クエリ、汎化クエリ、正規化クエリ、含意クエリ、仕様クエリ、明確化クエリ、および言語翻訳クエリのうちの1つであり、前記第2のタイプが、前記同義クエリ、前記補足クエリ、前記汎化クエリ、前記正規化クエリ、前記含意クエリ、前記仕様クエリ、前記明確化クエリ、および前記言語翻訳クエリのうちの別の1つである、請求項18に記載の方法。 The first type is one of a synonym query, a supplementary query, a generalized query, a normalized query, an implication query, a specification query, a clarification query, and a language translation query, and the second type is Claim 18, which is another one of the synonymous query, the supplementary query, the generalized query, the normalized query, the implication query, the specification query, the clarification query, and the language translation query. The method described. 前記変異形が、前記トレーニング済み生成モデルに対する前記入力の一部として第1のタイプ値が適用されることに基づいて、前記トレーニング済み生成モデルを介して前記第1のタイプとして生成され、前記追加の変異形が、前記トレーニング済み生成モデルに対する前記追加の入力の一部として第2のタイプ値が適用されることに基づいて、前記トレーニング済み生成モデルを介して前記第2のタイプとして生成される、請求項18に記載の方法。 The variant is generated as the first type through the trained generative model based on the application of the first type value as part of the input to the trained generative model, said addition. Is generated as the second type through the trained generative model based on the application of the second type value as part of the additional input to the trained generative model. , The method of claim 18. 前記トレーニング済み生成モデルに適用される前記追加の入力が、前記元のクエリの前記トークンを含む、請求項17に記載の方法。 17. The method of claim 17, wherein the additional input applied to the trained generative model comprises said token of the original query. 前記追加の入力が、前記元のクエリの前記変異形の前記変異形トークンをさらに含む、請求項21に記載の方法。 21. The method of claim 21, wherein the additional input further comprises said variant token of said variant of said original query. 前記追加の入力が、前記元のクエリの前記変異形についての前記変異形応答に基づく変異形応答特徴をさらに含む、請求項21に記載の方法。 21. The method of claim 21, wherein the additional input further comprises a mutant response feature based on the mutant response for the variant of the original query. 前記追加の変異形を生成する前に、前記変異形応答に基づいて、前記出力として前記変異形応答を提供するか、それとも前記追加の変異形を生成するかを決定するステップ
をさらに含み、
前記追加の変異形を生成するステップが、前記変異形応答を提供する代わりに、前記追加の変異形を生成することを決定することを条件とする、請求項17に記載の方法。
It further comprises the step of determining whether to provide the variant response as the output or to generate the additional variant based on the variant response prior to generating the additional variant.
Luz step to generate the additional mutations shape, instead of providing the variant response, provided that determines to generate the additional variants A method according to claim 17.
前記出力として前記変異形応答を提供するか、それとも前記追加の変異形を生成するかを決定するステップが、前記元のクエリの前記変異形にさらに基づく、請求項24に記載の方法。 Or providing the variant response as the output, or the additional absence steps to determine whether to generate the variants is further based on the variant of the original query, the method according to claim 24. 前記変異形応答に基づいて、前記出力として前記変異形応答を提供するか、それとも前記追加の変異形を生成するかを決定するステップが、
前記トレーニング済み制御モデルに対するコントローラ入力として前記変異形応答の特徴を適用するステップと、
前記コントローラ入力に基づいて、前記トレーニング済み制御モデルを介してコントローラ出力を生成するステップと、
前記コントローラ出力に基づいて前記追加の変異形を生成することを決定するステップと
を含む、請求項24に記載の方法。
On the basis of the variant response, or providing the variant response as the output, or absent steps to determine whether to generate the additional mutations shape,
The step of applying the variant response feature as a controller input to the trained control model, and
A step of generating a controller output through the trained control model based on the controller input,
Based on the controller output, and determining to generate the additional variants The method of claim 24.
前記変異形応答に基づいて、前記出力として前記変異形応答を提供するか、それとも前記追加の変異形を生成するかを決定するステップが、
前記トレーニング済み制御モデルに対する前記入力の一部として前記元のクエリの前記変異形を適用するステップ
をさらに含む、請求項26に記載の方法。
On the basis of the variant response, or providing the variant response as the output, or absent steps to determine whether to generate the additional mutations shape,
26. The method of claim 26, further comprising applying the variant of the original query as part of the input to the trained control model.
前記トレーニング済み制御モデルが、前記検索システムまたは追加の検索システムとの過去の対話に基づいて決定されたリワードに基づく強化学習に基づいてトレーニングされる、請求項26に記載の方法。 26. The method of claim 26, wherein the trained control model is trained on reinforcement learning based on rewards determined based on past interactions with the search system or additional search systems. 前記トレーニング済み制御モデルが、前記トレーニング済み生成モデルとは別々であるが、前記トレーニング済み生成モデルと組み合わせてトレーニングされる、請求項26に記載の方法。 26. The method of claim 26, wherein the trained control model is trained in combination with the trained generative model, although it is separate from the trained generative model. 前記トレーニング済み制御モデルが、フィードフォワードニューラルネットワークまたは再帰型ニューラルネットワークである、請求項26に記載の方法。 26. The method of claim 26, wherein the trained control model is a feedforward neural network or a recurrent neural network. 前記入力が、前記ユーザに関連する1つまたは複数の属性をさらに含み、前記追加の入力が、前記1つまたは複数の属性をさらに含む、請求項17から26のいずれか一項に記載の方法。 The method of any one of claims 17-26, wherein the input further comprises one or more attributes associated with the user, and the additional input further comprises the one or more attributes. .. ネットワークを介して前記検索システムに元の要求を送信するステップであって、前記元の要求が前記元のクエリを含む、ステップと、
前記元の要求に応答して、前記検索システムから元の応答を受け取るステップと
をさらに含み、
トレーニング済み生成モデルに対する入力として前記元のクエリのトークンを適用するステップと、前記変異形を生成するステップとが、前記検索システムからの前記元の応答に基づく、請求項17から31のいずれか一項に記載の方法。
A step of sending an original request to the search system over a network, wherein the original request includes the original query.
Further including the step of receiving the original response from the search system in response to the original request.
And Luz steps to apply the token of the original query as an input to the trained generation model, the and away step to generate variants is based on the original response from the retrieval system, it claims 17 to 31 The method according to any one of the above.
前記トレーニング済み生成モデルが、記憶層を有するディープニューラルネットワークモデルである、請求項1から32のいずれか一項に記載の方法。 The method according to any one of claims 1 to 32, wherein the trained generative model is a deep neural network model having a storage layer. シーケンスツーシーケンスニューラル機械翻訳モデルをトレーニングして、前記トレーニング済み生成モデルを生成するステップ
をさらに含む、請求項1から33のいずれか一項に記載の方法。
The method of any one of claims 1-33, further comprising the step of training a sequence-to-sequence neural machine translation model to generate the trained generative model.
請求項1から34のいずれか一項に記載の方法を実施するように構成された、1つまたは複数のプロセッサと、1つまたは複数のプロセッサに動作可能に結合されたメモリとを備えるシステム。 A system comprising one or more processors and memory operably coupled to one or more processors, configured to perform the method of any one of claims 1-34. プロセッサによって実行されるとき、請求項1から34のいずれか一項に記載の方法を実施するように構成されるコンピュータプログラム。 A computer program configured to perform the method according to any one of claims 1-34 when executed by a processor.
JP2019558737A 2017-04-29 2018-04-27 Generation of query variants using a trained generative model Active JP6918140B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762492154P 2017-04-29 2017-04-29
US62/492,154 2017-04-29
PCT/US2018/029834 WO2018200979A1 (en) 2017-04-29 2018-04-27 Generating query variants using a trained generative model

Publications (2)

Publication Number Publication Date
JP2020518912A JP2020518912A (en) 2020-06-25
JP6918140B2 true JP6918140B2 (en) 2021-08-11

Family

ID=62165685

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019558737A Active JP6918140B2 (en) 2017-04-29 2018-04-27 Generation of query variants using a trained generative model

Country Status (6)

Country Link
US (2) US11663201B2 (en)
EP (1) EP3602349A1 (en)
JP (1) JP6918140B2 (en)
KR (1) KR102313472B1 (en)
CN (2) CN110574021B (en)
WO (1) WO2018200979A1 (en)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11663413B2 (en) * 2017-03-13 2023-05-30 Nec Corporation Dialog apparatus, dialog system, and computer-readable recording medium
US11216437B2 (en) 2017-08-14 2022-01-04 Sisense Ltd. System and method for representing query elements in an artificial neural network
US11256985B2 (en) 2017-08-14 2022-02-22 Sisense Ltd. System and method for generating training sets for neural networks
WO2019035860A1 (en) 2017-08-14 2019-02-21 Sisense Ltd. System and method for approximating query results
CN107992585B (en) * 2017-12-08 2020-09-18 北京百度网讯科技有限公司 Universal label mining method, device, server and medium
US11061811B2 (en) * 2017-12-15 2021-07-13 International Business Machines Corporation Optimizing software testing via group testing
US20190272465A1 (en) * 2018-03-01 2019-09-05 International Business Machines Corporation Reward estimation via state prediction using expert demonstrations
US11086911B2 (en) * 2018-07-31 2021-08-10 Wipro Limited Method and system for generating question variations to user input
US11004449B2 (en) * 2018-11-29 2021-05-11 International Business Machines Corporation Vocal utterance based item inventory actions
US11922323B2 (en) * 2019-01-17 2024-03-05 Salesforce, Inc. Meta-reinforcement learning gradient estimation with variance reduction
JP2021089446A (en) * 2019-03-13 2021-06-10 ダイキン工業株式会社 Selection method for model and deep reinforcement learning method
US10878008B1 (en) * 2019-09-13 2020-12-29 Intuit Inc. User support with integrated conversational user interfaces and social question answering
US11782910B2 (en) 2019-11-15 2023-10-10 Samsung Electronics Co., Ltd. System and method for dynamic inference collaboration
US11521124B2 (en) 2019-12-13 2022-12-06 Robert Bosch Gmbh Reciprocating generative models
CN111241398B (en) * 2020-01-10 2023-07-25 百度在线网络技术(北京)有限公司 Data prefetching method, device, electronic equipment and computer readable storage medium
US11455306B2 (en) 2020-01-21 2022-09-27 Oracle International Corporation Query classification and processing using neural network based machine learning
CN111222052B (en) * 2020-04-24 2020-08-11 支付宝(杭州)信息技术有限公司 Searching method and device and electronic equipment
CN111611274A (en) * 2020-05-28 2020-09-01 华中科技大学 Database query optimization method and system
US20210397610A1 (en) * 2020-06-23 2021-12-23 Soundhound, Inc. Machine learning system for digital assistants
EP3961434A1 (en) * 2020-08-27 2022-03-02 Samsung Electronics Co., Ltd. Method and apparatus for concept matching
US11704307B2 (en) * 2020-12-23 2023-07-18 Oracle International Corporation Intelligent query editor using neural network based machine learning
KR102589074B1 (en) * 2021-05-17 2023-10-12 삼성생명보험주식회사 Method and apparatus for operating chatbot

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7617205B2 (en) * 2005-03-30 2009-11-10 Google Inc. Estimating confidence for query revision models
US20060074883A1 (en) * 2004-10-05 2006-04-06 Microsoft Corporation Systems, methods, and interfaces for providing personalized search and information access
US9400838B2 (en) * 2005-04-11 2016-07-26 Textdigger, Inc. System and method for searching for a query
US7584177B2 (en) * 2005-06-29 2009-09-01 Google Inc. Determination of a desired repository
US7822699B2 (en) * 2005-11-30 2010-10-26 Microsoft Corporation Adaptive semantic reasoning engine
US7962479B2 (en) * 2005-11-09 2011-06-14 Yahoo! Inc. System and method for generating substitutable queries
US20080005069A1 (en) 2006-06-28 2008-01-03 Microsoft Corporation Entity-specific search model
US9110975B1 (en) * 2006-11-02 2015-08-18 Google Inc. Search result inputs using variant generalized queries
US20100023495A1 (en) * 2007-12-21 2010-01-28 Yahoo! Inc. System for suggesting keywords based on mobile specific attributes
US7984004B2 (en) * 2008-01-17 2011-07-19 Microsoft Corporation Query suggestion generation
US10726083B2 (en) * 2010-10-30 2020-07-28 International Business Machines Corporation Search query transformations
US8583675B1 (en) * 2009-08-28 2013-11-12 Google Inc. Providing result-based query suggestions
US8762374B1 (en) * 2010-03-08 2014-06-24 Emc Corporation Task driven context-aware search
US8326861B1 (en) * 2010-06-23 2012-12-04 Google Inc. Personalized term importance evaluation in queries
CN105956116B (en) * 2010-10-30 2020-02-28 国际商业机器公司 Method and system for processing content to be displayed
US8521672B2 (en) * 2010-11-22 2013-08-27 Microsoft Corporation Dependency-based query expansion alteration candidate scoring
US8626681B1 (en) * 2011-01-04 2014-01-07 Google Inc. Training a probabilistic spelling checker from structured data
US20120191745A1 (en) * 2011-01-24 2012-07-26 Yahoo!, Inc. Synthesized Suggestions for Web-Search Queries
US20120233140A1 (en) * 2011-03-09 2012-09-13 Microsoft Corporation Context-aware query alteration
US20120269116A1 (en) * 2011-04-25 2012-10-25 Bo Xing Context-aware mobile search based on user activities
US10984337B2 (en) * 2012-02-29 2021-04-20 Microsoft Technology Licensing, Llc Context-based search query formation
US8984012B2 (en) * 2012-06-20 2015-03-17 Microsoft Technology Licensing, Llc Self-tuning alterations framework
US9141916B1 (en) * 2012-06-29 2015-09-22 Google Inc. Using embedding functions with a deep network
US9317585B2 (en) * 2013-03-15 2016-04-19 Google Inc. Search query suggestions based on personal information
US9772994B2 (en) * 2013-07-25 2017-09-26 Intel Corporation Self-learning statistical natural language processing for automatic production of virtual personal assistants
US9535960B2 (en) * 2014-04-14 2017-01-03 Microsoft Corporation Context-sensitive search using a deep learning model
US9836554B2 (en) * 2014-04-30 2017-12-05 Excalibur Ip, Llc Method and system for providing query suggestions including entities
WO2016061102A1 (en) * 2014-10-14 2016-04-21 Google Inc. Assistive browsing using context
US9910930B2 (en) * 2014-12-31 2018-03-06 TCL Research America Inc. Scalable user intent mining using a multimodal restricted boltzmann machine
US10909329B2 (en) 2015-05-21 2021-02-02 Baidu Usa Llc Multilingual image question answering
US11899728B2 (en) * 2015-10-05 2024-02-13 Yahoo Assets Llc Methods, systems and techniques for ranking personalized and generic search query suggestions
US10055500B2 (en) * 2015-10-27 2018-08-21 International Business Machines Corporation Optimizing searches
US20170178048A1 (en) * 2015-12-22 2017-06-22 Microsoft Technology Licensing, Llc Identification and presentation of tasks based on predicted periods of user availability
US10769547B2 (en) * 2015-12-30 2020-09-08 Oath Inc. Mobile searches utilizing a query-goal-mission structure
WO2018097091A1 (en) 2016-11-25 2018-05-31 日本電信電話株式会社 Model creation device, text search device, model creation method, text search method, data structure, and program

Also Published As

Publication number Publication date
KR20200003132A (en) 2020-01-08
CN110574021B (en) 2023-10-13
WO2018200979A1 (en) 2018-11-01
US20230281193A1 (en) 2023-09-07
CN110574021A (en) 2019-12-13
EP3602349A1 (en) 2020-02-05
JP2020518912A (en) 2020-06-25
US20200142888A1 (en) 2020-05-07
CN117312494A (en) 2023-12-29
US11663201B2 (en) 2023-05-30
KR102313472B1 (en) 2021-10-15

Similar Documents

Publication Publication Date Title
JP6918140B2 (en) Generation of query variants using a trained generative model
JP6854921B2 (en) Multitasking neural network system with task-specific and shared policies
Martínez-Plumed et al. Futures of artificial intelligence through technology readiness levels
CN109885842A (en) Handle text neural network
US20170061341A1 (en) Workflow management for crowd worker tasks with fixed throughput and budgets
CN107463701B (en) Method and device for pushing information stream based on artificial intelligence
US11501215B2 (en) Hierarchical clustered reinforcement machine learning
CN111737434A (en) Generating automated assistant responses and/or actions directly from conversation histories and resources
JP7293729B2 (en) LEARNING DEVICE, INFORMATION OUTPUT DEVICE, AND PROGRAM
US20210312329A1 (en) Reinforcement learning for website ergonomics
Ramírez Natural Language Processing Advancements: Breaking Barriers in Human-Computer Interaction
CN111652378A (en) Learning to select vocabulary of category features
AU2023201871A1 (en) Automated assistant for generating, in response to a request from a user, application input content using application data from other sources
Dou et al. Application of Interactive Genetic Algorithm based on hesitancy degree in product configuration for customer requirement
Hosseini Using a chatbot to increase tourists’ engagement
CN117557333A (en) Recommendation system based on social attribute and group purchase idea in meta-universe scene
US20230064816A1 (en) Automated cognitive load-based task throttling
KR102321408B1 (en) Method, apparatus and system for providing personalized memo pad service
Mishra et al. Intelligent chatbot for guided navigation of repository contend
US11423300B1 (en) Selecting actions by reverting to previous learned action selection policies
Baker Simulation and “Seduction” at the Policy Interface
Yang et al. A Task-Oriented Multi-turn Dialogue Mechanism for the Smart Cockpit
JP2024507162A (en) System and method for improving safety measures for task-oriented dialogue
JP2024046582A (en) Project execution support device, method, and program
WO2024136840A1 (en) Query engagement context multi-task multi-label learning

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191126

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210305

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210524

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20210622

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210720

R150 Certificate of patent or registration of utility model

Ref document number: 6918140

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150