スキーマ - Amazon Personalize

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

スキーマ

スキーマは、Amazon Personalize にデータの構造を知らせ、Amazon Personalize がデータを解析できるようにします。スキーマには名前キーがあり、その値はデータセットタイプと一致する必要があります。スキーマを作成した後は、そのスキーマを変更することはできません。

ドメインデータセットグループについては、各データセットタイプには、必須フィールドと予約済みキーワードを含むデフォルトのスキーマがあります。データセットを作成するたびに、既存のドメインスキーマを使用するか、既存のデフォルトスキーマを変更して新しいドメインスキーマを作成できます。ドメインにインポートするデータのガイドとして、デフォルトのスキーマを使用します。スキーマを定義してデータセットを作成すると、スキーマに変更を加えることはできなくなります。

スキーマ形式の要件

ドメインデータセットグループまたはカスタムデータセットグループのいずれかのデータセットのスキーマを作成するときは、次のガイドラインに従う必要があります。

  • スキーマは Avro 形式で定義する必要があります。サポートされている Avro データ型については、「スキーマデータタイプ」を参照してください。

  • スキーマフィールドは任意の順序で表示できますが、CSV ファイル内の対応する列ヘッダーの順序と一致する必要があります。

  • スキーマは、ネストされた構造のないフラットな JSON ファイルである必要があります。例えば、フィールドを複数のサブフィールドの親にすることはできません。

  • Amazon Personalize スキーマは、配列やマップなどの複雑なタイプをサポートしていません。

  • スキーマフィールドには一意の英数字名が必要です。例えば、GENRES_FIELD_1 フィールドと GENRESFIELD1 フィールドの両方を追加することはできません。

  • 必須フィールドを必須データ型として定義する必要があります。categorical予約済みカテゴリ文字列フィールドでは属性をに設定する必要がありますがtrue、予約済み文字列フィールドはカテゴリに設定できません。キーワードをデータに含めることはできません。

  • タイプ string の独自のメタデータフィールドを追加する場合は、categorical 属性または textual 属性を含める必要があります (アイテムスキーマのみがテキスト属性のフィールドをサポートします)。それ以外の場合、Amazon Personalize は、モデルのトレーニング時にフィールドを使用しません。

  • Amazon Personalize は、booleanレコメンデーションのトレーニングやフィルタリングにタイプデータを使用しません。Amazon Personalize でトレーニングやフィルタリングの際にブーリアンデータを使用するには、String 型のフィールドを使用し、"True""False"データ内の値とを使用します。または、int もしくは long 型と 01 の値を使用できます。

  • stringテキストフィールドはそのタイプで、属性はに設定されている必要があります。textual true非構造化テキストデータの詳細については、を参照してください。非構造化テキストメタデータ

ドメインデータセットグループのデータセットには、ドメインとデータセットタイプの両方に基づく追加の要件があります。カスタムデータセットグループのデータセットには、タイプに応じて追加の要件があります。

スキーマデータタイプ

Amazon Personalize のスキーマは、フィールド向けに次の Avro タイプをサポートします。

  • フロート

  • double

  • 整数

  • long

  • 文字列

  • boolean

  • null

一部の必須フィールドと予約済みフィールドは NULL データをサポートしています。nullフィールドにタイプを追加すると、不完全なデータ (値が空白のメタデータなど) を使用してレコメンデーションを生成できます。どのフィールドが NULL ドメインデータセットとスキーマ データをサポートするかについては、カスタムデータセットとスキーマまたはを参照してください。次の例は、GENDER フィールドに NULL タイプを追加する方法を示しています。

{ "name": "GENDER", "type": [ "null", "string" ], "categorical": true }