Amazon Web Services ブログ

Amazon Machine Learning API と PubNub ChatEngine でスマートなチャットアプリを開発する

これは PubNub のオープンソフトウェアエンジニアである Adam Bavosa によって投稿されたゲストブログです。彼ら自身の言葉を借りれば、「PubNub は、チャット、デバイスコントロールおよびリアルタイムのマッピングアプリのために、グローバルなスケールに拡大できるリアルタイム API を提供している、リーディングプロバイダー」です。 チャットアプリに対する要求は非常な勢いで拡大しています。ソーシャルアプリからビジネス上のコラボレーション、ゲームプレーヤー同士のチャットから顧客サポートに至るまで、あらゆる種類のアプリがチャットを必要としています。Telegram のようなチャットアプリは主要な報道機関の情報源となっており、広い範囲の関心を集めています。 しばらく前までは、スケーラブルで豊富な機能を持つチャットアプリを開発しようとすると、とてつもない困難に直面しました。今ではそのようなことはありません。PubNub ChatEngine には Amazon 機械学習 API が統合されています。これによって、モバイルとウェブ向けに、インテリジェントでスケーラブルなチャットアプリを開発することはきわめて容易になりました。 今回のブログでは、PubNub ChatEngine を基にして、Amazon Translate と Amazon Polly を加え、あらゆる場所に埋め込める、多言語対応、音声認識対応のアプリを作り上げる方法についてご紹介しましょう。\\ Amazon の新しい機械学習 (ML) API は、チャットアプリをさらに強力なものにします。そして、すでに組み込まれている PubNub との統合と組み合わせることにより、Amazon ML API は、ChatEngine を活用してきたチャットアプリに簡単に追加できます。このブログは、新しい Amazon ML API と PubNub ChatEngine を利用して、様々な種類のスマートなチャットアプリを短期間で構築してデプロイするためのクイックスタートとして用いることができます。これは、一対一のチャットであろうと、エンタープライズグレードのセキュリティと信頼性を備えた、それぞれ 100 万人以上の人々が利用できるチャットルームであろうと、変わりません。 PubNub の BLOCKS カタログには、次のような 3 種類の Amazon ML API […]

Read More

Amazon Sagemaker を使用してマーチ・マッドネスを予測する

