监督学习与无监督学习-程序员宅基地

技术标签: 监督学习  无监督学习  

一、监督机器学习

1.1 概念理解

监督学习是机器学习的类型,其中机器使用“标记好”的训练数据进行训练,并基于该数据,机器预测输出。标记的数据意味着一些输入数据已经用正确的输出标记。

在监督学习中,提供给机器的训练数据充当监督者,教导机器正确预测输出。它应用了与学生在老师的监督下学习相同的概念。

监督学习是向机器学习模型提供输入数据和正确输出数据的过程。监督学习算法的目的是找到一个映射函数来映射输入变量(x)和输出变量(y)

在现实世界中,监督学习可用于风险评估、图像分类、欺诈检测、垃圾邮件过滤等。

1.2 监督学习如何运作

在监督学习中,模型使用标记数据集进行训练,其中模型学习每种类型的数据。训练过程完成后,模型会根据测试数据(训练集的子集)进行测试,然后预测输出。

通过以下示例和图表可以很容易地理解监督学习的工作原理:
在这里插入图片描述

1.3 监督学习的步骤

  1. 首先确定训练数据集的类型
  2. 收集/收集标记的训练数据(一般可能需要手动标记)
  3. 将训练数据集拆分为训练数据集、测试数据集和验证数据集。
  4. 确定训练数据集的输入特征,这些特征应该有足够的知识使模型能够准确地预测输出。
  5. 确定适合模型的算法,如支持向量机、决策树等。
  6. 在训练数据集上执行算法。有时我们需要验证集作为控制参数,它们是训练数据集的子集。
  7. 通过提供测试集来评估模型的准确性。如果模型预测出正确的输出,这意味着我们的模型是准确的。

1.4 监督机器学习算法的类型

监督学习可以进一步分为两类问题:回归分类

1.回归
如果输入变量和输出变量之间存在关系,则使用回归算法。它用于预测连续变量,例如天气预报、市场趋势等。以下是一些流行的回归算法,它们属于监督学习:

  • 线性回归
  • 回归树
  • 非线性回归
  • 贝叶斯线性回归
  • 多项式回归

2.分类
当输出变量是分类时使用分类算法,这意味着有两个类别,例如是 - 否,男性 - 女性,真假等。垃圾邮件过滤,是否为垃圾等。

可能用到的算法:

  • 随机森林
  • 决策树
  • 逻辑回归
  • 支持向量机

1.5 监督学习的优点

  • 在监督学习的帮助下,模型可以根据先前的经验预测输出。
  • 在监督学习中,我们可以对对象的类别有一个准确的认识。
  • 监督学习模型帮助我们解决各种现实问题,例如欺诈检测、垃圾邮件过滤等。

1.6 监督学习的缺点

  • 监督学习模型不适合处理复杂的任务。
  • 如果测试数据与训练数据集不同,监督学习无法预测正确的输出。
  • 训练需要大量的计算时间。
  • 在监督学习中,我们需要足够的关于对象类别的知识。

二、无监督机器学习

在上一个主题中,我们学习了监督机器学习,其中模型在训练数据的监督下使用标记数据进行训练。但是在很多情况下,我们没有标记数据,需要从给定的数据集中找到隐藏的模式。因此,要解决机器学习中的此类案例,我们需要无监督学习技术。

2.1 什么是无监督学习?

顾名思义,无监督学习是一种机器学习技术,其中模型不使用训练数据集进行监督。相反,模型本身会从给定数据中找到隐藏的模式和见解。它可以比作在学习新事物时发生在人脑中的学习。它可以定义为:

监督学习是一种机器学习,其中模型使用未标记的数据集进行训练,并允许在没有任何监督的情况下对该数据进行操作。

无监督学习不能直接应用于回归或分类问题,因为与监督学习不同,我们有输入数据但没有相应的输出数据。无监督学习的目标是找到数据集的底层结构,根据相似性对数据进行分组,并以压缩格式表示该数据集

示例: 假设给定无监督学习算法的输入数据集,其中包含不同类型的猫和狗的图像。该算法从未在给定的数据集上进行过训练,这意味着它对数据集的特征一无所知。无监督学习算法的任务是自行识别图像特征。无监督学习算法将通过根据图像之间的相似性将图像数据集聚类到组中来执行此任务。
在这里插入图片描述

2.2 为什么要使用无监督学习?

以下是描述无监督学习重要性的一些主要原因:

  • 无监督学习有助于从数据中找到有用的见解。
  • 无监督学习与人类通过自己的经验学习思考非常相似,这使得它更接近真正的人工智能。
  • 无监督学习适用于未标记和未分类的数据,这使得无监督学习更加重要。
  • 在现实世界中,我们并不总是有输入数据和相应的输出,因此为了解决这种情况,我们需要无监督学习。

