You've already forked Commercialization.tapadn
161 lines
7.8 KiB
Markdown
161 lines
7.8 KiB
Markdown
# TapADN 智能预加载策略验收报告(含随机偏好机器人 + 网络环境)
|
||
|
||
## 仿真前提
|
||
- 模型定位:IAA 场景中 3 类广告位(激励/开屏/插屏)统一参与策略决策。
|
||
- 次留默认验收基线:35%
|
||
- 随机机器人数量:5000
|
||
- 场景进入->展示请求->预加载决策->展示时延为核心链路。
|
||
- 每次样本运行前先生成一批“偏好机器人”,再在其上分别运行:纯手动(无 smart)与智能预加载两种模式。
|
||
- 预加载触发后在 cooldown 内有效一次,不命中将视作普通 load。
|
||
- `Immediate`:请求时已命中可直接播放的占比(值越高越好)
|
||
- `Waste`:预加载后在 cooldown 内未被消费即失效的比例(值越低越好)
|
||
- 网络环境:Wi-Fi / 4G / 3G / 2G 按机器人偏好加权采样,逐回合独立变化。
|
||
|
||
## 机器人与网络设置
|
||
- 机器人类型:随机采样以下偏好族(reward_heavy、interstitial_focus、splash_driven、balanced、churn_sensitive、network_bound)。
|
||
- 每类机器人具有独立的场景进入偏好、请求偏好、fill 成功倍率、加载时延倍率和留存倍率。
|
||
- 网络环境以会话粒度采样,低网速会同步影响网络请求率、fill 成功率和加载耗时。
|
||
|
||
## 参数扫描范围
|
||
- Threshold: `0.20~0.90` 步长 0.05
|
||
- Cooldown: `30,60,90,120,180,240,300`
|
||
- 次留:`20%,25%,30%,35%,40%,50%,60%`
|
||
|
||
## 基线对照
|
||
- 次留 35% 基线(纯手动,无 smart)即时命中率:0.00%
|
||
- 次留 35% 基线平均时延:1615 ms(p95 2913)
|
||
- 次留 35% 建议起点(当前模型):`threshold=0.25, cooldown=30s`
|
||
- 对比基线即时命中提升:`38.09%`
|
||
- 对比基线时延变化:`-565 ms`
|
||
- 平衡候选(Waste<=12%):
|
||
- threshold=0.25, cd=60s,Immediate 25.12%,Waste 4.88%
|
||
|
||
## 最优/最差(次留=35%)
|
||
| 排名 | Threshold | Cooldown | 即时命中率 | 平均等待 | P95等待 | 浪费率 | 播放成功率 |
|
||
|---|---:|---:|---:|---:|---:|---:|---:|
|
||
| 1 | 0.25 | 30 | 38.09% | 1050 | 2787 | 14.03% | 81.35% |
|
||
| 2 | 0.20 | 30 | 36.65% | 1073 | 2790 | 13.96% | 81.35% |
|
||
| 3 | 0.25 | 60 | 25.12% | 1234 | 2774 | 4.88% | 77.96% |
|
||
| 4 | 0.20 | 60 | 24.81% | 1242 | 2830 | 6.75% | 77.45% |
|
||
| 5 | 0.30 | 30 | 24.65% | 1285 | 2894 | 7.73% | 77.79% |
|
||
| 6 | 0.30 | 60 | 24.56% | 1239 | 2812 | 5.76% | 77.61% |
|
||
| 7 | 0.35 | 30 | 23.05% | 1318 | 2895 | 5.44% | 77.58% |
|
||
| 8 | 0.50 | 30 | 22.96% | 1320 | 2893 | 4.99% | 77.54% |
|
||
|
||
### 最差 8 组
|
||
| 排名 | Threshold | Cooldown | 即时命中率 | 平均等待 | P95等待 | 浪费率 | 播放成功率 |
|
||
|---|---:|---:|---:|---:|---:|---:|---:|
|
||
| 1 | 0.90 | 300 | 0.00% | 1629 | 2924 | 0.00% | 70.55% |
|
||
| 2 | 0.90 | 240 | 0.00% | 1630 | 2899 | 0.00% | 70.09% |
|
||
| 3 | 0.90 | 180 | 0.00% | 1622 | 2907 | 0.00% | 70.60% |
|
||
| 4 | 0.90 | 120 | 0.00% | 1633 | 2943 | 0.00% | 70.51% |
|
||
| 5 | 0.90 | 90 | 0.00% | 1637 | 2963 | 0.00% | 70.84% |
|
||
| 6 | 0.90 | 60 | 0.00% | 1628 | 2863 | 0.00% | 70.72% |
|
||
| 7 | 0.90 | 30 | 0.00% | 1627 | 2933 | 0.00% | 69.52% |
|
||
| 8 | 0.85 | 300 | 0.00% | 1623 | 2910 | 0.00% | 70.69% |
|
||
|
||
## 与纯手动模式对比(次留35%)
|
||
- 纯手动:Immediate `0.00%`,AvgWait `1615`ms,Waste `0.00%`。
|
||
- smart 最优:阈值 `0.25`,cd `30`,Immediate `38.09%`,AvgWait `1050`ms,Waste `14.03%`。
|
||
- 增益:`38.09%`。
|
||
|
||
### 网络分层对比(次留35%)
|
||
- WIFI:手动即时 `0.00%` / 等待 `1248ms`;智能(`threshold=0.25, cd=30s`)即时 `40.13%` / 等待 `767ms`;提升 `40.13%`。
|
||
- 4G:手动即时 `0.00%` / 等待 `1601ms`;智能(`threshold=0.25, cd=30s`)即时 `39.66%` / 等待 `1003ms`;提升 `39.66%`。
|
||
- 3G:手动即时 `0.00%` / 等待 `2165ms`;智能(`threshold=0.20, cd=30s`)即时 `32.64%` / 等待 `1498ms`;提升 `32.64%`。
|
||
- 2G:手动即时 `0.00%` / 等待 `3044ms`;智能(`threshold=0.25, cd=30s`)即时 `32.06%` / 等待 `2116ms`;提升 `32.06%`。
|
||
## 次留敏感度(35%基线)
|
||
- 次留 20%:手动基线时延 1618ms,智能最佳 `threshold=0.20, cd=30s`,最佳 Immediate 38.69%,Waste 13.14%;最差 `threshold=0.90, cd=300s`,Immediate 0.00%,Waste 0.00%。
|
||
- 次留 25%:手动基线时延 1641ms,智能最佳 `threshold=0.20, cd=30s`,最佳 Immediate 37.52%,Waste 14.16%;最差 `threshold=0.90, cd=300s`,Immediate 0.00%,Waste 0.00%。
|
||
- 次留 30%:手动基线时延 1629ms,智能最佳 `threshold=0.20, cd=30s`,最佳 Immediate 37.42%,Waste 13.33%;最差 `threshold=0.90, cd=300s`,Immediate 0.00%,Waste 0.00%。
|
||
- 次留 35%:手动基线时延 1615ms,智能最佳 `threshold=0.25, cd=30s`,最佳 Immediate 38.09%,Waste 14.03%;最差 `threshold=0.90, cd=300s`,Immediate 0.00%,Waste 0.00%。
|
||
- 次留 40%:手动基线时延 1617ms,智能最佳 `threshold=0.20, cd=30s`,最佳 Immediate 38.05%,Waste 13.64%;最差 `threshold=0.90, cd=300s`,Immediate 0.00%,Waste 0.00%。
|
||
- 次留 50%:手动基线时延 1618ms,智能最佳 `threshold=0.25, cd=30s`,最佳 Immediate 38.02%,Waste 14.06%;最差 `threshold=0.90, cd=300s`,Immediate 0.00%,Waste 0.00%。
|
||
- 次留 60%:手动基线时延 1619ms,智能最佳 `threshold=0.25, cd=30s`,最佳 Immediate 38.01%,Waste 14.88%;最差 `threshold=0.90, cd=300s`,Immediate 0.00%,Waste 0.00%。
|
||
|
||
## 交叉参数观察
|
||
- 在同一保留率下,阈值下调能显著提高 `Immediate`,但通常也抬高 `Waste`。
|
||
- cooldown 拉长可降低 waste(减少重复预加载/空耗),但可能提高用户等待。
|
||
- 在弱网(尤其低分配机器人更多时)场景,建议提高 waste 上限约束后再考虑 lower threshold。
|
||
|
||
## 图表示例(输出文件)
|
||
- `heatmap_immediate_r_0.20.png`
|
||

