Amazon Web Services ブログ

Category: Artificial Intelligence

Amazon SageMaker ランダムカットフォレストアルゴリズムを使用した Amazon DynamoDB ストリームでの異常検出

異常検出技術の導入を検討したことがありますか? 異常検出とは、分析しているデータの大部分と大きく異なるため信憑性にかける、あまり見かけないアイテム、イベント、あるいは観察を特定するために使用する手法です。  異常検出のアプリケーションは幅広い分野で利用されており、例えば、異常購入や銀行へのサイバー侵入の検出、MRI スキャンでの悪性腫瘍の発見、不正な保険請求の特定、製造時の異常な機械動作の発見、侵入を知らせるネットワークトラフィックの異常なパターンの検出などがあります。 こうしたアプリケーションには多くの市販品がありますが、Amazon SageMaker、AWS Glue、AWS Lambda を使えば、異常検出システムを簡単に実装することができます。Amazon SageMaker は、機械学習モデルの構築、トレーニング、デプロイを、規模を問わず迅速に行う完全マネージド型プラットフォームです。AWS Glue は、完全マネージド型の ETL サービスで、分析のためのデータやモデルの準備が簡単にできます。AWS Lambda は、普及しているサーバーレスのリアルタイムプラットフォームです。これらのサービスを使用すれば、モデルを新しいデータで自動的に更新することができ、その新しいモデルを使って、リアルタイムに異常をより正確に知らせることができます。 このブログ記事では、AWS Glue でデータを準備し、Amazon SageMaker で異常検出モデルをトレーニングする方法について説明します。今回のエクササイズでは、Numenta Anomaly Benchmark (NAB) ニューヨーク市タクシーデータのサンプルを Amazon DynamoDB に保存し、AWS Lambda 関数を用いてリアルタイムでストリーミングしています。 ここで説明するソリューションは、以下のような利点があります。 既存のリソースを最大限に活用して、異常検出を行います。例えば、災害対策 (DR) やその他の目的で Amazon DynamoDB Streams を使用したことがある場合、そのストリームのデータを異常検出に使用できます。加えて、スタンバイストレージは通常、使用率が低いものです。認識しにくいデータは、トレーニングデータに使用できます。 ユーザーの介入なしに、定期的に新しいデータでモデルを自動的に再トレーニングすることができます。 ランダムカットフォレストを組み込んだ Amazon SageMaker アルゴリズムを使えば、簡単に再トレーニングできます。Amazon SageMaker は、安全でスケーラブルな環境で、特定のワークフローに適応できる、柔軟な分散トレーニングオプションを提供します。 ソリューションのアーキテクチャ 次の図は、ソリューションの全体的なアーキテクチャを示しています。 アーキテクチャーにおけるデータ処理の手順は、次のとおりです。 ソース DynamoDB は変更を取得し、それらを DynamoDB ストリームに格納します。 AWS […]

Read More

Amazon SageMaker で、セマンティックセグメンテーションアルゴリズムが利用可能になりました

 Amazon SageMaker は、マネージド型で、無限に拡張可能な機械学習 (ML) プラットフォームです。このプラットフォームを使用すると、機械学習モデルの構築、トレーニング、デプロイが簡単になります。Amazon SageMaker には、画像分類と物体検出のための 2 つの定評があるコンピュータビジョンアルゴリズムがすでに組み込まれています。Amazon SageMaker の画像分類アルゴリズムは、画像をあらかじめ定義されたカテゴリのセットに分類することを学習します。Amazon SageMaker の物体検出アルゴリズムは、境界ボックスを描画し、ボックス内の物体を識別することを学習します。本日、Amazon SageMaker セマンティックセグメンテーションアルゴリズムの開始により、コンピュータビジョンファミリーのアルゴリズムを強化することを発表いたします。 Amazon SageMaker セマンティックセグメンテーションアルゴリズムの一例。PEXELS の Pixabay による写真。 セマンティックセグメンテーション (SS) とは、既知のラベルセットからのクラスを使用して画像内のすべてのピクセルを分類するタスクです。セグメンテーション出力は通常、異なる RGB (クラス数が 255 未満の場合はグレースケール) の値として表現されます。したがって、出力は、入力画像と同じ形状のマトリックス (またはグレースケール画像) です。この出力画像は、セグメンテーションマスクとも呼ばれます。Amazon SageMaker セマンティックセグメンテーションアルゴリズムを使用すると、独自のデータセットでモデルをトレーニングできることに加えて、事前にトレーニングされたモデルを使用して希望通りに初期化を行うこともできます。このアルゴリズムは、MXNet Gluon フレームワークと Gluon CV ツールキットを使用して構築されています。セマンティックセグメンテーションモデルを学習することができる、次の 3 つの最先端の組み込みアルゴリズムの選択肢を提供します。 fully-convolutional network (FCN) pyramid-scene-parsing network (PSP) DeepLab-V3 すべてのアルゴリズムに、2 つの異なるコンポーネントがあります。 エンコーダまたはバックボーン。 デコーダ。 バックボーンは、画像の特徴の信頼できるアクティブ化マップを作成するネットワークです。デコーダは、エンコードされたアクティブ化マップからセグメンテーションマスクを構築するネットワークです。Amazon SageMaker セマンティックセグメンテーションは、バックボーンのオプションとして、事前にトレーニングされた、またはランダムに初期化された ResNet50 または ResNet101 の選択肢を提供します。バックボーンには、元は ImageNet 分類タスクでトレーニングされた、事前トレーニング済みのアーティファクトが付属しています。これらは、ユーザーがセグメンテーションのために FCN […]

