AWS summit Tokyo 2019 に行った話

## はじめに
6/13(木)に仕事を休んでAWS summit Tokyo 2019に行った話を書きます。
私の個人的な興味と、参加した日の毛色と、最近のトレンドがデータ分析や機械学習関係なので、
主にそこらへんのことを書きました。
EC2とかERBとか基本的なアーキテクチャの話は出てきません。ご了承ください。
S3はちょっと出てきます。

## AWS summitとは
毎年5-6月にかけて行われるAWSのお祭り。
今年は6/12(水)~6/14(金)にかけて千葉の幕張メッセで開催されていました。
AWSに関するセッションが聞ける他、AWSのブースで最新機能の説明を聞いたり遊んだりできます。
また、企業ブースは商談の場だったりします。
セッションに興味があったのと、せっかく関東に来たし行ってみるかーのテンションで行ってきました。

## 服装
寝坊したのですごく部屋着みたいな格好で行ったら、スーツ着た人がたくさんいて失敗したなと思いました。

## 持ち物
MacとiPad miniを持って行きました。
取り出しやすく、かつメモもしやすいため、iPad miniはとても有能でした。
Apple Pencilがあればより良いかもしれません。

## セッション
私が聞いたセッションは以下の3つです。
1.  IoT/ML Deep Dive on AWS
2.  【初級】AWS の機械学習サービス入門
3.  【初級】AWSでのデータ収集、分析、そして機械学習

### IoT/ML Deep Dive on AWS
IoTからのML(マシンラーニング 機械学習)を行うためのAWSのサービスを紹介するセッションでした。
※途中から参加したので抜けてる部分もあると思います。

#### 主なサービス
- Amazon SageMaker
    - 機械学習のワークフローをカバーするマネージドサービス
    - アマゾンのアルゴリズムを活用し、探索、ハイパーパラメータを自動的に選定
    - クラウドにあげればモデルをすぐにAPIとして活用できる
    - インフラを考える必要なし

- Amazon SageMaker NEO
    - 機械語にコンパイルしているので、高速にモデルを実行できる
    - 同じランタイムで実行できる  
    - ハードウェアリソースの制限があるところでも活用できる

- Amazon SageMaker Ground Truth
    - 教師データのラベリングをしてくれるサービス
    - 機械と人力のハイブリッド？

- AWS IoT Greengrass
    - エッジデバイスで推論可能
    - インターネットが繋がってない現場で学習ができる

- AWS IoT Analytics
    - 時系列データのフルマネージドサービス
    - クレンジングはアマゾンのアルゴリズムかラムダ
    - BIツールで可視化できる
    - データアナリストが分析しやすくなる

- IoT Analytics Continuous Analisys
    - いいモデルができたらワンクリックでコンテナ化
    - モデルを定期実行できる
    - 開発から運用までスムーズにできる

#### デザインパターン
- 高頻度なデータをリアルタイムに推論する場合
    - エッジで推論
    - Greengrass→Analytics→SageMaker

- 長期間の時系列データを詳細に推論したい場合、複数拠点にデータがまたがる場合
    - クラウドで推論
    - 学習データはバルクでクラウドにアップ
    - Analyticsで必要なデータを抽出
    - いいモデルができたらコンテナ化してAnalisysにアップロード

- 画像データの場合
    - ラベルング⇨Ground Truth
    - 学習⇨SageMaker
    - ハードウェアのアーキテクチャにあわせてコンパイル⇨SageMaker NEO
    - デプロイ⇨Greengrass
    - 推論結果のみクラウドにアップ

#### DeepLens
- GreengrassとSageMaker NEOが搭載されている
- 簡単に画像データの機械学習が試せる
- 最近国内で注文ができるようになった

### 【初級】AWS の機械学習サービス入門
AWSの機械学習サービスはどんなのがあるのか気になったのと、入門という言葉に惹かれて聞いてみました。
AWSの機械学習サービスの紹介のあと、実際に活用するために何をしたらいいのかの話を聞きました。
AWSのAIサービスの紹介はググったら出てくるやつなので省略します。

