討論: コミュニティ境界定義と正規化

2026-02-15

コミュニティ境界定義と正規化

GPS廃止後のコミュニティ定義と、スコアリング・正規化の分離設計

議題

Phase 2-04で「取引グラフのネットワーク距離でコミュニティを定義」と合意したが、Phase 2-06では「クラスタリングはスコアリングから除外」と決めた。矛盾に見える「スコアリングには使わないが正規化には使う」という仕様を、論理的かつ安全に実装する方法を検討する。

Round 1 — 問題の確認

mathematician

外部レビューの指摘は正しい。私たちの設計には矛盾がある:

Phase 2-04: 「取引グラフでコミュニティを定義」

コミュニティ相対評価のため、Q_equity(循環品質)を正規化する必要がある。

Phase 2-06: 「クラスタリングはスコアリングから除外」

ネットワーク分析をスコアリングに使うと、攻撃者が取引グラフを操作してスコアを上げる可能性がある。

結果:「スコアリングには使わないが正規化には使う」?これは論理的に矛盾している。クラスタリング結果を正規化に使うなら、その精度に依存している。精度が低いなら正規化も無意味になる。

game-economist

ゲーム論の観点からも危険だ。

もしクラスタリング結果が Q_equity に影響するなら(どんな形でも)、攻撃者は「クラスタリング結果に自分たちが都合よく入る」ように取引パターンを操作する動機を得てしまう。

つまり:

「スコアリングには使わない」と言っても、正規化経由で影響するなら、実質的には使っているのと同じ。

philosopher

二人の指摘はもっともだ。ただ、一つの見方を提示したい。

「情報の流れ」を分離する

という考え方:

つまり、

正規化係数は「定期的に(例:月1回)更新される定数」

であって、個人の行動に即座に反応しない。だから個人の攻撃行動の効果がない。

Round 2 — オフライン分析の提案

mathematician

philosopher の「情報分離」という考え方に基づいて、具体的な設計を提案する。

2つの層の分離:

① スコアリング層(リアルタイム)

S(v) = softmin(d, t, e) × F(v)

② 正規化層(定期的オフライン)

Q’_equity(v) = S(v) × α(cluster(v))

結果:個人の行動で正規化係数は変わらない → 攻撃インセンティブが生じない。

game-economist

いい。ゲーム論的に分析する:

攻撃者が「月1回のオフライン分析に影響させよう」と思っても:

つまり、正規化係数を操作できない → 攻撃の効果がない → ROI ≤ 0。

同時に、正規化係数が「固定」なので、個人がいくら行動を変えても即座には効果がない。支配戦略は変わらない:「自然に生きる」が最適。

Round 3 — 正規化係数の仕様確定

mathematician

正規化係数 α(cluster) の具体的な計算方法を定義する。

月1回のオフライン分析処理:

Step 1: 過去30日の取引グラフから Community Detection

                     graph = past_30_days_transactions()
                     clusters = community_detection(graph)  // e.g., Louvain

                     # Step 2: 各クラスタの統計を計算
                     FOR EACH cluster IN clusters:
                       size = |cluster|
                       density = edge_count / possible_edges
                       avg_q = mean(S(v) for v in cluster)

                     # Step 3: 正規化係数を計算
                       α(cluster) = global_avg_q / avg_q  // 全体平均 / クラスタ平均

                     # Step 4: 翌月のスコアリングに適用
                     Q'_equity(v) = S(v) × α(cluster(v))

このことで、大規模コミュニティでスコアが低めなら、α で上昇補正され、小規模コミュニティとの間で「公平さ」が実現される。

philosopher

理想的だ。この設計なら:

小規模コミュニティの人たち:

「少ないメンバー内での流動」でも、α による正規化で評価されて、大規模コミュニティとの不公平感がなくなる。

大規模コミュニティの人たち:

「多くの選択肢がある環境」での流動パターンは、その環境の中での相対的な質が見られる。

攻撃者:

月1回の確定係数に対して行動を最適化するのは実質的に不可能(システム全体を変える必要がある)。

Meguri の「自然に存在するものを保護する」という原則が、地理的・規模的な偏りなく実装される。

Round 4 — 合意

mathematician

R2-4 の設計に合意する。矛盾を解いた。

game-economist

ゲーム論的に安全性が確保された。合意する。

philosopher

倫理的に公平性が確保された。合意する。

用語集

コミュニティ(Community)

取引グラフ上で密に相互作用する巣のグループ。GPS距離軸廃止後は、ネットワーク距離(何ステップ離れているか)でコミュニティを定義。月1回のオフライン分析で検出。

正規化係数(α)

コミュニティ間のスコア格差を補正する係数。α(cluster) = global_avg_q / avg_q で計算。大規模コミュニティは α が小さく、小規模コミュニティは α が大きくなる傾向があり、公平性を実現。

オフライン分析

月1回、システム全体の取引グラフをまとめて分析する処理。リアルタイムではなく定期的に実行されるため、個人の行動で結果を操作できない安全性がある。

2層分離設計

スコアリング層(リアルタイム、個人的)と正規化層(定期的、システムレベル)に情報処理を分離する設計。スコアリングではネットワーク情報を使わず攻撃耐性を確保し、正規化のみで地理的・規模的な公平性を実現。