2017年12月7日木曜日

AWSの機械学習/ディープラーニングサービス、新たな展開とは

 AWSのディープラーニング/AI担当ゼネラルマネージャーであるマット・ウッド氏は、AWS re:Invent 2017の全体セッション全てに登場し、機械学習関連の新たな発表について説明した。これだけでもAWSの機械学習/AIへの力の入れ方がうかがい知れる。では、AWSはどんな機械学習/AI関連サービスを、どのような人のために提供しているのか。ウッド氏との個別インタビューの内容と合わせてお届けする。

 今回のre:Inventにおける主要な発表は、機械学習プロセスを自動化・効率化する「Amazon SageMaker」、カメラを備えたボックスでAWSのコグニティブAPIを即座に試せる「AWS DeepLens」、エッジコンピューティングにおいて機械学習モデルを適用する「AWS Greengrass Machine Learning (ML) Inference」、コグニティブ系APIサービスの拡充、だ。

「差別化につながらない作業から、機械学習に関わる人たちを解放する」

 ウッド氏は筆者とのインタビューで、「機械学習に関わる人たちを、差別化につながらない作業から解放する」ことが、現時点で最も重要だと話した。「ビジネスユーザーが使えるような抽象化された機械学習インタフェースを提供するつもりはないのか」と聞いてみたが、「汎用的で使いものになるローコードツールは成立しにくいため、現在のところ(AWSのサービスとしては)考えていない」という。

 「機械学習に関わる人たちを、差別化につながらない作業から解放する」ためのツールの1つとして、AWSre:Invent 2017で一般提供開始を発表したのが「Amazon SageMaker」。機械学習モデルの構築、学習、適用の環境という一連の流れをサービスとして提供するもので、機械学習のプロセス全体にまたがる環境構築、およびトレーニングにおけるチューニングの自動化を通じ、ユーザーの時間と労力を節約しようとしている。

Amazon SageMakerで、「ディープラーニングにまつわる面倒なこと」を一掃

 SageMakerでは、機械学習に取り組むデータサイエンティストの多くがIDE的に使っているツールであるJupyter Notebookの環境が、ワンクリックで自動的に用意される。データサイエンティストは今までのやり方を変える必要なく、オーサリングができる。AWSでは「多様なユースケースに対応する多数のノートブックを用意した」(AWSのアンディ・ジャシーCEO)。これをテンプレートとして使い、オーサリングにかかる時間を節約することも可能。

 機械学習アルゴリズムについては、「最も人気の高い10のアルゴリズムをあらかじめ組み込んでおり、これらのいずれかを使うなら、ドライバーのインストール、フレームワークの構成などが済んだ状態で提供できる」(ジャシー氏)という。また、これらのアルゴリズムは、他の環境を使った場合に比べ高速に動作するという。ユーザーが自らアルゴリズムを書くこともできる。機械学習フレームワークとしてはTensorFlowMXNetが、構成済みとなっている。他のフレームワークを使うこともできる。

 
SageMakerでは、デフォルトで10のアルゴリズムを提供する

 トレーニングは、訓練データがあるS3バケットを指定し、インスタンスタイプを選択しさえすれば、ワンクリックで開始できる。訓練データは、Amazon S3に保存したものを使う。AWS Glueを使い、Amazon RDSAmazon DynamoDBAmazon RedshiftからS3にデータを複製することもできる。トレーニングが終われば、SageMakerのクラスタは自動的に停止する。こうして構築されたモデルは、ワンクリックでデプロイできる。

 機械学習モデルの構築では、パラメーターチューニングに多くの時間が費やされる。SageMakerは、同社が「Hyperparameter Optimization」と呼ぶ、チューニングの自動実行機能を備える(この機能については「リミテッドプレビュー」段階)。「機械学習モデルを構築する人々は、もうパラメーターチューニングに悩むことがない。投入するデータの量や種類を変える必要があるかどうかだけを考えればいい」(ジャシー氏)。

 SageMakerは料金体系として、インスタンスについては秒単位の課金、ストレージについてはGB単位の課金、データ転送についてはサービスからの出入りについて、GB単位の課金で構成される。

 ウッド氏はSageMakerについて、「データサイエンティストは余計なことを考える必要がなくなり、やるべきことに集中できる」と話す。また、「機械学習に親しみたいプログラマーにとっても、Jupyter Notebookのテンプレートを活用することで、取り組みやすくなる」としている。ウッド氏はさらに、同時発表の「DeepLensを併用することで、ますます多くのソフトウェア開発者が、機械学習に取り組めるようになる」とも語っている。DeepLensについては後述する。

