3

Matlab の Neural Network Toolbox (nntool) は初めてです。同じデータセットを使用して 2 つのネットワークをトレーニングしました。これらのネットワークの 1 つには、他のネットワークよりも多数のニューロンが含まれています。

今、私は疑問に思っています:これらのネットワークをどのように比較できますか? ネットワーク A がネットワーク B よりも優れていると、どのように言えますか?

私のテストセットで正しく分類されたパターンの数がすべてですか? 両方のネットワークに同じテスト セットが表示され、ネットワーク A がより多くのパターンを正しく分類したとします。ネットワーク A は (一般的に) ネットワーク B よりも優れていると言えますか?

それとも、自分のパフォーマンス関数に従ってパフォーマンスも見るべきですか?

異なるパラメーターでトレーニングされた 2 つのネットワークを比較するための他の手段はありますか?

4

1 に答える 1

1

それは主にあなたの懸念事項に依存します。私が見ているように、ほとんどの場合、予測されたラベルまたはネットの精度を分析すると、特にネットワークのアーキテクチャが浅い場合に、適切なピックアップの決定につながる可能性があります。より広い目で網を見る。

  • たとえば、トレーニング フェーズでは、最初の隠れ層に隠れユニットを 1 つでも追加すると、モデルにd (入力層の次元) 自由パラメーター (重み) を挿入することになり、推定する必要があります。一方、モデルの自由なパラメーターが多いほど、信頼できるモデルを作成するには、より多くのトレーニング データが必要になります。したがって、追加された自由なパラメーターを補うのに十分なデータがある限り、より大きなネットワークは十分に受け入れられます。経験則として、より自由なパラメーターを挿入すると、オーバーフィッティングの可能性が高まります。これは、ディープ ニューラル ネットワークの重大な問題であり、それを解決するために多くの努力が払われてきました。
  • 浅いネットではあまり重要でないもう 1 つのケースは、余分な隠しノードによって課せられる計算コストです。目を丸くして見ているので、この問題について言及する必要があります。ネットワークが深くなると、この計算コストは​​より困難になります。バックプロパゲーションを使用してパラメーターを更新する場合、トレーニング フェーズの計算コストも重要な問題です。
  • ディープ ニューラル ネットワークで主に見られるもう 1 つのことは、メモリ要件です。レイヤーまたはニューロンの数が増えると、フリー パラメーターの数が劇的に増加し、ディープ ネットワークでは数百万のパラメーターが表示される場合があります。この量のパラメータをロードするには、十分なハードウェア要件が必要であることは明らかです。

それが役に立てば幸い。

于 2015-10-10T12:37:07.563 に答える