AIによる手書き数字の学習と検証
|
「ゼロから作るDeepLearning」の書籍を読んで、畳み込みニューラルネットワークを使用して
手書きの数字を認識し分類するプログラムを実践してみました。
|
0〜9までの手書きの数字のMNISTデータセットは、webよりダウンロードすることが可能です。
学習用の60000枚の手書き数字と数字の種類を表すラベル 検証用の10000枚の手書き数字と数字の種類を表すラベル で構成されます。 学習用の手書き数字60000枚を、畳み込みニューラルネットワーク(CNN)人工知能 (AI)に入力して学習します。学習した結果、AIが認識した数字と実際に入力した数字とを比較し認識精度を計算します。 次に検証用手書き数字10000枚を入力して検証します。 認識精度 = 正解の文字数/入力した文字数 グラフは学習及び検証を20回繰り返し実行したときの認識精度の推移です。 畳み込みニューラルネットワークAIの認識精度は、学習:1.0、検証:0.989となりました。 |
|
検証用の手書き数字画像から1000枚の手書き数字画像を抽出します。
|
|
|
|
|
|
前回学習した結果の重みパラメータを使用し、この1000枚の数字画像を畳み込みニューラルネットワークに入力して認識した数字の精度を再確認します。
検証結果、1000枚の内990枚正解で、10枚誤認識がありました(上画像の赤枠)。誤認しても仕方ないと思われる文字も含まれています。
Class1 :画像の中身は1
Class2 :画像の中身は2 959.png :画像ファイル名 [2] :AIが誤認した数字 |
|