本日も乙

ただの自己満足な備忘録。

機械学習初心者の私がML Study Jams Vol.4に参加してきました

一通りコースを終えたので終了報告ということで、感想と受けてよかったハンズオンを紹介します。

ML Study Jams とは

Google が主催している、機械学習・データ分析のトレーニングプログラムです。オンライン学習プラットフォームである Qwiklabs で GCP 上で手を動かしながら機械学習を学べてしまうというものです。しかも無料で提供されています。

events.withgoogle.com

4つ以上のハンズオンをクリアすると TensorFlow Tシャツがもらえます。8つ以上だと TensorFlow ロゴ入りのグッズももらえます。

Slack

ML Study Jams に参加すると Slack に招待されます。進め方のアドバイスやわからないところはチューターに質問することができます。

参加動機

たまたま Twitter で呼びかけをしているのを知りました。知ったのが4月29日で登録が4月30日中とあり、急だなと思いつつもGW中に何かやってみるかと思っていたので参加してみることにしました。

私のスキルレベル

GCP は業務で使っているのでまあまあ慣れ親しんでいる方ですが、機械学習は本当に何もわからない素人以下です。

  • 機械学習まったく分からん。素人以下
  • GCP チョットデキル
    • VPC、HTTP Load Balancer、GCE まわりなら大丈夫
    • GKE もまあまあ大丈夫
  • Kubernetes は一通りならまあ大丈夫

受講したハンズオン

GW中に中級者向けの半分を終わらせて、残りの2週間ぐらいはのんびりと中級者と一部の上級者向けをやっていました。ほぼ日本語なので特に問題なく取り組めました。

Qwiklabs を受けたときにハマったこと、やっておいてほうがいいこと

Qwiklabs で指示されたこと以外のことをやるとアカウントがロックされます。例えば指示されたのと別のリージョンで GCE インスタンスを起動したり、別のインスタンスタイプを指定するとアウトです。私がやったときには Dataprep のコースでなぜかブロックされてしまいましたが、こちらの記事を参考にサポートに問い合わせたらすぐに解除してくれました。どうやらコース自体に問題があったみたいです。

dev.classmethod.jp

Qwiklabs のハンズオンは一度開始すると途中停止ができないので、中身をじっくり読むと実際に手を動かす際に時間切れになってしまうことがあるので、事前に一度目を通してから開始ボタンを押したほうがよいです。特にソースコードや SQL があるコースだと読むだけであっという間に時間が経ってしまいます。

受講してよかったハンズオン

あくまで個人的によかったものです。機械学習に詳しい人やバックグラウンドが異なる人は違うかもしれませんが、私が良かったものを紹介します。

Dialogflow で AI チャットボットを実装する

Dialogflow はインタラクティブに音声やメッセージを介することができるプラットフォームです。ブラウザで対話側のチャットボットを簡単につくることができます。フルフィルメントでスクリプトを埋め込むこともできます。このハンズオンでは Dialogflow でヘルプデスクチケットを Datastore に登録します。

Standard Edition なら無料で使えるので個人用途でチャットボットを作るときにいいかもしれないですね。

料金  |  Dialogflow のドキュメント  |  Google Cloud

BigQuery ML 予測モデルによるタクシー運賃の予測

BigQuery ML は BigQuery 上で SQL だけで機械学習のモデルを作ることができます。ハンズオンでは一般公開されているニューヨーク市内のタクシー賃走データからタクシー運賃を予測します。SQL は難しくなくてやっていることがわかるので個人的に面白くやらせてもらいました。業務で何か使えないかなー。

Awwvision: Kubernetes クラスタからの Cloud Vision API

このハンズオンでは GKE クラスターを構築して、Web アプリとワーカーを立ち上げます。ワーカーは Reddit をクローリングして画像を取得して、Cloud Vision API でラベリングして Redis に突っ込んでいます。Web アプリは取得した画像とラベルを表示します。GKE と Cloud Vision API を組み合わせてサンプルアプリケーションを一から作るのでとてもおもしろいですし、ソースコード(Python)が読みやすいので何をやっているのかが追いやすいです。

AutoML Vision でクラウド内の雲の画像を分類する

事前に用意された雲画像と学習データを用いて AutoML Vision で学習、予測をします。60枚ぐらいの画像で学習できてしまうので驚きです。学習とモデルのデプロイに時間がかかって、操作を誤るとハンズオン時間切れになってしまうので、注意してください。学習とモデルのデプロイ中は暇なので別のことをやっていました。

機械学習は学べたのか?

Qwiklabs はサンプルデータとサンプルコードが用意されているため、それを持ってくるだけで機械学習ができます。なので、Qwiklabs をやっただけでは機械学習については学ぶことは難しいと思います。TensorFlow の Python コードを読んだけど何をしているのかがさっぱりわかりませんでした。GCP で機械学習をするためのやり方を知るには良いかと思います。また、Natural Language API や Cloud Vision API のようにリクエストを投げるだけで結果を得られるものや BigQuery ML のように SQL でモデルを作れるものは予備知識がなくても活用することができるかと思います。

まとめ

GWから5月下旬にかけて ML Study Jams に参加したのでレポートをまとめました。予備知識がない私でも機械学習に触れることができるので良い経験だったと思います。 開催してくださった Google の方々にはお礼を申し上げます。コロナウイルスの影響でかなり大変だったかと思いますが、楽しく学ばせていただきました。