はじめに
スマホ分散AI基盤「ArcAsha-OS」の開発では、プロンプトの性質(数学・コーディングなど)に応じて最適な端末ノード(Expert)へ処理を割り当てる Adaptive Router(適応型ルーター) を検証しています。
前回は「FP32とFP16の丸め誤差による出力の分岐(EXP-0001)」を扱いましたが、今回はルーターの評価ロジックを動的更新(Adaptive Update)にした際に遭遇した、非常におもしろい「能力逆転現象(Score Reversal)」 とその克服ステップ(EXP-0002D / EXP-0002D.1)について共有します。
発生した謎の現象:「能力逆転現象(Score Reversal)」
ノードの処理能力(Capability)を静的な初期値から、実際の推論結果に基づいてリアルタイムに更新(Adaptive Update)する実験(EXP-0002D)を行った際、以下のような挙動が観測されました。
[初期状態]
- Math Expertノード : Mathスコア 0.94 (優)
- Coding Expertノード : Mathスコア 0.65 (中)
[タスク実行後]
- Math Expertノードの評価が一時的にドロップ (0.545)
- Math Expert の Mathスコア (0.545) < Coding Expert の Mathスコア (0.65)
[ルーティング結果]
- Router「Mathスコアが高い Coding Expert に数学タスクを割り当てます!」
数学が得意なはずの「Math Expert」の評価が一時的に下がり、数学タスクなのに「Coding Expert」が選ばれ続けるという本末転倒な状態に陥ってしまいました。
原因の特定:ルーターのバグではなく「評価関数の信頼度不足」
一見すると「ルーターのアルゴリズムのバグ」に見えますが、ログを詳細に解析したところルーター自体はスコアに従って100%正しく行動していることが分かりました。
真の問題は Capability Update(能力評価の更新式) にありました。
従来の単純移動平均(SMA固定重み更新 $\alpha = 0.3$ など)では、試行回数(サンプル数 $n$)が非常に少ない段階でたった1回の失敗が起きると、評価値が急降下してしまいます。
つまり、ルーターが悪いのではなく、**「確信度の低い(サンプルが少ない)評価値を愚直に信じ切ってしまう評価関数」**が根本原因でした。
解決策:Confidence-Aware Bayesian Update(信頼度重み付きベイズ更新)
この問題を解決するため、試行回数 $n$ に応じて評価値の「確信度(Confidence)」を動的に重み付けするベイズ更新アプローチ(EXP-0002D.1)を導入しました。
1. 確信度関数(Confidence Function)
試行回数 $n$ に基づき、確信度 $C(n)$ を以下のように定義します。
$$C(n) = 1 - \exp\left(-\frac{n}{\text{scale}}\right)$$
- $n = 0$(未試行)の場合、$C(0) = 0$ となり、事前分布(初期設定の能力値)を100%信頼します。
- 試行回数 $n$ が増えるにつれて $C(n)$ は $1.0$ に近づき、実測パフォーマンス(Measured Performance)の反映度が高まります。
2. 有効スコア(Effective Score)の計算
ルーターは生の評価値 $\mu$ ではなく、確信度を乗じた「有効スコア」を参照してルーティングを行います。
$$\text{Effective Score} = \mu \times C(n)$$
これにより、まだ試行回数が少なく信頼性が低いノードが、1回の偶発的な失敗で不当に評価を下げられて永久に選ばれなくなる事態を防ぐことができます。
実験結果
この Confidence-Aware Bayesian Weighting を組み込んで再検証を行ったところ、以下の成果が得られました。
- 能力逆転現象(Score Reversal)の発生率:0件
- サンプル数が少ない初期段階での急激なスコア落差が抑制され、タスクに適したノードへ安定してルーティングされることを確認。
※科学的に厳密に表現すると、「ベイズ導入で万病が治った」というよりは**「今回の実験条件において、確信度重み付けベイズ更新の採用により逆転現象が観測されなくなった」**という結論になります。
まとめ&学んだこと
-
「評価関数の精度」が適応型AIの限界を決める
適応型ルーティングにおいて、ルーターの選択クオリティは「タスク評価関数(Task Evaluator)の忠実度」に直接制約されます。 -
試行回数(データ量)の確信度をモデル化することの重要性
単なる平均値更新ではなく、「その評価値がどれくらい信頼できるか」を数学的に考慮させることが、頑健なエッジ分散AIの構築には不可欠でした。
引き続き、スマホ分散AI基盤「ArcAsha-OS」の開発ログを公開していきます!
- 🌟 GitHub Repository: ootaniryou-sudo/ArcAsha-os