Amazon Web Services ブログ

Amazon SageMaker 2019年4月から8月のアップデート

みなさま、こんにちは。AWS 機械学習ソリューションアーキテクトの大渕です。 すでにみなさまにご利用いただいている機械学習のマネージドサービス Amazon SageMaker ですが、現在も新機能がどんどん追加されています。そこで今回は、2019 年 4 月から 8 月までに Amazon SageMaker に追加された機能をご紹介したいと思います。 ご自身にピッタリの機能がないか、ぜひチェックしてみてください。

Read More

Amazon ECS で Amazon Elastic Inference ワークロードを実行する

Amazon Elastic Inference (EI) はInvent 2018 で発表された新しいサービスです。Elastic Inference では、スタンドアローンの GPU インスタンスと比較して、深層学習実行コストを最大で 75% まで削減します。Elastic Inference を使えば、任意の Amazon SageMaker か Amazon EC2 インスタンスタイプにアクセラレーターをアタッチすることができ、TensorFlow、Apache MXNet、ONNX モデルでの推論を実行できます。Amazon ECS は、高度にスケーラブルかつ高性能なコンテナオーケストレーションサービスで Docker コンテナーをサポートしています。コンテナ化されたアプリケーションを、AWS の上で、容易に実行もしくはスケーリングすることが可能です。 このブログ記事では、Elastic Inference を利用して、Amazon ECS での深層学習推論ワークロードを高速化する方法を解説します。また、同じ ECS コンテナインスタンスで別々のワークロードを実行している可能性がある場合などに、複数のコンテナで 1 つの Elastic Inference アクセラレーターを共有する方法も示します。このように共有することで、アクセラレーターの利用率を高められます。 ECS では、2019 年 2 月 4 日時点で、 これらの GPU でのタスク実行をサポートしています。これは、トレーニング用ワークロードのためには良く機能するものです。しかし、推論ワークロードで ECS の Elastic Inference を利用すれば、これらの GPU […]

Read More

新規オープン – AWS 中東 (バーレーン)

中東で最初の AWS リージョンがオープンしました。本日より、ご利用いただけます。正式名称は中東 (バーレーン)、API 名称は me-south-1 です。 本日のサービス開始により、AWS クラウドは、世界で 22 か所の地理的リージョン内の 69 のアベイラビリティーゾーンに広がりました。 中東 (バーレーン) リージョンは 3 つのアベイラビリティーゾーン (AZ) で構成されています。3 つのアベイラビリティーゾーンを持つことで、中東の組織はビジネス継続性と災害対策の要件を満たすことができ、高可用性、フォールトトレラント、拡張性を備えたアプリケーションを構築することもできます。 インスタンスとサービス この 3-AZ リージョンで実行されるアプリケーションは、C5、C5d、D2、I3、M5、M5d、R5、R5d および T3 インスタンスを使用でき、Amazon API Gateway、Application Auto Scaling、AWS Certificate Manager (ACM)、AWS Artifact、AWS CloudFormation、Amazon CloudFront、AWS CloudTrail、Amazon CloudWatch、CloudWatch Events、Amazon CloudWatch Logs、AWS CodeDeploy、AWS Config、AWS Config Rules、AWS Database Migration Service、AWS Direct Connect、Amazon DynamoDB、EC2 Auto Scaling、EC2 Dedicated […]

Read More

Amazon DynamoDB Accelerator コンソールのウォークスルー – パート 2

