Amazon Web Services ブログ

Amazon Elastic Inference を使ったモデルサービング

 Amazon Elastic Inference (EI) は、Amazon EC2 および Amazon SageMaker インスタンスに低コストの GPU アクセラレーションをアタッチできるようにするサービスです。EI は深層学習推論の実行コストを最大 75% 削減します。Model Server for Apache MXNet (MMS) は、大規模な推論のための MXNet および ONNX ベースのモデルのデプロイメントを可能にします。このブログ記事では、Elastic Inference Accelerator (EIA) がアタッチされた汎用 EC2 インスタンスで実行される MMS の使用について掘り下げていきます。 Model Server for Apache MXNet (MMS) とは? MMS はオープンソースのモデルサービングフレームワークで、大規模な推論のための深層学習モデルをサーブするタスクをシンプル化するように設計されています。MMS は、Apache MXNet を使用して深層学習モデルを訓練した後、本番環境で大規模な推論のために訓練済みモデルをデプロイすることを容易にします。以下のアーキテクチャ図は、標準的な MMS のスケーラブルアーキテクチャを示しています。 Amazon Elastic Inference とは? 深層学習アプリケーションでは、推論がアプリケーションのコンピューティングコストの約 90 パーセントを占めています。推論は GPU […]

Read More

AWS Samurai 2018 の発表

AWS Samurai 2018 の発表 先日、AWSユーザーグループのJAWS-UG(Japan AWS User Group)による1大イベント「JAWS DAYS 2019」が東京 五反田で開催されました。過去最高の1,900名を超える参加者数を記録、最大規模の質と量を誇るセッション数を提供、その懇親会の場で恒例の AWS Saumrai 2018 受賞者4名が発表されました。

Read More

小・中・高等学校の教育情報システムをAWS上に構築してセキュアにアクセスする

平成29年10月18日に文部科学省で策定された「教育情報セキュリティポリシーに関するガイドライン」では、地方公共団体が設置する学校(小学校、中学校、高等学校)における、教育情報セキュリティポリシーの考え方及び内容について解説されています。 背景として、学校では、コンピュータを活用した学習活動(インターネット教育、学習支援システム、プログラミング学習、オンライン英会話等)が広範囲になってきており、教職員だけでなく、生徒が日常的に情報システムにアクセスする機会が増えています。インターネットの活用はもはや当たり前である一方で、標的型攻撃などのインターネット上の脅威に対する対策を講ずる必要があります。特に、個人情報が含まれる校務系システムは学校に置かず、データセンターに集約のうえ、限られた権限を持つユーザだけがアクセスできるように管理する必要があり、学校内にあるインターネットに接しているコンピュータからは、直接接続できないような環境で利用することが求められています。 このような“守り“の目的のために、新たに専用パソコンを購買することは、費用面、ネットワーク工事面でも多大な負担があります。そこで、導入検討が進んでいるのが、クラウド型仮想デスクトップです。AWSに集約して拡張性・柔軟性・セキュリティを向上した校務系システムにアクセスするために、インターネットに接続されたパソコンから、データセンターにある仮想デスクトップに(踏み台のように)ログインします。(図1)次に、仮想デスクトップから同一ネットワークゾーン内にある校務システムにクラウド内でアクセスすることで、閉域ネットワークで利用が可能であり、データ漏洩の危険やネットワーク遅延を軽減することが可能です。また、教職員はリモートからアクセスが出来るようになるため働き方の変化にもつながってきます。 (図1)   このような環境をAWSでは、Amazon WorkSpaces あるいはAmazon AppStream 2.0で提供しています。どちらもフルマネージド型のデスクトップサービスであり、初期投資が不要で、1台単位で増減が可能です。集中的に利用する日中だけ稼働させることでコストを抑えることが出来るでしょう。利用者のオンプレミスにあるActive Directoryとの連携や、専用線を介して、オンプレミスのシステムに閉域接続することも可能です。 Amazon AppStream 2.0は日本語キーボード対応も完了しており、クラウド側にあるデスクトップアプリケーションの画面情報を暗号化のうえ手元のパソコンのWEBブラウザ(HTML5)に配信します。一般的に求められる機能(プリンタ、クリップボード制御、フォルダリダイレクト、音声)に対応しておりますので学校環境でもマルチデバイス環境ですぐにご利用いただくことが可能です。 また、マイクロソフト社から教育機関認定されていればAmazon WorkSpaces、Amazon AppStream 2.0ともに当該ライセンス費用に係る分の割引を得ることが可能です。 是非ご検討ください。詳しいご説明はパブリックセクターチームにお問い合わせください。 < お問い合わせ・連絡先> アマゾン ウェブ サービス ジャパン株式会社 パブリックセクター  aws-jpps-qa@amazon.com  執筆担当:SA豊原  