Read More

Amazon SageMaker ノートブックが Git 統合への対応開始により、持続性、コラボレーション、再現性を強化

Amazon SageMaker ノートブックインスタンスと GitHub、AWS CodeCommit、あらゆるセルフホスティング型 Git リポジトリとの関連付けが可能になり、Jupyter ノートブックでの簡単で安全なコラボレーションや確実なバージョンコントロールが実現できるようになりました。本ブログ記事では、Git ベースのバージョンコントロールシステムを使用することのメリット、および Git リポジトリで作業するためのノートブックインスタンスの設定方法について詳しく説明します。 データサイエンス分野のプロジェクトでは、コラボレーションが不可欠です。データサイエンティスト、機械学習の開発者、データエンジニア、アナリスト、ビジネスの意思決定権限者は、機械学習モデルのコンセプト作りから製品化にいたる合理的な行程を維持するために、インサイトの共有、タスクの委託、業務履歴のレビューが必要です。 Git ベースのバージョンコントロールシステムは、共有可能な環境でデータサイエンス活動を一元管理します。Git リポジトリと合わせて Jupyter ノートブックを使用することで、プロジェクトの共同起草、コード変更のトラッキング、リリース可能なコード管理を実現するソフトウェアエンジニアリングとデータサイエンス活動の融合が可能になります。 また、ノートブックインスタンス内のノートブックは、耐久性の高い Amazon Elastic Block Store (EBS) ボリュームに格納されます。ただし、ノートブック自体がノートブックインスタンスの寿命以上に存続することはありません。つまり、ノートブックインスタンスを削除すると、作業自体も削除されます。Git リポジトリ内にノートブックを格納すると、Jupyter ノートブックをインスタンスのライフサイクルから分離し、将来の参照や再利用に備えてスタンドアロンドキュメントとして保持できます。 さらに、機械学習および深層学習テクニックに関して一般に公開されているコンテンツの多数が、GitHub のような Git リポジトリ内にホスティングされた Jupyter ノートブック上で入手できます。このノートブックをユーザーのノートブックインスタンスにシームレスにクローニングすると、一般に公開済みの学習教材の検索、実行、共有が簡単になって、学習プロセスのスピードアップにつながります。 Git リポジトリを Amazon SageMaker ノートブックインスタンスに関連付ける方法は 2 つあります。 パブリックな Git リポジトリのクローンを作成したい場合は、ノートブックインスタンスを作成する際に当該リポジトリの URL を用意するだけです。認証情報は特に必要ありません。Amazon SageMaker が、Git リポジトリをクローンしたインスタンスを起動します。 認証情報や個人用アクセストークンを要するプライベート Git リポジトリを関連付けたい場合や、将来の利用に備えてパブリック Git リポジトリ情報を格納したい場合は、まずこの Git リポジトリをユーザーの Amazon SageMaker アカウントにリソースとして追加する必要があります。認証を要する Git […]

Read More

Amazon SageMaker に機械学習実験を加速する新機能が登場

