メインコンテンツへスキップ
AI用語集に戻る
AI用語

スパース性(希薄性)

Sparsity

解説

多数の選択肢の中で、本当に重要な(価値のある)ものはごくわずかしか存在しないというデータの性質。

さらに詳しく解説

スパース性(Sparsity / 希薄性)は、データやモデルの中で「ほとんどの要素がゼロ」に近い状態を指します。AIではモデルの軽量化、計算の高速化、表現学習の解釈性向上といった目的で活用される重要な概念です。

イメージ

密な(Dense)行列とスパースな(Sparse)行列の対比:

密:[0.5, 0.3, 0.2, 0.4, 0.7, 0.1, 0.6, 0.9]   全要素に値
スパース:[0.5, 0,   0,   0,   0.7, 0,   0,   0]   ほとんどゼロ

スパース性が高いほど、ゼロでない要素だけを記録すればよいので、メモリと計算量を節約できます。

AI/機械学習でのスパース性

1. モデル重みのスパース化

モデルパラメータの多くをゼロに刈り込む(プルーニング)ことで、モデルサイズを削減します。

手法概要
Magnitude Pruning絶対値の小さい重みを削除
構造化プルーニングレイヤー・チャネル単位で削除
動的スパース化学習中に重要度を判断して刈り込み

2. 活性化のスパース化

ニューラルネットの中間層で「ゼロ出力のニューロン」を増やす設計。ReLU活性化関数は自然にスパース化を促します。

3. 専門家混合(MoE)

「巨大なモデルの一部だけを毎回動かす」MoEは、構造的スパース性の代表例です。総パラメータ数は膨大でも、推論時に活性化するのは一部のみ。

4. スパースAttention

標準のAttentionは入力長の二乗に比例して計算量が増えますが、スパースAttentionは関連性の高い部分だけに注目することで計算を削減します。

メリット

  • メモリ削減(特に大規模モデル)
  • 推論速度向上
  • 解釈性向上(少数の重要な特徴に注目)
  • エネルギー効率向上

留意点

  1. 専用ハードウェア・実装が必要:単に「ゼロにする」だけでは速くならない
  2. 精度低下のリスク:スパース化しすぎると性能が落ちる
  3. 実装の複雑さ:スパース行列の計算は密行列より扱いにくい
  4. 学習との相性:スパース性を保ったまま学習する設計が必要

関連手法

  • **量子化**:精度を下げて軽量化(量子化参照)
  • **蒸留**:大モデルから小モデルへ知識転移
  • プルーニング:重要度の低いパラメータを削除
  • L1正則化:学習時にスパース性を促す

ハードウェア対応

近年のNVIDIAのGPU(A100以降)は「2:4スパース」パターンに対応するなど、ハードウェア側でもスパース演算が高速化されています。

スパース性は「巨大化するAIモデルを実用的に動かす」ための重要な武器で、量子化・蒸留と並ぶモデル軽量化の三本柱の一つです。

AI用語集に戻る

この用語をシェア