Amazon Web Services ブログ

Category: SageMaker

Amazon SageMaker で、物体検出アルゴリズムが利用可能に

Amazon SageMaker は、完全マネージド型で、拡張性が高い機械学習 (ML) プラットフォームであり、機械学習モデルの構築、トレーニング、デプロイを容易にします。これは、誰もが使える ML に向けた偉大な一歩であり、開発者が ML の領域へ入る際のバーを下げることができます。コンピュータビジョンは、画像を扱う機械学習の一つの分野です。Amazon SageMaker の画像分類アルゴリズムは、SageMaker が提供するより一般的なアルゴリズムの 1 つであり、画像をあらかじめ定義されたカテゴリのセットに分類することを学習します。 本日、Amazon SageMaker の物体検出 (OD) アルゴリズムを開始し、コンピュータビジョンの提供を強化します。物体検出は、画像内の物体を特定およびローカライズするプロセスです。このアルゴリズムは、物体が存在する画像上の境界ボックスを明らかにし、ボックスがどんな物体をカプセル化するかを識別することによって、さらに画像の分類を進めます。  カスタムクラスを含む独自のデータセットを使用してトレーニングする必要がない場合は、物体検出に Amazon Rekognition サービスを使用することもできることに注意してください。Amazon Rekognition は、あらかじめ定義されたクラスのセットから物体を識別できる API を提供します。Amazon SageMaker の物体検出アルゴリズムを使用すると、独自のデータセット/クラスを使用して学習するだけでなく、画像内の物体をローカライズすることもできます。 Amazon SageMaker の物体検出アルゴリズムの動作例写真提供 Mansoor、PEXELS Single-Shot Multi-Box Detector (SSD) は、このタスクを達成するためのより高速で正確なアルゴリズムの 1 つです。推論の間に 1 回のパスだけで、画像内の複数の物体を検出します。SageMaker が利用可能なすべてのリージョンで、Amazon SageMaker のお客様は SSD を組み込みアルゴリズムとして使用できるようになったことをお知らせします。このアルゴリズムは、以下の構成で P2/P3 インスタンスを使用してトレーニングすることができます。 シングルマシン、シングル GPU シングルマシン、マルチ GPU マルチマシン、マルチ GPU このアルゴリズムは、Amazon […]

Read More

Amazon SageMaker BlazingText を使用して強化されたテキスト分類と単語ベクトル

本日、Amazon SageMaker BlazingText アルゴリズム用のいくつかの新機能を発表します。感情分析、固有表現抽出、機械翻訳などの多くの下流工程での自然言語処理 (NLP) タスクではテキストデータを実数値ベクトルに変換する必要があります。お客様は数百ギガバイトのテキストドキュメントからこれらのベクトルを学習するために、BlazingText の高度に最適化された Word2Vec アルゴリズムの実装を使用してきました。 結果として得られるベクトルは、私たちが単語を読むときに認識する豊かな意味とコンテキストを捉えます。 BlazingText は fastText や Gensim のようなそれ以外に広く利用されているものより 20 倍以上高速であり、お客様は GPU や複数の CPU マシンを使用して数十億単語を含む独自のデータセットでこれらのベクトルをトレーニングできるため、これによって数日間かかっていたトレーニング時間を数分に短縮することができます。 これまでに BlazingText を使用して作業をしたことがない場合には、このアルゴリズムについて、ドキュメントや以前のブログ記事を参照することができます。 BlazingText には次の新機能と機能拡張が追加されました。 単語ベクトルにサブワード情報を持たせて豊かな表現にするための文字 n-gram のベクトル表現の学習。 私たちが用いるトレーニングデータセットでは、推論時に出現するすべての単語を持つことは不可能であるため、これらの単語をすべて無視したり、ランダムベクトルを使用するよりも、これらの単語の意味表現を生成する方がはるかに役立ちます。BlazingText は文字 n-gram (サブワード) ベクトルの和としてベクトルを表すことで、未定義 (OOV) 語の意味のあるベクトルを生成することが可能です。 高速マルチクラスとマルチラベルテキスト分類を実行する能力。 テキスト分類の目的は、テキスト文書を 1 つまたは複数の定義されたカテゴリー (スパム検出、感情分析、ユーザーレビュー分類) に自動的に分類することです。BlazingText は fastText テキスト分類器を拡張し、最適化された CUDA カーネルを使用して GPU アクセラレーションを活用します。深層学習テキスト分類モデル (Conneau et al., 2016, Zhang and LeCun (2015)) はトレーニングに数時間から数日かかることがありますが、BlazingText は同程度の精度を達成しながら […]

