メディア
連載
» 2020年10月30日 10時40分 公開

ハイレベルマイコン講座【組み込みAI実践編】(2):マイコンで実現!実践AIソリューション〜文字認識のメカニズムとプロジェクトの構成 (1/3)

すでにマイコンを使い込まれている上級者向けの技術解説の連載「ハイレベルマイコン講座」。今回は最初に文字認識のメカニズムを復習し、次に実際のAIプロジェクトの構成内容について解説する。

[STマイクロエレクトロニクス,EDN Japan]

 前回に引き続き、文字認識のAIプロジェクトについて解説する。前回は前準備として「「組み込みAI」の復習」「AIプロジェクトの概要」「使用するハードウェア/ソフトウェアおよび統合開発環境(IDE:Integrated Development Environment)」を解説した。今回は最初に文字認識のメカニズムを復習し、次に実際のAIプロジェクトの構成内容について解説する。

文字認識のメカニズムの復習

 まず、文字認識のメカニズムを復習しておく。

 人工ニューラルネットワークは、タッチパネル機能付きの液晶画面に入力されたアルファベットをドットに分解し、各ドットが0か1かを判別して文字を認識する。同じ「A」という文字でも比較的縦につながっているものや、斜めにつながっているものなどさまざまなパターンがある。人が見れば一目瞭然だが、人工ニューラルネットワークは0と1の1列になったパターンだけで判断しなければならない。

図1:タッチパネル液晶画面に入力されたアルファベット

 次に、学習用データが何であるかのラベルを付ける。具体的には、手書き文字を認識させるなら、手書き文字の画像データ1つ1つに名前をラベリングする。これは、事前に与えられた学習用データを「先生からのガイド」とみなし、それをもとに学習を行うことから「教師あり学習」と呼ばれる。

図2:タッチパネル液晶画面に入力されたアルファベット

 人工ニューラルネットワークを学習用データで学習させ、各層での計算に使われるパラメータを調整する。例えば学習用データにある手書きパターンを入力し、出力された数字を学習用データの期待するラベルと比較する。それが一致しない場合は、人工ニューラルネットワークの各層へ戻って、再度パラメータを調整する。この作業を繰り返してパラメータを最適化する。このパラメータ調整が「学習」と呼ばれる。

 例えば、「E」の手書きパターンの1つが入力されたとする。ここで人工ニューラルネットワーク内の各層の人工ニューロンによる計算結果が、「「E」である確率が100%」という出力になれば問題ないのだが、学習前の人工ニューラルネットワークでは、例えば「F」の確率が35%、「H」の確率が30%、「E」の確率が25%、「M」の確率が10%という結果を出すかもしれない。

 この時、「F」の確率が最も高いため、出力結果としては「F」が得られる。しかし、期待されているラベルは「E」であるため、学習の段階では間違いと判断される。「F」が間違いだと判断されたため、「F」の確率を高めた人工ニューロンの「重み付け」を下げて、再度入力パターンを「重み付け」も加味してチェックする。すると次は「H」という結果が得られたとする。しかし、これも間違いだと分かる。そこで、今度は「H」の確率を高めた人工ニューロンの「重み付け」を下げて、もう一度入力パターンをチェックする。

 このような操作を繰り返すと、「E」以外の確率を高める人工ニューロンの「重み」が下げられるため、最終的に「E」という結果が出る。これを、全ての数字のさまざまな手書きパターンで期待されるラベルと同じ結果を出力するよう調整する。これがパラメータ最適化のルーティーンである。

図3:人工ニューラルネットワークモデルの学習
       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.