フィルター式の構造と要素 - Amazon Personalize

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

フィルター式の構造と要素

このセクションには、フィルター式の構造と要素に関する情報が含まれています。

フィルター式の構造

フィルター式の一般的な構造は次のとおりです。

EXCLUDE/INCLUDE ItemID/ActionID/UserID WHERE dataset type.field IN/NOT IN (value/parameter)

手動でフィルター式を作成するか、コンソールの[Expression builder] (式ビルダー) を使用して式の構文と構造に関するサポートを利用できます。

フィルター式の要素

次の要素を使用して、フィルター式を作成します。

INCLUDE または EXCLUDE

フィルター基準を満たすアイテムのみにレコメンデーションを制限するために INCLUDE を使用するか、またはフィルター基準を満たす、すべてのアイテムを削除するために EXCLUDE を使用します。

ItemID/ActionID/UserID

これらの要素のいずれかを INCLUDE または EXCLUDE 要素の後で使用します。使用する要素は、アイテム (アイテムレコメンデーション)、アクション (アクションレコメンデーション)、またはユーザー (ユーザーセグメント) のどれをフィルタリングするかによって異なります。

WHERE

アイテム、アクション、またはユーザーの条件を確認するには、WHERE を使用します。WHERE 要素は、ItemIDActionID、または UserID の後で使用する必要があります。

AND/OR

同じフィルター式内で複数の条件を連鎖させるには、AND または OR を使用します。AND または OR を使用して組み合わせられた条件は、最初の条件で使用されたデータセットのフィールドにのみ影響を及ぼすことができます。

Dataset.field

dataset.field 形式でレコメンデーションをフィルタリングするデータセットとメタデータフィールドを指定します。例えば、Items データセットの genres フィールドに基づいてアイテムレコメンデーションをフィルタリングするには、フィルター式で Items.genres を使用します。

IF 条件

IF 条件は、式の最後で 1 回だけ、CurrentUser の条件をチェックするためにのみ使用してください。ただし、AND を使用して IF 条件を拡張できます。

CurrentUser.attribute

レコメンデーションを取得しようとしているユーザーに基づいてアイテムのレコメンデーションをフィルタリングするには、IF 条件でのみ、CurrentUser を使用してユーザーフィールドを指定します。例えば、CurrentUser.AGE と指定します。

CurrentItem.attribute

関連アイテムのレシピとユースケースにのみには、CurrentItem.attribute を使用して、関連商品のレコメンデーションのリクエストで指定した商品の属性に基づいて商品を絞り込むことができます。例えば、CurrentItem.GENRECurrentItem.PRICE などです。

ドメインユースケースまたはカスタムレシピが、類似アイテムレシピや More Like X ドメインユースケースなどの関連アイテムのレコメンデーションを生成する場合にのみ、 CurrentItem 要素でフィルターを適用できます。CurrentItem 要素を含むフィルターを初めて作成する場合、フィルタの作成には数分かかることがあります。暗号化 AWS KMS に を使用する場合、フィルターの作成には最大 15 分かかることがあります。

IN/NOTIN

IN または NOT IN を比較演算子として使用して、1 つ以上の文字列値の一致 (または不一致) に基づいてフィルタリングします。Amazon Personalize は、正確な文字列に対してのみフィルターを適用します。

比較演算子

=、<、<=、>、>=、!= 演算子を使用して、プレースホルダーパラメータに渡されたデータを含む数値データを等価性についてテストします。

アスタリスク (*) 文字

すべてのタイプのインタラクションを含めたり、除外したりするために * を使用します。Interactions データセットの EVENT_TYPE フィールドを使用するフィルター式にのみ * を使用します。

パイプ区切り文字

パイプ区切り文字 (|) を使用して、複数の式を連鎖します。詳細については、「複数の式の組み合わせ」を参照してください。

パラメータ

比較演算子または IN 演算子を使用する式の場合、ドル記号 ($) とパラメータ名を使用して、プレースホルダーパラメータを値として追加します。例えば、$GENRES と指定します。この例では、レコメンデーションを取得する際に、フィルタリングする 1 つまたは複数のジャンルを指定します。

注記

パラメータ名は、式に追加するときに定義します。パラメータ名はフィールド名と一致する必要はありません。フィールド名に類似し、かつ、覚えやすいパラメータ名を使用することをお勧めします。レコメンデーションリクエストにフィルターを適用するときに、パラメータ名 (大文字と小文字が区別されます) を使用します。を使用する際にプレースホルダーパラメータでフィルターを適用する方法を示す例については AWS SDKS、「」を参照してくださいフィルターの適用 (AWS SDKs)