検索可能なメタデータを特徴量に追加する - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

検索可能なメタデータを特徴量に追加する

Amazon SageMaker Feature Store では、すべての機能を検索できます。特徴量を見つけやすくするために、特徴量にメタデータを追加できます。次のタイプのメタデータを追加できます。

  • 説明 — 検索可能な特徴量の説明。

  • パラメータ — 検索可能なキーと値のペア

説明には最大 255 文字を入力できます。パラメータについては、検索でキーと値のペアを指定する必要があります。最大 25 個のパラメータを追加できます。

機能のメタデータを更新するには、 コンソールまたは UpdateFeatureMetadataオペレーションを使用します。

検索可能なメタデータを機能に追加する方法

コンソールまたは Amazon SageMaker Feature Store を使用してAPI、検索可能なメタデータを機能に追加できます。コンソールで Feature Store を使用する手順は、 または をデフォルトのエクスペリエンスAmazon SageMaker StudioAmazon SageMaker Studio Classicとして有効にしているかどうかによって異なります。

  1. の指示に従って Studio コンソールを開きますAmazon SageMaker Studio を起動する

  2. 左側のナビゲーションペインでデータを選択し、ドロップダウンリストを展開します。

  3. ドロップダウンリストから [Feature Store]を選択します。

  4. (オプション) 機能を表示するには、マイアカウント を選択します。共有機能を表示するには、クロスアカウント を選択します。

  5. 機能グループを表示するには、Feature Catalog タブで My account を選択します。

  6. Feature Catalog タブで、クロスアカウントを選択して、他のユーザーが検出可能にする特徴量グループを表示します。作成者 では、機能グループのリソース所有者アカウント ID を表示できます。

  7. [検索] ドロップダウンリストで特徴量を検索できます。

    • (オプション) 検索をフィルタリングするには、検索ドロップダウンリストの横にあるフィルターアイコンを選択します。フィルターを使用して、検索結果のパラメータまたは日付範囲を指定できます。パラメータを検索する場合は、そのキーと値の両方を指定します。機能を簡単に検索するには、時間範囲を指定するか、クエリしない列の選択を解除します。

    • 共有リソースでは、リソース所有者アカウントから適切なアクセス許可が付与されている場合にのみ、機能グループのメタデータまたは機能定義を編集できます。検出可能性アクセス許可だけでは、メタデータまたは機能定義を編集することはできません。アクセス許可の付与の詳細については、「」を参照してくださいクロスアカウントアクセスを有効にする

  8. 特徴量を選択します。

  9. [Edit metadata (メタデータの編集)] を選択します。

  10. [説明] フィールドで、説明を更新します。

  11. [パラメータ][パラメータ]フィールドで、パラメータのキーと値のペアを指定します。

  12. (オプション) [新しいパラメータを追加] を選択して別のパラメータを追加します。

  13. [Save changes] (変更の保存) をクリックします。

  14. [確認] を選択します。

このセクションのコードは、 の UpdateFeatureMetadataオペレーションを使用して AWS SDK for Python (Boto3) 、さまざまなシナリオで検索可能なメタデータを機能に追加します。クエリを送信する他の言語の詳細については、「Amazon SageMaker API リファレンス」の「 も参照してください。

Feature Store の例とリソースの詳細については、「」を参照してくださいAmazon SageMaker Feature Store リソース

Add a list of parameters to a feature

特徴量にパラメータのリストを追加するには、次のフィールドの値を指定します。

  • FeatureGroupName

  • Feature

  • Parameters

次のコード例では、 を使用して AWS SDK for Python (Boto3) 2 つのパラメータを追加します。

sagemaker_client.update_feature_metadata( FeatureGroupName="feature_group_name", FeatureName="feature-name", ParameterAdditions=[ {"Key": "example-key-0", "Value": "example-value-0"}, {"Key": "example-key-1", "Value": "example-value-1"}, ] )
Add a description to a feature

特徴量に説明を追加するには、次のフィールドの値を指定します。

  • FeatureGroupName

  • Feature

  • Description

sagemaker_client.update_feature_metadata( FeatureGroupName="feature-group-name", FeatureName="feature-name", Description="description" )
Remove parameters for a feature

特徴量のパラメータをすべて削除するには、次の操作を行います。

以下のフィールドに値を入力します。

  • FeatureGroupName

  • Feature

