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項目レコメンデーションを作成できます。
個々のカタログから直接レコメンデーションを作成することもできます。[カタログ] ページからカタログを選択し、[レコメンデーションを作成] を選択します。
ステップ 2: レコメンデーションの詳細を追加する
レコメンデーションに名前と説明(オプション)を付けます。

ステップ 3: レコメンデーションを定義する
レコメンデーションタイプを選択します。各タイプは、過去6か月間の項目インタラクションデータ(購入またはカスタムイベントデータなど)を使用します。それぞれの詳細な情報とユースケースについては、タイプとユースケースを参照してください。
[最新] または [AIパーソナライズド] を使用する場合、個別のレコメンデーションを作成するためのデータが不十分なユーザーには、フォールバックとして最も人気がある項目が表示されます。最も人気があるフォールバックを受信するユーザーの割合の概算は、[分析] ページに表示されます。最も人気があるフォールバックは、リンクされたカタログに存在する項目のみを返します。
ステップ 3.1: 過去の購入やインタラクションを除外する(オプション)
ユーザーが既に購入または操作した項目をおすすめしないようにするには、[ユーザーが以前に操作した項目をおすすめしない] を選択します。このオプションは、レコメンデーションの [タイプ] が [AIパーソナライズド] に設定されている場合にのみ使用できます。

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

セレクションが見つからない場合は、まずカタログで設定されていることを確認してください。
ステップ 4: レコメンデーションを推進するインタラクションを選択する
このレコメンデーションを最適化するイベントを選択します。このイベントは通常「購入」ですが、項目とのあらゆるインタラクションも指定できます。
以下のイベントで最適化できます。
- 購入オブジェクトを使用した購入イベント
- 購入を表すカスタムイベント
- その他の項目インタラクションを表すカスタムイベント(商品の表示、クリック、メディア再生など)
[カスタムイベント] を選択した場合は、リストからイベントを選択します。

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

要件
プロパティを選択する際には、いくつかの要件があります。
- 選択したカタログの
idフィールドにマッピングする必要があります。 - 購入オブジェクトを選択した場合:
product_idまたはインタラクションイベントのpropertiesのフィールドである必要があります。 - カスタムイベントを選択した場合: カスタムイベントの
propertiesのフィールドである必要があります。 - ネストされたフィールドは、ドット表記を用いて
event_property.nested_propertyの形式で [プロパティ名] ドロップダウンに入力する必要があります。たとえば、イベントプロパティlocation内のネストされたプロパティdistrict_nameを選択する場合は、location.district_nameと入力します。 - e コマースイベントを使って項目レコメンデーションをトレーニングする場合: イベントから製品IDにアクセスするには
products.product_idを追加します。 - フィールドは製品の配列の中にあっても、IDの配列で終わっても構いません。いずれの場合も、各製品IDは、同じタイムスタンプを持つ個別の連続したイベントとして扱われます。
マッピングの例
以下のマッピング例は、どちらもこのサンプルカタログを参照しています。
| 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"
}
}
]
}
ステップ 6: レコメンデーションをトレーニングする
準備ができたら、[レコメンデーションを作成] を選択します。このプロセスは、完了するまで10分から36時間かかることがあります。レコメンデーションが正常にトレーニングされた場合、または作成に失敗した場合にはその理由を説明するメール通知が届きます。
レコメンデーションは [予測] ページに表示され、必要に応じて編集したりアーカイブしたりできます。レコメンデーションは、毎週1回(有料)または毎月1回(無料)自動的に再トレーニングされます。
GitHub でこのページを編集