バッチ サイズは、機械学習における重要なハイパーパラメータの 1 つです。このハイパーパラメータは、内部モデルパラメータを更新する前に処理するサンプルの数を定義します。 上の図は、SGD を使用してさまざまなバッチ サイズをテストする例を示しています。 バッチ サイズは、多くのディープラーニング ベースのニューラル ネットワークのパフォーマンスを決定します。 学習プロセスに最適なバッチ サイズを評価する研究が数多く行われてきました。 たとえば、SGD の場合、バッチ勾配降下法 (すべてのトレーニング例をバッチで使用)、ミニバッチ法 (トレーニング データのサブセットを使用)、または各例の後に更新する法 (確率的勾配降下法) を使用できます。 これらの異なる処理方法によって、モデルトレーニングの有効性が変化する可能性があります。 私たちが重視するパフォーマンス指標は、精度だけではありません。 モデルの一般化能力がより重要になるかもしれません。 なぜなら、私たちのモデルは、目に見えないデータに対してうまく機能しなければ役に立たないからです。バッチ サイズを大きくすると、ネットワークの一般化が悪くなります。 論文「ディープラーニングのための大規模バッチトレーニング:一般化ギャップとシャープミニマ」の著者らは、この現象を調査し、なぜそれが起こるのかを解明しようとしました。 彼らの調査結果は興味深いので、この記事では詳しく説明します。 これを知っておくと、独自のニューラル ネットワークとそのトレーニング方法について、より適切な決定を下すことができます。 論文の前提を理解する論文を理解するには、まず著者が何を証明しようとしているのかを理解する必要があります。 著者らは、バッチサイズが大きいほど一般化が悪くなる理由を発見したと主張している。 彼らは、「大規模バッチ法はトレーニング関数とテスト関数の鋭い最小値に収束する傾向があり、それが一般化の低さにつながることが知られているという見解を裏付ける数値的証拠を提供しています。小規模バッチ法は一貫して平坦な最小値に収束しており、私たちの実験は、これが勾配推定値に内在するノイズによるものだという一般的な見解を裏付けています。」この投稿ではこれについてさらに詳しく説明しますので、順を追って説明しましょう。 次の図は、鋭い最小値と平坦な最小値の違いを示しています。 鋭い極小値の場合、Xの比較的小さな変化が損失の大きな変化につながる可能性がある。 この違いを理解したら、著者が検証する 2 つの (関連する) 主な主張を理解しましょう。
著者らは論文の中でこの点を強調し、次のように述べています。 次に、彼らが提供する証拠を見てみましょう。 彼らが実験を準備する方法のいくつかは興味深く、実験の準備について私たちに多くのことを教えてくれます。 シャープネスの定義シャープネスは、理解しやすく視覚化しやすい直感的な概念です。 しかし、いくつか問題もあります。 たとえば、高次元データの機械学習計算/視覚化は、多くのリソースを消費し、時間がかかります。 著者らもこれについて言及しており、より単純なヒューリスティック手法を使用しました。つまり、隣接するポイントを通じて鮮明度をチェックし、関数の最大値を使用して感度を計算できるのです。 元の論文にはこう書かれていた。 私たちは、不完全ではあるものの、大規模なネットワークでも計算上実行可能な感度測定を採用しています。 これは、解の小さな近傍を探索し、その近傍で関数 f が到達できる最大値を計算することに基づいています。 この値を使用して、特定の局所最小値におけるトレーニング関数の感度を測定します。 最大化手順は不正確であり、Rn の小さな部分空間でのみ f の大きな値を取得することで誤解を避けるため、ランダム多様体だけでなく Rn 全体の空間にわたって最大化を実行します。 著者らが手順に一定の相互検証を組み込んだことに注意することが重要です。 ソリューション空間から複数のサンプルを取得することは過度に単純化されているように思えるかもしれませんが、非常に強力なアプローチであり、ほとんどの場合にうまく機能します。 計算式に興味がある方は、次のようになります。 関連する認定を見る著者らが提示した基本的な用語/定義を理解したところで、提示された証拠のいくつかを見てみましょう。 この投稿では論文/付録のすべての内容を共有することはできないため、すべての詳細に興味がある場合は、元の論文を読むことができます。 上の図では、クロスエントロピー損失とシャープネスの関係をプロットしています。グラフからわかるように、損失は実際には右に行くほど小さくなります。では、このグラフは何を意味しているのでしょうか? モデルが成熟するにつれて (損失が減少するにつれて)、大規模バッチ モデルの明瞭性が増します。著者の言葉を借りれば、「初期点付近の損失関数の値が大きい場合、ミニバッチ法とラージバッチ法は同様のシャープネス値を生成します。損失関数が減少するにつれて、ラージバッチ法に対応する反復のシャープネスは急速に増加しますが、ミニバッチ法の場合、シャープネスは最初は比較的一定のままで、その後減少します。これは、探索フェーズ後に平坦な最小化に収束することを示唆しています。」 著者らは結果を証明するため、他にもいくつかの実験を行っている。さまざまな種類のネットワークでのテストに加えて、小規模および大規模バッチ ネットワークの両方でウォーム スタートも使用しました。結果は私たちが見たものと非常に一致しています。 この論文で私が見つけた興味深い点の 1 つは、この一般化の低下は、バッチ サイズが大きい場合のモデルの過剰適合や過剰トレーニングとは関係がないことが示された点です。 過剰適合が一般化の低さの原因であると想定するのは簡単です (一般的に理解されているように) が、著者らはこれに反論しています。 彼らの主張を理解するには、この表をご覧ください。 通常、バッチを小さくしてトレーニングすると、トレーニング パフォーマンスが向上します。 ミニバッチトレーニングを使用した場合、トレーニング精度が低かったネットワークでも、トレーニング精度が高くなることがわかりました。 著者の次の原文は、キーポイントとして使用できます。「一般化ギャップは、統計ではよくある過剰適合や過剰トレーニングによるものではないことを強調します。この現象は、ある反復でピークに達し、その後モデルがトレーニング データの特性を学習するにつれて減少するテスト精度曲線の形で現れます。これは、実験で観察されたものではありません。F2 ネットワークと C1 ネットワークのトレーニング テスト曲線は、他のネットワークの代表である図 2 に示されています。したがって、モデルの過剰適合を防ぐことを目的とした早期停止のヒューリスティックな方法では、一般化ギャップを狭めることはできません。」 ネットワークがテスト精度にどれだけ早く収束するかを確認するつまり、これが過剰適合のケースであれば、バッチが大きい方法では一貫してパフォーマンスが低下することはないはずです。 代わりに、早めに停止することで、過剰適合を回避し、パフォーマンスをより近づけることができます。 これは私たちが観察したものではありません。 私たちの学習曲線はまったく異なる様相を描きます。 |
<<: AIリップリーディング、騒音環境でも最大75%の音声認識精度
音声テキスト変換(STT)システムは、話した言葉をテキストに変換できる方法です。私たちがよく使うWe...
機械学習の手法を使用して円の面積を計算します。円の面積はいくらかと誰かに尋ねると、r²だと答えるでし...
著者 | リチャード・マクマナス企画 | ヤン・ジェンWeb3 は Web2 を打倒することはできま...
5月29日、全国科学技術労働者の日が近づく中、アリババDAMOアカデミーのAIによって識別されラベル...
[[265146]]自然言語処理の基礎を学び、2 つの便利な Python パッケージを調べます。自...
[[313508]] Baidu と Nvidia Research Institute は、N カ...
[[338796]] 2017年に研究者たちは「2040年までにAIがほとんどのコードを書くように...
自動化の需要が継続的に高まっているため、ロボット産業の発展は加速段階に入り、わが国のロボット市場は最...
AI は、自動運転車、より優れたルートマッピング、より正確な予測を通じて、輸送と物流をよりスマートか...
北京時間4月16日、外国メディアの報道によると、ロボットが人間の仕事を代替するというのはSF映画のス...
[[330057]]人工知能 (AI) は、情報の収集からビジネス価値を抽出することを目的とするデー...
人工知能 (AI) は、退屈な日常的な作業を一つずつこなして世界を席巻しています。 AI を使用して...
OpenAI が GPT-4 を最初にリリースしてから約 4 か月が経ちました。しかし、時間が経つ...