読み方 : エイダグラード

AdaGrad【Adaptive Gradient】

概要

AdaGradとは、機械学習などに用いられる勾配降下法を改良したアルゴリズムの一つで、パラメータごとに学習率を自動的に調整するもの。疎なデータ(大部分がゼロや欠損値)を扱う学習で収束を安定させる効果がある。
AdaGradのイメージ画像

機械学習では多変数で非線形の複雑な関数の最適化を行うため、勾配降下法など数値的な解法を用いることがある。これは、ある地点から始めて、関数の値が下がっていく方向を微分値(勾配)を元に判断し、歩幅に相当する「学習率」という値ずつ移動していく手法である。

AdaGradは各パラメータについて勾配降下法を実施する際、勾配の大きさに応じて学習率を動的に変化させる。具体的には、過去に計算された勾配の二乗を積算し、その平方根で学習率の初期値を割ったものを実際に用いる学習率とする。

このような計算法により、頻繁に大きな勾配を持つパラメータは累積値が大きくなって更新幅が小さく抑えられる一方、稀にしか更新されないパラメータは累積値が小さくなるため一度で比較的大きな幅の更新が行われる。

特徴量の出現頻度に偏りがある状況でも効率的に学習が進むとされ、特に、自然言語処理のように高次元かつ疎なデータを扱う分野で広く利用されてきた。学習率の調整が自動的に行われるため、事前に手動で細かなチューニングを行う必要がない点もメリットである。

ただし、累積値は学習を進めると単調に増え続けるため、パラメータによっては学習率が極端に小さくなって更新がほとんど行われなくなる場合がある。この点を改善する手法として「RMSprop」や「Adam」といった派生アルゴリズムが開発されている。

(2025.12.4更新)
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。