手書き文字の自動認識アプリケーション 15K1013 坂本 倖輝 Chapter 5.1.3 手書き文字の自動認識アプリケーション 15K1013 坂本 倖輝 これから発表を始めさせていただきます。
過程 必要なモジュールをインポートし、5.1.1の畳み込みNNを定義する セッションを用意する 手書き文字を入力するためのJavaScriptのコードを用意する 用意したHTMLフォームとJavaScriptを実行する 画像データをCNNに入力して、0~9のそれぞれの数字である確率を 計算する 過程5で入力した画像データが、2段のフィルターでどのように変化 しているかを確認する この区分では、先ほどまでのトレーニング結果を利用して、実際に新しい手書き文字を自動認識するコードについて発表します。 自動認識アプリケーションの処理の過程はご覧の通りとなっています。
1. 必要なモジュールをインポートし、5.1.1の畳み込みNNを定義する 直前の発表と全く同じことをするため、詳細は省略。 まず、モジュールのインポートと畳み込みニューラルネットワークの定義です。 これは、先ほどの黒川くんの発表の内容と重複するので割愛させていただきます。 図1 モジュールのインポートと畳み込みニューラルネットワークの一連の流れ (黒川くんのスライドより抜粋)
2. セッションを用意する 図2 セッションの用意 過程2では、セッションを用意します。 Variableを初期化した後、トレーニングを実施済みのセッションの状態を復元します。 (saver.restore(sess, “cnn_session-20000”)からセッションの状態を取得) 図2 セッションの用意
3. 手書き文字を入力するためのJavaScriptのコードを用意する 図3.1 描画画面の設定(HTMLフォーム) 過程3では、アプリケーションの根幹部分のコードを用意します。 描画画面の設定をしている部分、アプリケーション上での操作を実装する部分、操作の実装で使用している関数の定義の部分と、大きく3つに分けることができます。 図3.2 操作の実装(JavaScript) 図3.3 関数の定義(JavaScript)
4. 用意したHTMLフォームとJavaScriptを実行する 図4.1 実行するコマンド 過程4では、過程3で実装したHTMLフォームとJavaScriptを実際に実行します。 実行すると、図4.2の画面が表示され、マウスで文字を書くことができます。 文字を書くと、28x28=784ピクセルの画像データ(モノクロ2階調)が1次元リストとして変数imageに保存されます。 Clearボタンを押すと、画像を初期化することができます。 ※セッションからの取得がうまくできなかったため、実行できませんでした。
5. 画像データをCNNに入力して、0~9のそれぞれの数字である確率を計算する 過程4で変数imageに画像データが保存されました。 過程5では、その画像データをCNNに入力して、0~9のそれぞれの数字である確率を計算します。 図5 CNNに向けた画像データの入力と確率の計算
6. 過程5で入力した画像データが、2段のフィルターでどのように変化しているかを確認する 1段目のフィルターを通過したとき 過程6では、過程5で入力した画像データが、2段のフィルターでどのように変化しているかを確認していきます。 図6.1.1の処理を行うと、[スライドを進める] 図6.1.1 1段目のフィルターを通過した画像データの表示の処理
6. 過程5で入力した画像データが、2段のフィルターでどのように変化しているかを確認する 1段目のフィルターを通過したとき 1段目のフィルターを適用した画像データが表示されます。 ※セッションからの取得がうまくできなかったため、実行できませんでした。 図6.1.2 1段目のフィルターを適用した画像データ
6. 過程5で入力した画像データが、2段のフィルターでどのように変化しているかを確認する 2段目のフィルターを通過したとき 次に、2段目のフィルターを通過したときです。 2段目のフィルターを通過した画像データの表示の処理は、1段目での処理とほぼ同等の処理です。 図6.2.1の処理を行うと、[スライドを進める] 図6.2.1 2段目のフィルターを通過した画像データの表示の処理
6. 過程5で入力した画像データが、2段のフィルターでどのように変化しているかを確認する 2段目のフィルターを通過したとき 1段目のときと同様に、2段目のフィルターを適用した画像データが表示されます。 以上の流れで、手書き文字自動認識アプリケーションは処理されていきます。 ※セッションからの取得がうまくできなかったため、実行できませんでした。 図6.2.2 2段目のフィルターを適用した画像データ
ご清聴ありがとうございました! 以上で僕の発表を終わります。 ご清聴ありがとうございました。