ニューラル ネットワークのデバッグにイライラしていませんか?ここに16のヒントがあります

ニューラル ネットワークのデバッグにイライラしていませんか?ここに16のヒントがあります
[[201444]]ニューラルネットワークのデバッグは、専門家にとっても困難な作業です。数百万のパラメータが詰め込まれており、わずかな変更がこれまでの努力をすべて台無しにする可能性があります。しかし、デバッグと可視化がなければ、すべてが運次第となり、若さを無駄にしてしまうことになるかもしれません。 何をするか?ここにいくつかの方法をまとめましたので、お役に立てれば幸いです。 1. データセットの問題小さなデータセットでモデルをオーバーフィットさせてみます。一般的に、ニューラル ネットワークは数百回の反復後にデータをオーバーフィットします。損失が減少しない場合は、問題は深刻である可能性があります。最初に最小限のネットワークを構築してコアの問題を解決し、次に段階的にグローバルな問題に拡張することで、反復ロジックを使用して問題を解決します。たとえば、スタイル転送ネットワークを構築するときは、まず画像でトレーニングする必要があります。成功したら、あらゆる画像のスタイル転送を実現できるモデルを構築します。たとえば、歪みのあるバランスの取れたデータセットを使用してデータ分類モデルをトレーニングする場合、各カテゴリの入力トレーニング データの量は一貫している必要があります。そうしないと、何らかの過剰適合が発生します。ニューラル ネットワークはあらゆる歪みに対して不変である必要があり、そのために特別にトレーニングする必要があります。したがって、ある程度の歪んだデータを入力すると、ネットワークの精度が向上する可能性があります。ネットワーク容量とデータ サイズデータセットは、ネットワークが学習するのに十分な大きさである必要があります。大規模なネットワークを小さなデータセットと組み合わせると、学習プロセスが停止し、多数の入力が同じ出力を生成する可能性があります。小規模なネットワークを大規模なデータセットと組み合わせると、ネットワークが大量の情報を保存できないため、損失が急増します。平均中心化を使用すると、ネットワークからノイズの多いデータを削除し、トレーニング パフォーマンスを向上させ、場合によっては NaN の問題の解決にも役立ちます。ただし、時系列データの場合は、グローバル センタリングではなくバッチ センタリングを使用する必要があることに注意してください。 2. ニューラル ネットワークの問題については、まずはシンプルなモデルを試してください。ResNet -50、VGG19 などの標準的な大規模ネットワークを試して、実際にはわずか数層のネットワークで問題を解決できることに気付く人が多すぎます。したがって、大きな複合施設がない場合は、小さなネットワークから始めてください。 追加するものが増えるほど、問題を解決するためのモデルをトレーニングすることが難しくなります。小さなネットワークからトレーニングを開始すると、より多くの時間を節約できます。また、大規模なネットワークでは、より多くのメモリと計算が必要になります。視覚化が必要です。TensorFlowを使用する場合は、Tensorboard を使用する必要があります。それ以外の場合は、フレームワーク用の別のビジュアライザーを見つけるか、自分で作成してください。これは、トレーニングの早い段階で問題を発見するのに役立つためです。損失、重みのヒストグラム、変数、勾配などのデータが表示されるはずです。 コンピューター ビジョンで作業している場合は、常にフィルターを視覚化して、ネットワークが見ているものを明確に理解できるようにします。重みの初期化重みが正しく設定されていない場合、勾配の消失などの理由により、ネットワークが学習不能になる可能性があります。また、重みと学習率は相互に関連しており、学習率と重みが大きいと NaN 問題が発生する可能性があることを知っておく必要があります。 小規模なネットワークの場合、1e-2~1e-3 程度のガウス分布初期化子を使用すれば十分です。 これは、重みが何度も乗算され、非常に小さな数値になり、バックプロパゲーション ステップでの勾配がほぼ排除されるため、深いネットワークには役立ちません。 Ioffe と Szegedy のおかげで、多くのトラブルを回避できるバッチ正規化が実現しました。標準ネットワークを使用した標準的な問題すぐに使用できる事前トレーニング済みのモデルが多数あります。場合によっては、これらのモデルを直接使用したり、微調整してトレーニング時間を節約したりできます。基本的な考え方は、ほとんどのネットワークはさまざまな問題に対して同じ能力を持っているということです。たとえば、コンピューター ビジョンでは、ネットワークの最初の層は線や点などの単純なフィルターで構成されており、すべての画像がこのようになっているため、再トレーニングする必要はありません。学習率の減衰を使用すると、常に役立ちます。 TensorFlow には多くの減衰スケジューラが用意されています。
すべてのパラメータを手動でチェックする代わりに、グリッド検索、ランダム検索、または構成ファイルを使用してハイパーパラメータを調整します。これは時間がかかり、非効率的です。通常は全てのパラメータに対してグローバル設定を使用し、結果を確認した後、改善の方向性をさらに調査します。この方法が役に立たない場合は、ランダム検索またはグリッド検索を使用できます。 3. 活性化関数について

