AI項目レコメンデーションを作成する
カタログ内の項目からAIレコメンデーションエンジンを作成する方法について説明します。
AIアイテムレコメンデーションについて
AIアイテムレコメンデーションを使用して、最も人気のある商品を計算したり、特定のカタログに対してパーソナライズされたAIレコメンデーションを作成したりできます。レコメンデーションを作成した後、パーソナライゼーションを使用してそれらの商品をメッセージに挿入できます。

AIパーソナライズドレコメンデーションは、少なくとも数百のカタログアイテム、最大100,000のカタログアイテム、そして通常少なくとも30,000人の購入またはインタラクションデータを持つユーザーがいる場合に最も効果的です。これはあくまで大まかな目安であり、状況によって異なります。その他のレコメンデーションタイプはより少ないデータでも機能します。これには、フォールバックとして最も人気を使用する場合も含まれます。
プラン固有のAI機能
次の表に、AIパーソナライズド、最も人気、最新、トレンドの各レコメンデーションタイプの無料版とPro版の違いを示します。
| エリア | 無料版 | Pro版 |
|---|---|---|
| ユーザーの更新頻度1 | 毎週 | 毎日 |
| モデルの再トレーニング頻度 | 毎月 | 毎週 |
| 最大レコメンデーションモデル数 | タイプごとに1モデル2 | タイプごとに100モデル2 |
1. これは、ユーザー固有の項目レコメンデーションが更新される頻度です(AIパーソナライズドおよび最新のみ)。最も人気とトレンドはグローバルなレコメンデーションであり、モデルの再トレーニング時に更新されます。たとえば、ユーザーがAI項目レコメンデーションに基づいて項目を購入した場合、そのレコメンデーション項目はこの頻度に従って更新されます。
2. 利用可能なレコメンデーションタイプは、AIパーソナライズド、最新、最も人気、およびトレンドです。
AIアイテムレコメンデーションの作成
前提条件
開始する前に、以下が必要です。
- いずれかのレコメンデーションタイプを使用するためのカタログが少なくとも1つ。
- Braze上の購入またはイベントデータ(カスタムイベント、注文確定イベント、または購入オブジェクト)。これにはアイテムへの参照が含まれ、カタログアイテムIDと一致する必要があります。
ステップ1:新しいレコメンデーションを作成する
AIアイテムレコメンデーションは、ダッシュボードの以下のいずれかの場所から作成できます。
- 分析 > AIアイテムレコメンデーションに移動します。
- 予測を作成 > AIアイテムレコメンデーションを選択します。
個別のカタログから直接レコメンデーションを作成することもできます。カタログページからカタログを選択し、レコメンデーションを作成を選択します。
ステップ2:レコメンデーションの詳細を追加する
レコメンデーションに名前と任意の説明を入力します。

ステップ3:レコメンデーションを定義する
レコメンデーションタイプを選択します。各タイプは、購入、注文確定、またはカスタムイベントデータなど、過去6か月間のアイテムインタラクションデータを使用します。各タイプの詳細情報とユースケースについては、タイプとユースケースを参照してください。

最新またはAIパーソナライズドを使用する場合、個別のレコメンデーションを作成するのに十分なデータがないユーザーには、フォールバックとして最も人気のアイテムが表示されます。最も人気のフォールバックは、リンクされたカタログに存在するアイテムのみを返します。
AIパーソナライズドレコメンデーションの場合、分析ページのパーソナライゼーション率を確認すると、過去24か月間に設定されたイベントを実行したユーザーのうち、パーソナライズされたレコメンデーションがプロファイルに保存されているユーザーの割合を確認できます。最新レコメンデーションの場合、分析ページには、最新レコメンデーションを受け取っているユーザーと最も人気フォールバックを受け取っているユーザーの割合が表示されます。
ステップ3.1:過去の購入またはインタラクションを除外する(任意)
ユーザーがすでに購入またはインタラクションしたアイテムの提案を避けるには、ユーザーが以前にインタラクションしたアイテムをレコメンドしないを選択します。このオプションは、レコメンデーションのタイプがAIパーソナライズドに設定されている場合にのみ使用できます。

この設定により、レコメンデーションが最近更新されている場合、ユーザーがすでに購入またはインタラクションしたアイテムがメッセージで再利用されることを防ぎます。レコメンデーションの更新間に購入またはインタラクションされたアイテムは、引き続き表示される場合があります。アイテムレコメンデーションの無料版では、更新は毎週行われます。AIアイテムレコメンデーションのPro版では、更新は24時間ごとに行われます。
たとえば、AIアイテムレコメンデーションのPro版を使用している場合、ユーザーが何かを購入してから30分以内にマーケティングメールを受信すると、購入したばかりのアイテムがメールから除外されない場合があります。ただし、24時間後に送信されるメッセージにはそのアイテムは含まれません。
ステップ3.2:カタログを選択する
まだ入力されていない場合は、このレコメンデーションがアイテムを取得するカタログを選択します。
ステップ3.3:セレクションを追加する(任意)
レコメンデーションをより細かくコントロールしたい場合は、セレクションを選択してカスタムフィルターを適用します。セレクションは、ブランド、サイズ、場所など、カタログ内の特定の列でレコメンデーションをフィルタリングします。Liquidを含むセレクションはレコメンデーションでは使用できません。


