专栏名称: 机器之心
专业的人工智能媒体和产业服务平台
目录
相关文章推荐
爱可可-爱生活  ·  【[288星]Factorio ... ·  23 小时前  
黄建同学  ·  OWL - Manus AI ... ·  昨天  
人工智能那点事  ·  强制18点20下班,还有HR到点赶人?美的回应…… ·  2 天前  
爱可可-爱生活  ·  [CL]《Knowledge ... ·  2 天前  
51好读  ›  专栏  ›  机器之心

观点 | 机器学习新手工程师常犯的6大错误

机器之心  · 公众号  · AI  · 2017-10-16 12:12

正文

选自Medium

机器之心编译

参与:刘晓坤、路雪


机器学习中有很多构建产品或解决方案的方式,每种方式的假设情况都不一样。很多时候,如何找到合理的假设并不容易。机器学习初学者经常会犯一些事后觉得蠢爆了的错误。本文作者创建了一个机器学习新手工程师常犯的错误清单。希望大家可以从中学习,创建更鲁棒的解决方案。


理所当然地使用默认损失函数


在刚入门的时候,均方误差作为损失函数是很好的默认选择。但是当需要处理现实问题的时候,这种未经专门设计的损失函数很少能给出最优解。


拿欺诈检测为例。为了与你真正的商业目标一致,需要按照欺诈造成的损失美元金额的比例惩罚假负类。使用均方误差能给你一个还不错的结果,但不会是当前最佳的结果。


要点 :每一次都自定义损失函数,使之紧密匹配你的目标。


对所有问题都使用一种算法/方法


很多人一旦完成了入门教程之后,就开始在所有的案例中都使用同一种算法。这很常见,他们觉得这种算法的效果和其它算法是一样的。这种假设是很糟糕的,最终会带来很差的结果。


解决办法是让数据为你选择模型。当你把数据预处理之后,将其馈送到多个不同的模型中去,看看结果如何。你将会了解哪些模型最适用,而哪些模型并不适合。


要点 :如果你一直使用同一种算法,这可能意味着你的结果并不是最好的。


忽略异常值


异常值有时候很重要,有时候又可以忽略不计,视情况而定。以收入预测为例,有时候收入会突然出现很大的变动,观察这种现象并了解其原因是很有帮助的。有时候异常值由某种误差造成,那么这时可以放心地忽略它们,并将其从你的数据中删除。


从模型的角度来看,有些模型对异常值更加敏感。以 Adaboost 为例,它会将异常值当做重要的例子,并给予异常值极大的权重,而决策树可能只是简单的把异常值当做一个错误分类(false classification)。


要点 :每一次开始工作之前,先仔细观察数据,决定异常值是否应该被忽略,如果无法决定,就更仔细地观察。


未正确处理周期特征








请到「今天看啥」查看全文