机器学习概述-程序员宅基地

技术标签: 机器学习  

在这里插入图片描述

一、什么是机器学习

机器学习是一种人工智能技术,通过对数据的学习和分析,让计算机系统自动提高其性能。简而言之,机器学习是一种从数据中学习规律和模式的方法,通过数据来预测、分类或者决策

在这里插入图片描述

二、机器学习的工作原理

机器学习的工作原理主要包括以下几个步骤:

  • 数据收集:首先需要收集数据并将其转化为可以计算的形式,例如数值、文本或图像等。

  • 数据预处理:数据收集后,需要对数据进行清洗、去除异常值、缺失值处理、特征选择等预处理步骤。

  • 特征工程: 是指在机器学习中对原始数据进行转换、组合和选择等处理,以提取更有用的特征或属性,以帮助机器学习算法更好地理解和处理数据。简而言之,特征工程就是对原始数据进行预处理,以提取有用信息来辅助机器学习。

  • 模型选择:根据问题的特点和数据的特征选择适合的机器学习算法和模型。

  • 模型训练(机器学习):利用已有数据对所选的机器学习模型进行训练,从而使模型能够学习数据中的规律和模式。

  • 模型评估:训练完成后,需要对模型进行评估和调整,以检查其性能和精度,并进行优化。

  • 模型应用:经过训练和优化后,机器学习模型可以用于新数据的预测、分类、聚类等任务。

    在这里插入图片描述

三、数据简介
  • 数据简介

    在数据集中一般:

    • 一行数据我们称为一个样本
    • 一列数据我们称为一个特征
    • 有些数据有目标值(标签值),有些数据没有标签值
  • 数据类型构成

    • 数据类型一:特征值+目标值(目标值是连续的和离散的)
    • 数据类型二:只有特征值,没有目标值
  • 数据分割

    • 机器学习一般的数据集会划分为两个部分:
      • 训练数据:用于训练,构建模型
      • 测试数据:在模型检验时使用,用于评估模型是否有效
    • 划分比例:
      • 训练集:70% 80% 75%
      • 测试集:30% 20% 25%
四、特征工程
  • 什么是特征工程

    是指在机器学习中对原始数据进行转换、组合和选择等处理,以提取更有用的特征或属性,以帮助机器学习算法更好地理解和处理数据。简而言之,特征工程就是对原始数据进行预处理,以提取有用信息来辅助机器学习。

  • 为什么要用到特征工程

    特征工程是机器学习中非常重要的一环,因为好的特征能够提高算法的精度和效率,甚至决定了机器学习模型的上限。因此,进行特征工程需要根据具体问题和数据特点进行灵活选择和处理,以达到最佳效果。

  • 特征工程包含的内容

    • 特征提取:从原始数据中提取特征,通常是利用数学和统计方法对数据进行转换和降维,例如主成分分析(PCA)、奇异值分解(SVD)等。
    • 特征转换(特征预处理):将提取的特征进行转换,以符合算法的需求,例如将类别特征转换为数值特征,或者对数值特征进行标准化。
    • 特征降维:指在某些限定条件下,降低随机变量(特征)个数,得到一组“不相关”主变量的过程
    • 特征选择:根据特征的重要性和相关性等指标,选择最具有代表性的特征,以减少计算复杂度和提高算法性能。
五、机器学习算法分类
  • 监督学习

    输入数据是由输入特征值和目标值所组成。函数的输出可以是一个连续的值(称为回归),或是输出有限个离散值(称为分类)

    • 回归问题

      例如:预测房价,根据集拟合出一条连续曲线

    • 分类问题

      例如:根据肿瘤特征判断良性还是恶性,得到的是结果是“良性”或者“恶性”,是离散

  • 无监督学习

    输入数据是由输入特征值组成,没有目标值。输入数据没有被标记,也没有确定的结果,样本数据类别未知;需要根据样本间的相似性对样本集进行类别划分。

    • 有监督,无监督算法对比

    在这里插入图片描述

  • 半监督学习

    训练集同时包含有标记样本数据和未标记样本数据

    • 监督学习训练方式和半监督学习训练方式的区别:
      1. 数据量不同:监督学习需要大量有标签的数据来进行训练,而半监督学习则可以利用部分有标签数据和大量无标签数据进行训练。
      2. 模型的预测能力:监督学习的模型在处理未知数据时需要有标签的数据作为参考,而半监督学习的模型可以更好地利用未标记数据来提高预测能力。
      3. 训练时间:由于半监督学习使用了更多的数据进行训练,因此需要更长的时间来完成模型的训练。
      4. 精度:半监督学习的模型在某些情况下可以比监督学习的模型具有更好的精度,尤其是当标记数据很少的时候。
      5. 应用场景:监督学习适用于已经有标签数据的问题,例如分类和回归等问题,而半监督学习适用于数据集标签数量较少或标签数据难以获得的问题。
  • 强化学习

    实质就是make decisions问题,即自动进行决策,并且可以做连续决策。强化学习的的目标就是获得最多的累计奖励

    • 强化学习的五个元素:

      agent、action、reward、environment、observation

    • 监督学习的强化学习的对比:

      在这里插入图片描述

  • 四种学习算法的小结

    在这里插入图片描述

