Goole Vision APIの精度とは?実際の利用方法を解説
人工知能はどのくらい手書き文字を理解できるか?
人工知能(AI)には、スクラッチでイチから作成するものと、学習済みアルゴリズムの2つにわかれます。
スクラッチとは、使うものが新規のアルゴリズムであれ既存のアルゴリズムであれ、自社のオリジナルなデータセットを与えて新しく学習を行うものです。
一方、学習済みアルゴリズムとは、すでに汎用なデータセットを学んだあとのAIのことを指します。スクラッチ作成したAIと比べると、汎用であるがゆえに専用能力では劣りますが、学習済みアルゴリズムはパッケージ製品として提供されるため、カスタマイズ不要ですぐに導入可能というメリットがあります。
また、学習済みアルゴリズムをベースに、自社オリジナルのデータを改めて与えて学習させれば、僅かな手間で専門性の面も学習可能である場合があります。
学習済みアルゴリズムの代表例としては、IBMのWatson、SalesforceのEinsteinなどがあげられます。また、GAFA+Mの各社は、音声認識・文字認識などの分野で学習済みアルゴリズムをAPI提供しています。
ここでは、Google社のVision APIを基に、学習済みアルゴリズムの使い勝手について解説していきましょう。
Google Vision APIとは
Google Vision APIとは、紙に印刷された文字を画像解析し、テキストデータに変換するソフトです。APIというプログラム同士をつなげる仕組みを使い、例えばスマホで撮影した紙書類の文字をテキストデータ化してくれます。
このOCR(光学文字認識)と呼ばれる分野は、アイデアとしては昔からあったものです。紙書類をすぐにwordやexcelに変換できたら、非常に便利であることはビジネスマンにとっては明らかでした。しかし、なかなか精度の面で実用的なものがなかったというのが実態でした。
しかし畳み込みニューラルネットワーク(CNN)やリカレントニューラルネットワーク(RNN)という技術が見出されたことで、画像解析の精度は飛躍的に向上しました。この高度なAIを実装し、GoogleやMicrosoftはAPIとして提供しています。
そして言語、例えば「英語」や「日本語」というのは、企業や産業によって変わるものではありません。汎用的な言語学習をしておけば、どの企業でも通用するものです。そのため「学習済みアルゴリズム」を活用するのが有用な分野なのです。
現在、日本でもAI OCRをうたうベンチャー企業が多く登場してきました。しかし筆者が知る限り、その多くは上記のGoogleやMicrosoftの学習済みアルゴリズムをベースにしています。営業トークとしては、各社独自の技術を主張していますが、ベースとしては同じものなのです。
というのも、考えれば当然ではありますが、言語という汎用的な分野では、超巨大企業であるGoogleやMicrosoftの研究力・データ収集能力に日本の小さなベンチャー企業が太刀打ちできるはずもないからです。自社でイチから開発するよりも、彼らの研究成果に乗っかった方がはるかに良いものが作れます。
※もちろん、各社はベースの上にユーザビリティやニッチな専門用語の登録などで違いを出しています。
では、そんな世界の多くのサービスのベースとなっているGoogleの文字認識AIとは、実際どの程度の精度を発揮できるのでしょうか?
Vision APIを実際に試してみた
ということで、Vision APIを実勢に試して精度を確認してみました。
Vision APIの使い方は簡単で、自身のGoogleアカウントでVision APIを有効化し、マニュアルを基に記載したコードの中にアカウントを埋め込むだけです。環境は、AWSなどのクラウド環境を使うこともできますし、ご自身のPC環境でも十分動作させることができます。
なお、上記のように自分なりにデータを用意して、改めて学習させることもできますが、学習済みアルゴリズムとして使うときは「Use the pre-trained model」を選択します。
身の回りのもので認識精度を確認してみた
実際に文字のある写真を撮り、読み込ませてみます。結論、思ったよりちゃんと読み込みます。ざっくり言えば、「正しい日本語の書いてある印刷物」であればほぼ100%に近い認識精度を誇っていました。
参考までに、筆者が試した印刷物を記載します。
・ある企業のプレスリリースを印刷した紙→100%認識
・地元の観光パンフレット→ほぼ完璧(装飾文字や難しい地名の漢字を誤認)
・ある新聞記事→ほぼ完璧(強調の為の装飾やルビを誤認)
繰り返しますが、これは学習済みアルゴリズムであるので、筆者は何も改めて学習をさせていません。つまり、人工知能を作る手間はほぼかけていないにも関わらず、これだけの精度を出せるのは驚きました。
ただし、実際に使ってみると、やはり完璧にはいかない点も多々見られます。
例えば、
・アルファベットや数字が完ぺきな一方、パンフや新聞の珍しい漢字は苦手
・手ブレした写真では著しく認識精度が落ちる
・手書き文字の場合、意識して綺麗に書いてなんとか多少認識してくれるかな、といった感じで印刷物の精度はとても望めない
・出力がシンプルなテキストなので、帳票などではレイアウトが崩れる
といった点はビジネス上は不満になると思います。
だからこそ、これはベースであって、その上に各社の工夫があると思うのですが、機械学習の凄さを実感するには十分ではないでしょうか。
Vision APIを試せるツールを配布
私たち新技術応用推進基盤では、このGoogle Vision APIを使った文字認識ツールを無償配布しています。ぜひこの機会にご自身の手で使ってみてください。
なおツールの使い方の詳細やダウンロードは下記ページよりご確認ください。
人工知能がここまで手軽に試せるのは10年前にはなかったことです。良い時代になりました。
ぜひ自ら手に取って試してみてください。
それでは、また。