Google Cloud AutoML Vision入門 画像認識・機械学習・AIを使ったウェブサイトやアプリをつくる




【2021最新 -Google Cloud Platformおすすめ本 – 独学での勉強にも!】も確認する

はじめに

本書を手にとっていただきありがとうございます。

まずはじめに、“AI(人工知能)”と聞いて、みなさんは何を思い浮かべるでしょうか。

SF映画に出てくるような知能や感情を持ったロボット、人間と同等に会話する宇宙船に搭載されたAIコンピューター、スマートフォンに組み込まれている音声アシスタント、他にも様々なAIがこの世の中で活躍しています。身近なところでは、Emailの自動スパムメール判定も裏側ではAIが動いています。

近年では企業でのAIシステムの導入が増えてきており、「時間はかかるが人間がやるまでもない」タスクの実行に取って代わる存在として活気づいています。みなさんの中にも、AIを使って面倒くさいタスクを自動化したり、面白いサービスを作って世の中にリリースしてみたいと思っている方も多いのではないでしょうか。

しかしながら、そのAIで使用されている技術の中身は、難しい数式や非常に複雑な仕組みが使われています。完璧に理解するのはその道のエキスパートでもない限り、時間も労力もかかってしまい、挫折してしまう人も多いのでは、と感じています(私もその一人です)。では、もしも専門知識を持っていないエンジニアが簡単にAIモデルを作れるとするとどうでしょう。AIを作ってみたいけど、何から始めたら良いのか分からない方も多いのではないかと思います。

そう思って本書を手にとって頂いたあなたは正解です。必ずしも難しい数式から入門する必要はありません。AIの仕組みの基本さえ理解していれば、今では誰でも簡単にAIを作ることができる時代に突入していることを本書を通じて実感することでしょう。

昨今の機械学習やディープラーニングの技術はめざましく進歩し、自然言語処理や画像認識精度は驚くほど高くなってきています。特に、世界的先進企業であるGoogle/Apple/Facebook/Amazon/Microsoftなどでは日々データサイエンティストのような専門家が難しい研究を重ね、多くのAIプロダクトをリリースしています。
そして、我々はそれらの技術を簡単に利用することができるようになっています。機械学習やディープラーニングは、独自に研究をする時代から簡単に誰でも利用・開発できる時代にパラダイムシフトしているのです。高度な専門知識を持たずとも、機械学習やディープラーニングを使ったサービスは誰でも構築することができるようになっているのです。
これまでは導入障壁が高いと思われていたAIを手軽に実現できるサービスがある、こんな機会を逃すわけにはいきません。本書では、そのようなサービスの中でも特に簡単に、スピーディーに、しかも高精度な画像予測モデルを構築することができる、Googleの”Cloud AutoML Vision”というプロダクトを利用し、企業でも胸を張ってサービス導入できるレベルのAIモデルを構築することを目的として執筆しました。

では、“企業でも導入できるレベル”とは、どの程度なのでしょうか。本書で目指すのは99%の精度ではなく95%程度の精度を目指します。導入するシステムの要件によっては高い精度でないと使い物にならないと判断する場合もあるでしょう。しかしながら、実際のビジネスでの利用シーンを考えてみると、95%程度の精度でも十分なケースもあることは事実です。例えば、少々判定が間違っていても実際のサービスの運営にはあまり害ないケースも少なくないのではないかと思います。

本書は機械学習の専門家向けには執筆されていません。一般的なソフトウェアエンジニアが、簡単に、しかも高速にAIをサービスに導入する上で必要最小限の知識で実現できるレベルの話のみが出てきます。これまで機械学習やディープラーニングを勉強しようとして挫折した方でも、問題なく読み進めることができる内容になっています。

本書で実現すること

本書を通じて、最終的には入力された画像に対して、それが何の画像であるかを予測するWebサービスを構築します。
例えば、犬の画像を入力しその画像がどの犬種であるか、花の画像を入力しその花の名前を予測する、などといったサービスが作れるようになります。しかも、専門知識はほとんど必要ありません。手順に従って作業を行うだけで、高精度な予測モデルの作成ができます。

しかし、専門知識は必要ないといっても、全くないのと少しあるのとでは大きな違いが出てきます(実際に何も知らなくてもモデルはできてしまいますが)。そこで、会社の上司や同僚に導入交渉する際の材料にできるよう、少しだけ専門的な内容を盛り込んでサンプルモデルを構築していけるような流れになっています。
難しい数式や仕組みは必要最小限に抑え、機械学習やディープラーニングで使用される指標は何か? どういう風に読み解けば良いのか? を分かりやすく説明します。必要最小限の知識を持つことで、そのシステムを本当にリリースしてよいかの判断ができるようになります。

さらに細かく学んでみたい読者向けに最終章では少し専門的な観点を盛り込んで説明しているので、興味があれば目を通してみてください。もちろん、最終章だけ読み飛ばして頂いても結構です。

本書で得た知識により、AIの世界がより身近に感じられ、さらには実際のサービス導入までされることを願ってやみません。

