11

現在、ニューラルネットワークについて学習しており、手書き文字を認識するようにトレーニングできるアプリケーションを作成しようとしています。この問題では、フィードフォワードニューラルネットワークを使用しており、1、2、または3つの異なる文字を認識するようにトレーニングすると機能するようです。しかし、ネットワークに3文字以上を学習させようとすると、40〜60%のエラー率で停滞します。

複数の層と少ない/多いニューロンで試しましたが、正しく理解できないようです。フィードフォワードニューラルネットワークがそれだけの情報を認識できるかどうか疑問に思っています。

いくつかの統計:

ネットワークタイプ:フィードフォワードニューラルネットワーク

入力ニューロン: 100(10 * 10)グリッドを使用して文字を描画します

出力ニューロン:再生成する文字の量

誰かが私のアーキテクチャで考えられる欠陥が何であるか知っていますか?入力ニューロンが多すぎませんか?フィードフォワードニューラルネットワークは文字の再認識ができませんか?

4

4 に答える 4

14

手書き文字認識には、

  1. 多くのトレーニング例(トレーニングセットの歪みを作成する必要があるかもしれません)
  2. 出力層のsoftmax活性化関数
  3. クロスエントロピー誤差関数
  4. 確率的勾配降下法によるトレーニング
  5. 各層のバイアス

良いテスト問題は、手書きの数字データセットMNISTです。このデータセットにニューラルネットワークをうまく適用した論文は次のとおりです。

Y. LeCun、L。Bottou、Y。Bengio、P。Haffner:ドキュメント認識に適用される勾配ベースの学習、http://yann.lecun.com/exdb/publis/pdf/lecun-98.pdf

Dan Claudiu Ciresan、Ueli Meier、Luca Maria Gambardella、Juergen Schmidhuber:手書き数字認識に関するDeep Big Simple Neural Nets Excel、http: //arxiv.org/abs/1003.0358

私は784-200-50-10アーキテクチャでMLPをトレーニングし、テストセットで> 96%の精度を得ました。

于 2012-03-13T21:04:29.130 に答える
10

おそらく、http://www.ml-class.org のレクチャー 3 と 4 に従うことをお勧めします。ング教授はまさにこの問題を解決しました。彼は 10 桁 (0...9) を分類しています。95% のトレーニング精度を達成するために彼がクラスで行ったことのいくつかは次のとおりです。

  • 入力 Nueron : 400 (20x20)
    • 隠しレイヤー : 2
    • 隠れ層のサイズ: 25
    • 活性化関数 : シグモイド
    • トレーニング方法 : 勾配降下法
    • データサイズ:5000
于 2012-03-14T21:12:20.183 に答える
3

このサンプル プログラム を調べてください。 手書きの数字の認識

プログラムは、 FANNライブラリを使用したSemeion 手書き数字データ セット を使用します。

于 2012-03-14T22:06:25.113 に答える
1

少し前に、MNIST データセットを使用して手書きの数字を識別しようとしたときに、同様の問題が発生しました。私のフィードフォワード ニューラル ネットワークは、検証セットで約 92% の精度を示していましたが、与えた画像を頻繁に誤分類していました。

ネットに隠しレイヤーを追加し、RMSProp を使用して、この問題を修正しました。ネットは現在、約 97% の精度を提供し、私が提供する画像を正しく分類しています。

さらに、コストが下がらない場合は、学習率が高すぎるか、ネットワークが極小値にとどまっている可能性があります。このような状況では、学習率と初期重みを減らしてみてください。

于 2017-04-05T09:49:34.980 に答える