Amazon Web Services ブログ

Category: Launch

新発表 – AWS Step Functions が コンピュート、データベース、メッセージング、アナリティクス、機械学習 のサービスと統合

AWS Step Functions はアプリケーション開発者のためのフルマネージドなワークフローサービスです。各アクティビティの接続と整理を、信頼性があり繰り返し可能な形で、ビジネスロジックとワークフローロジックを分離しながら、高レベルの設計と作業で実現できます。ワークフロー(ステートマシンと言います)を設計、テストした後、スケーラブルにデプロイして10,000から100,000もの処理を独立かつ同時に実行することができます。Step Functions は各ワークフローの状態を追跡し、モニタリングやロギングもシンプルにします。詳しくは 「サーバーレスワークフローを作成する」 のチュートリアルをお試しください。

Read More

新機能 – Amazon SageMaker Neo – トレーニングしたモデルをどこでも実行

機械学習(Machine Learning: ML)は、トレーニングと推論という2つの異なるフェーズに分かれています。 トレーニングは、モデルを構築すること、すなわち、意味のあるパターンを識別するためにデータセット上で ML アルゴリズムを実行することを扱います。これには大量のストレージとコンピューティングパワーが必要なことが多く、クラウドは Amazon SageMaker や AWS Deep Learning AMI などのサービスで ML ジョブをトレーニングするためのうってつけな場所になります。 推論は、モデルの使用、すなわちモデルが一度も見たことがないデータサンプルの結果を予測することを扱います。ここでは、要件が異なります。開発者は通常、待ち時間(1回の予測でどれくらい時間がかかるか)とスループット(並列で実行できる予測の数)を最適化することに関心があります。 もちろん、リソースが制約されているデバイスを扱う場合は、予測環境のハードウェアアーキテクチャがこのようなメトリックに非常に大きな影響を与えます。Raspberry Pi の愛好家として、私はしばしば、若い仲間が私の推論コードをスピードアップするためにもう少し誘導して欲しいと思っています。 特定のハードウェアアーキテクチャーのモデルをチューニングすることは可能ですが、ツールの欠如が原因でエラーが発生しやすく時間がかかります。ML フレームワークやモデル自体にマイナーな変更を加えると、通常、ユーザーは再び最初からやり直す必要があります。残念なことに、ほとんどの ML 開発者は、基礎となるハードウェアにかかわらずどこでも同じモデルを展開する必要があり、パフォーマンスは大幅に向上しません。

Read More

Amazon SageMaker RL – Amazon SageMakerを使ったマネージドな強化学習

この数年、機械学習はたくさんの興奮をもたらしました。実際、医療画像分析 から自動運転トラックまで、複雑なタスクを機械学習によって成功させ、成長を遂げてきました。それにしても、どうやってこれらの機械学習モデルは賢くなっているのでしょうか? 端的には、機械学習のモデルは、以下の3つのいずれかの方法で学習されています。 教師あり学習:ラベル付きのデータセット(サンプルと答えを含む)を使って学習を実行します。徐々にモデルは学習し、正しい解を予測をするようになります。回帰と分類などが、教師あり学習の例として挙げられます。 教師なし学習: ラベルのないデータセット(サンプルのみを含む)を使ってアルゴリズムを実行します。ここでは、モデルはデータ中のパターンを徐々に学習し、それに応じてサンプルを編集します。クラスタリングやトピックモデリングなどが、教師なし学習の例として挙げられます。 強化学習: これは上の二つとはとても異なっています。ここでは、コンピュータープログラム(エージェントを指す)は環境と相互作用し、ほとんどの場合、これはシミュレータの中で行われます。エージェントは行動に応じて正または負の報酬を得ますが、報酬は、その行動がどれぐらい良いのかを表す数値表現を出力するユーザー定義関数によって計算されます。生の報酬を最大化することで、エージェントは最適な意思決定の戦略を学ぶことができます。

Read More

Amazon SageMaker Ground Truth — 高い精度のデータセットを構築し、ラベル付けのコストを最大70%削減

1959年、アーサー・サミュエルは機械学習を「明示的にプログラムされなくても新しいことを学べる能力をコンピュータに与える学問分野」と定義しました。しかし、機械仕掛けの神 (deus ex machina) など存在せず、学習プロセスにはアルゴリズム (「どのように学ぶか」) と学習用データセット (「何から学ぶか」) が必要です。 今日では、ほとんどの機械学習タスクは教師あり学習という技術を用いており、アルゴリズムはラベル付けされたデータセットからパターンや行動を学習します。ラベル付けされたデータセットにはデータサンプルに加え、それぞれに対する正しい答え、すなわち “ground truth” が含まれています。手元の問題に合わせて、ラベル付きの画像 (「これは犬」「これは猫」) を使ったり、ラベル付きのテキスト (「これはスパム」「これは違う」) を使ったりします。

Read More

新発表 – Amazon Forecast – 時系列予測を容易に

