当前位置:CIO频道技术探讨 → 正文

应避免犯的12个数据科学错误

责任编辑:cres 作者:Mary Branscombe |来源:企业网D1Net  2018-05-21 14:34:49 原创文章 企业网D1Net

管理完善的分析计划可使组织收获颇丰。但是如果犯了一些常见错误,那么你的数据科学工作则可能很快出错。
 
人工智能、机器学习和分析技术不仅仅是最新的流行语;各个组织都在关注人工智能工具和服务,希望通过大数据、预测分析和自动算法系统来改善业务流程、客户支持和决策制定。 IDC预测,到2018年,75%的企业和独立软件开发商(ISV)将在其至少一个应用程序中使用人工智能或机器学习技术。
 
但是拥有数据科学方面的专业知识却并不像人们对利用数据来做出决策和改进结果的兴趣那样普及。如果你刚刚在业务中开始使用数据科学,那么你需要避免犯以下常见的错误。
 
1. 假设你的数据已准备就绪,并且都是你所需要的
 
你需要检查你收集并准备使用的数据的质量和数量。“你的大部分时间,通常是80%的时间,将用于收集和清理数据,”data.world公司的数据专家兼知识工程师乔纳森·奥尔蒂斯(Jonathan Ortiz)说。“这是假设你正在跟踪的数据就是数据科学家完成他们工作所需的数据。”
 
如果你正在跟踪的数据是正确的,那么你可能无法进行正确地记录,或者记录数据的方式可能随时间而改变,或者你收集数据的系统可能在你收集数据时发生了变化。“如果每个月都有逐渐增加的变化,那么当你执行分析或建立模型时,就不能使用整个月的数据,”奥尔蒂斯提醒说道,因为系统本身已经发生变化。
 
TechTarget公司的首席营销官约翰·斯坦纳特(John Steinert)解释道,即使你正在收集的数据是正确的,但由于数据量低和大量的自变量,这也很难为B2B营销和销售等业务领域创建预测模型。“当你收集的数据越多,数据科学工作也会变得越来越好;当你收集的数据越多,预测模型也越强大。由于交易率低,以及影响交易的自变量众多,因此你收集的数据集很少,而且关联复杂,这将削弱预测模型的效率。”
 
一种选择是购买像购买意向数据这样的数据集,只要你可以找到适用于你业务范围的数据集。另一个选择是模拟数据,但必须谨慎操作,Avanade公司高级顾问数据专家Chintan Shah提醒说道。“实际上,数据可能不会按照你在开始时所做的假设那样表现,”Shah说。
 
2. 在开始工作之前,没有查看数据集
 
你可能对你的数据集会显示的内容有自己的理论和直觉,但数据团队应该花时间仔细研究数据,然后利用这些数据来创建数据模型。
 
“如果你发现一些内容与你的直觉相反,那么你的假设可能是不正确的或者你的数据可能是错误的,”奥尔蒂斯说。“我所做的最重要的工作就是查看数据,绘制数据并进行探索性分析。很多人过快地来做这些工作,或完全绕开这些工作,但你需要了解数据的内容。你可以事先查看一下数据,以确定其是否基于某一领域专业知识和商业头脑能更快地提供正确的情况描述。”
 
3. 期望过高
 
对人工智能的大肆炒作让很多人相信:“如果我们将数据放在某一计算机算法中,它会自行解决所有问题,”Shah提醒说道。“虽然公司拥有大量数据,但仍需要人员的专业知识才能将数据转换为可用的格式。”
 
斯坦纳特指出,如果只关注你公司之前完成的工作,就不会发现新的机遇,而这只是使已完成的同一工作更有效率的方式。斯坦纳特说:“你越依赖过去的工作作为预测未来的唯一因素,就越不容易寻找到新的途径。即使你引入第三方数据来寻找你产品或服务的需求,这也不能保证你能够实现销售目标。“数据模型可以告诉你一家公司与你所提供的产品是否相匹配,但它无法告诉你该公司现在是否有需求,”他补充道。
 
“人们开始进行投入,并对数据科学家有前所未有的信任,他们正为数据科学家投入资源并期望能获得良策来解决所有问题。现在人们对数据科学家有着美好的想法,他们极大地相信数据科学家可利用数据来回答问题并推动决策,”奥尔蒂斯说。
 
