COLUMN

機械学習に必要な「モデル開発」~「推論」ができるAmazon SageMakerを解説

機械学習のモデルを構築する際には、インフラの準備から学習モデルの開発、トレーニング、デプロイなどを行う必要があり、一から対応すると多くのコストがかかります。「Amazon SageMaker」は、そのような対応をAWS上で効率的に実施できるサービスです。既にある仕組みを利用して、素早く機械学習のモデルを構築できます。このコラムでは、フルマネージド型サービスで素早く機械学習環境を構築できる「Amazon SageMaker」について解説していきます。

Amazon SageMakerとは

「Amazon SageMaker」とは、機械学習を実施するうえで必要なモデル開発、学習、推論を実施するAWSのサービスで、機械学習モデルを高速に開発~展開までワンストップで実施するモジュールが用意されています。またAmazon SageMakerはフルマネージド型サービスで、利用者側でサーバー運用管理や障害時の対応をしなくて済むため、人手をかけずに機械学習モデルを構築したい人には最適のサービスです。

Amazon SageMakerの利用メリット

Amazon SageMakerを利用することによって、機械学習環境を構築したいと考える利用者は複数のメリットを享受できます。ここでは、そのメリットを順番にみていきましょう。

デプロイまでワンストップで対応できる

Amazon SageMakerは、「インスタンス作成」、「モデル構築」、「トレーニング」、「デプロイ」までワンストップで実施できます。一般的に機械学習システムをビジネスとして使用可能にするまでには、学習・推論などに膨大な時間を割かなくてはなりません。しかしAmazon SageMakerを使用すれば、既に存在する機械学習の仕組みを利用していけますので、短時間で機械学習が実施できるのです。

Jupyter Notebookをインターフェースとして採用

「Jupyter Notebook(ジュピターノートブック)」は、データ分析ができる対話型ブラウザ実行環境です。OSSを開発するためのプロジェクトであるJupyterプロジェクトが開発したOSSWebアプリケーションで、複数の言語にまたがって対話的な処理実行を実現できます。コードを書くと実行結果がコードの下部にすぐ表示されるため、プログラムと関連するメモや出力をまとめて保存でき、またブラウザ上で処理を実行できることにより、関係者間での情報共有が容易になっています。

主な機械学習のフレームワークに対応

Apache MXNet、TensorFlowなどの主要な機械学習フレームワークに対応しています。さらにDockerコンテナで実行するように事前に構成されているため、Dockerコンテナが稼働できるエッジデバイスなどでも動作させられます。Dockerコンテナとは、Dockerと呼ばれる仮想化技術を使用した、コンテナ型の仮想化のことです。コンテナ型仮想化は、OSの上にコンテナと呼ばれるアプリケーションを実行できる仮想的な空間を作り、1つのOSの上でコンテナを複数提供できます。

よく使われる機械学習アルゴリズムをインストール

特徴量の抽出に向いたPrincipal Component Analysis (PCA)、異常検知に向いたRandom Cut Forestなど、主な機械学習アルゴリズムについて、事前にインストールや最適化が行われているため、柔軟にアルゴリズムを選択していけます。機械学習の実行はワンクリックで済むため、簡単です。

自動的にスケーリングする巨大なインフラ

インフラは必要に応じて自動的に拡張されます。極端な話ですが、ペタバイト規模の学習モデルでも対応できるでしょう。また、大容量で高速なAWS S3をデータレイクとして使うことで、スムーズな機械学習が可能です。データレイクとは、多数のビッグデータを元の構造のままで保持できる中央ストレージのことを指します。

SageMakerは、利用する前に機械学習の仕組みをある程度理解する必要がありますが、理解してしまえば、大規模なものでも、素早く機械学習の環境を準備できる魅力的なサービスです。

Amazon SageMakerの導入事例

Amazon SageMakerは、AWS上の仕組みを利用して効率的に機械学習環境を構築できるため、様々なシーンで利用されています。Amazon SageMakerの導入事例をみていきましょう。

ゲームプレイヤーに表示する広告をリアルタイムに決定

あるゲーム会社は、20億を超えるゲームのダウンロードと4億を超える月間アクティブユーザーを保持しています。同社は、Amazon SageMakerを使用して、ユーザーに表示される広告をリアルタイムに最適化できるようにしました。毎日、3000億人を超えるユーザーによる、1億回以上にも及ぶ広告表示がなされますが、小さなチームでも1週間未満でAI処理モデルを本番稼働でき、現在も問題なく継続してシステムを運用しています。

機械学習モデルのエンドポイントでのデプロイを自動化

レシピ共有サービスを提供する会社でも利用されています。この会社では、学習ジョブの繰り返しを最小化し、さらに機械学習モデルのデプロイをAmazon SageMakerで自動化することで、開発プロセスを早めることに成功しています。また、この開発環境での事例を基に、本番環境でもデプロイ自動化を推し進め、実装を目指しています。

ユーザーごとに配信するニュースを最適化

あるニュースアプリ企業では、機械学習テクノロジーを駆使して、最も自身への関連性が高く興味があると考えられるニュースをユーザーに届けています。Amazon SageMakerを利用した機械学習アルゴリズムで、数百万件規模の記事、ソーシャルシグナル、人的交流を評価し、取り上げるべきニュースを1100 万人超のマンスリーアクティブユーザーに配信しています。

Amazon SageMakerの使い方

