Amazon Web Services(AWS)は、2017年11月末から12月初めにかけて開催したAWS re:Invent 2017で、さまざまな分野にわたる大量の発表を行った。本連載では、各分野における発表の文脈を探る。第1回は、機械学習/AI関連の発表について紹介する。
AWSのディープラーニング/AI担当ゼネラルマネージャーであるマット・ウッド氏は、AWS re:Invent 2017の全体セッション全てに登場し、機械学習関連の新たな発表について説明した。これだけでもAWSの機械学習/AIへの力の入れ方がうかがい知れる。では、AWSはどんな機械学習/AI関連サービスを、どのような人のために提供しているのか。ウッド氏との個別インタビューの内容と合わせてお届けする。
参照記事
米AWSの製品戦略責任者に、AI関連サービスをどう展開していくのかを聞いた
今回のre:Inventにおける主要な発表は、機械学習プロセスを自動化・効率化する「Amazon SageMaker」、カメラを備えたボックスでAWSのコグニティブAPIを即座に試せる「AWS DeepLens」、エッジコンピューティングにおいて機械学習モデルを適用する「AWS Greengrass Machine Learning (ML) Inference」、コグニティブ系APIサービスの拡充、だ。
ウッド氏は筆者とのインタビューで、「機械学習に関わる人たちを、差別化につながらない作業から解放する」ことが、現時点で最も重要だと話した。「ビジネスユーザーが使えるような抽象化された機械学習インタフェースを提供するつもりはないのか」と聞いてみたが、「汎用的で使いものになるローコードツールは成立しにくいため、現在のところ(AWSのサービスとしては)考えていない」という。
「機械学習に関わる人たちを、差別化につながらない作業から解放する」ためのツールの1つとして、AWSがre:Invent 2017で一般提供開始を発表したのが「Amazon SageMaker」。機械学習モデルの構築、学習、適用の環境という一連の流れをサービスとして提供するもので、機械学習のプロセス全体にまたがる環境構築、およびトレーニングにおけるチューニングの自動化を通じ、ユーザーの時間と労力を節約しようとしている。
SageMakerでは、機械学習に取り組むデータサイエンティストの多くがIDE的に使っているツールであるJupyter Notebookの環境が、ワンクリックで自動的に用意される。データサイエンティストは今までのやり方を変える必要なく、オーサリングができる。AWSでは「多様なユースケースに対応する多数のノートブックを用意した」(AWSのアンディ・ジャシーCEO)。これをテンプレートとして使い、オーサリングにかかる時間を節約することも可能。
機械学習アルゴリズムについては、「最も人気の高い10のアルゴリズムをあらかじめ組み込んでおり、これらのいずれかを使うなら、ドライバーのインストール、フレームワークの構成などが済んだ状態で提供できる」(ジャシー氏)という。また、これらのアルゴリズムは、他の環境を使った場合に比べ高速に動作するという。ユーザーが自らアルゴリズムを書くこともできる。機械学習フレームワークとしてはTensorFlowとMXNetが、構成済みとなっている。他のフレームワークを使うこともできる。
トレーニングは、訓練データがあるS3バケットを指定し、インスタンスタイプを選択しさえすれば、ワンクリックで開始できる。訓練データは、Amazon S3に保存したものを使う。AWS Glueを使い、Amazon RDS、Amazon DynamoDB、Amazon RedshiftからS3にデータを複製することもできる。トレーニングが終われば、SageMakerのクラスタは自動的に停止する。こうして構築されたモデルは、ワンクリックでデプロイできる。
機械学習モデルの構築では、パラメーターチューニングに多くの時間が費やされる。SageMakerは、同社が「Hyperparameter Optimization」と呼ぶ、チューニングの自動実行機能を備える(この機能については「リミテッドプレビュー」段階)。「機械学習モデルを構築する人々は、もうパラメーターチューニングに悩むことがない。投入するデータの量や種類を変える必要があるかどうかだけを考えればいい」(ジャシー氏)。
SageMakerは料金体系として、インスタンスについては秒単位の課金、ストレージについてはGB単位の課金、データ転送についてはサービスからの出入りについて、GB単位の課金で構成される。
ウッド氏はSageMakerについて、「データサイエンティストは余計なことを考える必要がなくなり、やるべきことに集中できる」と話す。また、「機械学習に親しみたいプログラマーにとっても、Jupyter Notebookのテンプレートを活用することで、取り組みやすくなる」としている。ウッド氏はさらに、同時発表の「DeepLensを併用することで、ますます多くのソフトウェア開発者が、機械学習に取り組めるようになる」とも語っている。DeepLensについては後述する。
AWSは2016年のre:Inventで、MXNetに投資する一方、主要な機械学習フレームワーク全てについて、使いやすい環境を提供していくと発表していた。この姿勢は2017年も変わらないのか。ウッド氏は、全く変化はないという。
「幅広い選択肢を提供できること自体が、価値につながる」(ウッド氏)
では、「MXNetへの貢献を通じて、このオープンソースプロジェクトをコントロールしたいという意図はないのか」と聞いてみたところ、「活動として支配的なレベルではなく、少数派にとどまっているという点から、そうした意図がないことは示せる」と答えた。
ただし、結果的に、MXNetプロジェクトへある程度の影響を与える存在になりつつあることは事実のようだ。AWSは2017年12月4日(米国時間)、MXNet 1.0のリリースに伴い、構築したモデルをアプリケーションに組み込みやすくするAPIエンドポイント作成支援機能などで、同プロジェクトに貢献したことを明らかにしている。
また、AWSの機械学習系サービスでは、必ずしも全てのフレームワークを平等に扱っているわけではない。
AWSがre:Invent 2017で発表した前述のSageMakerは、前述の通りTensorFlowとMXNetについては事前に統合・構成済みであり、この2つを平等に扱っている。だが、Microsoftと協力して開始した、機械学習インタフェースのオープンソースプロジェクトであるGluonでは、現時点でMXNetに対応。次にMicrosoft Cognitive Toolkitへ対応する一方、他のフレームワークに組み込みやすくすると発表している。
後述のDeepLensではMXNetを搭載するが、他のフレームワークも使えるとしている。また、後述のGreenglass ML Inferenceでは、MXNetをハードウェアに最適化した形で提供するとし、他のフレームワークについての言及はない。
Copyright © ITmedia, Inc. All Rights Reserved.