热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

浅谈有监督学习的分类与回归

简单解释:分类和回归的区别在于输出变量的类型。定量输出称为回归,或者说是连续变量预测;定性输出称为分类,或者说是离散变量预

简单解释:
分类和回归的区别在于输出变量的类型。

定量输出称为回归,或者说是连续变量预测;
定性输出称为分类,或者说是离散变量预测。

举个例子:
预测明天的气温是多少度,这是一个回归任务;
预测明天是阴、晴还是雨,就是一个分类任务。
监督学习中,

如果预测的变量是离散的,我们称其为分类(如决策树,支持向量机等),
如果预测的变量是连续的,我们称其为回归。
以下内容参考:李航《统计学习方法》第12章

分类算法有感知机、K近邻、朴素贝叶斯、决策树、逻辑回归与最大熵模型、支持向量机、提升方法。
原始的感知机、支持向量机以及提升方法是针对二类分类的,可以将它们扩展到多类分类。
感知机、K近邻、朴素贝叶斯、决策树是简单的分类算法,模型直观、实现容易。
逻辑回归与最大熵模型、支持向量机、提升方法是较复杂但更有效的分类算法。

分类很简单,就是分类么,下面着重说回归
回归又分为线性回归与逻辑回归(Logistic Regression 和 Linear Regression)
1、分类与回归是干嘛的?
不管是分类,还是回归,其本质是一样的,都是对输入做出预测,并且都是监督学习。说白了,就是根据特征,分析输入的内容,判断它的类别,或者预测其值。

作者:陶韬
链接:https://www.zhihu.com/question/21329754/answer/204957456
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

为什么那么多回答说分类与回归的区别就是离散和连续的区别?根本不是这样子的啊!这两者的区别完全不在于连续与否啊,而在于损失函数的形式不同啊!(后文详述)-------------分割线----------------前面的很多答案用到了不少生动的例子和理论,从多个角度深刻诠释了什么是分类问题,什么是回归问题,以及如何实现回归与分类任务,但大多数的回答仍没有提及这两者间的本质区别。个人认为:“回归与分类的根本区别在于输出空间是否为一个度量空间。”我们不难看到,回归问题与分类问题本质上都是要建立映射关系:而两者的区别则在于:对于回归问题,其输出空间B是一个度量空间,即所谓“定量”。也就是说,回归问题的输出空间定义了一个度量 去衡量输出值与真实值之间的“误差大小”。例如:预测一瓶700毫升的可乐的价格(真实价格为5元)为6元时,误差为1;预测其为7元时,误差为2。这两个预测结果是不一样的,是有度量定义来衡量这种“不一样”的。(于是有了均方误差这类误差函数)。对于分类问题,其输出空间B不是度量空间,即所谓“定性”。也就是说,在分类问题中,只有分类“正确”与“错误”之分,至于错误时是将Class 5分到Class 6,还是Class 7,并没有区别,都是在error counter上+1。而非很多回答所提到的“连续即回归,离散即分类”。事实上,在实际操作中,我们确实常常将回归问题和分类问题互相转化(分类问题回归化:逻辑回归;回归问题分类化:年龄预测问题——>年龄段分类问题),但这都是为了处理实际问题时的方便之举,背后损失的是数学上的严谨性。

1、分类与回归是干嘛的?
不管是分类,还是回归,其本质是一样的,都是对输入做出预测,并且都是监督学习。说白了,就是根据特征,分析输入的内容,判断它的类别,或者预测其值。

2、二者有什么区别
重要要研究的就是两者的区别

1.输出不同
1.分类问题输出的是物体所属的类别,回归问题输出的是物体的值。

例如,最近福州天气比较怪(阴晴不定,像极了女朋友的脾气),为了能够对明天穿衣服的量以及是否携带雨具做判断,我们就要根据已有天气情况做预测。

上图中的天气可以分为:晴、阴、雨 三类,我们只知道今天(2019年3月26日)及之前的天气,我们会预测明天及以后几天的天气情况,如明天阴,下周一晴,这就是分类;

