日本時間11月30日に、AWSのre:InventカンファレンスでAWSの様々な新サービスや大型アップデートが発表されましたが、特に大きな反響がありそうなのがAWS SageMakerです。(読み方はセージメイカーです)
まだAWS公式ページも英語での記載のみで、日本語ローカリゼーションが完了していませんでしたので、一足先に、この話題の新サービス「AWS SageMaker(AWSセージメーカー)」の概要をまとめました。
一言でまとめると「機械学習エンジニアの痒いところに手がとどくサービス」という印象です。では、早速、この孫の手のようなサービスの詳細を見ていきましょう。
第一回目Amazon SageMakerの初心者向け入門チュートリアルの記事を公開しました。銀行の定期貯金キャンペーンの予測問題をAmazon SageMakerとXGBoostを使って予測しました。
第二回目ゲームソフトの売行きをXGBoostで予測してみた【Amazon SageMaker ノートブック+モデル訓練+モデルホスティングまで】の記事を公開しました。
AWS SageMaker(AWSセージメーカー)の概要
Amazon SageMakerは、端的にいうと機械学習モデルの開発や訓練、さらにはデプロイメントまで、一つのプラットフォームで管理・効率化してくれるサービスです。公式AWSのタイトルでは「機械学習を加速する」と書かれており、機械学習エンジニアが一つのプロジェクトで必要とするほぼ全てのステップにおいて、AWS SageMakerを利用することで効率化・スピードアップが可能になります。
そもそも、AWSは既にAWS Machine Learning(AWS機械学習)として、機械学習エンジニア向けのクラウドコンピューティングサービスを展開していました。では、なぜこのタイミングで別の機械学習サービスが出てきたのでしょか?
「機械学習が使える専門家がまだまだ少なく、さらに、そのほとんどが予算のある大きなテック企業で勤めている状況にある。もっと多くの人が機械学習を利用して欲しければ、普通の開発者にとっても、より利用しやすいものにしなければならない」
これは、AWSのイベントでのCEO Jeff氏からの言葉です。この通りで、この新サービス「AWS SageMaker」は、ほぼ全ての機械学習エンジニアリング工程をより簡単に効率よくするためのサービスです。
では、より具体的にAWS SageMakerを見ていきましょう。
AWS SageMakerですが、主に三つの機能で構成されています。
- オーサリング:
いわゆるデータセットの前処理の工程のことです。機械学習の9割はデータセットの前処理だ、と言われているほど重要な工程ですよね。すでに多くの機械学習エンジニアの方が、iPythonやJupyter Notebookなど、セルコーディングを利用されているかと思います。AWS SageMakerでは、Jupyter NotebookをCPUベースやGPUベースなど、クラウド上で利用状況に合わせて簡単にセットアップ&利用が可能です。(これは既存のAWS Machine Learningでは無いサービスでした) - モデルトレーニング:
モデル構築や学習、さらには評価もクラウドで行えます。すでに多数の学習アルゴリズムが組み込まれているのも大きな特徴の一つですが、加えて、多数のフレームワークやDockerコンテナなどを利用して独自の学習環境を構築もできます。また、大きなメリットとして、学習データなどのをAWS S3が簡単に使えます。(これは既存のAWS Machine Learningでも同様です) - モデルホスティング:
構築したモデルをリアルタイムで使えるように、HTTPSエンドポイントが提供されます。さらにスケールをすることも容易にできて、複数モデルでのA/Bテストも行うことが可能のようです(これは使って見たいですね!)。
AWS SageMakerの使うメリット
さて、すでに概要を見ただけでも、使ってみるメリットがありそうですが、より詳しくAWS SageMakerのメリットを見ていきましょう。
- 機械学習プロセスを高速化してくれる
データセットの前処理から、モデルトレーニング、さらにはデプロイまで、AWS SageMakerでクラウドで、さらに一つのプラットフォームで行う事により、機械学習を使うプロセスが従来よりも短い時間で済みます。 - 豊富なフレームワークとアルゴリズム
現在、世の中にでている機械学習のフレームワークは全てAWS SageMakerで使うことが可能です。いちいち使いたいフレームワークをセットアップしたりする必要がありません。また独自で開発したい方でも、Dockerコンテナを持ち込むことも当然可能です。 - 訓練ずみのモデルへ簡単にアクセス
HTTPSエンドポイントが提供されているので、AWS SageMakerで構築したモデルを、余計なステップを踏むことがなく、既存のウェブアプリケーションへデプロイをすることが可能です。
料金体系と提供リージョン
さて、気になるAWS SageMakerの料金ですが、クラウドならではの従量課金となっています。使用した秒数ごとに課金され、最低利用料金や事前に支払わなくてはいけない前金などはありません。
AWS SageMakerの料金ですが、主に3つに分類されます。一つ目がオンデマンド機械学習インスタンス、機械学習ストレージ、Notebooksやホスティングする際のデータ処理費用の三つとなります。
嬉しい事に、AWS SageMakerですが、AWS無料枠の適用もあります。サインアップから最初の2ヶ月間のみ、下記が無料枠の中で利用することが可能です。
- notebookを使用したモデル構築 250時間(t2.meduim)
- 訓練コンピューティング 50時間(m4.xlarge)
- モデルホスティング 125時間(m4.xlarge)
現時点でAWS SageMakerを使えるリージョンは4つのみとなります。
- US Eash (N. Virginia)
- US Eash (Ohio)
- US West (Oregon)
- EC (Ireland)
まだ東京リージョンでは利用できませんので、ひとまずは海外リージョンを利用して、試して見てください。これは私の予測ですが、東京リージョンでも早々に解放になるかと思います。(そう願います!)
英語ドキュメントになりますが、詳しい価格表はこちらをご覧ください。
まとめ
AWSですが、人工知能関連(機械学習)のサービスを続々とリリースしています。同イベントでは、Amazonの機械学習専門家が機械学習導入を手助けしてくれるAWS ML Solutions Labの開始もありましたが、アマゾンの人工知能周りのサービスの注力度が伝わりますね。
また近日中にAmazon SageMakerのハンズオンチュートリアルも公開しますので、ご興味がある方は、ぜひメルマガまたはSNSのフォローをお願い致します!