次の方法で共有


よく一緒に購入されるモデルの構成 (プレビュー)

重要

この機能の一部またはすべては、プレビュー リリースの一部として利用できます。 コンテンツおよび機能は変更される場合があります。

よく一緒に購入されるモデルを展開できたら、レイクハウスで利用可能なデータに関する分析情報を生成するようにモデルを構成する必要があります。

前提条件

「よく一緒に購入される商品」を構成するには、Fabric 管理者 (ワークスペース コントリビューター) アクセス許可が必要です。

モデルを構成して分析情報を生成する

ノートブックは、必要な出力を提供するためにデータがどのように処理されるかを説明する次のセルで構成されます。

注意

次のセルは、推奨される特定の順序で使用されます。 異なる順序で使用すると、ノートブックは失敗します。

ステップ 1. ライブラリをインポートする

このステップでは、ノートブックに必要なライブラリをインポートします。 このステップで、変更を行う必要はありません。

ステップ 2. Spark 構成、ロガー、チェックポインターを初期化する

このステップでは、ノートブックの実行に使用される Spark 構成、ロガー、およびチェックポイント作成オブジェクトを初期化します。

ロガーは 2 つの異なる方法で初期化できます:

  • ノートブックのセル出力にログを書き込むように設定します。 この動作はデフォルトです。

  • ログを Microsoft Azure Application Insights ワークスペースに書き込むように設定します。 このアプローチでは、Application Insights ワークスペースの connection_string が必要です。 システムは実行 ID を生成し、それをセルの出力に表示します。 実行 ID を使用して、Application Insights ワークスペースのログをクエリできます。

チェックポインターを使用すると、Spark 実装を同期し、重複キーが生成される可能性を回避できます。 作業ディレクトリとして使用する予定のパスを指定する必要があります。 変数の名前は checkpoint_dir です。 ディレクトリは、レイクハウスのファイル セクション内にある必要があります。つまり、"Files/" で始まる必要があります。

ステップ 3. レイクハウスに接続し、入力テーブルを読み取る

このステップでは、レイクハウスに接続し、モデルに必要な入力テーブルを読み取ります。 入力テーブルは、次の 3 つのオプションの 1 つから読み取ることができます:

  • ノートブックの固定されたレイクハウス。サンプル データが含まれています。 これが既定のオプションです。

  • ノートブックに接続されたレイクハウス。 ドロップダウン メニューからレイクハウスを選択できます。

  • ノートブックに接続されていない別のレイクハウス。 レイクハウスへの完全なパスを指定する必要があります。

入力テーブルの詳細については、よく一緒に購入される商品の入力データをご覧ください。

ステップ 4. モデルの分析期間を定義する

ノートブックを使用すると、複数の期間でモデルを実行できるため、顧客の行動、製品ポートフォリオ、および製品のポジショニングにおける季節性や変化を時間の経過とともに把握するのに役立ちます。 すぐに使えるダッシュボードを使用して、さまざまな期間の結果を比較することもできます。

期間を定義するには、add_analysis_period 関数を使用します。 入力データの期間内で分析期間を定義してください。 入力データの継続時間 (トランザクションの最大および最小タイムスタンプ) がセルの出力に記録されます。 最大 5 つの期間を定義できます。 期間の参照キーは TimePeriods テーブルに保存されます。

ステップ 5 入力データを前処理する

このステップでは、入力データフレームを結合して POS データセット を作成します。これは、モデルが分析情報を生成するために使用します。 このステップで、変更を行う必要はありません。

このステップの出力には、次のデータフレームが含まれます:

  • 購入 - 購入 POS データフレームには、小売エンティティ ID、製品 ID、製品リスト価格、数量、訪問タイムスタンプなど、顧客が行った購入に関する情報が含まれています。 このデータフレームは、Visit、ShopperSession、ShopperSessionTransaction、および TransactionLineItem のテーブルを結合することによって作成できます。

  • time_periods - このデータフレームには、前のステップで定義した分析期間が含まれます。 これらの期間を使用してデータを分割し、各期間でモデルを実行できます。

  • retail_entities - このデータフレームには、小売エンティティ ID とその情報が含まれています。 小売エンティティは、個々の店舗または小売業者です。 これらのエンティティを使用して、店舗レベルまたは小売業者レベルでモデルを実行できます。

ステップ 6: モデル パラメーターを定義し、モデルを実行する

