Exploration of BERT distillation in garbage public opinion identification

近年、BERT などの大規模事前学習モデルが Natural Language Processing (NLP) 分野のさまざまなサブタスクで顕著な成果を上げていますが、モデルの膨大なパラメータにより本番環境へのデプロイが困難で、実運用の要件を満たすことができません。コンテンツモデレーション業務には大量のスパムコンテンツが含まれており、多くの人的リソースを消費しています。本稿では、スパムコンテンツ認識タスクに BERT 蒸留技術を適用して TextCNN 分類器の性能向上を図り、その小型・高速の利点を活かして実運用への適用を実現した取り組みを紹介します。

リスクサンプルは以下のとおりです。

I. 従来の蒸留スキーム

現在、モデル圧縮と高速化には 4 つの技術があります。

パラメータ剪定と共有

低ランク因子分解

転移 / コンパクト畳み込みフィルター

知識蒸留

知識蒸留とは、教師ネットワークから生徒ネットワークへ知識を転移させ、生徒ネットワークの性能を教師ネットワークと同等に近づける手法です。本稿では、知識蒸留の応用に焦点を当てます。

1. ソフトラベル

知識蒸留の手法は、2014 年に Caruana らによって初めて提案されました。知識移転の目的は、教師ネットワーク (複雑なネットワークで効果は高いが予測時間が長い) に関連するソフトラベルを全体の損失関数の一部として導入し、生徒ネットワーク (単純なネットワークで効果は低いが予測時間が短い) を訓練することで実現されます。これは汎用的でシンプルなモデル圧縮技術です。

大規模ニューラルネットワークによるカテゴリ予測には、データ構造間の類似性が含まれています。

事前知識を持つ小規模ニューラルネットワークは、ごく少量の新規シーンデータでも収束できます。

Softmax 関数は、温度パラメータの増加に伴いより均一な分布となります。

損失関数の数式は以下のとおりです。

ここから、蒸留には以下の利点があることがわかります。

大規模モデルの特徴表現能力を学習すると同時に、ワンホットラベルには存在しないクラス間の関係性も学習できます。

ノイズ耐性を備えています。下図に示すように、ノイズが存在する場合、教師モデルの勾配が生徒モデルの勾配に対して一定の補正効果を持ちます。

ある程度、モデルの汎化性能を強化できます。

2. ヒントの利用

(ICLR 2015) Romero らによる FitNets の研究では、教師ネットワークの最終出力 logits を利用するだけでなく、中間隠れ層のパラメータ値も用いて生徒ネットワークを訓練しました。より深く詳細な FitNets を得ることができます。

中間層の学習損失は以下のとおりです。

中間層の損失を追加し、教師ネットワークのパラメータによって生徒ネットワークの解空間を制約することで、作成者はパラメータの最適解を教師ネットワークに近づけ、生徒ネットワークに教師ネットワークの高次表現を学習させ、ネットワークパラメータの冗長性を削減しました。

3. 協調トレーニング

(arXiv 2019) Jin と Peng らによる Route Constrained Optimization (RCO) の研究は、カリキュラム学習から着想を得て、教師と生徒のギャップが蒸留の失敗と認知的バイアスを引き起こすことを認識しました。彼らは Route Constrained ヒント学習を提案し、教師ネットワークへの学習経路を毎回変更して、その出力を生徒ネットワークに提供して訓練しました。生徒ネットワークはこれらの中間モデルから、簡単なものから難しいものへと段階的に学習できます。

II. BERT から TextCNN への蒸留スキーム

モデルの精度向上、適時性の確保、GPU リソース不足への対応のため、BERT モデルを TextCNN モデルへ蒸留する計画を立てました。

スキーム 1: オフライン logit による TextCNN 蒸留

Caruana の伝統的な手法を用いて蒸留を行います。

スキーム 2: BERT と TextCNN のパラメータ分離による共同トレーニング蒸留

パラメータ分離: 教師モデルを一度トレーニングして logit を生徒に渡します。教師のパラメータはラベルの影響を受けて更新されます。生徒のパラメータは、教師の logit からのソフトラベル損失とラベルのハードラベル損失の両方から影響を受けて更新されます。

スキーム 3: BERT と TextCNN のパラメータ非分離による共同トレーニング蒸留

パラメータ非分離: スキーム 2 と同様ですが、主な違いは前回の反復での生徒のソフトラベルの勾配が教師のパラメータ更新に使用される点です。

スキーム 4: BERT と TextCNN の同時トレーニングによる損失加算

マルチタスク手法を用いて、教師と生徒を同時にトレーニングします。

スキーム 5: 複数トレーナー

ほとんどのモデルは更新時にオンライン履歴モデルのサンプルをカバーする必要があります。オンライン履歴モデルを教師として使用し、モデルに元の履歴モデルの知識を学習させて、元のモデルの高いカバー率を確保します。

実験結果は以下のとおりです。

上記の実験から、非常に興味深い現象を確認できます。

1) スキーム 2 とスキーム 3 はいずれも教師を先にトレーニングしてから生徒をトレーニングする手法ですが、勾配の返却による更新が分離されているかどうかの違いにより、スキーム 2 はスキーム 3 より低い性能です。これは、スキーム 3 では教師を毎回トレーニングした後に生徒を一度トレーニングし、生徒が学習したソフト損失が教師にフィードバックされるため、教師が生徒をどのように指導すべきかを学習し、教師自体の性能も向上するからです。

2) スキーム 4 は共同更新とフィードバック勾配の手法を採用していますが、逆に TextCNN の性能は急速に低下します。BERT の性能は低下していませんが、BERT が各ステップで TextCNN のフィードバックを正しく指導することは困難です。

3) スキーム 5 では過去の TextCNN の logit を使用しており、主にオンラインモデルを置き換えて元のモデルの高いカバー率を維持することを目的としています。再現率は低下しますが、全体的なカバー率は単体の TextCNN より 5% 高くなっています。

参考文献

1.Dean, J. (n.d.). Distilling the Knowledge in a Neural Network. 1-9.

2.Romero A, Ballas N, Kahou S E, et al. FitNets: Hints for Thin Deep Nets[J].

3.Jin X, Peng B, Wu Y, et al. Knowledge Distillation via Route Constrained Optimization[J].

Ant Group のビッグセキュリティ機械知能チームへの参加をお待ちしています。当チームは、ビッグデータ技術と自然言語理解技術を活用して、大量のコンテンツデータに潜む金融リスクとプラットフォームリスクを特定し、ユーザーの資金の安全を確保するとともに、Ant Group エコシステムにおけるユーザー体験の向上に取り組んでいます。

Related Articles

Explore More Special Offers

  1. Short Message Service(SMS) & Mail Service

    50,000 email package starts as low as USD 1.99, 120 short messages start at only USD 1.00

phone お問い合わせ
Hi, I'm Alibaba Cloud AI Assistant!
I can help with questions and solutions.