データサイエンティストおよび開発者は、Amazon SageMaker Search で機械学習 (ML) モデルトレーニングの実験を、素早く簡単に整理、追跡、評価できるようになりました。当社が導入する新しい Amazon SageMaker Search 機能を使用すると、Amazon SageMaker の数百から数千に及ぶモデルトレーニングジョブの中から、最も関連性の高いモデルトレーニング実行を発見して評価することができます。これにより、モデルの開発と実験のフェーズをスピードアップし、データサイエンティストと開発者の生産性を高め、機械学習ベースのソリューションを市場に投入するまでの全体的な時間を短縮できます。AWS マネジメントコンソールと AWS SDK API for Amazon SageMaker の両方で、新しい検索機能のベータ版を利用できます。新機能のベータ版は、現在 Amazon SageMaker の利用が可能な 13 の AWS リージョンで、追加料金なしで提供されています。 機械学習モデルを開発するには、継続的な実験と観察が必要です。たとえば、新しい学習アルゴリズムを試したり、モデルのハイパーパラメータをチューニングしたりする場合、そのような増分変更がモデルのパフォーマンスと精度に及ぼす影響を観察する必要があります。この反復型最適化の訓練は、数百のモデルトレーニング実験とモデルバージョンでデータ爆発を招くことがよくあります。それにより、「成功した」モデルの収束と発見が遅くなる可能性があります。また、情報の爆発が起こると、本番環境にデプロイされたモデルバージョンの先行モデルを遡って追跡するのにも手間がかかります。このようなモデル系統の追跡の難しさは、モデルの監査やコンプライアンスの検証、モデルのライブ予測パフォーマンスの低下原因のデバッグ、新しいモデルの再トレーニング実験の設定などを行う妨げとなります。 Amazon SageMaker Search を使用すれば、ビジネスユースケースに対応するうえで最も関連性の高いモデルトレーニング実行を迅速に特定できます。採用された学習アルゴリズム、ハイパーパラメータ設定、使用されているトレーニングデータセット、さらにはモデルトレーニングジョブに自分で追加しておいたタグなど、あらゆる定義属性を検索できます。タグを検索すると、特定のビジネスプロジェクト、研究ラボ、データサイエンスチームに関連付けられたモデルトレーニング実行をすばやく見つけられます。これは、モデルトレーニング実行をわかりやすく分類してカタログ化するのに役立ちます。関連するモデルトレーニング実行を 1 か所で集中的に追跡および整理できるだけでなく、トレーニングの損失や検証の精度などのパフォーマンス指標に基づいて、トレーニング実行をすばやく比較してランク付けできます。これにより、「成功した」モデルを選んで本番環境にデプロイするためのスコアボードを作成することができます。さらに、Amazon SageMaker Search では、ライブ環境にデプロイされたモデルの系統を迅速に追跡して、モデルのトレーニングや検証に使用されたデータセットまで遡ることができます。AWS マネジメントコンソールで 1 回クリックするか、または 1 行の簡単な API 呼び出しを実行するだけで、特定のトレーニング実行にアクセスして、最初のモデル作成時に組み込まれたすべての要素まで参照できるようになったのです。 次に、Amazon SageMaker Search を使用してモデルトレーニング実験を効率的に管理する方法を、手順に沿って紹介します。この新機能はベータ版で提供されているため、本番環境では注意してご使用ください。 Amazon SageMaker Search によるモデルトレーニング実験の整理、追跡、評価 以下の例では、Amazon SageMaker 線形学習アルゴリズムを使用して、MNIST […]

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 独自の「Machine Learning University」がすべての開発者にご利用いただけるようになりました

