【レポート】AIベンチャーのコスト効率を最大化させるAI開発環境の実践方法 #AWSSummit

2019.06.12

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、中村です。 2019年6月12日から14日まで開催しているAWS Summit Tokyo 2019参加のため幕張メッセに来ております。

本記事で取りあげるセッションは、「AIベンチャーのコスト効率を最大化させるAI開発環境の実践方法」です。

写真撮影禁止のためテキストでのレポートになります。

レポート

  • コスト効率を最大化させるAI開発環境をSageMakerでの実践方法を紹介

  • 会社紹介

  • Extend human potential by eliminating respective tasks
  • 人工知能プロダクトを開発している
  • フォーブスなどで取り上げられている
  • ベトナムの200人のメンバーのうち、90人以上はAIリサーチャー
  • 日米で事業開発し、AIラボはベトナムと台湾
  • 主要プロダクト: Flax Scanner
  • 登壇者情報: Mr. Testuya Saito
  • IISO Manager Cinnamon Inc
  • 今回のSageMakerについても導入可否・調査をした
  • 開発体制
  • 90/200以上のAI Researcher/Engineerを採用
  • 多様な人材を採用し活用
  • 最新AIの論文調査および検証
  • 課題
  • GPUインスタンスコスト効率最大化
  • AWS上にGPUオンデマンドインスタンスを利用し開発
  • コストが高い、フル稼働できていない
  • GPU利用できていない時間があるがコスト発生している
  • GPU(4コア)が複数搭載されているインスタンスの稼働率においても無駄が確認できている
  • 対策
  • 管理者がGPUインスタンス利用者への問い合わせ(ユーザーからは使ってると言われている)
  • 稼働率を確認したところ54h利用できていない時間がわかった
  • 管理ポリシーを遵守している前提で効率化したい
  • 管理ポリシー
  • 組織が不均一担っているため全てのサービス管理は管理者のみ
  • インスタンスの作成、削除、起動、停止は管理者のみ
  • 対策
  • オンデマンドGPUインスタンスの利用期限の設定
  • 夜間のオンデマンドGPUインスタンスの停止
  • オンデマンドGPUインスタンスの利用率通知
  • 抜本解決できなかった
  • Amazon SageMakerの登場
  • GPUをトレーニング時のみ利用し自動削除されるため課題解決が見込めるのではないか
  • AI開発のワークフローの統一
  • トレーニングインスタンスの自動起動および削除
  • EC2で行うと課金されるが、SageMakerは必要な時のみ稼働する
  • EC2のGPUインスタンスをかなり減らせる
  • コストについても半年でGPUインスタンスが10%以下、SageMakerが30%になり全体の60%削減できる
  • デプロイ環境の提供
  • SDKを利用したI/Fの提供
  • コストに対する導入効果
  • 既存のGPUインスタンスのコストを大幅に削減が可能となった。
  • SageMaker移行にあたり気をつける項目
  • 最低限のルールに則る必要あり
  • アルゴリズムバージョン
  • ライブラリ関連は、自社で作成したコンテナを利用して解決
  • データの入出力の変更
  • データの入出力にS3バケットを利用するので改修する
  • IAM権限
  • 自動作成されるが利用方法によっては権限不足が起きる
  • 自社コンテナを利用する場合ECRを利用するケースがあるが、アクセス権限がないので追加する必要がある
  • プロダクト開発期間の短縮
  • 論文を調査し、オリジナルアルゴリズムを作成、モデル作成、顧客環境に基づきプログラミング・デプロイ
  • 課題
  • ベトナムとのシームレスな連携
  • レガシーな開発ワークフローからの脱却
  • 開発ワークフローが統一されておらずバラバラになっていた。SageMakerのワークフローに統一することで解決
  • Researcher/Engineerの個人の最大化が課題
  • 統一ワークフローを利用することで属人的な手法から脱却
  • SageMaker移行後のフロー
  • 論文調査、SageMakerでトレーニング、本番環境の検証、推論、モデル構築、問題がなければ本番デプロイ
  • SageMakerを用いて開発すると
  • Researcher/Engineerが容易に本番環境を構築できる
  • Try and Errorが容易になる
  • より精度の高いアルゴリズムができる
  • SageMakerの利用で均一な組織でなくても、プロダクトの開発期間短縮が見込める
  • 実際の推論環境の構築
  • AWSのコンソールから構築も可能だが、SDKを利用した構築が可能
  • インスタンスタイプ、初期インスタンス数を指定
  • 削除しないと課金が終わらないので、注意する。
  • 導入注意点
  • スモールスタートし、既存の開発環境へ影響を与えないようにする
  • うまくいけば水平展開する

まとめ

一日目基調講演でも登壇されていた株式会社シナモン様のセッションでした。個人的にSageMaker以外で機械学習の検証を行なって来なかったのですが、GPUインスタンスでの開発からSageMakerへ移行することでがいかにあらゆる面で効率化できかつAI開発においてパワフルなツールであるか理解できました。