零基础机器学习(3)之机器学习的一般过程

文章目录

    • 一、机器学习一般过程
      • 1.数据获取
      • 2.特征提取
      • 3.数据预处理
        • ①去除唯一属性
        • ②缺失值处理
          • A. 均值插补法
          • B. 同类均值插补法
        • ③重复值处理
        • ④异常值
        • ⑤数据定量化
      • 4.数据标准化
        • ①min-max标准化(归一化)
        • ②z-score标准化(规范化)
      • 5.数据降维
        • ①目的
        • ②权衡
      • 6.训练模型
        • ①样本数据集的选取
        • ②机器学习算法
      • 7.评估模型的有效性
        • ①过拟合与欠拟合
        • ②性能度量
          • A. 回归任务
          • B.分类任务
          • C.聚类任务
      • 8.使用模型

一、机器学习一般过程

机器学习的基本思想是通过从样本数据中提取所需特征构造一个有效的模型,并使用所建模型来完成具体的任务。

首先要获取所研究问题的数据

其次是对获取到的数据进行适当处理,然后选取合适的算法训练模型

最后对训练好的模型进行评估,以判定其是否满足任务需求,如满足,即可使用模型。

1.数据获取

机器学习的第一步是收集与学习任务相关的数据,这是最基础也是最重要的一步。

虽然现在是大数据时代,但对于一个给定任务,要得到与之相关的数据有时却很困难。业界广泛流传这样一句话:*数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限的方法而已。*因此,数据的获取尤为重要。

在训练最优的机器学习模型时,一定要选择最有代表性的数据集。只有选择最合适的属性作为特征,才能保证机器学习项目能应用于实际。

2.特征提取

特征提取是使用专业的背景知识和技巧最大限度地从原始数据中提取并处理数据,使得特征在机器学习的模型上得到更好的发挥,它直接影响机器学习的效果。

例如,在机器自动分辨筷子和牙签两种物品的实验中

序 号长度/(cm)质量/(g)材 质类 别
1258筷子
2237筷子
3204筷子
460.1牙签
550.08牙签
65.80.09牙签

观察表数据集可发现,根据长度和质量这两个特征即可分辨筷子和牙签,材质这个特征对区分筷子和牙签的作用并不明显,故可在特征属性中提取长度和质量这两个特征,而将材质这个特征删除,这个过程称为特征提取。

3.数据预处理

现实生活中,收集到的数据往往会有数据量纲(数据的度量单位)或数据类型不一致等问题。因此,在获取样本之后,通常需要对数据进行预处理。

数据预处理没有标准流程,通常包含去除唯一属性处理缺失值重复值异常值,以及数据定量化等几个步骤。

序 号姓 名年龄/(岁)年收入/(元)性 别学 历年消费/(元)
1张三3650 000本科30 000
2赵琦4245 000本科40 000
3李武2330 000高中
4王波6170 000本科20 000
5刘玉琦3820 000大专10 000
6赵琦4245 000本科40 000
7赵倩−530 000本科90 000

该数据集是某平台上的“客户信息样本数据集”,要求使用机器学习方法,进行聚类,将客户划分为几种类型,以便为其推销相关的产品。在训练模型之前,我们需要对数据集中的数据进行预处理,才能得到理想的机器学习样本数据集。

①去除唯一属性

唯一属性通常指ID、姓名等属性,每个样本的取值都不一样且唯一,这些属性不能刻画样本自身的分布规律,在做数据预处理时,需将这些属性删除。

序 号年龄/(岁)年收入/(元)性 别学 历年消费/(元)
13650 000本科30 000
24245 000本科40 000
32330 000高中
46170 000本科20 000
53820 000大专10 000
64245 000本科40 000
7−530 000本科90 000
②缺失值处理

这里的缺失值指的是,单个样本中的数据某些确实,并不是样本缺失

常见的缺失值处理方法有3种

  • 直接使用含有缺失值的特征;
  • 删除含有缺失值的特征;
  • 缺失值补全。其中,缺失值补全是最常用的手段。
