ひとつ前に戻る

ニューラルネットワーク自作入門を理解したい

手書き数字判別のやり方

この本では手書き数字(MNIST)の判別を行っています。
どのように行っているのかを説明します。
mnistのデータは左のようになっています。
1行がひとつの文字分となっています。
1列目はその行が表す文字を示す数字です。(ラベルといいます。)
左図の1行目だと「5」になっていますので、1行目が表す数字は「5」となります。
1行は最初の文字を抜かして784(28x28)個の値があります。
1行を28×28の枠にあてはめると左図のようになり、
「5」を表していることがわかります。
1個1個の数字はピクセルのカラー値を表しています。
入力層は28×28の784個、隠れ層は100個、出力層は0~9の10個という
ニューラルネットワークとなります。
入力層から隠れ層への重みを784×100=78400個、
隠れ層から出力層への重みを100×10=1000個設定します。
入力層にトレーニング用データを入力し出力層への結果を出し、
その結果とラベルを比較して、重みを調整します。
この重みの調整で数字を判別するネットワークが構築されます。

  ひとつ前に戻る