コンテンツにスキップ

AI項目レコメンデーションを作成する

カタログ内の項目からAIレコメンデーションエンジンを作成する方法について説明します。

AIアイテムレコメンデーションについて

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

プラン固有のAI機能

次の表に、AIパーソナライズド、最も人気、最新、トレンドの各レコメンデーションタイプの無料版とPro版の違いを示します。

エリア 無料版 Pro版
ユーザーの更新頻度1 毎週 毎日
モデルの再トレーニング頻度 毎月 毎週
最大レコメンデーションモデル数 タイプごとに1モデル2 タイプごとに100モデル2

1. これは、ユーザー固有の項目レコメンデーションが更新される頻度です(AIパーソナライズドおよび最新のみ)。最も人気とトレンドはグローバルなレコメンデーションであり、モデルの再トレーニング時に更新されます。たとえば、ユーザーがAI項目レコメンデーションに基づいて項目を購入した場合、そのレコメンデーション項目はこの頻度に従って更新されます。
2. 利用可能なレコメンデーションタイプは、AIパーソナライズド、最新、最も人気、およびトレンドです。

AIアイテムレコメンデーションの作成

前提条件

開始する前に、以下のものが必要です。

  • いずれかのレコメンデーションタイプを使用するための、少なくとも1つのカタログ。
  • Braze上の購入またはイベントデータ(カスタムイベント、注文確定イベント、または購入オブジェクト)。これにはアイテムへの参照が含まれ、カタログアイテムIDと一致する必要があります。

ステップ1:新しいレコメンデーションを作成する

AIアイテムレコメンデーションは、ダッシュボードの以下いずれかの場所から作成できます。

  1. 分析 > AIアイテムレコメンデーションに移動します。
  2. 予測を作成 > AIアイテムレコメンデーションを選択します。

個別のカタログから直接レコメンデーションを作成することもできます。カタログページからカタログを選択し、レコメンデーションを作成を選択します。

ステップ2:レコメンデーションの詳細を追加する

レコメンデーションに名前とオプションの説明を付けます。

名前と説明のフィールドがある「レコメンデーションの詳細」ステップ。

ステップ3:レコメンデーションを定義する

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

ステップ3.1:過去の購入やインタラクションを除外する(オプション)

ユーザーがすでに購入済みまたはインタラクション済みのアイテムを提案しないようにするには、ユーザーが以前にインタラクションしたアイテムをレコメンドしないを選択します。このオプションは、レコメンデーションのタイプがAIパーソナライズドに設定されている場合のみ利用できます。

タイプとして「AIパーソナライズド」が設定され、「ユーザーが以前にインタラクションしたアイテムをレコメンドしない」オプションが選択された「レコメンデーションを定義する」ステップ。

この設定により、レコメンデーションが最近更新されている場合、ユーザーがすでに購入またはインタラクションしたアイテムがメッセージで再利用されるのを防ぎます。レコメンデーション更新の間に購入またはインタラクションされたアイテムは引き続き表示される可能性があります。無料版のアイテムレコメンデーションでは、更新は毎週行われます。Pro版のAIアイテムレコメンデーションでは、更新は24時間ごとに行われます。

たとえば、Pro版のAIアイテムレコメンデーションを使用している場合、ユーザーが何かを購入してから30分以内にマーケティングメールを受信すると、購入したばかりのアイテムがメールから除外されない場合があります。ただし、24時間後に送信されるメッセージにはそのアイテムは含まれません。

ステップ3.2:カタログを選択する

まだ入力されていない場合は、このレコメンデーションがアイテムを取得するカタログを選択します。

ステップ3.3:セレクションを追加する(オプション)

レコメンデーションをより細かくコントロールしたい場合は、セレクションを選択してカスタムフィルターを適用します。セレクションは、ブランド、サイズ、場所など、カタログ内の特定の列でレコメンデーションをフィルタリングします。Liquidを含むセレクションはレコメンデーションでは使用できません。

レコメンデーションに対して「在庫あり」セレクションが選択された例。

ステップ4:レコメンデーションを駆動するインタラクションを選択する

このレコメンデーションが最適化するイベントを選択します。このイベントは通常購入ですが、アイテムとのあらゆるインタラクションにすることもできます。

以下の項目で最適化できます。

  • 購入オブジェクトによる購入イベント
  • 購入を表すカスタムイベント
  • その他のアイテムインタラクション(商品閲覧、クリック、メディア再生など)を表すカスタムイベント
  • 注文確定イベントによる注文確定

カスタムイベントを選択した場合は、リストからイベントを選択します。

イベントの現在のトラッキング方法として「purchase」カスタムイベントが選択されている画面。

ステップ5:対応するプロパティ名を選択する

レコメンデーションを作成するには、インタラクションイベント(注文確定イベント、購入オブジェクト、またはカスタムイベント)のどのフィールドが、カタログ内のアイテムのidフィールドに一致する一意の識別子を持つかをBrazeに伝える必要があります。不明な場合は、要件を確認してください。

プロパティ名に対してこのフィールドを選択します。

プロパティ名フィールドには、SDKを通じてBrazeに送信されたフィールドのリストが事前に入力されます。十分なデータが提供されている場合、これらのプロパティは正しいプロパティである確率の高い順にランク付けされます。各プロパティ名の横に表示されるスコアは、カスタムイベント、購入オブジェクト、または注文確定イベントのイベントデータにカタログアイテムIDがどの程度の頻度で出現するかなどの要因に基づいて、そのプロパティがカタログデータとどの程度一致するかを示しています。カタログのidフィールドに対応するプロパティを選択してください。

カタログ内のアイテムIDに対応するプロパティ名「purchase_item」が選択されている画面。

要件

プロパティを選択するためのいくつかの要件があります。

  • 選択したカタログの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"があり、サンプルカタログの最初のアイテムに一致します。

{
  "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を使用してサンプルカタログの最初と3番目のアイテムに一致させることができます。

{
  "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として設定することで、サンプルカタログの最初と3番目のアイテムに一致させます。

{
  "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"があり、カタログの最初のアイテムにマッピングされます。

{
  "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"
      }
    }
  ]
}
propertiesフィールドにマッピングされた購入オブジェクトの例

このイベントにはプロパティ"sku": "ADI-RD-8"があり、カタログの2番目のアイテムにマッピングされます。

{
  "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にマッピングされた注文確定オブジェクトの例
{
  "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時間かかる場合があります。レコメンデーションのトレーニングが正常に完了した場合、または作成が失敗した理由の説明とともに、メールで更新が届きます。

レコメンデーションは予測ページで確認でき、必要に応じて編集またはアーカイブできます。レコメンデーションは毎週(有料版)または毎月(無料版)自動的に再トレーニングされます。

New Stuff!