当前位置: 首页 > 科技观察

人工智能项目十项建议-指导

时间:2023-03-17 23:13:16 科技观察

继昨天的人工智能项目十项建议-理论之后,今天我们就来说说人工智能项目的10项指导原则。在制定AI项目提案时,确定构建模型的目的至关重要,但这种理解只能提供成功的解决方案。当真正交付行之有效的建议时,AI项目团队在执行项目时必须遵循最佳实践路线。为了帮助您走上正确的道路,让我们探索上述十项建议的执行路径。1.了解你的问题解决任何问题最基本的部分是确切地知道你正在解决什么问题。确保您了解您要预测的内容、任何限制以及项目的最终目的是什么。尽早提出问题并与同行、业务专家和最终用户验证您的理解。如果你发现答案符合你的理解,那么你就知道你走对了。2.了解您的数据通过了解您的数据的含义,您将能够了解哪些模型运行良好以及使用哪些功能。数据背后的问题将影响哪种模型最成功,计算时间将影响项目成本。通过使用和创建有意义的特征,您可以模仿或改进人类决策。了解每个字段的含义对这个问题很重要,尤其是在受监管的行业中,数据可能需要匿名,因此不太清楚。如果您不清楚某个功能的含义,请咨询相关业务专家。3.拆分或清理你的数据你的模型将如何处理看不见的数据?如果它不能泛化到新数据,那么它在给定数据上的表现就不是最重要的。我们不能让你的模型在训练时看到部分数据,你可以验证它在未知情况下的表现如何。这种方法对于选择正确的模型架构和调整参数以获得最佳性能至关重要。对于监督学习问题,您需要将数据分成两部分或三部分。训练数据(模型从中学习的数据)通常是随机选择的原始数据的75-80%。测试数据(您用来评估模型的数据)是剩余数据。根据您正在构建的模型类型,您可能还需要称为验证集的第三个保持数据,用于比较已根据测试数据调整的多个监督学习模型。在这种情况下,您需要将非训练数据拆分为两个数据集,测试和验证。您想要使用测试数据比较同一模型的迭代,并使用验证数据比较不同模型的最终版本。在Python中,正确拆分数据的最简单方法是使用Scikit-learn的train_test_split函数。4.不要泄露测试数据重要的是不要将测试数据中的任何信息输入到您的模型中。这会对整个数据集的训练产生负面影响,或者它可能像在拆分之前执行转换(例如缩放)一样微妙。例如,如果您在拆分之前对数据进行归一化,则模型正在获取有关测试数据集的信息,因为全局最小值或最大值可能位于保留数据中。5.使用正确的评估指标由于每个问题都是不同的,因此必须根据上下文选择合适的评估方法。最幼稚——也可能是最危险的——是分类指标的准确性。考虑检测癌症的问题。如果我们想要一个相当准确的模型,我们总是预测“不是癌症”,因为超过99%的时间我们可以被验证是正确的。然而,这不是一个非常有用的模型,我们实际上是想检测癌症。请注意考虑在分类和回归问题中使用哪种评估指标。6.保持简单在处理问题时,重要的是选择适合工作的正确解决方案,而不是最复杂的模型。管理层、客户,甚至你们都想使用“最新最好的”。您需要使用最简单(不是最先进)的模型来满足您的需求,这就是奥卡姆剃刀。这不仅会提供更多可见性并减少培训时间,而且实际上可以提高性能。简而言之,不要用火箭筒射苍蝇或试图用苍蝇拍杀死哥斯拉。7.不要过度拟合(或欠拟合)你的模型过度拟合,也称为方差,会导致模型在看不见的数据上表现不佳。该模型只是记住训练数据。欠拟合,也称为偏差,是指给模型提供的信息太少而无法正确表示问题。平衡两者——通常被称为“偏差-方差权衡”——是AI过程的重要组成部分,不同的问题需要不同的平衡。我们以一个简单的图像分类器为例。它的任务是对图像中是否有狗进行分类。如果你过度拟合这个模型,它将无法将图像识别为狗,除非它之前看到过那张确切的图像。如果模型欠拟合,它可能无法将图像识别为狗,即使它之前已经看过该特定图像。8.尝试不同的模型架构大多数时候,为一个问题考虑不同的模型架构是有益的。对一个问题最有效的方法可能对另一个问题无效。尝试混合简单和复杂的算法。例如,如果做一个分类模型,尝试像随机森林一样简单和像神经网络一样复杂的东西。有趣的是,极端梯度提升(XGBoost)通常比神经网络分类器好得多。一个简单的问题通常最好用一个简单的模型来解决。9.调整你的超参数超参数是模型计算中使用的值。例如,决策树的一个超参数是树的深度,即在决定答案之前它会问多少问题。模型的默认超参数是那些提供平均最佳性能的超参数。但是您的模型不太可能正好落在那个最佳位置。如果您选择不同的参数,您的模型可以表现得更好。最常用的调整超参数的方法是网格搜索、随机搜索和贝叶斯优化搜索,但当然还有许多其他更高级的技术。10.正确比较模型机器学习的最终目标是开发一个泛化能力好的模型。这就是为什么正确比较和选择最佳模型如此重要的原因。如上所述,您需要使用与训练超参数不同的保持集进行评估。此外,您需要使用适当的统计测试来评估结果。现在您已经掌握了执行AI项目的指导原则,请在您的下一个AI项目中尝试它们。