Amazon Web Services ブログ

Category: Artificial Intelligence

Amazon Rekognitionでの索引中に顔をフィルターして、時間とお金を節約します。

Amazon Rekognitionはオブジェクト、人物、文字、場面および活動を識別し、さらに不適切な内容を検知する、ディープラーニングベースの画像および映像分析サービスです。新しいAmazon Rekognitionの顔フィルター機能を使用して、顔認識のために索引できる顔の質と量を制御できます。これはコストを抑え、開発時間を減少し、顔認識の正確性を向上させます。 このリリースに先駆け、IndexFaces API アクションを使用するとき、Amazon Rekognitionは画像中のすべての顔を検知し、ご指定のコレクションに索引しました。しかし、一部の画像は索引したくない顔を含んでいることがあります。例えば、顔検索の質に逆効果を与える小さくてぼやけた顔、またはレッドカーペットプレミアのような、人込みの背景の関連のない顔を索引したくないかもしれません。そのような顔を索引することはコストを増やし、多くの場合、精確性に対して有害になります。これまでは、顔検知の実行、それぞれの顔の集まりでフィルタールールを適用する、およびフィルターを通過した顔の集まりを索引することのみでそのような顔をフィルターすることができました。新しいAmazon Rekognition顔フィルター機能は、たった二つのパラメータを使用して索引中に顔をフィルターさせることにより、この処理を簡易化します。複数のAPIコールを使って追加のコードを書いたり維持する、または質を測定するための独自ルールを作成する必要がありません。 このブログでの掲示で、新しいAmazon Rekognitionの顔フィルター機能の使用法のいくつかの例をお見せします。 手順 1 – コレクションの作成 CreateCollection API アクションを使用することにより、コレクションを作成できます。 リクエストの例: boto3をインポートする collection_name = “TestCollection” def create_collection(): # awsのデフォルト位置およびクレデンシャルを仮定する rekognition_client = boto3.client(‘rekognition’) response = rekognition_client.create_collection(CollectionId=collection_name) print(response) create_collection() 手順 2 – 索引に使用される画像を収集、検査する コレクションが設定された後、顔を索引したい画像をそこから収集できます。索引に使用される一部の画像は、被写体が離れているため、非常に小さいまたはぼやけた、または一部分しか見えない顔を含んでいることがあります。理想的には、「良い」質の顔だけが索引されることを確かなものにしたいですが、質の悪い顔は自動的にフィルターされます。画像に映っているすべての顔を索引したくないという状況に遭遇することもあるかもしれません。例えば、バーでのデートで自撮りされた二つの最も目立つ顔だけを索引したいのに、背景に他人の多くの小さな顔があるかもしれません。 これがどのように行われるかを説明するために、2枚の写真を例として使用します。一枚目はWikiMedia Creative Commons (Alan Light)から取り寄せられ、二枚目はPexels.comからのものです。 まず、正式な写真家に撮影されているレッドカーペットイベントの例を見てみましょう。 次に、顔検出を使用して、Amazon Rekognitionで見つかった顔を見てみましょう。 ご覧の通り、二つの大きくて目立つ顔があり、背景に三つの他の顔があります。それでは二枚目の写真で見つかった顔を見てみましょう。 ご覧のとおり、背景に、おそらく私たちが索引に使いたくないぼやけた顔があります。 二つのユースケースを見てみます: (i) 目立つ、高品質の顔のみを索引したいのですが、背景に顔がない(一枚目の写真). (ii) You want […]

Read More

Amazon SageMaker で高解像度胸部 X 線医療画像を分類する

