Amazon Web Services ブログ

Category: SageMaker

Amazon SageMaker ランタイムが CustomAttributes ヘッダーのサポートを開始

 Amazon SageMaker はエンドツーエンドのプラットフォームで、データサイエンティストや開発者が使用して、大規模に機械学習 (ML) モデルの構築、トレーニング、チューニング、デプロイを行っています。Amazon SageMaker を使用すると、コンソールのワンクリックで、またはシンプルな API コールで、モデルのトレーニングを開始できます。トレーニングが完了して、モデルをデプロイする用意が整うと、Amazon SageMaker コンソールのワンクリックで起動が可能です。Amazon SageMaker のホスティングサービスを使用してモデルを本番環境にデプロイした後は、永続的な HTTPS エンドポイントが得られ、ここで機械学習モデルを利用し、InvokeEndpoint API アクションを介して推論を提供できます。 Amazon SageMaker InvokeEndpoint API アクションは、新しい HTTP ヘッダー、CustomAttributes のサポートを開始しています。この新しいヘッダーを利用すると、Amazon SageMaker エンドポイントでホストされているモデルに渡された推論のリクエストに関して、追加情報を提供できます。また、Amazon SageMaker エンドポイントでホストされているモデルが返した推論のリクエストに対するレスポンスで、追加情報を含めることもできます。たとえば、CustomAttributes ヘッダーを利用すると、リクエストの追跡に利用可能なアプリケーション固有の識別子であるトレース ID や、サービスエンドポイントが処理するようプログラムされたその他のメタデータを提供できます。 CustomAttributes ヘッダーで提供する情報は、逐語的に送られた不透明な値です。InvokeEndpoint の呼び出しは、AWS Signature Version 4 を使用して認証されます。カスタム属性は 1024 字を超えることはできません。また、表示可能な US-ASCII 文字で構成される必要があります。この US-ASCII 文字 については、セクション 3.3.6.Field Value Components of the Hypertext Transfer Protocol […]

Read More

Amazon SageMaker を利用して都市の空気汚染データをもとに天気への影響を予測するモデルを構築する。

都市における大気汚染は、人々、動物、植物や財産への悪影響をもたらす深刻な問題を引き起こしかねません。大気汚染は都市の人口が増え続けるにつれて注目を浴びるようになってきた重要な問題です。今年は ACM SIGKDD が主催する、毎年開催されるデータマイニングとナレッジディスカバリーの競技大会、2018 KDD Cup のテーマとして取り上げられました。 輸送と家庭暖房用に化石燃料を燃焼すると、汚染物質の二酸化窒素 (NO2) が生成され、都市環境の大気が汚染される主な原因となっています。二酸化窒素は、一酸化窒素 (NO) が酸化することによって生成される二次汚染物質です。これは呼吸器疾患の主な原因となっています。  欧州連合においては、2008/50/EC (Cleaner Air For Europe、CAFÉ) 指令により、NO2 の上限を毎時 200μg/m3、年平均 40μg/m3 と定められました。1 時間あたりの制限値の上限が年間で 18μg よりも上回ることは許されていません。 世界中の多くの都市で、少なくとも 1 日単位で大気質の水準が報告されています。私たちは、Amazon SageMaker (開発者やデータサイエンティストがあらゆる規模の機械学習モデルを短期間で簡単に構築、トレーニング、デプロイできるようにする完全マネージド型プラットフォーム) を使用して大気質のデータを調べることにしました。 シナリオ このブログ記事のデモンストレーションでは、選択した都市の大気汚染物質 (NO2) と天気の関係を調べます。 アイルランド、ダブリン。 大気質データは、アイルランド環境保護庁が運営する、長年にわたって確かな地位を築いてきたモニタリングステーションから取得したものです。このモニタリングステーションは、アイルランドのダブリン市のラスミネスにあります。ラスミネスは市内中心部から約 3 キロ南のダブリンの郊外に位置しています。  アイルランド共和国の首都ダブリンの人口は、約 100 万です。ダブリンは東側には海、南側には山があり、そして西と北側には平坦な地形が広がっています。市の風速と風向きは、ダブリンの南側にある山々から影響を受けます。一般的に風向きが南であるとき、山があることで風向きは南西または南東に偏向させられます。 天気データは、ダブリン空港にある長年信頼されてきた気象観測所から取得したものです。ダブリン空港は都市の北側の平坦な地形に位置していて、ダブリン市内中心部からは約 12 キロ北にあります。 ツール 探索的データ解析と機械学習のための Amazon SageMaker Amazon Simple Storage Service (Amazon S3) […]