六、模型评估

模型评估是模型开发过程不可或缺的一部分。它有助于发现表达数据的最佳模型和所选模型将来工作的性能如何。

按照数据集的目标值不同,可以把模型评估分为分类模型评估和回归模型评估

  • 分类模型评估

    例如:肿瘤良性、恶性预测模型

    • 准确率:

      预测正确的数占样本总数的比例。

    • 其他评价指标:

      精确率、召回率、F1-score、AUC指标等。

  • 回归模型评估

    例如:房价预测模型

    • 均方根误差(Root Mean Squared Error,RMSE)

      RMSE是一个衡量回归模型误差率的常用公式。不过,它仅能比较误差是相同单位的模型。

    • 均方根误差公式

      在这里插入图片描述

    • 举例:

      假设有一个房价预测模型,只有五个样本,对应的

      真实值为:100,120,125,230,400

      预测值为:105,119,120,230,410

      则均方根误差求解得:
      R M S E = [ ( 105 − 100 ) 2 + ( 119 − 120 ) 2 + ( 120 − 125 ) 2 + ( 230 − 230 ) 2 + ( 410 − 400 ) 2 ] 5 2 = 5.495 RMSE=\sqrt[2]{\frac{[(105-100)^2+(119-120)^2+(120-125)^2+(230-230)^2+(410-400)^2]}{5}}=5.495 RMSE=25[(105100)2+(119120)2+(120125)2+(230230)2+(410400)2] =5.495

  • 拟合

    模型评估用于评价训练好的模型的表现效果,其表现效果大致可以分为两类:过拟合、欠拟合。

    • 欠拟合(under-fitting):模型学习的太过粗糙,在训练集中的样本数据特征关系都没有学出来。
    • 过拟合(over-fitting):所建的机器学习模型或者是深度学习模型在训练样本中表现得过于优越,导致在测试数据集中表现不佳。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Despicable_Me/article/details/130176712

智能推荐

BAT批处理创建文件桌面快捷方式_批处理创建桌面快捷方式-程序员宅基地

文章浏览阅读1.5w次,点赞9次,收藏26次。简介一个创建某个文件到桌面快捷方式的BAT批处理.代码@echooff::设置程序或文件的完整路径(必选)setProgram=D:\Program Files (x86)\格式工厂.4.2.0\FormatFactory.exe::设置快捷方式名称(必选)setLnkName=格式工厂v4.2.0::设置程序的工作路径,一般为程序主目录,此项若留空,脚本将..._批处理创建桌面快捷方式

射频识别技术漫谈(6-10)_芯片 ttf模式-程序员宅基地

文章浏览阅读2k次。射频识别技术漫谈(6-10),概述RFID的通讯协议;射频ID卡的原理与实现,数据的传输与解码;介绍动物标签属性与数据传输;RFID识别号的变化等_芯片 ttf模式

Python 项目实战 —— 手把手教你使用 Django 框架实现支付宝付款_django 对接支付宝接口流程-程序员宅基地

文章浏览阅读1.1k次。今天小编心血来潮,为大家带来一个很有趣的项目,那就是使用 Python web 框架 Django 来实现支付宝支付,废话不多说,一起来看看如何实现吧。_django 对接支付宝接口流程

Zabbix 5.0 LTS在清理历史数据后最新数据不更新_zabbix问题没有更新-程序员宅基地

文章浏览阅读842次。Zabbix 5.0 LTS,跑了一年多了一直很稳定,前两天空间显示快满了,于是手贱清理了一下history_uint表(使用mysql truncate),结果折腾了一周。大概故障如下:然后zabbix论坛、各种群问了好久都没解决,最后自己一番折腾似乎搞定了。初步怀疑,应该是由于历史数据被清空后,zabbix需要去处理数据,但是数据量太大,跑不过来,所以来不及更新了(?)..._zabbix问题没有更新