2. 3 无监督学习的工作原理

下图可以理解无监督学习的工作原理:
在这里插入图片描述
在这里,我们采用了未标记的输入数据,这意味着它没有分类,也没有给出相应的输出。现在,这些未标记的输入数据被输入机器学习模型以对其进行训练。首先,它将解释原始数据以从数据中找到隐藏的模式,然后应用合适的算法,如 k-means 聚类、决策树等。

一旦应用了合适的算法,该算法就会根据对象之间的相似性和差异性将数据对象分组。

2.4 无监督学习算法的类型

无监督学习算法可以进一步分为两类问题:聚类关联

  • 聚类:聚类是一种将对象分组为聚类的方法,使得具有最多相似性的对象保留在一个组中,并且与另一组的对象具有较少或没有相似性。聚类分析发现数据对象之间的共性,并根据这些共性的存在和不存在对它们进行分类。
  • 关联:关联规则是一种无监督学习方法,用于查找大型数据库中变量之间的关系。它确定在数据集中一起出现的项目集。关联规则使营销策略更加有效。例如购买 X 商品(假设是面包)的人也倾向于购买 Y(黄油/果酱)商品。关联规则的一个典型例子是市场篮子分析。

2.5 无监督学习算法

以下是一些流行的无监督学习算法:

  • K-means 聚类
  • KNN(k-最近邻)
  • 层次聚类
  • 异常检测
  • 神经网络
  • 主成分分析
  • 独立成分分析
  • 先验算法
  • 奇异值分解

2.6 无监督学习的优势

  • 与监督学习相比,无监督学习用于更复杂的任务,因为在无监督学习中,我们没有标记的输入数据。
  • 无监督学习更可取,因为与标记数据相比,它更容易获得未标记数据。

2.7 无监督学习的缺点

  • 无监督学习本质上比监督学习更难,因为它没有相应的输出。
  • 无监督学习算法的结果可能不太准确,因为输入数据没有标记,并且算法事先不知道确切的输出。

联系我v:hxgsrubxjogxeeag
如果python基础不好,可以参考学习我的python专栏,进阶可参考我的数学建模专栏,想要跟多的免费刷题练习,推荐使用:牛客网

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_46211269/article/details/125093635

智能推荐

聊聊数据的那些获取手段-程序员宅基地

文章浏览阅读785次。作者介绍:程虹升,唯品会大数据部支付业务数据分析师,数据分析和挖掘实战的践行者,“51CEO”公众号的运营者。数据分析好比做菜,“巧妇难为无米之炊”,对于数据分析师而言,..._数据获取有哪些

命令行运行java代码: 找不到或无法加载主类_用命令行运行java文件报错找不到主类-程序员宅基地

文章浏览阅读1.2k次,点赞2次,收藏8次。记录命令行运行java代码: 找不到或无法加载主类 错误前言一、如何用命令行运行Java代码?二、遇到的问题1.我遇到的问题2.查阅资料后总结一下其他可能的原因总结前言今天准备写一个小demo,用命令行进行编译Java程序,命令窗口提示"找不到或无法加载主类",记录一下这个错误。一、如何用命令行运行Java代码?Java是一种解释型语言,我们写好的Java代码需要事先编译成.class文件后(即字节码)才可以在Java解释器中运行,故命令行运行Java代码大致分为两个步骤:①javac编译_用命令行运行java文件报错找不到主类

Linux基础命令2-程序员宅基地

文章浏览阅读147次。#RPM安装包基础命令##查看已经安装的软件包rpm -qi 软件名 //查看已经安装的软件的信息rpm -ql 软件名 //查看软件安装的路径rpm -qc 软件名 //查看软件的配置文件rpm -qa 软件名/rpm -q 软件名 //查看已经安装的软件包rpm -qf 文件包名 //查看指定的文件或者目录由那个软件包所安装的##查看未安装的软件包rpm -qpi 软件包的全名 //查看未安装的软件包的信息rpm -qpl 软件包的全名 //查看为安装的软

实现canvas绘制时的撤回功能_canvas 撤销和恢复重做 putimagedata-程序员宅基地

文章浏览阅读6k次,点赞3次,收藏12次。canvas在用于绘制图形上相当实用,如果我们要记录某个时刻canvas的内容,在另一个时刻显示,可以使用getImageData和putImageData。getImageData用于记录当前canvas的内容,其接收四个参数,getImageData(x,y,width,height),x,y为起始的坐标,width和height为记录下的内容宽度高度let canvas = doc..._canvas 撤销和恢复重做 putimagedata