医療画像処理は、深層学習が大きな効果を発揮する重要な分野の 1 つです。一般的な処理としては、様々な医用画像モダリティを用いた分類、検出、セグメンテーションがあります。このブログ記事では、HIPAA 準拠サービスである Amazon SageMaker を使用して、Amazon SageMaker 画像分類アルゴリズムで胸部 X 線画像分類の深層学習モデルをトレーニングする方法を概説します。この画像分類アルゴリズムが、高解像度医療画像を分析するための有効なツールとなり得ることを示したいと考えています。マルチラベルサポートや混合精度トレーニングなどのアルゴリズムの新しい機能を使用して、 混合精度モードを使用する胸部 X 線画像分類モデルが Amazon EC2 P3 インスタンスで float32 データタイプを使用する場合より、トレーニングによって 33% 速くなることを示します。また、高解像度の画像で胸部 X 線画像をどのようにトレーニングすることができるかを示し、低解像度のモデルでもパフォーマンスを向上できることを示します。 高解像度胸部 X 線医療画像の分類 ディープニューラルネットワークベースのアプローチは、通常は、メモリの制約のために低解像度の画像で動作します。画像分類 (ResNet-152) で使用する一般的なディープネットワークでは、256×256 サイズの画像でも大きなメモリが必要です。また、メモリ要件は、トレーニングで使用するバッチサイズにも依存します。ただし、一部の疾患は、胸部 X 線画像の小さな領域にしか存在しないため、高解像度画像分類の恩恵を受ける可能性が高くなります。 胸部 X 線画像のデータセットは、アメリカ国立衛生研究所 (NIH) [1] から公表されており、https://nihcc.app.box.com/v/ChestXray-NIHCC から入手できます。このデータセットは、30,805 人の患者からの 112,120 件の正面図 X 線画像で構成されます。これらの画像は、自然言語処理を使用して、関連付けられた放射線レポートからマイニングされた最大 14 のテキストマイニング病気画像ラベルを含むことができます。これらの 14 のラベルのいずれも、それぞれの X 線に関連付けることができることが、マルチラベル画像分類の問題となります。疾患のラベルは、無気肺、浸潤影、浸潤、気胸、浮腫、気腫、線維症、滲出、肺炎、胸膜肥厚、小瘤、結節、腫瘤およびヘルニアです。 近年、胸部 X 線画像分類に深層学習アルゴリズムが適用されています [1]。ImageNet […]

Read More

IP アドレスで、Jupyter ノートブックインスタンスへのアクセスを制限する

セキュリティを強化するため、Amazon SageMaker のお客様は、ノートブックインスタンスへのアクセスを一定の範囲の IP アドレスに限定することができます。 IP アドレスによるフィルタリングは、トラフィックのサブセットのみがノートブックインスタンスにアクセスできるようにする必要がある場合に役立ちます。ノートブックのアクセスを制限するのは、以下のような場合です。 IP アドレスの特定のホワイトリストを除いてトラフィックをブロックすることにより、セキュリティとコンプライアンスの要件を満たす場合。 特定の地域や人口をテストする場合。 一群の人々にのみ実験中のアクセスを許可する場合。 ノートブックインスタンスへのアクセスを IP アドレスで制限するには、Amazon SageMaker ノートブックにアクセスするすべてのユーザーまたはグループの AWS Identity and Access Management (IAM) ロールに、IP アドレスの条件付き演算子があるポリシーをアタッチする必要があります。IAM は、AWS のリソースへのアクセスを安全にコントロールするのに役立つウェブサービスです。ポリシーとは、アイデンティティまたはリソースにアタッチして、そのアクセス許可を定義するエンティティです。 IP アドレスの条件付き演算子がある IAM ポリシーは、指定したリストにある IP アドレスからの呼び出しでない限り、 CreatePresignedNotebookInstanceUrl および AuthorizedUrl へのアクセスを拒否します。また、このポリシーは、Amazon SageMaker コンソールでノートブックインスタンスを開くアクセスも制限します。Effect を「Deny」と定義し、NotIpAddress 条件付き演算子を aws:SourceIP キーで使用することで、ノートブックインスタンスへのアクセス許可を付与したい IP アドレスのリスト以外のインターネットから来るすべてのトラフィックをブロックできます。 IP アドレスの条件は、キーを IPv4 または IPv6 のアドレスあるいは IP アドレスの範囲と比較することに基づいてアクセスを制限します。 値は、標準 CIDR 形式 (例、203.0.113.0/24 または 2001:DB8:1234:5678::/64) […]

Read More