Read More

動的なDeepLearningによる時系列データの予測

時間の経過とともに展開していくイベントを予測することは、オプション価格決定や、病気の進行、音声認識、サプライチェーン管理などを扱う多くのアプリケーションにとって不可欠な機能です。と同時に、こうした予測は難しいことでも知られています。 全体的な結果を予測するのではなく、特定の時刻に発生するイベントの一連の動き ( シーケンス ) を正確に予測することを目指します。物理学のノーベル賞受賞者である Niels Bohr 氏は、「予測は非常に難しいもので、未来については特にそうです。」と述べています。 このブログ記事では、AWS での深層学習アプローチを使用した時系列予測の高度なテクニックについて見ていきます。この投稿では、任意の時系列値予測に注目します。ですので、時系列を研究している読者にとって興味深い内容になるでしょう。またこの投稿では、読者が機械学習の分野で基礎的な技術知識をすでに持っていることを仮定しています。  Amazon SageMaker (Bring-Your-Own-Algorithm を使用 ) を活用して、複数の要因の過去の傾向に基づく時系列を予測する、独自の RNN ( リカレントニューラルネットワーク ) 深層学習アルゴリズムを開発していきます。Amazon SageMaker は完全マネージド型の機械学習プラットフォームで、データサイエンティストや開発者が機械学習モデルを素早くかつ簡単に構築し、大規模な実稼動アプリケーションとなるようにトレーニングするのををサポートします。これにより、ビルトインアルゴリズムとビルトインフレームワークの両方を使用できるようになり、Docker コンテナを使ったカスタムコードをインポートすることも可能になります。

Read More

AWS PrivateLink を使用してすべての Amazon SageMaker API コールを保護する

すべての Amazon SageMaker API 操作が AWS PrivateLink を介して完全にサポートされるようになりました。これにより、インターネットへのデータ暴露を減らすことで、クラウドベースのアプリケーションと共有されるデータセキュリティが向上します。ノートブックインスタンスへのアクセスは引き続き、TLSを介したインターネット経由となり、AWSマネージメントコンソールへのログインクレデンシャルで保護される形態となります。このブログでは、AWS PrivateLink を使用して Amazon SageMaker API コールを保護するための VPC エンドポイントの設定方法を説明します。 AWS PrivateLink トラフィックはインターネットを通過しないため、ブルートフォースや分散型サービス拒否攻撃などの脅威への露出を低減します。お使いのアプリケーションと Amazon SageMaker API 操作間のすべての通信は VPC の内部で行われるため、Amazon SageMaker と通信するためにインターネットゲートウェイ、NAT デバイス、VPN 接続、または AWS Direct Connect は必要ありません。代わりに、AWS PrivateLink では、インターフェイス VPC エンドポイントを使用して、スケーラブルな方法でお使いの VPC からすべての Amazon SageMaker API 操作にプライベートアクセスすることが可能です。VPC エンドポイントはすべての Amazon SageMaker API コールのエントリポイントとして機能するプライベート IP アドレスを使用したサブネット内の Elastic Network Interface です。 AWS […]

Read More

Amazon SageMaker MXNet 1.2 コンテナの発表