次のモデル パラメーターを設定して、モデルの結果を微調整できます。

  • パラメーター名: min_itemset_frequency

    • 説明: モデルの分析で考慮されるアイテム セット (一緒に購入された 2 つの製品の集合) の購入の最小数。

    • 値の種類: 整数

    • 既定値: 3

    • 必須: true。

    • 許可される値: >=1

  • パラメーター名: max_basket_size

    • 説明: 1 つのバスケットに入れるアイテムの最大数。 バスケット内のアイテムの数がデフォルト値を超える場合、バスケットはトリミングされます。 データセットで最も売上の低い製品が最初にトリミングされます。

    • 値の種類: 整数

    • 既定値: 20

    • 必須: true。

    • 許可される値: >=1

  • パラメーター名: chi_2_alpha

    • 説明: 統計的有意性パラメーター。 一緒に関連付けられた製品のペアが意味があり、統計的に有意であるかどうかを判断するために使用されます。 製品のペアのスコアがパラメーター値未満の場合、RuleAttributes テーブルの Chi2IsSignificant フィールドでフラグが立てられます。

    • 値の種類: 浮動

    • 必須: false

    • 既定値: 0.05 パーセンタイル

    • 許可される値の範囲: 0-1

実行すると、データが出力テーブルに書き込まれます。 どのレイクハウスに書き込むかを定義するには 3 つのオプションがあります。

ステップ 7: Power BI ダッシュボード テーブルを作成する

このステップでは、Power BI ダッシュボード テーブルを作成します。 レイクハウスに接続して入力テーブル セクションを読み取ると同様、Fabric に出力を書き込む方法は 3 つあります。

Power BI ダッシュボード テーブルの作成が完了すると、システムはデータをレイクハウスに書き込みます。 詳細については、出力データ テーブル を参照してください

ステップ 8: 「優れた関連性」のみを持つビューを作成する

「優れた関連性」は、SQL コードで設定された基準に基づいて、製品間の強力かつ統計的に有意な関係を示唆する分類です。 「優れた関連性」は、SQL コードの条件文に基づいて設定される StrengthOfAssociation 列から派生します。 このロジックは、FBT テーブルの RuleQualityCategoryId 列と IsSignificant 列の値に基づいて、製品間の関連の強さを分類します。

「優れた関連性」とは、RuleQualityCategoryId が 2 (高品質の関連性ルールを示す) であり、IsSignificant が 1 (関連性が統計的に有意であることを示す) の場合を指します。

IsSignificant が 0の場合、ルール カテゴリは優れていると考えられるものの、データが不十分なために重要性が限定される可能性があることを意味します。

このステップでは、「優れた関連性」のみを持つビューを作成します。 このステップにより、製品が対称型になります。 基本的に、Product1=A かつ Product2=B の場合、Product1=B かつ Product2=A として対称レコードを作成する必要があります。 A と B を別々に照会する必要があります。

ステップ 9: Power BI ダッシュボード テーブル パラメーター

num_top_associated_products パラメーターを使用して、各製品の Power BI ダッシュボードに表示する関連上位製品の数を構成できます。

  • 説明 - Power BI ダッシュボードに表示される各製品の関連製品の最大数。 組み合わせランク フィールドで並べ替えた上位の製品を返します。

  • 値の種類 - 整数

  • 必須 - false

  • 既定値 - 5

  • 許可される値の範囲: - 1-10

ステップ 10: ビューを作成する

前の情報からビューを作成し、購入金額と数量を週平均として計算できます。

このステップでは、個別に表示する各製品基準/グループのデータを複製します。 各店舗/小売業者、期間、通貨をランク付けすることで、このステップを完了できます。

  • すべての商品 (よく一緒に購入される商品が他の商品と一緒の場合)

  • よく一緒に購入される商品の売り上げ上位 10 件 (メイン + よく一緒に購入される商品)

  • よく一緒に購入される商品の売り上げ下位 10 件 (メイン + よく一緒に購入される商品)

  • 主要商品の売り上げベストセラー

  • 主要商品の売り上げ最下位

ビューには、各店舗/小売業者、期間、通貨、製品基準の主な商品 (Product1) が、その週ごとの売り上げ、数量、およびよく一緒に購入されるすべての製品の売り上げの合計とともに表示されます。

ステップ 11: Power BI ダッシュボードで使用するテーブルを作成する

この最後のステップで作成したテーブルは、他の Power BI メジャーや計算列を作成する必要なく、直接使用できます。

TableColProductGroupType に応じて 3 種類のレコードが存在します:

  • Type=1: TableColProductGroup="Group N" - このレコードは、よく一緒に購入される商品のダッシュボード テーブルの一部である主要商品を表します。

  • Type=2: TableColProductGroup="Main product" - このレコードは、よく一緒に購入される商品のダッシュボード テーブルの一部である主要商品を別のレコードとしても表します。

  • Type=3: TableColProductGroup="FBT product" - このレコードは、主要商品に関連付けられた商品を表します。

これで、データのクリーンアップが完了し、ノートブックを使用して適切なフィルターで Power BI レポートを作成しました。 このレポートを使用して、アクション可能な分析情報を得ることができます。