テクニカルガイド

SwiGLU とゲート制御アクティベーション

SwiGLU は、入力の 1 つの線形投影と Swish でアクティブ化される 2 番目の投影を乗算するゲート アクティブ化関数で、トランスフォーマ フィードフォワード層内の学習可能なデータ依存ゲートとして機能します。

概要

SwiGLU は、入力の 1 つの線形投影と Swish でアクティブ化される 2 番目の投影を乗算するゲート アクティブ化関数で、トランスフォーマ フィードフォワード層内の学習可能なデータ依存ゲートとして機能します。これにより、言語モデルの品質が一貫して向上するため、最新のほぼすべての LLM が使用されます。

SwiGLU とゲート アクティベーションは、大規模なモデルの品質、インフラストラクチャのコスト、遅延、信頼性に影響を与える技術的なビルディング ブロックです。

ディープダイブ

標準のトランスフォーマー フィードフォワード ブロックは、間に ReLU または GELU を挟んだ 2 つの線形層です。 Dauphin らによって提案されたゲート線形ユニット。 2016 年には、最初の投影を 2 つの半分に分割し、一方の半分を要素ごとの乗算によってもう一方の半分にゲートするために使用します。 2020 年に Noam Shazeer によって普及された SwiGLU は、そのゲートに Swish (SiLU) 関数を使用します: 出力 = (Swish(xW) * (xV)) W2、2 つではなく 3 つの重み行列を使用します。ゲートにより、ネットワークは次元ごとに情報を選択的に通過または抑制できます。 3 番目の行列を追加するとパラメーターが増加するため、実装では隠れ次元が約 3 分の 2 に縮小され、総計算量は GELU MLP と同等のままになります。 Shazeer の実験では、測定可能な混乱度の向上が示され、LLaMA、PaLM、Mistral はすべてそれを採用しました。

技術的な洞察

Swish は x * sigmoid(beta*x) であり、ReLU とは異なり、小さな負の値を許容する滑らかな非単調関数です。 SwiGLU では、「ゲート」ブランチ Swish(xW) は、「値」ブランチ xV を要素ごとに乗算する 0 または 1 に近い値を生成するため、各隠れユニットの寄与は、学習された入力依存信号によって変調されます。 3 番目の重み行列はコストです。 3 分の 2 の隠れサイズのトリックにより、FLOP バジェットがバニラのフィードフォワード層と一致するように維持されます。

SwiGLU とゲート アクティベーションをマスターする

SwiGLU は、入力の 1 つの線形投影と Swish でアクティブ化される 2 番目の投影を乗算するゲート アクティブ化関数で、トランスフォーマ フィードフォワード層内の学習可能なデータ依存ゲートとして機能します。これにより、言語モデルの品質が一貫して向上するため、最新のほぼすべての LLM が使用されます。 SwiGLU とゲート アクティベーションは、大規模なモデルの品質、インフラストラクチャのコスト、遅延、信頼性に影響を与える技術的なビルディング ブロックです。深い理解を得るには、SwiGLU とゲート アクティベーションを単一の機能ではなくオペレーティング モデルとして扱います。望ましい結果を定義し、前提条件を明確にし、システムが確実に実行できることと、依然として専門家の判断が必要なことを分離します。

実際には、SwiGLU と Gated Activations を使用する強力なチームが、信頼性とコストに照らしてアーキテクチャ、データ、インフラストラクチャの選択を最適化しています。明示的な成功基準を文書化し、現実的なデータとワークフローに対してテストし、一度限りのベンチマークの成功ではなく、観察された失敗パターンに基づいて反復します。ここで、理論的な理解が、製品、ポリシー、運用全体にわたる永続的な機能に変わります。

アーキテクチャの決定により、パフォーマンスと運用コストが何年にもわたって推進されます。同時に、1 つのベンチマークを最適化すると、より広範なシステムの弱点が隠れる可能性があります。最も回復力のあるアプローチは、実験のスピードとガバナンスの規律を組み合わせることであり、パイロットを実行し、証拠を取得し、意思決定ログを公開し、モデルの動作、ユーザーの期待、規制要件の進化に応じて安全対策を継続的に更新します。

戦略的影響

アーキテクチャの決定により、パフォーマンスと運用コストが何年にもわたって推進されます。

アーキテクチャの決定により、パフォーマンスと運用コストが何年にもわたって推進されます。高品質の導入では、これが測定可能な運用ルール、所有権の境界、定期的なレビューの儀式に変換されるため、チームは曖昧さを拡大するのではなく、自信を拡大することができます。

技術教育は、チームが最新のスタックだけでなく、適切なスタックを選択するのに役立ちます。

技術教育は、チームが最新のスタックだけでなく、適切なスタックを選択するのに役立ちます。高品質の導入では、これが測定可能な運用ルール、所有権の境界、定期的なレビューの儀式に変換されるため、チームは曖昧さを拡大するのではなく、自信を拡大することができます。

より良いエンジニアリングの選択により、本番環境での信頼性に関するインシデントが減少します。

