由于实践需要,需要学习分类和回归的相关知识

1.分类与回归的作用

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

2.分类与回归的区别

2.1输出不同

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

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

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

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

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

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

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

2.2目的不同

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

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

2.3本质不同

“回归与分类的根本区别在于输出空间是否为一个度量空间。”

我们不难看到,回归问题与分类问题本质上都是要建立映射关系:

而两者的区别则在于:

  • 对于回归问题,其输出空间B是一个度量空间,即所谓“定量”。也就是说,回归问题的输出空间定义了一个度量 去衡量输出值与真实值之间的“误差大小”。例如:预测一瓶700毫升的可乐的价格(真实价格为5元)为6元时,误差为1;预测其为7元时,误差为2。这两个预测结果是不一样的,是有度量定义来衡量这种“不一样”的。(于是有了均方误差这类误差函数)。
  • 对于分类问题,其输出空间B不是度量空间,即所谓“定性”。也就是说,在分类问题中,只有分类“正确”与“错误”之分,至于错误时是将Class 5分到Class 6,还是Class 7,并没有区别,都是在error counter上+1。

2.4结果不同

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

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

3.场景应用

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

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

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

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