Amazon DynamoDB は、応答時間が 1 桁のミリ秒単位で測定されるスケーラビリティとパフォーマンスを提供します。マイクロ秒単位の応答時間が必要なユースケースでは、DynamoDB Accelerator (DAX) がその実現に役立ちます。DAX は DynamoDB と互換性がある API マネージドキャッシュで、リアルタイムのゲーム、入札、気象分析、取引など、要求の厳しいアプリケーションに高速のインメモリパフォーマンスを提供します。DAX を使用すると、読み取り容量単位を効率的にプロビジョニングすることでコストを削減し、最終的に一貫した読み取りワークロードの応答時間がマイクロ秒に短縮されるため、スループットが向上します。 このブログ記事では、ウェブベースの DynamoDB コンソールを使用して、数回クリックするだけで DAX を有効にすることに焦点を当てています。このウォークスルーの過程で、クラスター、ノード、サブネットグループ、パラメータグループ、イベントなどの DAX 主要コンポーネントについて理解を深めることができます。 DynamoDB コンソール DynamoDB Accelerator セクションの詳細ウォークスルー DynamoDB の設定については、このブログ記事のパート 1 を参照してください。このウォークスルーは、DynamoDB コンソールに 1 回以上アクセスしたことを前提としています。コンソールの DynamoDB DAX セクションで利用可能なすべての機能と、そこからアクセスする方法についてステップバイステップのウォークスルーに沿って説明します。 DynamoDB DAX コンソールに初めてアクセスした後は、常にコンソールの [ダッシュボード] ページから始めます。ダッシュボードには、Amazon CloudWatch アラームによってトリガーされた最近のアラート、DAX サービスヘルス、DynamoDB Accelerator に関するその他の情報に関する DAX コンポーネントの詳細が表示されます。 上のスクリーンショットで番号付けされているように、ダッシュボードのセクションは以下のとおりです。 # セクション 説明 1 クラスターの作成 ダッシュボードから直接、DAX […]

Read More

Amazon RDS PostgreSQL レプリケーションのベストプラクティス

Amazon RDS for PostgreSQL では、読み込み負荷を取り除き、災害復旧 (DR) リソースを作成するために、ソース PostgreSQL インスタンスのレプリカを簡単に設定することができます。リードレプリカは、ソースと同じリージョン、または異なるリージョン内に設定できます。 RDS PostgreSQL リードレプリカインスタンスを使用すると、読み込みワークロードをレプリカインスタンスにオフロードすると同時に、書き込みアクティビティのためにソースインスタンスのコンピューティングリソースも確保します。ただし、レプリケーション遅延を避けるには、リードレプリカを正しく設定し、適切なパラメータ値を設定する必要があります。 概要 この記事では、リードレプリカを正しく設定するためのベストプラクティスをいくつかご紹介します。リージョン内、クロスリージョン、および論理レプリケーションなどのさまざまな RDS PostgreSQL レプリケーションオプションの長所と短所を取り上げ、適切なパラメータ値と、監視するメトリクスを推奨します。以下のステップでは、レプリケーション遅延を最小限に抑えながら、DR 戦略、読み込みワークロード、および健全なソースインスタンスを最適化する方法を説明します。 一般的な推奨事項 全体的なベストプラクティスとして、リードレプリカで実行するリードクエリが、ソースインスタンスとしてデータの最新バージョンを使用することを確認してください。データバージョンは、Amazon CloudWatch メトリクスでレプリケーション遅延を調べることによって確認できます。レプリケーション遅延を最小限に抑えることによって、古いデータに基づいたクエリ出力と、インスタンスの健全性に対するリスクの両方を避けることができます。 リージョン内のレプリケーション RDS PostgreSQL は、ソースインスタンスと同じ AWS リージョン内でリードレプリカを作成するために Postgres ネイティブストリーミングレプリケーションを使用します。ソースインスタンスでのデータの変更は、ストリーミングレプリケーションを使ってリードレプリカにストリームされます。このプロセスが何らかの理由で遅れると、レプリケーション遅延が発生します。以下の図は、RDS PostgreSQL が同じリージョン内のソースとレプリカの間でレプリケーションを実行する方法を示しています。 この後のセクションでは、同じリージョン内でホストされている RDS PostgreSQL インスタンスを最適にレプリケートするために Postgres インスタンスを調整する方法について説明します。 適切な wal_keep_segments の値 Postgres では、wal_keep_segments パラメータで pg_wal ディレクトリに保存される WAL ログファイルセグメントの最大数を指定します。Postgres は、このパラメータを超える WAL セグメントを Amazon S3 バケットにアーカイブします。 リードレプリカが […]

Read More

AWS DMS タスクのための AWS CloudFormation テンプレート作成の自動化