Zhiyu の登場 — Amazon Polly による初の中国語 (北京語) 音声

 Amazon Polly は、テキストを生きた話し声に変換する完全に管理されたサービスです。Amazon Polly による中国語 (北京語) のサポートをお知らせします。Zhiyu は、明瞭、明るく、自然に聞こえる女性の声です。 Zhiyu の自己紹介をお聞きください。再生ボタンをクリックして、音声をお聞きください。 今すぐ再生 Amazon Pollyの音声 Zhiyu は中国語 (北京語) で「大家好,我叫知语,我是亚马逊 Polly 的中文女声,很高兴认识大家」と自己紹介しています。 日本語の翻訳は、「こんにちは、Zhiyu です。私は Amazon Polly の中国語 (北京語) 音声です。はじめまして」と言っています。 中国語 (北京語) は世界で最も話者の多い言語の 1 つです。世界中で 10 億人以上の話者がいると推定されます。この言語は Amazon Polly のお客様から最も要求の多かった言語の 1 つです。 すでにアプリケーションで Zhiyu を利用している複数のお客様がいます。Netvue Belle はホームセキュリティとスマートホーム支援の両方を提供する AI 対応のインターホンです。このインターホンは訪問者に休日ごとに異なる挨拶をして、宅配便にも対応できます。Zhiyu の生きた話し声を使用して、Netvue は中国語 (北京語) を話すお客様に、より自然で、個人的なやり取りを実現します。 AWS アカウントがあれば、Amazon Polly でサポートされている AWS […]

Read More

Amazon Athena を使用した SageMaker ノートブックからの SQL クエリの実行方法

インターネットの登場以来、データの肥大化、高速化、多様化が進んでいます。多くの企業は、この「ビッグデータ」の管理という問題を抱えており、「ビッグデータ」を解釈して、最適な結果を生み出すことに苦戦しています。データの収集、保存、共有、分析、可視化を難しくしている原因として、企業におけるデータのサイロ化、途切れることのない多種多様なフォーマットのデータ流入、テクノロジーを取り巻く環境の絶え間ない変化が挙げられます。それでは、データストアに接続する堅牢なデータパイプラインを構築し、データからインサイトを取得できるようなプラットフォームをデータサイエンティストやエンジニアに提供するにはどうすればよいでしょうか。 データストアの一元化に投資する企業が増えつつあります。また、 Amazon Simple Storage Service (S3) をデータレイクとして使用することのメリットが理解されるようになってきました。データレイクに接続するデータパイプラインを構築する場合、データディスカバリープロセスが必要になります。このプロセスには、データフォーマットおよびスキーマの識別、データのカタログ化、テーブル定義作成のためのメタデータの把握、データをクエリするための機能の提供が含まれます。 本ブログ記事では、データパイプライン構築に要する全ステップをご紹介します。Amazon S3 のデータを対象としたクローラーの作成、データディスカバリーおよびカタログ化のための AWS Glue の使用から、テーブルメタデータを保存および取得するための Amazon Athena の使用、Athena テーブルに対してクエリを実行するための Amazon SageMaker の使用まで、さまざまなステップをカバーします。 Amazon SageMaker はエンドツーエンドの機械学習 (ML) プラットフォームであり、AWS 上で機械学習モデルの構築、トレーニング、デプロイに使用できます。このサービスには高度なモジュール方式が採用されており、各コンポーネントは組み合わせても単体でも使用できるようになっています。Amazon SageMaker ノートブックモジュールを使用すれば、データをローカルに取り込む際に発生するレイテンシーを抑えて、データ操作の効率性を向上させることができます。それでは、Amazon SageMaker の Jupyter ノートブックコンポーネントを使用して、Athena との統合とデータフレームへの入力を行い、データ操作を実現する方法をご説明します。 本ブログ記事では例として、航空会社の定時運行に関する 2008 年のデータセットを使用します。このデータセットは、1987 年 10 月から 2008 年 4 月までの米国内の全民間航空便を対象としており、各フライトの発着に関する詳細な情報で構成されています。このデータはまず Amazon S3 にアップロードし、AWS Glue と Athena で使用できようにし、次に Amazon SageMaker で使用できるようにします。 AWS Glue […]

Read More

Mapillary が、Amazon Rekognition を使用して、米国の都市向けの駐車ソリューションを構築