sed匹配非注释行和非空白行-程序员宅基地

文章浏览阅读1.8k次。sed -n "/^\s*[^# \t].*$/p" "$file"_sed 非空行 i a

torch.stack() 与 torch.cat()_torch.stack torch.cat-程序员宅基地

文章浏览阅读5.1k次,点赞4次,收藏23次。torch.stack()和torch.cat()都是拼接tensor常用操作,stack()可以看做并联,cat()为串联。torch.stack()官网:https://pytorch.org/docs/stable/torch.html#torch.stacktorch.stack(tensors,dim=0,out=None)→ Tensortorch...._torch.stack torch.cat

随便推点

HTTP BASIC AUTHENTICATION by Java RestTemplate_conn.setrequestproperty("authorization", "basic dx-程序员宅基地

文章浏览阅读881次。今天在接入EMQX 管理架空API时,必须使用HTTP BASIC AUTHENTICATION。对应的,我把日志打印出来:RdeMacBook-Pro:~ r$ curl -v --basic -u username:password http://127.0.0.1:8081/hello/* Trying 127.0.0.1...* TCP_NODELAY set..._conn.setrequestproperty("authorization", "basic dxnlcm5hbwu6cgfzc3dvcmq=");

逐像素光照( ray trace ) (一)[反射光]_逐顶点与逐像素光照差异对比-程序员宅基地

文章浏览阅读883次。现弄明白几种光的计算方式 1.反射光 The equation for the specular lighting term using Phong shading is: S = C * (R.L)P Where S is the final specular value, C is the specular light value, R is the reflected eye vector, L is the light vector, and P is the surface s_逐顶点与逐像素光照差异对比

微信小程序--长按事件bindlongtap与点击事件bindtap的执行顺序_小程序前端bindlongtap-程序员宅基地

文章浏览阅读3.6k次。对于同一控件同时设置bindtap和bindlongtap,会发现长按时先出现bindlongtap的事件,然后触发点击事件。通过测试,我们发现,小程序中事件执行的顺序是 点击:touchstart → touchend → tap 长按 touchstart → longtap → touchend → tap<view bindtouchstart="bindTouchStart" bi..._小程序前端bindlongtap

Intel/Mellanox 网卡使用DPDK_dpdk mellanox-程序员宅基地

文章浏览阅读6.8k次,点赞4次,收藏20次。在RedHat8.2下安装dpdk环境,对于我只是测试网卡是否正常支持DPDK,或者是DPDK功能是否兼容此系统和服务器,集体调优什么的就不去做,仅仅去测试一下而已,目前的测试方案也只是将两个网口回路,来进行收发包测试,下面是我接触过的两种型号的厂商 Intel(英特尔) 和 Mellanox(迈络思),二者的稍有区别,intel的网卡使用DPDK,需要将网卡绑定DPDK内核(是需要UIO/igb_uio等内核模块),而Mellanox网卡则不需要绑定DPDK内核(也不需要UIO/igb_uio等内核模_dpdk mellanox

大数据-Flume(一):日志收集系统【将应用产生的日志数据发送到Kafka/HDFS/HBase】【Source(上游)--Channel(缓冲区)-->Sink(下游)】【基于CentOS6】_flume采集数据到kafka-程序员宅基地

文章浏览阅读1.6k次,点赞2次,收藏12次。一、Flume安装1、在hadoop102服务器上安装2、将Flume目录、环境变量文件分发到hadoop101、hadoop103上二、编写Agent的配置文件三、Flume的使用1、Agent01(netcatsource):监听某个tcp端口手动的数据,然后将数据输出到控制台1.1 Agent01配置文件:netcatsource-loggersink.conf1.2 启动 Agent012、Agent02(execsource):实时监控单个本机文件的内容,将内容写入到HDFS2._flume采集数据到kafka

六轴传感器icm20602的自检和校准学习_invensense icm20602-程序员宅基地

文章浏览阅读2.9w次,点赞23次,收藏192次。 六轴传感器在当今智能穿戴和定位导航产品中被广泛应用,而六轴传感器中做的最好的要属InvenSense公司的产品了,本文结合官方提供的mpu6500驱动程序和icm20602驱动程序,讲解icm20602的自检和校准流程,并将其移植到icm20602上。首先来张icm20602芯片性能介绍图: 集成3轴加速度计和3轴陀螺仪,陀螺仪量程范围可选+/-250dps..._invensense icm20602