izmyonの日記

奈良の山奥で研究にいそしむ大学院生の学習記録。

今日の論文2023/4/22:Reducing Model Churn: Stable Re-training of Conversational Agents

Reducing Model Churn: Stable Re-training of Conversational Agents

aclanthology.org

Christopher Hidey, Fei Liu, and Rahul Goel. 2022. Reducing Model Churn: Stable Re-training of Conversational Agents. In Proceedings of the 23rd Annual Meeting of the Special Interest Group on Discourse and Dialogue, pages 14–25, Edinburgh, UK. Association for Computational Linguistics.

©2022 Association for Computational Linguistics

License: Creative Commons Attribution 4.0 International License(CC-BY)

本記事は、原著の内容に基づき筆者がまとめたものです。以下の図は、そこから引用しています。

This article is my summary (or translation) based on the content of the original publication. The following figures are taken from it.

要点まとめ

  • 最新のディープラーニングシステムを再訓練すると、同じデータとハイパーパラメータを使用して訓練した場合でも、異なるランダムシードを使用するだけでモデルの性能にばらつきが生じることがある。この現象は、モデルチャーンまたはモデルジッターとして知られており、この問題は、データ収集の過程でノイズが混入する可能性がある実世界の環境では、しばしば悪化する。

  • 本研究では、会話の意味解析(Semantic Parsing)のための構造化された予測に焦点を当て、安定した再訓練の問題に取り組んでいる。まず、複数の再学習に渡る事前予測間の一致を表す指標を導入することで、モデルチャーンを定量化する。次に、ノイズ注入の現実的なシナリオを作成し、アンサンブルや蒸留などの様々なチャーン低減技術の有効性を実証する。最後に、これらの手法間の実用的なトレードオフについて議論し、共蒸留が、リソース使用量をわずかに増加させるだけで、チャーン削減の点でスイートスポットを提供することを示す。

