爱吧机器人网 » 技术 > 机器学习 > 正文

成功构建一个机器学习模型需避免这9个错误

成功构建一个机器学习模型需避免这9个错误
在A先生(作者没有透露姓名,姑且成他为A先生)从事IT领域工作的过去二十年中,A先生看到人工智能技术从概念转向实际 ,使其变得更易于使用,即使对于没有专业知识的团队也是如此。

随着越来越多的团队使用预测模型,企业领导者和管理者必须意识到可能扭曲团队工作结果的常规问题。 以下是要避免的九个常见问题,最好的做法是遵循,以实现一个可靠的机器学习过程。

问题1:抽样偏差

任何机器学习程序的出发点是选择训练数据。通常,组织有一些可用的数据,或者可以识别相关的外部供应商,例如政府实体或行业协会,这是问题开始的地方。

培训团队及其业务发起人必须定义要使用的数据集。在选择数据样本时,很容易引入偏倚,选择错误表示或低估真实情况的数据集,这将扭曲结果。

解决方案:为了避免抽样偏差,团队必须确保真正随机选择的数据,并且不只是简单地使用特定的部分,因为这是最容易访问的。对理想数据集的清晰定义和模型的逻辑是指导有效数据选择的关键。通过与业务所有者合作,并让几个检查人员在这个早期阶段验证选择标准,机器学习团队可以确保他们的数据抽样方法是可靠的。

问题2:不相关的特征选择

在许多情况下,由于变量选择的细微差别,当在遇到了困难时,许多技术需要大量的特性集来支持学习过程。但是,为了收集足够的学习数据,确保具有正确的和相关的特性是很有挑战性的。

解决方案:构建一个性能良好的模型的过程需要仔细的探索和分析,以确保选择并设计合适的特性。了解领域及目标是选择正确功能的两个最重要的驱动因素。此外,诸如递归特性消除(RFE)、随机森林、主成分分析(PCA)和自编码器等技术可以帮助培训工作集中在更小的以及更有效的特性上。

问题3:数据泄漏

机器学习小组可能会不小心收集到其他的额外数据,以训练使用标准,这是团队试图预测的结果的一部分。因此,模型将显示出性能将会好的令人难以置信。例如,一个团队可能错误的在预测疾病的模型中包含了一个指示治疗某种疾病的变量。

解决方案:培训团队必须在模型估算结果之前,使用仅在培训时实际可用的数据来构建数据集。

问题4:缺少的数据

在某些情况下,由于某些记录缺失值,数据集将不完整。如果不正确的调整这个条件,或者假设没有缺失值,培训师可能会对结果产生明显的偏差。

解决方案:如果不能设计出相应的程序以确保使用完整的数据集,可以尝试使用统计技术,包括使用缺失值的丢弃记录,或者使用适当的估算策略来评估丢失数据的值。

问题5:不准确的缩放和标准化

构建用于机器学习工作的数据集通常需要团队收集具有不同测量尺度的不同类型的输入。 如果在训练模型之前未能调整变量的值以允许通用比例,则线性回归,支持向量机(SVN)或k近邻(KNN)等算法会受到很大的影响。 出现这些问题是因为大范围会导致较高的方差,因此可能变得没有那么重要。 例如,如果将两者都用作未处理的投入,则工资数据可能会获得比年龄具有更高的权重。

解决方案:在开始进行模型培训之前,必须注意规范化数据集。可以通过常规的统计技术(如标准化或功能扩展)来转换数据集,这取决于数据类型和团队首选的算法。

问题6:忽略异常值

忽略异常值可能会对模型的性能产生重大影响。 例如,像AdaBoost这样的算法将异常值视为困难的情况,并将不适当的权重放在适当的位置,而决策树更加宽容。 此外,不同的用例需要不同的异常处理。 例如,在检测到欺诈行为的情况下,应重点关注存款中的异常值,但在感官温度输入中,数据异常值可能会被忽略。

解决方案:要解决此问题,团队应该使用正确处理异常值的建模算法,或者在训练之前过滤出异常值。 一个好的起点是让团队做一个初步检查,以确定数据中是否有异常值。 最简单的方法是审查数据的图表或检查任何偏离均值几个偏差或更多的值。

问题7:Miscalculated功能

当一个团队的工程师投入到模型训练时,衍生过程中的任何错误都可以给模型提供误导的输入。因此,无论团队如何进行培训,模型的行为都是出乎意料的,并且产生不可靠的结果。这个问题的一个例子是当一个团队削弱了依赖于计算利用率的信用评分预测模型的时候,因为团队包括了来自信用报告的不活跃的交易的数据。

解决方案:培训人员必须准确地检查团队是如何获得数据的。一个关键的起点是了解哪些特性是原始格式,哪些是经过设计的。在此基础上,训练人员在进行训练之前,将会很好的检查所导出特征的假设和计算。

问题8:忽略多线的投入

使用数据集而不考虑多线性预测因子是误导模型训练的另一种方式(多线性输入的存在意味着两个或多个变量之间存在高度相关性)。 结果很难确定任何一个变量的影响。 在这种情况下,选定特征的微小变化会对结果产生重大影响。 这个问题的一个例子是,广告预算和流量呈现共线性作为预测变量。