Read More

EMRFS S3 最適化コミッターを使用して、Apache Parquet 形式での Apache Spark 書き込みパフォーマンスを向上させる

 EMRFS S3 最適化コミッターは、Amazon EMR 5.19.0 以降の Apache Spark ジョブで使用可能な新しい出力コミッターです。このコミッターは、EMR ファイルシステム (EMRFS) を使用して Apache Parquet ファイルを Amazon S3 に書き込む際のパフォーマンスを向上させます。この記事では、この新しい最適化されたコミッターを既存のコミッターアルゴリズム、つまり FileOutputCommitter アルゴリズムのバージョン 1 および 2 と比較するためにパフォーマンスベンチマークを実行します。最後に、新しいコミッターに対する現在の制限について検討し、可能な限り回避策を提供します。 FileOutputCommitter との比較 Amazon EMR バージョン 5.19.0 以前では、Parquet を Amazon S3 に書き込む Spark ジョブは、デフォルトで FileOutputCommitter という Hadoop コミットアルゴリズムを使用していました。このアルゴリズムには、バージョン 1 と 2 の 2 つのバージョンがあります。どちらのバージョンも、中間タスクの出力を一時的な場所に書き込むことに依存しています。その後、名前変更操作を実行して、タスクまたはジョブの完了時にデータが表示されるようにします。 アルゴリズムバージョン 1 には、2 つのフェーズの名前変更があります。1 つは個々のタスク出力をコミットするため、もう 1 つは完了/成功したタスクからのジョブ全体の出力をコミットするためです。タスクは名前変更ファイルを直接最終出力場所にコミットするので、アルゴリズムバージョン 2 […]

Read More

ベス・イスラエル・ディーコネス・メディカルセンターにおける機械学習を使った患者ケアの向上

 ベス・イスラエル・ディーコネス・メディカルセンター (BIDMC) は、機械学習がどのように患者ケアを向上させることができるかについての複数年にわたる革新的な研究プログラムを開始しました。このプログラムは、AWS からの学術研究後援助成金によってサポートされています。  このハーバード大学医学大学院関連教育病院は、患者のケアと生活の質を向上させることを目的として、機械学習テクノロジーが臨床ケアを強化し、業務を合理化して、無駄を省くことを可能にする新たな方法を見いだすために、さまざまな AWS Machine Learning サービスを使用していきます。 機械学習を使った患者ケアの向上 病院の管理と運営における非効率性は、医療提供者、保険業者、患者、および納税者にとってコスト面における大きな損失であるだけでなく、貴重なリソースが患者ケア以外に流れてしまうことにもつながりかねません。これらの非効率性は、ヘルスケアコストを押し上げ、生命に関わる医療ミスの一因となる可能性もあります。 BIDMC で現在進められている取り組みは、より良い患者アウトカムの促進、入院と再入院の低減、およびすべてのアメリカ国民のヘルスケアコストの削減を目的に、ヘルスケア業界全体で共有することができる新たな手法の特定を目指しています。BIDMC の機械学習研究は、これらの課題に対処するためのデータに基づくソリューションとプロセスを作成し、ヘルスケア業界全体に対する拡張性を備え、患者ケアをさらに強化しようとするものです。 最初の BIDMC 研究プロジェクトでは、BIDMC にある 41 室の手術室のスケジュールを最適化し、これらのスケジュールを調整して入院環境における患者フローを改善するために機械学習を使用しました。別のプロジェクトでは、手術室での業務フローの改善に機械学習が活用されました。現在、受領される手術前の文書パッケージは画像としてスキャンされ、BIDMC のセキュアな AWS クラウドでホストされる Amazon SageMaker 上の TensorFlow で処理されます。この機械学習主導のプロセスは、自動的に同意書を認識して、それを対応する電子カルテ (EHR) を自動的に挿入するため、病院職員は何時間もの手作業を行わずに済むようになります。BIDMC は、EHR をスキャンして記入済みの同意書といった主な要素を検索するモデルを構築しました。同意書が見つからなければ、EHR にシグナルが表示され、看護師がそれらの患者に対するフォローアップを行います。 また、BIDMC には稼働率が高い 490 床を超える医療/外科入院病床があり、BIDMC のチームは、患者が適時に治療を受け、回復できるように外科手術を成功させるべく懸命に努力しています。しかし、手術は記入済みの病歴と身体所見 (H&P) 用紙が原因で延期または予定変更される場合があります。これは手術開始前に揃えておかなくてはならず、病院にファックスで送信されることもある書類の中から探し出すことは困難になり得ます。この問題を解決するために、BIDMC は現在、H&P を識別するための機械学習モデルで使用される重要な医学用語とインサイトの抽出に Amazon Comprehend Medical を使用しています。その結果、貴重な時間を節約し、延期と予定変更を防ぐことが可能になりました。 ベス・イスラエル・ディーコネス・メディカルセンターの最高情報責任者であるマヌ・タンドン氏は、「テクノロジーと深層学習における進歩には、医療ケアを向上させ、何千人もの患者と医療提供者の生活に有意義な変化をもたらす力があります」と話しました。 ベス・イスラエル・ディーコネス・メディカルセンターの Health Technology Exploration Center エグゼクティブディレクターであり、ハーバード大学医学大学院の国際ヘルスケアイノベーション教授であるジョン・ハラムカ医学博士は次のように語っています。「煩雑な事務上の作業と管理に費される時間のすべてが積もり積もって何百万ドルもの生産性損失を生じ、患者ケアに直接的な影響を及ぼします。この機械学習研究の後援は、BIDMC、そして世界各国で患者に対するケアを変革することになるプロジェクトを推進するために、ヘルスケアにおいて新進のテクノロジーを使用するという私たちのコミットメントをサポートしてくれます。」 BIDMC […]

