【机器学习笔记】第8章:偏差与方差

第8章:偏差与方差

8.1 评估模型

用训练集对模型进行训练的时候,通常会存在两种问题,“过拟合”和“欠拟合”,分别对应高方差(high variance)和高偏差(high bias)。

高方差:拟合程度过好,以至于过拟合,无法泛化新的样本数据
高偏差:拟合程度太差,以至于欠拟合,训练模型效果差,存在很大的误差

模型评估:

  1. 随机划分训练集和测试集;
  2. 用训练集进行模型训练,用测试集计算代价函数 J t e s t ( θ ) J_{test}(\theta) ;
  3. 或者采用错误分类率 T e s t   e r r o r = 1 m i = 1 m e r r ( h θ ( x ( i ) ) , y ( i ) ) Test\ error=\frac{1}{m}\sum_{i=1}^merr(h_\theta(x^{(i)}),y^{(i)}) e r r ( h θ ( x ) , y ) = { 1 i f h θ ( x ) 0.5 , y = 0 o r h θ ( x ) < 0.5 , y = 1 0 i f e l s e err(h_\theta(x),y)= \begin{cases} 1 &if \quad h_\theta(x)\geq0.5,y=0\quad or\quad h_\theta(x)<0.5,y=1\\ 0 &if \quad else \end{cases}

模型选择:

  1. 将数据划分成训练集、交叉验证集和测试集;
  2. 用训练集训练出多个模型,将所有模型分别用交叉验证集计算出代价函数 J c v ( θ ) J_{cv}(\theta) ;
  3. 选择代价函数值 J c v ( θ ) J_{cv}(\theta) 最小的模型,用这个模型对测试集计算出代价函数 J t e s t ( θ ) J_{test}(\theta) ;

训练误差: J t r a i n ( θ ) = 1 2 m t r a i n i = 1 m t r a i n ( h θ ( x t r a i n ( i ) ) y t r a i n ( i ) ) 2 J_{train}(\theta)=\frac{1}{2m_{train}}\sum_{i=1}^{m_{train}}(h_\theta(x_{train}^{(i)})-y_{train}^{(i)})^2 交叉验证误差: J c v ( θ ) = 1 2 m c v i = 1 m c v ( h θ ( x c v ( i ) ) y c v ( i ) ) 2 J_{cv}(\theta)=\frac{1}{2m_{cv}}\sum_{i=1}^{m_{cv}}(h_\theta(x_{cv}^{(i)})-y_{cv}^{(i)})^2 测试误差: J t e s t ( θ ) = 1 2 m t e s t i = 1 m t e s t ( h θ ( x t e s t ( i ) ) y t e s t ( i ) ) 2 J_{test}(\theta)=\frac{1}{2m_{test}}\sum_{i=1}^{m_{test}}(h_\theta(x_{test}^{(i)})-y_{test}^{(i)})^2

8.2 最高次幂对方差/偏差的影响

如图所示,横坐标为假设函数的最高次幂,纵坐标为错误分类率或者代价函数,一般情况下:
在这里插入图片描述

  • d d 很小时,曲线无法拟合大部分数据,具有高偏差, { J t r a i n ( θ )   w i l l   b e   h i g h J t e s t ( θ ) J t r a i n ( θ ) \begin{cases} J_{train}(\theta)\ will \ be \ high \\ J_{test}(\theta)\approx J_{train}(\theta) \end{cases}
  • d d 很大时,曲线拟合训练集过好,造成无法泛化测试集,具有高方差, { J t r a i n ( θ )   w i l l   b e   l o w J t e s t ( θ ) J t r a i n ( θ ) \begin{cases} J_{train}(\theta)\ will \ be \ low \\ J_{test}(\theta)\gg J_{train}(\theta) \end{cases}

8.3 正则化参数对方差/偏差的影响

如图所示,横坐标为正则化参数 λ \lambda ,纵坐标为错误分类率或者代价函数,一般情况下:
在这里插入图片描述

  • λ \lambda 很小时,未减少权重系数的大小,曲线对训练集的拟合程度很好,具有高方差
  • λ \lambda 很大时,减少权重系数太多,曲线无法很好的拟合数据,具有高偏差

8.4 高偏差的学习曲线

如图所示,横坐标为训练集大小,纵坐标为错误分类率或者代价函数,一般情况下:
在这里插入图片描述

  • 随着数据集的增大,训练集的误差会越来越大,测试集的误差会越来越小
  • m m\rightarrow \infty 时, 训练集和测试集的误差均会趋近于一个较大的常数

8.5 高方差的学习曲线

如图所示,横坐标为训练集大小,纵坐标为错误分类率或者代价函数,一般情况下:
在这里插入图片描述

  • 随着数据集的增大,训练集的误差会越来越大,测试集的误差会越来越小
  • 训练集的误差和测试集的误差之间的间隙较大

8.6 对机器学习算法的调试

  • 采用更多的训练集 \rightarrow 解决高方差(过拟合)
  • 减少特征数量 \rightarrow 解决高方差(过拟合)
  • 增加特征数量 \rightarrow 解决高偏差(欠拟合)
  • 增加最高次幂 \rightarrow 解决高偏差(欠拟合)
  • 降低正则化系数 λ \lambda \rightarrow 解决高偏差(欠拟合)
  • 增加正则化系数 λ \lambda \rightarrow 解决高方差(过拟合)
发布了9 篇原创文章 · 获赞 0 · 访问量 160

猜你喜欢

转载自blog.csdn.net/qq_45474860/article/details/104728867
今日推荐