Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence を利用したノートブック用のインタラクティブなデータ準備ウィジェット。垂直検索。あい。

Amazon SageMaker Data Wrangler を利用したノートブック用のインタラクティブなデータ準備ウィジェット

Anaconda が実施した 2020 年のデータ サイエンティストの調査によると、データの準備は、機械学習 (ML) およびデータ分析のワークフローにおける重要なステップの 66 つであり、データ サイエンティストにとって非常に時間がかかることがよくあります。 データ サイエンティストは、データの読み込み (19%)、クリーニング (26%)、データの視覚化 (21%) など、データの準備と分析のタスクに約 XNUMX% の時間を費やしています。

Amazon SageMakerスタジオ ML 用の最初の完全統合開発環境 (IDE) です。 ワンクリックで、データ サイエンティストと開発者がすばやく起動できます スタジオノートブック データセットを探索し、モデルを構築します。 GUI ベースのインタラクティブなインターフェイスを好む場合は、次を使用できます。 AmazonSageMakerデータラングラー、300 を超える組み込みのビジュアライゼーション、分析、および変換を使用して、コードを XNUMX 行も記述することなく、Spark によってサポートされるデータを効率的に処理します。

データラングラー 組み込みのデータ準備機能を提供するようになりました Amazon SageMaker Studio ノートブック これにより、ML の実践者は、ノートブック内で直接数回クリックするだけで、データの特性を視覚的に確認し、問題を特定し、データ品質の問題を修正できます。

この記事では、 データラングラー データ準備ウィジェットは、Pandas データ フレームの上に主要な視覚化を自動的に生成して、データ分布を理解し、データ品質の問題を検出し、各特徴の外れ値などのデータの洞察を明らかにします。 これは、データを操作し、アドホック クエリでは見過ごされがちな洞察を発見するのに役立ちます。 また、修復する変換を推奨し、UI にデータ変換を適用し、ノートブック セルにコードを自動的に生成できるようにします。 この機能は、SageMaker Studio が利用可能なすべてのリージョンで利用できます。

ソリューションの概要

この新しいウィジェットがどのようにデータ探索を大幅に容易にし、シームレスなエクスペリエンスを提供して、データ エンジニアと実務者の全体的なデータ準備エクスペリエンスを向上させるかをさらに理解しましょう。 このユース ケースでは、 タイタニックデータセット、ML コミュニティで人気のあるデータセットで、現在は サンプルデータセット SageMaker Data Wrangler をすぐに使い始めることができます。 元のデータセットは、 OpenML、およびこのデモ用に Amazon による合成データ品質の問題を追加するために変更されました。 変更されたバージョンのデータセットをパブリック S3 パスからダウンロードできます s3://sagemaker-sample-files/datasets/tabular/dirty-titanic/titanic-dirty-4.csv.

前提条件

この投稿で説明されているすべての機能を実際に体験するには、次の前提条件を満たしている必要があります。

  1. AWS アカウントを持っていることを確認し、 AWSマネジメントコンソール, AWS IDおよびアクセス管理 (IAM) 使用する権限 アマゾンセージメーカー および Amazon シンプル ストレージ サービス (Amazon S3) リソース。
  2. パブリック S3 パスからサンプル データセットを使用する s3://sagemaker-sample-files/datasets/tabular/dirty-titanic/titanic-dirty-4.csv または代わりに S3バケットにアップロードします あなたのアカウントに。
  3. SageMaker ドメインにオンボードし、Studio にアクセスしてノートブックを使用します。 手順については、を参照してください。 AmazonSageMakerドメインにオンボード. 既存の Studio を使用している場合は、 スタジオの最新バージョン.

データ探索ウィジェットを有効にする

Pandas データ フレームを使用している場合、Studio ノートブックのユーザーはデータ探索ウィジェットを手動で有効にして、デフォルトで各列の上に新しい視覚化が表示されるようにすることができます。 このウィジェットには、数値データのヒストグラムと、その他の種類のデータの棒グラフが表示されます。 これらの表現により、データ分布をすばやく理解し、欠落している値や異常値を発見することができます。列ごとにボイラープレート メソッドを記述する必要はありません。 各ビジュアルのバーにカーソルを合わせると、分布をすばやく理解できます。

Studio を開き、新しい Python 3 ノートブックを作成します。 必ず選択してください データサイエンス3.0 クリックによる SageMaker 画像からの画像 環境を変える

データ探索ウィジェットは、次の画像で使用できます。 デフォルトの SageMaker イメージのリストについては、次を参照してください。 利用可能な Amazon SageMaker イメージ.

  • Python 3 (データ サイエンス) と Python 3.7
  • Python 3 (データ サイエンス 2.0) と Python 3.8
  • Python 3 (データ サイエンス 3.0) と Python 3.10
  • スパーク アナリティクス 1.0 および 2.0

このウィジェットを使用するには、 SageMaker_DataWrangler 図書館。 タイタニック データセットの修正版を S3://sagemaker-sample-files/datasets/tabular/dirty-titanic/titanic-dirty-4.csv Pandas ライブラリで CSV を読み取ります。