Mapillary は、人々や組織がジオタグ付きの写真をアップロードできる協調型のストリートレベルの画像プラットフォームであり、これを使用してマッピングのシステムやアプリケーションを改善することができます。 Mapillary は、深層学習ベースの画像および動画分析サービスである Amazon Rekognition を使用してメタデータ抽出を強化しています。Amazon Rekognition の DetectText 操作を使用することにより、Mapillary は交通標識や駐車標識の画像からテキストを検出および抽出し、マッピングデータを充実させることができます。 「Amazon Rekognition でテキストを検出する際の精度が、一貫して正確であることが分かりました」と、Mapillary のコンピュータビジョン責任者である Yubin Kuang 氏は言います。「Mapillary は、既にストリートレベルの画像の世界で最も優れたコンピュータビジョンを構築しているため、Amazon Rekognition の DetectText API を統合すると、Mapillary の技術によって自動的に検出される交通標識や駐車標識からテキストを抽出できるようになります。このワークフローは開発サイクルを短縮し、駐車インフラの概要を大規模で把握することを可能にします。」 アーキテクチャ Mapillary は、Amazon S3 に何億もの画像を保存しています。こうした画像は、あらゆる場所の人々や組織によって Mapillary にアップロードされます。Mapillary の交通標識検出パイプラインで Amazon Rekognition の DetectText API 操作を使用すると、ストリートレベルの画像から抽出されたメタデータは、Elasticsearch クラスターを使用して検索可能になります。たとえば、次の例は、ユーザーが Mapillary にアップロードした画像を示しています。緑色のボックスは交通標識が Mapillary で検出されたことを、白色のボックスは Rekognition が検出、抽出し、機械で判読可能なテキストに変換したテキストであることを強調表示しています。 「Amazon Rekognition のこの作業により、米国の都市の駐車を改善するソリューションを開発できます」と、Mapillary の CEO 兼共同設立者である Jan Erik […]

Read More