python学习历程_基础知识(2day)-程序员宅基地

文章浏览阅读296次。一、数据结构之字典 key-value

mybatis-plus字段策略注解strategy_mybatisplus strategy-程序员宅基地

文章浏览阅读9.7k次,点赞3次,收藏13次。最近项目中遇到一个问题,是关于mybatis-plus的字段注解策略,记录一下。1问题调用了A组件(基础组件),来更新自身组件的数据,发现自己组件有个字段总是被清空。2原因分析调用的A组件的字段,属于基础字段,自己业务组件,对这个基础字段做了扩展,增加了业务字段。但是在自己的组件中的实体注解上,有一个注解使用错误。mybatis-plus封装的updateById方法,如果..._mybatisplus strategy

随便推点

信息检索笔记-索引构建_为某一文档及集构件词项索引时,可使用哪些索引构建方法-程序员宅基地

文章浏览阅读3.8k次。如何构建倒排索引,我们将这个过程叫做“索引构建”。如果我们的文档很多,这样索引就一次性装不下内存,该如何构建。硬件的限制 我们知道ram读写是随机的操作,只要输入相应的地址单元就能瞬间将数据读出来或者写进去。但是磁盘不行,磁盘必须有一个寻道的过程,外加一个旋转时间。那么只有涉及到磁盘,我们就可以考虑怎么节省I/O操作时间。【注】操作系统往往以数据块为单位进行读写。因为读一_为某一文档及集构件词项索引时,可使用哪些索引构建方法

IT巨头英特尔看好中国市场前景-程序员宅基地

文章浏览阅读836次。英特尔技术与制造事业部副总裁卞成刚7日在财富论坛间隙接受中新社记者采访时表示,该公司看好中国市场前景,扎根中国并以此走向世界是目前最重要的战略之一。卞成刚说,目前该公司正面临战略转型,即从传统PC服务领域扩展至所有智能设施领域,特别是移动终端。而中国目前正引领全球手机市场,预计未来手机、平板电脑等方面的发明创新将大量在中国市场涌现,并推向全球。持相同态度的还有英特尔中国区执行董事戈峻。戈峻

ceph中的radosgw相关总结_radosgw -c-程序员宅基地

文章浏览阅读627次。https://blog.csdn.net/zrs19800702/article/details/53101213http://blog.csdn.net/lzw06061139/article/details/51445311https://my.oschina.net/linuxhunter/blog/654080rgw 概述Ceph 通过radosgw提供RES..._radosgw -c

前端数据可视化ECharts使用指南——制作时间序列数据的可视化曲线_echarts 时间序列-程序员宅基地

文章浏览阅读3.7k次,点赞6次,收藏9次。我为什么选择ECharts ? 本周学校课程设计,原本随机佛系选了一个51单片机来做音乐播放器,结果在粗略玩了CN-DBpedia两天后才回过神,课设还没有开始整。于是懒癌发作,碍于身上还有比赛的作品没交,本菜鸡对硬件也没啥天赋,所以就直接把题目切换成软件方面的题目。写python的同学选择了一个时间序列数据的可视化曲线程序设计题目,果真python在数据可视化这一点性能很优秀。..._echarts 时间序列

ApplicationEventPublisherAware事件发布-程序员宅基地

文章浏览阅读1.6k次。事件类:/** * *   * @className: EarlyWarnPublishEvent *   * @description:数据风险预警发布事件 *   * @param: *   * @return: *   * @throws: *   * @author: lizz *   * @date: 2020/05/06 15:31 * */public cl..._applicationeventpublisheraware

自定义View实现仿朋友圈的图片查看器,缩放、双击、移动、回弹、下滑退出及动画等_imageview图片边界回弹-程序员宅基地

文章浏览阅读1.2k次。如需转载请注明出处!点击小图片转到图片查看的页面在Android开发中很常用到,抱着学习和分享的心态,在这里写下自己自定义的一个ImageView,可以实现类似微信朋友圈中查看图片的功能和效果。主要功能需求:1.缩放限制:自由缩放,有最大和最小的缩放限制 2居中显示:.若图片没充满整个ImageView,则缩放过程将图片居中 3.双击缩放:根据当前缩放的状态,双击放大两倍或缩小到原来 4.单指_imageview图片边界回弹