ピクセルの単純な 5x5 グリッドで文字を認識するニューラル ネットワークを作成しようとしているとします。可能な文字 (記号) は 6 つしかありません -X,+,/,\,|
現時点では、25 個の入力ノード、6 個の非表示ノード、および 1 個の出力ノード (0 と 1 の間 - シグモイド) を備えたフィードフォワード ニューラル ネットワークがあります。
出力はシンボルに対応します。など'X' = 0.125
_ '+' = 0.275
_ '/' = 0.425
_
ネットワークの出力 (テスト時) が何であれ、数値的に最も近い文字に対応します。すなわち -0.13 = 'X'
入力では、0.1 はピクセルがまったくシェーディングされていないことを意味し、0.9 は完全にシェーディングされていることを意味します。
6 つのシンボルでネットワークをトレーニングした後、ノイズを追加してテストします。
残念ながら、'/' に少しノイズを加えると、ネットワークはそれを '\' と認識します。
6つの記号の順序(つまり、それらが対応する数値表現)が違いを生むかもしれないと思いました。
隠しノードの数がこの問題を引き起こしている可能性があります。
文字を数字にマッピングするという私の一般的な概念が問題を引き起こしているのかもしれません。
ネットワークをより正確にするために、どんな助けでも大歓迎です。