分类和回归的区别在于输出变量的类型。

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

回归是统计学的一个重要概念,其本意是根据之前的数据预测一个准确的输出值。

回归算法:线性回归是一种基本的回归算法,当给出相应的训练集后,通过线性回归来寻找合适参数θ(向量)使得Hypothesis函数的Cost function最小。

分类算法:逻辑回归是一个分类算法,逻辑回归的Hypothesis和线性回归非常相似,唯一的区别在于外层的sigmoid function。

sigmoid:简单来说,当参数大于0时,则函数值趋近于1,而当参数值小于0时,函数值趋近于0。因此逻辑回归的Hypothesis可以解释为样本x属于正类型的概率。当θx>0后,概率趋近于1,反之则趋近于0。

1.线性回归(Linear regression)

线性回归分析常用于分析两个变量X和Y 之间的关系,例如X为尺寸 ,Y为房价之间的关系。

房价预测

迭代优化过程

深度学习分类算法改成回归算法 分类和回归算法_分类

深度学习分类算法改成回归算法 分类和回归算法_逻辑回归_02

深度学习分类算法改成回归算法 分类和回归算法_代价函数_03

深度学习分类算法改成回归算法 分类和回归算法_代价函数_04

 

深度学习分类算法改成回归算法 分类和回归算法_深度学习分类算法改成回归算法_05

数据集(训练实例)

深度学习分类算法改成回归算法 分类和回归算法_代价函数_06

线性模型

 

深度学习分类算法改成回归算法 分类和回归算法_深度学习分类算法改成回归算法_07

参数

 

深度学习分类算法改成回归算法 分类和回归算法_逻辑回归_08

如何确定参数?

误差

将模型与数据点之间的距离差 之和做为 衡量匹配好坏的标准。  误差越小,  匹配程度越大。

深度学习分类算法改成回归算法 分类和回归算法_深度学习分类算法改成回归算法_09

代价函数(Cost function)

我们想要找到的模型, 最后是想要使 f(x) 最大程度地 与y相似, 所以我们想要尽量地减少 f(x)与y之间的差值。 

深度学习分类算法改成回归算法 分类和回归算法_分类_10


最小二乘法(又称最小平方法)是一种数学优化技术。它由两部分组成:


一、计算 所有样本误差的平均(代价函数)


二、使用最优化方法寻找数据的最佳函数匹配(抽象的)


最小二乘法是抽象的,具体的最优化方法有很多,比如 正规方程法、梯度下降法 、牛顿法、拟牛顿法等等。



深度学习分类算法改成回归算法 分类和回归算法_深度学习分类算法改成回归算法_11


最小二乘法为什么使用平方而不是绝对值?


保证结果为正数


平方形式会让损失值更加接近于0


平方可以是一条平滑曲线,可以进行求导操作(越接近最优值,速度越慢)






深度学习分类算法改成回归算法 分类和回归算法_逻辑回归_12




梯度下降(Gradient descent)


梯度下降是一个用来求函数最小值的算法,我们将使用梯度下降算法来求出代价函数 J(θ0,θ1) 的最小值。



梯度下降背后的思想是:开始时我们随机选择一个参数的组合( θ0,θ1 ),计算代价函数,然后我们寻找下一个能让代价函数值下降最多的参数组合。


深度学习分类算法改成回归算法 分类和回归算法_回归_13


学习率(learning rate)

大于0的一个很小经验值,它决定沿着能让代价函数下降的程度有多大。

每一次都同时让所有的参数减去学习速率乘以代价函数的导数。

 

深度学习分类算法改成回归算法 分类和回归算法_逻辑回归_14

深度学习分类算法改成回归算法 分类和回归算法_分类_15

如果 α 太小,梯度下降就会变慢。

深度学习分类算法改成回归算法 分类和回归算法_深度学习分类算法改成回归算法_16

如果α太大,梯度下降法可能会越过最低点。甚至可能无法收敛,或者偏离。

深度学习分类算法改成回归算法 分类和回归算法_分类_17

回归模型性能度量方式

机器学习模型到底对数据的预测效果如何,这就需要一个标准,就是性能度量。


常用指标


均方误差   mean square error


mse   均方误差


深度学习分类算法改成回归算法 分类和回归算法_代价函数_18










均方误差根  root mean square error


rmse  均方误差根



深度学习分类算法改成回归算法 分类和回归算法_回归_19











均绝对值误差   mean absolute error


mae   均绝对值误差



深度学习分类算法改成回归算法 分类和回归算法_回归_20










R平方值( R 方)  r2 score


R** 2         R 平方 



深度学习分类算法改成回归算法 分类和回归算法_回归_21


2.逻辑回归(Logistic regression)

电路正负极分类

迭代优化过程

深度学习分类算法改成回归算法 分类和回归算法_代价函数_22

深度学习分类算法改成回归算法 分类和回归算法_代价函数_23

 

深度学习分类算法改成回归算法 分类和回归算法_代价函数_24

逻辑回归是一种描述数字电路特点的工具。输出量是高、低电平,可以用二元常量(0,1)来表示。0作为负类别(错误,相对不太受关注的类别),1作为正类别(正确,相对受关注高的类别)。

我们可以直接使用线性回归处理二分类问题吗?

1>不可以,如果使用线性回归,那么线性回归模型的输出值可能远大于1,或者远小于0。

2>导致代价函数很大。不适合快速计算。

逻辑回归算法的思想是:它的输出值永远在0 到1 之间。

这里就使用到sigmoid函数(S型生长曲线)。

深度学习分类算法改成回归算法 分类和回归算法_深度学习分类算法改成回归算法_25

其中z代表的就是之前学习过的线性回归,逻辑回归中的回归由此而来。

逻辑回归输出值范围为0-1(输出正类别的概率),其中设置阈值为0.5;

如果数值大于0.5,属于1类别(正类别概率大于0.5);

如果数值小于0.5,属于0类别(正类别概率小于0.5);

通过sigmoid函数,将线性问题,转换为概率问题。

我们想要根据电路,来预测电路的正负极,我们能不能用回归的方法做呢?  显然是可以的, 我们只要找到一个模型,然后再进行匹配就可以了。
但是因为分类问题的y值常常是一些离散的数字,(比如, 正极为1, 负极为0), 所以我们已经不能用一个 简单的线性函数来拟合这些数据了。我们需要一个更逼真的模型。 

于是我们引入了一个更适合处理分类问题的函数一个 非线性函数, 阶跃函数。

Sigmoid function

深度学习分类算法改成回归算法 分类和回归算法_深度学习分类算法改成回归算法_26

代价函数(Cost function)

熵是用来衡量信息不确定性的单位(概率和信息量乘积)

交叉熵

用来检验实际发生概率和预测准确率信息量的乘积

简单来说,当参数大于0时,则函数值趋近于1,而当参数值小于0时,函数值趋近于0.因此逻辑回归的Hypothesis可以解释为样本x属于正类别的概率。当θ.Tx>0后,概率趋近于1,反之则趋近于0。由此得到Cost function如下:

深度学习分类算法改成回归算法 分类和回归算法_深度学习分类算法改成回归算法_27

Cost function看上去复杂,实际上如果自习分析,其实函数表示的意义非常简单,当预测的概率越接近真实情况,代价函数越接近0,反之则趋近于无穷大。

梯度下降(Gradient descent)

深度学习分类算法改成回归算法 分类和回归算法_深度学习分类算法改成回归算法_28