セレクションが見つからない場合は、まずカタログで設定されていることを確認してください。
ステップ4:レコメンデーションを駆動するインタラクションを選択する
このレコメンデーションが最適化するイベントを選択します。このイベントは通常購入ですが、アイテムとの任意のインタラクションにすることもできます。

AIアイテムレコメンデーションを設定する際、イベントの選択は重要です。トリガーイベントによって、AI生成のレコメンデーションを受け取るユーザーが決まります。AIアイテムレコメンデーションは、設定したイベントを完了したユーザーに対して生成されるため、この選択がレコメンデーションを受け取るユーザーを直接決定します。リーチしたいオーディエンスセグメント全体をカバーするイベントを選択してください。
同時に、カバレッジと関連性のバランスを取ってください。ファネル上部のイベント(商品閲覧など)はより広いオーディエンスを捕捉する傾向がありますが、ビジネス成果との関連性は低くなります。一方、ファネル下部のイベント(購入など)はより的を絞った、ビジネスに関連性の高いレコメンデーションを生成する傾向があります。最適なイベントは、カバレッジと収益への影響のバランスが取れたものです。
以下に対して最適化できます。
カスタムイベントを選択した場合は、リストからイベントを選択します。


カスタムイベントは、イベントリストに表示される前に十分なデータが必要です。カスタムイベントが表示されない場合は、Brazeバックエンドがまだ処理していないか、モデルのトレーニングに十分なデータがない可能性があります。AIレコメンデーションはインサイトを生成するために履歴データに依存しているため、新しく作成されたイベントやめったにトリガーされないイベントは、より多くのデータが収集されるまで利用できません。
ステップ5:対応するプロパティ名を選択する
レコメンデーションを作成するには、インタラクションイベント(注文確定イベント、購入オブジェクト、またはカスタムイベント)のどのフィールドが、カタログ内のアイテムのidフィールドと一致する一意の識別子を持つかをBrazeに伝える必要があります。不明な場合は、要件を参照してください。
プロパティ名でこのフィールドを選択します。
プロパティ名フィールドには、SDKを通じてBrazeに送信されたフィールドのリストが事前に入力されます。十分なデータが提供されている場合、これらのプロパティは正しいプロパティである確率の順にランク付けされます。カタログのidフィールドに対応するものを選択してください。

