共计 2140 个字符,预计需要花费 6 分钟才能阅读完成。
接上昨天发的人工智能我的项目的十条倡议—概念篇,明天咱们来说说人工智能我的项目的 10 条领导准则。
在制订人工智能我的项目计划时,确定构建模型的指标至关重要,但这种了解只能提供胜利的解决方案。在时真正依照欠缺的倡议交付,人工智能我的项目团队必须在执行我的项目时遵循最佳施行路线。为了帮忙能依照正确的门路执行,对之前提出的十条倡议,当初一起探讨一下执行门路
1. 理解您的问题
解决任何问题的最根本局部是确切地晓得你正在解决什么问题。确保你理解你要预测的内容、任何限度以及该我的项目最终目标是什么。尽早提出问题,并与同行、业务专家和最终用户验证你的了解。如果你发现答案与你的了解统一,那么你就晓得你是走在正确的路线上。
2. 理解您的数据
通过理解你的数据的含意,你就可能理解哪种模型运行良好以及应用哪些性能。数据背地的问题将影响哪个模型最胜利,计算工夫将影响我的项目老本。通过应用和创立有意义的性能,你能够模拟或改良人工决策。理解每个字段的含意对问题很重要,尤其是在受监管的行业中,数据可能须要匿名化,因而不太分明。如果你不分明某个性能的含意,请征询相干畛域业务专家。
3. 拆分 OR 荡涤您的数据
你的模型将如何解决看不见的数据?如果它不能泛化到新数据,那么它在给定数据上的体现并不是最重要的。咱们在训练时不让你的模型看到局部数据,你能够验证它在未知状况下的体现如何。这种办法对于抉择正确的模型架构和调整参数以获得最佳性能是至关重要。
对于监督学习问题,你须要将数据分成两局部或三局部。
训练数据——模型从中学习的数据——通常是随机抉择的原始数据的 75-80%。
测试数据——你评估模型的数据——是残余的数据。
依据你正在构建的模型类型,你可能还须要第三个称为 验证集 的保留数据,用于比拟已依据测试数据调整的多个监督学习模型。在这种状况下,你须要将非训练数据拆分为两个数据集,即 测试和验证。你想应用测试数据比拟同一模型的迭代,并应用验证数据比拟不同模型的最终版本。
在 Python 中,正确拆分数据的最简略办法是应用 Scikit-learn 的 train_test_split 函数。
4. 不要泄露测试数据
重要的是不要将测试数据中的任何信息输出到你的模型中。这能够对整个数据集的训练产生负面影响,也能够像在拆分之前执行转换(例如缩放)一样奥妙。例如,如果你在拆分之前对数据进行规范化,则模型正在获取无关测试数据集的信息,因为全局最小值或最大值可能在保留的数据中。
5. 应用正确的评估指标
因为每个问题都是不同的,因而必须依据上下文抉择适当的评估办法。最童稚—也可能是最危险的——分类指标的准确性。思考检测癌症的问题。如果咱们想要一个相当精确的模型,咱们总是预测“不是癌症”,因为超过 99% 的工夫能够验证咱们都是正确的。然而,这不是一个十分有用的模型,咱们实际上想要检测癌症。留神思考在分类和回归问题中应用哪种评估指标。
6. 放弃简略
在解决问题时,重要的是为工作抉择正确的解决方案,而不是最简单的模型。管理层、客户,甚至你可能都想应用“最新最好的”。你须要应用 最简略 (非最先进最) 的模型来满足你的需要,即奥卡姆剃刀原理。这不仅会提供更多可见性并缩短培训工夫,而且实际上能够进步性能。简而言之,不要用火箭筒射击苍蝇或试图用苍蝇拍杀死哥斯拉。
7. 不要过拟合(或欠拟合)你的模型
适度拟合,也称为方差,会导致模型在未见过的数据上体现不佳。该模型只是简略地记忆训练数据。欠拟合,也称为偏差,是给模型提供的信息太少,无奈学习问题的正确示意。均衡这两者——通常被称为“偏差 - 方差衡量”——是人工智能过程的重要组成部分,不同的问题须要不同的均衡。
咱们以一个简略的图像分类器为例。它的工作是对 图像中是否有狗 进行分类。如果你过拟合此模型,它将无奈将图像识别为狗,除非它以前看过该确切图像。如果你对模型进行欠拟合,即便它以前看过该特定图像,它也可能无奈将图像识别为狗。
8. 尝试不同的模型架构
大多数时候,为一个问题思考不同的模型架构是无益的。对一个问题最无效的办法,有可能对另一个问题不是很好。尝试混合应用简略和简单的算法。例如,如果执行分类模型,请尝试像随机森林一样简略和像神经网络一样简单的事件。乏味的是,极其梯度晋升 (XGBoost) 通常远远优于神经网络分类器。一个简略的问题通常最好用一个简略的模型来解决。
9. 调整你的超参数
超参数是模型计算中应用的值。例如,决策树的一个超参数是树的深度,即在决定答案之前它会问多少个问题。模型的默认超参数是那些均匀提供最佳性能的超参数。然而你的模型不太可能正好落在那个最佳地位。如果抉择不同的参数,你的模型能够体现得更好。调整超参数最罕用的办法是 网格搜寻 、 随机搜寻 和贝叶斯优化搜寻,当然还有许多其余更高级的技术。
10. 正确比拟模型
机器学习的最终目标是开发一个泛化良好的模型。这就是为什么正确比拟和抉择最佳模型如此重要的起因。如上所述,你须要应用与训练超参数进行评估时应用不同的放弃集。此外,你还须要应用适当的统计测试来评估后果。
既然你曾经把握了执行人工智能我的项目的领导准则,请在你接下来的人工智能我的项目中尝试一下。我很想晓得这些倡议是否帮忙了你,如果这些倡议对你有帮忙。请在上面的评论或私信增加你本人的意见!