前回の記事、「Microsoft Excel を使用した AWS DMS タスクのための AWS CloudFormation テンプレートの作成」をさらに詳しく説明するこの記事では、データベース移行を迅速化することができる、同じツールの拡張機能を取り上げます。 この機能を実証するため、Python で記述された小型のコマンドラインツールをご紹介します。このツールは、入力としての使用するために、移行されるテーブルの名前、AWS DMS エンドポイントの Amazon リソースネーム (ARN)、および DMS レプリケーションインスタンスが含まれた CSV ファイルを取り込みます。正常に実行されたら、このツールは、必要な DMS タスクの AWS CloudFormation テンプレートを出力として生成します。ただし、このツールは DMS エンドポイントとレプリケーションインスタンスの作成には対応しません。 前提条件 このツールを使用するには、以下のリソースが必要となります。 Python (バージョン 2.7 以降)。Python 2.7.15 をインストールするには、Python.org のダウンロードページをご覧ください。 DMS のソースエンドポイントとターゲットエンドポイント、および DMS レプリケーションインスタンス。 CSV テンプレートの作成 最初に、作成する DMS タスクに関するすべての情報を CSV ファイルに取り込みます。以下は、DMS タスクを作成するために必要な項目のリストです。 DMS タスクの名前 ソースエンドポイント ターゲットエンドポイント 使用するレプリケーションインスタンス 移行するテーブルのスキーマ名 移行するテーブルの名前 […]

Read More

Amplify フレームワークの更新 – ウェブアプリとモバイルアプリへの機械学習機能の追加がより迅速に

AWS はあらゆる開発者が機械学習を手にすることを目指しています。たとえば、コンピュータビジョンや言語などの分野向けに、事前トレーニング済の AI サービスを提供しており、これで機械学習の専門知識がなくても AI の利用が可能となります。本日より Prediction という新しいカテゴリを追加し、この目標に向かって Amplify フレームワークはさらに前進しました。この結果、ほんの数行のコードで、ウェブおよびモバイルアプリケーション向けの AI/ML ユースケースの追加や設定が可能となりました。 AWS Amplify とは、AWS でモバイルアプリケーションとウェブアプリケーションを簡単に構築するための開発フレームワークと開発者用サービスです。オープンソースの Amplify フレームワークは、ライブラリ、ユーザーインターフェイス (UI) コンポーネント、コマンドラインインターフェイス (CLI) の個性豊かなセットを提供しています。これで、クラウドバックエンドを構築し、それをウェブアプリケーションやモバイルアプリケーションと統合できるようになります。 Amplify ではストレージ、認証と承認、API (GraphQL や REST)、分析、プッシュ通知、チャットボット、AR/VR などのカテゴリにある AWS のサービスの中核となるセットを活用しています。 Amplify フレームワーク CLI を使用すれば、Amplify init で対話的にプロジェクトを初期化できます。その後、ストレージ (Amplify add storage) やユーザー認証と承認 (Amplify add auth) のオプションを選択できます。 こうして、amplify add predictions を使ってアプリを次のように設定できるようになります。 イメージ内のテキスト、エンティティ、ラベルを識別するには Amazon Rekognition を、フォーム内のフィールドのコンテンツおよびテーブルに格納した情報を取得するには Amazon Textract を使用します。 テキストを別の言語に変換するには […]

Read More

AWS CloudFormation のアップデート – 公開カバレッジロードマップと CDK のとっておき

2011 年の初めに、AWS CloudFormation が AWS CloudFormation – Create Your AWS Stack From a Recipe および AWS CloudFormation in the AWS Management Console という 2 つの記事でローンチされました。このローンチ以来、AWS は CloudFormation が効率性、スケーラビリティ、かつ高可用性を確保できるように、数多くの AWS リソースタイプに対するサポートを追加し、数多くの新機能をローンチして、舞台裏で作業を続けてきました。 公開カバレッジロードマップ CloudFormation の使用は AWS そのものよりも急速に拡大しており、チームは完全なリソースカバレッジよりもスケーラビリティを優先してきました。AWS の 100% カバレッジの提供という目標はそのままですが、その目標を達成するにはしばらく時間がかかるというのが現実です。AWS の優先順位についてより透過的になり、それらを管理する機会をユーザーに提供するため、皆さんに待望の CloudFormation Coverage Roadmap についてお知らせしたいと思います。 人気の AWS コンテナロードマップのスタイルを模した CloudFormation Coverage Roadmap には、4 つのカラムがあります。 Shipped – すべてのパブリック AWS […]

Read More

Amazon SageMaker Ground Truth に固有表現抽出用のデータラベル付けワークフローが追加

