人工智能项目的十条建议—指导篇

简介: 承接昨天的人工智能项目十条建议-理论篇,今天我们来说说人工智能项目的 10 条指导原则。在制定人工智能项目方案时,确定构建模型的目标至关重要,但这种理解只能提供成功的解决方案。在时真正按照完善的建议交付,人工智能项目团队必须在执行项目时遵循最佳实施路线。为了帮助能按照正确的路径执行,对之前提出的十条建议,现在一起探讨一下执行路径

承接昨天的人工智能项目十条建议-理论篇,今天我们来说说人工智能项目的 10 条指导原则。

在制定人工智能项目方案时,确定构建模型的目标至关重要,但这种理解只能提供成功的解决方案。在时真正按照完善的建议交付,人工智能项目团队必须在执行项目时遵循最佳实施路线。为了帮助能按照正确的路径执行,对之前提出的十条建议,现在一起探讨一下执行路径

1. 了解您的问题

解决任何问题的最基本部分是确切地知道你正在解决什么问题。确保你了解你要预测的内容、任何限制以及该项目最终目的是什么。尽早提出问题,并与同行、业务专家和最终用户验证你的理解。如果你发现答案与你的理解一致,那么你就知道你是走在正确的道路上。

2. 了解您的数据

通过了解你的数据的含义,你就能够了解哪种模型运行良好以及使用哪些功能。数据背后的问题将影响哪个模型最成功,计算时间将影响项目成本。通过使用和创建有意义的功能,你可以模仿或改进人工决策。了解每个字段的含义对问题很重要,尤其是在受监管的行业中,数据可能需要匿名化,因此不太清楚。如果你不清楚某个功能的含义,请咨询相关业务专家。

3. 拆分OR清洗您的数据

你的模型将如何处理看不见的数据?如果它不能泛化到新数据,那么它在给定数据上的表现并不是最重要的。我们在训练时不能让你的模型看到部分数据,你可以验证它在未知情况下的表现如何。这种方法对于选择正确的模型架构和调整参数以获得最佳性能是至关重要的。

对于监督学习问题,你需要将数据分成两部分或三部分。

训练数据——模型从中学习的数据——通常是随机选择的原始数据的 75-80%。

测试数据——你评估模型的数据——是剩余的数据。

根据你正在构建的模型类型,你可能还需要第三个称为验证集的保留数据,用于比较已根据测试数据调整的多个监督学习模型。在这种情况下,你需要将非训练数据拆分为两个数据集,即测试和验证。你想使用测试数据比较同一模型的迭代,并使用验证数据比较不同模型的最终版本。

在 Python 中,正确拆分数据的最简单的方法就是使用 Scikit-learn 的 train_test_split 函数。

4. 不要泄露测试数据

重要的是不要将测试数据中的任何信息输入到你的模型中。这可以对整个数据集的训练产生负面影响,也可以像在拆分之前执行转换(例如缩放)一样微妙。例如,如果你在拆分之前对数据进行规范化,则模型正在获取有关测试数据集的信息,因为全局最小值或最大值可能在保留的数据中。

5.使用正确的评估指标

由于每个问题都是不同的,因此必须根据上下文选择适当的评估方法。最幼稚—也可能是最危险的——分类指标的准确性。考虑检测癌症的问题。如果我们想要一个相当准确的模型,我们总是预测“不是癌症”,因为超过 99% 的时间可以验证我们都是正确的。然而,这不是一个非常有用的模型,我们实际上想要检测癌症。注意考虑在分类和回归问题中使用哪种评估指标。

6.保持简单

在处理问题时,重要的是为工作选择正确的解决方案,而不是最复杂的模型。管理层、客户,甚至你可能都想使用“最新最好的”。你需要使用最简单(非最先进)的模型来满足你的需求,即奥卡姆剃刀原理。这不仅会提供更多可见性并缩短培训时间,而且实际上可以提高性能。简而言之,不要用火箭筒射击苍蝇或试图用苍蝇拍杀死哥斯拉

7. 不要过拟合(或欠拟合)你的模型

过度拟合,也称为方差,会导致模型在未见过的数据上表现不佳。该模型只是简单地记忆训练数据。欠拟合,也称为偏差,是给模型提供的信息太少,无法学习问题的正确表示。平衡这两者——通常被称为“偏差-方差权衡”——是人工智能过程的重要组成部分,不同的问题需要不同的平衡。

我们以一个简单的图像分类器为例。它的任务是对图像中是否有狗进行分类。如果你过拟合此模型,它将无法将图像识别为狗,除非它以前看过该确切图像。如果你对模型进行欠拟合,即使它以前看过该特定图像,它也可能无法将图像识别为狗。

