microsoft/TransformerCompression

For releasing code related to compression methods for transformers, accompanying our publications

何を解決するか

複雑なコードの最適化を必要とせずに、Transformerネットワークや大規模言語モデル(LLM)のサイズとメモリ使用量を削減します。これにより、モデルのパフォーマンスを可能な限り維持しながら、より高速に動作し、メモリ使用量を抑えることが可能になります。

仕組み

SliceGPTは、学習後のスパース化スキームを使用します。まず、各Transformerレイヤーに、モデルの挙動を変えない直交変換を適用します。次に、固有値の減衰に基づいて、重み行列の最も重要度の低い行と列を特定し、「スライス」して取り除きます。これにより、大きな重み行列がより小さな密な行列に置き換わり、モデルの埋め込み次元が効果的に削減されます。

対象者

より効率的なデプロイのためにLLMの圧縮を検討している開発者や研究者、特にLlama-2、Llama-3、Phi-2、OPTなどのHugging Face hubのモデルを使用している方を対象としています。

ハイライト

  • 学習後の圧縮: 最初から再学習する必要なく、既存のモデルに対して機能します。
  • メモリ削減と高速化: 埋め込み次元を削減することで、より高速な推論と低いメモリ使用量を実現します。
  • リカバリ・ファインチューニング: LoRAを使用して、スライス後のリカバリ・ファインチューニング(RFT)をサポートし、失われたパフォーマンスを取り戻します。
  • 拡張可能なアーキテクチャ: 新しいHugging Faceのモデルタイプへのサポートを追加するためのフレームワーク(ModelAdapterおよびLayerAdapter)を提供します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト