Expand description
按站点自学习从哪个浏览器内核开始渲染。
每个站、每个内核记一份“这个内核渲染出来就够用“的 Beta 计数。开始渲染时对内核链按顺序做 Thompson 采样(Thompson 1933;Chapelle & Li 2011):从后验里抽一个“够用“的概率,抽到的值 大于 1/2 就从这个内核开始,否则看下一个。探索来自后验的不确定性本身,不再需要 0.81 的 “连续 3 次回退才换起点、每 16 次探索一次”。
- 先验包 v0:每个内核
PRIOR_SUFFICIENT个“够用“的伪观测、没有“不够用“的伪观测。还没见过 某个内核不够用时一定从它开始(和 0.81 一样,冷启动不变);见过 3 次不够用,后验均值正好 降到 1/2,对应 0.81 连续 3 次换起点的规则。 - 遗忘:每次观测前旧计数乘
1−δ,有效样本数不超过1/δ,站点改版后能重新学回来。 - “开浏览器有没有用“不在这里学:0.87 起由
engine/planner.rs按路径族的后验决定。
表按主机哈希分片(分片只为减少锁争用),总容量 MAX_HOSTS;某片满了时淘汰这一片里证据量
较少的一半,而不是整表清空:只是少一次优化,不影响结果。
Structs§
Constants§
- MAX_
HOSTS - [策略] 先验包 v0:0.81 的现值。每条约 50 字节,满了约 5 MiB。
- PRIOR_
SUFFICIENT - [策略] 先验包 v0:0.81 的现值(连续 3 次回退才换起点内核)。
Type Aliases§
- Engine
Observer - 每次记录一个内核的结果时调用:(站点, 内核序号, 结果是否足够)。多服务器时工人用它把观测报给网关。