Read More

新しい Amazon DocumentDB の集計、配列、インデックス作成機能

Amazon DocumentDB (MongoDB 互換) は、MongoDB のワークロードをサポートする高速でスケーラブル、かつ可用性に優れた完全マネージド型のドキュメント データベース サービスです。今日、使用したものと同じ MongoDB アプリケーションコード、ドライバー、およびツールを使用して、Amazon DocumentDB でワークロードを実行、管理、および拡張できます。これにより、基となるインフラストラクチャの管理を気にせず、パフォーマンス、スケーラビリティ、および可用性を向上させることができます。 今日、Amazon DocumentDB は、新しい集計パイプライン演算子とステージをサポートするようになりました。これにより、ドキュメントで強力な集計を作成することができます。新しい機能には、集計文字列演算子 ($concat, $substr, $substrBytes, $substrCP, $strcasecmp)、配列集計演算子 ($size)、集計グループ アキュムレータ演算子 ($push)、および集計ステージ ($redact と$indexStats) が含まれます。さらに、Amazon DocumentDB は、配列内の要素を更新する位置配列演算子 ($[] と $[<identifier>]) およびインデックスを選択する hint() をサポートするようになりました。 このブログ記事では、一般的なユースケースを示してこれらの新機能のいくつかを紹介します。これにより、Amazon DocumentDB で大規模のアプリケーションを構築および管理する機能を使い始めることができます。 Amazon DocumentDB の使用の開始 Amazon DocumentDB を使い始めるには、Amazon DocumentDB 入門ガイド、AWS CloudFormation のクイック スタートをご覧ください。準備ができたら、現在 MongoDB で使用しているものと同じアプリケーションコード、ドライバー、およびツールを使って、Amazon DocumentDB での開発を開始できます。 新機能 Amazon DocumentDB […]

Read More

