Amazon Web Services ブログ

Category: SageMaker

【開催報告】第10回Amazon SageMaker 事例祭り

アマゾン ウェブ サービス ジャパン株式会社 パートナーソリューションアーキテクトの小田桐です。 AWS Japan 目黒オフィスでは「Amazon SageMaker 事例祭り」(Twitter: #sagemaker_fes) を定期的に開催しています。2019年11月28日に開催された 第10回 Aazon SageMaker 事例祭り では、AWS Japan のソリューションアーキテクトによるサービスの最新情報や技術情報と、Amazon SageMaker をご利用いただいているお客様をゲストスピーカーにお招きし、実際に導入頂いたお客様による「体験談」をお話し頂きました。

Read More

Amazon SageMaker Operators for Kubernetes のご紹介

AWS より、Amazon SageMaker Operators for Kubernetes をご紹介いたします。この新機能を使用すると、開発者およびデータサイエンティストは、Amazon SageMaker における 機械学習 (ML) モデルのトレーニング、チューニング、デプロイを、Kubernetes を介して簡単に行うことができます。Kubernetes クラスターに Amazon SageMaker Operators をインストールすると、Kubernetes API や “kubectl” といったコマンドラインの Kubernetes ツールをネイティブに使用して Amazon SageMaker ジョブを作成することが可能です。 多くの AWS のお客様が、Amazon Elastic Kubernetes Service (EKS) といったマネージドサービスがよく使用されるコンテナ化アプリケーションをデプロイおよび管理するために、オープンソースの汎用コンテナオーケストレーションシステムである Kubernetes を使用しています。これにより、データサイエンティストおよび開発者は、反復可能な ML パイプラインのセットアップ、トレーニングや推論のワークロードに対する制御能力の向上などが可能です。しかし ML ワークロードをサポートするには、カスタムコードの記述による基盤となる ML インフラストラクチャの最適化、高可用性と高信頼性の確保、データサイエンスに対する生産性向上ツールの提供、しかるべきセキュリティ要件および規制要件への準拠が依然必要です。例えば、Kubernetes ユーザーがトレーニングや推論に GPU を使用する際、Kubernetes による GPU ワークロードのスケジューリングとスケーリングの設定を変更して、使用率、スループット、可用性を向上させる必要が出てくるケースが多々あります。また、Kubernetes ユーザーはトレーニング済みモデルを本番環境にデプロイして推論を実行する際に、複数のアベイラビリティーゾーンに存在する Auto Scaling クラスターのセットアップおよび最適化に余計な時間を取られてしまいます。 Amazon SageMaker […]

Read More

Amazon SageMaker Processing – フルマネージドなデータ加工とモデル評価

2019年12月3日 Amazon SageMaker の新しい機能であり、データの前処理や後処理、モデルの評価といったワークロードをフルマネージドなインフラストラクチャの上で簡単に実行する機能である、Amazon SageMaker Processing を発表できることを嬉しく思います。 精度の高い機械学習(ML)モデルを学習するためには、多くの異なるステップを必要としますが、以下のようなデータの前処理より重要なものはないでしょう。 機械学習アルゴリズムが活用できる入力フォーマットへデータセットを変換 カテゴリカル特徴量のOne-Hot エンコーディングのような、既存の特徴量をさらに表現力の高い特徴量へ変換 数値型特徴量のリスケールや平準化 住所をGPSの座標に置き換えるような、高レベルな特徴量の作成 自然言語処理を適用するための文章のクリーニングやトークン化 これらのタスクは、データセットに応じて異なるスクリプトを実行することになり、そして、後で学習の際に使われるための加工済データを保存します。あなたが想像する通り、機械学習チームにとって、これらを手作業で行ったり、自動化ツールを構築してスケールさせることは魅力的なな計画とは言えません。同様のことが後処理ジョブ(フィルタリングや照合など)やモデル評価ジョブ(異なるテスト用データセットに対するスコアリング)にも言えるかも知れません。 これらの課題を解決するために、 Amazon SageMaker Proscessing が開発されました。より詳細をご紹介させて下さい。 Amazon SageMaker Processing の紹介 Amazon SageMaker Processing はデータサイエンティストと機械学習エンジニアが前処理、後処理、モデル評価といったワークロードを Amazon SageMaker 上で簡単に行うための新しい Python SDK を導入します。 この SDK はデータセットの変換のために使われるおそらく最も人気のあるライブラリである scikit-learn 向けの SageMaker の組み込みコンテナを使います。 必要に応じて、特定の Docker イメージに制限されることなく、独自の Docker イメージをお使い頂くことが出来ます。これにより、最大限の柔軟性を提供し、SageMaker Processing や Amazon ECS や Amazon Elastic Kubernetes Servicesなどの AWS […]

Read More

Amazon SageMaker Debugger – 機械学習モデルのデバッガ

2019年12月3日、機械学習(ML)学習時に起こる複雑な問題を自動的に識別する Amazon SageMaker の新しい機能、Amazon SageMaker Debugger を発表できて非常にうれしく思います。 機械学習モデルの構築と学習は、サイエンスと工芸の融合です(魔術と言う人もいます)。データセットの収集から準備、さまざまなアルゴリズムの実験、最適なトレーニングパラメーター(恐ろしいハイパーパラメーター)の探索まで、機械学習を実行する人は高性能のモデルを提供するために多くのハードルをクリアする必要があります。これがまさに、機械学習ワークフローを簡素化し高速化する、モジュール式のフルマネージドサービス Amazon SageMaker を構築する理由なのです。

Read More

Amazon SageMaker Studio: 機械学習のための初の統合開発環境

2019年12月3日、Amazon SageMaker Studioという機械学習のための初の統合開発環境(IDE)を提供できることを非常に嬉しく思います。 2017年に Amazon SageMaker がリリースされてからしばらく経ち、このサービスをご利用いただいているお客様の数は増加しています。機械学習開発ワークフローには反復的なプロセスが必要ですが、機械学習ツールが成熟していないために開発者は大変な思いをしてきました。従来のソフトウェア開発時に開発者が当たり前に使用する多くのツール(デバッガ、プロジェクトマネジメントツール、コラボレーション機能、モニタリングツールなど)は、まだ機械学習用には存在していないのです。

Read More

Amazon SageMaker Experiments – 機械学習モデルの整理、追跡、比較、評価

2019年12月3日、機械学習(ML)実験とモデルバージョンの整理、追跡、比較、評価を可能にする Amazon SageMaker の新機能である、Amazon SageMaker Experiments を発表できて非常にうれしく思います。 機械学習では非常に多くの反復プロセスを含みます。1つのプロジェクトの過程で、データサイエンティストと 機械学習エンジニアは、最大限の精度を求めて数千の異なるモデルを定期的に学習を行います。実際、アルゴリズム、データセット、および学習パラメーター(別名ハイパーパラメーター)の組み合わせの数は無限に存在します。それはまさに「干し草の山の中にある1本の針を探す」ということわざのように無駄骨を折る苦労を伴います。

Read More

Amazon Aurora の新機能 – データベースから直接機械学習を使用する

機械学習により、データからより良いインサイトを得ることができます。しかし、ほとんどの構造化データはどこに保存されているのでしょうか? データベースに保存されています! 現在、リレーショナルデータベースのデータで機械学習を使用するには、データベースからデータを読み取り、機械学習モデルを適用するカスタムアプリケーションを開発する必要があります。このアプリケーションを開発するには、データベースとインターラクションして。機械学習を使用できるようにするためのスキルが必要です。これは新しいアプリケーションであり、パフォーマンス、可用性、およびセキュリティを管理する必要があります。 リレーショナルデータベースのデータに機械学習を適用することを簡単にすることができますか? 既存のアプリケーションでも可能ですか? 本日より、Amazon Aurora は、2 つの AWS Machine Learning サービスとネイティブに統合されます。 Amazon SageMaker。カスタム機械学習モデルを迅速に構築、トレーニング、デプロイする機能を提供するサービスです。 Amazon Comprehend。機械学習を使用してテキストのインサイトを見つける自然言語処理 (NLP) サービスです。 この新しい機能を使用すると、クエリで SQL 関数 を使用して、リレーショナルデータベースのデータに機械学習モデルを適用できます。たとえば、Comprehend を使用してユーザーコメントの センチメント を検出したり、SageMakerで構築されたカスタム機械学習モデルを適用したりして、お客様の「解約」のリスクを推定できます。 解約は「変化」と「ターン」を混ぜた言葉で、サービスの使用を停止するお客様を説明するために使用されます。 機械学習サービスからの追加情報を含む大規模なクエリの出力を新しいテーブルに保存したり、機械学習の経験を必要とせずにクライアントが実行する SQL コードを変更するだけで、アプリケーションでこの機能を対話的に使用したりできます。 最初に Comprehend を使用し、次に SageMaker を使用して、Aurora データベースからできることの例をいくつか見てみましょう。 データベース権限の設定 最初のステップは、次の使用したいサービスにアクセスするためのデータベース許可を付与することです。Comprehend、SageMaker、またはその両方。 RDS コンソール で、新しい Aurora MySQL 5.7 データベースを作成します。利用可能な場合、リージョンのエンドポイントの [Connectivity&security] タブで、[IAM ロールの管理] セクションを探します。 そこで、Comprehend と SageMaker をこのデータベースクラスターに接続します。SageMaker の場合、デプロイされた機械学習モデルの エンドポイント の Amazon リソースネーム […]

Read More

Amazon SageMaker マルチモデルエンドポイントを使用して推論コストを削減する

ビジネスでは、コホートやセグメントに基づくモデルではなく、ユーザーごとの機械学習 (ML) モデルをますます発展させています。個々のユーザーデータに基づき、数百から数十万のあらゆる場所からのカスタムモデルをトレーニングしています。たとえば、音楽ストリーミングサービスでは、各リスナーの再生履歴に基づくカスタムモデルをトレーニングし、音楽のおすすめをパーソナライズしています。タクシーサービスでは、各年の交通パターンに基づくカスタムモデルをトレーニングし、乗客の待ち時間を予測しています。 ユースケースごとにカスタム ML モデルを構築すると、推論の精度が向上するという利点がありますが、モデルのデプロイコストが大幅に増大するという欠点もあり、本番環境で多くのモデルを管理するのが困難となっています。このような課題は、同時にすべてのモデルにアクセスはしないがいつでも利用可能にしておく必要がある場合により顕著になります。Amazon SageMaker マルチモデルエンドポイントは、このような弱点に対応し、複数の ML モデルをデプロイする、スケーラブルでコスト効率の高いソリューションをビジネスに提供します。 Amazon SageMaker はモジュラー型のエンドツーエンドサービスで、大規模な ML モデルの構築、トレーニング、デプロイを容易にします。ML モデルはトレーニング後、完全マネージド型でリアルタイムの推論を低レイテンシーで実行可能な Amazon SageMaker エンドポイントにデプロイできます。単一のエンドポイントに複数のモデルをデプロイし、マルチモデルエンドポイントを使用する単一のサービングコンテナにより稼働させることが可能になります。エンドポイントと、その基盤となるコンピューティングインスタンスの利用率増加により、大規模な ML のデプロイ管理が容易になり、モデルのデプロイコストが低下します。 本記事では Amazon SageMaker マルチモデルエンドポイントを紹介し、この新機能を導入して XGBoost を使用することで、個々の市場セグメントの利用料金を予測する方法を説明します。本記事では、マルチモデルエンドポイントで 10 個のモデルを実行する場合と、個別のエンドポイント 10 個を使用する場合との比較を行いました。この結果、以下の図に示すように、月あたり 3,000 USD を節約できました。 マルチモデルエンドポイントは、数百から数千のモデルに規模を変えて容易に対応できます。また本記事では、エンドポイントの設定とモニタリングの考慮事項も検討し、1,000 個のモデルでコストを 90% 以上節減した例についてハイライトします。 Amazon SageMaker マルチモデルエンドポイントの概要 Amazon SageMaker により、冗長性の高い複数のアベイラビリティーゾーンで、自動スケーリングの Amazon ML インスタンスにモデルを 1 クリックでデプロイすることが可能になります。インスタンスのタイプと、希望する最大数および最小数を指定すれば、Amazon SageMaker が残りを引き受けます。インスタンスを立ち上げ、モデルをデプロイし、安全な HTTPS エンドポイントを設定します。低レイテンシー、高スループットの推論を実行するため、アプリケーションはこのエンドポイントへの API 呼び出しを含む必要があります。このアーキテクチャーにより、モデルの変更でアプリケーションのコード変更が不要になるため、アプリケーションに新しいモデルを数分で統合できます。Amazon […]

Read More

Amazon EMR、Amazon SageMaker、および AWS Service Catalog で Intuit Data Lake をプロビジョニングする

この投稿では、Intuitの学習内容と AWS 上でのデータレイクの推奨事項を共有します。Intuit Data Lake は、Intuit データプラットフォームの数多くのチームにより構築され、運営されています。Tristan Baker (チーフアーキテクト)、Neil Lamka (プリンシパル製品マネージャー)、Achal Kumar (開発マネージャー)、Nicholas Audo、および Jimmy Armitage のフィードバックとサポートに感謝いたします。 データレイクとは、あらゆる規模で構造化データと非構造化データを保存する、一元化されたリポジトリです。Intuit では、未加工データのパイルなどを作成することは、容易です。しかし、より興味深い課題がその中に存在しています。 AWS アカウントを整理する方法 使用する取得方法 アナリストの必要とするデータの検索方法 データの保存場所 アクセスの管理方法 Intuit の機密データを保護するために必要なセキュリティ措置 このエコシステムで自動化できる部分 この投稿では、Intuit で採用されるアプローチを概説します。ただし、データレイクを構築するには多くの方法 (例: AWS Lake Formation) があることを覚えておくことは重要です。 高いレベルで Intuit Data Lake を作成する際に含まれる技術やプロセスを取り上げます。これには、全体的な構造とアカウントやリソースのプロビジョニングに使用される自動化を含みます。Intuit Data Lake を協力して構築した他のチームやエンジニアから寄せられたシステムの特定の局面でより詳細なブログ投稿について、今後もこのスペースをご覧ください。 アーキテクチャ アカウント構造 データレイクは一般的にデータソースへのアクセスをコントロールする共有サービスを含むハブアカウントにより、hub-and-spoke モデル に従います。この投稿の目的で、ハブアカウントを Central Data Lake と呼びます。 このパターンでは、Central Data Lake […]

Read More