特徴量グループへの特徴量とレコードの追加 - Amazon SageMaker

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

特徴量グループへの特徴量とレコードの追加

Amazon SageMaker Feature Store APIまたは コンソールを使用して、特徴量グループを更新および記述したり、特徴量グループに特徴量とレコードを追加したりできます。特徴量グループはデータを含むオブジェクトで、特徴量はテーブルの列を説明します。特徴量グループに特徴量を追加すると、実質的にはテーブルに列が追加されます。特徴量グループに新しいレコードを追加すると、特定のレコード識別子に関連付けられた特徴量の値を入力することになります。特徴量ストアの概念の詳細については、「Feature Store の概念」を参照してください。

特徴量グループに正常に特徴量を追加すると、それらの特徴量を削除することはできません。追加した特徴量によってレコードにデータが追加されることはありません。新しいレコードを特徴量グループに追加するか、 PutRecord を使用して上書きできますAPI。レコードを更新、説明、特徴量グループに追加する例については、「サンプルのコード」を参照してください。

コンソールを使用して、機能グループに機能を追加できます。コンソールを使用して機能グループを更新する方法の詳細については、「」を参照してくださいコンソールから特徴量グループを更新する

以下のセクションでは、Feature Store を使用して特徴量グループに特徴量を追加APIsし、次に例を示します。ではAPI、特徴量グループを更新した後にレコードを追加または上書きすることもできます。

API

UpdateFeatureGroup 操作を使用して、特徴量グループに特徴量を追加します。

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

レコードを追加または上書きするには、PutRecord 操作を使用します。

レコードに加えた更新を確認するには、GetRecord 操作を使用します。複数レコードに加えた更新を確認するには、BatchGetRecord 操作を使用します。更新内容が表示されるまでに最大 5 分かかることがあります。

次のセクションのサンプルコードを使うと、 AWS SDK for Python (Boto3)を使用して特徴量やレコードを追加する流れを追うことができます。

サンプルのコード

サンプルコードを使い、次のプロセスを順を追って説明します。

  1. 特徴量グループへの特徴量の追加

  2. 特徴量が正常に追加されたことの確認

  3. 特徴量グループへのレコードの追加

  4. レコードが正常に追加されたことの確認

ステップ 1: 特徴量グループへの特徴量の追加

次のコードでは、UpdateFeatureGroup 操作を使用して特徴量グループに新しい特徴量を追加します。Feature Store を設定して特徴量グループを作成済みであることを前提としています。使用開始の詳細については、「Feature Store サンプルノートブックの概要」を参照してください。

import boto3 sagemaker_client = boto3.client("sagemaker") sagemaker_client.update_feature_group( FeatureGroupName=feature_group_name, FeatureAdditions=[ {"FeatureName": "new-feature-1", "FeatureType": "Integral"}, {"FeatureName": "new-feature-2", "FeatureType": "Fractional"}, {"FeatureName": "new-feature-3", "FeatureType": "String"} ] )

次のコードでは、DescribeFeatureGroup 操作を使用して更新の状態を確認します。LastUpdateStatus フィールドが Successful の場合、特徴量は正常に追加されています。

sagemaker_client.describe_feature_group( FeatureGroupName=feature_group_name )

ステップ 2: 特徴量グループへの新しいレコードの追加

次のコードでは、PutRecord 操作を使用して、作成した特徴量グループにレコードを追加します。

record_identifier_value = 'new_record' sagemaker_featurestore_runtime_client = boto3.client("sagemaker-featurestore-runtime") sagemaker_runtime_client.put_record( FeatureGroupName=feature_group_name, Record=[ { 'FeatureName': "record-identifier-feature-name", 'ValueAsString': record_identifier_value }, { 'FeatureName': "event-time-feature", 'ValueAsString': "timestamp-that-feature-store-returns" }, { 'FeatureName': "new-feature-1", 'ValueAsString': "value-as-string" }, { 'FeatureName': "new-feature-2", 'ValueAsString': "value-as-string" }, { 'FeatureName': "new-feature-3", 'ValueAsString': "value-as-string" }, ] )

GetRecord 操作を使用して、追加した特徴量のデータがない特徴量グループ内のレコードを調べます。PutRecord 操作を使用すると、追加した特徴量のデータがないレコードを上書きできます。