奥尔蒂斯建议数据科学家应该证明,他们可以通过从小型项目着手,并快速取得成果来向组织体现其价值。“先从相对容易的项目开始,而不要从技术复杂的项目入手,不要花一个月时间参与一个你认为具有巨大价值的大项目,”他说。
 
4. 不使用控制组来测试你的新数据模型
 
如果你花费时间和金钱建立了一个数据模型,那么你希望在任何地方都使用这一模型,以充分利用你的投入。但是,如果这样做,你就无法衡量模型的实际效果。另一方面,如果用户不相信该模型,他们可能就不会使用,那么你就无法进行测试,斯坦纳特说。有什么解决方案呢?采用变更管理计划来确保该模型被使用,同时让一个控制组不使用该模型,斯坦纳特补充说道。让一个随机小组追踪该模型所确定的商机,并且让一个控制组“根据自身经验并有权按照他们一贯的方式追踪商机”。
 
5. 以目标而并非假设来开始工作
 
寻找可以提供明确改进的数据模型是很诱人的,例如,在48小时内获得80%的客户支持案例,或者在一季度内获得10%的业务增长,但这些指标还不够。
 
“最好先从假设开始,”奥尔蒂斯说。“通常你会将一条曲线或一条直线作为整体度量标准,并且你想要移动这条线;这可能是一个伟大的商业目标,但很难想象你需要采取哪些措施才能做到这一点。“通过控制组或研究数据来验证你的假设,即哪些因素能改进工作。“如果你可以利用控制组进行分组测试并且这两个组都具有代表性的样本,则可以明确你使用的方法是否对你希望达到的效果产生实际的影响。如果你只是在查看事后数据,那么从假设开始着手可有助于缩小范围。我需要将这个指标提升10%:针对可能提升该指标,我的假设是什么?然后(我可以)做探索性数据分析,对数据中的因素进行跟踪。对你提出的问题和你正在测试的假设有清楚地认识,可有助于减少你在这个问题上花费的时间。”
 
6. 让你的数据模型过时
 
如果你创建的数据模型可很好地解决你的问题,那么你可能会认为你可以一直使用它,但模型也是需要更新的,并且随着时间的推移你可能需要构建其他的模型。
 
“功能会随着时间而改变,”奥尔蒂斯提醒说道。“你将不断需要了解其有效性并对你的模型进行更新。”
 
模型过时的原因有很多,世界在变化,你的公司也在变化(尤其是如果你的模型被证明有用的话)。“模型不应该被视为静态的东西,市场当然也不是一成不变的,”斯坦纳特指出。“如果市场的偏好正在逐渐发展远离你过去的历史状态,那么你的历史状态将会使你走上分化的道路。模型的性能就会衰退,或者竞争对手会从你公司的市场行为中学到经验。保留一系列实验机制:‘随着时间的推移,我将如何为模型添加新内容?’你必须进行一系列实验才能发现新的机遇。”
 
7. 不监控最终结果的自动化
 
使用控制组的另一作用是衡量模型的输出结果是否良好,并且你需要在整个流程中进行跟踪,否则最终就是对错误的目标进行优化。
 
斯坦纳特指出:“企业的工作就如同将机器人应用于你的电话业务中,你没有持续检查机器人是否能够带来更高的客户满意度,而你只是庆幸自己使用了更少的劳动力。”如果客户正在关闭支持服务,因为这些机器人无法给他们正确的解答,没有帮助他们解决问题,客户满意度将大幅下降。
 
8. 忘记让业务专家来参与
 
认为你需要的所有答案都在数据中,并且认为开发人员或数据科学家可以自己找到答案,这是错误的。应确保了解业务问题的人员参与其中。
 
“尽管专业知识的数据科学家最终能够发现问题,但如果业务专家和数据科学家共同合作,那么工作将更容易,”Shah解释说。“任何优秀的数据科学算法都依赖于成功的特征工程。为了获得更好的特征,某一领域专家总是会带来更多的价值,而不是花哨的算法。”
 
奥尔蒂斯表示,即使在你查看数据之前,通过与数据团队和业务利益相关者之间进行对话来启动项目,以确保每个人都清楚项目想要实现的目标。“然后,你可以做探索性数据分析,来了解你能否实现这一目标,如果不能,你可能必须以新的方式重新提出问题或获得不同的数据源。”但该领域专家应该帮助你确定目标是什么,以及项目是否可交付这一目标。
 
