机器学习实践(十三)—sklearn之欠拟合与过拟合

当训练数据训练的很好误差也不大的时候,为什么在测试集上面进行预测会有较大偏差呢?

当算法在某个数据集当中出现这种情况,可能就出现了过拟合现象。

一、什么是过拟合与欠拟合

  • 欠拟合

    一个假设在训练数据上不能获得更好的拟合,并且在测试数据集上也不能很好地拟合数据,此时认为这个假设出现了欠拟合的现象。(模型过于简单)

  • 过拟合

    一个假设在训练数据上能够获得比其他假设更好的拟合, 但是在测试数据集上却不能很好地拟合数据,此时认为这个假设出现了过拟合的现象。(模型过于复杂)

二、原因以及解决办法

  • 原因

    • 欠拟合原因:

      • 学习到数据的特征过少
      • 模型复杂度较低
      • 正则化系数过大
    • 过拟合原因:

      • 训练数据过少
      • 原始特征过多
      • 模型过于复杂
      • 正则化系数过小
  • 解决办法

    几种降低过拟合和欠拟合风险的方法

三、正则化

  • 什么是正则化

    在学习的时候,数据提供的特征有些影响模型复杂度或者这个特征的数据点异常较多,所以算法在学习的时候尽量减少这个特征的影响(甚至删除某个特征的影响),这就是正则化

    注:调整时候,算法并不知道某个特征影响,而是去调整参数得出优化的结果

  • 正则化类别

    • L2 正则化
      • 作用:可以使得其中一些W的都很小,都接近于 0,削弱某个特征的影响
      • 优点:越小的参数说明模型越简单,越简单的模型则越不容易产生过拟合现象
      • Ridge回归(岭回归)
    • L1 正则化
      • 作用:可以使得其中一些W的值直接为 0,删除这个特征的影响
      • LASSO回归(稀疏)
  • 原理

    • 线性回归的损失函数用最小二乘法,等价于当预测值与真实值的误差满足正态分布时的极大似然估计;

    • 岭回归的损失函数,是最小二乘法+L2范数,等价于当预测值与真实值的误差满足正态分布,且权重值也满足正态分布(先验分布)时的最大后验估计;

    • LASSO的损失函数,是最小二乘法+L1范数,等价于当预测值与真实值的误差满足正态分布,且权重值满足拉普拉斯分布(先验分布)时的最大后验估计

你可能感兴趣的:(机器学习实践)