每一天的天气温度,我们知道今天及以前几天的温度,我们就要通过之前的温度来预测现在往后的温度,每一个时刻,我们都能预测出一个温度值,得到这个值用的方法就是回归。

2.分类问题输出的值是离散的,回归问题输出的值是连续的

注:这个离散和连续不是纯数学意义上的离散和连续。

在数学上的连续是指,在某一个点处的极限值等于在这个点的函数值。很明显,回归问题不可能测得连续值。因为我们测得的两个值再接近,这两个值之间还是会存在实数域上的值,比如我们测得空气温度是11°和10.999°(现实情况中,测空气温度小数点后三位几乎没什么意义,在此只是作为例子来说明问题),在这两个值之间还有无穷多个值,比如:10.9999°,10.99999°等等。测得的值是有范围的,小数点多少位以后,值就测不到了。

那我们怎么去理解离散和连续呢?

我们可以这么理解:离散就是规定好有有限个类别,这些类别是离散的。连续就是理论上可以取某一范围内的任意值,比如现在28°,当然这是我们测出来的,但是实际温度可能是无限趋于28。也就是说,回归并没有要求你的值必须是那个类别,你只要能回归出一个值,在可控范围内即可。

3.分类问题输出的值是定性的,回归问题输出的值是定量的

首先我们要先给大家说一下什么是定性和定量。

所谓定性是指确定某种东西的确切的组成有什么或者某种物质是什么,这种测定一般不用特别的测定这种物质的各种确切的数值量。

所谓定量就是指确定一种成分(某种物质)的确切的数值量,这种测定一般不用特别的鉴定物质是什么,

举个例子,这是一杯水,这句话是定性;这杯水有10毫升,这是定量。

2.目的不同
分类的目的是为了寻找决策边界,即分类算法得到是一个决策面,用于对数据集中的数据进行分类。

回归的目的是为了找到最优拟合,通过回归算法得到是一个最优拟合线,这个线条可以最好的接近数据集中的各个点。

3.本质不同
这个是我看到的别人在分析两者的差别时提到的,分享给大家。

