Superposed Decoding: Multiple Generations from a Single Autoregressive Inference Pass

要約

現在、多くのアプリケーションは、GitHub のコード補完、Gmail のスマート作成、Apple のメッセージ自動提案など、入力時に複数の自動補完の下書きをユーザーに提供しています。
言語モデルは内部的に、自己回帰推論パスを実行してドラフトを提供することでこれをサポートします。
したがって、ユーザーに $k$ のドラフトを提供するには、高価な言語モデルを $k$ 回​​実行する必要があります。
$k$ 推論パスを実行する計算コストを軽減するために、1 つの自己回帰推論パスの計算コストで $k$ ドラフトを生成する新しい復号アルゴリズムである重ね合わせ復号を提案します。
これは、ドラフトからの $k$ 個の最新のトークン埋め込みの重ね合わせを入力として言語モデルの次のデコード ステップに供給することで実現します。
すべての推論ステップで、$k$ ドラフトを上位 $k$ トークンと組み合わせて $k^2$ 個の新しいドラフトを取得し、フィルター処理の計算オーバーヘッドを最小限に抑えた N グラム補間を使用して、最も可能性の高い $k$ オプションをキャッシュします。
一貫性のない世代を追い出します。
私たちの実験では、重ね合わせ復号からの $k$ ドラフトは、それぞれ Nucleus サンプリングと貪欲復号と少なくとも同等の一貫性と事実に基づいており、一方、$k\ge3$ では少なくとも $2.44\time$ 高速であることがわかりました。
コンピューティング正規化設定では、ユーザー評価は明らかに、Nucleus サンプリングよりも重ね合わせデコードによって生成されたテキストを支持します。
コードとその他のサンプルは https://github.com/RAIVNLab/SuperusedDecoding でオープンソース化されています。

要約(オリジナル)

Many applications today provide users with multiple auto-complete drafts as they type, including GitHub’s code completion, Gmail’s smart compose, and Apple’s messaging auto-suggestions. Under the hood, language models support this by running an autoregressive inference pass to provide a draft. Consequently, providing $k$ drafts to the user requires running an expensive language model $k$ times. To alleviate the computation cost of running $k$ inference passes, we propose Superposed Decoding, a new decoding algorithm that generates $k$ drafts at the computation cost of one autoregressive inference pass. We achieve this by feeding a superposition of the $k$ most recent token embeddings from the drafts as input to the next decoding step of the language model. At every inference step we combine the $k$ drafts with the top-$k$ tokens to get $k^2$ new drafts and cache the $k$ most likely options, using an n-gram interpolation with minimal compute overhead to filter out incoherent generations. Our experiments show that $k$ drafts from Superposed Decoding are at least as coherent and factual as Nucleus Sampling and Greedy Decoding respectively, while being at least $2.44\times$ faster for $k\ge3$. In a compute-normalized setting, user evaluations demonstrably favor text generated by Superposed Decoding over Nucleus Sampling. Code and more examples open-sourced at https://github.com/RAIVNLab/SuperposedDecoding.

arxiv情報

著者 Ethan Shen,Alan Fan,Sarah M Pratt,Jae Sung Park,Matthew Wallingford,Sham M. Kakade,Ari Holtzman,Ranjay Krishna,Ali Farhadi,Aditya Kusupati
発行日 2024-05-28 17:40:48+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.CL, cs.LG パーマリンク