M2-089M2: Classical Machine LearningEvaluation Metrics & Hyperparameter TuningHard
Mastery:
Evaluation Metrics & Hyperparameter Tuning: 如何处理调参中的随机性(种子方差)?
📐 Mathematical Definition
⚡ Executive Summary
Core Concept: 多次随机种子重复评估,报告均值与标准差;用配对检验比较模型。
📌 Key Takeaways
- •小数据/小模型方差大,需多seed
- •报告置信区间而非单点最优
📐 Mathematical Derivations
随机性来源与影响:① <strong>初始化</strong>——不同的随机初始化会收敛到不同的局部解,性能差异在小模型上可达数个百分点;② <strong>数据划分/采样顺序</strong>——K 折的划分、SGD 的样本顺序、数据增强的随机性;③ <strong>dropout/正则</strong>——训练时的随机性;④ <strong>硬件非确定性</strong>——浮点累加顺序(尤其在 GPU 并行归约时)。<strong>为什么重要</strong>:若用单次运行的结果比较两个模型,观测到的差异可能完全来自随机噪声——'模型 A 比 B 好 0.5%'可能只是 A 恰好抽到好种子。这在<strong>小数据、小模型、短训练</strong>时尤其严重(方差大)。<strong>标准做法</strong>:对每个配置用<strong>多个随机种子</strong>(S=3–10,视方差与成本而定)重复训练,报告<strong>均值 ± 标准差</strong>(或标准误、置信区间),而非单点最优值。
🏭 Production Trade-offs
实践要点:① <strong>种子数的选择</strong>——方差大时需更多种子;可用'序贯测试'(先跑 3 个种子,若差异显著则停止,否则加种子)。② <strong>配对检验</strong>——比较两个模型时,应使用<strong>相同的种子/数据划分</strong>(配对设计),这样能消除共同的随机性、提高检验功效;用配对 t 检验或 Wilcoxon 符号秩检验,而非独立样本检验。③ <strong>不要报'最优种子'</strong>——报告所有种子的均值与方差(报最优是选择性偏差,会高估性能);若必须报单点,报中位数而非最大值。④ <strong>选择偏差</strong>——在大量配置中挑'验证集最好的'会高估真实性能(见'选择性偏差'题);应用独立测试集或嵌套 CV 确认。⑤ <strong>减小随机性的手段</strong>——确定性算法(如全批量梯度下降)、固定所有随机种子、关闭非确定性算子(<code>torch.use_deterministic_algorithms</code>);但需注意确定性可能降低性能或速度。⑥ <strong>报告规范</strong>——论文/报告中应说明种子数、是否配对、方差来源分解;仅在差异超过方差时才声称改进。
⚠️ Common Interview Pitfalls
- ✕用单次运行结果比较模型(噪声主导)
- ✕报告最优种子的性能(选择性偏差)
🎯 Interviewer Follow-ups
- ?为什么单次结果不可靠?
- ?如何用配对检验比较两个模型?
📚
Associated Knowledge Base Guides & Mindmaps
Explore the comprehensive technical article, exam cards, and global architecture tree.