Amazon SageMaker の構築済み MXNet コンテナで、最新リリースの Apache MXNet 1.2 の使用を開始しました。  Amazon SageMaker は、開発者やデータサイエンティストが、機械学習モデルをあらゆる規模で、迅速かつ簡単に構築、トレーニング、デプロイできるようにする完全マネージド型プラットフォームです。  また、構築済み MXNet コンテナにより、深層学習スクリプトを自然に記述するのが容易になるととも、Amazon SageMaker における分散型のマネージドトレーニングやリアルタイムの製品ホスティングの活用も可能にします。 MXNet 1.2 には使いやすさ、より優れたパフォーマンス、強化された相互運用性などといった特徴があります。 また、この製品により、新しいインテル MKL-DNN との統合が追加され、コンボリューション、デコンボリューション、コンピューティングに最適化された C5 インスタンスのプールなどのニューラルネットワーク演算が高速化されます。拡張 FP16 のサポートにより、NVIDIA Volta V100 GPU 搭載の Amazon EC2 P3 インスタンスでの Tensor Core の混合精度トレーニングが高速化されます。最後に、MXNet 1.2 には、Open Neural Network Exchange の新しい形式 (ONNX) のモジュールが付属しているため、ONNX モデルを MXNet のシンボリックインターフェイスにインポートできます。 ONNX は PyTorch、Caffe2、Microsoft Cognitive Toolkit (CNTK)、Chainer、MXNet […]

Read More

自分で事前にトレーニングした MXNet または TensorFlow のモデルを Amazon SageMaker に導入する

Amazon SageMaker は、ML モデルをトレーニングおよびホストするための容易なスケーラビリティとディストリビューションを提供するだけでなく、モデルをトレーニングするプロセスとモデルのデプロイメントを分離するようにモジュール化されています。これは、Amazon SageMaker 以外でトレーニングされたモデルを SageMaker に導入してデプロイできることを意味します。すでにトレーニングを受けたモデルがあり、パイプライン全体ではなく SageMaker のホスティング部分だけを使用したい場合は、これは非常に便利です。また、これは自分のモデルをトレーニングしないが、事前にトレーニングされたモデルを購入する場合にも便利です。 このブログ記事では、TensorFlow または MXNet でトレーニングした自分のモデルを Amazon SageMaker にデプロイする方法について説明します。以下は、プロセス全体の概要です。 ステップ 1: モデル定義を、選択したフレームワークで記述します。 ステップ 2: モデルを、そのフレームワークでトレーニングします。 ステップ 3: モデルをエクスポートし、Amazon SageMaker が理解できるモデル成果物を作成します。 ステップ 4: モデル成果物を Amazon S3 バケットにアップロードします。 ステップ 5: モデル定義、モデル成果物、Amazon SageMaker Python SDK を使用して、SageMaker モデルを作成します。 ステップ 6: SageMaker モデルをエンドポイントとしてデプロイします。 モデルとは何か?、そしてどうすれば手に入るのか? トレーニングされたモデルファイルとは、単にトレーニングプロセスによって作成されたモデル成果物です。これには、モデルのすべてのパラメータの値と、モデルのアーキテクチャに関する追加のメタデータが含まれていて、これらのパラメータが互いにどのように接続されているかを示します。フレームワークが異なると、モデルファイルをエクスポートする方法も異なります。 TensorFlow TensorFlow のモデルは、トレーニングされた TensorFlow Estimator からエクスポートできます。モデルファイルは、Amazon SageMaker がそれを理解できるようにするためのプロトコルに従わなければなりません。 単純な TensorFlow Estimator […]

Read More

教師あり学習に Amazon SageMaker の Amazon Mechanical Turk を使用する

