田齐齐
2020-03-31 阅读量: 773
问:模型权重不是模型会更容易识别出来那些数据类型,跟测试集的权重没关系吗,就像我们之前学习的不平衡数据集的处理方法?
答:数据不平衡是从Y值标签来的,这里和我们的adaboost里讲的比较相似。在adaboost里面,我们是更改错误样本的权重,使得模型更加小心的对待错误的样本,尝试将他们预测正确。对数据不平衡来说,也可以用相同的思想。将少数类的样本权重增大,使得模型会自己更改,从而尽量的将少数类给判断正确,整体将降低误差 。
损失函数(Loss Function )是定义在单个样本上的,算的是一个样本的误差。代价函数(Cost Function )是定义在整个训练集上的,是所有样本误差的平均,也就是损失函数的平均。目标函数(Object Function)定义为:最终需要优化的函数。等于经验风险+结构风险(也就是Cost Function + 正则化项)。PS:关于目标函数和代价函数的区别还有一种通俗的区别:目标函数是
自助法验证不管是 Holdout 检验还是交叉检验 , 都是基于划分训练集和测试集的方法进行模型评估的 。 然而,当样本规模比较小时,将样本集进行划分会让训练集进一步减小 ,这可能会影响模型训练效果。有没有能维持训练集样本规模的验证方法呢?自助法可以比较好地解决这个问题 。自助法是基于自助采样法的检验方法 。 对于总数为 n 的样本集合 ,进行 n 次有放回的随机抽样 ,得到大小为 n 的训练集
留一验证:每次留下1个样本作为验证集, 其余所有样本作为测试集 。样本总数为 n ,依次对 n 个样本进行遍历,进行 n次验证 ,再将评估指标求平均值得到最终的评估指标 。 在样本总数较多的情况下,留一验证法的时间开销极大 。 事实上,留一验证是留 p 验证的特例 。 留 p 验证是每次留下 p 个样本作为验证集,而从 n 个元素中选择 p 个元素有C种可能, 因此它的时间开销更是远远高于留一验证
k-fold 交叉验证:首先将全部样本划分成 k 个大小相等的样本子集;依次遍历这 k 个子集,每次把当前子集作为验证集,真余所有子集作为训练集,进行模型的训练和评估;最后把 k 次评估指标的平均值作为最终的评估指标 。 在实际实验中, k 经常取 10。