Microsoft Power Platform×AI Builderで作る購買予測

1. AI Builderによる購買予測

顧客の購買行動を予測してスコアリングし、分析に役立てるニーズは年々高まっています。しかし、ゼロから機械学習モデルを構築・実装するには、データサイエンティストによる専門知識や、多大な開発工数・インフラ構築が必要となり、プロジェクトがPoC(概念実証)の段階で頓挫してしまうケースも少なくありません。

そこで、アプリケーションエンジニアや情報システム担当者にとって強力な選択肢となるのが、Microsoft Power PlatformのAI機能である「AI Builder」です。IT開発スキルや機械学習の深い専門知識がなくても、ノーコードで予測モデルの構築や文字認識などのAI機能を活用し、分析に使用する処理に迅速に組み込むことが可能です。

本記事では、「とりあえず動くAI予測モデルを作ってみたい」「PoCを素早く回したい」と考えるIT技術者向けに、オンラインショッピングサイトでの購買予測を題材として、最小構成のアーキテクチャで購買予測モデルを構築する手順をご紹介します。

2. 本記事で使用するAI Builderのモデル種類

AI Builderが提供するAIモデルは、主に独自のデータで学習させるカスタムモデルと事前構築済みモデルの2つに分類されます。様々なモデル種類が提供されており、解決したい目的に応じて最適なものを選択できます。本記事では「顧客の購買予測」に最適なカスタムモデル分類の予測モデルを使用します。

表1:モデル種類一覧

分類 概要 種類
カスタムモデル 自社の独自データで学習させるモデル 予測モデル、カテゴリー分類モデル、物体検出モデル他

事前構築済みモデル

名刺認識や感情分析など、即利用可能な学習済みモデル テキスト認識モデル、感情分析モデル、キーフレーズ抽出モデル他

本記事で使用する予測モデルは、機械学習における「二値分類」アルゴリズムを採用しています。入力されたデータに基づき、特定の結果(購入する/しない)が発生する購買確率を0.0~1.0の範囲で算出します。この仕組みを押さえておくことで、後続の「確率」の値をどの閾値で処理すべきか、その判断基準をスムーズに理解できるようになります。

3. 【実践】オンラインショッピングの購買予測モデル構築

オンラインショッピングを題材に、AI Builderを使って「オンラインショッピングサイトに訪れた顧客が最終的に購入に至るか」を予測するモデルを構築します。

3.1 前提条件

今回のデモでは以下のライセンスおよび学習データを利用します。

▼ライセンス

Power Apps Developer プラン(開発者ライセンス)

▼予測モデルの学習データ

予測モデルの学習データは、Microsoftが提供するMicrosoft Power Appsサンプルデータである「aib_onlineshopperintention.csv」を使用します。

※ダウンロード元

3.2 シナリオ・デモ範囲

Microsoft Power Pages で作成されたショッピングサイト訪問者のログデータ(閲覧数や滞在時間、ページ価値など)を、Microsoft Dataverseテーブルに保存します。次にそのデータをトレーニング済みの予測モデルに入力し、予測結果(購買有無(Prediction)、購買確率(Likelihood)、予測に影響した要因(Explanation))を生成します。

予測結果を元のログデータとあわせて Microsoft Power BI で分析することで、顧客行動の傾向把握や、クーポン配布・製品レコメンドなどの購買促進アクションにつなげられます。

今回は、AI Builder の予測モデルの仕組みを理解することを目的としています。事前にAI Builderで予測モデルを作成し、Microsoft Dataverseに疑似的に登録したログデータをもとに予測し、その予測結果を Microsoft Dataverseに格納するデモを紹介します。

図1:シナリオとデモ範囲

3.3 【Step1】予測対象(テーブル)の作成

まず、予測のベースとなるデータが蓄積されたMicrosoft Dataverseのテーブルを作成します。

① 予測モデルの学習データを取得し、ダウンロードしたCSVファイルの見出しを日本語に変換します。

② 「Power Apps」 >「テーブル」 > 「ExcelまたはCSVファイルで作成する」 からCSVファイルをインポートして顧客ウェブサイト行動テーブルを作成します。