教師付き学習には、プロジェクトのトレーニング段階で、何が正しい答えかをアルゴリズムに教えるラベルまたはアノテーションが必要です。事実、MXNet 、TensorFlow 、および PyTorch を使った例の多くは、これらのフレームワークが持ついろんな機能を調べるのに利用するアノテーション付きデータセットから始めています。しかし残念ながら、例からアプリケーションに移行する際に、完全なアノテーションが付随するデータセットを簡単に入手できることはまずありません。このチュートリアルでは、Amazon SageMaker ノートブックの中から Amazon Mechanical Turk (MTurk) を使って、データセットのアノテーションを取得し、トレーニングに使用する方法を解説します。 TensorFlow では、ニューラルネットワーク識別子を使ってアイリス ( アヤメ ) を識別するのに、エスティメーターを利用するという例があります。この例も、SageMaker サンプルノートブックライブラリ、または GitHub の SageMaker Examples プロジェクトの中にあります。チュートリアルとサンプルノートの両方でアイリスデータセットを使用しています。これには、3 つの関連するアイリス種および関連する種の測定が含まれます。これらのデータポイントは、4 つの測定値に基づいてアイリスの種を予測するモデルをトレーニングするのに使用します。 左から右へ、Iris setosa ( 画像は Radomil 氏、CC BY-SA 3.0) 、Iris versicolor ( 画像は Dlanglois 氏、CC BY-SA 3.0) 、および Iris virginica ( 画像は Frank Mayfield 氏、CC BY-SA 2.0) 。 これは TensorFlow […]

Read More

【開催報告】Digital Advertising Japan Seminar 2018 – Machine Learning 事例祭り –

こんにちは。AWS ソリューションアーキテクトの八木達也 ( @ygtxxxx ) です。 7月23日に、「Digital Advertising Japan Seminar 2018 – Machine Learning 事例祭り –」を開催いたしました。 AWSジャパン主催でデジタル広告業界の方向けのイベントを開催するのは2年ぶりでしたが、定員60人のところ55名の方にお集まりいただき、盛況となりました。             このイベントは「Digital Advertising、AdTech 領域における Machine Learningの実践知」を「互いに学び合う」ことができる場を作ることを目標としていたため、AWSメンバーによるプレゼンテーションだけではなく、お客様プレゼンテーションを中心としたAGENDAを構成しました。機会学習という領域における、テクノロジー視点でのお取組み、組織育成視点でのお取組み、それぞれの視点で最先端な活動をなさる方々よりご登壇を頂きました。 まずは主催者の唐木/八木よりオープニングセッションを行いました。 唐木より全体の説明を行い、八木より「Machine Learning for Digital Advertising」というタイトルでプレゼンテーションを行いました。 Machine Learning for Digital Advertising from Amazon Web Services Japan 次に、アナリティクス スペシャリスト ソリューションアーキテクトの志村より「AWS ML Services Update」というタイトルでプレゼンテーションを行いました。 AWS ML Update from Amazon […]

Read More

TensorFlow コンテナと Amazon SageMaker での「独自のアルゴリズムの導入」を活用する、カスタムラベルの転移学習

データ科学者および開発者は、Amazon SageMaker の完全マネージド型機械学習サービスを使用して機械学習 (ML) モデルを構築およびトレーニングし、実稼働対応可能なレベルでホストされている環境に直接デプロイすることができます。 このブログ記事では、Amazon SageMaker を使用して、トレーニングと推論のための独自のコードで TensorFlow コンテナによる転移学習を行う方法を説明します。 転移学習は、追加のカスタムラベルのために AlexNet や ResNet[1] などの既にトレーニングされたニューラルネットワークを再トレーニングするためにコンピュータビジョンの問題で使用されるよく知られているテクニックです。また、Amazon SageMaker は、組み込みの画像分類アルゴリズムによる画像分類のための転移学習もサポートしており、独自のラベル付き画像データを使用して ResNet[1] ネットワークを再トレーニングすることもできます。Amazon SageMaker についての詳細は、この画像分類のドキュメントを参照してください。転移学習および関連するガイドラインをいつ使用するかを理解するには、こちらをご覧ください。 Amazon SageMaker の組み込みの画像分類アルゴリズムは幅広い種類の用途に適していますが、事前にトレーニングされたネットワークとそれがトレーニングされた画像データの異なる組み合わせが必要となる場合があります。たとえば、念頭に置いておくべき基準のいくつかは、元のデータセットと新しいデータセットの類似性、新しいデータセットのサイズ、必要なラベルの数、モデルの精度、トレーニングしたモデルのサイズ、そして再トレーニングに必要なコンピューティング能力の量などです。仮に、トレーニングしたモデルをハンドヘルドデバイスにデプロイしようとしているなら、MobileNet などのフットプリントが小さいモデルを採用する方が良いかもしれません。あるいは、コンピューティング効率がより良いモデルが欲しいなら、Xception のほ方が VGG16 や Inception よりも優れています。 このブログ記事では、ImageNet データセットで事前にトレーニングした inception v3 ネットワークを採用し、Caltech-256 データセット (Griffin、G. Holub、AD. Perona、P. The Caltech 256. Caltech Technical Report) を使用して再トレーニングします。Amazon SageMaker を使用すると、独自のコンテナをバンドルして Amazon Elastic Container Registry (Amazon ECR) にインポートするのが非常に簡単になります。あるいは、Amazon […]