A. 均值插补法

是指使用该属性有效值的平均值来插补缺失的值

B. 同类均值插补法

是指首先将样本进行分类或聚类,然后以该类中样本的均值插补缺失值。

③重复值处理

在数据处理中,重复值指的是数据集中出现了两个或多个完全相同的记录或行。这些记录在所有列上的取值都完全相同,没有任何区别。重复值可能是由数据输入错误、数据复制问题或其他原因导致的。

重复值会导致数据的方差变小,数据的分布发生较大变化。因此,若检查到数据集中有重复数据,要将其删除。

④异常值

异常值是指超出或低于正常范围的值,如年龄为负数、身高大于3 m等,它会导致分析结果产生偏差甚至错误。检查到异常值后,可对异常值进行删除或替换处理

序 号年龄/(岁)年收入/(元)性 别学 历年消费/(元)
13650 000本科30 000
24245 000本科40 000
32330 000高中15 000
46170 000本科20 000
53820 000大专10 000
⑤数据定量化

计算机只能处理数值型数据。因此,在数据预处理时,如果有非数值型数据,都要先转换成数值型数据。

序 号年龄/(岁)年收入/(元)性 别学 历年消费/(元)
13650 00016030 000
24245 00026040 000
32330 00012015 000
46170 00016020 000
53820 00024010 000

在该数据集中性别和学历都是非数值型数据,需将其处理成数值型数据,如学历“高中”可用20代替,“大专”可用40代替,“本科”可用60代替;性别中的“男”可用1代替,“女”可用2代替。

4.数据标准化

数据标准化是指将数据按比例缩放,使之落入一个特定区间,从而消除数据之间数量级的差异。经过标准化处理后,不同的特征可以具有相同的尺度

①min-max标准化(归一化)

数据集的每个属性(数据表中的列)中都有一个最大值和一个最小值,分别用max和min表示,然后通过一个公式将原始值映射到区间[0,1]上。

序 号年 龄年 收 入性 别学 历年 消 费
10.340.6010.67
20.50.5111
300.2000.17
411010.33
50.39010.50

整个数据集的数据经过min-max标准化处理后的结果如表所示。

这种处理方法的缺点是当有新数据加入时,可能会导致最大值和最小值发生变化,需要重新定义。

②z-score标准化(规范化)

它是基于原始数据的均值和标准差进行数据标准化的一种方法。

z-score标准化方法适用于属性的最大值和最小值未知的情况或有超出取值范围的离群数据的情况。

公式:新值=(原始值-均值)/标准差

序 号年 龄年 收 入性 别学 历年 消 费
1−0.330.41−0.820.750.65
20.160.121.220.751.58
3−1.38−0.76−0.82−1.75−0.74
41.711.56−0.820.75−0.28
5−0.16−1.341.22−0.5−1.21

整个数据集的数据经过z-score标准化处理后的数据如表所示。

注意:

z-score标准化要求样本属性值数据服从正态分布,这就要求样本数量足够多,故此案例不适合使用z-score标准化进行数据处理。

5.数据降维

  • “维度”是指样本集中特征属性的个数。
  • “降维”是指减少特征矩阵中特征的数量。
①目的
  1. 为了对数据进行可视化,以便对数据进行观察和探索;
  2. 简化机器学习模型的训练,使模型的泛化能力更好,避免“维度灾难”。

在实际应用中,数据一般是高维的。

手写数字“1”及其对应二维矩阵

手写的数字图片,如果将其缩放到28x28像素的大小,那么它的维度就是28x28=784维

对应的图像二维矩阵

数据已经被规范化到(0,1)范围内

②权衡

维数太多或太少都不好,设置恰当的维数对机器学习模型非常重要。

例如,对苹果和梨子进行分类时,若只将形状作为特征,则很可能会出现错误分类的情况;若再将大小作为特征,则可减少错误分类的情况;若再将颜色作为特征,则可进一步减少错误分类的情况。

