为什么我基于开源包建的模型效果不好?

本文探讨了使用开源包如Scikit-learn建模时,为何效果会因人而异。主要原因是数据质量、预处理和算法参数选择。数据质量包括数据量和代表性,预处理涉及缺失值、异常值处理等,而算法参数调整需要深入理解。自动建模技术可以帮助初学者简化建模过程。
摘要由CSDN通过智能技术生成

机器学习发展到今天已经有众多优秀前辈给我们贡献了各种各种现成的开源包

以最流行的 Scikit-learn 为例,提供了包括回归 (Regression)、降维(Dimensionality Reduction)、分类(Classfication)、聚类(Clustering) 等方法的开源包,使用者可以灵活的实现各种建模操作。但是也有人发现了,同样的开源包不同的人建出的模型效果是不一样的,甚至大相径庭。为什么大牛就能建出高质量模型,而我基于开源包建的模型效果总是不尽人意呢?主要原因有以下三点:

首先是数据本身质量差。数据挖掘就像挖金矿,含金量高,那么挖掘难度就小,出金率就高,反之含金量低,那么就会难度大效果差。数据问题大概可以从 2 个方面来考虑,首先要检查数据量是否充足,大部分的机器学习算法都需要一定量的数据才能正常工作,太少的数据量会导致建模失败或模型效果不好,尤其要注意不平衡样本中阳性样本的数量;其次要分析参与建模的数据样本和特征分别是否具有代表性,例如要通过民调来预测美国总统大选,那么民调的样本要具有全面的代表性,不能只抽查偏向某一方的人群或地区,除了样本要有代表性数据特征也要有充足的相关性才容易建出好的模型。

但是,我和大牛使用的是同样数据,建出的模型依然不好,又是怎么回事?

第二个原因是预处理没做好。原始数据往往是不能拿来直接建模,还需要做预处理,预处理做的是否合适会对模型结果产生很大影响。但同时预处理也是一件十分头大的工作,因为它没有固定的方法可言,数据特点和分布不同预处理的方法也就不同,需要不断地去尝试,这也正是为什么我们使用开源包复制了别人的流程,也依然效果不好的。以简单

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值