快速构建学习算法

针对某个问题,我们想要建立一个良好的模型进行解决,我们会尝试很多种办法。甚至一开始就花费大量的精力去构建一个非常复杂的系统,这是不好的,因为这样不仅花费大量的时间,而且最终的效果不确定,也就是说选择的这个方向到底对不对。

为了解决以上疑问,我们通常先构建一个简单地算法系统,即使运行的不完美,但是也把他运行一遍,最后通过交叉验证来检验数据。做完之后,我们就可以通过我们所学的学习曲线,来找出算法是否具有高偏差和高方差问题,或者别的问题。这样分析之后,再来决定用六种方法的哪一种方法来解决出现的问题,比如增加训练集来解决高方差问题。

这么做的原因就是:刚接触机器学习问题时,我们不能够提前知道是否需要更多的数据,是否需要更复杂的特征变量,是否增大或减小正则化参数 λ 等等。因此,我们很难知道应该把时间花在哪一个方向上来提高算法的表现。如果一开始就想着实现复杂的算法,尝试每个方向,很显然,浪费大量时间与精力,得不偿失。   所以我们先实现一个简单地算法(即使不完美),通过画出学习曲线来做出进一步的方向选择。

除了画出学习曲线以外,一件非常有用的事是误差分析,我们观察哪些数据被错误的预测,而这些数据之间又有什么样的规律,针对这些有规律的数据,我们可以构造新的特征变量或者系统的短处,启发我们去优化系统算法。

综上,构建一个算法的推荐方法为:

1.从一个简单地能快速实现的算法开始,实现该算法并用交叉验证集数据验证这个算法。

2.绘制学习曲线,决定是增加更多数据,或者添加更多特征,还是其他选择

3.进行误差分析:人工检查交叉验证集中我们算法产生预测误差的实例,看看这些实例是否具有某种系统化的趋势。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值