数据降维最常用的方法是主成分分析法。
深度学习就是对样本的特征进行复杂的变换,得到最有效的特征,从而提高机器学习的性能。

6.训练模型

①样本数据集的选取
  • 训练集的数据要尽可能充分且分布平衡(即每个类别的样本数量差不多),否则不可能训练出一个完好的模型;
  • 验证集或测试集的样本也需要符合一定的平衡分布,否则将无法测试出一个准确的模型;
  • 训练模型和测试模型使用的样本不能相同。
②机器学习算法

训练机器学习模型时,要根据具体的学习任务,选择合适的算法。

  • 分类任务经常使用的算法有k近邻、朴素贝叶斯、决策树、支持向量机等;
  • 回归任务经常使用的算法有线性回归、k近邻、决策树等;
  • 聚类任务经常使用的算法有k均值、DBSCAN、GMM等。

7.评估模型的有效性

一个机器学习模型训练出来后,一般需要评估该模型的效果,看其是否能满足实际问题的需要。

评估模型的有效性就是利用测试集对模型进行测试,评估其输出结果。

事实上,我们希望得到一个在新的未知样本上表现很好的模型,即泛化能力好的模型。

①过拟合与欠拟合

如果模型在训练样本上学得“太好”了,很可能把训练样本自身的一些特点当成了所有样本的一般性质,导致泛化能力下降,这种现象在机器学习中称为“过拟合”。

与“过拟合”相对的就是“欠拟合”,指对训练样本的一般性质尚未学好。图1-10给出了关于过拟合与欠拟合的一个类比,便于理解。

②性能度量
A. 回归任务
  • 残差:在数理统计中是指所有拟合数据(即模型预测数据)与原始数据(样本实际值)之间的差的和
  • 和方差(SSE):拟合数据和原始数据对应点的误差的平方和。SSE越接近于0,说明模型越好,数据预测也越成功。
  • 均方误差(MSE):拟合数据和原始数据对应点误差的平方和的均值,。
  • 均方根误差(RMSE):MSE的平方根,也称回归任务的拟合标准差
  • 确定系数(R2):通过数据的变化来表征一个拟合的好坏,R2的正常取值范围为[0.1],越接近1,表明模型越好。
B.分类任务

分类任务中最常用的评估方法有准确率精确率召回率和F1值等。下面以一个二分类问题为例,介绍这些评估方法的含义。

真 实 值正 例反 例
预 测 值
正例真正例( )假反例( )
反例假正例( )真反例( )

在二分类中,假设样本有正反两个类别,则分类模型预测的结果有两种,正例和反例;真实数据的标签也有两种,正例和反例。那么,预测结果与真实标签的组合就有真正例(true positive)、真反例(true negative)、假正例(false positive)和假反例(false negative)4种情况,分别用 TP、 TN、FP 和 FN表示以上4种情况,

TP表示真实值与预测值都是正样本的数量;
FN表示真实值是正样本,而预测值却是反样本的数量;
FP表示真实值是反样本,而预测值却是正样本的数量;
TN表示真实值与预测值都是反样本的数量。
可见Tp与TN都是预测正确的情况。

  • 预测的准确率可定义为:

Accurancy=(TP+TN)/(Tp+FN+FP+TN)

  • 而预测的精确率表示预测为正的样本中有多少是真正的正例,故精确率可定义为:

Precision=TP/(TP+FP)

  • 召回率表示样本中的正例有多少被预测正确了,故召回率可定义为:

Recall=TP/(TP+FN)

C.聚类任务
方 法 名是否需要真实值监控最 佳 值
ARI(兰德系数)评价法需要1.0
AMI(互信息)评价法需要1.0
V-measure评分需要1.0
FMI评价法需要1.0
轮廓系数评价法不需要畸变程度最大
calinski_harabasz指数评价法不需要相比较最大

在聚类任务中,我们希望同一类的样本尽量类似,不同类的样本尽量不同。即簇内对象的相似度越大,不同簇之间的对象差别越大,聚类效果越好。聚类任务常用的评估指标如表所示。

