JP6918140B2 - Generation of query variants using a trained generative model - Google Patents
Generation of query variants using a trained generative model Download PDFInfo
- 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
Links
- 230000004044 response Effects 0.000 claims description 192
- 238000012549 training Methods 0.000 claims description 127
- 238000000034 method Methods 0.000 claims description 98
- 230000035772 mutation Effects 0.000 claims description 25
- 238000003860 storage Methods 0.000 claims description 18
- 230000009471 action Effects 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 12
- 230000002787 reinforcement Effects 0.000 claims description 12
- 230000002123 temporal effect Effects 0.000 claims description 8
- 238000013519 translation Methods 0.000 claims description 8
- 238000003062 neural network model Methods 0.000 claims description 7
- 238000005352 clarification Methods 0.000 claims description 6
- 230000003993 interaction Effects 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 claims description 4
- 230000000306 recurrent effect Effects 0.000 claims description 4
- 238000002372 labelling Methods 0.000 claims description 3
- 230000001537 neural effect Effects 0.000 claims description 2
- 238000004590 computer program Methods 0.000 claims 1
- 238000007792 addition Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 7
- 239000013598 vector Substances 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000002703 mutagenesis Methods 0.000 description 5
- 231100000350 mutagenesis Toxicity 0.000 description 5
- 239000003973 paint Substances 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000000153 supplemental effect Effects 0.000 description 4
- 241000282326 Felis catus Species 0.000 description 3
- 241001620634 Roger Species 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 239000003471 mutagenic agent Substances 0.000 description 2
- 231100000707 mutagenic chemical Toxicity 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 229920002803 thermoplastic polyurethane Polymers 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 206010048669 Terminal state Diseases 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010411 cooking Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 238000013549 information retrieval technique Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3338—Query expansion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent 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.
図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
クエリシステム110、検索システム140、生成モデルトレーニングエンジン120、およびトレーニングインスタンスエンジン122は、本明細書において説明される技法がその中で実施され得、かつ/または本明細書において説明されるシステム、構成要素、技法がそれとインターフェースし得る例示的な構成要素である。図1のシステム110、140、およびエンジン120、122のうちの1つまたは複数によって実施される動作はそれぞれ、複数のコンピュータシステムにわたって分散され得る。いくつかの実施形態では、システム110、140、およびエンジン120、122のうちの1つまたは複数の態様が単一のシステムとして組み合わされ得、かつ/あるいは1つまたは複数の態様がクライアントデバイス106上で実施され得る。たとえば、それらの実施形態のうちのいくつかでは、クエリシステム110の態様が検索システム140の態様と組み合わされ得る。
The
クライアントデバイス106のユーザは、クライアントデバイス106の1つまたは複数のユーザインターフェース入力デバイスを介してユーザインターフェース入力を提供することによって、クライアントデバイス106を介してクエリを策定し得る。クライアントデバイス106はクエリシステム110にクエリをサブミットする。いくつかの状況では、クエリはテキスト形式である。他の状況では、クエリは音声および/または他の形式でサブミットされ、クエリシステム110(または他の構成要素)によってテキスト形式に変換され得る。
A user of
受け取ったクエリについて、クエリシステム110は、受け取ったクエリの1つまたは複数の変異形を生成し、クライアントデバイス106への出力を提供させ、出力は、変異形のうちの1つまたは複数に基づく。いくつかの実施形態では、出力は、ユーザによる考慮のために、提案される代替変異形として提供されるべき変異形のうちの1つまたは複数を含む。いくつかの実施形態では、追加または代替として、出力は、検索システム140からの1つまたは複数の応答に基づくコンテンツを含み、応答は、検索システム140への変異形のうちの1つまたは複数のサブミットに基づく。検索システム140は、1つまたは複数のリソース166のアクセスに基づいて応答を決定し得、従来の情報検索技法などの様々な技法を利用し得る。応答に基づくコンテンツは、たとえば、応答に基づく(たとえば、応答と同一の)グラフィカルおよび/または可聴「回答」または他の検索結果であり得る。応答に基づくコンテンツが提供される場合、クエリシステム110は、クライアントデバイス106にコンテンツを直接的に提供し得、または検索システム140に、クライアントデバイス106にコンテンツを提供させ得る。いくつかの実施形態では、任意選択で、クエリシステム110および検索システム140は、同一のパーティによって制御され、かつ/または互いに協働して働き得る。1つまたは複数のデータベース内の生成された変異形に割り当てられる広告などの、追加および/または代替の出力が、生成された変異形に基づいて提供され得る。
For the received query, the
図1では、クエリシステム110は、変異形エンジン112およびコントローラエンジン114を含む。いくつかの実施形態では、変異形エンジン112およびコントローラエンジン114の1つまたは複数の態様が、クライアントデバイス106などの、クエリシステム110とは別々の構成要素として組み合わされ、かつ/または実施され得る。いくつかの実施形態では、コントローラエンジン114が省略され得る。
In FIG. 1, the
変異形エンジン112は、サブミットされたクエリについての1つまたは複数のクエリ変異形を生成するのに、1つまたは複数のトレーニング済み生成モデル152を利用する。いくつかの実施形態では、変異形エンジン112は、トレーニング済み生成モデル152を介して動作する1つまたは複数のCPU、GPU、および/またはTPUを含む。変異形エンジン112は、生成モデル152のうちの1つに対する入力としてクエリのトークンを適用すること、および入力に基づいて、生成モデルを介して変異形を生成することによって、サブミットされたクエリについての変異形を生成する。多くの実施形態では、変異形を生成する際に、変異形エンジン112は、生成モデルに対する入力として追加の入力特徴をさらに適用し、追加の入力特徴に基づいて変異形を生成する。
The variant engine 112 utilizes one or more trained
いくつかの実施形態では、追加の入力特徴は、クエリをサブミットしたユーザに関連する属性、時間的属性、および/または他の特徴を含み得る。たとえば、元のクエリについての変異形を生成する際に、変異形エンジン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
いくつかの実施形態では、追加または代替として、元のクエリについての変異形を生成することの所与の反復において適用された追加の入力特徴が、前の反復において生成された元のクエリの変異形に基づく特徴、および/またはそのような変異形に対する検索システム応答に基づく特徴を含む。たとえば、元のクエリについての変異形を生成する際に、変異形エンジン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
いくつかの実施形態では、追加または代替として、元のクエリについての変異形を生成する所与の反復において適用された追加の入力特徴がタイプ値を含む。たとえば、いくつかの実施形態では、生成モデル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
いくつかの実施形態では、複数の生成モデル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
図1には、生成モデルトレーニングエンジン120およびトレーニングインスタンスエンジン122も示されている。トレーニングインスタンスエンジン122は、トレーニングインスタンスを生成し、トレーニングインスタンスデータベース164内にトレーニングインスタンスを記憶する。たとえば、トレーニングインスタンスエンジン122は、ユーザの大集団の過去のクエリサブミットを記憶する、サブミットされたクエリデータベース162に基づいて、複数のトレーニングインスタンスを生成し得る。生成モデルトレーニングエンジン120は、データベース164の記憶されたトレーニングインスタンスに基づいて、生成モデル152をトレーニングする。本明細書において説明されるように、いくつかの実施形態では、任意選択で、生成モデル152のうちの1つまたは複数は、トレーニングインスタンスデータベース164のトレーニングインスタンスに依拠しない強化学習技法を利用してさらにトレーニングされ得る。エンジン120、122、ならびにデータベース162および164の実施形態の追加の説明が、以下の図2に関する説明において与えられる。
Figure 1 also shows the generative
コントローラエンジン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
いくつかの実施形態では、コントローラエンジン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
本明細書において説明されるように、いくつかの実施形態では、変異形エンジン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
一例として、コントローラエンジン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
図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
トレーニングインスタンス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
適用された入力に基づいて出力を生成する際に、生成モデルトレーニングエンジン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
図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
変異形エンジン112は、生成モデル152のうちの少なくとも1つを利用して、元のクエリの1つまたは複数の変異形を生成する。変異形を生成する際に、変異形エンジン112は、生成モデル152のうちの1つを選択する際に属性を利用し得、かつ/または生成モデルのうちの1つに対する入力として属性のうちの1つまたは複数を適用し得る。変異形エンジン112は、生成モデルおよび/または他の特徴(たとえば、複数の変異形が反復的に生成される場合の、過去に生成された変異形)に元のクエリのトークンをさらに適用し得る。
The variant engine 112 utilizes at least one of the
いくつかの実施形態では、変異形エンジン112は、元のクエリに基づいて提供されるべき出力として変異形をクライアントデバイス106に送信する。いくつかの実施形態では、追加または代替として、変異形エンジン112は、検索システム140に変異形のうちの1つまたは複数を提供し、検索システム140は、変異形についての1つまたは複数の応答(たとえば、単一の回答検索結果、または複数の検索結果)を決定し、元のクエリに基づいて提供されるべき出力として応答をクライアントデバイスに送信する。
In some embodiments, the variant engine 112 sends the variant to the
図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
いくつかの実施形態では、コントローラエンジン114は、1つまたは複数の制御モデル154を利用して、元のクエリの変異形を生成するかどうかを決定する。たとえば、コントローラエンジン114は、元のクエリのトークン、元のクエリに対する検索システム応答、および/またはユーザの属性を制御モデル154のうちの1つに適用して、変異形を生成するかどうかを決定し得る。いくつかの他の実施形態では、コントローラエンジン114は、デフォルトで、少なくとも1つの変異形または元のクエリが生成されるべきであると決定し得る。
In some embodiments, the controller engine 114 utilizes one or
コントローラエンジン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
変異形エンジンは、元のクエリの1つまたは複数の変異形を生成するのに、生成モデル152のうちの少なくとも1つを利用し得る。変異形を生成する際に、変異形エンジン112は、提供された状態、および任意選択でリワード信号を利用し得る。たとえば、変異形エンジン112は、学習されたリワード関数にリワード信号を適用して、クエリ変異形を生成する際のリワードを決定し得る。変異形エンジン112は、検索システム140に変異形を提供する。それに応答して、検索システム140は、1つまたは複数の応答を生成し、コントローラエンジン114に応答を提供する。
The mutation engine may utilize at least one of the
コントローラエンジン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
別の変異形が生成されるべきであるとコントローラエンジン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
所与の反復において、別の変異形が生成されるべきでないとコントローラエンジン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
いくつかの実施形態では、制御モデル154、生成モデル152、コントローラエンジン114、および/または変異形エンジン112が、強化学習を利用してトレーニングされ得る。それらの実施形態のうちのいくつかでは、制御モデル154および/または生成モデル152が、当初は他の技法を利用してトレーニングされ、強化学習を通じて改良され得る。たとえば、生成モデル152は、当初は図2に関して説明されたようにトレーニングされ、強化学習を通じてさらにトレーニングされ得る。
In some embodiments, the
それらの実施形態のうちのいくつかでは、俳優-批評家アルゴリズム内で、俳優コントローラエンジン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
俳優および批評家の挙動は、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
ブロック552において、システムは、トレーニングインスタンスのグループを選択する。たとえば、生成モデルがマルチタスクモデルとなるように方法500においてトレーニングされるとき、システムは、グループが複数のタイプの変異形生成を実演するトレーニングインスタンスを含むようにグループを選択し得る。さらに、たとえば、追加または代替として、生成モデルが特定のグループのユーザに個別化されるようにトレーニングされている場合、システムは、トレーニングインスタンスが、特定のグループに準拠するユーザによるクエリの過去のサブミットに基づくトレーニングインスタンスのみを含み、または著しい量(たとえば、半分超、70%超)のトレーニングインスタンスを含むようにグループを選択し得る。さらに、たとえば、追加または代替として、生成モデルが特定のタスクに個別化されるようにトレーニングされている場合、システムは、トレーニングインスタンスが、特定のタスクに関連するクエリの過去のサブミットに基づくトレーニングインスタンスのみを含み、または著しい量(たとえば、半分超、70%超)のトレーニングインスタンスを含むようにグループを選択し得る。
At block 552, the system selects a group of training instances. For example, when the generative model is trained in
ブロック554において、システムは、グループのトレーニングインスタンスを選択する。 At block 554, the system selects a training instance for the group.
ブロック556において、システムは、トレーニングインスタンスのトレーニングインスタンス入力を生成モデルに対する入力として適用する。トレーニングインスタンス入力は、たとえば、元のクエリの用語、属性(たとえば、元のクエリをサブミットしたユーザの属性)、および(元のクエリの変異形のタイプを示す)タイプ値を含み得る。
At
ブロック558において、システムは、適用されたトレーニングインスタンス入力に基づいて、生成モデルを介して変異形を生成する。
At
ブロック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
ブロック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
次に図6を参照すると、本明細書において開示される様々な実施形態による、クエリの1つまたは複数の変異形を生成するのに生成モデルを利用する方法600を示すフローチャートが与えられる。便宜上、流れ図の動作が、動作を実施するシステムを参照しながら説明される。このシステムは、1つまたは複数のプロセッサ(たとえば、CPU、GPU、および/またはTPU)などの1つまたは複数の構成要素を含み得る。方法600の動作が特定の順序で示されているが、これは限定を意味するものではない。1つまたは複数の動作が並べ替えられ、省略され、または追加され得る。
Then, with reference to FIG. 6, a flowchart is provided showing a
ブロック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
ブロック658において、システムは、適用された入力に基づいて、生成モデルを介して1つまたは複数の変異形を生成する。
At
ブロック660において、システムは、別の変異形を生成するかどうかを決定する。いくつかの実施形態では、システムは、これまでに生成された変異形のプロパティに基づいて、かつ/またはこれまでに生成された変異形についての検索システムからの応答に基づいて、別の変異形を生成するかどうかを決定する。たとえば、システムは、これまでに生成された変異形に対する応答が検索システムおよび/または応答の品質尺度によって見つかったかどうかに基づいて、別の変異形を生成するかどうかを決定し得る。たとえば、応答が見つからなかった場合、かつ/または品質尺度が1つまたは複数の品質基準を満たすことができなかった場合、システムは別の変異形を生成し得る。
At
ブロック660の反復において、システムが別の変異形を生成することを決定する場合、システムはブロック662に進み、ブロック656の後続の反復において生成モデルに対する入力として適用されるべき1つまたは複数の追加の値を更新する。たとえば、システムは、ブロック658の最新の反復において生成された変異形を反映するように、変異形に対する応答を反映するように、かつ/またはブロック658の次の反復についてのタイプ値を変更するように追加の値を更新し得る。次いで、システムは、更新された追加の値を使用してブロック656の別の反復を実施し、次いでブロック658および660に進む。
If, at the iteration of
ブロック660の反復において、システムが別の変異形を生成しないことを決定する場合、システムはブロック664に進み、生成された変異形のうちの1つまたは複数に基づく出力を提供する。出力は、変異形のうちの1つまたは複数ならびに/あるいは変異形のうちの1つまたは複数に対する検索システム応答を含み得る。
If, in the iteration of
図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
ブロック752において、システムはクエリを受け取る。 At block 752, the system receives the query.
ブロック754において、システムは、現状態に基づいて、制御モデルを介して制御出力を生成する。たとえば、現状態は、現クエリのトークン、現クエリに対する検索システム応答、および/または他の特徴に基づき得る。
At
ブロック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
ブロック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
ブロック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
ブロック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
次に図8Aおよび図8Bを参照すると、本明細書において開示した実施形態に従って生成された変異形に基づく出力を提供するための例示的グラフィカルユーザインターフェース800Aおよび800Bが示されている。グラフィカルユーザインターフェース800Aおよび800Bは、クライアントデバイス106において(たとえば、クライアントデバイス106において実行中のブラウザ内、および/またはクライアントデバイス106において実行中の別のアプリケーション内で)提示され得る。
Then, with reference to FIGS. 8A and 8B, exemplary
図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
図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
グラフィカルインターフェースの例が図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
ユーザインターフェース入力デバイス922は、キーボードと、マウス、トラックボール、タッチパッド、グラフィックスタブレットなどのポインティングデバイスと、スキャナと、ディスプレイ内に組み込まれたタッチスクリーンと、音声認識システム、マイクロフォン、および/または他のタイプの入力デバイスなどのオーディオ入力デバイスとを含み得る。一般には、「入力デバイス」という用語の使用は、すべての可能なタイプのデバイス、およびコンピューティングデバイス910内に、もしくは通信ネットワーク上に情報を入力するための方式を含むものとする。
The user
ユーザインターフェース出力デバイス920は、ディスプレイサブシステム、プリンタ、ファックスマシン、またはオーディオ出力デバイスなどの非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、投影デバイス、または通常のイメージを作成するための何らかの他の機構を含み得る。ディスプレイサブシステムはまた、オーディオ出力デバイスを介するような非視覚的表示をも提供し得る。一般に、「出力デバイス」という用語の使用は、すべての可能なタイプのデバイス、およびコンピューティングデバイス910からの情報をユーザまたは別のマシンもしくはコンピューティングデバイスに出力するための方式を含むものとする。
The user
記憶サブシステム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
バスサブシステム912は、コンピューティングデバイス910の様々な構成要素およびサブシステムに所期の通りに互いに通信させるための機構を提供する。バスサブシステム912が単一のバスとして概略的に示されているが、バスサブシステムの代替実装は複数のバスを使用し得る。
The
コンピューティングデバイス910は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または任意の他のデータ処理システムもしくはコンピューティングデバイスを含む様々なタイプであり得る。コンピュータおよびネットワークの常に変化する性質のために、図9に示されるコンピューティングデバイス910の説明は、いくつかの実施形態を示すための特定の例に過ぎないものとする。図9に示されるコンピューティングデバイスよりも多くの、または少ない構成要素を有する、コンピューティングデバイス910の多くの他の構成が可能である。
The
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つの変異形を生成することを決定するステップとを含む、方法。 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に記載の方法。 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.
をさらに含む、請求項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から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のクエリの第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.
前記グループの前記以前にサブミットされたクエリに基づいて、前記トレーニングインスタンスのうちの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.
前記選択されたトレーニング済み生成モデルに対する入力として前記元のクエリのトークンを適用するステップと
をさらに含む、請求項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つに基づいて出力を生成するステップと、
前記元のクエリに応答して、前記クライアントデバイスを介した提示のために前記出力を提供するステップと
をさらに含む、請求項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.
をさらに含み、
前記追加の変異形を生成するステップが、前記変異形応答を提供する代わりに、前記追加の変異形を生成することを決定することを条件とする、請求項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に記載の方法。 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.
前記元の要求に応答して、前記検索システムから元の応答を受け取るステップと
をさらに含み、
トレーニング済み生成モデルに対する入力として前記元のクエリのトークンを適用するステップと、前記変異形を生成するステップとが、前記検索システムからの前記元の応答に基づく、請求項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から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.
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)
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)
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 |
-
2018
- 2018-04-27 CN CN201880028212.7A patent/CN110574021B/en active Active
- 2018-04-27 US US16/609,318 patent/US11663201B2/en active Active
- 2018-04-27 KR KR1020197035500A patent/KR102313472B1/en active IP Right Grant
- 2018-04-27 EP EP18724709.3A patent/EP3602349A1/en not_active Withdrawn
- 2018-04-27 CN CN202311209572.6A patent/CN117312494A/en active Pending
- 2018-04-27 JP JP2019558737A patent/JP6918140B2/en active Active
- 2018-04-27 WO PCT/US2018/029834 patent/WO2018200979A1/en unknown
-
2023
- 2023-05-12 US US18/196,913 patent/US20230281193A1/en active Pending
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 |