Read More

Formula 1®、AWSクラウドによりイノベーションを加速、AWS機械学習サービスや映像サービスを導入

  Formula One Group(Formula 1、以下F1)がAWSと提携し、クラウド化プロジェクトを開始しました。 F1は、21か国で開催する国際自動車連盟 (FIA) 主催のF1世界選手権 (FIA Formula One World Championship) の推進を担っています。 F1はITインフラストラクチャの大部分をオンプレミスのデータセンターからAWSクラウドへ移行予定です。フルマネージドな機械学習サービスAmazon SageMaker、イベント駆動型サーバーレスのコンピューティングサービスAWS LambdaやAWS分析サービスなど、さまざまなAWSサービスを通じてレース戦略とデータ追跡システムを強化し、世界で5億人を超えるファンとレーシングチームに、より確実な統計と予測情報を提供します。 F1の放送システムに関しても、複数の施設に及ぶ膨大なコンテンツデータをAWSのクラウドストレージで管理し、AWS Elemental Media Servicesで映像処理を行うというクラウドによるワークフローへ移行しました。複数の国でレースを行うため、現地にIT運用センターを設営する必要がありますが、クラウドを利用することで現地に運び込む機材が少なくなるため、クラウドが提供する効率性に加えて実用性な面でも利点を得ることができます。 F1は、非常にデータドリブンな自動車レースです。各レースでは、各競技車両が実装する120個のセンサーが3 GBのデータを生成し、毎秒1,500データポイントが生成されます。 F1のデータ科学者は、過去65年間で蓄積されたレースデータを使って深度学習モデルをトレーニングします。例えば、適切なピットストップウインドウ(適正なピットのタイミング)の特定や、タイヤ交換のピットストップ作戦といった、レース中の予測を行うことが可能です。リアルタイムでデータ分析をして、ドライバーが限界点までパフォーマンスを出しているかどうかといった洞察を、視聴しているファンに提供します。Amazon Kinesisを使って、機械学習、分析に用いる動画をリアルタイムにAWSのワークフローに取り込み、旋回中の各競技車両の主要なパフォーマンスデータを高速処理し、 Amazon SageMaker を活用した機械学習の結果により、ドライバーのパフォーマンスを正確に把握することができます。 F1のイノベーションとデジタル技術のディレクター、ピート・サマラ氏(Pete Samara)は次のように述べています。「AWSは我々のニーズに対して、他のクラウド事業者に勝るスピード、スケーラビリティ、信頼性、グローバル展開、パートナーエコシステム、そして幅広いサービスを提供してくれます。Amazon SageMakerなどの機械学習サービスを活用することにより、強力な洞察と予測をリアルタイムでファンに提供することができます。 また、AWSのスケーラブルで高性能コンピューティングワークロードを、Formula 1 Motorsports部門が活用できていることも素晴らしいです。これにより、新車のデザインルールの開発時に、エアロダイナミクス(空力性能)チームが実行できるシミュレーションの数と品質が大幅に向上します。」 原文はFormula One Group Case Study https://aws.amazon.com/jp/solutions/case-studies/formula-one/ AWSでの機械学習について https://aws.amazon.com/jp/machine-learning/ AWS ビデオソリューションについて https://aws.amazon.com/jp/digital-media/aws-managed-video-services/   AWS Elemental Marketing 山下  

Read More

Discover Financial Services が Amazon SageMaker で動作する Robocar イベントで機械学習を活用