背景

  • ディープラーニングシステムは、同じデータで同じハイパーパラメータで学習した場合でも、複数回の実行で一貫性のないパフォーマンスを示すことがある。Google AssistantやAmazon Alexaのような会話型意味解析システムでは、ユーザーのコマンドを実行可能な形式に変換することが目標だが、この不安定な動作は、好ましくない結果をもたらすことがある。例えば、実験間の意味のある比較を行う能力を制限する「再現不可能性」(Dodge et al., 2019, 2020)、システムが特定のクラスのメンバーに常に苦戦する場合に信頼性の問題を引き起こす「バイアス」(D'Amouret al., 2020)、時間の経過とともに予測できない相互作用によって生じる「ユーザーのフラストレーション」、などがある。

  • 広く発散する動作の根本的な原因はunderspecification(D'Amour et al.、2020)であり、問題に対して同等だが異なる解が多数存在することである。モデル学習における非決定性(例えば、異なるデータの順序や重みの初期化)は、保持されたテストセットで同じ測定値を得るが、異なる予測を行うローカルミニマムを見つけることにつながる(モデルチャーンとしても知られている)。学術環境においてさえ、すべての非決定性の制御は現実的ではない。表1は、TOPv2データセットからのチャーンの例(Chen et al.) である。この場合、同じデータとハイパーパラメータで同じモデルを2回再訓練すると、与えられたクエリに対して2つの異なる予測値が得られる。このシナリオでは、データセットが静的であるにもかかわらず、モデルチェンジを観察することができる。しかし、現実の世界では、データセットが常に変化し、ノイズが多いため、頻繁に再訓練を行う必要がある。そこで我々は、複数のモデルを再訓練を実行した場合のチャーンを評価し、低減する実験を行った。我々の貢献は以下の通りである:

    1. モデルチャーンという概念を、構造化された予測に拡張する。この目的のために、我々は、合意および厳密な一致のための新しいメトリックを導入する。

    2. 我々は、アンサンブル(Dietterich, 2000)および蒸留/共蒸留(Hinton et al, 2015; Kim and Rush, 2016; Anil et al., 2018)、TOP(Gupta et al.,2018)、TOPv2 (Chen et al., 2020a)、MTOP(Li et al., 2021)、SNIPS (Coucke et al.,2018) におけるチャーンを低減する。

    3. 実環境におけるモデルチェンジの影響を探るため、より小さなモデルと2種類のシミュレーションノイズ(ランダムとシステマティック)により、様々なエラー源を表現する実験を行った。

    4. 精度と一致度に加え、リソースの使用量(パラメータ数)に基づく実用的な推奨を行い、ラベルスムージングとの共分散が最良のトレードオフを提供することを確認した。我々の知る限り、音声言語理解(SLU)の構造化予測タスクに対するモデルチャーンを研究したのは我々が最初である。

タスクの定義と評価

  • 我々は最近の研究(Rongali et al., 2020)に従い、会話意味解析を自己回帰型ニューラルモデルを用いたシーケンス生成として扱う。目標は、表1の例のようなユーザーコマンドを与えられたときに、構造化された予測を行うことである。構造化予測では、入力が与えられたときに、複数の再訓練実行にわたって全く同じシーケンスを予測することが、チャーンリダクションの目的である。再訓練とは、ランダムウェイトの初期化やデータ順序は異なるが、データとハイパーパラメータは同じであるモデルパラメータを指す。我々の目的は、ゴールドラベルの精度を維持しながら、再訓練の間のチャーンを減らすことである。そのため、N回以上の実行でテーマ別の正確なマッチング精度(EM: exact match accuracy)を報告する。我々のゴールは最先端の技術を得ることではないが、どのような方法が性能を落とすことなく解約を減らすことができるかを示したい。

  • チャーンを測定するためには、ゴールドラベルに依存しない、実行中の予測を比較する方法が必要である。以前の研究(Shamir et al., 2020)では、予測差(Hamming distanceと同様)などのメトリクスを使用していたが、分類タスクにのみ焦点を当てていたため、別のメトリクスを計算する必要があった。本研究では、N回の実行間のシーケンスレベルのモデル合意(AGR)を報告し、各例のスコアは、すべてのN回実行が完全に同じ予測シーケンスに合意していれば1、それ以外は0となる。しかし、すべての実行が一致しても、間違った予測をする可能性がある。最終的な目標は、常に正しい予測をすることである。したがって、この指標をさらに拡張して、すべてのN回の実行の事前予測が一致し、予測がターゲットと一致する場合を含むようにする。この指標をsexactmatch agreement(EM@N)と呼ぶことにする。

チャーンリダクションの方法

 この実験では、モデルのキャリブレーションなどの関連する問題で有効な3つの技法を検討した。複数のモデルの予測値を組み合わせるアンサンブル、事前に学習させたモデルの予測値を用いて学習させる蒸留、2つ以上のモデルを並行して学習させ、各モデルに他のモデルの予測値から学習させる共蒸留である。図1にこれらの技術を示す。

アンサンブリング

 各モデルの確率を一様に平均化することでアンサンブルを作成し、点推定を行う。我々の意味解析器は自動回帰型配列間モデルであるため、タイムステップごとに、Reichet al. (2020)のように、K個の分布の混合から語彙に対するアンサンブル分布を作成する:

p(y_{t} \mid y_{0} \dots y_{t-1}, X) = \frac{1}{K} \sum_{k=1}^{K} p_{k}(y_{t} \mid y_{0} \dots y_{t-1}, X) \tag{1}

 推論中、各タイムステップにおける次のトークンは、通常通り、argmax(貪欲な復号化アプローチの場合)を取るか、ビームサーチのようなアルゴリズムを用いて決定される。

蒸留

 アンサンブルを行うとモデルサイズが大きくなるため、アンサンブルの知識を単一のモデルに統合するために蒸留(Hinton et al., 2015)が導入された。蒸留では、教師モデルが生徒の訓練に使用する固定分布を提供する。

 L_{student} = \ln \mathcal{L}(\theta,D) + \lambda \cdot L_{KD}(p_{\theta}, q, D) \tag{2}

ここで Dは訓練データセット L_{NLL}は負の対数尤度損失、 L_{KD}は知識蒸留損失である。シーケンス生成タスクにおいて、与えられた Xに対する正確な確率 q(Y|X) p(Y|X)を計算することは、すべての可能な Yの空間に対する計算を必要とするため、困難である。この問題に対処する1つの方法は、 M個のサンプルでこれらの確率を近似するsequence-level distillation (Kim and Rush, 2016)である。しかし、実際には、学習時間を M倍に増やすことは現実的でないことが多い。トーク iの教師確率 q_iは、そのロジット  z_{i}のソフトマックスを温度 Tで調整したものを用いて計算される。

 q_i = \frac{\exp(z_i/T)}{\sum_{j} \exp(z_j/T)} \tag{3}

通常 Tは1に設定されるが、温度は分布のエントロピーを制御するために使用することができ、温度が高いほど均一性が高まる。温度が0に近づくと、確率質量はますます1つのトークンに集中し、最終的にはargmaxと同等になる(hard distillationと知られる技術である)。蒸留の課題の一つは、時間前にこのようなターゲットの列を計算することである。それ以外の方法は、ソフトディスティレーションと呼ばれる。一つの可能性は、ビームスプリッタのような手法で推論を行うことである。を検索してモデル予測値を得る。また、教師強制(Williams and Zipser,1989; Reich et al., 2020)を利用し、時刻 t-1までの真のターゲットを条件とすることもできる。 しかし、ハードディスティレーションでは、教師ラベルのみが必要であり、1回の訓練セットパスで教師予測を事前に計算することが可能である。

共蒸留

 教師と生徒の逐次的な訓練が必要な蒸留とは対照的に、Anil et al.(2018)は、複数のピアモデルを並行して訓練する共蒸留を導入した。抽象的なアイデアとしての蒸留はロジッツをシグナルとして必要とするだけなので、教師は異なるアーキテクチャ、あるいは異なるデータセットであってもよいが、共蒸留にはいくつかの異なる特徴がある。まず、ピアモデルはアーキテクチャと学習データを共有するため、それらのモデルをオンラインで並行して学習することができる。 第二に、蒸留損失はモデルが収束する前に使用される。共蒸留損失は以下のように計算される。

 L_{peers} = \sum_{k=1}^{K} \ln \mathcal{L}(\theta_k, D) + \sum_{j \neq k} \lambda \cdot L_{KD}(p_{\theta_k}, q_j, D) \tag{4}

 ここで、K個のモデルのそれぞれは、訓練データに対する否定対数尤度損失( L_{NLL})と、他のすべてのモデルの予測値に対する蒸留損失( L_{KD})を用いて訓練される。

 共蒸留の主な利点は、ピアの1つだけが必要なため、推論時間が単一モデルと同等になることである。訓練時間とメモリ使用量は実装とリソースに依存するが、最悪の場合は K倍の増加であり、モデルの並列化や非同期更新などによって削減できる可能性がある(Anil et al., 2018).

実験のセットアップ

データセット

 4つの会話型意味解析データセットで、モデルチャーン問題を紹介する。TOPデータセット(Gupta et al., 2018)は、2つのドメインにおける階層的な意味解析のあるクエリーで構成されている。 TOPv2 (Chen et al., 2020a) およびMTOP (Li et al., 2021) データセットは、線形および入れ子の両方のインテントと5つのより多くの言語を持つ、より多くのドメインに拡張される。表1は、すべての3データセットで共有されるデータフォーマットの例を示す。さらに、7つのドメイン(AddToPlaylist、BookRestaurant、GetWeather、PlayMusicを含む)の発話を持つ別のポピュラーな意味解析データセットであるSNIPS (Coucke et al., 2018)で評価する。データの統計量は表 2 に示す。

ノイズインジェクション

 我々は、ノイズと組み合わせた蒸留が、性能を落とすことなくチャーンを減らすという仮説を立てている。 一方、ノイズを追加することは、モデルの安定性と堅牢性を向上させるための一般的なアプローチである(Szegedy et al., 2016; Müller et al., 2019)。さらに一方で、実世界の環境は意図せずノイズを含むことが多く(アノテータ、ユーザー、遠隔監視など複数のソースから収集されたラベルによる)、モデルは予期せぬ変化に強い必要がある。我々は両方のシナリオを探求し、前者についてはラベルスムージング(Szegedy et al., 2016)の実験結果を、後者についてはランダムノイズとシステマティックノイズの実験結果を報告する。

ラベルスムージング

 ラベルスムージングは、深層学習モデル、特に蒸留のキャリブレーションに広く使われている技術である(Müller et al.,2019)。ラベルスムージングは、ノイズ注入法としても考えることができる。この手法は、特定のタイムステップにおけるワンホットラベルの加重平均とラベル全体の均一な分布を使用することによって適用される。具体的には、時間ステップ  tにおいて、新しい「ソフト」ターゲットを計算する:

 (1-\alpha)\delta_{t,l} + \alpha \frac{1}{|L|} \tag{5}

ここで \delta_{t,l}はワンホットラベルがある場合、 \alphaは平滑化の割合を制御するパラメータ、 Lは全てのラベルの集合である。我々は(Müller et al., 2019)の推奨に従い、学生モデルにのみラベルスムージングを適用する。 ランダム/システマティックノイズの設定に合わせ、 α=0.1とし、全ての実験においてノイズの量を一定にした。

ランダムノイズ

 ランダムノイズ実世界のシナリオで発生する可能性のあるノイズをシミュレートするために、重み付けされた分布から10%のラベルをランダムに入れ替えることによって、人工のランダムノイズデータセットを作成する。このデータセットを構築するために、まず接頭辞"[in: "を持つすべてのラベル(意図)を見つけ、学習中の確率を計算する。次に、この分布からランダムに置換インテントをサンプリングする。このプロセスをスロット("[sl:")についても繰り返す。

ステマティックノイズ

 SLUシステム用の高品質なラベル付きデータを大量に入手することは困難である。したがって、会話エージェントは、より早い反復から「遠隔ラベル付け」されたデータを使用して、十中八九、訓練される。このプロセスは、必然的にノイズの多いデータとなる。なぜなら、SLUシステムは、すべての未経験の例で100%の精度を得ることができないからである。各訓練セットの90%で4層BERTエンコーダ(セクション5.3参照)のベースラインを訓練し、残りの10%にラベルを付ける。しかし、(a)「システマティックで」、(b)「不正確な」ラベルを得るために、最初のビーム位置ではなく、この2番目のビーム位置の予測値を選択する。

実装の詳細

ベースライン

 Rongali et al. (2020)のポインタ生成ネットワークは、事前に訓練したエンコーダを用いて、TOPデータセットで競争力のある性能を得た。この研究をベースラインとして再実装したところ、同様の結果を得ることができた。我々の目標は現実的な環境でチャーンを減らすことであるため、我々は、4つのヘッドと256次元を持つTurcet al.(2019)の4層BERTモデルという「生産規模」のエンコーダを使用して、堅牢なクエリー/秒速度でユーザーに提供できるものを合理的に反映させた。我々は、同じタイプのより大きなモデル、12-layer BERT-base (Devlin et al.,2019) からの蒸留を評価するためにこのモデルを選択したが、これはパパラメータの数によってのみ異なる。4層BERTはBERT-baseから蒸留され、より大きなモデルと比較してベンチマークデータセット上でわずかな減少しか得られなかった。

実験

 実験では、アンサンブルとディスティレーションの設定を様々に検討した。アンサンブルとアンサンブル蒸留の両方において、K=3の4層BERTモデルを使用した。ソフト蒸留を用い、教師強制と式(1)により教師確率を求める。アンサンブル蒸留は、生徒が1つのトークンに過大な確率を割り当て、自信過剰になるのを防ぐことで合意を高めることができるが、我々は12層の教師モデルからのソフト蒸留も検討した。我々は、12層モデルは4層アンサンブルよりもEMは高いがAGRは低いという仮説を立て、この設定により、これらの測定値の間のトレードオフを調べることができるようになった。さらに、12層モデルからのハード蒸留を検討する。この設定では、ソフト蒸留の教師強制と比較できるように、ビーム幅3のビームサーチ推論を使用して予測値を得ることができる。また、12層モデルによるオフライン推論を訓練セット全体に対して行い、すべての例に対して教師ラベル付きデータとゴールドデータの両方を使用する。最後に、 K=2 λ=1の共蒸留を使用する。タイムステップごとに更新される重みを用いて、モデルの事前予測から抽出する。

ハイパーパラメータ

 非決定性を低減するために、3TOPデータセットと全ての実験において単一のハイパーパラメータセットを使用する。SNIPSでは、訓練データの10%でベースラインをチューニングすることにより、1セットのハイパーパラメータを選択する。付録Bにすべてのハイパーパラメータを列挙する。

結果

 手法の有効性をN=10回にわたってテストした。 ラベルスムージングを行い元のデータセットで学習したモデルの結果を表3aにまとめた。 また、10%のランダム/システマティックノイズを設定した場合の結果も報告する(表3bと3c)。これは、ラベルが90%正しいという「実世界」のシナリオを表していると考えられるからである。

アンサンブルの優位性は計算コストの大幅な増加の代償

 まず、アンサンブルは人工ノイズに関係なく、ほぼすべての設定で高いレベルを得る。しかし、このアプローチは推論時にかなり多くの計算を必要とし、リソースの使用量を考慮すると、導入が不可能と判断されることもある(表8参照)。

共蒸留はノイズに関係なく蒸留ベースの手法の中で最も優れている

 ラベルスムージング(表3a)およびランダム/システマティックノイズ設定(表3b、3c)において、EM、EM@10、AGRでは共蒸留が明らかに、一貫してベースラインを上回っていることがわかる。 また、アンサンブルからのソフト蒸留は、最高性能(TOPv2、システマティックノイズ)を得ることもあるが、ベースライン(MTOP/SNIPS、ランダムノイズ)より悪い結果を示すことがより多い。 驚くべきことに、10%ランダム/システマティックノイズの場合、共蒸留はEM@10/AGRでアンサンブルとの差を縮めただけでなく、EM@TOP/MTOPとTOPでそれぞれアンサンブルを上回ることがある。これは、アンサンブルの推論時のみではなく、学習時のノイズに対する頑健性が向上したためであろう。

タスクの難易度による影響

 表4は、モデルサイズを小さくしたり、データのノイズを増やしたりして、タスクの難易度を上げたときのベースラインモデルの性能を示している。予想通り、EMはタスクの難易度が高くなるにつれて減少する。しかし、AGRはより急速に減少する。これは、EMが低いほど、モデルが解を見つけるための自由度が高くなるためである。 これらの結果は、EMだけでは再現性を測定するのに十分でないことを示し、EM@10/AGRの使用を検証している。

ラベルスムージングによる影響

 ラベルスムージングの効果をよりよく理解するために、ベースラインと共蒸留モデルに対するTOPv2の研究を実施した(表5)。ベースライン設定(BERT-4)のベースデータセットでは、ラベルスムージングはすべてのメトリクスでほとんど効果がない。しかし、EM@10 (+2.14)とAGR (+3.5)では、ラベルスムージングありの共蒸留となしの共蒸留で劇的な改善が見られた。一方、10%のランダムノイズを持つデータセットでは、ベースラインでも共蒸着でも、ラベルスムージングによる効果は観察されないが、これはおそらくデータ中に既にあるノイズが原因だろう。最後に、10%のシステマティックなノイズを持つデータセットでは、ラベルスムージングによって、ベースライン (EM@10 (+5.07) 、 AGR (+6.88)) 、共蒸留 (EM@10 (+2.84) 、AGR (+4.59) )の両方で結果が劇的に改善されることが確認された。 全体として、最も現実的なシナリオ("クリーン "または遠方ラベル付きデータ)において、共蒸留はラベルスムージングと効果的に組み合わせることができることがわかった。この結果は、ラベルスムージングで教師モデルを訓練しても効果がないことを発見したMüllerら(2019)と対照的である。両方のモデルが教師である場合、ラベルスムージングが役立つことは明らかである。

議論

定性分析

 どのようなクエリがモデルをチャーンさせるかをさらに理解するために、複数の実行が一致しないケースを分析する。分析をシンプルにするため、表6でベースラインと共蒸留を比較している。最初の行は、ベースラインモデルが意味的に類似したスロットmusic_artist_name vs. music_track_titleによって混乱することを示す。2行目は、intentsloop_music vs. replay_musicの間でベースラインが混乱していることを示している。どちらのケースでも、共蒸留モデルはすべての訓練実行で一致している。また、構造化出力シーケンスの長さと一致の関係を調べた。推論中に構造化予測を行う場合、長さが長くなるにつれて、モデルは不正なトークンを選択する自由度が高くなり、その結果、チャーンが増加する。 共蒸留は長いシーケンスで一致度を高めるが、アンサンブルは特にロバストする。 表7は、すべてのN個のモデルが一致しない場合の平均的なターゲットとプリディクションの長さを示している。 意外なことに、モデルはターゲットに対して過剰に生成していることがわかる。

実用上の考慮点

 表8では、リソース使用量の次元で各手法を大まかに比較している。リソース使用量は実装やアーキテクチャに依存する可能性があるため、訓練/推論時間やメモリと強い相関があるパラメータ数を報告する。アンサンブルは最も強力なアプローチであるが、最も高価な推論を伴う。並列化により推論時間はベースモデルと同じになるが、計算能力とメモリは K倍にもなる。さらに、蒸留では、出力が同じような大きさであるため推論時間は同じだが、教師モデルの訓練にかかるコストが異なる。 ラージモジュール蒸留の場合、12層教師モデルはベースラインの約 P=9倍のパラメータを持つ。どちらの場合も、生徒モデルを順次学習させる必要がある。全体として、共蒸留は、EMとモデルの一致という点で、異なるデータセットとノイズ設定において一貫して良好な性能を示し、計算コストと性能のバランスを取ることで、ゴール指向の会話意味解析のための魅力的なアプローチとなることを示した。