机器学习模型训练和模型评估的过程

简介: 主要记录下模型训练和模型评估的过程

选择算法确定模型

   主要是根据特征和标签之间的关系,选出一个合适的算法,并找出与之对应的合适算法包,然后通过调用这个算法包来建立模型,通过上一篇文章,这个数据集里的某些特征和标签之间存在着近似线性的关系。而且这个数据集的标签是连续变量,因此适合用回归分析来寻找从特征到标签的预测函数。

  所谓的回归分析(regression analysis)就是确定两种或两种以上变量间相互依赖的定量关系的一种统计分析,说白了就是当自变量变化的时候,研究一下因变量是怎么跟着变化的,它可以用来预测客流量、降雨量、销售量等。

  回归分析的算法有多种,如线性回归、多项式回归、贝叶斯回归等等。具体根据特征和标签 之间的关系来决定。初始时特征和标签可能存在线性关系可以用最简单、最基础的机器学习算法线性回归来建模,线性回归是给每一个特征变量找参数的过程。

比如数学中一元线性回归公式:y = a*x +b 对于机器学习来说,我们把斜率a叫做权重(weight) ,用英文字母w代表,把截距b叫做偏置(bias) ,用英文字母b代表,机器学习中一元线性回归公式表示为:

Y = w*x +b

机器学习算法包

  常用的算法工具包是scikit-learn ,简称sklearn 它是使用最广泛的开源python机器学习库,sklearn提供了大量用于数据挖掘的机器学习工具,覆盖数据预处理、可视化、交叉验证和多种机器学习算法。

建立模型

调用LinearRegression建立模型非常简单,如下

from sklearn.liner_model import LinerRegression # 导入线性回归算法模型
linereg_model = LinearRegression() #    使用线性回归创建模型

模型参数有两种,内部参数和外部参数。内部参数是属于算法本身的一部分,不用我们人工来确定,比如线性回归中的权重w和截距b,都是线性回归的内部参数;而外部参数也叫做超参数,他们的值是在创建模型时,由我们自己设定的。LinearRegression模型外部参数主要包含两个布尔值:

fit_intercept ,默认值为True,代表是否计算模型的截距

normalize,默认值为Flase代表是否对特征X在回归之前做规范化。

  • 训练拟合模型

训练模型就是用训练集中的特征变量和已知标签,根据样本大小的损失大小来逐渐拟合函数,确定最优的内部参数,最后完成模型。

linereg_model.fit(x_train,y_train) # 用训练集数据,训练机器,拟合函数,确定内部参数

主要得益于机器学习库的存在,直接通过fit完成模型训练,fit内部核心就是优化其内部参数减少损失,使函数对特征到标签的模拟越来越贴切,  针对所有样本,找到一组平均损失较小的模型参数。 这其中的关键就是:通过梯度下降,逐步优化模型的参数,使训练集误差值达到最小。

梯度下降:通过求导的方法,找到每一步的方向,确保总是往更小的损失方向前进。

  • 评估并优化模型性能。

在验证集和测试集进行模型效果评估的过程中,我们则是通过最小化误差来实现超参数(模型外部参数)的优化。机器学习包中(如scikit-learn)都会提供常用的工具和指标,对验证集和测试集进行评估,进而计算当前的误差。比如R方或者MSE均方误差指标,就可以用于评估回归分析模型的优劣。

预测方法:

通常就直接使用模型中的predict方法进行:

y_pred = linereg_model.predict(x_test) #预测测试集的Y值

比较测试数据集的原始特征数据、原始标签值和模型对标签的预测值组合一起显示、比较

df_ads_pred= X_test.copy() #测试集特征数据
df_ads_pred['浏览量真值'] = y_test
df_ads_pred['浏览量预测值'] = y_pred
df_ads_pred

   查看模型长得什么样?通过LinearRegression的coef_和intercept_属性打印出各个特征的权重和模型的偏置来,它们就是模型的内部参数。

linereg_model.coef_
linereg_model.intercept_

模型的评估分数:常用于评估回归分析模型的指标有两种:R方分数和MSE指标,并且大多数机器学习工具包中都会提供相关的工具,以下是用R方分数来评估模型

linears_model.score(x_test,y_test)

机器学习项目是一个循环迭代的过程,优秀的模型都是一次次迭代的产物模型评估 需要反复评测,找到最优的超参数,确定最终模型。