8.使用模型

如果模型的性能能达到实际需求,就可以使用该模型预测新样本了。

例如,假设区分筷子和牙签的模型训练出来并且能达到实际需求,那么,就可以将一个新样本的数据(长度为14 cm,质量为6 g)输入到该模型中,使用模型预测出输入的数据是筷子还是牙签.

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

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

相关文章

AI入侵游戏业:是颠覆者还是创新助手?揭秘未来游戏新趋势!

在科技日新月异的今天,人工智能(AI)已经成为各行各业的关注焦点。而在娱乐产业中,AI技术的引入也让人们对电子游戏的未来发展产生了无限遐想。那么,AI究竟会给电子游戏行业带来怎样的变革?它会成为行业的颠…

【嵌入式学习】Qtday03.26

一、思维导图 二、练习 头文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTime> #include <QTextToSpeech>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Wi…

128天创作纪念日

分享的力量 hellohello~大家好✨✨我是大耳朵土土垚&#x1f973;&#x1f973;&#x1f973;今天是我创作128天的纪念日&#x1f389;&#x1f389;&#x1f389;&#xff0c;今天听到一句话——分享自己开心的事情就像有丝分裂一样会将快乐一直扩散&#x1f496;&#x1f496…

基于前端技术实现的全面预算编制系统

前言 在现代商业环境中&#xff0c;预测销售数据和实际成本是每个公司CEO和领导都极为重视的关键指标。然而&#xff0c;由于市场的不断变化&#xff0c;准确地预测和管理这些数据变得愈发具有挑战性。为了应对这一挑战&#xff0c;建立一个高效的系统来管理和审查销售数据的重…

机器人路径规划:基于斑翠鸟优化算法(Pied Kingfisher Optimizer ,PKO)的机器人路径规划(提供MATLAB代码)

一、机器人路径规划介绍 移动机器人&#xff08;Mobile robot&#xff0c;MR&#xff09;的路径规划是 移动机器人研究的重要分支之&#xff0c;是对其进行控制的基础。根据环境信息的已知程度不同&#xff0c;路径规划分为基于环境信息已知的全局路径规划和基于环境信息未知或…

【go从入门到精通】if else 条件控制

作者简介&#xff1a; 高科&#xff0c;先后在 IBM PlatformComputing从事网格计算&#xff0c;淘米网&#xff0c;网易从事游戏服务器开发&#xff0c;拥有丰富的C&#xff0c;go等语言开发经验&#xff0c;mysql&#xff0c;mongo&#xff0c;redis等数据库&#xff0c;设计模…

行业研究数据/报告网站 - 好用免费

前言 转眼进互联网 12 年了&#xff0c;先后在百度、汽车之家、某独角兽做业务和商业分析。与CEO、VP、业务owner等都对接过&#xff0c;1 个明显共性&#xff0c;就是大家都很关注外部行业数据&#xff0c;为决策提供参考。接下来&#xff0c;就和大家分享一下我收藏的 34 个…

迷宫(蓝桥杯)——DFS和BFS

迷宫 题目描述 下图给出了一个迷宫的平面图&#xff0c;其中标记为 1 的为障碍&#xff0c;标记为 0 的为可以通行的地方。 010000 000100 001001 110000迷宫的入口为左上角&#xff0c;出口为右下角&#xff0c;在迷宫中&#xff0c;只能从一个位置走到这 个它的上、下、左…

【数据结构】双向奔赴的爱恋 --- 双向链表

关注小庄 顿顿解馋๑ᵒᯅᵒ๑ 引言&#xff1a;上回我们讲解了单链表(单向不循环不带头链表)&#xff0c;我们可以发现他是存在一定缺陷的&#xff0c;比如尾删的时候需要遍历一遍链表&#xff0c;这会大大降低我们的性能&#xff0c;再比如对于链表中的一个结点我们是无法直接…

思通舆情 是一款开源免费的舆情系统 介绍