図2:ExcelまたはCSVファイルで作成する

③ 作成した顧客ウェブサイト行動テーブルは、以下の通りです。

図3:顧客ウェブサイト行動テーブル

④ 予測モデルが生成した結果を格納するため、「Power Apps」 >「テーブル」 > 「顧客ウェブサイト行動」 > 「編集」> 「+新しい列」 から予測、確率、説明それぞれの列を追加します。

図4:顧客ウェブサイト行動テーブル(予測列追加後)

3.4 【Step2】予測モデルの作成

前項 3.3 でインポートした顧客ウェブサイト行動テーブルを学習データとして、顧客ウェブサイト行動テーブルの購入成立(成約)を予測するモデルを作成します。

① 「Power Apps」 >「AI ハブ」 >「AI モデル」>「履歴データから将来の結果を予測する」から予測モデルを作成します。

作成するモデル名:オンライン顧客購買予測モデル

予測対象:顧客ウェブサイト行動テーブルの購入成立(成約)

図5:履歴データから将来の結果を予測する

② モデルを作成したら、「トレーニングする」より学習データをもとにトレーニングを実行します。

図6:トレーニングの実行

③ トレーニングを実行すると、作成したモデルのパフォーマンスと最も影響を与えるデータの比率が表示されます。問題がなければモデルを公開します。

図7:トレーニング結果・モデルの公開

表2:パフォーマンス別ガイド一覧

パフォーマンス ガイド
A (最高) モデルを改善できる余地もありますが、これは取得できる最高グレードです。
B (良好) 多くの場合でこのモデルは適切です。 モデルを改善できるかどうかは、 ユーザー独自の状況、データ、および要件によって異なります。
C (平均) このモデルは、ランダム推測よりも多少優れています。 一部のアプリケーションでは許容できる可能性がありますが、ほとんどの場合、このモデルは調整と改善を続けることになります。
D (不十分) 何らかの問題があります。 モデルのパフォーマンスが、実行するランダムな推測で予想されるよりも悪い(アンダーフィット モデル)。
または、パフォーマンスが非常に高い(100% またはほぼ 100%)ため、結果に直接相関するデータ列が取得される可能性がある(オーバーフィット モデル)。

学習データを選択する際、「購入完了日時」のように「購入後に確定する情報」を含めてしまうと、モデルは不自然に高精度になる可能性があるものの、実運用では使い物にならないモデルになってしまいます。 「予測の時点(ショッピングサイト訪問時)で取得できているデータのみ」を選択することが、実用的な予測モデル構築の適切な方法です。

3.5 【Step3】データ連携フローの作成

顧客ウェブサイト行動テーブルに新規顧客データが追加されることをトリガーに、オンライン顧客購買予測モデルで予測、確率、説明を生成して、生成結果を顧客ウェブサイト行動テーブルに格納するフローを作成します。

① 「Power Automate」>「My Flows」>「New Flow」>「Automated cloud flow」 から予測結果を顧客ウェブサイト行動テーブルに格納するフローを作成します。

フロー名:予測モデル実行フロー

トリガー:顧客ウェブサイト行動テーブルにレコードが作成されたら

図8:フローの作成

② 2つのアクションを表3:アクションの設定内容の通り設定したら、フローを保存します。

表3:アクションの設定内容一覧

アクション名 設定内容
Predict Model:オンライン顧客購買予測モデル
Parametersには予測モデルに読み込ませたい項目を指定
Update a row テーブル名:顧客ウェブサイト行動
Row ID:顧客ウェブサイト行動(エンティティのインスタンスを表す一意識別子)
更新項目:予測、確率、説明

図9:フローの完成形

実際の開発プロジェクトでは、開発環境で作成したフローを本番環境へエクスポート(ソリューション化)して移行します。
その際、AIモデルのIDやDataverseの接続先を「環境変数」として定義しておくことが重要です。これにより、本番環境へのデプロイ時にフローの中身を直接修正することなく、接続先をスムーズに切り替えることが可能になります。保守性と安全性を高めるための、プロの開発現場におけるテクニックのひとつです。

3.6 【Step4】実行・検証