最後に、本書執筆の機会を与えて頂いた出版社の方々、会社の上司・同僚、そして何よりも執筆で忙しい時期の生活を支えてくれた妻に感謝の意を表します。本当にありがとうございました。
それでは、最先端のAIの世界へようこそ。

2019年7月 衛藤剛史

ランキングも確認する
出典:出版社HP

CONTENTS

Chapter1 AI・機械学習・ディープラーニングとは

1 AI・機械学習・ディープラーニングとは
AI(Artificial Intelligence)
機械学習
ディープラーニング(深層学習)
2 AI・機械学習・ディープラーニングを使った事例
迷惑メールのスパム判定
商品レコメンド
Object Detection(物体検出)
レントゲンや内視鏡の画像か病気であるかを判定する
株価や価格情報の上昇下落予測をする
3 教師あり学習とは
4 画像認識導入の例
アパレル系での自動ラベリング
不動產系
Webフリーマーケット系
5 AI・機械学習・ディープラーニングを実現するまでの道のり
6 AIの民主化
7 専門家でなくてもAIは作れる
8 本書でのゴール

Chapter2 Cloud AutoML
1 Cloud AutoMLとは
2 Cloud Vision APIとMachine Learning Engineの中間に位置するAutoML
3 Cloud AutoML Visionに適した画像
4 Cloud AutoML Visionの費用
●トレーニング費用
●ヒューマンラベリング費用
●分類予測(Online Prediction)の費用
●その他費用
5 Cloud AutoML Visionを使ってモデル構築する流れ

Chapter3 開発環境の構築
1 本書のサンプルで使用する開発環境
2 Google Cloud Platform(Google)のアカウント登録
●登録・ログインの手順
●Google Cloud Platformの無料トライアルの登録
3 Google Cloud Platform(GCP)でCloud AutoML Visionを設定する
GCP Projectを作成する
Cloud AutoML Visionを有効化する
4 pythonのインストール
5 gcloud/gsutilコマンドラインツールのインストール
6 gcloudでGCPアカウントにログイン

Chapter4 とりあえず予測モデルを作成してみよう
1 教師用画像データセットとは
2 オープンソースの画像をダウンロードする
3 教師用データセットの作成
4 Cloud Storageバケットを作成する
5 データセットをCloud Storageにアップロードする
CSVファイルを作成する
6 Cloud AutoML Visionで予測モデルを作成する
●Train/Validation/Testについて
●Model typeについて
●Training budgetについて
7 モデルに対して予測を行う(GUI)
8 モデルに対して予測を行う(Python)
サービスアカウントの作成
pythonの設定
●スクリプトの作成
APIの実行
●REST APIを使用する

Chapter5 作成したモデルを評価する
1 学習の評価について
2 評価指標の見方
真偽と陰陽(True Positive/False Positive/True Negative/False Negative)
Precision(適合率)とRecall(再現率)
PR曲線/AUC
Confusion Matrix(混同行列)
3 ラベルごとの評価
4 精度が高い画像と低い画像

Chapter6 モデルをチューニングして再トレーニングする
1 原因を探る
2 ラベルの訂正
3 モデルを再トレーニングする
4 カテゴリーの細分化
5 モデルを再トレーニングする
●AutoMLでTrailerラベルを作成する
●既存のCarラベルから明らかにTrailerである画像のラベルを変更する
●Carラベルを補填する
●Trailer画像をダウンロードする
●Cloud Storageにダウンロードした画像をアップロードし、追加学習データセットを作成する
●AutoML Visionに追加画像をインポートする
●AutoML Visionで再トレーニングする
6 モデルに対して予測を行う(Web Console)
7 評価指標の比較
8 番外編 課金をしてトレーニングをする
9 補足: Data Argumentation(データの水増し)

Chapter7 ウェブやアプリのサービスに組み込む
1 アプリケーションについてと準備
2 作成したモデルをアプリケーションに接続する
準備
環境構築
Flaskを試してみる
3 ウェブサイトアプリケーションで使用する
ソースコードを準備する
ローカルアプリケーションで動作を確認する
ソースコードの解説
GCPでAppEngineを作成する
アプリケーションをAppEngineにデプロイする
4 モデルの切り替え・複数モデルの使用
5 スマホアプリで使用する
Firebaseプロジェクトの作成、モデルトレーニング
アプリへの組み込み
6 最後の片付け(GCPプロジェクトの削除)

Chapter8 機械学習・ディープラーニングの裏側
1 機械学習の基礎理論を学ぶ
2 機械学習のデータ、評価指標
3 Training/Validation/Test
4 真偽と陰陽
5 Accuracy/Precision/Recall
6 AUC(Area Under Curve)
7 Confusion Matrix
8 未学習・過学習・バイアス・バリアンス
9 線形回帰とロジスティック回帰
10 ニューラルネットワーク
11 畳み込みニューラルネットワーク
12 最近のニューラルネットワーク

ランキングも確認する
出典:出版社HP