今日は、Amazon のエンジニアを訓練するために使用されるものと同じ機械学習コースが、AWS を通して初めてすべての開発者にご利用いただけるようになったことをお知らせしたいと思います。 私たちは 20 年以上もの間、Amazon 全体において機械学習を使用してきました。社内全域で機械学習に重点を置くエンジニアを何千人も抱える Amazon では、ほとんどすべての小売ページ、製品、フルフィルメントテクノロジー、および店舗が何らかの形で機械学習の使用を通じて改善されています。AWS のお客様の多くがこの熱意を共有しておられ、私たちは大規模で十分な資金を持つ組織にしか手の届かなかったテクノロジーを、すべての開発者が利用できるようにすることを使命としてきました。Amazon SageMaker、Amazon Rekognition、Amazon Comprehend、Amazon Transcribe、Amazon Polly、Amazon Translate、および Amazon Lex などのサービスのおかげで、何万人もの開発者が機械学習を通じてよりインテリジェントなアプリケーションを構築する過程を歩んでいます。 機械学習の旅のどの地点にいるかにかかわらず、お客様から頻繁にいただく質問は「どのようにチームにおける機械学習スキルの成長を迅速化できるか」というものです。 機械学習のための新しい AWS トレーニングと認定の一環として利用できるこれらのコースは、この質問に対する回答の一部になりました。 これには、セルフサービス、かつ自分のペースで進めることができる 30 を超えるデジタルコースがあり、開発者、データサイエンティスト、データプラットフォームエンジニア、そしてビジネス専門家の 4 つの主要グループのための 45 時間以上におよぶコース、ビデオ、およびラボで構成されています。各コースは基礎から始まり、現実的な例とラボを経て基礎を強化していくため、開発者は Amazon で解決しなければならなかったいくつかの興味深い問題を通じて機械学習を掘り下げていくことができます。これには、ギフト包装対象資格の予測、配達ルートの最適化、または Amazon の子会社である IMDb からのデータを使用したエンターテイメント賞ノミネートの予測などが含まれます。コースワークはベストプラクティスの確立に役立ち、Amazon SageMaker、AWS DeepLens、Amazon Rekognition、Amazon Lex、Amazon Polly、および Amazon Comprehend を含む様々な AWS 機械学習サービスの使用を開始する方法を実演します。 機械学習のための新しい AWS 認定 今日は、開発者がその知識を実証する (そして雇用主がより効率的に雇用する) ために役立つ、新しい「AWS 認定機械学習 – 専門知識」認定についてもお知らせします。この試験は今すぐ受けていただくことができます […]

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 Personalize – すべてのユーザにリアルタイムパーソナライゼーションとレコメンデーションを

機械学習は、間違いなく広範囲にわたって取り組むべき魅力的なトピックを提供してきましたが、パーソナライゼーションやレコメンデーションほどのものはありません。 一見、ユーザーと好みのアイテムをマッチングするのは簡単な問題のように聞こえるかもしれません。しかしながら、効率的なレコメンデーションシステムを開発するのは難易度が高く、数年前にNetflix が 1 億円相当の懸賞金をかけて映画レコメンデーションコンクールを実施したほどです!事実、現時点でリアルタイムなパーソナライゼーションの仕組みを構築・最適化し、デプロイするには、分析・応用機械学習・ソフトウェアエンジニアリング・システム運用に特化したエキスパートが必要になります。ほとんどの組織はこれらの課題を克服するための知識・スキル、そして経験を持っておらず、レコメンデーションを利用するアイデアを諦めるか、パフォーマンスの低いモデルを構築するに留まっています。 20年以上もの間、 Amazon.com は、商品検索から決済まで購買経験のいたるところでパーソナライズされたレコメンデーションを統合しながら、大規模なレコメンデーションシステムを構築してきました (詳細な情報は次の文献を参照ください:”Two Decades of Recommender Systems at Amazon.com“)。 全ての AWS のお客様が同様のことをするお手伝いをするために、本日、Amazon Personalize を発表することができ幸せに思います。Amazon Personalize はパーソナライゼーションやレコメンデーションを機械学習の経験が殆ど無い開発者に委ねることが可能なフルマネージドサービスです! Amazon Personalize の紹介 Amazon Personalize はどのようにパーソナライゼーションとレコメンデーションをシンプルにしたのでしょうか?過去に発行した Blog で説明されているように、Factorization Machines のようなアルゴリズムを利用すると、Amazon SageMaker 上にレコメンデーションモデルを構築するのはすでに可能でした。しかしながら、この方法で良い結果を得るためには、大量のデータの準備と専門家によるチューニングが必要になると言わざるを得ません。 Amazon Personalize でレコメンデーションモデルを作るのはもっと簡単です。複雑な機械学習のタスクを自動化する新しいプロセスである AutoML を使うことで、Personalize は機械学習モデルを設計し、トレーニングし、デプロイするのに要求される難しい作業を実行し、高速化します。 Amazon Personalize は Amazon S3 に保存されているデータセットとストリーミングデータセット (JavaScript トラッカーやサーバサイドからリアルタイムで送られてくるイベントなど) の両方をサポートします。大まかな流れは次のようになります: ユーザー ID や アイテム ID に対応する […]

Read More