1. 勾配消失の問題に関して、 Sigmoid や Tanh などの活性化関数には飽和問題があります。つまり、関数の一端で活性化関数の導関数がゼロに近づき、勾配と学習プロセスが「消滅」します。したがって、別の活性化関数を使用することをお勧めします。現在、標準的な活性化関数は ReLU です。 さらに、この問題は非常に深いネットワークや再帰型ネットワークでも発生する可能性があります。たとえば、150 層のネットワークの場合、すべての活性化関数は 0.9 と指定され、0.9¹⁵⁰ = 0,000000137 となります。上で述べたように、バッチ正規化はこの問題の解決に役立ちます。 2. 非ゼロ中心活性化関数Sigmoid と ReLU はゼロ中心活性化関数ではありません。つまり、トレーニング中はすべての勾配が正(または負)になり、学習中に問題が発生する可能性があります。これが、ゼロ中心の入力データを使用する理由です。 3. 無効な ReLU標準の ReLU 関数も完璧ではありません。負の数の場合、ReLU は 0 を返します。これは、関数にアクティベーションがないことを意味します。言い換えれば、ニューロンの一部はまったく使われないのです。これが起こる主な理由は、大きな学習率の使用と不適切な重みの初期化です。パラメータ調整でこの問題を解決できない場合は、Leaky ReLU、PReLU、ELU、Maxout などの関数を試すことができます。 4. 勾配爆発の問題は勾配消失の問題に似ていますが、勾配がステップごとにどんどん大きくなるという点が異なります。 1 つの解決策は、グラデーションに厳しい制限を課すグラデーション クリッピングを使用することです。
4. ディープ ネットワークのネットワーク精度の低下。非常に深いネットワークの問題は、特定の時点からパフォーマンスが完全に低下することです。レイヤーを追加するとネットワークの精度が低下するためです。解決策は、残差レイヤーを使用して、入力の一部がすべてのレイヤーを通過できるようにすることです。残余ネットワークを下図に示します。

上記で問題が解決しない場合は、著者に連絡してさらに話し合うことができます。著者の Twitter ID は creotiv です。

<<:  TENSORFLOW を使用してリカレント ニューラル ネットワーク言語モデルをトレーニングする

>>:  Google の自動運転車の秘密の世界を解明: 初めて公開された強力なツールの数々

ブログ    
ブログ    
ブログ    

推薦する

...

畳み込みニューラルネットワークのパフォーマンス最適化

導入畳み込みはニューラル ネットワークのコア計算の 1 つです。コンピューター ビジョンにおける畳み...

スマート病院は現実に近づいているのでしょうか?

[[389620]]画像ソース: https://pixabay.com/images/id-60...

...

2020年の人工知能業界に関する7つの予測

ついに2020年が到来しました。これは、火星探査、バイオニックロボット、自動運転、遺伝子編集、複合現...

AIが「ツール人」を救う: RPA+AIがすべてを自動化

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

心理意味論の観点から見た顔認識

人々は日常生活の中で、見知らぬ人の顔だけでなく、身近な親戚、友人、同僚、有名人の顔など、さまざまな顔...

Stack OverflowがAI搭載製品「OverflowAI」を発表

スタックオーバーフローStack Overflow は、2008 年に設立された、プログラマー向けの...

機械学習におけるモデルのバイアスを理解する

人工知能 (AI) と機械学習 (ML) の分野では、意思決定プロセスに予測モデルを組み込むことがま...

AIOpsを始める前に知っておくべきこと

AIOps は、その優れたパフォーマンスにより、業界で幅広い注目と支持を集めています。AIOps が...

機械学習の導入を容易にする 6 つのツール

今日、多くのベンダーは、データインテリジェントなビジネスユーザーが AI テクノロジーを採用できるよ...

初の高校向けAI基礎教科書が出版:唐暁氏が編集、重点中学校40校が導入

教育は幼少期から始めるべきであり、AIは高校から学ぶことができます。 4月28日、SenseTime...

...

経済学における機械学習:この2つの組み合わせは明るい未来をもたらすだろう

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...

過去1年間、世界は人工知能の倫理について次のような考えを抱いてきた。

1月下旬に終了したCES 2019で、LGの社長兼最高技術責任者であるIP Park氏が、AIがど...