AWSを活用したAIプラットフォーム「AIメーカー」の開発

37274a2ef2c179b8edab54a8172c26c6?s=47 2z
November 03, 2018

 AWSを活用したAIプラットフォーム「AIメーカー」の開発

2018年7月に「AIメーカー」という、誰でも手軽に機械学習を始められるWebプラットフォームを開発し、リリースしました。

・今話題のAIをweb上で誰でも気軽に作れる「AIメーカー」を作ってみた
 https://qiita.com/2zn01/items/0d3147c9d9d804ad9880

7月の第1段は「画像認識」、8月の第2弾は「文字起こし」と開発を続けています。

「AIメーカー」のシステムの裏側でAWSをどう活用したかをご紹介するとともに、今後の構想をお話しします。
また、AWSやディープラーニングのフレームワークをうまく活用することで、個人でもAIを絡めたwebサービスを開発できることをお伝えできればと思います。

37274a2ef2c179b8edab54a8172c26c6?s=128

2z

November 03, 2018
Tweet

Transcript

  1. AWSを活用したAIプラットフォーム 「AIメーカー」の開発 2z(つじ) @2zn01

  2. お前誰よ? ・2z(つじ) ・Twitter @2zn01 ・web系エンジニア(機械学習はちょっと触る程度。。) ・PHP、Perl、Ruby(on Rails)、Python、Lua ・AWS歴は3年半ほど ・JAWS参加は去年のJAWS FESTA

    2017@愛媛 松山から
  3. AIメーカーとは web上で機械学習が誰でも手軽にできるプラットフォーム。 公開されたAIはみんなで活用できる。

  4. 何ができるのか? ・画像分類 ・文字起こし (随時、機能追加予定です!)

  5. 画像分類

  6. ①ラベルを登録 ②データを登録 ③学習

  7. 文字起こし

  8. ①画像・音声・動画ファイルから ②YouTubeから文字起こし ③録音から

  9. リリースまでの道のり 6/23 LPを作り始める 6/30 LPを公開 7/1 AIメーカーの機能(画像分類)の開発を始める 7/16 AIメーカーの画像分類をリリース 8/18

    文字起こし機能をリリース → 週末開発で1か月未満以内にリリース!!
  10. まぁ、こんな短時間でできるわけない。。

  11. ディープラーニングとの出会い 2015/5~ MicrosoftのHow-Old.net 写真から性別と年齢を推定

  12. Face Score 2015/6 顔を採点するアプリを作った

  13. そんな中、APIが廃止される。。

  14. Oh....

  15. しょうがないので、独自のモデルを作ることに... API廃止までの猶予は3か月ほど。 その間に30万もの顔画像を集めて学習させ、 独自のモデルを構築 → ディープラーニング(CNN)の使い方を学んだ

  16. どうやったか? Bing Search Image API ①ひたすら画像を収集 ②ひたすら画像を分析 ③分析結果を保存 ④分析結果から学習 ⑤モデルを構築

  17. waifu2x-multi 2016/2~ waifu2xをカスタマイズした画像をきれいに拡大するツール 複数画像の一括変換、動画変換に対応させた

  18. waifu2xとは? 畳み込みニューラルネットワークを用いた超解像(SRCNN) waifu2xの人工知能は、次の問に答えます。 いまから与える画像はある画像を半分に縮小したものである。 縮小される前の画像を求めよ。 → 画像を拡大するのではなく、縮小される前の状態に戻します。 いまから与える画像はある画像を任意の圧縮率でJPEG圧縮したものである。 JPEG圧縮される前の画像を求めよ。 →

    ノイズを取り除くのではなく、画像をJPEG圧縮される前の状態に戻します。 作者ブログ「二次元画像を拡大したいと思ったことはありませんか?」より http://ultraist.hatenablog.com/entry/2015/05/17/183436
  19. システム構成

  20. → GPUインスタンスやタスクを管理する機能を自前で実装

  21. AIメーカー 2018/6~ これまでの開発で学んできたことがほぼそのまま活かせた! → 短時間でのリリースが可能に!

  22. システム構成

  23. 利用したAWSサービス ・Amazon EC2 ・Amazon RDS ・Amazon Elastic File System(EFS) →

    Amazon SageMaker、ECS、EKSとかは使わず、 自分の知っている範囲のもので自前で構築した。 (使わなかったのは単純に知識不足です。。><)
  24. Amazon EC2

  25. Amazon RDS

  26. Amazon Elastic File System(EFS)

  27. 実装で苦労したところ ・インスタンス管理 → AWS SDK for PHPを使ってGPUインスタンスの起動・停止 ・タスク管理 ・学習データ(画像)の収集タスク →

    Bing Image Search APIでラベル名から画像を収集 ・学習タスク → Caffeを使って学習し、モデルを構築
  28. 工夫したところ ・GPUインスタンスの常時起動は金銭的につらい。。 → APIで必要最低限の学習時のみ立ち上げ、終わったら停止 ・スケールする仕組みにしたい → Amazon EFSを使って学習データ/モデルは共有 ・AMIからのインスタンス立ち上げに時間がかかる →

    インスタンスをプールする仕組みを作った 5~10分かかるところを1~2分程度へ短縮 ・少ない学習データでも精度をあげたい → ファインチューニングによる精度向上
  29. API公開しました! ・みんなのAIプラットフォーム → みんなが作ったAIはみんなで活用できる! ・APIの活用例としては、、 ・LINE BOTで活用 ・webサービスに組み込む ・アプリに組み込む →

    興味のある方は、ぜひ使ってみてください!
  30. これからやること ・機械学習モデル ・自然言語処理 ・物体検出 ・画像生成(GAN) ・音楽生成 ・ハイパーパラメータのチューニング機能 ・複数人でAIを作れる機能(学習データ集めなど) ・AIのマーケットプレイス機能 などを対応検討中...

  31. ご清聴ありがとうございました!