import pandas as pd
import boto3
import io
import sagemaker_datawrangler

s3 = boto3.client('s3')
obj = s3.get_object(Bucket='sagemaker-sample-files', Key='datasets/tabular/dirty-titanic/titanic-dirty-4.csv')
df = pd.read_csv(io.BytesIO(obj['Body'].read()))

データ ラングラー データ準備ウィジェット - サンプル ノートブック

データを視覚化する

データが Pandas データ フレームに読み込まれた後、次を使用するだけでデータを表示できます。 df or display(df). データ準備ウィジェットは、行を一覧表示するだけでなく、データ品質に関する洞察、視覚化、およびアドバイスを生成します。 機能とターゲットの分析情報、配布情報、またはレンダリング データの品質チェックを生成するために、追加のコードを記述する必要はありません。 データ フレーム テーブルのヘッダーを選択して、データ品質に関する警告がある場合はそれを示す統計の概要を表示できます。

データを視覚化する

各列には、データ型に基づく棒グラフまたはヒストグラムが表示されます。 デフォルトでは、有意義な洞察を生成するために、ウィジェットは最大 10,000 件の観測をサンプリングします。 また、データセット全体でインサイト分析を実行するオプションも提供します。

次のスクリーンショットに示すように、このウィジェットは、列にカテゴリ データまたは量的データがあるかどうかを識別します。

カテゴリーまたは量的データ

カテゴリ データの場合、ウィジェットはすべてのカテゴリを含む棒グラフを生成します。 たとえば、次のスクリーンショットでは、列 Sex データのカテゴリを識別します。 バーの上にカーソルを合わせることができます (男性 この場合) 値を持つ行の総数など、これらのカテゴリの詳細を表示します。 male および視覚化されたデータセット全体におけるその分布 (この例では 64.07%)。 また、カテゴリ データの欠損値の合計パーセンテージが別の色で強調表示されます。 次のような定量データの場合 ticket 列に、無効な値の割合とともに分布が表示されます。

ノートブックで標準の Pandas ビジュアライゼーションを表示する場合は、選択できます。 パンダ テーブルを表示する 次のスクリーンショットに示すように、ウィジェットと Pandas 表現を切り替えます。

パンダ テーブルを表示する

データ ラングラー テーブルを表示する

列のデータについてより詳細な洞察を得るには、列のヘッダーを選択して、その列専用のサイド パネルを開きます。 ここでは、XNUMX つのタブを確認できます。 分析 および データ品質.

インサイトとデータ品質

次のセクションでは、これら XNUMX つのオプションについて詳しく説明します。

分析

  分析 タブには、各列の詳細と説明が表示されます。 このセクションには、モード、一意の数、欠落/無効な値の比率とカウントなどの集約された統計がリストされ、ヒストグラムまたは棒グラフを使用してデータ分布が視覚化されます。 次のスクリーンショットでは、選択した列に対して生成されたわかりやすい視覚化とともに表示されるデータの洞察と分布情報を確認できます。 survived.

データ品質

Studio のデータ準備ウィジェットでは、識別されたデータ品質の問題がヘッダーの警告サインで強調表示されます。 ウィジェットは、基本的なもの (欠損値、定数列など) からより ML 固有のもの (ターゲットの漏れ、低予測スコア機能など) まで、データ品質の問題の全範囲を特定できます。 ウィジェットは、データ品質の問題を引き起こしているセルを強調表示し、行を再編成して問題のあるセルを一番上に配置します。 データ品質の問題を解決するために、ウィジェットにはいくつかのトランスフォーマーが用意されており、ボタンをクリックするだけで適用できます。

データ品質セクションを調べるには、列ヘッダーを選択し、サイド パネルで データ品質 タブ。 Studio 環境に次のように表示されます。

データ品質タブ

で利用可能なさまざまなオプションを見てみましょう データ品質 タブ。 この例では、データに基づいて定量的な列として検出された age 列を選択します。 次のスクリーンショットでわかるように、このウィジェットは、次のような最も一般的なアクションを含む、適用できるさまざまなタイプの変換を提案します。 新しい値に置き換える, ドロップがありません, 中央値に置き換えるまたは 平均に置き換える. ユースケース (解決しようとしている ML の問題) に基づいて、データセットにそれらのいずれかを選択できます。 また、 ドロップカラム 機能を完全に削除する場合は、オプション。

年齢

選ぶとき コードの適用とエクスポート、変換はデータ フレームのディープ コピーに適用されます。 変換が正常に適用されると、データ テーブルが分析情報と視覚化で更新されます。 変換コードは、ノートブックの既存のセルの後に生成されます。 このエクスポートされたコードを後で実行して、データセットに変換を適用し、必要に応じて拡張できます。 生成されたコードを直接変更することで、変換をカスタマイズできます。 適用する場合 ドロップがありません Age 列のオプションを使用すると、次の変換コードがデータセットに適用され、ウィジェットの下のセルにもコードが生成されます。

#Pandas code generated by sagemaker_datawrangler
output_df = df.copy(deep=True) 

#Code to Drop missing for column: age to resolve warning: Missing values 
output_df = output_df[output_df['age'].notnull()]

