機械学習のエポックとは何ですか? 機械学習のエポックとは、何らかのデータを使用してモデルをトレーニングする場合に、トレーニング データセットがアルゴリズムを XNUMX 回完全に通過することを指します。 結果として、それは学習アルゴリズムのハイパーパラメータです。 デジタル時代の台頭に伴い、多くの人々がこの急速に進化する機械学習のトピックに関する情報を探し始めています。
による 洞察力の研究とコンサルティング、世界の深層学習市場は 415 年までに 2030 億米ドルに達すると予想されています。 機械学習のメリット しかし、これらの用語はあなたを混乱させますか? 心配しないで; 機械学習のエポックとは何かについてはすでに説明しました。
目次
機械学習のエポックとは何ですか?
トレーニング データセット全体の完全なサイクルは、機械学習のエポックと見なすことができます。これは、アルゴリズムがトレーニング全体で何回パスしたかを反映しています。
トレーニング アルゴリズムのエポック数は数千に達する可能性があり、手順はモデル エラーが十分に減少するまで無限に続くように設計されています。 例やチュートリアルには、10、100、1000、またはそれ以上の数値が含まれることがよくあります。
高度なアルゴリズムを機械学習で使用して、データを評価し、そこから学習し、これらの学習ポイントを適用して興味深いパターンを見つけます。 機械学習モデルは、多くのエポックを使用して開発されています。 これには、データセットから学習した内容ごとの学習が必要なため、初期段階では人間とのやり取りが必要です。
機械学習モデルには、教師あり学習モデルと教師なし学習モデルの XNUMX つのカテゴリがあります。 これらのモデルが学習能力を構築するには、特定のデータセットが必要です。これらのトレーニング データセットは、望ましい結果とエージェントが完了する必要があるタスクに従って計画する必要があります。
チェックアウトします 機械学習の歴史
主にトレーニング データセット全体の XNUMX つのサイクルと見なされるエポックを完全に定義しようとする場合、このコンテキストでエポックを構成する基本的な概念と用語を理解することが重要です。 エポックを構成するデータ バッチと反復の集合体が、最終的にエポックを構成します。
データセットはバッチに編成されます (特にデータが非常に大きい場合)。 XNUMX つのバッチがモデルを介して実行され、フレーズを誤用する人によって XNUMX つの反復と見なされることがあります。 通常、反復とエポックは同義語として使用されます。
バッチ サイズがトレーニング データセット全体の場合、エポックの数は反復の数と等しくなります。 一般的に言えば、これは実際的な理由から当てはまりません。 モデルの作成中に複数のエポックが使用されることがよくあります。 一般的な関係は デ=イブ データセットのサイズが d、エポック数が e、反復回数が I、バッチ サイズが b の場合。
たとえば、「タスク」をポイント A からポイント B に到達することとして定義すると、ポイント A からポイント B への実行可能な各パスを「エポック」として定義し、ストップやターンなどの正確なルート情報を次のように定義できます。 「繰り返し」。
混乱していますか? それらを個別に調べてみましょう。
機械学習におけるバッチサイズとは?
XNUMX 回の反復で使用されるトレーニング サンプルの数は、機械学習では「バッチ サイズ」と呼ばれます。 バッチ サイズには XNUMX つの可能性があります。
- バッチモード: バッチサイズが完全なデータセットに等しいため、反復とエポックの値は等しくなります。
- ミニバッチモード: データセット全体のサイズはバッチ サイズよりも小さく、XNUMX より大きくなります。 通常、合計はデータセット全体のサイズで割ることができます。
- 確率モード: 単一のバッチサイズがある場合。 その結果、勾配とニューラル ネットワークのパラメーターは、各サンプルに従って変更されます。
機械学習におけるバッチサイズとエポック
- バッチ サイズは、モデルが変更される前に処理されるサンプルの数です。
- トレーニング データセットの完全な反復回数がエポック数です。
- バッチの最小サイズは XNUMX で、最大サイズはトレーニング データセットのサンプル数以下である必要があります。
- XNUMX から無限大までのエポック数の整数値を選択できます。 プロセスは無期限に実行でき、時間の経過に伴うモデル エラーの変化 (または変化の欠如) など、所定のエポック数以外の基準によって停止することさえできます。
- どちらも整数値を持ち、学習アルゴリズムのハイパーパラメータです。つまり、学習プロセスによって発見された内部モデル パラメータではなく、学習プロセス パラメータです。
- 学習アルゴリズムのバッチ サイズとエポック数を指定する必要があります。
これらのパラメーターを構成するための秘密の数式はありません。 多くの値をテストして、どの値が状況を最もよく解決するかを判断する必要があります。
機械学習における反復とは何ですか?
反復と呼ばれる機械学習の概念は、アルゴリズムのパラメーターが変更される回数を表します。 これが具体的に何を意味するかは、コンテキストによって決まります。 次のアクションは通常、ニューラル ネットワークのトレーニングの XNUMX 回の反復に含まれます。
- トレーニング データセットのバッチ処理。
- コスト関数の計算。
- すべての重み係数の修正と逆伝播。
機械学習におけるエポックと反復
反復には、XNUMX つのバッチの処理が伴います。 すべてのデータは、XNUMX つのエポック内で XNUMX 回処理されます。
たとえば、バッチサイズが 10 の 1000 個の画像のセットから 10 個の画像を各反復で処理する場合、100 エポックを完了するのに XNUMX 回の反復が必要になります。
エポック数の選択方法
重みはネットワークの反復ごとに変更され、曲線はアンダーフィッティングから理想、オーバーフィッティングにシフトします。 エポックの数は、トレーニングを開始する前に決定する必要があるハイパーパラメーターであり、それを選択するための XNUMX つの式はありません。
エポックを増やすと精度が上がりますか?
ニューラル ネットワークを操作する場合でも、地質学的な時間スケールを決定する場合でも、多ければ多いほど良いとは限りません。 ケースごとに最適な数を見つける必要があります。
の課題をご覧ください 機械学習のライフサイクル 管理
機械学習でエポックが重要なのはなぜですか?
エポックは、データを最も正確に表すモデルを特定するのに役立つため、機械学習モデリングにおいて重要です。 ニューラル ネットワークは、指定されたエポックとバッチ サイズを使用してトレーニングする必要があります。
どちらのパラメーターの値を選択するための確立されたガイドラインもないため、それらを指定することは、科学というよりも芸術です。 実際には、データ アナリストは、特定の問題を最もよく解決する値を決定する前に、さまざまな値をテストする必要があります。
適切なエポックを決定する方法の XNUMX つは、学習曲線として知られるモデルのエラーに対してその値をチャート化することによって学習パフォーマンスを監視することです。 これらの曲線は、モデルがオーバーフィット、アンダーフィット、または適切にトレーニングされているかどうかを判断する際に非常に役立ちます。
トレーニングするエポック数は?
11 エポックは、ほとんどのデータセットをトレーニングするのに理想的な数です。
完全なデータセットを実行した後、同じ機械学習またはニューラル ネットワーク メソッドを繰り返し実行しなければならないというのは、正しくないように思えるかもしれません。
したがって、学習を最適化するために反復プロセスである勾配降下法を採用していることを覚えておく必要があります。 したがって、XNUMX 回のパスまたはエポックで重みを更新するだけでは不十分です。
XNUMX つのエポックによって、モデルが過適合になる可能性もあります。
機械学習における学習率
学習率は、損失関数を最小化することを目指しながら、各反復でステップ サイズを選択する機械学習および統計で使用される最適化手法の調整パラメーターです。
機械学習における学習率は、機械学習モデルが「学習」する速度を比喩的に表したものです。これは、新しく取得した情報が以前の知識に取って代わる量を決定するためです。 「ゲイン」という用語は、学習率を指すために適応制御に関する文献で頻繁に使用されます。
まとめ
エポックとは、機械学習で使用される用語で、すべてのトレーニング中にトレーニング データがアルゴリズムを介して実行される頻度を表します。 データポイント.
実際のアプリケーションの豊富なデータと多様なデータにより、適切なレベルのテスト データの正確性を得るには、数百から数千のエポックが必要になる場合があります。
チェックアウトします 機械学習の実例