見出し画像

【第371回】 Marketing Cloud Next : 繰り返しコンポーネントとレコメンダー

Marketing Cloud Next(Marketing Cloud Growth & Advanced Edition)では、Salesforce Personalization(日本語名:パーソナライズ、旧称:Einstein Personalization)の機能の一つである レコメンダー(日本語名:おすすめ)を活用できます。

これにより、ディープラーニング(AI)ビジネスロジック(数学的計算)を組み合わせ、ユーザーごとに最適化されたレコメンデーションを自動生成することが可能です。

本記事でカバーするパーソナライゼーション機能
・✖️ 統合個人のデータモデルオブジェクト(直接属性)
・✖️ データグラフ(直接属性と関連属性)
・✖️ イベントデータ
・⭕ パーソナライゼーションレコメンダー(Salesforce Personalization)

パーソナライズの基本 については、以下の記事をご覧ください。

Growth& Advanced Edtions のメールでの利用方法

レコメンダーをメールに組み込む場合、現状では 「繰り返し」コンポーネント 内でのみ利用可能です。「繰り返し」コンポーネントについては、以下の記事をご確認ください。

レコメンダー利用時の考慮事項

  • 利用可能エディション:Marketing Cloud Advanced Edition のみ

  • クレジット:パーソナライズ用のクレジット購入が必要

  • データソース:メールのデフォルトと同じデータグラフに基づいた学習済みレコメンダーのみ選択可能

  • トレーニング:新しいレコメンダーを使う際は、少なくとも 1 回の学習期間を確保する必要あり

  • 設定後の制約:データソースは置き換えは可能ですが、削除は不可

今回の記事では、この レコメンダーを活用したメール配信手順 をご紹介します。


レコメンダーの設定方法

今回の例では、比較的簡単に実装できる「ルールベースのレコメンダー」を使って、「売上金額の合計が多い順」にアイテムを表示してみます。さらに条件として、Web 上で販売可能な商品だけを対象にする条件 や、ユーザーの趣向に合わせた一覧を表示する仕組み も組み合わせていきます。

レコメンダー設定に必要なデータグラフ

レコメンダーを利用するには、次の 2 種類のデータグラフが必要です。

  1. プロファイルデータグラフ

  2. アイテムデータグラフ


① プロファイルデータグラフ

「プロファイルデータグラフ」には、Marketing Cloud の初期セットアップで登録した「デフォルトのデータグラフ」を利用できます。データグラフの基本的な設定方法は以下を参考にしてください。今回は、「Favorite Genre」という趣向の項目を持ちます。

Tips:一般的なパーソナライズでは リアルタイムプロファイルデータグラフ を利用しますが、今回のような即時性が求められないケースでは 標準データグラフ で十分です。もちろん、コストを考慮しつつにはなりますが、リアルタイムデータグラフに切り替えることも可能です。その場合はデフォルトのデータグラフ設定も変更してください。


② アイテムデータグラフ

次に「アイテムデータグラフ」です。
このアイテムデータグラフは、コンテンツ上で表示されるアイテムを保持する DMO(Data Model Object) であり、ここでチェックを入れた項目がリピーターコンポーネント内で利用できるようになります。

プライマリ DMO として設定する標準 DMO の代表例は、以下の通りです。

  • Goods Product DMO(製品情報)

  • Knowledge Article Version DMO(ナレッジ記事)


データグラフ設定の注意点

  • プライマリ DMO のカテゴリは「エンゲージメント以外 である必要があります。

  • データストリームやデータレイクオブジェクトに DMO がマッピングされていないとデータグラフ作成時に選択できないため、データ有無に関わらず、事前にマッピング しておくことが重要です。


小売設定の場合の Goods Product の変更の例

標準項目だけでは不足する場合は、必要に応じてカスタム項目を追加します。例えば、標準では「画像 URL」項目などが存在しません。

1. Data Cloud で「データモデル」タブを開き、Goods Product オブジェクトを検索して、選択します。

2. 「編集」をクリックして一番下までスクロールして、以下のカスタム項目を追加して、保存します。

  • Unit Price(API 名:UnitPrice)・・・ データ型:数値

  • Image URL(API 名:ImageUr)・・・ データ型:テキスト

