指数移動平均(EMA)とは、過去のデータよりも直近のデータに高い重みを置き、指数関数的に重みを減衰させながら算出する平均計算手法です。機械学習では最適化アルゴリズムの勾配平滑化やモデルの重みパラメータの安定化などに広く利用され、ノイズを抑えつつ変化に素早く追従できる特徴を持ちます。
指数移動平均とは
指数移動平均は、時系列データや反復計算において、過去の履歴を考慮しつつ直近の値を重視して滑らかにする平滑化手法です。
詳しく解説
指数移動平均は、過去のすべてのデータを等しく扱うのではなく、直近のデータほど大きな重みを与え、過去に遡るほど指数関数的に重みを減少させる仕組みを持っています。計算は直前の移動平均値と新しいデータ点の加重和によって逐次的に行われるため、すべての履歴データをメモリに保持する必要がなく、計算コストとメモリ効率に優れています。ディープラーニングにおいては、確率的勾配降下法のノイズを抑制するモーメンタム手法や、学習を安定化させる最適化アルゴリズムであるAdamなどの内部計算で中心的な役割を果たしています。また、学習中のモデルのパラメータそのものを指数移動平均で追従・保存することで、検証時の汎化性能を高める技術としても不可欠です。
具体例・使われ方
ディープラーニングのモデル訓練において、各ステップで更新されるパラメータの指数移動平均を別途保持し、最終的な推論用モデルとして採用する手法があります。これにより、ミニバッチごとの学習のばらつきを抑えて安定した予測精度が得られます。また、画像生成モデル(Diffusion Modelなど)や強化学習のターゲットネットワーク更新時にも広く活用されています。
似た用語との違い
単純移動平均(SMA)との違いは、重み付けの分布と計算効率にあります。単純移動平均は一定期間のデータをすべて均等な重みで平均するため、急激なトレンドの変化に対して応答が遅れる傾向があり、過去のデータを保持し続ける必要があります。一方、指数移動平均は直近の変化に素早く反応し、直前の平均値と最新値だけで逐次更新できる利点があります。
注意点
平滑化の度合いを制御する減衰率(平滑化係数)のハイパーパラメータ設定が適切でない場合、直近のノイズに過剰に反応してしまったり、逆に変化への追従が遅れすぎたりする問題が生じます。また、計算初期のデータ数が少ない段階では初期値の影響を強く受けるため、バイアス補正を行う必要があります。