【大厂AI课学习笔记】【2.2机器学习开发任务实例】(8)模型训练

好吧,搞了半天,都是围绕数据在干活,这也就验证了,我们说的,数据准备等工作,要占到机器学习项目一半以上的工作量和时间。而且数据决定了模型的天花板,算法只是去达到上限。

我们今天来学习模型训练!

首先,我们来进行线性回归训练,如上图。

当训练到loss小于0.0001时停止,如右图,此时训练结合与验证集标注之间的MSE=22.073。

那么我们来解释下,什么是loss,什么是mse。

loss,损失函数、误差函数,即用1个标量来标示的训练集标签与真实标签之间的差距。

那MSE呢?

MSE就是均方差,参数估计值与参数值之差平方的期望值。

延伸学习:


在机器学习项目中,模型训练是至关重要的一环,它涉及使用已知数据(训练集)来训练算法,以便模型能够学习数据的内在规律和模式,进而对未知数据(测试集)进行准确预测。下面将系统阐述模型训练的过程、关键技术、步骤以及损失函数(如loss和均方误差MSE)的应用和重要作用。

一、模型训练的基本步骤

  1. 数据准备:这是模型训练的第一步,包括数据收集、清洗、预处理和特征工程。数据质量对模型性能有直接影响,因此确保数据准确、完整、一致和具有代表性至关重要。特征工程涉及从原始数据中提取和构造有意义的特征,以便模型能够更好地理解数据。

  2. 选择模型:根据问题的性质和数据的特征选择合适的机器学习算法。例如,对于分类问题可以选择决策树、随机森林、支持向量机等算法;对于回归问题可以选择线性回归、神经网络等算法。

  3. 训练模型:使用训练数据和选择的算法来训练模型。在这个过程中,算法会通过迭代优化来学习数据的特征和模式。通常,模型训练需要设置一些超参数,如学习率、迭代次数等,这些参数会影响模型的训练速度和性能。

  4. 评估模型:使用验证集或测试集来评估模型的性能。评估指标根据问题的不同而有所不同,如分类问题中常用的准确率、召回率、F1分数等;回归问题中常用的均方误差(MSE)、平均绝对误差(MAE)等。

  5. 模型调优:根据评估结果对模型进行调优,包括调整超参数、改变模型结构或采用其他优化策略。调优的目标是提高模型在未知数据上的泛化能力。

  6. 部署与应用:将训练好的模型部署到生产环境中,以便对实际数据进行预测和分析。在部署过程中需要考虑模型的实时性、稳定性、可解释性等因素。

二、关键技术

  1. 梯度下降算法:梯度下降是机器学习中最常用的优化算法之一,用于最小化损失函数。它通过计算损失函数关于模型参数的梯度,并按照负梯度方向更新参数,从而逐步降低损失函数的值。梯度下降有多种变体,如批量梯度下降、随机梯度下降和小批量梯度下降等。

  2. 正则化技术:正则化是一种用于防止模型过拟合的技术。通过在损失函数中添加正则化项(如L1正则化、L2正则化等),可以约束模型参数的规模,从而降低模型的复杂度,提高其在未知数据上的泛化能力。

  3. 集成学习:集成学习是一种通过组合多个弱学习器来构建一个强学习器的技术。常见的集成学习方法包括袋装(Bagging)、提升(Boosting)和堆叠(Stacking)等。这些方法可以有效地提高模型的性能,并降低过拟合的风险。

  4. 深度学习:深度学习是机器学习的一个分支,它利用神经网络模型来处理大规模、高维度的数据。深度学习模型通常由多层神经元组成,每一层都从前一层学习并提取更高级别的特征表示。深度学习在图像识别、语音识别、自然语言处理等领域取得了显著成果。

三、损失函数的应用与重要作用

损失函数(Loss Function)在机器学习模型训练中起着至关重要的作用。它用于量化模型预测与真实值之间的差异,从而指导模型的优化方向。均方误差(Mean Squared Error, MSE)是回归问题中常用的损失函数之一。

MSE的定义:对于给定的样本集(D = {(x_1, y_1), (x_2, y_2), ..., (x_n, y_n)}),其中(x_i)是输入特征,(y_i)是对应的真实值。模型对(x_i)的预测值为(\hat{y}_i)。均方误差MSE定义为:

[MSE = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2]

MSE衡量了模型预测值与真实值之间的平均平方误差,值越小表示模型的预测越准确。

MSE的应用:在模型训练过程中,优化算法会不断调整模型参数以最小化MSE。通过计算损失函数关于模型参数的梯度,并使用梯度下降等优化算法进行参数更新,可以逐步降低MSE的值,从而提高模型的预测精度。