より良いエンジニアリングの選択により、本番環境での信頼性に関するインシデントが減少します。高品質の導入では、これが測定可能な運用ルール、所有権の境界、定期的なレビューの儀式に変換されるため、チームは曖昧さを拡大するのではなく、自信を拡大することができます。

SwiGLU とゲート制御アクティベーションの将来

SwiGLU は、オープンウェイト LLM のデフォルト MLP として定着しており、すぐにその地位を奪われる可能性は低いです。アクティブな方向には、GeGLU と ReGLU のバリアント、両方の投影を 1 つのパスで計算する融合 GPU カーネル、およびゲート MLP と専門家の混合を組み合わせて、各エキスパート自体が SwiGLU ブロックになることが含まれます。研究者は、さらに安価なゲートを設計することを目指して、なぜゲーティングが最適化に役立つのかについても研究しています。

現実世界の実装

LLaMA、PaLM、および Mistral は、GELU フィードフォワード層を SwiGLU に置き換えて、同等のコンピューティングで複雑さを低減します。

隠れ次元は約 3 分の 2 (8/3 d) にスケーリングされるため、追加のゲート行列によって FLOP が膨張することはありません。

Mixtral などの専門家混合モデルは、専門家ごとのフィードフォワード ネットワークとして SwiGLU ブロックを使用します。

ビジョンおよびマルチモーダルトランスフォーマーは、GeGLU/SwiGLU ゲーティングを利用して MLP サブレイヤを改善します

実装パターン

SwiGLU とゲート アクティベーションの実際

LLaMA、PaLM、および Mistral は、GELU フィードフォワード層を SwiGLU に置き換えて、同等のコンピューティングでパープレキシティを低減します。

LLaMA、PaLM、および Mistral は、GELU フィードフォワード レイヤーを SwiGLU に置き換えて、同等のコンピューティングで混乱を軽減します。チームは通常、品質のしきい値を事前に定義し、エッジ ケースに対する人的エスカレーション パスを維持し、生産性の向上とエラー コストの両方を長期的に追跡すると、より良い結果が得られます。

SwiGLU とゲート アクティベーションの実際

隠れ次元は約 3 分の 2 (8/3 d) にスケールされるため、余分なゲート行列によって FLOP が膨張することはありません。

非表示のディメンションは約 3 分の 2 (8/3 d) にスケールされるため、追加のゲート マトリックスによって FLOP が膨らむことはありません。チームは通常、品質のしきい値を事前に定義し、エッジ ケースに対する人的エスカレーション パスを維持し、生産性の向上とエラー コストの両方を長期的に追跡すると、より良い結果が得られます。

SwiGLU とゲート アクティベーションの実際

Mixtral などの専門家混合モデルは、専門家ごとのフィードフォワード ネットワークとして SwiGLU ブロックを使用します。

Mixtral などの専門家混合モデルでは、専門家ごとのフィードフォワード ネットワークとして SwiGLU ブロックを使用します。チームは通常、品質のしきい値を事前に定義し、エッジ ケースに対する人的エスカレーション パスを確保し、生産性の向上とエラー コストの両方を長期的に追跡すると、より良い結果が得られます。

SwiGLU とゲート アクティベーションの実際

ビジョンおよびマルチモーダル トランスフォーマーは、MLP サブレイヤを改善するために GeGLU/SwiGLU ゲーティングを借用しています。

ビジョン トランスフォーマーとマルチモーダル トランスフォーマーは、MLP サブレイヤを改善するために GeGLU/SwiGLU ゲーティングを借用しています。チームは通常、品質のしきい値を事前に定義し、エッジ ケースに対する人間によるエスカレーション パスを確保し、生産性の向上とエラー コストの両方を長期的に追跡すると、より良い結果が得られます。

リスクとガードレール

!

1 つのベンチマークを最適化すると、より広範なシステムの弱点が隠れる可能性があります。

!

インフラストラクチャとメンテナンスのコストは過小評価されがちです。

!

システムが複雑になるにつれて、セキュリティと可観測性のギャップが拡大する可能性があります。

実装ロードマップ

1

実装前にレイテンシ、品質、コストの目標を定義します。

実装前にレイテンシ、品質、コストの目標を定義します。各ステップを証拠ゲートとして扱います。基準が満たされない場合は、ロールアウトを一時停止し、ギャップを埋めてから、使用を拡大します。

2

現実的な負荷とデータ条件でのベンチマーク。

現実的な負荷とデータ条件でのベンチマーク。各ステップを証拠ゲートとして扱います。基準が満たされない場合は、ロールアウトを一時停止し、ギャップを埋めてから、使用を拡大します。

3

エラー、ドリフト、ユーザーへの影響を計測器で監視します。

エラー、ドリフト、ユーザーへの影響を計測器で監視します。各ステップを証拠ゲートとして扱います。基準が満たされない場合は、ロールアウトを一時停止し、ギャップを埋めてから、使用を拡大します。

4

スケーリングの前に、ロールバックとインシデント対応のパスを準備します。

スケーリングの前に、ロールバックとインシデント対応のパスを準備します。各ステップを証拠ゲートとして扱います。基準が満たされない場合は、ロールアウトを一時停止し、ギャップを埋めてから、使用を拡大します。

探検を続けましょう