AWS re:Invent に参加した Discover Financial Services (DFS) のチームメンバーが、Robocar Rally はインパクトがきわめて強いイベントだったと語りました。Discover のコアチームのメンバー 6 名はこのハッカソンに参加し、機械学習 (ML) および AWS に関する深層学習を使用したハンズオン体験をしました。彼らにとってその楽しい時間は、永く記憶に残るものとなりました!Discover の Cloud Center of Excellence (CCoE) はのちに、ある 1 つのアイデアを提案しました。それは、「Discover 本社のオンサイトで同じイベントを再現してみよう」というものです。Discover CCoE にはそのリーダーシップおよびデータサイエンスチームをもって機械学習実験の現状にインパクトを与えるために、AWS AI/ML サービスに対する認識を高めようという目標がありました。そのイベントが実現するのに、2 か月半かかっていません。 チーム編成 Discover はイベント開催中にチームあたり 6 名からなる 6 チームを編成し、ハッカソンに参加して、1 対 1 で直接競わせました。Discover は多数の事業領域にわたる多様な縮図を体現しています。これが開発者からセキュリティ専門家にいたる混合環境を構築しており、そこには機械学習の関係者も含まれます。チーム規模およびチーム数は、カスタマーの関心と過去の Robocar Rally のイベントから継承されてきた知見をすり合わせた結果としてそうなりました。 Robocar の役割 AWS はこのイベント運営および各チームメンバーに対する戦略的な役割分担を目指して、規範的なアプローチを使用しました。 ドライバー: モデルのトレーニング中はクリーンデータの収集を確保しながら、車両を管理し、イベント開催中は Robocar を管理します。 Robo […]

Read More

AWS PrivateLink を使用した Amazon SageMaker で、セキュアな予測呼び出し

Amazon SageMaker が AWS PrivateLink を使用した Amazon Virtual Private Cloud (VPC) エンドポイントをサポートすることになりました。これで、インターネットに頼ることなく、ユーザーの VPC 内の Amazon SageMaker にホスティングされた機械学習モデルの予測呼び出しを開始できます。 Amazon SageMaker は、開発者やデータサイエンティストが、機械学習モデルをあらゆる規模で、迅速かつ簡単に構築、トレーニング、デプロイできるようにする完全マネージド型プラットフォームです。機械学習モデルは Amazon SageMaker を使用して実稼働状態にデプロイされると、ユーザーのアプリケーションにセキュアな HTTPS エンドポイントを設定します。予測の低いレイテンシーおよび高いスループットを達成するために、アプリケーションに求められるのは SageMaker Runtime API を使用することのみとなりました。AWS PrivateLink をサポートすることで、SageMaker Runtime API はインターネットで接続するのではなく、VPC 内のインターフェイスエンドポイントから呼び出しが可能になります。クライアントアプリケーションと SageMaker Runtime API の間での通信は VPC 内で行われるので、インターネットゲートウェイ、NAT デバイス、VPN 接続、AWS Direct Connect は必要ありません。 AWS コマンドラインインターフェイス (AWS CLI) のコマンドまたは AWS マネジメントコンソールを使用して、SageMaker Runtime に接続するための […]

Read More

Amazon SageMaker で主成分分析を実行する

主成分分析 (PCA) は、主に株式市場の予測から医用画像分類に至るまで数多くのアプリケーションの次元削減のために、データ科学者が使用する非常に一般的な手法です。PCA のその他の用途としては、ノイズ除去および特徴抽出があります。また、PCA は、探索的データ解析ツールとしても使用されます。 PCA をよりよく理解するために、トラックのプロパティで構成されるデータセットの例を考えてみましょう。これらのプロパティは、色、サイズ、コンパクトさ、座席数、ドア数、トランクのサイズなどによってそれぞれのトラックを記述します。測定されるこれらの特徴の多くは重複しているため、こうした重複を取り除き、より少ないプロパティでそれぞれのトラックを説明する必要があります。これが、まさに PCA が目指すものです。 このブログ記事では、カリフォルニア大学アーバイン校のアイリス (あやめ) 標準データセットで実行されている PCA を使用して、Jupyter ノートブックのコードの簡単な例で PCA の基本を紹介し、次に Amazon SageMaker 環境で動作する PCA を紹介します。Amazon SageMaker を使用するメリットのいくつかを指摘します。 PCA とは? PCA は、できるだけ多くの情報を保持しながら、d 個の特徴を p << d 個の特徴に圧縮する技術です。PCA のための古典的なデモンストレーションは、画像で行われます。白黒画像は、各ピクセルのグレースケールを決定する整数の n X d の行列として表すことができます。PCA は、圧縮された画像が元の画像とほぼ同じに見えるように、nd 個ではなく、(n+d) p 個で保存できるマトリックスによる低ランクの表現を提供します。機械学習 (ML) の文脈では、PCA は次元削減技術ということになります。特徴の数が多い場合、ML アルゴリズムには過剰適合のリスクがあるか、トレーニングに時間がかかりすぎることになります。そのために、PCA は入力の次元を減らすことができます。PCA が次元を減らす方法は、相関関係に基づいています。2 つの特徴が相関していて、一方の値が与えられると、もう一方の値について知識を使って推測することができます。p をターゲットの次元とする PCA は、これらの線形関数が元の d 個の特徴を最も正確に予測するような p […]