Amazon DynamoDB Auto Scaling: 規模を問わないパフォーマンスとコストの最適化

 データベース容量の拡大は、面倒でリスクが伴う作業になり得ます。データベースとアプリケーションの微妙な動きを理解しているベテランの開発者とデータベース管理者でさえも、この作業には細心の注意を払います。共有 NoSQL クラスターの今の時代にもかかわらず、容量の増加は何時間、何日、または何週間もかかりかねません。このようなタスクを行った人なら誰でも、容量拡大中におけるパフォーマンスへの影響は予測不可能であったり、ダウンタイムを伴う場合があることを証言できます。逆に、容量を縮小する値打ちがあると判断することは、まれな状況でしかあり得ないでしょう。これにも独自の複雑な検討事項がつきものだからです。データベース容量の計画と作業がこれほど難しいのはなぜでしょうか? データベースをアンダープロビジョニングすると、アプリケーションに壊滅的な影響を及ぼす可能性があり、オーバープロビジョニングすると、数万、または数十万ドルが無駄になる可能性があります。誰もそのような経験はしたくありません。 Amazon DynamoDB は、開発者とデータベース管理者たちが 10 年以上前から信頼してきた完全マネージド型のデータベースです。DynamoDB は、あらゆる規模で低レイテンシーパフォーマンスを実現し、データベース容量管理を大幅にシンプル化します。最小限の取り組みで、多種多様な SDK および AWS のサービスと簡単に統合される、完全にプロビジョニングされたテーブルを得ることができます。テーブルをプロビジョニングした後は、その容量をすぐさま変更できます。アプリケーションが一晩で大人気を集めたことがわかったとしても、簡単に容量を増加できます。その一方で、アプリケーションロジックを最適化し、データベーススループットを大幅に低減する場合は、プロビジョニングされた容量を減らすことでコスト節約を即座に実現できます。DynamoDB のアダプティブキャパシティーは、裏手で容量の増加と削減をスムーズに処理します。 2017 年 6 月、DynamoDB は効率的な容量管理を容易にする Auto Scaling をリリースしました。それ以来、Auto Scaling は DynamoDB ユーザーが予測可能なトラフィックパターンを持つワークロードのコストを削減できるように援助し続けています。Auto Scaling がリリースされる前は、テーブルのピークロードと小さなバッファに対応するために容量を静的にプロビジョニングしていました。しかし、大抵の場合、テーブルをピーク容量以上に静的にプロビジョニングすることはコスト効率性が良くありません。このブログ記事では、Auto Scaling がトラフィックの変化に対応する方法、Auto Scaling に最適なワークロード、ワークロードの最適化方法とコストベネフィットの計算方法、そして毎秒 100 万件のリクエストで DynamoDB が実現できるパフォーマンスについて説明します。 背景: DynamoDB Auto Scaling の仕組み DynamoDB テーブルを作成すると、Auto Scaling がデフォルトの容量設定となりますが、それがアクティブになっていないテーブルで Auto Scaling を有効化することもできます。以下の図で説明されているように、DynamoDB Auto Scaling は背面で アプリケーションの Auto […]

Read More

Amazon SageMaker Ground Truth ラべリングジョブに、加わったデータラべリングサービス 2 社を使用する

Amazon SageMaker Ground Truth のラベリングジョブに使用できるデータラベリングサービスで、さらに次の 2 つのサービスが増えることになりました。 iMerit の米国を拠点とするワークホースによるデータラベリングサービス Startek, Inc によるデータラベリングサービス AWS Marketplace に加わったこの新しいリスティングは、現存する iMerit のインドを拠点とするワークフォースリスティングを補完するもので、合計 3 つのオプションが提供されることになります。 iMerit では今後、データラベリングを専門とするフルタイムの米国ベーススタッフを提供することになりました。同社の画像ラベリング機能には、分類、枠どり、画像分割、キーポイント、ポリゴン、ポリラインなどがあります。同社のテキストラベリング機能には、英語およびスペイン語の両言語における要素抽出と分類があります。 StarTek はビジネスプロセスのアウトソーシング企業で、データラベリングサービスを提供します。StarTek は株式公開企業 (NYSE: SRT) で、同社のワークフォースは、フィリピン、ホンジュラス、インド、ブラジル、ジャマイカに展開しています。同社の画像ラベリング機能には、分類、枠どり、画像分割、キーポイント、ポリゴン、ポリラインなどがあります。同社のテキストラベリング機能には、英語での要素抽出と分類があります。 Amazon SageMaker Ground Truth は、re:Invent 2018 で立ち上げられました。これは機械学習向けに精度の高いトレーニングデータセットを構築するのに役立つサービスです。詳細については立ち上げブログをご覧ください。Ground Truth のラベリングジョブを設定する際、ラベリングタスクを自社のワーカー、Amazon Mechanical Turk のパブリックワーカー、または AWS Marketplace のリストに掲載されているベンダーのいずれかに送信できます。 お客様は事前承認されたベンダーのいずれかにデータラベリングタスクを割り当てることが可能で、これらのベンダーは、Amazon が機密保持、サービス保証、特殊スキルなどの面で綿密に調査を行った企業です。こうしたベンダーはデータセキュリティ、物理的施設へのアクセス制限、セキュアなデータ送信などに関する特定の要件を満たしているかによって承認されます。承認されたベンダーが承認後も要件を満たしていることを確認するため、定期的にセキュリティに関する監査を行います。 通常、適切なベンダーを見つけ、その後契約を結ぶのは、時間を要する面倒な作業です。Ground Truth を活用することで、ベンダーとの作業はシンプルになり、その工程も AWS Marketplace を通してわずか数クリックするだけとなります。すべてのベンダー関連の料金は AWS Marketplace リスティングを通じて、AWS の請求書に直接記載されます。ここでは、Ground Truth […]

Read More

Amazon Neptune のための Gremlin クエリヒントの紹介

