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

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

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

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

1. 了解您的问题

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

2. 了解您的数据

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

3. 拆分OR清洗您的数据

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

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

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

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

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

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

4. 不要泄露测试数据

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

5.使用正确的评估指标

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

6.保持简单

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

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

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

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

8. 尝试不同的模型架构

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

9.调整你的超参数

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

10. 正确比较模型

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

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

目录
相关文章
|
3月前
|
机器学习/深度学习 算法 TensorFlow
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
动物识别系统。本项目以Python作为主要编程语言,并基于TensorFlow搭建ResNet50卷积神经网络算法模型,通过收集4种常见的动物图像数据集(猫、狗、鸡、马)然后进行模型训练,得到一个识别精度较高的模型文件,然后保存为本地格式的H5格式文件。再基于Django开发Web网页端操作界面,实现用户上传一张动物图片,识别其名称。
106 1
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
|
3月前
|
机器学习/深度学习 人工智能 算法
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
植物病害识别系统。本系统使用Python作为主要编程语言,通过收集水稻常见的四种叶片病害图片('细菌性叶枯病', '稻瘟病', '褐斑病', '稻瘟条纹病毒病')作为后面模型训练用到的数据集。然后使用TensorFlow搭建卷积神经网络算法模型,并进行多轮迭代训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地模型文件。再使用Django搭建Web网页平台操作界面,实现用户上传一张测试图片识别其名称。
138 22
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
|
2月前
|
机器学习/深度学习 人工智能 算法
【玉米病害识别】Python+卷积神经网络算法+人工智能+深度学习+计算机课设项目+TensorFlow+模型训练
玉米病害识别系统,本系统使用Python作为主要开发语言,通过收集了8种常见的玉米叶部病害图片数据集('矮花叶病', '健康', '灰斑病一般', '灰斑病严重', '锈病一般', '锈病严重', '叶斑病一般', '叶斑病严重'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。再使用Django搭建Web网页操作平台,实现用户上传一张玉米病害图片识别其名称。
71 0
【玉米病害识别】Python+卷积神经网络算法+人工智能+深度学习+计算机课设项目+TensorFlow+模型训练
|
3月前
|
机器学习/深度学习 算法 TensorFlow
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
交通标志识别系统。本系统使用Python作为主要编程语言,在交通标志图像识别功能实现中,基于TensorFlow搭建卷积神经网络算法模型,通过对收集到的58种常见的交通标志图像作为数据集,进行迭代训练最后得到一个识别精度较高的模型文件,然后保存为本地的h5格式文件。再使用Django开发Web网页端操作界面,实现用户上传一张交通标志图片,识别其名称。
115 6
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
|
3月前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
101 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
3月前
|
机器学习/深度学习 人工智能 算法
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台。果蔬识别系统,本系统使用Python作为主要开发语言,通过收集了12种常见的水果和蔬菜('土豆', '圣女果', '大白菜', '大葱', '梨', '胡萝卜', '芒果', '苹果', '西红柿', '韭菜', '香蕉', '黄瓜'),然后基于TensorFlow库搭建CNN卷积神经网络算法模型,然后对数据集进行训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地文件方便后期调用。再使用Django框架搭建Web网页平台操作界面,实现用户上传一张果蔬图片识别其名称。
65 0
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
4月前
|
机器学习/深度学习 人工智能 数据处理
【人工智能】项目实践与案例分析:利用机器学习探测外太空中的系外行星
探测外太空中的系外行星是天文学和天体物理学的重要研究领域。随着望远镜观测技术的进步和大数据的积累,科学家们已经能够观测到大量恒星的光度变化,并尝试从中识别出由行星凌日(行星经过恒星前方时遮挡部分光线)引起的微小亮度变化。然而,由于数据量巨大且信号微弱,传统方法难以高效准确地识别所有行星信号。因此,本项目旨在利用机器学习技术,特别是深度学习,从海量的天文观测数据中自动识别和分类系外行星的信号。这要求设计一套高效的数据处理流程、构建适合的机器学习模型,并实现自动化的预测和验证系统。
81 1
【人工智能】项目实践与案例分析:利用机器学习探测外太空中的系外行星
|
4月前
|
机器学习/深度学习 人工智能 算法
【人工智能】传统语音识别算法概述,应用场景,项目实践及案例分析,附带代码示例
传统语音识别算法是将语音信号转化为文本形式的技术,它主要基于模式识别理论和数学统计学方法。以下是传统语音识别算法的基本概述
90 2
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能】TensorFlow简介,应用场景,使用方法以及项目实践及案例分析,附带源代码
TensorFlow是由Google Brain团队开发的开源机器学习库,广泛用于各种复杂的数学计算,特别是涉及深度学习的计算。它提供了丰富的工具和资源,用于构建和训练机器学习模型。TensorFlow的核心是计算图(Computation Graph),这是一种用于表示计算流程的图结构,由节点(代表操作)和边(代表数据流)组成。
86 0
|
6月前
|
缓存 人工智能 监控
集成人工智能到Spring Boot项目
集成人工智能到Spring Boot项目
92 1