解决方法:检测多共线性的一种简单方法是计算所有对变量的相关系数。然后就有许多选项可以解决任何确定的共线性问题,例如构建组合或删除冗余变量。

问题9:无效的Kpi

大多数建模算法在训练数据具有不同实例的均衡表示时表现最佳。当数据存在严重的不平衡时,度量模型性能的正确度量就变得至关重要。例如,平均违约率为1.2%,模型将产生98.8%的准确率,并预测在所有情况下不会出现违约。

解决方案:除非可以选择生成更平衡的培训集或使用基于成本的学习算法,否则选择业务驱动的性能指标是最好的解决方案。在精度、召回率、F1评分、受试者工作特征曲线 (ROC)等精度之外,还存在各种性能指标。选择最合适的度量标准将指导训练算法最小化错误。

从一个扎实的基础开始

由于技术和工具的进步,机器学习培训项目比以往任何时候都更容易执行。然而,生成可靠的结果需要对数据科学和统计原则有一个扎实的理解。


上一篇:小米开源移动端深度学习框架MACE:可转换TensorFlow模型
下一篇:Judea Pearl:传统机器学习于因果层级底层,达成完备AI的7个工具
精选推荐
亚马逊计划建一个4000万美元的机器人中心
亚马逊计划建一个4000万美元的机器人中心

[2019-11-07]  爱吧机器人网消息,亚马逊11月6日宣布了一项计划,计划在美国马萨诸塞州韦斯特伯勒建立一个4000万美元、35万平方英尺的机器人创新中心。新 ...

通过对抗性图像黑入大脑
通过对抗性图像黑入大脑

[2018-03-02]  在上面的图片中,左边是一张猫的照片。在右边,你能分辨出它是同一只猫的图片,还是一张看起来相似的狗的图片?这两张图片之间的区别在于, ...

MIT最新“人机”互连系统 让双腿机器人复制人体技能
MIT最新“人机”互连系统 让双腿机器人复制人体技能

[2019-11-01]  MIT的小爱马仕想借用你的大脑 ,图片来自: João Ramos爱吧机器人网消息,麻省理工学院(MIT)的研究人员展示了一种新型遥操作系 ...

美国人工智能公司Skymind进入福建全面开展业务
美国人工智能公司Skymind进入福建全面开展业务

[2017-12-11]  人工智能在当今这个时代对大家来说想必是非常熟悉的,这也是我国近十几年来一直追求的目标,未来的时间里这也将是全人类追求的目标。就目前来看,近年来,人工智能或在我国迎......

2017年:AI渗入云端
2017年:AI渗入云端

[2017-12-29]  云中的人工智能不仅仅是科技巨头的权力游戏,它也可能是人工智能领域的下一个飞跃。加利福尼亚州的Rigetti Computing公司刚刚使用其原型量子芯片之一在其云平台上运行机器学......

[2017-03-21]  虽然有很多关于机器人取代工人的担心,但哈佛经济学家James Bessen的论文指出,在过去的67年里机器人仅仅淘汰掉人类工作中的一个。在1950 ...

智能农业:种地的事儿未来全交给这些机器人吧
智能农业:种地的事儿未来全交给这些机器人吧

[2019-12-07]  SRC公司创始人Sam与温波尔庄园农场经理Callum Weir以及监控机器人Tom总部位于英国的农业科技初创公司SRC(Small Robot Company),正在 ...

这个外科手术机器人可以为患者“量身定制”
这个外科手术机器人可以为患者“量身定制”

[2019-07-12]  世界首创,来自澳大利亚机器人视觉研究中心的研究人员正在推动手术机器人的发展边界,他们创造了可定制的、小型化的手术机器人,能够唯一地 ...

本周栏目热点

盘点全球十大最具影响力的机器人摇篮

[1970-01-01]    人工智能(AI)研究现正迅速发展,如无人驾驶汽车、计算机在《危险边缘》智力竞赛节目中获胜、数字私人助手Siri、GoogleNow和语音助手C ...

深度学习反向传播算法(BP)原理推导及代码实现

[2017-12-19]  分析了手写字数据集分类的原理,利用神经网络模型,编写了SGD算法的代码,分多个epochs,每个 epoch 又对 mini_batch 样本做多次迭代计算。这其中,非常重要的一个步骤,......

如何在机器学习项目中使用统计方法的示例

[2018-07-23]  事实上,机器学习预测建模项目必须通过统计学方法才能有效的进行。在本文中,我们将通过实例介绍一些在预测建模问题中起关键作用的统计学方法。...

[2017-08-28]  模拟退火(Simulated Annealing,简称SA)是一种通用概率算法,用来在一个大的搜寻空间内找寻命题的最优解。1、固体退火原理:将固体加温 ...

Machine Learning-感知器分类算法详解

[2018-05-31]  今天我们来讲解的内容是感知器分类算法,本文的结构如下:什么是感知器分类算法,在Python中实现感知器学习算法,在iris(鸢尾花)数据集上训练一个感知器模型,自适应线性神......