要件
プロパティの選択にはいくつかの要件があります。
- 選択したカタログの
idフィールドにマッピングされる必要があります。 - 注文確定イベントを選択した場合、またはeコマースイベントを使用してアイテムレコメンデーションをトレーニングする場合:商品IDには
products.product_idを入力します。- フィールドは商品の配列内にあるか、IDの配列で終わることができます。いずれの場合も、各商品IDは同じタイムスタンプを持つ個別の連続イベントとして扱われます。
- 購入オブジェクトを選択した場合:購入オブジェクトの
product_idまたはインタラクションイベントのpropertiesのフィールドである必要があります。 - カスタムイベントを選択した場合:カスタムイベントの
propertiesのフィールドである必要があります。 - ネストされたフィールドは、
event_property.nested_propertyの形式でドット表記を使用してプロパティ名ドロップダウンに入力する必要があります。たとえば、イベントプロパティlocation内のネストされたプロパティdistrict_nameを選択する場合は、location.district_nameと入力します。カスタムイベントのネストされたプロパティの詳細については、ネストされたオブジェクトを参照してください。
マッピングの例
以下のマッピング例は、どちらもこのサンプルカタログを参照しています。
| id | title | price |
|---|---|---|
| ADI-BL-7 | Adidas Black Size 7 | 100.00 USD |
| ADI-RD-8 | Adidas Red Size 8 | 100.00 USD |
| ADI-WH-9 | Adidas White Size 9 | 100.00 USD |
| ADI-PP-10 | Adidas Purple Size 10 | 75.00 USD |
カスタムイベントadded_to_cartを使用して、顧客がチェックアウトする前に類似商品をレコメンドしたいとします。イベントadded_to_cartには、イベントプロパティproduct_skuがあります。
この場合、product_skuプロパティには、サンプルカタログのid列の値のうち少なくとも1つが含まれている必要があります:「ADI-BL-7」、「ADI-RD-8」、「ADI-WH-9」、または「ADI-PP-10」。すべてのカタログアイテムに対するイベントは必要ありませんが、レコメンデーションエンジンが十分なコンテンツで動作できるように、いくつかは必要です。
カスタムイベントオブジェクトの例
このイベントには"product_sku": "ADI-BL-7"があり、サンプルカタログの最初のアイテムと一致します。
1
2
3
4
5
6
7
8
9
10
11
12
13
{
"events": [
{
"external_id": "user1",
"app_id": "your-app-id",
"name": "added_to_cart",
"time": "2024-07-16T19:20:30+01:00",
"properties": {
"product_sku": "ADI-BL-7"
}
}
]
}
商品配列を含むカスタムイベントオブジェクトの例
イベントプロパティに配列内の複数の商品が含まれている場合、各商品IDは個別の連続イベントとして扱われます。このイベントでは、プロパティproducts.skuを使用して、サンプルカタログの1番目と3番目のアイテムと一致させることができます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
"events": [
{
"external_id": "user1",
"app_id": "your-app-id",
"name": "added_to_cart",
"time": "2024-07-16T19:20:30+01:00",
"properties": {
"transaction_id": "2ff3f9a9-8803-4c3a-91da-14adbf93dc99",
"products": [
{ "sku": "ADI-BL-7" },
{ "sku": "ADI-WH-9" }
]
}
}
]
}
商品ID配列を含むネストされたオブジェクトのカスタムイベントオブジェクトの例
商品IDがオブジェクトではなく配列内の値である場合、同じ表記法を使用でき、各商品IDは個別の連続イベントとして扱われます。これは、以下のイベントでネストされたオブジェクトと柔軟に組み合わせることができ、プロパティをpurchase.product_skusとして設定することで、サンプルカタログの1番目と3番目のアイテムと一致させることができます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
"events": [
{
"external_id": "user1",
"app_id": "your-app-id",
"name": "added_to_cart",
"time": "2024-07-16T19:20:30+01:00",
"properties": {
"transaction_id": "13791e08-7c22-4f6c-8cc6-832c76af3743",
"purchase": {
"product_skus": ["ADI-BL-7", "ADI-WH-9"]
}
}
}
]
}
購入オブジェクトは、購入が行われたときにAPIを通じて渡されます。
マッピングに関しては、購入オブジェクトにもカスタムイベントと同様のロジックが適用されますが、購入オブジェクトのproduct_idまたはpropertiesオブジェクト内のフィールドのいずれかを選択できます。
すべてのカタログアイテムに対するイベントは必要ありませんが、レコメンデーションエンジンが十分なコンテンツで動作できるように、いくつかは必要です。
商品IDにマッピングされた購入オブジェクトの例
このイベントには"product_id": "ADI-BL-7"があり、カタログの最初のアイテムにマッピングされます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"purchases": [
{
"external_id": "user1",
"app_id": "11ae5b4b-2445-4440-a04f-bf537764c9ad",
"product_id": "ADI-BL-7",
"currency": "USD",
"price": 100.00,
"time": "2024-07-16T19:20:30+01:00",
"properties": {
"color": "black",
"checkout_duration": 180,
"size": "7",
"brand": "Adidas"
}
}
]
}
プロパティフィールドにマッピングされた購入オブジェクトの例
このイベントにはプロパティ"sku": "ADI-RD-8"があり、カタログの2番目のアイテムにマッピングされます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
"purchases": [
{
"external_id": "user1",
"app_id": "11ae5b4b-2445-4440-a04f-bf537764c9ad",
"product_id": "shoes",
"currency": "USD",
"price": 100.00,
"time": "2024-07-16T19:20:30+01:00",
"properties": {
"sku": "ADI-RD-8",
"color": "red",
"checkout_duration": 180,
"size": "8",
"brand": "Adidas"
}
}
]
}
商品IDにマッピングされた注文確定オブジェクトの例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"name": "ecommerce.order_placed",
"properties": {
"order_id": "order_123",
"total_value": 200.0,
"currency": "USD",
"products": [
{
"product_id": "ADI-BL-7",
"product_name": "Adidas Black Size 7",
"variant_id": "ADI-BL-7-default",
"quantity": 1,
"price": 100.0
}
],
"source": "storefront"
}
}
ステップ6:レコメンデーションをトレーニングする
準備ができたら、レコメンデーションを作成を選択します。このプロセスは完了するまでに10分から36時間かかる場合があります。レコメンデーションのトレーニングが正常に完了した場合、または作成が失敗した理由の説明がメールで届きます。
レコメンデーションは予測ページで確認でき、必要に応じて編集またはアーカイブできます。レコメンデーションは毎週(有料版)または毎月(無料版)自動的に再トレーニングされます。