MSE的重要作用

  1. 指导模型优化:MSE为模型提供了一个明确的优化目标。通过最小化MSE,模型可以学习到数据的内在规律和模式,从而对未知数据进行准确预测。

  2. 评估模型性能:除了用于模型训练外,MSE还可以用于评估模型的性能。通过计算测试集上的MSE值,我们可以了解模型在未知数据上的预测精度和泛化能力。

  3. 比较不同模型:使用相同的损失函数(如MSE)可以方便地比较不同模型的性能。具有较低MSE值的模型通常具有更好的预测性能。

  4. 发现过拟合与欠拟合:观察训练集和验证集上的MSE变化可以帮助我们发现模型的过拟合与欠拟合问题。如果训练集上的MSE持续降低而验证集上的MSE开始上升,则可能出现了过拟合;如果两者都保持较高水平且下降缓慢,则可能出现了欠拟合。针对这些问题,我们可以采取相应的措施进行调整和优化。

选择模型时,有分类问题,有回归问题,都有不同的算法。

 

在机器学习中,除了分类问题和回归问题,还有其他几种基本的问题类型,这些问题类型在解决实际问题时也非常常见。下面列举了与分类和回归同级别的几种机器学习问题类型,并分别给出了适合解决的实际问题示例:

  • 聚类问题(Clustering)
    • 定义:聚类是将无标签的数据分成多个组或簇,使得同一组内的数据项尽可能相似,而不同组之间的数据项尽可能不同。
    • 适合解决的实际问题
      • 市场细分:根据消费者的购买历史、兴趣爱好等信息将消费者划分为不同的群体,以进行更精准的市场营销。
      • 文档聚类:将大量的文档按照主题或内容相似性进行分组,便于信息检索和推荐。
      • 图像分割:在图像处理中,将图像中的像素或区域根据颜色、纹理等特征进行聚类,以实现图像分割和目标识别。
  • 降维问题(Dimensionality Reduction)
    • 定义:降维是指将高维数据转换为低维表示,同时保留数据中的重要信息或结构。
    • 适合解决的实际问题
      • 数据可视化:当数据的维度很高时,直接可视化很困难。降维技术(如主成分分析PCA)可以将数据降至2D或3D,从而方便可视化分析。
      • 特征提取:在机器学习任务中,原始数据可能包含许多冗余或不相关的特征。降维可以帮助提取出最重要的特征,减少计算复杂度和过拟合风险。
      • 噪声去除:通过降维可以去除数据中的噪声和异常值,提高后续机器学习模型的性能。
  • 关联规则学习(Association Rule Learning)
    • 定义:关联规则学习旨在从数据集中发现项集(itemsets)之间的有趣关系,这些关系通常以规则的形式表示,如“如果购买了A,则很可能也购买B”。
    • 适合解决的实际问题
      • 购物篮分析:在零售领域中,分析顾客购买商品时的组合模式,以进行产品推荐和库存优化。
      • 网络日志分析:通过分析网站用户的访问模式,发现页面之间的关联规则,优化网站结构和提高用户体验。
  • 序列预测(Sequence Prediction)
    • 定义:序列预测涉及到预测时间序列数据中的未来值或序列的后续元素。
    • 适合解决的实际问题
      • 股票价格预测:根据历史股票价格数据和其他相关信息,预测未来一段时间内的股票价格走势。
      • 语音识别:在语音处理中,预测给定音频序列的下一个可能的声音或词汇。
      • 自然语言处理:预测句子中下一个可能出现的单词或字符,这在文本生成、机器翻译等领域有广泛应用。
  • 强化学习(Reinforcement Learning)
    • 定义:强化学习是一种通过与环境互动来学习最佳决策策略的机器学习范式。智能体(agent)通过执行动作(actions)并接收来自环境的奖励(rewards)来学习如何最大化累积奖励。
    • 适合解决的实际问题
      • 游戏AI:训练智能体在视频游戏、棋类游戏等环境中达到或超越人类玩家的水平。
      • 自动驾驶:通过强化学习训练自动驾驶车辆在不同路况和交通情况下的驾驶策略。
      • 机器人控制:教授机器人执行各种任务,如抓取、导航等,通过试错学习最优控制策略。
  • 生成模型(Generative Modeling)
    • 定义:生成模型能够学习数据的潜在分布,并从中生成新的、与训练数据类似的数据样本。
    • 适合解决的实际问题
      • 图像生成:生成逼真的图像,可用于艺术创作、数据增强或图像修复等任务。
      • 文本生成:生成连贯的文本段落,如新闻报道、故事创作或诗歌生成等。
      • 声音合成:生成人类语音或音乐,可用于语音助手、虚拟角色或音乐创作等领域。
  • 回归问题(Regression)

    • 定义:回归问题是另一种常见的机器学习问题类型,其目标是预测一个连续值输出,而不是离散的类别标签。回归模型通过学习输入数据与连续输出之间的映射关系来进行预测。
    • 适合解决的实际问题
      • 价格预测:根据商品的历史价格、市场需求和供应链信息等因素预测未来的价格趋势。
      • 预测分析:在金融、经济、环境科学等领域中,根据历史数据和其他相关因素预测未来的趋势或结果。例如,股票价格预测、气候变化预测等。
      • 推荐系统:虽然推荐系统通常与分类和聚类问题相关联,但回归模型也可以用于预测用户对项目的评分或偏好程度,从而实现个性化推荐。
    • 常用算法:线性回归、多项式回归、岭回归(Ridge Regression)、套索回归(Lasso Regression)、支持向量回归(SVR)、神经网络等。这些算法旨在最小化预测值与真实值之间的误差,通常使用均方误差(MSE)或其他损失函数来衡量模型的性能。
  • 分类问题(Classification)

    • 定义:分类问题是机器学习中最常见的问题类型之一,其目标是根据输入数据的特征将其划分到预定义的类别中。这些类别通常是离散的、无序的,并且数量有限。
    • 适合解决的实际问题
      • 图像识别:根据图像的视觉特征将其分类为不同的对象、场景或概念。例如,人脸识别、物体检测、手写数字识别等。
      • 文本分类:根据文本内容将其分类为不同的主题、情感或类别。例如,垃圾邮件检测、新闻分类、情感分析等。
      • 生物信息学:在基因组学或蛋白质组学中,根据生物分子的特征将其分类为不同的功能类别或疾病类型。
    • 常用算法:决策树、朴素贝叶斯、支持向量机(SVM)、随机森林、神经网络(包括深度学习模型)等。

