毎回異なる質問をすれば、スコアが動いたのがブランドのせいか質問のせいか永遠に区別できない。
第2章の通常スキャンは、実ユーザの多様な質問をシミュレートするため各実行時にインテントクエリを動的生成する。これは 「現在ブランドはどれくらいの頻度で言及されるか」 という横断的質問には適するが、縦断的質問には答えられない:「先週と今週で、AIのこのブランドに対する認識はどう変化したか」。
二回のスキャンは異なるクエリセットを使用したため、スコア差分には少なくとも3つの原因候補がある:
この3つを分離しない限り、トレンドラインはノイズである。実際の変化を抽出するには、固定クエリセットによる反復試験が必要である。
flowchart TB
subgraph Regular["通常スキャン(横断)"]
R1[実行毎に新規クエリ]
R2['現在のスコアはいくらか'に回答]
R3[時系列比較に不向き]
end
subgraph Baseline["フェーズ・ベースライン(縦断)"]
B1[固定クエリセット]
B2[週次 / 隔週で反復]
B3['認識はどう変化しているか'に回答]
end
Regular --- Baseline
図 10-1:2つのスキャンタイプは異なる種類の質問に答える。補完的であり、代替不可能である。
response_text)を baseline_test_runs.queries_json および baseline_test_responses に格納flowchart LR
Q["インテントクエリ × 20(固定)"] --> P1[Phase 1<br/>Day 0]
Q --> P2[Phase 2<br/>Day 7]
Q --> P3[Phase 3<br/>Day 14]
P1 -->|比較| P2
P2 -->|比較| P3
P1 -->|比較| P3
P1 --> R[response_text × platforms]
P2 --> R
P3 --> R
図 10-2:3回の投入、1クエリセット、3完全応答セットの比較。
20本は経験則である。データが別の数値を支持するなら将来的に改訂可能である。
フェーズ・ベースライン試験は通常スキャンとオーバーラップしない完全独立データパスで動作する:
| 観点 | 通常スキャン | フェーズ・ベースライン |
|---|---|---|
| クエリ源 | 実行毎に動的生成 | Phase 1で固定 |
| トリガ頻度 | 毎日 / 4h | スケジュール or 手動 |
| メインGEOスコアに算入? | Yes | No(別表示) |
| Stale Carry-Forwardの対象? | Yes | No(失敗時は incomplete マーク) |
| データ保持 | ローリング窓 | response_text 永久保持 |
| Redisキャッシュ使用? | Yes(重複APIコスト削減) | No(毎回新鮮に問い合わせ) |
通常スキャンは同一質問の最近応答をキャッシュし(AIの意見は数分で変わらない前提)、コストを削減する。しかしベースラインの目的はAI意見の変化を測ることであり、キャッシュは測定そのものを破壊する。
ベースライン結果をメインスコアに算入すると、Phase 2とPhase 3の再試験が三重計上効果(近接時間窓で同一ブランドが複数回計上される)を生み、ダッシュボードトレンドを汚染する。分離することでスコアの純度が保たれる。
フェーズ・ベースラインデータの価値は 「スコア変化」 だけではない — 4つの独立観察軸を支える。
flowchart TB
subgraph Quant["1. 定量的"]
Q1[シテーション率 上下]
Q2[ポジション 前後]
Q3[プラットフォームカバレッジ 広狭]
end
subgraph Qual["2. 定性的"]
L1[記述表現の変化]
L2[言語の深さ]
L3[要点の追加・削除]
end
subgraph Comp["3. 競合的"]
C1[共起する競合リスト]
C2[競合の位置関係]
C3[新規競合の出現]
end
subgraph Sent["4. センチメント"]
S1[感情分布のシフト]
S2[強い言葉の増減]
S3[中立 → 肯定 / 否定 シフト]
end
図 10-3:4軸は直交する。定量は計算可能、定性は定性分析が必要、競合はグラフ差分、センチメントはスコアリングを要する。
定量的 — 差分を直接計算:スコア差、パーセント変化、トレンド傾き。
定性的 — Phase 1とPhase 2の response_text を diff、「追加段落」「削除段落」「置換フレーズ」をハイライト。差分をビジュアルに顧客へ提示する。
競合的 — 各応答から全ブランドエンティティを抽出し、フェーズ間の集合を比較(新規/消失/継続)。時間方向の集合差分として扱う。
センチメント — 文単位で感情分類を実行し、分布を比較。例:Phase 1 = 中立 80% / 肯定 15% / 否定 5%、Phase 2 = 中立 60% / 肯定 30% / 否定 10% → 明らかな感情分極化。
推奨トリガは3つ:
以下のいずれかが発生したら、既存フェーズを延長せず再構築する:
再構築時は新規 baseline_cohort_id を作成。旧コホートは履歴参照用に保持するが、新データ点を追加してはならない。
/baseline ページ で Phase 1→2→3 比較ビューを表示response_text を恒久保持ナビゲーション:← 第9章:クローズドループ修復 · 📖 目次 · 第11章:事例研究 →