本文总结了数据科学项目失败的最常见原因,希望能帮助您避免陷阱。1、问错问题如果你问错了问题,你就会得到错误的答案。考虑金融行业的欺诈检测问题,问题最初可能是“此特定交易是否存在欺诈”。要查明这一点,您需要一个包含欺诈和非欺诈交易示例的数据集。该数据集可以在专门检测欺诈的专家团队(SME)的帮助下生成。但是,由于专家们的标记是基于过去对欺诈行为的了解,因此使用数据集训练的模型只会捕捉到符合旧模式的欺诈行为,而不会捕捉到新出现的欺诈模式。如果将问题改为“这笔交易是否异常”,则只需要寻找不符合“正常”签名的交易,并依靠人工对预测的欺诈交易进行进一步分析,以验证模型结果。但这种方法的一个副作用是它可能比以前的模型产生更多的误报。2、试图用它来解决错误的问题我们常常会忽略一个问题:我们努力解决了一个问题,但是解决了之后是否能达到我们的目的。比如你萌生了利用人工智能开发一个项目,将一个人的全身照片上传到网站,然后根据提示裁剪一套合身的衣服。为了完成这个项目,我们需要完成以下任务:开发AI/ML技术来确定照片中的身体尺寸;设计和创建网站和移动应用程序以与客户互动;进行可行性研究,以确定该产品是否有市场。作为技术人员,我们最熟悉产品设计和编码,因此我们可能希望开始处理前两项任务。如果我们在前两项任务之后进行可行性研究,结果显示我们的产品没有市场,那将是可怕的。3.数据不足一些数据非常敏感,受到严密保护,访问可能受到很大限制,我们可能无法获得相关数据。例如,在一些与生命科学领域相关的项目中,由于生命科学行业对受保护的健康信息(PHI)的存储和传输的敏感性,大部分可用的数据集都会删除这些信息。例如,密西西比州的人比康涅狄格州的人更容易患糖尿病。但是,由于这些信息可能不可用,我们将无法使用它。4.没有正确的数据即使你有一个很好的模型,使用错误或有缺陷的数据也可能导致错误的预测。在监督学习中,我们使用之前标记过的数据,由于这种标记通常是由人类完成的,因此可能存在一些错误。举一个极端的例子,想象一下拥有一个精度完美但使用不准确数据的模型,例如MINIST数据集,其中图像的人工标记是100%准确的。现在,假设三分之一的数字被贴错了标签,正如一句古老的格言所说,如果里面是垃圾,你就会得到垃圾。5.拥有太多数据理论上,你永远不需要大量数据(只要是正确的数据)。在实践中,即使在存储和计算成本和性能方面取得了巨大进步,我们仍然受到时间和空间的物理限制。因此,数据科学家最重要的工作之一就是明智地选择他们认为会对实现准确模型预测产生影响的数据源。例如,预测婴儿出生体重。似乎与母亲的年龄和居住地有关,但可能与母亲的姓名无关。在这种情况下,需要人为干预来确定不相关数据的删除。在运行模型之前确定哪些因素是相关的仍然是一个潜在的陷阱,可能会破坏您的数据科学项目。6.雇错人如果你的数据科学实践规模很小,你可能别无选择,只能依靠一个或几个人来完成所有任务。但是,随着团队的壮大,您应该考虑为每项任务聘请专家。尤其是生物科技、金融等行业,拥有专业的领域知识是非常有价值的,甚至是至关重要的。同时,拥有主题专家(SME)和具有良好沟通能力的数据科学家也很重要。随着您的团队不断壮大,拥有合适的资源和人才库是您实践成功的最重要因素之一。7.使用错误的工具例子:你最近派了一个团队去培训MySQL,当他们回来时,你需要建立一个分析管道。由于他们的思想已经过重新训练,他们建议使用他们的新工具。但是,根据管道将处理的数据量和您需要对结果执行的分析量,此选择可能是作业的错误选择。许多SQL产品对单个表中可以存储的数据量有严格的限制。在这种情况下,更好的选择可能是使用MongoDB等NoSQL产品或AWSRedshift等高度可扩展的列式数据库。8.没有合适的模型“没有免费的午餐”(NFL)是数学中著名的定理。它指出,没有一种模式可以解决所有问题。例如,在营销应用程序中,保留客户电子邮件和地址等属性可能很重要。在医疗环境中,患者的身高、体重和血型可能更为重要。这表明在一种情况下运行良好的模型可能在另一种情况下不起作用。因此,在数据科学中迭代多个模型以找到最适合给定情况的模型是很常见的。在监督学习中更是如此。验证或交叉验证通常用于评估多个模型的准确性,而不会复杂地找到最合适的模型。此外,高效的模型也可以通过多种算法进行训练——例如,线性回归可以使用正规方程(Linearleastsquares)或梯度下降(Gradientdescent)进行训练。9.没有合适的尺度在机器学习中,衡量模型在数据上的训练和测试方面的性能非常重要。此信息将用于选择要使用的模型、超参数并确定模型是否已准备好用于生产。为了衡量模型的性能,为手头的任务选择最佳评估指标至关重要。关于指标选择的文献很多,这里不再赘述,但这里有一些在选择指标时要记住的参数:机器学习问题的类型:监督学习、非监督学习和强化学习。监督学习的类型:二元、分类或回归。数据集类型:如果数据集不平衡,则不同的指标可能更合适。本文由北邮阿里云云栖社区组织翻译。