ParameterRemovals で削除するパラメータのキーを指定します。

sagemaker_client.update_feature_metadata( FeatureGroupName="feature_group_name", FeatureName="feature-name", ParameterRemovals=[ {"Key": "example-key-0"}, {"Key": "example-key-1"}, ] )
Remove the description for a feature

特徴量の説明を削除するには、次の操作を行います。

以下のフィールドに値を入力します。

  • FeatureGroupName

  • Feature

Description には空の文字列を指定します。

sagemaker_client.update_feature_metadata( FeatureGroupName="feature-group-name", FeatureName="feature-name", Description="" )

サンプルのコード

特徴量のメタデータを更新したら、DescribeFeatureMetadata 操作を使用して、実行した更新を確認できます。

次のコードは、 AWS SDK for Python (Boto3)を使用したワークフローの例を示しています。このコード例では、以下を行います。

  1. SageMaker 環境を設定します。

  2. 特徴量グループを作成します。

  3. グループに特徴量を追加します。

  4. 特徴量にメタデータを追加します。

Feature Store の例とリソースの詳細については、「」を参照してくださいAmazon SageMaker Feature Store リソース

ステップ 1: セットアップ

Feature Store の使用を開始するには、、boto3 SageMaker、および Feature Store セッションを作成します。次に、特徴用の S3 バケットをセットアップします。これがオフラインストアとなります。次のコードは SageMaker デフォルトのバケットを使用し、カスタムプレフィックスを追加します。

注記

使うロールには、マネージドポリシーの AmazonS3FullAccessAmazonSageMakerFeatureStoreAccess がアタッチされている必要があります。

# SageMaker Python SDK version 2.x is required %pip install 'sagemaker>=2.0.0' import sagemaker import sys
import boto3 import pandas as pd import numpy as np import io from sagemaker.session import Session from sagemaker import get_execution_role from botocore.exceptions import ClientError prefix = 'sagemaker-featurestore-introduction' role = get_execution_role() sagemaker_session = sagemaker.Session() region = sagemaker_session.boto_region_name s3_bucket_name = sagemaker_session.default_bucket() sagemaker_client = boto_session.client(service_name='sagemaker', region_name=region)
ステップ 2: 特徴量グループを作成して特徴量を追加する

次のコードは、特徴量定義を含む特徴量グループを作成する例です。

feature_group_name = "test-for-feature-metadata" feature_definitions = [ {"FeatureName": "feature-1", "FeatureType": "String"}, {"FeatureName": "feature-2", "FeatureType": "String"}, {"FeatureName": "feature-3", "FeatureType": "String"}, {"FeatureName": "feature-4", "FeatureType": "String"}, {"FeatureName": "feature-5", "FeatureType": "String"} ] try: sagemaker_client.create_feature_group( FeatureGroupName=feature_group_name, RecordIdentifierFeatureName="feature-1", EventTimeFeatureName="feature-2", FeatureDefinitions=feature_definitions, OnlineStoreConfig={"EnableOnlineStore": True} ) except ClientError as e: if e.response["Error"]["Code"] == "ResourceInUse": pass else: raise e
ステップ 3: メタデータを追加する

メタデータを追加する前に、DescribeFeatureGroup 操作を使用して、特徴量グループのステータスが Created であることを確認します。

sagemaker_client.describe_feature_group( FeatureGroupName=feature_group_name )

特徴量に説明を追加します。

sagemaker_client.update_feature_metadata( FeatureGroupName=feature_group_name, FeatureName="feature-1", Description="new description" )

DescribeFeatureMetadata オペレーションを使用して、特徴量グループの説明が正常に更新されたかどうかを確認できます。

sagemaker_client.describe_feature_metadata( FeatureGroupName=feature_group_name, FeatureName="feature-1" )

また、これを使用して特徴量グループにパラメータを追加することもできます。

sagemaker_client.update_feature_metadata( FeatureGroupName=feature_group_name, FeatureName="feature-1", ParameterAdditions=[ {"Key": "team", "Value": "featurestore"}, {"Key": "org", "Value": "sagemaker"}, ] )

再度 DescribeFeatureMetadata 操作を使用して、特徴量が正常に追加されたかどうかを確認できます。

sagemaker_client.describe_feature_metadata( FeatureGroupName=feature_group_name, FeatureName="feature-1" )