未来を予見する能力は、信じられないほどのスーパーパワーとなります。AWSは、あなたにその力を与えることはできませんが、機械学習において、数ステップで時系列の予測を行うお手伝いができます。 時系列予測のゴールは、毎週の売上、1日の在庫レベル、1時間ごとのウェブサイトトラフィックなどの時間依存データの将来の値を予測することです。 今日の企業は、シンプルなスプレッドシートから複雑な財務計画ソフトウェアまであらゆるものを使用して、製品需要、リソースニーズ、財務パフォーマンスなどの将来のビジネス成果を正確に予測しようとしています。 これらのツールは、時系列データと呼ばれる一連の履歴データを見て予測を作成します。例えば、そのようなツールは、レインコートの将来の売上を、過去の売上データと、未来が過去によって決定されるという前提をもとにして、単に予測しようとする場合があります。 このアプローチは、不規則な傾向を持つ大量のデータセットに対して正確な予測を生成するのに苦労する可能性があります。 また、時間とともに変化するデータ系列(価格、割引、ウェブトラフィックなど)を、製品の機能や店舗の場所などの関連する独立変数と簡単に組み合わせることもできません。

Read More

Amazon Elastic Inference — GPUを利用した深層学習推論の高速化

近年の AI や深層学習の発展には、Graphics Processing Units (GPU) の素晴らしい処理能力が重要な役割を果たしてきました。 10年程前、研究者は機械学習や High Performance Computing (HPC) に対して、大規模なハードウェア並列演算能力を活用する方法を編み出しました。興味のある方は、2009年にスタンフォード大から発表され大きな影響を与えた、この論文 (PDF) をご覧ください。 現在では、GPU のおかげで開発者やデータサイエンティストは複雑なモデルを医療画像分析や自動運転の大量のデータで学習できています。例えば、Amazon EC2 P3 ファミリーを利用すると1インスタンスあたり最大8枚の NVIDIA V100 GPU、つまり混合精度演算で最大 1PFLOPS を利用できます。これが10年前の最速のスーパーコンピューターと同じパフォーマンスだなんて信じられるでしょうか?

Read More

AWS DeepRacer – 強化学習のハンズオン at re:Invent

強化学習は、”エージェント”が、インタラクティブな環境下でトライアンドエラーベースで行動が可能なときに、行動からのフィードバックを利用して、事前に定義されたゴールに到達する、あるいは、有る種のスコアや報奨を最大化するよう学習を行う機械学習の形式の一つです。強化学習は、教師あり学習などの他の型式の機械学習とは対照的に、一連の事実(ground truth)を利用してモデルの学習を行い、推論を行います。 AWS re:inventでは、皆様に強化学習のハンズオンをご提供します。本日その全てをご紹介します。このハードウェアとソフトウェアの組み合わせは、(文字通り)物事を前進させるのに役に立ちます! AWS DeepRacer ハードウェアとソフトウェアについてまず最初にご紹介します。AWS DeepRacerは、1/18スケールの4輪ラジコンカーです: オンボードIntel Atom® プロセッサー、1080p解像度の4メガピクセルカメラ、高速WiFi(802.11ac)、複数のUSBポート、およそ2時間稼働できるバッテリーを搭載しています。Atom processor上で、Ubuntu 16.04 LTS、ROS(Robot Operating System)、および Intel OpenVino™ コンピュータービジョンツールキットが稼働します。

Read More

Amazon DynamoDB On-Demand – 事前のキャパシティプランニングが不要のリクエスト課金が可能になりました。

