机器学习系列(五)——训练集、测试集、验证集与模型选择
《机器学习(周志华)》笔记–绪论(1)–机器学习基本术语、假设空间、归纳偏好
机器学习(二)性能度量
机器学习的全过程如下:
超参数:在机器学习的上下文中,超参数是在开始学习过程之前设置值的参数。 相反,其他参数的值通过训练得出。
超参数的一些示例:
学习率可能是最重要的超参数, 超参数的优化或模型选择是为了学习算法选择一组最优超参数。
通常目的是:优化算法在独立数据集上的性能的度量, 通常使用交叉验证来估计这种泛化性能。
训练集、验证集和测试集分工明确,各施其职,切不可互相取而代之。特别是不能混淆验证集和测试集,下面用一个表整理下两者的区别:
注 意:对最终学习得到的函数进行性能评估的数据叫作测试集,必须保证测试集完全独立,直到模型调整和参数训练全部完成前应该将测试集进行封存,以任何形式使用测试集中的信息都是一种窥探。
归纳偏好(简称"偏好"):机器学习算法在学习过程中对某种类型假设的偏好。说白了就是“什么样的模型更好”这一问题。
机器学习过程是基于有限的样本训练集进行的,会出现多个假设与训练集一致情况,但是机器学习必须产生一个模型,那某一方面的偏好会对这个模型的确认起到关键的作用。
例如:我们需求这个模型是查准强的的,那么在几个假设中我们就要找查准方面强的假设,构建成模型;这就是一种需求的偏好。
归纳偏好可看作学习算法自身在一个可能很庞大的假设空间中对假设进行选择的启发式或“价值观”。而在具体的现实问题中,学习算法本身所做的假设是否成立,也即算法的归纳偏好是否与问题本身匹配,大多数时候直接决定了算法能否取得好的性能。
“奥卡姆剃刀”(Occam’s razor): 是一种常用的、自然科学研究中最基本的原则,即 “若有多个假设与观察一致,则选最简单的那个”。
没有免费的午餐定理(NFL): 无论一个算法多么笨拙,无论一个算法多么聪明,他们的期望性能相同。脱离具体问题,空泛谈论“什么学习算法更好”毫无意义。
实际预测输出与样本的真实输出的差异称为误差,学习器在训练集上的误差称为 训练误差 或 经验误差,在新样本的误差称为测试误差或泛化误差。
为使得到泛化误差小的学习器,应该尽量从训练样本学习到适用于所有潜在样本的普遍规律。
过拟合: 为了得到一致假设而使假设变得过度严格称为过拟合。
一个假设在训练数据上能够获得比其他假设更好的拟合, 但是在训练数据外的数据集上却不能很好地拟合数据,此时认为这个假设出现了过拟合的现象。出现这种现象的主要原因是训练数据中存在噪音或者训练数据太少。
过拟合常见原因:
(1)建模样本选取有误,如样本数量太少,选样方法错误,样本标签错误等,导致选取的样本数据不足以代表预定的分类规则;
(2)样本噪音干扰过大,使得机器将部分噪音认为是特征从而扰乱了预设的分类规则;
(3)假设的模型无法合理存在,或者说是假设成立的条件实际并不成立;
(4)参数太多,模型复杂度过高;
(5)对于决策树模型,如果我们对于其生长没有合理的限制,其自由生长有可能使节点只包含单纯的事件数据(event)或非事件数据(no event),使其虽然可以完美匹配(拟合)训练数据,但是无法适应其他数据集。
(6)对于神经网络模型:a)对样本数据可能存在分类决策面不唯一,随着学习的进行,,BP算法使权值可能收敛过于复杂的决策面;b)权值学习迭代次数足够多(Overtraining),拟合了训练数据中的噪声和训练样例中没有代表性的特征。
解决方法:
(1)在神经网络模型中,可使用权值衰减的方法,即每次迭代过程中以某个小因子降低每个权值。
(2)选取合适的停止训练标准,使对机器的训练在合适的程度;
(3)保留验证数据集,对训练成果进行验证;
(4)获取额外数据进行交叉验证;
(5)正则化,即在进行目标函数或代价函数优化时,在目标函数或代价函数后面加上一个正则项,一般有L1正则与L2正则等。
性能度量: 是衡量模型泛化能力的评价标准,在对比不同模型的能力时,使用不同的性能度量往往会导致不同的评判结果。
点击查看更详细:机器学习(二)性能度量
1、错误率与精度
错误率是分类错误的样本数占总样本数的比例,定义为:(2-2)
精度是分类真确的样本数占样本总数的比例,定义为:(2-3)
2、查准率、查全率
1)真正例(TP)、假真例(FP)、真反例(TN)、假反例(FN),TP+FP+TN+FN=样例总数,分类结果的混淆矩阵如下:
查准率与查全率是一对矛盾的量。你增我减,我减你增的情况。
严格的理论基础是深度学习无法回避的软肋,换个角度说,深度学习严格理论基础的缺乏显著降低了机器学习应用的门槛,为机器学习走向工程实践带来极大的便利。
机器学习与 模式识别、统计学习、数据挖掘、计算机视觉、语音识别、自然语言处理 等领域有紧密联系。
机器学习是利用数据价值的关键技术!!!!大数据专业的同仁要把机器学习学好哦!!