工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Equipment >> 産業用ロボット

ニューラルネットワークトレーニングにおける極小値の理解

この記事では、パーセプトロンが適切な分類精度を達成できなくなる可能性のある問題について説明します。

AACニューラルネットワークシリーズでは、多層パーセプトロンニューラルネットワークの理解と開発に関連する幅広いテーマを取り上げました。極小値に関するこの記事を読む前に、以下のシリーズの残りの部分に追いついてください:

  1. ニューラルネットワークを使用して分類を実行する方法:パーセプトロンとは何ですか?
  2. 単純なパーセプトロンニューラルネットワークの例を使用してデータを分類する方法
  3. 基本的なパーセプトロンニューラルネットワークをトレーニングする方法
  4. 単純なニューラルネットワークトレーニングを理解する
  5. ニューラルネットワークのトレーニング理論の概要
  6. ニューラルネットワークの学習率を理解する
  7. 多層パーセプトロンを使用した高度な機械学習
  8. シグモイド活性化関数:多層パーセプトロンニューラルネットワークでの活性化
  9. 多層パーセプトロンニューラルネットワークをトレーニングする方法
  10. 多層パーセプトロンのトレーニング式とバックプロパゲーションを理解する
  11. Python実装のためのニューラルネットワークアーキテクチャ
  12. Pythonで多層パーセプトロンニューラルネットワークを作成する方法
  13. ニューラルネットワークを使用した信号処理:ニューラルネットワーク設計での検証
  14. ニューラルネットワークのデータセットのトレーニング:Pythonニューラルネットワークをトレーニングおよび検証する方法
  15. ニューラルネットワークにはいくつの隠しレイヤーと隠しノードが必要ですか?
  16. 隠れ層ニューラルネットワークの精度を高める方法
  17. バイアスノードをニューラルネットワークに組み込む
  18. ニューラルネットワークトレーニングにおける極小値の理解

ニューラルネットワークのトレーニングは複雑なプロセスです。幸い、その恩恵を受けるために完全に理解する必要はありません。私たちが使用するネットワークアーキテクチャとトレーニング手順により、非常に高い分類精度を実現する機能システムが実現します。ただし、トレーニングには理論的な側面が1つあります。それは、やや厄介ですが、注意を払う価値があります。

これを「極小値の問題」と呼びます。

極小値が注目に値するのはなぜですか?

ええと…わかりません。ニューラルネットワークについて最初に学んだとき、少なくとも複雑な入出力関係を扱っている場合は、極小値がトレーニングを成功させる上での重大な障害であるという印象を持ちました。しかし、最近の研究は極小値の重要性を軽視していると思います。おそらく、新しいネットワーク構造と処理技術によって問題の深刻さが緩和されたか、ニューラルネットワークが実際に目的のソリューションに向かってどのようにナビゲートするかをよりよく理解しているだけかもしれません。

この記事の最後で、極小値の現在のステータスを再検討します。今のところ、私の質問に次のように答えます。最初に、最急降下法を介してネットワークをトレーニングするときに実際に何が起こっているかについてより深く考えるのに役立つため、極小値は注目に値します。次に、極小値は次のとおりです。または少なくともだった —実際のシステムでニューラルネットワークを実装する上での重大な障害と見なされています。

極小値とは何ですか?

第5部では、以下に示す「エラーボウル」について検討しました。トレーニングは、基本的にこのボウルの最低点の探求であると説明しました。

:この記事全体を通して、私の画像と説明は3次元構造の直感的な理解に依存しますが、一般的な概念は3次元の関係に限定されないことに注意してください。実際、次元が2つの入力変数と1つの出力変数をはるかに超えるニューラルネットワークを頻繁に使用します。)

このボウルに飛び込むとしたら、毎回下にスライドします。 どこから始めても 、エラー関数全体の最低点に到達します。この最低点はグローバル最小値です 。ネットワークがグローバル最小値に収束すると、トレーニングデータを分類する能力が最適化され、理論的には 、これはトレーニングの基本的な目標です。グローバルな最小値に達するまでウェイトを変更し続けることです。

ただし、ニューラルネットワークは非常に複雑な入出力関係を近似できることを私たちは知っています。上記のエラーボウルは、「非常に複雑な」カテゴリに正確には当てはまりません。これは、関数\(f(x、y)=x ^ 2 + y ^ 2 \)のプロットにすぎません。

しかし、ここで、エラー関数が次のようになっていると想像してください。


またはこれ:

またはこれ:

これらの関数の1つにランダムにジャンプした場合、極小値にスライドダウンすることがよくあります。グラフのローカライズされた部分の最低点にいることになりますが、グローバルにはほど遠い可能性があります。 最小。

同じことがニューラルネットワークにも起こり得ます。最急降下法はローカルに依存します ネットワークをグローバルに導く情報 最小。ネットワークには、エラーサーフェス全体の特性に関する事前の知識がないため、ローカル情報に基づいてエラーサーフェスの下部のように見えるポイントに到達したとき 、地形図を引き出して、上り坂に戻る必要があると判断することはできません。 他のすべてよりも実際に低いポイントを見つけるために。

基本的な最急降下法を実装するときは、ネットワークに「エラーサーフェスの下部を見つけて、そこにとどまる」と伝えています。 「エラーサーフェスの下部を見つけて、座標を書き留めてから、次の座標が見つかるまで上り坂と下り坂をハイキングし続けます。終わったら教えてください。」

本当にグローバルな最小値を見つけたいですか?

グローバル最小値が最適なソリューションであると想定し、トレーニングがグローバル最小値に向かって継続するのではなく、ローカル最小値で「ストール」する可能性があるため、ローカル最小値に問題があると結論付けるのは合理的です。

この仮定は多くの場合に有効だと思いますが、ニューラルネットワークの損失面に関するかなり最近の研究では、グローバルな最小値を見つけるネットワークはオーバートレーニングされ、したがって少なくなるため、複雑度の高いネットワークは実際には極小値の恩恵を受ける可能性があることが示唆されています新しい入力サンプルを処理するときに効果的です。

ここで関係するもう1つの問題は、鞍点と呼ばれる表面の特徴です。以下のプロットで例を見ることができます。実際のニューラルネットワークアプリケーションのコンテキストでは、エラーサーフェスの鞍点は、実際には極小値よりも深刻な問題である可能性があります。

結論

この極小値の議論を楽しんでいただけたと思います。次の記事では、ニューラルネットワークがグローバル最小値に到達するのに役立ついくつかの手法について説明します(実際にそれが私たちが望んでいることである場合)。


産業用ロボット

  1. ネットワークトポロジー
  2. ネットワークプロトコル
  3. STは、STM32ニューラルネットワーク開発者ツールボックスを使用して、AIをエッジおよびノー​​ド組み込みデバイスに駆動します
  4. CEVA:ディープニューラルネットワークワークロード用の第2世代AIプロセッサ
  5. ニューラルネットワークへのバイアスノードの組み込み
  6. 隠れ層ニューラルネットワークの精度を上げる方法
  7. ニューラルネットワークにはいくつの隠しレイヤーと隠しノードが必要ですか?
  8. 人工ニューラルネットワークは無線通信を強化することができます
  9. 大規模なニューラルネットワークをトレーニングすると、284,000キログラムのCO2を排出できます
  10. ロボットファイバーレーザー切断とプラズマ切断を理解する
  11. データの回復:NISTのニューラルネットワークモデルは、高密度の画像から小さなオブジェクトを検出します