分析のためのセマンティックモデルを設計する
学習の目的
この単元を完了すると、次のことができるようになります。
- AI ドリブンの分析に対応したセマンティックモデルを構築するためのベストプラクティスを適用する。
- 要件をより深く理解したうえで AI 用のセマンティックモデルを開発する。
はじめに
適切に設計されたセマンティックモデルは強力な分析ツールとなります。セマンティックモデルは、分析エージェントがデータを理解して、自信を持って質問に答えることを支援します。この単元では、セマンティックモデルをより強固にする方法と、AI (人工知能) によくある誤解を防ぐ方法について、ベストプラクティスに沿って学びます。各ガイドラインは、製品やエンジニアリングのリサーチ、さらには実際のユースケースから得られた知見に基づいています。
エージェント対応のセマンティックモデルを設計すると、たとえば「第 2 四半期にエスカレーションされたケースは何件か?」や「今年の返金率は昨年と比べてどうか?」といった質問に対し、エージェントが有用な回答を提供できるようになります。
カスタムオブジェクトに明確で具体的な表示ラベルを付ける
エージェントは、項目名やオブジェクト名を頼りにデータを理解します。カスタム項目に具体的で説明的な表示ラベルを付けることで、エージェントはそのデータを正しく認識して適用できるようになります。
まずは、あいまいな表示ラベルを置き換えることからデータの準備を始めましょう。たとえば、セマンティックモデルを見直しているときに、Product (商品) テーブルに Start Date (開始日) という項目があることに気付いたとします。Start Date (開始日) という項目名は、たとえば利用開始日、製造開始日、マーケティング開始日など、さまざまな意味に解釈できるため、あいまいです。このようなあいまいさを排除するには、Product.Availability Start Date (商品利用開始日) のように名前を変更します。
Data Cloud で新しい項目を作成する際は、最初から分かりやすい名前と表示ラベルを使用しておくことで、混乱を未然に防ぐことができます。また、略語は使用せずに明確さを保つことで、誤解を防ぎましょう。
プロのヒント: カスタム項目には、ビジネス向けのわかりやすい表示名を使用しましょう。このような追加情報と明確さによって、エージェントは項目とその用途をより明確に理解できます。
カスタム項目に説明を追加してコンテキストを補う
エンティティの説明は、AI エージェントが項目の意味などを理解するための貴重な情報です。説明が明確で簡潔であり、コンテキストを補っていることを確認してください。説明はスペースを含めて 255 文字以内に収めましょう。用途、範囲、他のエンティティとの関係性を説明します。あいまいな用語は避け、関連するデータ形式を明記します。これは、後続のプロセスでの解釈の曖昧さを防ぐのに役立ちます。
たとえば、total_net_revenue という項目があり、「この場合の収益とは何か」をエージェントに理解させたいとします。このとき、説明に「Revenue number (収益の数値)」と書くのではなく、次のように詳細な情報を追加しましょう。「Total revenue from product sales after discounts, returns, and allowances.Calculated in USD from finalized ERP transactions.Updated daily.Used to assess company earnings and performance trends. (商品販売による収益の合計額 (割引、返品、値引きを差し引いた後の金額)。確定済みの ERP 取引をもとに USD で算出。毎日更新。企業の収益や業績傾向を評価するために使用される。)」表示ラベルを繰り返すだけの説明や、項目の使い方を説明していない説明は避けてください。
プロのヒント: LLM を使用して項目やオブジェクトの説明をテストしましょう。エージェントに「この項目をどう解釈しますか?」と尋ねてみてください。
あいまいさを排除する
あいまいな項目は、エージェントだけでなくユーザーにも混乱を与えます。セマンティックモデルを見直していたら、商談データが不明確であることに気付いたとします。ある営業チームは Opportunity.Status=Closed Won の設定で商談成立を示していますが、別のチームは商談成立を示すのに Opportunity.Closed Won=True を使用しています。これでは混乱が生じます。どちらの項目も有効だとしたら、エージェントはどちらを信頼すべきかを判断できません。
このようなあいまいさによって、エージェントが誤った前提で判断し、誤解を招く情報を返す可能性があります。この重複をプロアクティブに解決するには、いくつかの選択肢があります。
まず、セマンティックモデルでビジネス設定を使用してビジネス固有の知識を定義する方法です。これにより、エージェントは自社固有のコンテキストとロジックに沿って分析的な質問に答えることができます。もう 1 つの方法は、両方の表示ラベルと説明を変更して違いを明確にする方法です。たとえば、Closed Won (商談成立) は契約が締結された後に True に設定され、Status は見込み客が顧客に変わった後に変更されます。それぞれの項目には異なる目的があります。エージェントは、名前、説明、項目の役割、サンプル値など、あらゆる情報を見て意味を判断します。モデルの明確性を保つには、類似して見える項目やオブジェクトがないかを定期的に確認しましょう。意味を区別するために、明確な表示ラベルと、適切な説明を使用してください。
注意すべき例:
- 重複する項目名が異なるオブジェクトに存在する。
- 見た目は異なっても同じ意味を持つ類義語を使用している。
冗長な計算項目を避ける
同じ計算のバリエーションが多すぎると、問題が発生します。たとえば、Closed Won (商談成立) を特定するための計算項目が複数存在し、それぞれがわずかに異なるロジックを使用しているとします。ある項目はフェーズ名をチェックし、別の項目は Boolean 項目を使用し、さらに別の項目はカスタムフラグを使用しています。
このような場合は、ロジックを Closed Won (Standardized) という名前の計算項目に統合し、冗長なバージョンは削除または非表示にします。これにより、エージェントの混乱が減り、ビジネスユーザー用のダッシュボードの検索条件も簡素化されます。
ほぼ同じことを行う計算項目が 2 つある場合には、「この新しい計算は、固有のビジネス価値を追加するか?」と自問してください。
重要な質問に対応するメトリクスを定義する
メトリクスは、エージェントがどのロジックを優先すべきかを判断するのに役立ちます。メトリクスが適用する検索条件、日付ロジック、書式により、分析エージェントはデータを理解して再利用しやすくなります。分析や意思決定で頻繁に使用される計算項目は、メトリクスに格上げするのに適しています。メトリクスになれば、再利用可能な自己完結型の回答パターンになります。
セマンティックモデルを見ると、経営陣の質問に直接対応する複数の計算項目があることがわかります。そのうちの 1 つは「今四半期に費やした新規顧客 1 人あたりの獲得コストは?」です。この質問に対して、次の数式を使った計算項目が作成されています。
Customer Acquisition Cost (CAC)=SUM([Marketing Spend])/COUNTD([New Customers].
この計算式のかわりに、Average Quarterly Customer Acquisition Cost (四半期ごとの平均顧客獲得コスト) という新しいメトリクスを作成しましょう。このメトリクスは、次の要素を適用します。
- Measure (基準): Customer Acquisition Cost (顧客獲得コスト) (CAC)
- Time Dimension (時間ディメンション): Lead Creation Date (リード作成日)
- Dimensions (ディメンション): Marketing Channel (マーケティングチャネル)、Campaign Name (キャンペーン名)、Region (地域)、Product Category (商品カテゴリ)
- Filter (検索条件): Customer Status=New (顧客状況 = 新規)
メトリクスを使用することで、分析エージェントは貴重なビジネスインサイトを提供できるようになり、複雑なビジネス上の質問にも詳細に対応できるようになります。
プロのヒント: 計算項目を使用して重要な質問に答えている場合は、メトリクスとして定義しましょう。
定義済みの計算項目を戦略的に活用する
計算項目は、分析エージェントにビジネスロジックを推測させるのではなく、ビジネスロジックを明示的に定義します。たとえば Refund Rate (12M Rolling) (返金率 (12 か月ローリング平均)) という計算項目を作成すると、時間範囲ごとの絞り込みを自動的に行うことができます。これにより、エージェントは毎年の比較を即座に実行でき、ゼロからロジックを組む必要がなくなります。
分析に目的に沿った、明確な表示ラベルと説明を付けた計算項目を作成しましょう。ダッシュボードやエージェントのクエリで使用されない中間項目やヘルパー項目は非表示にしておきましょう。
セマンティックな項目タイプを割り当てる
項目タイプは、クエリでのデータの扱われ方をエージェントに示します。セマンティックモデルを見直した結果、Revenue (収益) と Quantity Sold (販売数量) を基準として、Region (地域)、Customer Segment (顧客セグメント)、Case Type (ケース種別) をディメンションとして設定したとします。
セマンティックロールを明示することで、どの項目を集計し、どの項目をグループ化や検索条件に使うべきかをエージェントが判断しやすくなります。
モデル全体を常に接続する
分析エージェントは、信頼できるデータを必要とします。オブジェクト間の論理的な接続と、情報の明確な階層構造を確保しましょう。すべての目的地が明確に示され、目的地どうしが繋がった正確な地図を作るようなものだと考えてください。
接続性の高いセマンティックモデルは、より優れたクエリをサポートします。また、不完全な回答を減らし、分析エージェントの挙動を予測しやすくします。整理され、相互接続されたセマンティックモデルは、エージェントが必要な情報を取得し、質問に完全かつ正確に回答するのに役立ちます。
まとめ
分析エージェントに対応したセマンティックモデルを設計するということは、明確で理解しやすい構造を作ることを意味します。単にデータを準備するのではなく、データを明確に解釈できるよう準備する必要があります。AI が正しい回答を返すには、データの明確さが欠かせません。
セマンティックモデルの作成を始める際には以下のベストプラクティスを参考にしてください。
- 意味のある具体的な項目名やオブジェクト名を使用する。
- ビジネスでの用途や目的を説明した、明確で簡潔な説明を追加する。
- 重複したロジックやあいまいな項目を削除または非表示にする。
- 高価値の質問に対応してはメトリクスを作成し、必要に応じて計算項目を的確に使用する。
- 項目ロール (ディメンションまたは基準) を割り当て、モデルを常に接続された状態に保つ。
最初の段階で丁寧に準備しておくことで、後のエージェントとのやり取りがよりスムーズで迅速、かつスマートになります。これで、効率的かつ効果的な AI ドリブンの分析を支えるセマンティックモデルに向けて、しっかりと第一歩を踏み出せました。