需要注意的是,分类问题和回归问题在实际应用中经常相互交织。例如,在某些情况下,可以将多分类问题转换为多个二元分类问题来处理;同样地,在某些场景中,连续值的预测也可以转换为离散类别的预测。因此,在选择合适的问题类型和算法时,需要仔细分析具体的应用场景和数据特征。

每种问题类型都有其特定的应用场景和算法,选择合适的问题类型和算法是解决机器学习问题的关键步骤之一。

所以说,本案例中的价格预测,就是回归问题,就要用线性回归算法来解决。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/692217.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java实现Redis延时队列

“如何实现Redis延时队列”这个面试题应该也是比较常见的,解答如下: 使用sortedset(有序集合) ,拿时间戳作为 score ,消息内容作为key 调用 zadd 来生产消息,消费者用zrangebyscore 指令获取 N …

2、windows环境下vscode开发c/c++环境配置(一)

前言:VSCode是微软出的一款轻量级编辑器,它本身只是一款文本编辑器而已,并不是一个集成开发环境(IDE),几乎所有功能都是以插件扩展的形式所存在的。因此,我们想用它编程,不只是把vscode下载下来就行&#x…

数据分析 — 电商用户分析和用户 RFM 模型

目录 一、电商用户分析1、数据字段信息2、数据读取3、数据清洗4、可视化分析1、每年销售额的增长情况2、各个地区分店的销售额3、每个分店每一年的销售额4、销售淡旺季5、新增用户 二、RFM 模型1、RFM 模型的三个维度2、RFM 的客户类型标签3、RFM 模型的二分法思想4、代码 一、…

计网day6

七 应用层 7.1 网络应用模型 7.2 DNS系统 7.3 文件传输协议FTP 7.4 电子邮件 7.5 万维网和HTTP协议

细数高德地图的发展史

根据2023年自然资源部公布的名单显示,以下公司通过“地图甲级测绘资质”换证审核,也就意味着,以下这些公司可以继续从事电子地图的采集和制作、商业合作等相关业务。 而这一点,对于以电子地图导航为主要业务支撑的企业至关重要。…

【编程题】跳石板

跳石板 分析后可知 要在众多解中寻找最优解 因此用动态规划 比如: 4-6只需跳一步,而6-8也只需一步,因此在刚才跳了一步的基础上再加1 8到10一步,8到12一步,9到12一步,8-10-12两步,因此到12位置…

新增长100人研讨会:快消零售专场探讨招商加盟数字化转型实战

2024年2月2日下午,一场由纷享销客与杨国福集团联合主办的招商加盟数字化转型研讨会在上海成功举办。本次研讨会汇聚了众多快消零售业界的领军人物,共同探讨行业未来的新增长点。 会议伊始,杨国福集团数字化中心负责人王林林发表了主题演讲&a…

使用Nginx或者Fiddler快速代理调试

1 背景问题 在分析业务系统程序问题时,存在服务系统环境是其它部门或者其它小组搭建或运维的,并且现在微服务时代,服务多且复杂,在个人机器上搭建起如此环境,要么费事费力,要么不具备充足条件。 急需有一种方法或者工具可以快速辅助调试定位分析问题。本文下面介绍代理方…