Read More

Amazon SageMaker が PyTorch と TensorFlow 1.8 のサポートを開始

今日からは、PyTorch の深層学習モデルのトレーニングとデプロイを Amazon SageMaker で簡単に行うことができます。PyTorch は、TensorFlow、Apache MXNet、Chainer に加え、Amazon SageMaker がサポートすることになった 4 番目の深層学習フレームワークです。  他のフレームワークとまったく同様、普段通りに PyTorch スクリプトを記述し、Amazon SageMaker のトレーニングに分散型トレーニングのクラスター設定、データ転送、さらにはハイパーパラメータのチューニングまで処理を任せることが可能になりました。推論の点では、Amazon SageMaker は、マネージド型で可用性が高く、また必要に応じて自動的にスケールアップ可能なオンラインのエンドポイントを提供します。 PyTorch に加え、最新の TensorFlow 安定版 (1.7 and 1.8) も追加しており、これらバージョンの新機能である tf.custom_gradient や、既成の BoostedTree 推定関数などを今日から活用していくことが可能です。Amazon SageMaker の TensorFlow 推定関数は、最新バージョンを使うようデフォルトで設定されているため、ユーザーはコードを更新する必要すらありません。 それぞれの深層学習フレームワークが得意とする分野は異なるため、開発者にとっては多くの深層学習フレームワークをサポートしていることが重要です。PyTorch は深層学習の研究者がよく使用するフレームワークですが、その柔軟性と使いやすさから開発者の間でも急速に普及してきています。TensorFlow は定評があり、リリースごとに素晴らしい機能を追加し続けています。私たちはこれらのエンジンのほか、MXNet や Chainer のような定評ある他のエンジンの開発も継続していきます。 Amazon SageMaker における PyTorch PyTorch フレームワークは独特です。Pytorch が TensorFlow、MXNet、Caffe など他のフレームワークと異なるのは、リバースモード自動微分という技術を使用しているためで、これにより動的にニューラルネットワークを構築できます。また、Python とも密に統合されており、一般的な Python の制御フローを自身のネットワーク内で使用することや、Cython、Numba、NumPy などを使用して新しいネットワーク層を作ることが可能です。そして最後に、PyTorch は高速であり、MKL、CuDNN、NCCL […]

Read More

Amazon SageMaker エンドポイント用のサーバーレスフロントエンドを構築する

Amazon SageMaker は、AWS の本番環境に機械学習モデルを構築、トレーニング、およびデプロイするための強力なプラットフォームです。この強力なプラットフォームを Amazon Simple Storage Service (S3)、Amazon API Gateway、および AWS Lambda のサーバレス機能と組み合わせることで、Amazon SageMaker エンドポイントを、様々なソースから新しい入力データを受け入れて、その推論の結果をエンドユーザに提示する Web アプリケーションへと変換できるようになりました。 このブログ記事では、有名な Iris データセットモデルを使って、簡単な SageMaker モデルを生成し、それを Amazon SageMaker エンドポイントとしてデプロイします。次に、Chalice パッケージを使用して、API Gateway エンドポイントを作成し、SageMaker エンドポイントを呼び出す Lambda 関数をトリガーし、独自の予測を行います。最後に、アプリケーションのユーザーインターフェイスとして機能させるために、Amazon S3 で静的 HTML フォームを生成します。最終的に製品は、新しいユーザーデータを受け入れ、そのデータに基づいてオンデマンド予測を生成し、ユーザーのブラウザに戻ることができるシンプルな Web アプリケーションとなります。 これは AWS Lambda アーキテクチャバージョンで、SageMaker のドキュメントが提案するアーキテクチャと類似していますが、全てのユースケースに対して最適なアーキテクチャではない可能性があります。レイテンシーが懸念される場合は、データ変換を SageMaker エンドポイントでホストした Docker コンテナに直接組み込むことが合理的です。けれども、API Gateway と Lambda の導入は、複数の潜在的なフロントエンドおよび / またはデータソースが 1 つのエンドポイントとやり取りしているような複雑なアプリケーションを使用している場合に最適なのです。このブログ記事を参考に、デモ、コンセプト検証 […]