Amazon Neptune は、高度に連結されたデータの保存とクエリのために最適化された、高速で信頼性に優れた完全マネージド型のグラフデータベースで、データにおける連結のナビゲートと活用に依存するオンラインアプリケーションに最適です。 Amazon Neptune は、SPARQL クエリ言語を使用してクエリできる W3C RDF グラフをサポートします。また、Gremlin グラフトラバース/クエリ言語を使用してクエリできる Apache TinkerPop プロパティグラフもサポートしています。 この記事では、Gremlin ユーザーが使用できるいくつかの新しい機能について検討していきます。今回は特に、クエリがどのように実行されるかをより良く制御できる新しいクエリヒント機能に注目します。 Gremlin クエリヒント Gremlin クエリヒントは、クエリがデータをトラバースする方法をより良く制御し、クエリ順序を最適化するかどうかを指定するために設計されています。このクエリヒントは、特にデータのシェイプを熟知している場合に便利です。 クエリヒントを適用するには、以下の withSideEffect Gremlin ステップを使用します。ここにある <hint-name> は適用されるヒントの名前に置き換え、<hint-setting> は適切な値に置き換えます。新しいヒントは、すべて Neptune# プレフィックスで始まります。 g.withSideEffect(‘Neptune#<hint-name>’,'<hint-setting>’) 現在利用可能なヒントとヒント設定を、以下の表に示します。各ヒントについては、この記事で後から詳しく見ていきます。 ヒント名 ヒント設定 アクション noReordering true Neptune はクエリの実行順序の最適化を試みません。これは、データがどのように編成されているかをユーザーが理解しており、Neptune が順序を変更して制約が適用されることがないようにしたい場合に最も有効です。 noReordering false Neptune は、最初に最も厳しい制約を適用するために、クエリの実行順序の最適化を試みます。これはデフォルトの noReordering 設定です。 repeatMode BFS 幅優先の方法でグラフをトラバースします。これは Gremlin の repeat ステップの使用時における Amazon Neptune のデフォルトバースモードで、多くのユースケースにとって望ましいモードです。ただし、多数の頂点を調べなければならない場合には、かなり多くのメモリを消費する場合があります。 […]

Read More

Amazon SageMaker 推論パイプラインと Scikit-learn を使用して予測を行う前に入力データを前処理する

Amazon SageMaker を使用すると、開発者やデータサイエンティストは大規模な機械学習 (ML) モデルを構築、トレーニング、調整、デプロイすることができます。目に見えないデータのリアルタイム予測またはバッチ予測のためにトレーニング済み ML モデルをデプロイできます。推論と呼ばれるプロセスです。ただし、ほとんどの場合、未加工の入力データは前処理する必要があり、予測で直接使用することはできません。これは、ほとんどの ML モデルが事前に定義された形式のデータを想定しているため、ML モデルでデータを処理するには、まず未加工データをクリーンアップして形式を設定する必要があるためです。 このブログ記事では、入力データの前処理に Amazon SageMaker の組み込みの Scikit-learn ライブラリを使用し、次に予測に Amazon SageMaker の組み込みの Linear Learner (線形回帰) アルゴリズムを使用する方法を説明します。Amazon SageMaker の推論パイプライン機能を使用して、ライブラリとアルゴリズムの両方を同じエンドポイントにデプロイするので、未加工の入力データを直接 Amazon SageMaker に渡すことができます。また、ML のワークフローをモジュール化し、トレーニングと推論の間で前処理コードを再利用して開発のオーバーヘッドやエラーを削減する方法も示します。 ここでの例 (GitHub でも公開されています) では、UCI 機械学習リポジトリからの abalone (アワビ) データセットを使用します。このデータセットには、性別、長さ、直径、高さ、殻の重さ、身の重さ、全体重、内臓の重さ、年齢など、アワビ (貝類の一種) に関するさまざまなデータが含まれています。  アワビの年齢を測定するのは時間がかかる作業であるため、アワビの年齢を予測するモデルを構築することで、物理的測定のみに基づいてアワビの年齢を推定することができ、アワビの年齢を手動で測定する必要がなくなります。 これを実現するために、まず Amazon SageMaker 組み込みの Scikit-learn ライブラリを使って簡単な前処理を行います。未加工のアワビデータに、SimpleImputer、StandardScaler、OneHotEncoder の変換器を使用します。これらは Scikit-learn の前処理ライブラリに含まれる一般的に使用されるデータ変換器であり、データを ML モデルに必要な形式に処理します。  次に、処理したデータを使用して、Amazon SageMaker の Linear […]

Read More