【G検定】確率的機械学習や分散処理、最適化アルゴリズムの用語まとめ

前書き

分からないところをまとめた。

Dist Belief

Googleが開発した大規模分散深層ネットワーク。
並列処理によるDeepLearning計算の高速化に役立ち、
Downpur SGD(SGDの高速化)とSandblaster L-BFGS(並列処理プログラム)により構成されています。

qiita.com

GPGPU

画像処理以外の目的で最適化されたGPU

TPU

Google社のテンソル計算処理に最適化された演算装置。

Hadoop

Hadoopとは、大規模データの蓄積・分析を分散処理技術によって実現するオープンソースミドルウェア

確定的モデルと確率的モデル

機械学習のモデルとしてディープラーニングの基礎は多層パーセプトロンであり、
一般的にはこちらが有名ですが、これは確定的モデル。
確率的モデルとは統計的機械学習です。

深層ボルツマンマシン

観測データの確率場をノードとし、無向の結合で依存関係を表す。
具体的にはボルツマンマシンというものがあり、
ボルツマンマシンは量子的統計力学の概念を応用し、
データ分布とボルツマンマシン分布を最尤推定する。
対数尤度関数とKL距離で二つの分布のより良い近似度を更新していく考え方である。

i101330.hatenablog.com

深層信念ネットワーク

観測データの確率場をノードとし、有向の結合で依存関係を表す。

qiita.com

SGD確率的勾配降下法

損失関数を微分して勾配を計算し、勾配方向へ事前に決めた学習係数だけ進むことを繰り返す。
SGDは一回の更新ではデータを1つしか使わない。
そのため毎回パラメータ更新で同じデータを使っていると、極小値から抜け出すこともあるらしい。
→ミニバッチSGDで改善
ただミニバッチSGDでは学習を遅くしてしまう欠点がある。

Momentum

物理的な動きを模倣したもの、速度と加速度を持つ。
学習率は一定で以前使用した勾配が速度に残る。
SGDで発生した振動を相殺するため振動が小さくなる。
ただ損失が落ちにくいという欠点もあるため、NAGなどで改善。

AdaGrad

パラメータそれぞれに個別の学習係数を与える。
大きく動いたパラメータの学習係数は小さくなる。

RMSProp

指数移動平均を蓄積することで、過去に大きく動いたパラメータの学習係数も時間が経つと再度大きく動くようになる。
Momentumと同様、発生した振動を相殺するため振動が小さくするために導入された。
振動方向の学習率を下げてあげれば振動を抑えられるという理論。

Adam

AdaGradとMomentumの融合。
移動平均で振動を抑制するモーメンタム と 学習率を調整して振動を抑制するRMSProp の長所を両獲り。
勾配の平均と分散を推定し利用する。

qiita.com