少し前まで、あなたのビジネスに合わせていつでもスケールし安定した低いレイテンシを提供するデータベースを作成することは困難でした。2012年にWerner VogelsがpostしたブログでAmazon DynamoDBがアナウンスされました。(これは私がAWSに入る数ヶ月前の事でした。)DynamoDBは2007年にAmazonが公表したDynamoの論文に基づいて設計されています。それから数年、多くの新機能がAWSの顧客が利用するデータベースを更に簡略化するために導入されました。今、フルマネージドかつマルチリージョン、マルチマスターデータベースとencryption at rest、point-in-time recovery、in-memory cachingなどの機能、そして99.99%のuptime SLAを提供しています。 Amazon DynamoDB On-Demand 今日我々はAmazon DynamoDB on-demand、事前のキャパシティプランニングが不要で1秒あたり数千リクエストのトラフィックにも対応が出来るフレキシブルな課金を実現する新しいオプションを案内します。DynamoDB on-demandはシンプルなpay-per-request課金モデルを提供しreadリクエストとwriteリクエストを使った分に応じて支払うだけになります。これによりシンプルなコスト計算とパフォーマンス管理を実現します。例えばtableにon-demanmd modeを適用すると、DynamoDBは即座に対応しワークロードに応じて以前に観測されたトラフィックレベルまで処理できるようにパフォーマンスを調整します。また新たなピークトラフィックが観測されたときはDynamoDBはワークロードに対応するために迅速に適応します。(翻訳者注: DynamoDBは内部的にパーテーションという概念で負荷を分散します。そのため一度拡張されたテーブルは内部的に何もしなくても拡張された状態を維持している事と、新たな負荷が発生したときも自動的に拡張して対応します。) DynamoDBのコンソールを見るとon-demand read/wriite capacity modeが新規テーブル作成時と既存テーブルのCapacityタブに追加されている事が確認出来ます。 on-demand modeを適用したTableは全てのDynamoDBの機能がサポートされ(例としてencryption at rest、point-in-time recovery、global tablesなど)、例外としてauto scalingはこのmodeでは無効になります。 on-demand modeが有効な状態でセカンダリインデックスを構築した場合も同じスケーラビリティと課金モデルが適用されます。セカンダリインデックスへも使った分だけお支払い頂き事前にキャパシティプロビジョニングする必要はありません。もしon-demand modeが有効なtableでread/writeリクエストが発生しなかった場合、支払う必要があるのはストレージ課金のみになります。 DynamoDBは予測困難なアプリケーショントラフィックへの対応や短期間で大きなスパイクが発生するワークロード、もしくはあなたのテーブルの使用率が平均では低い場合にとても有効です。例えば以下のようなユースケースです。 新たなアプリケーション開発時、もしくはワークロードが複雑で予測が困難な場合 pay-per-use な課金モデルのサーバレスサービスとの組み合わせ SaaSプロバイダやソフトウェアベンダーでシンプルかつリソース分離を必要とするようなアプリケーションを開発している on-demand modeへの変更は1日1回可能です。on-demandからprovisioned modeへの変更も可能です。 簡単にパフォーマンステストをやってみましょう では早速新たに作ったDynamoDB on-demand modeのtableに対して負荷テストを実施してみましょう。 私は2つのサーバレスアプリケーションを作ってみました。 1つ目のアプリケーションはAmazon API GatewayとAWS LambdaでHTTPインターフェイスによるDynamoDBに対してread/writeする処理を実装しています。 2つ目のアプリケーションはLambdaで1000個の並行に同時実行でランダムにHTTPメソッドを生成しendpointに各Itemに操作リクエストを生成するファンクションです。 全てのファンクションは同時実行数100でリクエストを実行し、終了するとすぐにまた別の100同時実行がスタートする処理を一分間行います。ランプアップするために必要な時間は無く、負荷の生成はフルスピードで実行されます!! DynamoDB コンソールのメトリクス tabから、ピーク時には5000request/secの負荷が流れていることとスロットリングが発生しないことをメトリクスから確認ができます。 サーバレスアプリケーションがscalingするか、API GatewayとLambdaとDynamoDBはフルマネージドで対応が出来ています。スループットやアプリケーションロジックに寄る課金の仕組みを計画する事はなく実現出来ました。 […]

Read More

新発表 – Amazon FSx for Windows ファイルサーバー – 高速・完全マネージド型・セキュアなファイルサーバー

クラウド上で Windows アプリケーションを利用しようとしている組織では、通常、既存のアプリケーションや Windows 環境と完全に互換性のあるネットワークストレージを探します。例えば、エンタープライズ企業では ID 管理目的で Active Directory を使用し、フォルダやファイルへのきめ細かなアクセス制御のために Windows Access Control List を使用し、これらの企業のアプリケーションは Windows ファイルシステム (NTFS ファイルシステム) と完全互換のストレージに頼った作りになっています。 Amazon FSx for Windows ファイルサーバー Amazon FSx for Windows ファイルサーバーはこれら全てのニーズに対応しています。既存の Windows アプリケーションや Windows 環境で作業することを前提に設計されており、Windows ワークロードのクラウドへの Lift-and-Shift を非常に簡単にしてくれます。完全マネージド型の Windows ファイルサーバーに裏付けられたネイティブ Windows ファイルサーバーに、広く採用されている SMB (Server Message Block) プロトコルを介してアクセスできます。SSD ストレージで構築されている Amazon FSx for Windows ファイルサーバーは、皆さん (と皆さんの Windows アプリケーション) […]

Read More

新発表 – Amazon Kinesis Data Analytics for Java

お客様は、リアルタイムなストリーミングデータを収集・処理・分析するために、Amazon Kinesisを活用しています。これによって、みなさまのビジネスやインフラストラクチャ、顧客から得られる情報に対して、迅速に反応することができます。例えば、Epic Gamesの人気オンラインゲーム『フォートナイト』では、1秒間に150万を超えるゲームイベントを取り込んでいます。 Amazon Kinesis Data Analyticsを活用すれば、標準SQLでリアルタイムなデータ処理を行うことができます。SQLは、新しいフレームワークや言語を学ぶ必要なしに、大規模なストリーミングデータに対して迅速にクエリをかける簡易な手段を提供します。一方で多くのお客様は、汎用的なプログラミング言語を使用して、より複雑なデータ処理を実装することも求めています。 Amazon Kinesis Data AnalyticsでJavaを活用 2018年11月27日、私たちはAmazon Kinesis Data AnalyticsでJavaをサポートすることを発表します。これによって、開発者はJavaで書かれた独自のコードを使用して、強力なリアルタイム処理アプリケーションを実装することが出来ます。アプリケーションでは、ストリーミングデータを連続的に変換してデータレイクに取り込んだり、リアルタイムにゲームのリーダーボードを更新したり、IoTデバイスから取得したデータストリームに機械学習モデルを適用して推論を実行したりと、様々な処理を行えます。

Read More