AWS re:Invent 2018 にて発表された Amazon SageMaker Ground Truth を使用すると、機械学習 (ML、machine learning) システムのトレーニングに必要なデータセットを、効率的かつ正確にラベル付けすることが可能になります。Ground Truth にはラベル付けのワークフローが組み込まれており、ラベル付けワーカーは、それによってステップバイステップでタスクを実行したり、成果をあげるのに役立つツールを利用したりすることができます。組み込まれたワークフローは現在、物体検出、画像分類、テキスト分類、セマンティックセグメンテーションによるラベル付けジョブで利用可能です。 そして本日より AWS は、新しいユースケースである固有表現抽出 (NER、named entity recognition) のサポートを開始しました。NER とは、テキストデータを選別して固有表現と呼ばれる名詞句を特定し、「人」「組織」「ブランド」などのラベルによってそれぞれを分類する作業のことです。 たとえば「私は最近 Amazon プライムに登録した」というテキストがあった場合、「Amazon プライム」が固有表現とみなされ、「ブランド」として分類されます。 こうしたユースケースを拡大して、あらかじめ規定されたラベルを使って、もっと長いテキストのラベル付けや配列の分類を行うことが可能です。例として、次のスクリーンショットをご覧ください。パフォーマンス評価のテキストにおいて、Amazon のリーダーシッププリンシプルである「Customer Obsession」についての言及箇所が特定されています。 概要 この記事では、NER のラベル付けジョブの作成方法について解説していきます。 データセットを収集します。 ラベル付けジョブを作成します。 労働力を選択します。 タスクの指示を作成します。 今回の例では、NER のラベル付けタスクとして、データセットからブランド名の特定を行います。サンプルのデータセットとして、Amazon の Twitter アカウントから 10 個のツイートを用意しました。これを使用してもいいですし、自分でデータセットを用意して、個々のユースケースに関連した NER のラベル付けタスクを定義してもらっても構いません。 前提条件 以下の手順を実行するには、AWS アカウントを所有していて、AWS のサービスにアクセスできることが前提となります。 ステップ 1: データセットを収集して Amazon S3 に保存する […]

Read More

新機能 – Amplify CLI を使用したローカルモックとテスト

オープンソースの Amplify フレームワークは、ライブラリ、ユーザーインターフェイス (UI) コンポーネント、およびコマンドラインインターフェイス (CLI) のセットを提供します。AWS CloudFormation を使用してバックエンドリソースをプロビジョニングすることにより、洗練されたクラウド機能をウェブまたはモバイルアプリに簡単に追加できます。 お客様とお話しするときに、新しい機能を追加したりバグを解決したりするときは、できるだけ早く反復して、操作からすばやくフィードバックを得ることが重要だという話をよく耳にします。開発体験はどのように改善できますか? さて、先週、Amplify チームは新しい Predictions カテゴリを作り、機械学習機能をウェブまたはモバイルアプリにすばやく追加できるようにしました。今日、彼らは再び改善を試みます。Amplify CLI を使用して、提供している中で最も一般的なクラウドサービスの一部をモックし、アプリケーションをローカルで 100% テストできるようになりました。 ここでモックするということは、実際のバックエンドコンポーネントを使用する代わりに、クラウドサービスの場合は API を使用する代わりに、その API のローカルで単純化されたエミュレーションを代わりに使用できることを意味します。このエミュレーションは、開発中のテストに必要な基本機能を提供しますが、本番サービスから得られる完全な動作は提供しません。 この新しいモック機能を使用すると、すべてのステップで使用しているクラウドリソースをプロビジョニングまたは更新する必要なく、変更をすばやくテストできます。この方法で、クラウドバックエンドに影響を与えることなく、迅速に実行できる単体テストと統合テストを設定できます。アプリのアーキテクチャに応じて、バックエンドリソースをプロビジョニングせずに CI/CD パイプラインで自動テストを設定できます。 これは、Apache Velocity Template Language (VTL) で記述されたAWS AppSync リゾルバマッピングテンプレートを編集するときに非常に便利です。リクエストを入力として受け取り、リゾルバの指示を含む JSON ドキュメントを出力します。これで、編集内容に関するフィードバックをすぐに受け取ることができ、更新するたびにデプロイを待つことなく、リゾルバが期待どおりに機能するかどうかをテストできます。 最初のリリースでは、Amplify CLI をローカルでモックできます。 リゾルバマッピングテンプレートおよび Amazon DynamoDB がサポートするストレージを含む AppSync GraphQL API。 AWS Lambda 関数は、直接または GraphQL API のリゾルバとして呼び出されます。 アプリケーションのストレージとして使用する Amazon Simple […]

Read More