3つの勾配降下法アルゴリズム(BGD、SGD、MBGD)の違い

3つの勾配降下法アルゴリズム(BGD、SGD、MBGD)の違い

序文

ネットワークをトレーニングするときに、batch_size を設定することがよくあります。この batch_size は何に使用されますか? 10,000 枚の画像のデータセットはどのくらいの大きさにする必要がありますか? これを 1、10、100、または 10,000 に設定するとどのような違いがありますか?

  1. # 手書き数字認識ネットワークのトレーニング方法 
  2. ネットワーク.fit(  
  3. 列車画像、  
  4. トレーニングラベル、  
  5. エポック=5,  
  6. バッチサイズ=128)

バッチ勾配降下法 (BGD)

勾配降下法アルゴリズムは、一般的に損失関数を最小化するために使用されます。元のデータをネットワークに入力すると、ネットワークは特定の計算を実行し、ネットワークの計算結果と実際の状況のギャップを表す損失関数を取得します。勾配降下法アルゴリズムは、トレーニングされた結果が実際の状況により適合するようにパラメータを調整するために使用されます。これが勾配降下法の意味です。

バッチ勾配降下法は、勾配降下法の最も原始的な形式です。その考え方は、すべてのトレーニング データを使用して勾配をまとめて更新することです。勾配降下法アルゴリズムでは、損失関数の導関数を見つける必要があります。トレーニング データ セットが比較的大きい場合は、すべてのデータをまとめて読み込み、ネットワークでまとめてトレーニングし、合計する必要があると考えられます。これは巨大な行列になり、計算量も非常に膨大になります。もちろん、これには利点もあります。つまり、すべてのトレーニング セットが考慮されるため、ネットワークは最適な (極端な) 方向に最適化される必要があります。

確率的勾配降下法 (SGD)

バッチ勾配降下法とは異なり、確率的勾配降下法の考え方は、一度に 1 つのトレーニング セットを取り出してフィッティング トレーニングを実行し、反復トレーニングを実行するというものです。トレーニング プロセスでは、まずトレーニング データを取り出し、ネットワーク パラメータを修正して適合させ、パラメータを変更します。次に、次のトレーニング データを取り出し、修正したばかりのネットワークを使用して適合させてパラメータを変更します。これを繰り返して、各データがネットワークに入力されるまで繰り返し、パラメータが比較的安定するまで繰り返します。利点は、各フィッティングに 1 つのトレーニング データのみが使用され、更新の反復の各ラウンドが非常に高速になることです。欠点は、フィッティングが実行されるたびに 1 つのトレーニング データのみが考慮され、最適化の方向がトレーニング セット内のネットワークの全体的な最適方向であるとは限らず、多くの場合、ジッタが発生したり、ローカル最適値に収束したりすることです。

ミニバッチ勾配降下法 (MBGD)

ミニバッチ勾配降下法は、今でもコンピューターで最も一般的に使用されている妥協案を使用しています。ネットワークがトレーニングされるたびに、トレーニング データ セット全体ではなく、トレーニング データ セット内の特定のデータ セットでもなく、その一部、たとえば毎回 20 個の入力がトレーニングされます。これにより、データ量が多すぎて計算が遅くなったり、特定のトレーニング サンプルの特定のノイズ特性によってネットワークが激しく振動したり、最適でない方向に最適化されたりすることがなくなると考えられます。

これら 3 つの勾配降下アルゴリズムの計算方法を比較します。バッチ勾配降下法は大きな行列に対する演算であり、行列計算の最適化を使用して並列計算を実行することを検討できますが、メモリなどのハードウェア性能に対する要件が高くなります。ランダム勾配降下法の各反復は前の計算結果に依存するため、並列計算はできず、ハードウェア要件は低くなります。また、小さなバッチ勾配降下法では、各反復はより小さな行列であり、ハードウェア要件は高くありません。同時に、行列演算は並列計算でき、複数の反復間でシリアル計算が使用されるため、全体的に時間が節約されます。

下の図を見ると、3 つの勾配降下アルゴリズムによるネットワークの最適化の反復プロセスがよりよく反映されており、より直感的な印象を与えることができます。

要約する

勾配降下アルゴリズムの調整では、トレーニング データ セットが非常に小さい場合は、バッチ勾配降下法を直接使用できます。一度に取得できるトレーニング データが 1 つだけの場合、またはトレーニング データがリアルタイムでオンラインで送信される場合は、確率的勾配降下法を使用できます。その他の場合や一般的な場合は、バッチ勾配降下アルゴリズムを使用する方が適切です。

<<:  今年の主要リリース: 人工知能開発レポート 2020

>>:  IDC: 2021 年の中国スマート デバイス市場に関するトップ 10 の予測

ブログ    
ブログ    
ブログ    

推薦する

AI教育を普及させるために「幼少期から始める」という考え方は、学校、親、社会にますます受け入れられつつあります。

[[254737]]小中学生の91.7%が、AI関連のコンテンツについて学ぶことに多少なりとも非常...

...

GPT-3 ハイパーパラメータは単一の GPU で解決できます。まず小さなモデルをトレーニングし、ワンクリックで移行します

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

再帰アルゴリズムの深い理解、誤解された再帰

[[333118]]再帰は、プログラミングの本で説明するのが最も難しい部分である魔法のアルゴリズムで...

機械学習技術におけるアンサンブル学習とは何ですか?

[51CTO.com クイック翻訳] アンサンブル学習は強力な機械学習技術の 1 つです。アンサン...

...

...

...

中国航空工業集団の「ドラゴンネスト」の初飛行は、電力検査のインテリジェント時代の幕開けを告げる

最近、北京市南六環路の北京延尊物流園区付近の安坊線70号塔の下で、中飛Avi Dragon Nest...

マスク氏はAIが人間を超えると述べ、それを信じない人は単に賢いだけだと語る

北京時間7月23日、テスラのCEOイーロン・マスク氏は水曜日、人工知能(AI)の将来についての懸念を...

自然言語処理がビジネスインテリジェンスの未来である理由

[[187102]] Siri に道順を尋ねるたびに、複雑なコード列がアクティブ化され、「Siri」...

...

新しい人工知能マシンが数字間の隠れた関係を発見?あるいは数学的な推測を証明するのに役立つかもしれない

数字間の隠れた関係は、証明が必要な場合に数学的推測を確認できるラマヌジャンマシンと呼ばれる新しいタイ...

ヘルスケアにおける人工知能:現在と未来

IDCが発表した最新データによると、ソフトウェア、ハードウェア、サービスを含む世界の人工知能の収益は...