(原文:https://www.zhihu.com/question/21329754/answer/204957456)

所谓的离散与连续的差别是分类与回归的不同的表象,而非本质,本质在于损失函数的形式不同。

4.结果不同
分类的结果没有逼近,对就是对,错就是错,什么类别就是什么类别,最终结果只有一个。

回归是对真实值的一种逼近预测,值不确定,当预测值与真实值相近时,误差较小时,认为这是一个好的回归。(例如一个产品的实际价格为5000元,通过回归分析预测值为4999元,我们认为这是一个比较好的回归分析。)

3、场景应用
我们的主要目的还是为了应用,而不是单纯了解他们有什么不同。

1.分类应用
分类问题应用非常广泛。通常是建立在回归之上,分类的最后一层通常要使用softmax函数进行判断其所属类别。分类并没有逼近的概念,最终正确结果只有一个,错误的就是错误的,不会有相近的概念。

例如判断一幅图片上的动物是一只猫还是一只狗,判断明天天气的阴晴,判断零件的合格与不合格等等。

2.回归应用
回归问题通常是用来预测一个值。另外,回归分析用在神经网络上,其最上层是不需要加上softmax函数的,而是直接对前一层累加即可。一个比较常见的回归算法是线性回归算法(LR)

如预测房价、股票的成交额、未来的天气情况等等。


推荐阅读
  • 能够感知你情绪状态的智能机器人即将问世 | 科技前沿观察
    本周科技前沿报道了多项重要进展,包括美国多所高校在机器人技术和自动驾驶领域的最新研究成果,以及硅谷大型企业在智能硬件和深度学习技术上的突破性进展。特别值得一提的是,一款能够感知用户情绪状态的智能机器人即将问世,为未来的人机交互带来了全新的可能性。 ... [详细]
  • 本文探讨了 TypeScript 中泛型的重要性和应用场景,通过多个实例详细解析了泛型如何提升代码的复用性和类型安全性。 ... [详细]
  • 三角测量计算三维坐标的代码_双目三维重建——层次化重建思考
    双目三维重建——层次化重建思考FesianXu2020.7.22atANTFINANCIALintern前言本文是笔者阅读[1]第10章内容的笔记,本文从宏观的角度阐 ... [详细]
  • 独家解析:深度学习泛化理论的破解之道与应用前景
    本文深入探讨了深度学习泛化理论的关键问题,通过分析现有研究和实践经验,揭示了泛化性能背后的核心机制。文章详细解析了泛化能力的影响因素,并提出了改进模型泛化性能的有效策略。此外,还展望了这些理论在实际应用中的广阔前景,为未来的研究和开发提供了宝贵的参考。 ... [详细]
  • 高效重装Windows 10系统指南
    如何快速地为您的电脑重装Windows 10系统?本文将详细介绍从下载系统镜像到安装完成的每一步操作。 ... [详细]
  • WCF类型共享的最佳实践
    在使用WCF服务时,经常会遇到同一个实体类型在不同服务中被生成为不同版本的问题。本文将介绍几种有效的类型共享方法,以解决这一常见问题。 ... [详细]
  • 高端存储技术演进与趋势
    本文探讨了高端存储技术的发展趋势,包括松耦合架构、虚拟化、高性能、高安全性和智能化等方面。同时,分析了全闪存阵列和中端存储集群对高端存储市场的冲击,以及高端存储在不同应用场景中的发展趋势。 ... [详细]
  • 利用python爬取豆瓣电影Top250的相关信息,包括电影详情链接,图片链接,影片中文名,影片外国名,评分,评价数,概况,导演,主演,年份,地区,类别这12项内容,然后将爬取的信息写入Exce ... [详细]
  • MATLAB实现Sobel边缘检测算法
    图像边缘是指图像中灰度值发生显著变化的区域。Sobel算子是一种常用的边缘检测方法,通过计算图像灰度值的梯度来检测边缘。本文介绍了Sobel算子的基本原理,并提供了基于MATLAB的实现代码。 ... [详细]
  • 本文详细介绍了如何使用OpenSSL自建CA证书的步骤,包括准备工作、生成CA证书、生成服务器待签证书以及证书签名等过程。 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • 本文回顾了作者初次接触Unicode编码时的经历,并详细探讨了ASCII、ANSI、GB2312、UNICODE以及UTF-8和UTF-16编码的区别和应用场景。通过实例分析,帮助读者更好地理解和使用这些编码。 ... [详细]
  • Visual Studio Code (VSCode) 是一款功能强大的源代码编辑器,支持多种编程语言,具备丰富的扩展生态。本文将详细介绍如何在 macOS 上安装、配置并使用 VSCode。 ... [详细]
  • 深入解析国内AEB应用:摄像头和毫米波雷达融合技术的现状与前景
    本文作者程建伟,武汉极目智能技术有限公司CEO,入选武汉市“光谷3551人才计划”。文章详细探讨了国内自动紧急制动(AEB)系统中摄像头与毫米波雷达融合技术的现状及未来前景。通过分析当前技术的应用情况、存在的挑战以及潜在的解决方案,作者指出,随着传感器技术的不断进步和算法优化,AEB系统的性能将大幅提升,为交通安全带来显著改善。 ... [详细]
  • 在机器学习领域,深入探讨了概率论与数理统计的基础知识,特别是这些理论在数据挖掘中的应用。文章重点分析了偏差(Bias)与方差(Variance)之间的平衡问题,强调了方差反映了不同训练模型之间的差异,例如在K折交叉验证中,不同模型之间的性能差异显著。此外,还讨论了如何通过优化模型选择和参数调整来有效控制这一平衡,以提高模型的泛化能力。 ... [详细]
author-avatar
业余爱好者
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有