机器学习-生命周期

假如一个用户向银行申请贷款,银行该如何对这个用户进行评估?很明显,银行首先需要调查清楚该用户的资金储备情况和信用历史等,然后再决定是否向其放款。

整个机器学习生命周期如下图所示:

1、定义问题

在使用机器学习中的术语表述上述用户申请贷款的例子时,可转换为二分类法评估用户的信用:信用好可以放款,信用差则拒绝放款。

针对评估用户的信用问题,我们有哪些解决方案?人工审核或者采用机器学习的方式。假如确定采用机器学习的方式:

最重要的是,应该如何衡量机器学习的结果,这个结果和期望相差多少如何减小这种差距。第一步便是定义问题,这需要团队成员同思考,给出各自的建议和理解,确定解决问题的思路。

2、收集数据

收集数据的数量和质量一定程度上决定了模型预测的效果。通常来说,数据量越大,训练出的模型质量越好

在模型评估阶段,我们还需要对数据集进行划分,以一定的比例将其划分为训练集和测试集。举个例子,若以 7:3 的比例划分,则数据集的 7/10 作为训练数据剩下的 3/10 是测试数据,

3、特征工程

数据收集过程中,获取到的原始数据由于可能存在空值或者错误值等,通常是不能直接应用于模型的,因此需要将其通过业务理解、数据变换、特征交叉与组合的方式转化成模型训练和预测可直接使用的特征。

如图所示,特征就是原始数据经过挖掘处理后的数值表示,获取特征的过程称为特征工程,即原始数据会经过数据预处理,然后对数据进行挖掘处理后的数据。

特征挖掘表示基于业务需求、收集到的数据和技术(压缩感知、稀疏编码等),构造出能够帮助描述问题的特征。例如,银行在判断是否向某个用户放款时,可以使用 30 天内信用卡是否逾期作为一维特征。
特征选择 就是挑选出能够深刻描述研究问题特征的过程。如果在构造的特征中多数特征不合适(与研究问题没有很大的相关性),那么型训练的困难和成本将会提高,甚至训练过程中会出现一些影响模型性能的错误。

4、训练模型

4.1、模型选择

可以根据实际的数据结构和业务需求对模型进行初步的筛选。如果数据是时序数据,则擅长学习时序关系的模型是比较好的选择,如果是图片数据,那么卷积神经网络会更合适。

4.2、调参

这些经验可能来源以下几个方面:

  • 对模型评估指标的理解。
  • 对数据和业务的经验。
  • 通过不断地评估模型,选择使模型效果最优的参数。

调参的目的提高模型的某个评估指标 。最简单的调参方式是在学习曲线上找出最优值,以便能够将准确率修正到一个比较高的水平。

4.3、模型评估

在建模过程中,由于只使用了有限的数据,因此模型很可能会出现过拟合或者欠拟合的问题。

在模型评估时,经常要对数据集进行划分(分为训练数据集和测试数据集),划分数据通常要保证两个条件。

  • 训练数据集和测试数据集的分布要与样本的真实分布一致,即训练集和测试集都要保证是从样本中独立采样得到的。
  • 训练数据集和测试数据集要互斥,即两个子集之间没有交集。

基于划分方式的不同,评估方法可以分为留出法、交叉验证法及自助法。基于不同方法的特点,在样本量较多的情况下,一般选择留出法或交叉验证法来对数据进行分类,在样本较少的情况下采用自助法。

分类问题中最常用的两个性能度量标准是准确率和错误率。这两个标准是分类问题中简单、直观的评价标准。但它们都存在一个问题,即在类别不平衡的情况下,它们都无法有效评价模型的泛化能力。由于此种隐患的存在,又构造了其他相对公平的评估标准,如精确率、召回率、ROC和AUC 等。

5、模型部署

机器学习生命周期的最后一步是部署。如果开发模型能够按照我们的要求以可接受的速度生成准确的结果,那么就可以将该模型部署到实际系统中。

相关推荐
SsummerC几秒前
【leetcode100】零钱兑换Ⅱ
数据结构·python·算法·leetcode·动态规划
追逐☞8 分钟前
机器学习(7)——K均值聚类
机器学习·均值算法·聚类
夸克App14 分钟前
实现营销投放全流程自动化 超级汇川推出信息流智能投放产品“AI智投“
运维·人工智能·自动化
Rainbond云原生17 分钟前
83k Star!n8n 让 AI 驱动的工作流自动化触手可及
运维·人工智能·自动化
招风的黑耳20 分钟前
Axure大屏可视化模板:多领域数据决策的新引擎
人工智能·产品设计
一眼青苔24 分钟前
切割PDF使用python,库PyPDF2
服务器·python·pdf
朴拙数科32 分钟前
艺术字体AI生成阿里云WordArt锦书、通义万相、SiliconFlow、Pillow+OpenCV本地生成艺术字体
人工智能·阿里云·pillow
电商数据girl41 分钟前
产品经理对于电商接口的梳理||电商接口文档梳理与接入
大数据·数据库·python·自动化·产品经理
听风吹等浪起42 分钟前
NLP实战(4):使用PyTorch构建LSTM模型预测糖尿病
人工智能·pytorch·自然语言处理·lstm
敖云岚1 小时前
【AI】SpringAI 第五弹:接入千帆大模型
java·大数据·人工智能·spring boot·后端