【要約】多肉植物LM を育てる (2) — テンソルネットワークで再びモデル圧縮を行う [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
著者は、モデル圧縮がモデルの内部表現や挙動にどのような質的な変化をもたらすかを解明しようとしている。従来の圧縮手法では、単なるパラメータ削減や精度の低下のみが議論されがちであった。具体的には以下の課題を扱っている。
- ・圧縮によってモデルの「思考」がどのように歪むのかが不明確。
- ・どの層を圧縮すると、文法が壊れるのか、あるいは意味が壊れるのかという機能的な相関が未解明。
- ・見た目上の文章の体裁が保たれていても、内部的なハルシネーションが発生するリスクがある。
// Approach
著者は、小規模なTransformerモデル「SuccuLM」を用い、FFN層の圧縮度合いや対象層を系統的に変化させる実験を行った。手法の詳細は以下の通りである。
- ・FFN層に対し、テンソルネットワークを用いた分解と圧縮を適用。
- ・圧縮パラメータを調整し、FFNの前後で圧縮強度を変えるパターンを検証。
- ・破損させる層の組み合わせ(入口、中間、出口)を制御し、生成テキストの変化を観察。
- ・生成されたテキストを、文法、文脈、意味、語彙の観点から定性的に評価。
// Result
実験の結果、FFNの各層が脳の機能に対応するような役割を担っていることが示唆された。各層の役割と破損時の挙動は以下の通りである。
- ・第0層:文法構造(シンタックス)の維持。破損すると文法が崩壊する。
- ・第1層:文脈の想起と短期記憶。破損すると単語の異常な連呼が生じる。
- ・第2層:意味・属性(セマンティクス)の統合。破損すると属性の混濁が起きる。
- ・第3層:語彙選択と出力の調整。破損すると語彙の乱れや特殊トークンの漏出が起きる。
- ・破損の度合いにより、未知語が異常頻出する「sophiaトラップ」等の現象を確認した。
Senior Engineer Insight
> モデル圧縮において、一律の低ランク近似は極めて危険である。本実験は、層ごとに担う役割が異なることを示している。例えば、文法を維持したいなら第0層を、意味の深みを保ちたいなら第2層を重点的に保護すべきだ。実戦では、単なるPerplexityの低下だけでなく、特定の機能(文法や属性)が損なわれていないかを検証する「外科手術的」な評価指標が必要となる。