8. 尝试不同的模型架构

大多数时候,为一个问题考虑不同的模型架构是有益的。对一个问题最有效的方法,可能对另一个问题不是很好。尝试混合使用简单和复杂的算法。例如,如果执行分类模型,请尝试像随机森林一样简单和像神经网络一样复杂的事情。有趣的是,极端梯度提升 (XGBoost) 通常远远优于神经网络分类器。一个简单的问题通常最好用一个简单的模型来解决。

9.调整你的超参数

超参数是模型计算中使用的值。例如,决策树的一个超参数是树的深度,即在决定答案之前它会问多少个问题。模型的默认超参数是那些平均提供最佳性能的超参数。但是你的模型不太可能正好落在那个最佳位置。如果选择不同的参数,你的模型就可以表现得更好。调整超参数最常用的方法是网格搜索随机搜索贝叶斯优化搜索,当然还有许多其他更高级的技术。

10. 正确比较模型

机器学习的最终目标是开发一个泛化良好的模型。这就是为什么正确比较和选择最佳模型如此重要的原因。如上所述,你需要使用与训练超参数进行评估时使用不同的保持集。此外,你还需要使用适当的统计测试来评估结果。

既然你已经掌握了执行人工智能项目的指导原则,请在你接下来的人工智能项目中尝试一下。我很想知道这些建议是否帮助了你,如果这些建议对你有帮助。请在下面的评论或私信添加你自己的意见!

目录
相关文章
|
3月前
|
机器学习/深度学习 人工智能 开发工具
人工智能项目的python版本管理工具DVC
dvc即data version control, 是一种针对人工智能项目(机器学习或者深度学习)的数据版本管理工具。DVC的操作和GIT类似,可以认为为GIT的二次开发封装。结合GIT,DVC可以有效的管理人工智能项目的整个流程,包括代码,数据,训练配置,模型【2月更文挑战第12天】
78291 1
|
3月前
|
机器学习/深度学习 人工智能 算法
基于机器视觉的害虫种类及计数检测研究-人工智能项目-附代码
基于机器视觉的害虫种类及计数检测研究-人工智能项目-附代码
92 0
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
9月人工智能论文和项目推荐
因为LLM的火爆,所以最近的论文都是和LLM相关的
124 0
|
2天前
|
机器学习/深度学习 人工智能 数据处理
【人工智能】项目实践与案例分析:利用机器学习探测外太空中的系外行星
探测外太空中的系外行星是天文学和天体物理学的重要研究领域。随着望远镜观测技术的进步和大数据的积累,科学家们已经能够观测到大量恒星的光度变化,并尝试从中识别出由行星凌日(行星经过恒星前方时遮挡部分光线)引起的微小亮度变化。然而,由于数据量巨大且信号微弱,传统方法难以高效准确地识别所有行星信号。因此,本项目旨在利用机器学习技术,特别是深度学习,从海量的天文观测数据中自动识别和分类系外行星的信号。这要求设计一套高效的数据处理流程、构建适合的机器学习模型,并实现自动化的预测和验证系统。
10 1
【人工智能】项目实践与案例分析:利用机器学习探测外太空中的系外行星
|
1天前
|
机器学习/深度学习 人工智能 算法
【人工智能】传统语音识别算法概述,应用场景,项目实践及案例分析,附带代码示例
传统语音识别算法是将语音信号转化为文本形式的技术,它主要基于模式识别理论和数学统计学方法。以下是传统语音识别算法的基本概述
7 2
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能】TensorFlow简介,应用场景,使用方法以及项目实践及案例分析,附带源代码
TensorFlow是由Google Brain团队开发的开源机器学习库,广泛用于各种复杂的数学计算,特别是涉及深度学习的计算。它提供了丰富的工具和资源,用于构建和训练机器学习模型。TensorFlow的核心是计算图(Computation Graph),这是一种用于表示计算流程的图结构,由节点(代表操作)和边(代表数据流)组成。
9 0
|
2月前
|
缓存 人工智能 监控
集成人工智能到Spring Boot项目
集成人工智能到Spring Boot项目
43 1
|
2月前
|
机器学习/深度学习 人工智能 分布式计算
人工智能平台PAI操作报错合集之在ODPS的xxx_dev项目空间调用easyrec训练,需要访问yyy项目空间的OSS,出现报错,是什么导致的
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。
|
9月前
|
人工智能 测试技术
软件测试/人工智能|利用ChatGPT进行项目需求分析
软件测试/人工智能|利用ChatGPT进行项目需求分析
87 0
|
机器学习/深度学习 人工智能 算法
《人工智能导论》期末项目
《人工智能导论》期末项目
176 3

热门文章

最新文章