Feature Store の概念 - Amazon SageMaker

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

Feature Store の概念

Amazon SageMaker Feature Store で使用される一般的な用語を一覧表示し、次にいくつかの概念を視覚化するための図例を示します。

  • 特徴量ストア: 機械学習 (ML) 機能用のストレージおよびデータ管理レイヤー。信頼できる唯一の情報源として機能し、特徴量に対して、保存、取得、削除、追跡、共有、発見、アクセス制御を行います。以下の図の例では、Feature Store は ML データを格納し、追加のサービスを提供する、特徴量グループのストアです。

  • オンラインストア: 特徴量グループの低レイテンシー、高可用性のストアであり、レコードのリアルタイム検索を可能にします。オンラインストアでは、 GetRecord 経由で最新のレコードにすばやくアクセスできますAPI。

  • オフラインストア: Amazon S3 バケットに過去データを保存します。オフラインストアは低 (1 秒未満の) レイテンシーの読み取りが不要な場合に使われます。例えば、オフラインストアは探索、モデルトレーニング、バッチ推論のために特徴量を保存して提供する場合に使用できます。

  • 特徴量グループ: ML モデルによるトレーニングや予測に使用されるデータやメタデータを含む Feature Store の主要リソースです。特徴量グループとは、レコードを記述するために使用される特徴量を論理的にグループ化したものです。以下の図の例では、特徴量グループに ML データが含まれています。

  • 特徴量: ML モデルを使用してトレーニングや予測を行う際の入力の 1 つとして使用されるプロパティ。Feature Store APIでは、特徴量はレコードの属性です。以下の図の例では、特徴量グループは ML データテーブル内の列を示しています。

  • 特徴量定義: 名前と、整数、文字列、または分数のいずれかのデータタイプで構成されます。特徴量グループには特徴量定義のリストが含まれます。Feature Store データタイプの詳細については、「データ型」を参照してください。

  • レコード: 1 つのレコード識別子に対する特徴量の値の集合です。特徴量グループ内のレコードは、レコード識別子とタイムスタンプの組み合わせにより一意に識別されます。以下の図の例では、レコードは ML データテーブル内の行を示しています。

  • レコード識別子名: レコード識別子名は、レコードを識別する特徴量の名前です。特徴量グループの特徴量定義で定義されている特徴量の名前の 1 つを参照している必要があります。各特徴量グループは、レコード識別子名を使って定義されます。

  • イベント時間: レコードイベントが発生した日時に対応して指定するタイムスタンプ。特徴量グループのすべてのレコードに、対応するイベント時刻が必要です。オンラインストアには、レコード識別子名の最新のイベント時刻に対応するレコードのみが含まれています。一方、オフラインストアにはすべての履歴レコードが保存されています。イベント時刻の形式の詳細については、「データ型」を参照してください。

  • 取り込み: 特徴量グループに新しいレコードを追加します。取り込みは通常PutRecord、 を介して行われますAPI。

概念の概要図

以下の図の例は、Feature Store のいくつかの構想を概念化したものです。

An example representation of a feature group using an example table as reference.

Feature Store には特徴量グループが含まれ、特徴量グループには ML データが含まれます。この例では、元の特徴量グループには、3 つの特徴量 (それぞれ列を記述) と 2 つのレコード (行) を持つデータテーブルが含まれています。

  • 特徴量の定義は、レコードに関連付けられている特徴量値の特徴名とデータ型を記述します。

  • レコードには特徴値が含まれ、レコード識別子によって一意に識別されるため、イベント時間を含める必要があります。

取り込み図

取り込みは、既存の特徴量グループにレコードを追加するアクションです。オンラインストアとオフラインストアは、ストレージのユースケースによって異なる方法で更新されます。

オンラインストアへの取り込みの例

オンラインストアはレコードのリアルタイム検索として機能し、ほとんどの up-to-dateレコードのみを保持します。レコードが既存のオンラインストアに取り込まれると、更新されたオンラインストアは、最新のイベント時刻のレコードのみを保持します。

次の図例では、元のオンラインストアに 1 つのレコードを含む ML データテーブルが含まれています。レコードは元のレコードと同じレコード識別子名で取り込まれ、取り込まれたレコードのイベント時間は元のレコードよりも早くなります。更新されたオンラインストアは、最新のイベント時刻のレコードのみを保持するため、更新されたオンラインストアには元のレコードが含まれます。

An example showing how records are ingested in the online store.

オフラインストアへの取り込みの例

オフラインストアはレコードの履歴検索として機能し、すべてのレコードを保持します。新しいレコードが既存のオフラインストアに取り込まれると、更新されたオフラインストアは新しいレコードを保持します。

次の図例では、元のオフラインストアに 1 つのレコードを含む ML データテーブルが含まれています。レコードは元のレコードと同じレコード識別子名で取り込まれ、取り込まれたレコードのイベント時間は元のレコードより前になります。更新されたオフラインストアはすべてのレコードを保持するため、更新されたオフラインストアには両方のレコードが含まれます。

An example showing how records are ingested in the offline store.