#### 活用するためにやればいいのか？
1. ループ作る
    - ビジネスにつながるかを絶えず考える
    - 機械学習サービスありきではなく、出発点は必ずビジネス課題から
    - 機械学習は選択肢の一つでしかない

2. データの管理
    - セキュアなデータ管理をする

3. 組織を作る
    - 誰がやるのかを決める
    - 1,2を回すための組織づくり
    - どうやったらいい？
        - awsの事例をwebサイトに公開している
        - オフィスで事例を公開するイベントも開催してる

### 【初級】AWSでのデータ収集、分析、そして機械学習
#### データ活用の流れ　データ分析と機械学習
- データ分析
    - 過去を蓄積→現在理解(BIツール)→意思決定
- 機械学習
    - 過去を蓄積→未来予測→意思決定
- データ分析も機械学習も、必ずビジネス課題からスタート！！！

#### 意思決定に必要なこと
- 十分な質量のデータ
- データ分析や機械学習を行う仕組み
- 評価指標決める

#### データレイクとは
- データ収集、データ蓄積、データ変換
- データはできるだけ細かい単位で集める
- S3使ってデータレイクする
- S3はAPIとして呼び出していろんなサービスと連携できる

#### データ活用フローをつくってみる
- S3→可視化→意思決定と評価
- サーバーレスを使ってみよう
- サーバレスのメリット
    - サーバーレスは利用者はアプリケーションの開発のみでいい(インフラを考える必要がない)
    - プロビジョニング、管理対象のサーバーを持たない
    - 処理した分のみにコストがかかる
    - 利用量に応じて自動でスケール
    - 可用性や耐障害性はビルドインに含まれる

#### それぞれのフェーズで使えるAWSのサービス
- SQL
    - 標準的なSQL分析→Athena
    - 高度なSQL分析→Redshift
    - Hadoop→EMR
- 下に行くほど高度な技術が必要、人的リソースと運用コストがかかる

- BI画面
    - QuickSight
        - サーバレスなBIサービス
        - 機能をブラウザのみで使用できる
- QuickSightとAthenaで大規模なデータ活用できる

- ETL
    - S3に集めたデータの変換を行う
    - XML等の構造化データをSQLに変換
    - 小規模→Lambda
    - 中規模→Glue
    - 大規模→Glue Spark

#### データ活用フローまとめ
1. S3に保存
2. GlueやLambdaで変換
3. S3に保存
4. Athena、QuickSightで可視化

#### まとめ
- 機械学習
    - 過去のデータから未来予測
    - 未知なものから予測
- 機械学習を活用する意味を考える
    - 常にビジネス課題からスタート
    - 機械学習でとける、解けそうな問題を理解する
- 注力する領域を決める
    - 機械学習の全てを自社でやる必要はない

## ブース
AWSのブースでは、AWS DeepRacerのリーグが盛り上がっていました！
DeepRacerとは、強化学習で走行コースを学習していく小型のレーシングカーです。
自分で強化学習のモデルを作ってトレーニングさせ、速さを競います。
ハイパーパラメータを調整し、どれほど最適化されたモデルが作れるかがカギになるところが、
次世代の娯楽感があって面白かったです。
人が多かったのでレースには参加はしませんでしたが、いつかやってみたいなと思いました。

余談ですが、AWSのブースのガチャで1等を当て、ステンレスボトルを貰いました。

## 感想
誰でも比較的簡単にデータ分析や機械学習を使って課題解決ができる時代になってきているんだなという印象でした。
セッションの講演者の方も何度もおっしゃっていましたが、
データ分析や機械学習はあくまで課題解決の一手段であるため、
手段が目的になり代わらないように、都度起点に立ち返って当初の目的を考える必要があると思います。
それと同時に、課題解決のための手段としてこれらの技術を選択肢に入れられるように、
常に新しい技術、サービス、ツールのキャッチアップも欠かさず必要だなと感じました。

こういう大きなイベントは初めてで、当日まで、行っていいのかなという気がしていましたが、
トレンドを把握でき、自分の中の選択肢を増やすことができたので、行ってみてよかったと思います。

読んでくださりありがとうございました！