在理解这个问题之前我先提出几个问题:
- 什么是回归?
- 一般是如何实现回归?
- 神经网络又是如何实现回归的?
回归用于对连续值进行预测。
回归分析是一种统计学上分析数据的方法,目的在于了解两个或多个变量之间是否相关、相关方向和强度,并简历数学模型以便观察特定变量来预测研究者感兴趣的变量。
回归模型一般可定义为如下:
其中X为自变量,Y为因变量,β为未知参数。
最简单的回归模型就是单元线性回归:
此外,还有多元线性回归、对数线性回归。在非线性回归中有逻辑回归、偏最小二乘回归、自回归等等。Btw:逻辑回归一般用于二分类,本来输出的是个连续变量,只是设了一个阈值0.5就可以将其分为0,1两类了。
神经网络就是一种非线性模型
神经网络的初衷是用于分类(或者说现在大多神经网络都用于分类),如果用神经网络来做回归预测,一般是把神经网络当作特征提取器,得到特征向量后再训练线性回归模型。而最简单的做法就是最后一层不激活,直接输出(也可以换成其他线性分类器),然后损失函数改为均方误差函数就可以了。
比较典型的回归例子可以参考Bounding box回归和关键点回归(Deeppose)