Read More

Amazon SageMaker ニューラルトピックモデルのご紹介

構造化データおよび非構造化データは前例のないペースで生成されているため、膨大な量の情報を整理し、検索し、理解するための適切なツールが必要です。こういったデータの有効活用は難しいことです。これは特に非構造化データの場合に当てはまります。企業が持つデータの 80% 以上が構造化されていないと推定されています。 テキスト分析とは、非構造化テキストを意味のあるデータに変換することで事実に基づく意思決定をサポートすることを目的とした分析プロセスです。トピックモデリング、エンティティとキーフレーズの抽出、センチメント分析、および共参照関係の解決など、テキスト分析にはさまざまな技術が使用されています。 それでは、トピックモデリングとは一体何なのでしょうか? トピックモデリングとは、ドキュメントのコーパスを「トピック」に編成するために使用されます。これは、ドキュメント内の単語の統計的分布に基づくグループ化のことを指します。完全マネージド型のテキストアナリティクスサービスである Amazon Comprehend は、顧客からのフィードバックの整理、インシデントやワークグループ文書のサポートなど一般的なユースケースに最も適した、事前設定済みのトピックモデリング API を提供します。Amazon Comprehend は、トークン化やモデルのトレーニング、パラメータの調整などのトピックモデリングに関連する多くの一般的な手順を取り除くために提案されたトピックモデリングの選択肢です。Amazon SageMaker のニューラルトピックモデル (NTM) は、特定の文体やドメインのテキストコーパス上でのモデルのトレーニングやトピックモデルの Web アプリケーションの一部としてのホスティングなど、細かく制御されたトレーニングや最適化、そしてトピックモデルのホスティングが必要なユースケースに対応しています。Amazon SageMaker NTM は最先端のトピックモデリングの出発点を提供し、それにより顧客はネットワークアーキテクチャやデータセットの特異性に対応するためのハイパーパラメーターの変更、そしてそれらのアプリケーションに基づいた文書モデリングの精度、人間の解釈可能性、および学習されたトピックの粒度などののような多数のメトリックとの間のトレードオフの調整といった柔軟性を手に入れることができます。さらに、Amazon SageMaker NTM は簡単に構成可能なトレーニングおよびホスティングインフラストラクチャ、自動的なハイパーパラメータの最適化、Auto Scaling による完全マネージド型のホスティングなど、Amazon SageMaker プラットフォームのフルパワーを活用しています。 トピックモデリングの技術的定義は、各トピックは単語の分布であり、各文書は一連の文書 (コーパスとも呼ばれる) にわたるトピックの混合物であるということです。たとえば「自転車」、「車」、「マイル」、「ブレーキ」などの単語が頻繁に出現するドキュメントのコレクションは、「輸送」に関するトピックを共有する可能性があります。もしも別のコレクションが「SCSI」、「ポート」、「フロッピー」、「シリアル」などの単語を共有する場合、「コンピュータ」に関するトピックについて議論している可能性があります。トピックモデリングのプロセスとは、すべてのトピックへの単語の分布やトピックの混合分布などの隠れた変数を文書全体のコレクションを観察することにより推測することなのです。次の図は、単語、トピック、およびドキュメントの間の関係性を示しています。 トピックモデリングには、検出されたトピックに基づくドキュメントの分類、トピックにマップされたタグを使用したコンテンツの自動タグ付け、ドキュメント内のトピックを使用したドキュメントの要約、トピックを使用した情報検索、トピックの類似性に基づくコンテンツの推奨などの多くの実践的なユースケースが存在します。トピックモデリングは、ダウンストリームのテキストに関連した機械学習タスクのための機能エンジニアリングステップとしても使用できます。また、トピックモデリングは根底にあるテーマとの一連の観測を記述しようと試みる一般的なアルゴリズムでもあるのです。ここではテキストドキュメントに焦点を当てていますが、この観測は他のタイプのデータにも適用可能です。例えば、トピックモデルはインターネットサービスプロバイダや企業ネットワークのネットワーク上のピアツーピアアプリケーションの発見など、他の離散データユースケースのモデリングにも使用されます。 Amazon SageMaker ニューラルトピックモデル (NTM) Amazon SageMaker は、Jupyter ノートブックホスティングサービス、拡張性の高い機械学習トレーニングサービス、Web スケールの組み込みアルゴリズム、モデルホスティングサービスを提供するエンドツーエンドの機械学習プラットフォームです。Amazon SageMaker Neural Topic Model (NTM) と Amazon SageMaker Latent Dirichlet Allocation (LDA) の 2 […]