MXNetと他の機械学習フレームワークとの関係

 AWSは2016年のre:Inventで、MXNetに投資する一方、主要な機械学習フレームワーク全てについて、使いやすい環境を提供していくと発表していた。この姿勢は2017年も変わらないのか。ウッド氏は、全く変化はないという。

 「幅広い選択肢を提供できること自体が、価値につながる」(ウッド氏)

 では、「MXNetへの貢献を通じて、このオープンソースプロジェクトをコントロールしたいという意図はないのか」と聞いてみたところ、「活動として支配的なレベルではなく、少数派にとどまっているという点から、そうした意図がないことは示せる」と答えた。

 ただし、結果的に、MXNetプロジェクトへある程度の影響を与える存在になりつつあることは事実のようだ。AWS2017124日(米国時間)、MXNet 1.0のリリースに伴い、構築したモデルをアプリケーションに組み込みやすくするAPIエンドポイント作成支援機能などで、同プロジェクトに貢献したことを明らかにしている。

 また、AWSの機械学習系サービスでは、必ずしも全てのフレームワークを平等に扱っているわけではない。

 AWSre:Invent 2017で発表した前述のSageMakerは、前述の通りTensorFlowMXNetについては事前に統合・構成済みであり、この2つを平等に扱っている。だが、Microsoftと協力して開始した、機械学習インタフェースのオープンソースプロジェクトであるGluonでは、現時点でMXNetに対応。次にMicrosoft Cognitive Toolkitへ対応する一方、他のフレームワークに組み込みやすくすると発表している。

 後述のDeepLensではMXNetを搭載するが、他のフレームワークも使えるとしている。また、後述のGreenglass ML Inferenceでは、MXNetをハードウェアに最適化した形で提供するとし、他のフレームワークについての言及はない。

AWS DeepLensで、ディープラーニングを開発者に親しみやすく

 DeepLensは、Intel AtomHDカメラ、マイクを搭載したボックス。re:Invent 2017のワークショップ参加者には無料で配布した。米国での販売開始を20184月に予定しており、Amazon.comでは事前予約ができるようになっている。価格は249ドル。

 ソフトウェアとしては、AWSがエッジコンピューティング用のソフトウェアとして推進している「AWS Greengrass」を搭載。すなわち「AWS Lambda」のサーバレスコンピューティング機能を動かせる。

 DeepLensはまた、MXNetの推論エンジンを搭載。SageMakerなどを使ってAWSで構築したモデルを、同デバイスに適用して実行できる。AWSではこのデバイスに最適化したMXNetを搭載しているが、他のフレームワークを使うこともできるとしている。

 「コンピュータービジョンは単純に言って楽しい」。機械学習に親しむプログラマーを増やすために、カメラ搭載ボックスを提供する理由について、ウッド氏はこう話した。

 DeepLensでは、必ずしも最初から、SageMakerを使ったディープラーニングに直接取り組む必要はない。各種のプロジェクトテンプレートが用意されていて、訓練済みのモデルを適用することもできるという。DeepLensの紹介ページには、「猫・犬の検知」「物体認識」「顔認識」「ホットドッグ検知」などが、こうしたテンプレートとして紹介されている。

 DeepLensは上記の通り、機械学習を楽しく学んでもらうことを主な目的としている。だが、当然ながら画像を対象とした機械学習を活用するサービスで、即座に開発を始め、PoCProof of Concept)を行うためにも使える。