顧客ウェブサイト行動テーブルにログデータを登録し、予測モデルにより予測結果(予測、確率、説明)が正しく生成されていることを検証します。

① 「Power Apps」>「テーブル」>「顧客ウェブサイト行動」>「編集」>「+新しい行」 からDataverseで作成した顧客ウェブサイト行動テーブルに新規データを手動で登録します。

今回は、「ページ価値」列の値(顧客が閲覧したページそのものの価値)を変えたデータを計11件登録して、予測結果の違いを検証します。

図10:新規データ登録

② 「Power Automate」>「My flows」>「予測モデル実行フロー」>「Run history」でフローの実行結果を確認します。

図11:実行履歴

③ 予測結果(予測、確率、説明)が顧客ウェブサイト行動テーブルに反映されていることを確認します。

図12:実行後のテーブル

3.7 【Step5】出力結果の検証

全11名の対象者のうち、オンライン顧客購買予測モデルの解析で「購入予測=はい、確率63%」と算出されたTestCstmr10と11の2名を、購買層として特定しました。

購買層の予測確率(63%)と非購買層の予測確率(6%~16%)の間に明確なスコア乖離があり、オンライン顧客購買予測モデルは一定の識別能力を有していると評価できます。これは「購買確率が高いグループ」と「低いグループ」の間に曖昧な境界線がなく、数値としてハッキリと分かれた(乖離した)結果を確認できたためです。

また、予測根拠として全体の傾向を示す「グローバル重要度」に加え、個別の顧客特性を反映した「ローカル重要度」を算出しました。

これにより「なぜその購買予測となったのか」という具体的な根拠も把握でき、よりパーソナライズされたアプローチへの活用が期待されます。

▼検証結果のまとめ

① 購買予測

・ 2名(TestCstmr10, 11)を購買層と判定

② 予測確率(スコア)

・ 購買予測者:63% / 非購買予測者:6%~16%

・ 両グループ間に明確な差異があり、モデルの有効性が示唆されている

③ 説明(ローカル重要度)

・ 各データ行に対し、予測に寄与した特徴量(列情報)を算出

補足: Step2の「グローバル重要度」がモデル全体の傾向を示すのに対し、本アクションで返される「説明」は、個別の予測値に対する具体的な根拠を示すものです。

図13:実行結果の検証

4. おわりに

Microsoft Power PlatformとAI Builderを組み合わせることで、イベントの新規登録からAIモデルによる推論、データベースへの格納までの処理が自動化され、ノーコードで非常にスムーズに予測システムを構築できることが確認できました。一方で、この仕組みを本番環境や実業務に適用していくためには、IT技術者として以下の点に留意する必要があります。

・データ品質と量の担保:
今回はサンプルデータを使用しましたが、実務では予測精度(「確率」や「説明」の信頼性)は学習データの品質と量に直結します。基幹システムからDataverseへのデータ統合パイプラインの設計が重要になります。

・モデルの劣化と再学習のサイクル:
顧客の購買傾向は変化するため、一度作成したモデルは陳腐化します。定期的に最新のデータでモデルを再トレーニングする運用の仕組み作りが必要です。

・キャパシティとコスト管理:
AI Builderの実行にはAIクレジットを消費します。管理センターから消費量をモニタリングし 、費用対効果を見極める運用が求められます。

なお、AI Builder の消費量は Power Platform 管理センターの「容量」から確認できますが、閲覧には「Power Platform 管理者」または「全体管理者」の権限が必要です。

機械学習のインフラ構築や初期学習のハードルを劇的に下げるAI Builderは、スモールスタートでの仮説検証に最適なソリューションです。まずは手元の小さなデータセットから、本記事の最小構成デモを構築し、その手軽さと有効性を体感してみてください。

 

※Microsoft Power Platform、Microsoft Power Apps、Microsoft Power Automate、Microsoft Dataverse、Microsoft Power BIは、米国 Microsoft Corporation の米国およびその他の国における登録商標または商標です。

お問い合わせ先

執筆者プロフィール

Shibagaki Amika
UiPathでの開発や保守を経験し、現在ではMicrosoft Power Platform製品にも関わっています。
最近は、AIと連携したRPAでの業務効率化に興味があります。

関連記事