翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
スキーマ
スキーマは、Amazon Personalize にデータの構造を知らせ、Amazon Personalize がデータを解析できるようにします。スキーマには名前キーがあり、その値はデータセットタイプと一致する必要があります。スキーマを作成した後は、スキーマに変更を加えることはできなくなります。
ドメインデータセットグループについては、各データセットタイプには、必須フィールドと予約済みキーワードを含むデフォルトのスキーマがあります。データセットを作成するたびに、既存のドメインスキーマを使用するか、既存のデフォルトスキーマを変更して新しいドメインスキーマを作成できます。ドメインにインポートするデータのガイドとして、デフォルトのスキーマを使用します。スキーマを定義してデータセットを作成すると、スキーマに変更を加えることはできなくなります。
スキーマ形式の要件
ドメインデータセットグループまたはカスタムデータセットグループのいずれかのデータセットのスキーマを作成するときは、次のガイドラインに従う必要があります。
-
スキーマは Avro 形式
で定義する必要があります。サポートされている Avro データ型については、「スキーマのデータ型」を参照してください。 -
スキーマフィールドは任意の順序で表示できますが、CSV ファイル内の対応する列ヘッダーの順序と一致する必要があります。
-
スキーマは、ネストされた構造のないフラットな JSON ファイルである必要があります。例えば、フィールドを複数のサブフィールドの親にすることはできません。
-
Amazon Personalize のスキーマは、配列やマップなどの複雑なタイプをサポートしません。
-
スキーマフィールドには一意の英数字名が必要です。例えば、
GENRES_FIELD_1
フィールドとGENRESFIELD1
フィールドの両方を追加することはできません。 -
必須フィールドを必須データ型として定義する必要があります。予約済みカテゴリ文字列フィールドでは
categorical
属性をtrue
に設定する必要がありますが、予約済み文字列フィールドはカテゴリに設定できません。キーワードをデータに含めることはできません。 -
タイプ
string
の独自のメタデータフィールドを追加して、Amazon Personalize がトレーニングの際にそれを使用するように希望する場合は、categorical
属性またはtextual
属性を含める必要があります (アイテムスキーマのみがテキスト属性のフィールドをサポートします)。 -
Amazon Personalize は、テーマを生成したり、レコメンデーションでメタデータを返したり、レコメンデーションをフィルタリングしたりするときに、アイテム名列などの非カテゴリ別文字列列を使用できます。詳細については、「非カテゴリ別文字列データ」を参照してください。
-
Amazon Personalize は、レコメンデーションのトレーニングやフィルタリングに
boolean
タイプデータを使用しません。Amazon Personalize でトレーニングやフィルタリングの際にブーリアンデータを使用するには、文字列 型のフィールドを使用し、データ内の"True"
と"False"
の値を使用します。または、int もしくは long 型と0
と1
の値を使用できます。 -
テキストフィールドは
string
タイプで、textual
属性はtrue
に設定されている必要があります。非構造化テキストデータの詳細については、「非構造化テキストメタデータ」を参照してください。
ドメインデータセットグループのデータセットには、ドメインとデータセットタイプの両方に基づいて追加要件があります。カスタムデータセットグループのデータセットには、タイプに応じて異なる要件があります。
スキーマのデータ型
Amazon Personalize のスキーマは、フィールド向けに次の Avro タイプをサポートします。
-
フロート
-
double
-
整数
-
long
-
文字列
-
boolean
-
null
一部の必須フィールドと予約済みフィールドは NULL データをサポートしています。フィールドに null
タイプを追加すると、不完全なデータ (例えば、空白の値を持つメタデータ) を使用して、レコメンデーションを生成できます。どのフィールドが NULL データをサポートするかについては、「ドメインデータセットとスキーマ」または「カスタムデータセットとスキーマ」を参照してください。次の例は、GENDER フィールドに null タイプを追加する方法を示しています。
{ "name": "GENDER", "type": [ "null", "string" ], "categorical": true }