Read More

XGBoost と Amazon SageMaker を使った機械学習の簡素化

機械学習は、コンピュータビジョン、自動運転車、自然言語処理といった、これまでになかったユースケースを可能にした強力なツールです。機械学習は有望な技術ではありますが、実際に実装するとなると複雑です。このブログ記事では、XGBoost というシンプルかつパワフルで、いろんなユースケースに対応可能な機械学習ライブラリについてお話します。XGBoost を Amazon SageMaker のサンプルデータセットで実行するためのステップバイステップチュートリアルもあり、その中で、クレジットカード債務不履行になる可能性を予測するモデルの構築方法が紹介されています。 XGBoost とは ? XGBoost (extreme gradient boosting) は、勾配ブースティング木を使ったアルゴリズムを、広く普及する効率的なオープンソース使って実装するソフトウェアです。勾配ブースティングとは、より単純で弱いモデルセットの推定値を組み合わせることで、目標変数を正確に予測しようとする機械学習アルゴリズムです。決定木モデルに勾配ブースティングをスケーラブルに適用することで、XGBoost は機械学習競争の中でも非常によく機能させることができます。さらに、様々なデータタイプ、関係、および分散を確実に処理します。モデルのパフォーマンスを向上するためにチューニングできる変数であるハイパーパラメータを数多く提供できます。こうした柔軟性により、XGBoost は様々な機械学習の問題を解決できるのです。 XGBoost で扱われる問題とユースケース XGBoost が最もよく解決する問題は 3 つ、分類、回帰、そしてランク付けです。 分類分類は、入力値を取りそれを 2 つ以上のカテゴリに分類することが目標です。分類のユースケースの例として、不正検出が挙げられます。不正検出とは、トランザクションに関する情報を取得し、それが不正か否かを判断することです。XGBoost に過去のトランザクションのデータセットを与えると、不正であるか否かにかかわらず、入力トランザクションデータをそれが不正である可能性にマッピングする関数を学習します。 回帰 回帰では、入力をクラスの離散数にマッピングする代わりに、目標が数値として出力されます。回帰で使われる問題の一例は、家の売却価格の予測です。この場合、XGBoost に住宅や販売価格に関する履歴データを与えると、住宅に関するメタデータが与えられた場合に、その家の販売価格を予測する機能を習得するのです。 ランク付けクエリと一連のドキュメントが与えられたとします。ランク付けは、ドキュメントの相対的な重要性を見つけ出し、関連性に基づいて順序付けすることが目標です。ランク付けに関するユースケースの一例は、電子商取引用ウェブサイトでの商品検索です。検索結果、クリック、および購入成功例に関するデータを活用し、XGBoost をトレーニングに適用することができます。こうすることで、検索する製品の関連性スコアを示すモデルが生成されるのです。 Amazon SageMaker での XGBoost の利用 XGBoost はダウンロード可能なオープンソースライブラリで、ほとんどどこででも実行できるため、Amazon SageMaker でも使用可能です。Amazon SageMaker は、機械学習ワークフロー用のマネージド型トレーニングおよびホスティングプラットフォームです。開発者やデータサイエンティストは、Amazon SageMaker を使用して、どんなインフラストラクチャも管理することなく、機械学習モデルをトレーニングし、デプロイすることができます。Amazon SageMaker プラットフォームに、独自のトレーニングとホスティングコンテナをいつでも持ち込むことができますが、XGBoost を含む Amazon SageMaker に付属のアルゴリズムとライブラリを活用することも可能です。Amazon SageMaker で XGBoost を使う理由は、数多くあります。 すぐに使える分散型トレーニングXGBoost […]

Read More