2.12:C语言测试题

1.段错误:str指向NULL,不能把"hello world" 复制给NULL 2.报错:返回局部变量,本函数结束,非法访问,不一定输出hello world 3.地址传递,修改str,正常输出hello 4.可以输出…

npm ERR! code CERT_HAS_EXPIRED:解决证书过期问题

转载:npm ERR! code CERT_HAS_EXPIRED:解决证书过期问题_npm err! code cert_has_expired npm err! errno cert-CSDN博客 npm config set registry http://registry.cnpmjs.org npm config set registry http://registry.npm.taobao.org

【Linux 02】权限基本概念

文章目录 🌈 Ⅰ 权限概念🌈 Ⅱ 权限管理1. 文件访问者分类 (角色)2. 文件类型和访问权限 (事物属性)3. 文件权限值表示方法 🌈 Ⅲ 权限修改1. chmod 设置文件访问权限2. chown 修改文件拥有者3. chgrp 修改文件或目录的所属组 🌈 …

【数据分享】2014-2024年全国监测站点的逐月空气质量数据(15个指标\免费获取)

空气质量的好坏反映了空气的污染程度,在各项涉及城市环境的研究中,空气质量都是一个十分重要的指标。空气质量是依据空气中污染物浓度的高低来判断的。 我们发现学者王晓磊在自己的主页里面分享了2014年5月以来的全国范围的到站点的逐时空气质量数据&am…

接口测试工具开发文档

1 开发规划 1.1 开发人员 角 色 主要职责 负责模块 人员 备注 n xxx模块 xxx 1.2 开发计划 <附开发计划表> 1.3 开发环境和工具 开发工具 工具 作用 Notepad 编辑器 Perl 解释器 2 总体设计 设计思路&#xff1a;因为测试app和server。首先必须…

[C#]winform基于opencvsharp结合pairlie算法实现低光图像增强黑暗图片变亮变清晰

【低光图像增强介绍】 在图像处理领域&#xff0c;低光图像增强是一个具有挑战性的任务。由于光线不足&#xff0c;这些图像往往呈现出低对比度、高噪声和细节丢失等问题&#xff0c;严重影响了图像的视觉效果和后续分析的准确性。因此&#xff0c;开发有效的低光图像增强方法…

WSL安装Ubuntu22.04,以及深度学习环境的搭建

安装WSL 安装 WSL 2 之前&#xff0c;必须启用“虚拟机平台”可选功能。 计算机需要虚拟化功能才能使用此功能。 以管理员身份打开 PowerShell 并运行&#xff1a; dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart下载 Linux 内核更…

初识ONLYOFFICE 8.0:办公软件的革命性升级

引言 随着数字化时代的到来&#xff0c;办公软件已经成为我们日常生活和工作的重要组成部分。在这个充满竞争的市场中&#xff0c;ONLYOFFICE凭借其卓越的性能和功能&#xff0c;脱颖而出&#xff0c;成为许多企业和个人用户的优选。近期&#xff0c;ONLYOFFICE推出了全新的8.…

大数据技术之 Kafka

大数据技术之 Kafka 文章目录 大数据技术之 Kafka第 1 章 Kafka 概述1.1 定义1.2 消息队列1.2.1 传统消息队列的应用场景1.2.2 消息队列的两种模式 1.3 Kafka 基础架构 第 2 章 Kafka 快速入门2.1 安装部署2.1.1 集群规划2.1.2 集群部署2.1.3 集群启停脚本 2.2 Kafka 命令行操作…

http前生今世

HTTP/0.9&#xff0c;仅支持GET方法&#xff0c;并且响应中没有HTTP头信息&#xff0c;只有文档内容。 HTTP/1.0增加了对POST方法、状态码、HTTP头信息等的支持&#xff0c;这一版本也是广泛应用的历史性版本。 HTTP/1.1引入了持久连接&#xff08;Persistent Connections&…

schema: classpath:db/schema.sql 自动建表失败的另一个原因

一、问题产生 想在springboot启动时&#xff0c;自动创建数据库&#xff0c;并执行建表语句&#xff0c;和数据插入语句。于是按照帖子配置了 schema: classpath:db/schema.sql 然而启动时&#xff0c;确报如下错误&#xff1a; com.baomidou.dynamic.datasource.DynamicDataSo…

【洛谷题解】P1303 A*B Problem

题目链接&#xff1a;A*B Problem - 洛谷 题目难度&#xff1a;普及- 涉及知识点&#xff1a;高精度 题意&#xff1a; 分析&#xff1a;直接套用模版即可 AC代码&#xff1a; #include<bits/stdc.h> using namespace std; char n[1000000],m[1000000]; int a[1000…