|
||
|
||
- `heatmap_immediate_r_0.35.png`
|
||

|
||
|
||
- `heatmap_immediate_r_0.60.png`
|
||

|
||
|
||
- `heatmap_preload_success_r_0.20.png`
|
||

|
||
|
||
- `heatmap_preload_success_r_0.35.png`
|
||

|
||
|
||
- `heatmap_preload_success_r_0.60.png`
|
||

|
||
|
||
- `heatmap_wait_ms_r_0.20.png`
|
||

|
||
|
||
- `heatmap_wait_ms_r_0.35.png`
|
||

|
||
|
||
- `heatmap_wait_ms_r_0.60.png`
|
||

|
||
|
||
- `heatmap_waste_ratio_r_0.20.png`
|
||

|
||
|
||
- `heatmap_waste_ratio_r_0.35.png`
|
||

|
||
|
||
- `heatmap_waste_ratio_r_0.60.png`
|
||

|
||
|
||
- `line_immediate_vs_retention.png`
|
||

|
||
|
||
- `line_mode_immediate_vs_retention.png`
|
||

|
||
|
||
- `line_mode_wait_vs_retention.png`
|
||

|
||
|
||
- `line_network_immediate_vs_retention.png`
|
||

|
||
|
||
- `line_network_wait_vs_retention.png`
|
||

|
||
|
||
- `line_threshold_0.55_retention_0.20.png`
|
||

|
||
|
||
- `line_threshold_0.55_retention_0.25.png`
|
||

|
||
|
||
- `line_threshold_0.55_retention_0.30.png`
|
||

|
||
|
||
- `line_threshold_0.55_retention_0.35.png`
|
||

|
||
|
||
- `line_threshold_0.55_retention_0.40.png`
|
||

|
||
|
||
- `line_threshold_0.55_retention_0.50.png`
|
||

|
||
|
||
- `line_threshold_0.55_retention_0.60.png`
|
||

|
||
|
||
- `line_wait_vs_retention.png`
|
||

|
||
|
||
## 验收结论
|
||
- 建议首轮灰度点:`threshold=0.25`, `cooldown=60s`(兼顾即时性与 waste)。
|
||
- 次留 35% 下智能策略最佳立即命中来自 `threshold=0.25, cd=30s`,即时率 `38.09%`,Waste `14.03%`。
|
||
- 建议将 `smart_preload` 配置作为实验变量:先以纯手动为对照,再按次留分层和网络监控逐步放量。
|