ちなみに、数値型の Unit Price は金額計算のために必要ですが、そのままメールに表示すると「0.0」のように小数点付きで表示されてしまいます。
小数点以下の表示が不要な場合は、表示専用の数値項目を別途作成し、そちらをメール用に連携することをおすすめします。今回は無視します。

この点については、以下の記事で詳しく解説しています。


アイテムデータグラフの設定の例

最終的にアイテムデータグラフ作成時に選択した項目は、すべてメールで利用可能になります。そのため、Goods Product での項目準備が重要です。

さらに、ここで「Total Sales Value」という計算済みインサイトが表示されていることに気づくと思います。これは私がカスタムで作成した計算済みインサイトで、この計算済みインサイトは、後に「ルールベースのレコメンダー」を設定する時に必要となります。


Total Sales Value カスタム 計算済みインサイト

こちらの計算済みインサイトは、通常、ビジュアルインサイトビルダーを使って作成するのが良いと思いますが、分かりやすいようにそのコードを下に書きますと、Sum を使って、商品 ID ごとに「売り上げ数」や「売り上げ金額」を合計したものになります。

- 製品の売り上げデータは、「Sales Order Product Engagement」標準 DMO を活用して、そちらにデータを入れています。

- ビジュアルインサイトビルダーで 2 つの DMO を結合(Join)するために、事前に「Sales Order Product Engagement」の Product Id と「Goods Product」のGoods Product Id を N:1 でリレーション設定してください。

SELECT 
    SUM(ssot__SalesOrderProductEngagement__dlm.ssot__OrderedQuantity__c) AS total_quantity__c,
    SUM(ssot__SalesOrderProductEngagement__dlm.ssot__UnitPriceAmount__c) AS total_amount__c,
    ssot__GoodsProduct__dlm.ssot__Id__c AS goods_product_id__c
FROM 
    ssot__GoodsProduct__dlm
JOIN 
    ssot__SalesOrderProductEngagement__dlm
    ON (
        ssot__GoodsProduct__dlm.ssot__Id__c = ssot__SalesOrderProductEngagement__dlm.ssot__ProductId__c
        AND ssot__GoodsProduct__dlm.KQ_Id__c = ssot__SalesOrderProductEngagement__dlm.KQ_ProductId__c
    )
GROUP BY 
    goods_product_id__c

Tips:ディメンションは「ssot__GoodsProduct__dlm.ssot__Id__c AS goods_product_id__c」としないと、データグラフの設定時に「Goods Product」の下に紐づけることができません。

これは、計算インサイトが、セグメント対象(Segment On)オブジェクトとリレーション関係があり、さらに、セグメント対象(Segment On)のプライマリーキー属性が、計算インサイトのディメンションとして存在する必要があるという制約に基づきます。


レコメンダーの新規作成

1. 2 つのデータグラフを準備できたら、「パーソナライズ」アプリの「レコメンダー」タブに移動し、「新規」をクリックします。

2. データスペースを指定し、プロファイルデータグラフには Marketing Cloud の「デフォルトのデータグラフ」 を選択します。

3. 続いて、対象となるアイテムデータグラフを選択します。

4. レコメンダー名と API 参照名を入力し、保存します。

5. 「ルールベースのレコメンダー」 を選択します。

6. 先ほど設定したアイテムデータグラフに紐づく 計算済みインサイト を選びます。

7. 計算済みインサイトには「商品あたりの総個数」と「商品あたりの総金額」の 2 つのメジャーが含ませてありますが、今回は 「総金額」 を選択します。

8. 売上金額が大きい順に並べたいので、「降順」 を指定し、次へ進みます。

9. 続いて、フィルター設定を行います。ここが重要ポイントです。アイテムデータグラフの値に静的な条件を付けたり、プロファイルデータグラフとの属性比較が可能です。今回は次の条件を設定します。

  • Is Sellable = "Y" の商品だけを表示

  • アイテムカテゴリとプロファイルカテゴリが一致する 商品だけを表示

これにより「販売可能」かつ「ユーザーの趣向に合致」し、さらに「売上金額が高い順」の商品が提示されるため、売上最大化が期待できます。

