F1、ROC、AUC的原理、公式推导、Python实现和应用
精确率、召回率、F1 值、ROC、AUC 各自的优缺点是什么?
ROC曲线相比P-R曲线有什么特点?
《百面》P30
验证集和测试集的作用
模型评估过程中的验证方法及其优缺点。
- Holdout检验
- 含义:将原始的样本集合随机划分为训练集和测试集两部分,关键是“随机”。
- 优点:简单实用。
- 缺点:评估的结果有一定随机性,因为训练集和验证集的划分是随机的,所以如果只进行少量的 Holdout 检验,得到的评估指标会存在一定的波动。
- 交叉验证
- 动机:改善Holdout检验的不足。
- 含义:先将全部样本划分成 k 个大小相等的样本子集,然后依次遍历这 k 个子集,每次把当前遍历到的子集作为验证集,其余所有的子集作为训练集,这样依次进行 k 次模型的训练和评估。最后,我们再将所有 k 次评估指标的平均值作为最终的评估指标。
- 缺点:当样本规模比较小时,将样本集进行划分会让训练集进一步减小,这往往会影响模型的训练效果。
- 自助法
- 含义:基于自助采样的检验方法。对于总数为 n 的样本集合,我们先进行 n 次有放回地随机抽样,得到大小为 n 的训练集。在 n 次采样过程中,有的样本会被重复采样,有的样本没有被抽出过,我们再将这些没有被抽出的样本作为验证集进行模型验证。
- 缺点:改变了原有数据的分布,有可能让模型产生一定程度的偏差。
- 时间切割
能否说出几种降低过拟合和欠拟合风险的方法?
- 降低“过拟合”的方法
- 从数据入手,获得更多的训练数据。直接增加实验数据一般是困难的,所以可以通过数据增强的手段。
- 降低模型复杂度。数据较少时,模型过于复杂是产生过拟合的重要因素。
- 正则化
- 集成学习。如Bagging
降低欠拟合的风险
网格搜索
- 随即搜索
- 贝叶斯优化算法
- 超参调参经验
K折交叉验证
N折交叉验证的作用(如何使用交叉验证)
准确率的局限性?
精确率与召回率的权衡?
平方根误差的“意外”?
什么是ROC曲线?
为什么要进行在线AB测试?
如何进行线上AB测试?
过拟合和欠拟合具体是指什么现象?
如何绘制ROC曲线?
如何计算AUC?
为什么在-些场景中要使用余弦相似度而不是欧氏距离?
如何划分实验组和对照组?
余弦距离是否是一个严格定义的距离?
自助法采样在极限情况下会有多少数据从未被选择过?