**前言:****Hello大家好,我是小哥谈。**机器学习中的分类和回归都是监督学习的问题。分类问题的目标是将输入数据分为不同的类别,而回归问题的目标是预测一个连续的数值。分类问题输出的是物体所属的类别,而回归问题输出的是数值。本节课就简单介绍下分类和回归的基本概念以及常见的分类算法和回归算法!~🌈
前期回顾:
目录
🚀1.基本概念
分类和回归是机器学习中两个重要的问题类型。回归问题通常是用来预测一个值,例如根据房屋的面积、位置等特征预测房价。而分类问题则是将输入数据分为不同的类别,例如根据肿瘤的大小、形状等特征将其分为恶性或良性。分类问题通常建立在回归之上,分类的最后一层通常要使用softmax函数进行判断其所属类别。分类并没有逼近的概念,最终正确结果只有一个,错误的就是错误的,不会有相近的概念。而回归问题则可以有相近的概念,例如预测房价时,预测值可以与实际值相差一定的范围。离散与连续的差别是分类与回归的不同的表象,而非本质,本质在于损失函数的形式不同,结果也不同,回归问题的结果是一个连续的值,而分类问题的结果是一个离散的类别。
机器学习中的分类和回归,本质都是对输入做出预测,并且都是监督学习,简单来说就是,分析输入的内容,判断其类别或者预测其值。💯
分类和回归的区别:
A.预测种类不同
**🍀(1)分类预测的是物体所属的种类,而回顾预测的是物体的具体数值。**例如,最近北京天气变化大,为了能够对明天适宜的衣服以及是否携带雨伞做判断,我们需要根据过去已有的天气情况进行预测。天气可以分为:晴、阴、雨 三类,我们现在已知的是今天及以前的天气情况,预测明天及以后几天的天气情况,如明天阴,后天晴,就是分类。根据今天及前几天的温度,通过之前的气温来预测以后的气温,这就是回归。
**🍀(2)分类输出的是离散值,回归输出的是连续值。**离散就是规定好有有限个类别,而这些类别是离散的;连续就是理论上可以取某一范围内的任意数值。
**🍀(3)分类输出的值是定性的,回归输出的值是定量的。**定性是指确定某种东西的确切的组成有什么或者某种物质是什么,不需要测定该物质的各种确切的数值量。定量是指确定一种成分(某种物质)的确切的数值量,这种测定一般不需要关注测定的物质是什么。例如:这是一杯水,这是定性;这杯水有10毫升,这是定量。
B.目的不同
分类的目的是寻找决策边界,用于对数据集中的数据进行分类;回归的目的是找到最优拟合线,这条线可以最优的接近数据集中的各个点。
C.结果不同
分类的结果没有逼近,只有对错,什么类别就是什么类别,最终结果只有一个。回归是对真实值的一种逼近预测,值不确定,当预测值与真实值相近时,即误差较小时,我们认为这是一个好的回归。(例如一个产品的实际价格为5000元,通过回归分析预测值为4999元,我们认为这是一个比较好的回归分析。
🚀2.常见的分类算法
常用的分类算法有决策树分类法,基于规则的分类算法,神经网络,支持向量机和朴素贝叶斯分类法。
下面主要介绍各个算法的一些特点:
🍀(1)决策树
- 决策树归纳是一种构建分类模型的非参数方法。换句话说,它不要求任何先验假设,不假定类和其他的属性服从一定的概率分布。
- 找到最佳的决策树是NP问题。许多决策苏算法采取启发式的方法指导对假设空间的搜索。
- 即使训练集很大,构建决策树的代价也较小。
- 决策树相对容易解释。
- 决策树算法对于噪声的干扰具有相当好的鲁棒性。
- 冗余属性不会对决策树的准确率造成不利的影响。
- 由于大多数的决策树算法都采用自顶向下的递归划分方法,因此沿着树向下,记录会越来越小。在叶节点,记录可能更少,对于叶节点代表的类,不能做出具有统计意义的判决,产生所谓的数据碎片。
- 子树可能在决策树中重复多次,使得决策树过于复杂,并且更难解释。
🍀(2)基于规则的分类算法
- 规则集的表达能力几乎等价于决策树,因为决策树可以用互斥和穷觉的规则集表示。基于规则的分类器和决策树分类器都对属性空间进行直线划分,并将类指派到每个划分。
- 基于规则的分类器通常用来产生更易于解释的描述性模型,而模型的性能却可与决策树分类器相媲美。
- 被很多基于规则的分类器(如RIPPER)所采用的基于类的规则排序方法非常适用于处理类分布不均衡的数据集。
🍀(3)最近邻分类器
- 最近邻分类器是一种基于实例的学习技术,它使用具体的训练实例进行预测,而不必维护源自数据的抽象。
- 最近邻分类器是一种消极学习方法,它不需要建立模型,然而测试样例的开销很大,因为需要逐个计算测试样例和训练样例之间的相似度。相反,积极学习方法通过花费大量计算资源来建立模型,模型一旦建立,分类测试样例就会非常快。
- 最近邻分类器对噪声非常敏感。因为,最近邻分类器基于局部信息进行预测,而决策树和基于规则的分类器则是在拟合在整个输入空间上的全局模型。
- 最近邻分类器的可以生成任意形状的决策边界,这样的决策边界与决策树和基于规则的分类器通常局限的直线决策边界相比,能够提供更加灵活的模型表示。
- 除非采用适当的邻近性度量和数据预处理,否则最近邻分类可能做出错误的预测。
🍀(4)朴素贝叶斯分类器
- 面对孤立的噪声点,朴素贝叶斯分类器是健壮的。因为在从数据中估计条件概率时,这些点被平均。通过在建模和分类时忽略样例,朴素贝叶斯分类器也可以处理属性值遗漏问题。
- 面对无关属性,该分类器是健壮的。
- 相关属性可能会降低朴素贝叶斯分类器的性能。
🍀(5)贝叶斯信念网络(BBN)
- BBN提供了一种用图形模型来捕获特定领域的先验知识的方法。
- 构造网络可能既费时又费力,然而,一旦网络结构确定下来,添加新变量就十分容易。
- 贝叶斯网络很适合处理不完整的数据。对有属性遗漏的实例可以通过对该属性的所有可能取值的概率求和或求积分来加以处理。
- 因为数据和先验知识以概率的方式结合起来了,所以该方法对模型的过分拟合问题是非常鲁棒的。
🍀(6)人工网络
- 至少含有一个隐藏层的多层神经网络是一种普适近似,即可以用来近似任何目标函数。
- ANN可以处理冗余特征,因为权值在训练过程中自动学习。
- 神经网络对训练数据中的噪声非常敏感。
- ANN权值学习使用的梯度下降方法经常会收敛到局部极小值。避免局部极小值的方法是在权值更新公式中加上一个动量项。
- 训练ANN是一个很耗时的过程,特别是当隐藏结点数量很大时。然而,测试样例分类时非常快
🍀(7)支持向量机的特征(SVM)
- SVM学习问题可以表示为凸优化问题,因此可以利用已知的有效算法发现目标函数的全局最小值。而其他的分类方法都采用一种基于贪心学习的策略来搜索假设空间,这种方法一般只能获得局部最优解。
- SVM通过最大化决策边界边缘来控制模型能力。
- 通过对数据中每个分类属性引入一个哑变量,SVM可以应用于分类数据。
🚀3.常见的回归算法
根据不同的特点和应用场景,回归算法可以分为多个类型,下面介绍一些常见的回归算法的分类。
🍀**(1)线性回归**
- 线性回归是最基本的回归算法之一,其目标是拟合一个线性函数来预测连续的数值型输出。
- 常见的线性回归包括简单线性回归和多元线性回归。
🍀(2)决策树回归
- 决策树回归是一个基于决策树的回归算法。
- 其目标是构建一颗决策树来预测连续的数值型输出。
🍀(3)支持向量回归
- 支持向量回归是一种基于支持向量机的回归算法。
- 其目标是找到一个最大化预测精度的边界,以预测连续的数值型输出。
🍀(4)随机森林回归
- 随机森林回归是一种基于随机森林的回归算法。
- 其目标是使用多个随机树来预测连续的数值型输出。
🍀(5)神经网络回归
- 神经网络回归是一种基于神经网络的回归算法。
- 其目标是通过多个神经元来预测连续的数值型输出。
**以上是常见的回归算法分类,除此之外,还有一些其他的回归算法,如岭回归、lasso回归、弹性网络回归等等,每种算法都有其适用的场景和特点。在实际应用中,需要根据具体的问题和数据特征来选择最合适的回归算法。**📚
🚀4.分类回归术语表
**样本(sample)或输入(input):**进入模型的数据点。
**预测(prediction)或输出(output):**从模型出来的结果
**目标(target):**真实值。对外部数据源,理想情况下,模型应该能够预测出目标。
**预测误差(perdiction error)或损失值(loss value):**模型预测与目标之间的距离。
**类别(class):**分类问题中供选择的一组标签。例如,对猫狗图像进行分类时,"狗"和"猫"就是两个类别。
**标签(label):**分类问题中类别标注的具体例子。比如,如果1,2,3,4号图像被标注为包含类别"狗",那么""狗"就是1,2,3,4号图像的标签。
**真值(ground-truth)或标注(annotation):**数据集的所有目标,通常由人工收集。
**二分类(binary calssification):**一种分类任务,每个输入样本都应该被划分到两个互斥的类别中。
多分类(multiclass classification): 一种分类任务,每个输入样本都应该划分到两个以上的类别中,比如手写数字分类。
**多标签分类(multilabel calssiication):**一种分类任务,每个输入样本都可以分配多个标签。举个例子,如果一幅图像里可能既有猫又有狗,那么应该同时标注"猫"标签和"狗"标签。每幅图像的标签个数通常是可变的。
**标量回归(scalar regression):**目标是连续标量值的任务。预测房价就是一个很好的例子,不同的目标价格形成一个连续的空间。
**向量回归(vector reression):**目标是一组连续值(比如一个连续向量)的任务。如果对多个值(比如图像边界框的坐标)进行回归,那就是向量回归。
**小批量(mini-batch)或批量(batch):**模型同时处理的一小部分样本(样本数通常为8-128)。样本数通常取2的幂,这样便于GPU上的内存分配。训练时,小批量用来为模型权重计算一次梯度下降更新。
**优化(optimization):**指调节模型以在训练数据上得到最佳性能(即机器学习中的学习)。
**泛化(generalization):**指训练好的模型在前所未见的数据上的性能好坏。机器学习的目的就是得到更好的泛化。
🚀5.参考文章
作者:水亦心;文章:【机器学习小常识】"分类" 与 "回归"的概念及区别详解