10. 設定が完了したら保存します。

11. 保存後、最終的にステータスが 「完了」 になったものが、コンテンツで利用可能ですので、必ず確認してください。

注意点:今回は、比較的簡単に実装できる「ルールベースのレコメンダー」を利用しましたが、「目的ベースのレコメンダー(AI)」を利用するには、このタイミングでトレーニング(学習) が開始され、「完了」する必要があります。前述の考慮事項にも書きましたが、学習期間の確保が必要です。


リピーターコンポーネントの設定

1. レコメンダーが完成したら、Marketing Cloud の「コンテンツ」タブに移動し、「データソース」タブを開きます。

2. 「追加」ボタンをクリックします。

3. データソース名を入力し、種別で「Personalization Recommendations Data Provider」を選択します。

4. 「Goods Product」の下に、先ほど作成したレコメンダーが表示されるので選択し、保存します。※最初に触れた注意点の通り、レコメンダーは 置き換えは可能ですが削除はできません

注意:SDO 環境においては、この時点まで進むことは可能ですが、この先は、以下のエラーが出て進めなくなる可能性があります。作成できる環境もあるようです。

5. これでデータソースの登録が完了したように見えますが、実際には 「繰り返し」コンポーネント側でも改めてデータソースを設定する必要があります。この作業は、1つのメールに複数の「繰り返し」コンポーネントを配置できるようにするためのものです。

6. 「繰り返し」コンポーネントをドラッグ&ドロップすると、右側に「繰り返しデータソース」の設定欄が表示されます。

7. 「繰り返しデータソース」から、先ほど作成したレコメンダーを選択します。

8. 繰り返しコンポーネントで単にデータグラフを利用した場合と異なり、この段階でフィルターやソートはできません。レコメンダーの場合は、作成時点で条件設定を完了させておく必要があるためです。ここでは表示レイアウトを整えます。

9. 以降の手順は通常の「繰り返し」コンポーネントと同様です。参考記事を参照しながら、メール作成を進めてください。

※コンテンツ内で差し込み項目を設定する際は、「Recommendations」 から選択してください。

10. メールが完成したら保存して公開します。その後、「Favorite Genre」の値を持つ受信者に対して、セグメントトリガーフローで送信してください。


メールの確認

Rock という Favorite Genre を持つ受信者に以下のメールが届きました。

Jazz という Favorite Genre を持つ受信者に以下のメールが届きました。


いかがでしたでしょうか。

本家の Salesforce Personalization では、応答テンプレートやパーソナライズポイント、決定ルール・ターゲティングルールなど、レコメンダー作成後にも追加の設定が必要になります。

一方で、Marketing Cloud Next(Growth & Advanced Editions)でのメール配信に活用する場合は、レコメンダーの設定だけで完結できるという点が特徴です。

最後に、Edition ごとに利用できるパーソナライゼーション機能の違いも整理しておきましょう。

Edition ごとの利用可能なパーソナライゼーション機能

  • 統合個人(直接属性のみ)を活用したパーソナライゼーション
    = Unified Individual Data Provider

    • ✅ 利用可能:Marketing Cloud Growth & Advanced Edition

    • ✅ 利用可能:Salesforce Starter & Pro Suite

  • データグラフ(直接属性と関連属性)を活用したパーソナライゼーション
    = Data Graph Data Provider

    • ✅ 利用可能:Marketing Cloud Growth & Advanced Edition

    • ❌ 未対応:Salesforce Starter & Pro Suite

  • イベントデータを活用したパーソナライゼーション
    = Event Data Provider

    • ✅ 利用可能:Marketing Cloud Growth & Advanced Edition

    • ✅ 利用可能:Salesforce Starter & Pro Suite

  • パーソナライゼーションレコメンダーを活用したパーソナライゼーション
    = Personalization Recommendations Data Provider

    • ✅ 利用可能:Marketing Cloud Advanced Edition

    • ❌ 未対応:Salesforce Starter & Pro Suite, Growth Edition

今回は以上です。


次の記事はこちら

前回の記事はこちら

私の note のトップページはこちら