ハイパーパラメータは変数 さまざまな側面を管理するシステムです一般的なハイパーパラメータは次の 3 つです。
一方、パラメータは 重みやバイアスなどの変数ですイン つまり、ハイパーパラメータはユーザーが制御する値です。パラメータは値であり、 計算されます。
学習率
学習率は、 自動スクロールの速度に影響している モデルが収束します。学習率が低すぎると、モデルに長時間かかることがある 収束します。ただし、学習率が高すぎると、モデルは学習をまったく 収束しますが、逆に最小化する重みとバイアスの 損失です。目標は、高すぎず低すぎない学習率を選択することです。 モデルがすばやく収束することを示します。
学習率によって重みの変化の大きさが決まる 勾配降下法の各ステップで、バイアスとバイアスがこのモデルは、 勾配を学習率で計算してモデルのパラメータ(重み とバイアス値など)が使用されます。勾配のステップ 3 では、 「少量」は「小量」です。方向に進む 学習率を意味します
古いモデル パラメータと新しいモデル パラメータの違いは次のとおりです。 損失関数の傾きに比例しますたとえば、傾きが モデルのステップが大きくなります。小さくても、小さな一歩で済みます。対象 たとえば、勾配の大きさが 2.5、学習率が 0.01 の場合、 モデルはパラメータを 0.025 ずつ変更します。
理想的な学習率によって、モデルが妥当な数内に収束する できます。図 21 の損失曲線では、モデルが 収束し始める前の最初の 20 回の反復で改善しています。
図 21.次の学習率でトレーニングされたモデルを示す損失グラフ 迅速に収束します。
対照的に、学習率が小さすぎると、学習を終えるまでに何度も反復する必要が 収束します。図 22 の損失曲線は、モデルによって 各イテレーションによる改善:
図 22.小さな学習率でトレーニングされたモデルを示す損失グラフ。
学習率が大きすぎると、反復のたびに収束しないためです。 損失が跳ね返ったり、継続的に増加したりします。図 23 では、 この曲線では、反復処理のたびにモデルが減少し、その後損失が増加していることがわかります。 図 24 では、後の反復処理で損失が増加します。
図 23.次の学習率でトレーニングされたモデルを示す損失グラフ 大きくなりすぎて損失曲線が急激に変動し、 反復処理が増加します。
図 24.次の学習率でトレーニングされたモデルを示す損失グラフ 後のイテレーションで損失曲線が急激に増加します。
演習:理解度をチェックする
バッチサイズ
バッチサイズはハイパーパラメータであり、 重みを更新する前にモデルが処理するサンプルの数を指します バイアスですモデルはすべての サンプルを更新してから、重みとバイアスを更新します。ただし、 データセットには数十万、場合によっては数百万のサンプルが含まれます。 フルバッチは実用的ではありません
以下を必要とせずに平均の適切な勾配を取得するための一般的な 2 つの手法 データセット内のすべての例を確認してから、重みとバイアスを 確率的勾配降下法 ミニバッチの確率的勾配 降下性:
確率的勾配降下法(SGD): 確率的勾配降下法のみで使用する 反復処理ごとに 1 つのサンプル(バッチサイズ 1)が返されます。十分な数 SGD は動作しますが、ノイズが非常に多くなります。「ノイズ」特定のキャンペーンにおける トレーニング中に損失を減少させるのではなく増加させる 必要があります。「確率的」という用語は、含まれる 1 つの例は 各バッチはランダムに選択されます
次の画像では、モデルの変化に応じて損失がわずかに変動しています。 SGD を使用して重みとバイアスを更新するため、損失にノイズが生じる可能性があります。 graph:
図 25.確率的勾配降下法(SGD)でトレーニングしたモデル 損失曲線で表します
なお、確率的勾配降下法を使用すると、モデルの 収束付近だけでなく、損失曲線全体をカバーします。
ミニバッチ確率的勾配降下法(ミニバッチ SGD): ミニバッチ 確率的勾配降下法は、フルバッチと SGD の間の妥協点です。対象 $ N $ のデータポイントの数。バッチサイズは 1 より大きい任意の数にできる $ N $ 未満といった条件です。モデルが各バッチに含まれるサンプルを選択する 勾配を平均化してから重みとバイアスを 反復処理ごとに 1 回です。
各バッチのサンプル数はデータセットと コンピューティング リソースを制限します。一般に、バッチサイズが小さいと、 SGD など、バッチサイズが大きいと、フルバッチ勾配降下法のように動作します。
図 26.ミニバッチ SGD でモデルをトレーニング。
モデルをトレーニングする際、ノイズは望ましくないものと見なされ、 いくつかの特性があります。ただし、ある程度のノイズが よいことです。以降のモジュールでは、ノイズがモデルにどのように役立つかを 適切に一般化して、 ニューラル ネットワークにおける最適な重みとバイアス 提供します。
エポック
トレーニング中のエポックとは、トレーニング モデルはトレーニング セット内のすべてのサンプルを 1 回処理しました。たとえば、 1,000 個のサンプルと 100 個のサンプルのミニバッチ サイズで モデルを 10 回反復して、 1 エポックのみです。
通常、トレーニングには多くのエポックが必要です。つまり システムは すべてのサンプルが複数回出現する場合です。
エポック数は、モデルを開始する前に設定するハイパーパラメータ 説明します。多くの場合、このプロセスに要するエポックの数を 必要があります。一般にエポックが多いほど良いモデルになりますが、 トレーニングにも時間がかかります
図 27.フルバッチかミニバッチか。
次の表では、バッチサイズとエポックが 複数回呼び出されることがあります。
バッチタイプ | 重みとバイアスの更新が発生するタイミング |
---|---|
フルバッチ | モデルがデータセット内のすべてのサンプルを確認した後。たとえば データセットに 1,000 件のサンプルが含まれ、モデルのトレーニングが 20 エポックまで行われ、 モデルは重みとバイアスをエポックごとに 1 回、20 回更新します。 |
確率的勾配降下法 | モデルがデータセット内の 1 つの例を確認した後。 たとえば、データセットに 1,000 個の例が含まれ、トレーニング 20 エポックの場合、モデルは重みとバイアスを 20,000 回更新します。 |
ミニバッチ確率的勾配降下法 | モデルが各バッチの例を確認した後。たとえば データセットに 1,000 件のサンプルが含まれ、バッチサイズが 100 で、 トレーニングは 20 エポックまで行われ、重みと 200 倍にします |