ここは米国で 3 月中旬です。ということは、思いつくのはたった一つのことしかありません。マーチマッドネス (全米大学男子バスケットボール大会) です。毎年数え切れないほど多くの人々が、トーナメント表にメモを書き込んで、どの大学バスケットボールチームが制覇するかを予想します。あなたが 2018 年の優勝は間違いなしと思っている贔屓のチームはありますか。 このブログポストでは、Amazon SageMaker を使ってマーチマッドネスの予測変数を作成する方法を紹介します。Amazon SageMaker は、開発者やデータサイエンティストがいかなる規模の機械学習モデルであっても容易に構築、トレーニング、およびデプロイすることを可能にする完全マネージド型サービスです。このポストでは、プロセスをゼロから作り上げる手順について紹介します。モデリングのため、私たちは、チームごとの成績統計情報 (2002 年から現在) を記録している kenpom.com (https://kenpom.com/) と、過去の得点 (2011 年から現在) を記録している College Basketball Reference (https://www.sports-reference.com/cbb/) の公開されているフロントページのデータを利用します。私たちは、Jupyter Notebook をダウンロードする方法を説明しますが、このノートブックを使用すると、データの処理と探索、大学バスケットボール試合の結果の予測、そして最終的に Sagemaker エンドポイントの作成を行うことができます。 Amazon SageMaker を使用してマーチマッドネスを予測する Amazon SageMaker でサポートされるマーチマッドネス予測変数アプリケーションを作成する このポストは、Amazon SageMaker を使用するプロセスのモデリングとホスティングにフォーカスします。将来のポストでは、あなたのモデルを使用して構築するアプリケーションの作成方法を紹介します。たとえば、Amazon SageMaker エンドポイントを使ってウェブサイトを補強することによって、予定されている今後の試合に関する予測を自動的に生成したり、2018 NCAA トーナメントをシミュレートしたり、仮定の対戦に関するユーザ入力に対応したりすることができるようになります。 ザビエル大学は Sweet 16 におけるゴンザガ大学の勝敗の行方を見届ける必要がある。仮定の Elite 8 の対戦では、デューク大学とミシガン州立大学は、それぞれ、第 2 シードと第 3 シードだが、中西部では、両校とも第 1 […]

Read More

Amazon Sagemaker モデルのパフォーマンスのリアルタイム監視に Amazon CloudWatch カスタムメトリックスを使用する

ディープラーニング (DL) モデルのトレーニングおよびラーニングプロセスは、費用と時間がかかるものになりがちです。データサイエンティストは、トレーニング精度、トレーニング誤差、検証精度、検証誤差など、モデルのメトリックスを監視し、これらのメトリックスに基づいて、情報に基づく意思決定を行う必要があります。このブログポストでは、一定の時間内のモデルメトリックスの履歴を保存し、モデルパフォーマンスメトリックスをビジュアル化し、CloudWatch ダッシュボードを作成するために、Amazon SageMaker インテグレーションを Amazon CloudWatch にまで拡大する方法について説明します。私はこのデモでは MXNet フレームワークを使用しますが、このアプローチはすべての機械学習/深層学習 (ML/DL) フレームワークに適用することができます。 Amazon SageMaker には CloudWatch との既製のインテグレーションが付属しており、トレーニングジョブコンテナーの CPU、メモリ、GPU 使用率など、トレーニングジョブインスタンスの準リアルタイム使用率メトリックスについてデータを収集することができます。詳細については、『Amazon CloudWatch を使用して Amazon SageMaker を監視する』を参照してください。 ソリューションの概要 この例では、Amazon SageMaker を使用してノートブックインスタンスを作成した後、Apache MXNet 手書き数字認識モデルを構築して、トレーニングします。私は、簡素化するために、Gluon、MNIST データセット、および畳み込みニューラルネットワーク (CNN) アーキテクチャを使用します。また、トレーニングメトリックスを CloudWatch に送信して、それらのメトリックスのダッシュボードを作成するために、Amazon CloudWatch API 演算を使用します。最後に、モデルが過剰適合になった場合、私は Amazon Simple Notification Service (Amazon SNS) および AWS Lambda を使用して、通知を送信します。 アーキテクチャ 構成 Amazon SageMaker には、CloudWatch メトリックスを作成するための権限が必要です。これは必要な CloudWatch […]

Read More

Amazon SageMaker がサポートする、「マーチマッドネス」予想アプリケーションを構築する

「マーチマッドネス」バスケットボールトーナメントゲームのオープニングラウンドはどれもすごい試合でした!ブザービーターあり、歴史的な大番狂わせありで、どのゲームも興奮させるものでした。最初のブログ (パート 1) で構築したモデルは、いくつかあまり可能性のなさそうな番狂わせ (下位シード校の勝利) の候補を指摘しましたが (Loyola IL、 Butler)、一部の結果は予見できませんでした (Marshall、UMBC)。これから数週間は、さらなる熱狂 (マッドネス) が待ち受けているに違いありません。 私たちの側では、マーチマッドネス予測アプリケーションを作成することにしましょう。これはパート 1 で Amazon SageMaker を使用して作成したモデルとエンドポイントを活用するものです。 Amazon SageMaker を使用してマーチマッドネスを予測する Amazon SageMaker でサポートされるマーチマッドネス予測変数アプリケーションを作成する 今回のブログでは、静的な Amazon Simple Storage Service (Amazon S3) ウェブサイトを作成し、ユーザーが 2011~2018 年のデータから想像上の対戦をシミュレートして、本日時点での全ゲームの予想スコアを表示するとともに、2018 年 NCAA トーナメントのすべての対戦について、予想スコアと勝利確率を表示できるようにします。 私たちは AWS CloudFormation スクリプトを活用して、このウェブサイトを作成するの日必要な AWS サービスを起動します。CloudFormation は強力なサービスで、クラウド環境に必要なすべてのインフラストラクチャとリソースを、シンプルな JSON または YAML テンプレートで記述し、準備できるようにします。この例では、次の物が含まれます AWS Lambda 関数。データを変換して、予測を行う Amazon SageMaker エンドポイントに送信します。 Amazon […]

Read More

Amazon EC2 C5 および P3 インスタンスで、最適化された TensorFlow 1.6 により、高速なトレーニングを実行する

AWS Deep Learning AMI には、別々の仮想環境にプリインストールされた、よく使われるディープラーニングフレームワークの最新の pip パッケージが付属しています。それで開発者は、すぐにディープラーニングモデルのトレーニングを始めることができます。Ubuntu および Amazon Linux 向けの、ディープラーニング AMI の新しいバージョンには、Amazon EC2 インスタンスファミリー全体にわたってハイパフォーマンスのトレーニングを行えるように高度な最適化を施して構築された、TensorFlow 1.6 が付属するようになりました。 Amazon EC2 C5 インスタンスでの高速なトレーニング AMI には、インテルの Advanced Vector Instruction (AVX、AVX-2 および AVX-512) で構築された TensorFlow 1.6 が付属しており、Amazon EC2 C5 インスタンスで用いられている Intel Xeon Platinum プロセッサでのベクタ-および浮動小数点演算の性能を向上させています。AMI には、 十分な設定が施された、インテルのディープニューラルネットワーク向け Math Kernel Library (Intel MKL-DNN) も付属します。これは、ディープニューラルネットワークのトレーニングで使用される数学ルーチンを CPU で加速するためのものです。c5.18xlarge インスタンスタイプ上で、合成 ImageNet データセットに対し、当社の最適化された TensorFlow 1.6 […]

Read More

Amazon SageMaker を使用して Word-Pronunciation シーケンスツーシーケンスモデルを作成する

Amazon SageMaker seq2seq は、シーケンス ツー シーケンスタスクで、最新鋭のエンコーダーデコーダーアーキテクチャ (アテンションメカニズムなど) を利用するための非常に単純な方法を提供します。あなたがすべきことは、recordio-protobuf 形式のシーケンスデータと、JSON 形式のボキャブラリマッピングファイルを用意して、それを Amazon Simple Storage Service (Amazon S3) にアップロードすることのみです。その後は、Amazon SageMaker の内蔵アルゴリズムが、あなたに代わって、ディープラーニング (DL) アーキテクチャの構築とトレーニングを行います。 このブログポストでは、あなたに SageMaker seq2seq を習熟してもらうために、サンプルの Amazon SageMaker Word-Pronunciation ノートブックを使って手順に沿って説明します。英語の場合、単語の発音をスペルに基づいてデコードするために、暗黙的ではあるものの複雑なルールがあります。私たちは、アルファベット文字のシーケンスをソース入力として、そしてそれらに対応する音素のシーケンスをターゲット出力として使って、ルールをモデル化します。このモデルの種類は、シーケンス ツー シーケンスと呼ばれます。 seq2seq モデルの用途は、単語と発音の関係に留まりません。他の使用例としては、英語の文章からドイツ語の文章、テキストからサマリ、テキストからタイトル、質問から回答などが挙げられます。このブログポストでは、Amazon SageMaker を使用して、独自のシーケンスデータをデプロイして、独自のカスタム seq2seq モデルを開発する方法について紹介します。 Amazon SageMaker seq2seq は、Apache MXNet を使用した seq2seq モデリングのフレームワークである、Sockeye パッケージをベースにしています。詳細については、この AWS ブログを参照してください。 ただしそこでは、Amazon SageMaker を効果的に機能させるために、異なる入力データ形式が使われており、いくつかのハイパーパラメーターについては名前が変更されています。 データ: カーネギーメロン大学の発音辞書 (cmudict-0.7b) このブログポストでは、カーネギーメロン大学の発音辞書 (cmudict-0.7b)のデータを使用します。ボキャブラリの単語を音素のシーケンスにマッピングする表音辞書は、テキスト読み上げシステムでは非常に重要です。オリジナルのローデータは、以下のリンク先にあります。 […]

Read More

Initiafy と Amazon Polly でアクセス可能なトレーニングを作成する

これは、Initiafy の Ronan O’Sullivan と Conor McNally によって投稿されたゲストブログです。彼ら自身の言葉を借りれば、「Initiafy は、会社が契約社員、一時労働者、または季節労働者を採用し、仕事を始める前にトレーニングする点で助けとなる、契約社員管理ソフトウェアのリーディングプロバイダーです。このソフトウェアには、世界中に 30 万人以上のユーザーがいます」。 私たちは摩天楼、道路のネットワーク、油田リグ、水力発電のダム、原子力発電所、風力発電機、吊り橋、そして世界を満たしている他の信じがたいような人間工学の偉業に慣れてしまっており、それらの建設のために払われた驚くべき労力を見過ごしてしまうことがあります。こういったプロジェクトはロボットにより構築されたのではありません。それらを生み出すには、プロセスを設計、合理化、改善するのに用いられたテクノロジーに加えて、人々の巨大な労力が必要でした。 Initiafy は、プロジェクトの労働力の要素をより生産的で、効率的なものにします。重工業のプロジェクトは契約社員に依存しており、それには文書、健康と安全、品質管理を扱う管理上の課題が伴っています。Initiafy は、労働者に柔軟性のある仕方でトレーニングを施し、一時労働力全体にわたって高い標準を保つ点で役立つ、オンラインプラットフォームでの契約社員管理システムを提供しています。Initiafy は多くの国で事業を運営しており、様々な国から来た労働者を対象としています。それで、すべての労働者がトレーニングを受けられるようにすることは非常に重要です。 このブログでは、Amazon Polly を、様々な会社が Initiafy のプラットフォーム上で契約社員のために構築したトレーニングコースと完全に統合するという問題を扱っています。Amazon Polly が、コースの構築とコースのコンテンツにどのように柔軟性をもたらすか、そしてあらゆる種類の契約社員にとってアクセスしやすいものとするかについて説明します。 契約社員の採用に関する問題 重工業では、労働者の採用に関して、多くの課題に直面します。契約社員は、自分の役割に固有の、密度の高い技術情報を受け取ること、そして重要な健康と安全のための慣行に関するトレーニングを受けることが必要です。Initiafy は、会社に対し、契約社員のためにマルチメディアコンテンツを含むコースをデザインする機会を与えています。 非常に重要な安全と技術情報を与えることはひとつの課題です。重工業では、労働力として、様々な国からの、リテラシーのレベルも異なる契約社員を雇用するからです。Initiafy は、労働者間の言語の障壁を乗り越え、教育を受けられなかった、または教育が不足しているために非識字である場合もある労働者をサポートするためのツールを探していました。 Amazon Polly の使い方 Initiafy のプラットフォームでは、労働者はオンラインのトレーニングコースを受講します。コースはテキスト、ビデオ、画像、そして通常はコースのチャプターの終わりごとに用意されたクイズのようなインタラクティブコンテンツを含む、スライドに分割されています。Amazon Polly を使えば、テキスト形式のコンテンツは、あらゆる労働者がアクセスできるものになります。テキスト形式はなっていない、その他の音声コンテンツも追加できます。 コースを準備する担当者は、Amazon Polly で音声と言語を選択します。それからこれはオーディオファイルとして保存され、Amazon S3 バケット内に置かれます。コースの作成者は、労働者がどの程度多くのオーディオを聞く必要があるかもコントロールできます。たとえば、オーディオが 100% 再生されるまでは、次のスライドに進めないように設定することができます。このようにして、労働者がコースのコンテンツに取り組むように促します。 HTML 形式のコースコンテンツは削除されます。テキストストリームの残りはスライド単位で分割されて、バックグラウンドで Amazon Polly にアップロードされます。コースコンテンツには、次のように 3 つのタイプがあります。 HTML コンテンツは完全に削除されます。 テキストはスライドごとに含められていて、Amazon Polly によって読み上げられます。 トレーニング中に労働者に対して読み上げられる隠しテキストというものもあり、これはスライドには表示されません。 […]

Read More

AWS AppSync – 6 つの新機能を加え本番提供開始

データ指向のウェブおよびモバイルアプリを構築し (または構築したいと思い)、リアルタイムの更新やオフライン作業の機能が必要な場合は、AWS AppSync を確認する必要があります。AWS re:Invent 2017 においてプレビュー形式で発表され、ここで詳しく説明されている AWS AppSync は、iOS、Android、JavaScript、および React Native アプリで使用するために設計されています。AWS AppSync は、アプリケーションでクラウドから必要とする正確なデータを要求することを容易にするオープンで標準化されたクエリー言語である GraphQL を中心に構築されています。 アプリケーション開発プロセスを簡素化し、合理化する次の新しい 6 つの機能を備えた AWS AppSync のプレビュー期間が終了し、一般利用可能になり、本番稼働の準備ができたことを発表できることをうれしく思います。 コンソールログアクセス – AWS AppSync コンソールの中から GraphQL クエリー、ミューテーション、サブスクリプションをテストするときに作成される CloudWatch Logs を確認することができるようになりました。 モックデータによるコンソール試験遂行 – 試験遂行の目的でコンソールにモックコンテキストオブジェクトを作成し、使用することができるようになりました。 サブスクリプションリゾルバ – すでにクエリに対して行い、リクエストを変更する方法と同様に、AWS AppSync サブスクリプションリクエストに対するリゾルバを作成することができるようになりました。 DynamoDB のバッチ GraphQL オペレーション – DynamoDB のバッチオペレーション (BatchGetItem と BatchWriteItem) をリゾルバ機能の中の 1 つ以上のテーブルにわたって利用することができるようになりました。 CloudWatch […]

Read More

LumberyardとAWSを使用して数分で(数日ではなく)大規模で再現度の高いの地形を生成

ゲームの開発者はハイエンドPCを利用したとしても、大規模な地形生成には1日以上かけて完成させています。しかし、LumberyardとAWSクラウドの統合により、わずか10分でこれ(およびその他の重い計算プロセスも含む)を実現できます。 GDCのクラスルームセッションでMark Biales がこれらを紹介しており、こちらで見ることができます(英語)。   (翻訳はSA 森が担当しました。原文はこちら)

Read More

Amazon Kinesis Video StreamsとAmazon Rekognition Videoでハイエンドコンシューマーエクスペリエンスを提供するために顔認識を使用する

これは 1995 年、Amazon.com のウェブサイトが誕生してからわずか 1 か月の頃の画面です。この画面から見てすぐに分かることを 1 つ、もう少しよく見なければならないことを 1 つお話ししましょう。まず、この 23 年間という時の流れを感じさせるのはウェブデザインです。2 つ目は Eyes の広告文のあなたの気に入りそうな本が見つかったら疲れを知らぬ自動検索エージェントがメールを送りますという一節です。 Eyes は Amazon 初のパーソナライズされたオンラインショッピング環境でした。これは昔ながらの、店を訪れる顧客を知り尽くした地元の店のような、最高のサービスを再現するという旅路の、最初の一歩だったわけです。皆がある時期に、私たちのニーズすべてにぴったり合った体験ができるこの種のサービスを受けたことは、だれにとっても大変幸運なことだったと言えます。 そして 23 年後の今に時代を移しましょう。様々なところで、オンライン体験が主流になりました。世界のどこからでも Amazon.com へログオンし、皆さんの日頃のお買い物の仕方と同じ、一貫した体験を受けることができます。それも偏にウェブサイトが私たちのことを「知っている」からです。人によるサービスではこれは容易なことではありません。皆さんのお気に入りの店に行くとしましょう。それも、あなたの住み慣れた町にある店です。そこでは他の一般客と同じような対応を受けるのが普通です。 これを変えるにはどうすればいいと思いますか? たとえば、あなたが服の小売店の店員だとします。もし、店にやってくる顧客のことを知っていて、この情報を賢く活用できたとしたら、あなたはその顧客に素晴らしいサービスを提供できるはずです。たとえば、その顧客が既に購入した商品にぴったりな商品をすすめられます。もし、その商品の在庫に顧客のサイズがなければ、その商品をすすめることはできません。その顧客から前回、なんらかのトラブルや苦情があれば、特に気を配ることができます。顧客の顔とその顧客に関する情報をくまなく記憶できる驚異の記憶力をもった店員がいればいいだけです。 AWS で機械学習について読んだ後、あなたはこれを構築してみることにしました。アーキテクチャの中心となるのは、re:Invent 2017 で発表された 2 つのサービス、Amazon Kinesis Video Streams と Amazon Rekognition Video です。Kinesis Video Streams を使用すると、分析、機械学習のために、接続されたデバイスから AWS へ動画を簡単かつ安全にストリーミングできるようになります。Rekognition Video は簡単に Kinesis Video Streams に統合でき、顔のメタデータを集めたプライベートデータベースに対し、リアルタイムの顔認識を実行できます。あなたのソリューションのアーキテクチャは次のとおりです。 システムのプロトタイプを素早く構築するために、Raspberry Pi でホストされているカメラを使用します。これで店内の様子を撮影し、Amazon Kinesis […]

Read More