1.4 模型评估与模型选择
训练误差与测试误差
关于模型的拟合好坏,计算训练集的训练误差进行衡量。
关于模型预测的好坏,通过测试集衡量
计算预测和真实的差异:测试误差:衡量预测效果
训练误差:
所有样本来自训练集,模型对于已知数据的预测能力。
测试误差:
样本来自测试集。模型对于未知数据的预测能力。
误差率和准确率是测试误差的两个特例
误差率里,当预测和真实不相等计1,相等计0。体现的预测和真实不相等的点的个数,在测试集里样本总个数的比例
准确率是预测和真实相等的点的个数,在测试集里样本总个数的比例
有时训练误差小,但测试误差不小,需要平衡。
对于经验风险最小化,可以通过最小二乘法求解参数。
让风险函数最小化,就是它的导数=0,因为最小值点的导数是0。当x、y、b已知可得到w。也就是对经验风险中的参数w求导,使导数=0,得到参数的表达式。1/2和平方的2可以约掉,计算方便。有没有1/2不影响结果。
M=9是过拟合现象,训练误差几乎等于0(预测线通过所有样本点)。但测试误差会很大
过拟合:学习所得模型包含参数过多,出现对已知数据预测很好,但对未知数据预测很差
参数=3时训练误差和测试误差都小,选择合适的模型复杂度。
1.5 正则化与交叉验证
是两种常用的模型选择方法
正则化
目标函数是结构风险,目的是在假设空间里选目标函数最小的模型。结构函数中,第一部分是经验风险,是度量模型在训练集中的平均损失,第二部分被称为正则化项=惩罚项,J(f)代表模型复杂度,参数越多越复杂,λ越大,最后通过正则化选择的模型参数就越少。目的是经验风险和模型复杂度都很小的模型,需要λ来衡量。
正则化项有多种形式:
L1中正则化项选的是参数绝对值的求和项,L2中选的是参数平方的求和项。
L1范数适用于进行特征筛选,在正则化项里选择模型时使某些参数直接为0,最后选择一个稀疏的模型,稀疏是指非0参数的个数很少
L2范数防止过拟合,取参数平方的求和项,参数可以无限接近0,L1不同,可以为0,使模型越来越简单,防止过拟合,起到特征筛选的作用。为0时完全拟合。
正则化就是根据训练数据集中常见的模式,来学习相对简单的模型,符合奥卡姆剃刀原理:选择可能模型时,能很好解释已知数据并且十分简单的模型
交叉验证
在训练集中得到的模型放到验证集里,选预测误差最小的就是最优。
现实情况样本不足,简单交叉验证:随机将数据分为两部分,训练集和测试集。
留一交叉验证是k折交叉验证的特殊情形,k=N,N是数据集的样本容量。是数据集非常少的时使用。
1.6 泛化能力
指用学习方法得到模型对未知数据的预测能力,通常用测试数据集来评价某一数据集的泛化能力,但测试数据集的样本有限,有时不可靠。
泛化误差
反映学习方法的泛化能力。对于未知数据的预测误差称泛化误差。积分在全样本空间,所以是泛化
泛化误差上界
比较两种学习能力的泛化误差使用。
泛化误差上界指的是泛化误差的概率上界。
假设泛化误差上界是样本容量函数
泛化误差定义为期望值,经验误差定义为平均值,随N增加平均值趋于0
输入X的n维向量,输出Y是-1或1。F由d个模型f构成。
因为是二分类问题,选择0-1损失函数。
经验风险最小的模型记fN,它的泛化能力是它对应的期望风险。
个人理解误差=风险=损失
R(f)是泛化误差,R^ (f)是训练误差,若N无穷大,ε趋于0,并且R^(f)趋于0,所以泛化误差上界趋于0。d越大,假设空间越复杂,泛化误差也越大
泛化误差上界是:
1.6 泛化能力 - 定理证明
1.7 生成模型与判别模型
学习数据获得模型的方法可以分为生成方法和判别方法
生成模型
由训练集得到联合概率分布P(X,Y),然后计算出条件分布P(Y|X),以X为条件的Y的概率分布,以此作为预测模型。叫生成模型是因为给一个输入变量X,就可以根据分布函数,有输出变量Y。X和Y要求为随机变量
典型的生成模型:朴素贝叶斯法、隐马尔科夫模型(时间序列的概率模型)
判别模型
不需要考虑X和Y的联合分布,从数据学习直接得到决策函数或者条件概率分布作为预测模型。有针对性的,研究对于什么样的输入得到什么样的输出。X和Y不要求为随机变量
典型的判别模型:k近邻法、感知机、决策树
生成模型和判别模型对比
预测小狗和大象:
判别方法就判断鼻子长度。针对性的学习
生成方法要构建两者的特征模型,再将新物体与特征模型比较,从大量数据寻找规律
样本容量多,学习的模型更快收敛到真实的模型上
1.8监督学习应用
分类问题
评价指标:分类准确率:正确分类的样本量与总样本量的比值
括号中当预测=真实时为1
分母:预测结果为正类的个数,既有正确的也有错误的
分母:样本中真实的正类的个数
希望精确率和召回率都是越高越好,所以有调和值,当P和R越高F1也越高
标注问题
要求输入和输出都是变量序列,并且长度相同,不同样本可以有不同序列
回归问题
2.1 感知机 - 模型介绍与学习策略
二分类的线性分类模型,模型是线性形式的
输入,是n维实数空间的子集
定义一个输入空间到输出空间的函数,这个函数叫感知机。sign是符号函数,表示如果内部的w·x+b>=0,就是+1,正类。
特征空间里所有这种线性函数叫假设空间,参数空间就是所有的w、b组成的集合,是n+1维的空间
感知机模型是由w和b决定的,通过学习系统估计出w和b
w是法向量,垂直超平面S,通过超平面将特征空间分为两部分,一部分是正类,其中实例所对于y值为+1。
超平面比特征空间小一维
感知机的学习策略:条件
我们的目标是找到一个好的分离超平面,将实例完全划分为正类和负类,那么求S就要确定w和b,就要指定学习策略,就是最小化损失函数,求得参数。
那么如何定义感知机中的损失函数呢,先定义特征空间中任意一点x0到超平面S的距离
如果没有误分类点,M就为0
网友评论