9. 选择过于复杂的工具
 
最前沿的机器学习技术令人兴奋,新技术可能功能非常强大,但它们也可能被过度使用。 “你可能会发现一个简单的方法,比如逻辑回归或决策树,就可以完成这项工作,”Shah指出,奥尔蒂斯表示赞同。
 
“人们很容易在计算机能力和复杂模型上投入巨大资源来解决问题。也许我对一个项目的某个方面很好奇,想测试一种全新的算法,该算法可做更多的工作,或者我只是想尝试一下。这项工作就是找到一个简单的方法来回答问题。应该尝试过各种最简单的方法之后,再使用更复杂的方法,”奥尔蒂斯说道,并指出过度匹配更可能发生在像深度学习这样的复杂算法中:“对当前拥有的数据,你创建了非常准确的模型,但该模型对新数据则表现欠佳。”
 
与业务专家合作,确定需要回答的问题,这可指导你来选择使用哪些技术。“许多数据科学家专注于机器学习,而许多机器学习技术侧重于预测工作,但并不是每个问题都涉及预测问题。‘我们需要查看上季度的销售情况’,这可能意味着很多不同的事情。我们是否需要预测对新客户的销售额,或者你只需要知道为什么销售人员似乎在上个季度的某一周业绩不佳,”奥尔蒂斯说。
 
10. 再次使用那些不适合你的实现
 
有大量的数据科学和机器学习的例子,你可以进行学习和调整。“数据科学呈指数增长背后的原因之一是几乎所有算法都能得到开源实现,这使得开发快速原型变得容易,”Shah解释说。但是这些实现通常是针对特定用例开发的。如果你需要从系统中获得不同的东西,那么你最好开发自己的版本,他说道。“实施你自己的数据清理工作和功能构建程序,”他建议。 “这会让你有更大的控制能力。”
 
11. 对基本因素(如因果关系和交叉验证)的误解
 
当你没有足够的数据用于单独的训练集时,交叉验证可帮助你评估预测模型的准确性。对于交叉验证,你可以将数据集分割多次,使用不同的部分进行训练,然后通过每次对模型进行测试,以确定无论你使用哪个数据子集进行训练,是否能获得相同的精度。但是你不能用它来证明你的模型总是和它的交叉验证分数一样准确,奥尔蒂斯解释道。“可普遍化的模型是一种能够对新输入数据做出准确反应的模型,但交叉验证无法证明这一点。”因为它只使用你已有的数据,只是表明你的模型对于该数据是尽可能准确的。
 
从根本上说,“相关性并不是因果关系;看到两个相关的事物,这并不意味着一件事会影响到另一件事,”他指出。(查阅一下伪相关,以了解无关联数据的一些有趣相关性)。你对数据集进行的探索性绘图可以让你了解它可以预测什么,以及哪些数据值是相关的,但不会对你有任何帮助。如果你正在电子商务网站上跟踪客户行为,以预测哪些客户将返回以及何时返回,那么记录他们登录的信息不会对你有任何意义,因为他们已经返回到你的网站来进行此项操作。“登录信息会与客户的返回有高度相关性,但将该信息纳入模型将是一个错误。”
 
12. 低估用户的理解能力
 
业务用户可能无法自己进行统计分析,但这并不意味着他们不了解误差幅度或统计显著性和有效性,奥尔蒂斯指出。
 
“往往业务团队进行分析时,最终只能得到一个只有一个数字的幻灯片,无论该数字是准确数字还是估算值,还是预测值等;但是当你给出这个值时,其误差幅度是极其重要的,“奥尔蒂斯说。
 
如果业务决策是在数据分析的基础上进行的,要清楚地说明对该结果有多大的信心,否则决策者很难相信该分析系统,并且不要认为决策人员在技术上不够成熟,所以无法理解这一点。
 
版权声明:本文为企业网D1Net编译,转载需注明出处为:企业网D1Net,如果不注明出处,企业网D1Net将保留追究其法律责任的权利。

关键字:CIO 数据科学

原创文章 企业网D1Net

应避免犯的12个数据科学错误 扫一扫
分享本文到朋友圈

关于我们联系我们版权声明友情链接广告服务会员服务投稿中心招贤纳士

企业网版权所有©2010-2018 京ICP备09108050号-6

^