AWS のメディア解析ソリューションを使用して、メタデータの自動抽出を使い始める

 AWS でメディア解析ソリューションを使用して、メディアファイルから意味のあるメタデータを簡単に抽出することができます。 メディア解析ソリューションは、数分でメディアファイルから意味のあるメタデータの抽出を始めるために使用できる AWS CloudFormation テンプレートを提供します。ウェブベースのユーザーインターフェイスを使用すると、簡単にファイルをアップロードし、自動的に抽出されたメタデータを表示することができます。 このソリューションは、顔認識に Amazon Rekognition、文字起こしの作成に Amazon Transcribe、文字起こしでの感情分析に Amazon Comprehend を使用します。独自の画像を Amazon Rekognition コレクションにアップロードして、個人を認識できるようにソリューションをトレーニングすることもできます。 料金を支払うのは、このソリューションをテストするときに使用するサービスに対してのみです。1080p HD ビデオの場合、このソリューションを開始するのに必要なコストは、1 時間あたり 8 USD 以下です。このソリューションは、メディアライブラリにインデックス付けされるメタデータの量に基づいて、さまざまなサイズで利用できます。サイズに応じた価格の範囲は月額 300 – 1,000 USD で、主にメタデータのインデックス付け、検索、保存のための Amazon Elasticsearch Service のコンピューティングとストレージのコストで構成されています。 このブログ記事では、ソリューションを起動して画像やビデオをアップロードする方法を段階的に示します。メタデータがどのようにしてシームレスに抽出されるかを直接見ることができます。 注意: このソリューションは、現在は特定の AWS リージョンでのみ利用可能である Amazon Rekognition、Amazon Comprehend、Amazon Transcribe を使用しています。したがって、このソリューションは、これらのサービスが利用可能な AWS リージョンで起動する必要があります。最新のリージョン別の AWS のサービスの利用可用性については、リージョン別の AWS のサービス内容をご覧ください。 ステップ 1: メディア解析ソリューションのデプロイ ユーザー名とパスワードを使って、AWS マネジメントコンソールにサインインします。メディア解析ソリューションへ移動して、[Deploy […]

Read More

Amazon S3 のデータを AWS Glue データカタログで管理し、Amazon SageMaker ノートブックから利用する方法

  あなたがデータサイエンティストであるとしましょう。会社のシステムが統合され、膨大なデータセットの定義も完了し、データが容易に分析できるとしたら、ラッキーです。そんな会社はごく一握りだからです。 では、そのような恵まれた環境ではないとしましょう。機械学習用の準備作業の中で、フォーマットの異なるデータセットを統合し、データの分析や可視化を行ううえでの支援が必要なら、ぜひこの記事をお読みください。 このブログ記事では、Amazon SageMaker で、大量の企業データを予備解析する方法について説明します。Amazon SageMaker では、Jupyter ノートブックが動作しており、企業のデータレイクの中から注目すべきデータセットを探索したり、取り出したりすることができます。複数のデータセットのそれぞれに必要な情報のサブセットが含まれている場合には、それらを統合させて注目すべき情報を取り出し、Amazon SageMaker ノートブックでそのままシームレスにデータの分析と可視化を行うことができます。 概要 Amazon SageMaker は、機械学習の機能を提供するフルマネージドサービスです。Amazon SageMaker を使用することで、データサイエンティストや開発者は、機械学習モデルを短期間で容易に構築、トレーニングすることができます。また、用意したモデルを実稼動も可能なホステッド環境に直接導入することもできます。また、Jupyter のオーサリング環境が統合されており、データサイエンティストの初期のデータ探索や分析、モデル構築に便利です。 Jupyter ノートブックが Amazon SageMaker ノートブックのインスタンス上で実行されているため、Amazon S3 のデータセットを容易にノートブックに読み込み、処理することができます。ただ、最初に対象とするデータセットのロケーションを指定する必要があります。データレイクの規模が大きい場合、解析対象のフィールドを含んだデータセットを正確に特定することは、難しい作業になります。個々のデータセットのサイズが大きくなればなるほど、ノートブックに読み込ませる作業が現実的なものではなくなります。今日における一般的なデータセットのサイズに対し、ノートブックのディスク容量やメモリは限られているのです。また、よくあるケースとして、必要な情報が複数のデータセットに分散していることもあります。この場合は、データの探索がさらに難しいものとなります。必要なデータセットのロケーションを特定し、統合させてフィルタリングする必要が生じるのです。つまり、非常に規模の大きなデータセットを統合させて、ノートブックに読み込ませようとすると、生産性が損なわれることになります。データセットがさらに大きくなれば、そのような作業はもはや現実には不可能です。このようなデータの結合や探索に要する作業は、データサイエンティストの作業時間の 80% を占めています。機械学習プロジェクトを支障なく遂行するには、このような負担を軽減することが不可欠です。 多くの大企業が、データレイクの管理に AWS Glue を使用しています。AWS Glue はフルマネージド型のデータ抽出、変換、ロード (ETL) サービスです。このサービスを使用すれば、データに対する分類、クリーニング、エンリッチ、信頼性の高い方法でのデータストア間でのデータ移行が行えます。AWS Glue データカタログと称される一元化されたメタデータリポジトリが備えられており、データレイク内のデータをエンリッチおよび分類した上で、検索やクエリが実行できるようになっています。 データカタログ内のメタデータを使用することで、任意のデータセットの名前、ロケーション、コンテンツ、属性での指定が行えます。 Amazon S3 のデータレイクで、非常に大きなデータセットのフィルタリングや集計を行う場合や、他のデータセットと統合される可能性がある場合には、Amazon EMR 上で Apache Spark を使用するのが最適です。Apache Spark はクラスタコンピューティング用のフレームワークで、Python、Java、Scala などの複数の言語での分析をサポートする組み込みモジュールを備えています。企業のデータレイクによくみられる大規模データセットを扱ううえで、Amazon EMR で Spark を動作させることによるスケーリングの効果は絶大です。データセットが AWS Glue データカタログで定義されていれば、データセットへのアクセスがさらに容易になります。また、AWS […]

Read More

AWS でのビジュアル検索 – パート 1: Amazon SageMaker を使用したエンジンの実装

音声やテキストは使わずに、見つけたいものを表示することでビジュアル検索を行う。古いことわざにもあるように、「絵は千語の価値がある」と言います。 たいていは、実際の例や画像を示す方が、検索エンジンが効率的に探し出せる言葉で説明するよりも簡単です。専門的な用語を使って説明するだけの知識や理解が十分でないユーザーもいるからです。他にも、画像か動画データを使って検索を使いたいが、ビジュアル検索だと、取り込みが早すぎてラベルやメタデータを正確に割り当てられない、という場合があります。 ビジュアル検索を使って、ハードウェアストアで交換部品を探す、という小売業での例を見てみましょう。専門知識がないと難しい用語を使って部品を識別するのではなく、深層学習を利用できるビデオカメラの AWS DeepLens に部品をただ見せるだけです。するとデバイスは、視覚的に類似している部品の一覧と、それらが置いてある店舗内の場所を提示するのです。似たようなアイテムを購入したい場合、顧客が自宅に AWS DeepLens デバイスを持っていれば、家にあるアイテムをデバイスに見せるだけで済みます。ビジュアル検索の利点は、アイテムを示すだけで済むところでしょう。バーコード、QR コード、製品名、製品メタデータなど、他のデータは一切必要ありません。

Read More

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