では、Amazon SageMakerはどのように使うのでしょうか。本コラムではできるだけ簡単にお伝えするために、必要最小限の説明にとどめています。今回は、MNISTと呼ばれる手書き数字のデータを使用して、数字を判定できる機械学習環境を構築する流れをみていきます。

ノートブックインスタンスの作成

ノートブックインスタンスとは、Jupyter Notebookがインストールされてメモリ上に展開された「実体」のことです。インスタンスを作成することで、プログラムを記述するノートブックを使えるようになります。

データから学習するためのモデルのトレーニング

MINISTデータはPythonプログラムでダウンロードしてこれます。モデルのトレーニングのためには、まずアルゴリズムの選定が必要ですが、今回は選定のプロセスは省略して「k-means」と呼ばれるアルゴリズムを使用してトレーニングします。

モデルのデプロイ

モデルのデプロイは、Pythonライブラリを使用すると簡単に実施できます。モデルのデプロイが完了次第、モデル評価・検証を実施しましょ

なお、AWSのサイトにチュートリアルと流れがありますので、詳細はこちらをご覧ください。

機械学習モデルの構築およびトレーニング、デプロイ(AWS)別ウィンドウで開きます

Amazon SageMakerの料金

統合開発環境のAmazon SageMaker Studioは無料で使用できます。Amazon SageMakerの料金については、下記の公式ページをご覧ください。

Amazon SageMakerの料金(AWS)別ウィンドウで開きます

Amazon SageMakerで効率的な機械学習環境の構築を

「Amazon SageMaker」を使用すれば、機械学習に必要なモデル開発、学習、推論を実施していく仕組みを素早く準備できます。
もちろん機械学習の基本的な知識は必要になりますが、主要な機械学習フレームワークや機械学習アルゴリズムは実装されているので、扱いやすいサービスといえるでしょう。機械学習も1クリックで実施できます。

Amazon SageMakerで効率的に機械学習環境を構築し、自社のビジネスを加速させていきましょう。

なお、Amazon RekognitionやAmazon Pollyなど、各サービスで学習モデルが提供されていて学習モデル開発が不要なAWSサービスも存在します。こうしたサービスは既に用途がある程度決まっているものが多いので、目的に合ったサービスがあるなら学習モデル開発が不要なサービスを、独自の用途でサービスを開発したいならAmazon SageMakerを選択するとよいでしょう。

ページ上部へ戻る

無料ダウンロード

自社のクラウド導入に必要な知識、ポイントを
このに総まとめ!

あなたはクラウド化の
何の情報を知りたいですか?

  • そもそも自社は本当にクラウド化すべき?オンプレとクラウドの違いは?
  • 【AWS・Azure・Google Cloud】
    どれが自社に最もマッチするの?
  • 情シス担当者の負荷を減らしてコストを軽減するクラウド化のポイントは?
  • 自社のクラウド導入を実現するまでの具体的な流れ・検討する順番は?

初めての自社クラウド導入、
わからないことが多く困ってしまいますよね。

NTT東日本では
そんなあなたにクラウド導入に必要な情報を

1冊の冊子にまとめました!

クラウド化のポイントを知らずに導入を進めると、以下のような事になってしまうことも・・・

  • システムインフラの維持にかかるトータルコストがあまり変わらない。。
  • 情シス担当者の負担が減らない。。
  • セキュリティ性・速度など、クラウド期待する効果を十分に享受できない。。
理想的なクラウド環境を実現するためにも、
最低限の4つのポイントを
抑えておきたいところです。
  • そもそも”クラウド化”とは?
    その本質的なメリット・デメリット
  • 自社にとって
    最適なクラウド環境構築のポイント
  • コストを抑えるため
    具体的なコツ
  • 既存環境からスムーズにクラウド化
    実現するためのロードマップ

など、この1冊だけで自社のクラウド化のポイントが簡単に理解できます。
またNTT東日本でクラウド化を実現し
問題を解決した事例や、
導入サポートサービスも掲載しているので、
ぜひダウンロードして読んでみてください。

クラウドのわからない・
面倒でお困りのあなたへ

クラウドのご相談できます!
無料オンライン相談窓口

NTT東日本なら貴社のクラウド導入設計から
ネットワーク環境構築・セキュリティ・運用まで
”ワンストップ支援”が可能です!

NTT東日本が選ばれる5つの理由

  • クラウド導入を
    0からワンストップでサポート可能!
  • 全体最適におけるコスト効率・業務効率の改善
    中立的にご提案
  • クラウド環境に問題がないか、
    第3者目線でチェック
    してもらいたい
  • 安心の24時間・365日の対応・保守
  • NTT東日本が保有する豊富なサービスの組み合わせで
    ”課題解決”と”コスト軽減”を両立

特に以下に当てはまる方はお気軽に
ご相談ください。

  • さまざまな種類やクラウド提供事業者があってどれが自社に適切かわからない
  • オンプレミスのままがよいのか、クラウド移行すべきなのか、迷っている
  • オンプレミスとクラウド移行した際のコスト比較を行いたい
  • AWSとAzure、どちらのクラウドが自社に適切かわからない
  • クラウド環境に問題がないか、第3者目線でチェックしてもらいたい
  • クラウド利用中、ネットワークの速度が遅くて業務に支障がでている

クラウドを熟知するプロが、クラウド導入におけるお客さまのLAN 環境や接続ネットワーク、
クラウドサービスまでトータルにお客さまのお悩みや課題の解決をサポートします。

相談無料!プロが中立的にアドバイスいたします

クラウド・AWS・Azureでお困りの方はお気軽にご相談ください。