以下は、のコード スニペットの別の例です。 中央値に置き換える:

#Pandas code generated by sagemaker_datawrangler
output_df = df.copy(deep=True) 

#Code to Replace with median for column: age to resolve warning: Missing values 
output_df['age']=output_df['age'].fillna(output_df['age'].median(skipna=True))

次に、データ準備ウィジェットのターゲット インサイト機能を見てみましょう。 を使用したいとします。 survived 乗客が生き残るかどうかを予測する機能。 を選択 survived 列ヘッダー。 サイド パネルで、 ターゲット列として選択. の理想的なデータ分布 survived 機能は XNUMX つのクラスのみを持つ必要があります: はい (1)またはいいえ(0)、タイタニック号墜落の生存確率を分類するのに役立ちます。 ただし、選択したターゲット列のデータの不一致により、生き残った機能は 0, 1, ?, unknown, yes.

ターゲット列として選択

選択したターゲット列に基づいて問題の種類を選択します。 Classification or 不具合. 生き残った列の場合、問題の種類は分類です。 選ぶ ラン ターゲット列の洞察を生成します。

生き残りました

データ準備ウィジェットには、ターゲット列のデータ品質に関する問題を解決するための推奨事項とサンプルの説明を含むターゲット列の洞察が一覧表示されます。 また、列内の異常なデータが自動的に強調表示されます。

レコメンデーションを使用して列のインサイトをターゲットにする

推奨される変換を選択します レアターゲット値をドロップ、まれなターゲット値の観測が少ないためです。

ドロップレア対象値

選択した変換が Pandas データ フレームに適用され、珍しいターゲット値が残存列から削除されました。 次のコードを参照してください。

# Pandas code generated by sagemaker_datawrangler
output_df = df.copy(deep=True)

# Code to Drop rare target values for column: survived to resolve warning: Too few instances per class 
rare_target_labels_to_drop = ['?', 'unknown', 'yes']
output_df = output_df[~output_df['survived'].isin(rare_target_labels_to_drop)]

適用された変換の結果は、データ フレームにすぐに表示されます。 データ準備ウィジェットを使用して適用されたデータ準備アクティビティを追跡するために、変換されたコードは次のノートブック セルにも生成されます。

まとめ

この投稿では、Studio データ準備ウィジェットがデータ分布の分析、ツールによって生成されたデータ品質の洞察の調査、各重要な機能の外れ値などの潜在的な問題の発見にどのように役立つかについてのガイダンスを提供しました。 これにより、全体的なデータ品質が向上し、高品質のモデルをトレーニングするのに役立ちます。また、ユーザー インターフェイスでデータを変換し、ノートブック セルのコードを自動的に生成できるようにすることで、未分化の重労働を取り除きます。 次に、このコードを MLOps パイプラインで使用して、データ ラングリング パイプラインの構築とデプロイを迅速化することで、再現性を構築し、繰り返しのタスクで時間を浪費せず、互換性の問題を軽減できます。

SageMaker Data Wrangler または Studio を初めて使用する場合は、以下を参照してください。 SageMaker Data Wrangler の使用を開始する. この投稿に関する質問がある場合は、コメント セクションに追加してください。


著者について

Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence を利用したノートブック用のインタラクティブなデータ準備ウィジェット。垂直検索。あい。パート・パテル サンフランシスコ ベイエリアにある AWS のソリューション アーキテクトです。 Parth は、クラウドへの移行を加速し、AWS クラウドでの導入と成長を成功させるためにお客様をガイドします。 彼は、機械学習、環境の持続可能性、およびアプリケーションのモダナイゼーションに焦点を当てています。

Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence を利用したノートブック用のインタラクティブなデータ準備ウィジェット。垂直検索。あい。イシャドゥア サンフランシスコ ベイエリアを拠点とするシニア ソリューション アーキテクトです。 彼女は、AWS Enterprise のお客様の目標と課題を理解し、クラウドネイティブな方法でアプリケーションを構築する方法を指導することで、AWS Enterprise のお客様の成長を支援し、それらの回復力とスケーラビリティを確保しています。 彼女は、機械学習技術と環境の持続可能性に情熱を注いでいます。

Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence を利用したノートブック用のインタラクティブなデータ準備ウィジェット。垂直検索。あい。ハリハラン・スレッシュ AWS のシニア ソリューション アーキテクトです。 彼は、データベース、機械学習、および革新的なソリューションの設計に情熱を注いでいます。 AWS に入社する前は、Hariharan は製品アーキテクト、コア バンキング実装スペシャリスト、および開発者であり、11 年以上にわたって BFSI 組織と協力してきました。 テクノロジー以外では、パラグライダーとサイクリングを楽​​しんでいます。

Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence を利用したノートブック用のインタラクティブなデータ準備ウィジェット。垂直検索。あい。ダニ・ミッチェル アマゾン ウェブ サービスの AI/ML スペシャリスト ソリューション アーキテクトです。 彼は Computer Vision のユースケースに焦点を当てており、EMEA 全域の顧客が ML ジャーニーを加速するのを支援しています。

タイムスタンプ:

より多くの AWS機械学習