Read More

Amazon SageMaker を使用して画像を分類する

イメージ分類と画像内の物体検出が最近注目されてきていますが、アルゴリズム、データセット、フレームワーク、およびハードウェアの機能の向上が組み合わさった結果です。こうした改良のおかげで技術が一般大衆化し、イメージ分類のためのソリューションが独自で作成できるようになったのです。 画像内の物体検出は、以下の画像が示すように、こうしたアクティビティを実行するアプリケーションの中でも最も重要な機能です。 人の進路と物体追跡 実際の店舗で、商品の再配置を警告する 視覚的な検索 (画像を入力して検索する) イメージ分類および物体検出に使う技術は、深層学習 (DL) に基づいているのが現状です。DL は、多層のニューラルネットワーク (NN) あるいはディープニューラルネットワークを処理するためのアルゴリズムに焦点を当てた機械学習 (ML) のサブ領域です。一方、ML は人工知能 (AI) のサブ領域で、コンピューターサイエンスの分野です。 誰でもこれらの技術にアクセスできますが、実際のビジネスプロセスをサポートするエンドツーエンドのソリューションとして、これらの要素をつなぎ合わせて使うことはまだ難しい状況です。Amazon Rekognition は、非常に正確な顔分析と画像や動画の顔認識ができるシンプルな API を装備しており、すぐに利用できるサービスなので、最初に選ぶならよい選択肢かもしれません。さらに、顔を検出、分析、比較することができるため、多岐にわたるユーザー検証、人数計算、公共の安全といったユースケースにも利用できます。Amazon Rekognition のドキュメントを読めば、シンプルな API 呼び出しでこれらの機能全てをアプリケーションに簡単に追加できることが分かります。 ただし、ビジネス上でカスタムでのイメージ分類が必要な場合は、機械学習モデルを作成するためのパイプライン全体をサポートするプラットフォームが必要です。Amazon SageMaker は、そのためのものです。Amazon SageMaker は、ML モデル開発の全ての手順、つまりデータ検索と構築、トレーニング、および ML モデルのデプロイをサポートする、完全マネージド型のサービスです。Amazon SageMaker を使用すると、どんなビルトインアルゴリズムでも選択でき使用することができるので、市場投入までの時間と開発コストを削減できます。詳細は、「Amazon SageMaker でビルトインアルゴリズムを使用する」をご参照ください。 カスタムの画像識別子を作成する このブログ記事は、服装品やアクセサリーを識別するための画像識別子の作成を目標としています。これらのアイテムの画像がいくつかあり、それらを見て、何の物体が各画像に含まれているかを言う (予測する) モデルが必要だとしましょう。Amazon SageMaker はすでにビルトインのイメージ分類アルゴリズムを装備しています。これで、データセット (画像コレクションと各オブジェクトのそれぞれのラベル) を準備し、モデルのトレーニングを開始するだけです。 公開データセットを使用します。これは Fashion-MNIST と呼ばれる ML アルゴリズムをベンチマークするための新しい画像データセットです。データセットは、6 万例のトレーニングセットと 1 万例のテストセットで構成されています。各例は、ラベルまたはクラスに関連付けられた、28×28 のグレースケール画像です。データセットには、T […]

Read More