zoukankan      html  css  js  c++  java
  • 【笔记】偏差方差权衡 Bias Variance Trade off

    偏差方差权衡 Bias Variance Trade off

    什么叫偏差,什么叫方差

    根据下图来说

    偏差可以看作为左下角的图片,意思就是目标为红点,但是没有一个命中,所有的点都偏离了

    方差可以看作为右上角的图片,意思就是目标为红点,虽然还在周围,没有太偏,但是太过分散了,不够集中,这就有很高的方差

    第一行就是低偏差的结果,第二行就是高偏差的结果
    第一列就是低方差的结果,第二列就是低方差的结果

    我们可以将问题本身理解成红心,我们拟合的模型就是上面的点

    那么就可以知道模型的误差等于偏差加上方差加上不可避免的误差

    导致偏差的主要原因就是对问题本身的假设是不正确的,比如说非线性数据使用线性回归的方法,在现实环境里面,欠拟合就是这样的情况,还有其他的可能,最典型的就是训练数据采用的特征和这个问题完全没有关系

    方差在机器学习中的表现就是数据的一点点扰动都会较大的影响模型,也就是说模型完全没有学习到实质,学习到了很多的噪音,通常来说,模型方差高的原因就是模型太复杂,比如高阶多项式回归,那么过拟合就会引入方差

    对于机器算法来说

    有一些算法天生是高方差的算法,比如knn,非参数学习通常都是高方差算法,因为不对数据进行任何的假设

    有一些算法天生就是高偏差算法,比如线性回归,参数学习通常都是高偏差算法,因为对数据具有较强的假设

    大多数的算法具有相应的参数,都可以调整偏差和方差,像是knn中的k以及线性回归中使用多项式回归

    一般来说偏差和方差是矛盾的,降低偏差就会提高方差,降低方差就会提高偏差

    在机器学习的时候,主要的挑战是来自方差(算法层面)
    通常解决高方差的几种手段:
    1.降低模型的复杂度
    2.减少数据维度或是降噪
    3.增加样本数
    4.使用验证集
    5.模型正则化

    以上

  • 相关阅读:
    火币Huobi API Websocket
    火币Huobi API
    OKEX API(Websocket)
    OKEX API
    Linux下Miniconda量化环境安装
    Numba:高性能Python编译器
    十进制和十六进制互相转换
    JavaScript 原型和原型链
    Redux 进阶之 react-redux 和 redux-thunk 的应用
    Vue 中 $nextTick() 的应用
  • 原文地址:https://www.cnblogs.com/jokingremarks/p/14310992.html
Copyright © 2011-2022 走看看