目录
相关文章
|
9月前
|
人工智能 调度 芯片
PAI训练服务:云上大模型训练新篇章
本文介绍了通用AI时代下的新训练方法及PAI平台的优化。随着大模型时代的到来,算力需求激增,硬件和网络通信成为瓶颈。PAI平台通过自动容错、3D健康检测等技术确保训练稳定性;通过资源配额、智能调度等提高性价比;并推出PAI-TorchAcc和PAI-ChatLearn两大引擎,分别实现高效训练加速和灵活的对齐训练,显著提升训练性能与效果。这些改进解决了大规模AI训练中的关键问题,提升了效率和稳定性。
|
7月前
|
人工智能 JSON 自然语言处理
如何用大模型评估大模型——PAI-Judge裁判员大语言模型的实现简介
阿里云人工智能平台 PAI 推出 PAI-Judge 裁判员大模型,为用户构建符合应用场景的多维度、细粒度的评测体系,支持单模型评测和双模型竞技两种模式,允许用户自定义参数,实现准确、灵活、高效的模型自动化评测,为模型迭代优化提供数据支撑。 相比通用大模型尤其在回答确定性/数学类问题、角色扮演、创意文体写作、翻译等场景下,PAI-Judge 系列模型表现优异,可以直接用于大模型的评估与质检。
|
8月前
|
机器学习/深度学习 数据采集 人工智能
MATLAB在机器学习模型训练与性能优化中的应用探讨
本文介绍了如何使用MATLAB进行机器学习模型的训练与优化。MATLAB作为强大的科学计算工具,提供了丰富的函数库和工具箱,简化了数据预处理、模型选择、训练及评估的过程。文章详细讲解了从数据准备到模型优化的各个步骤,并通过代码实例展示了SVM等模型的应用。此外,还探讨了超参数调优、特征选择、模型集成等优化方法,以及深度学习与传统机器学习的结合。最后,介绍了模型部署和并行计算技巧,帮助用户高效构建和优化机器学习模型。
MATLAB在机器学习模型训练与性能优化中的应用探讨
|
10月前
|
人工智能 JSON 算法
魔搭支持在阿里云人工智能平台PAI上进行模型训练、部署了!
现在,魔搭上的众多模型支持在阿里云人工智能平台PAI-Model Gallery上使用阿里云算力资源进行模型训练和部署啦!
552 22
|
11月前
|
机器学习/深度学习 Python
机器学习中评估模型性能的重要工具——混淆矩阵和ROC曲线。混淆矩阵通过真正例、假正例等指标展示模型预测情况
本文介绍了机器学习中评估模型性能的重要工具——混淆矩阵和ROC曲线。混淆矩阵通过真正例、假正例等指标展示模型预测情况,而ROC曲线则通过假正率和真正率评估二分类模型性能。文章还提供了Python中的具体实现示例,展示了如何计算和使用这两种工具来评估模型。
423 8
|
11月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法。本文介绍 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,同时提供 Python 实现示例,强调其在确保项目性能和用户体验方面的关键作用。
353 6
|
11月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段。本文介绍了 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,强调了样本量、随机性和时间因素的重要性,并展示了 Python 在 A/B 测试中的具体应用实例。
251 1
|
12月前
|
机器学习/深度学习 数据挖掘 Serverless
手把手教你全面评估机器学习模型性能:从选择正确评价指标到使用Python与Scikit-learn进行实战演练的详细指南
【10月更文挑战第10天】评估机器学习模型性能是开发流程的关键,涉及准确性、可解释性、运行速度等多方面考量。不同任务(如分类、回归)采用不同评价指标,如准确率、F1分数、MSE等。示例代码展示了使用Scikit-learn库评估逻辑回归模型的过程,包括数据准备、模型训练、性能评估及交叉验证。
531 1
|
12月前
|
机器学习/深度学习 算法 数据挖掘
从零到精通:Scikit-learn在手,数据分析与机器学习模型评估不再难!
【10月更文挑战第4天】在数据科学领域,模型评估是连接理论与实践的桥梁,帮助我们理解模型在未知数据上的表现。对于初学者而言,众多评估指标和工具常令人困惑。幸运的是,Scikit-learn 这一强大的 Python 库使模型评估变得简单。本文通过问答形式,带你逐步掌握 Scikit-learn 的评估技巧。Scikit-learn 提供了丰富的工具,如交叉验证、评分函数(准确率、精确率、召回率、F1 分数)、混淆矩阵和 ROC 曲线等。
192 1
|
12月前
|
机器学习/深度学习 算法 API
机器学习入门(六):分类模型评估方法
机器学习入门(六):分类模型评估方法

热门文章

最新文章