思通舆情 是一款开源免费的舆情系统。 支持本地化部署&#xff0c;支持在线体验。 支持对海量舆情数据分析和挖掘。 无论你是使用者还是共同完善的开发者&#xff0c;欢迎 pull request 或者 留言对我们提出建议。 您的支持和参与就是我们坚持开源的动力&#xff01;请 sta…

超越Sora!StreamingT2V AI视频模型,轻松打造120秒视觉盛宴

近日&#xff0c;来自美国德克萨斯大学奥斯汀分校&#xff08;UT奥斯丁&#xff09;等机构的研究人员提出了一项名为StreamingT2V的AI视频生成技术&#xff0c;引起了业界的广泛关注。这项技术打破了传统视频生成的局限&#xff0c;实现了高度一致且长度可扩展的视频生成&#…

C语言(结构体,联合体,枚举的讲解)

这期我们来讲解结构体&#xff0c;联合体&#xff0c;以及枚举的讲解&#xff0c;首先我们从概念开始一步一步的了解。 1&#xff0c;结构体 1.1概念 C 语言中的结构体是一种用户自定义的数据类型&#xff0c;它允许你将不同类型的变量组合在一起&#xff0c;从而形成一个新…

1978-2022年全国31省社会消费品零售总额数据

1978-2022年全国31省社会消费品零售总额数据 1、时间&#xff1a;1978-2022年 2、指标&#xff1a;社会消费品零售总额 3、范围&#xff1a;31省市 4、来源&#xff1a;整理自国家统计J和各省年鉴 5、缺失情况说明&#xff1a;1997-2022年31省市均无缺失&#xff0c; 199…

海外媒体发稿:9种高效的媒体套餐内容发稿策略分析-华媒舍

海外媒体发稿&#xff1a;9种高效的媒体套餐内容发稿策略分析高效的媒体发布和营销推广策略对公司、本人的成就尤为重要。下面我们就对于媒体套餐内容发稿营销推广策略开展全面解析&#xff0c;帮助读者掌握并应用这9种合理的思路&#xff0c;进而获得更好的媒体营销效果。 1.媒…

【Python系列】Python 中 YAML 文件与字典合并的实用技巧

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Focal Modulation Networks聚焦调制网络

摘要 我们提出了 焦点调制网络 &#xff08;简称 FocalNets) &#xff0c;其中 自注意&#xff08; SA &#xff09;被 Focal Modulation 替换&#xff0c;这种机制 包括三个组件&#xff1a;&#xff08; 1 &#xff09;通过 depth-wise Conv 提取分级的上下文信息&#xff0…

数据丢失大拯救:格式化后如何高效恢复文件

一、遭遇格式化危机&#xff0c;数据恢复有妙招 在数字化时代&#xff0c;数据丢失无疑是让人头疼的问题之一。特别是当存储设备意外格式化后&#xff0c;许多用户都会感到手足无措&#xff0c;不知如何是好。那么&#xff0c;格式化了怎么恢复呢&#xff1f;其实&#xff0c;…

黑马头条day5总结

1、surefire-reports for the individual test results. 借鉴&#xff1a;【已解决】surefire-reports for the individual test results.-CSDN博客 Please refer to D:\javashizhan01\heima-leadnews\heima-leadnews-service\heima-leadnews-article\target\surefire-report…

【@changesets/cli】变更集实战教程

一、背景概述 前端目前基于Monorepo架构的npm包开发很普遍&#xff0c;在开发完毕后&#xff0c;我们需要对包进行版本号升级&#xff0c;并且部署&#xff0c;这些操作如果是手动来操作的话&#xff0c;很麻烦&#xff0c;而且容易出错。 例如有这样的场景&#xff1a; -ap…

【Java程序设计】【C00345】基于Springboot的船舶监造管理系统(有论文)

基于Springboot的船舶监造管理系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 项目获取 &#x1f345;文末点击卡片获取源码&#x1f345; 开发环境 运行环境&#xff1a;推荐jdk1.8&#xff1b; 开发工具&#xff1a;eclipse以及i…