AWS Greengrass ML Inferenceでエッジコンピューティングに対応

 IoTを機械学習と組み合わせるケースが増えている。特に日本では、不良検査や故障予測、監視の自動化などに生かす例がよく聞かれるようになってきた。

 今回のre:Inventでは、こうしたユースケースへの迅速な対応を支援する目的で、Greengrass ML Inferenceがプレビュー版として発表された。Greengrassにローカルでの推論エンジン実行機能を付加したもので、前述のDeepLensも、「Greengrass ML Inferenceを搭載している」と表現できる。

 Greengrassは、幅広いエッジコンピューティングデバイスにインストールできるソフトウェアで、デバイス上でLambda関数を動かし、AWSのサービスとつなげて利用できる。IoTで、ローカルな処理が必要なケースに適している。

 今回発表のGreengrass ML Inferenceは、これにMXNetのエンジンを付加するもの。NVIDIA JetsonIntel Apollo LakeRaspberry Piのそれぞれに最適化されたMXNetパッケージを、デバイスにダウンロードしで動かせるという。

 Greengrass ML Inferenceでは、Greengrassコンソールで、SageMakerによって構築・訓練されたモデルを直接ダウンロードして適用できる。

コグニティブ系APIでは、Alexaとも連動して世界を広げつつある

 AWS2016年のre:Inventで、画像解析の「Amazon Rekognition」、テキストを音声に変換する「Amazon Polly」、そしてPollyを活用した自動音声認識/自然言語認識アプリケーションオーサリング環境の「Amazon Lex」を発表した。

 Re:Invent 2017では、ビデオ解析の「Amazon Rekognition Video」、音声をテキスト化する「Amazon Transcribe」、テキスト翻訳の「Amazon Translate」、文章から特徴を抽出する「Amazon Comprehend」を発表した。

 Rekognition Videoでは、ビデオ中の物体や人物を検知・分類したり、シーンの不適切度を示したりできる。「不適切度が80%以上のシーンは削除する」などと決めて、ビデオの不適切コンテンツに関する編集作業を自動化するのに使える。人物の追跡も可能で、撮影済みの動画に加え、ライブビデオ(ストリーミングビデオ)に対応しているため、監視カメラによる不正の追跡にも使える。なお、Amazon Rekognitionre:Inventの約1週間前、201711月下旬に機能強化された。イメージ内のテキストの検出と認識、数千万の顔からのリアルタイム顔認識、密集写真からの最大100個の顔検出ができるようになった。

 Transcribeは、段落分けを自動で行うという。一般的な音声に加え、電話音声に対応するため、Amazon Connectの録音機能と組み合わせ、コールセンターで使うこともできそうだ。

 Comprehendは、テキストデータからキーフレーズを抽出したり、トピック分析、エンティティ分析、センチメント分析(感情分析)を行ったりできる。SNSのポストにも対応する。キーフレーズの例として、AWSでは「warm」「sunny」「beautiful」などを挙げている。

 
Comprehendは、文章から特徴的な言葉を抜き出し、分類して示せる

 音声認識APIおよび音声合成APIの基となっているのは、Alexa搭載デバイス向けのサービス。関連してAWSは今回、職場でのAlexa活用を促進するため、Alexa for Businessを発表した。

 Alexa for Businessでは、各ユーザーの個人用アカウントと職場用アカウントを、分離しながら連動できる。そして職場用アカウントは、企業が管理できる。その上で各ユーザーは、音声による命令で、ビデオ会議を開始したり、会議室を予約したり、Alexaデバイスをスピーカーフォンとして使って、電話をしたりできる。受付で来訪者に対応するロボットの開発も、適用例の1つとして挙げている。

 Alexaを搭載しAmazon Echoには、スピーカー/マイクだけでなく、カメラを搭載した製品出てきている。今後、Amazonは画像系のAPIも活用するSkillの開発を促す活動を進める可能性がある。

 こうしてAWSは、Alexaを通じてAmazonが構築したエコシステムを、さらに幅広いディープラーニングソリューションの構築・提供につなげようとしている。

 

0 件のコメント:

コメントを投稿