吴恩达机器学习笔记(二)

逻辑回归详解:分类、决策边界与正则化

四. 逻辑回归

1. 分类问题

在分类问题中,要预测的变量 𝑦 是离散的值,尝试预测的是结果是否属于某一个(例如正确或错误)。


线性回归算法

线性回归算法,因为其预测的值可以超越[0,1]的范围,不适用于分类问题,引入逻辑回归 (Logistic Regression)算法

2. 假说表示

我们希望想出一个满足某个性质的假设函数,这个性质是它的预测值要在 0 和 1 之间。

逻辑回归模型的假设是:{\color{Red} h{_\theta}(x)=g(\theta{^T}X)}其中: 𝑋 代表特征向量,𝑔 代表逻辑函数(logistic function)是一个常用的逻辑函数为 S 形函数(Sigmoid function),公式为:{\color{Red} g(z)=\frac{1}{1+e{^-^z}}}

 
sigmoid function

ℎ𝜃(𝑥)的作用是,对于给定的输入变量,根据选择的参数计算输出变量=1的可能性(estimated probablity)即 {\color{Red} h{_\theta}(x)=p(y=1|x;\theta)}

3. 判定边界(决策界限)

(1)在逻辑回归中,我们预测:

当ℎ𝜃 (𝑥) >= 0.5时,预测 𝑦 = 1。

当ℎ𝜃 (𝑥) < 0.5时,预测 𝑦 = 0 。

(2)在sigmoid函数中:z>=0,g(z)>=0.5;z<0,g(z)<0.5

(3){\color{Red} \theta{^T}X}<0,y=0;{\color{Red} \theta{^T}X}>=0,y=1


 决策边界

{\color{Red}\theta{^T}X=0 } 为决策边界(decision boundar)

4. 代价函数

对于线性回归模型,我们定义的代价函数是所有模型误差的平方和。若对逻辑回归模型沿用这个定义,由于sigmoid函数的影响,得到的代价函数将是一个非凸函数(non-convexfunction)。代价函数有许多局部最小值,影响梯度下降算法寻找全局最小值。

凹凸性:


同济高等数学定义

*同济大学出版的高数中关于函数凹凸性的定义与国际上的相反

凸函数 convex function


国际上convex function

斜率增加(单调不减),二阶导为正。

凸函数性质:局部最小值是全局最小值(得到的解一定是全局最优解)

(1)需定义一个为凸函数的代价函数:(极大似然思想)

逻辑回归的代价函数为:J(\theta)=\frac{1}{m}\sum_{i=1}^{m}Cost(h{_\theta}(x^{(i)}),y^{(i)})

 {\color{Red} Cost(h{_\theta}(x),y)= \left\{\begin{matrix} -log(h{_\theta}(x)) & if y=1\\ -log(1-h{_\theta}(x)) & if y=0 \end{matrix}\right.}

 

(2)代价函数特点:当实际 y=1 且 h{_\theta}(x) 也为1时,误差为0;当 y=1 但 h{_\theta}(x) 不为1时,误差随 h{_\theta}(x) 变小而增大(差的越多,代价增大的越快)。y=0 时同理。

 (3)简化代价函数:

{\color{Red} Cost(h{_\theta}(x),y)=-y\times log(h{_\theta}(x))-(1-y)\times log(1-h{_\theta}(x))}  {\color{Red} J(\theta)=-\frac{1}{m} \sum _{i=1}^{m} [y^{(i)}log(h{_\theta}(x^{(i)}))+(1-y^{(i)})\times log(1-h{_\theta}(x^{(i)}))]}

写成一个式子,方便梯度下降

5. 梯度下降

goal:找尽量让J(θ)取得最小值的参数θ

 
梯度下降模板

 
求导并带入

推导后发现与逻辑回归与线性回归得到的梯度下降公式相同,但是 h{_\theta}(x) 两者不同,具体带入时有区别。

同时更新:for循环、向量化

6. 高级优化

共轭梯度法、BFGS (变尺度法) 、L-BFGS (限制变尺度法)

优点:无需人工选择参数α(智能内部循环:线性搜索)、运算速度比梯度下降更快
缺点:更加复杂

7. 多类别分类:一对多


原理

拟合出三个分类器{\color{Red} h^{(i)}_{\theta}(x)=P(y=i|x;\theta)\; \; (i=1,2,3)}

在预测时,将所有的分类机运行一遍,对每一个输入变量都选择最高可能性的输出变量。

五. 正则化

1. 过拟合

e.g. 线性回归


欠拟合、合适、过拟合

e.g. 逻辑回归


欠拟合、合适、过拟合

(1)欠拟合、高偏差:

说明没有很好的拟合训练数据

解决办法:增加特征,如增加多项式

(2)过拟合,高方差:

拟合训练数据过于完美,J(θ) ≈ 0,导致模型的泛化能力很差,对于新样本不能准确预测

解决办法:减少特征个数:人工/模型选择算法(PCA)

                  正则化:保留所有特征,减小参数维度(magnitude)

2. 代价函数

高次项导致的过拟合的产生,让这些高次项的系数接近于0的话,就能很好的拟合。

正则化基本方法:加入惩罚项,在一定程度上减小某些参数𝜃的值。

代价函数:

(1)线性回归:

J(\theta)=\frac{1}{2m}[\sum_{i=1}^{m}(h_{\theta}(x^{(i)})-y^{(i)})^{2}{\color{Red} +\lambda \sum_{j=1}^{n}\theta_{j}^{2}}]
λ:正则化参数(Regularization Parameter)


正则化前后对比

如果正则化参数 λ 过大,所有的 𝜃 的值(不包括𝜃0)都会在一定程度上减小,可能会欠拟合,应选取合理的 λ 值。

(2)逻辑回归:

J(\theta)=-\frac{1}{m} \sum _{i=1}^{m} [y^{(i)}log(h{_\theta}(x^{(i)}))+(1-y^{(i)})\times log(1-h{_\theta}(x^{(i)}))]{\color{Red} +\frac{\lambda}{2m}\sum_{j=1}^{n}\theta_{j}^{2}}

3. 线性回归的正则化

(1)梯度下降法

(2)正规方程法


矩阵尺寸为(n+1)*(n+1)

 正规方程法需满足矩阵可逆,加入正则化项后矩阵一定可逆,无需考虑不可逆的情况。

4. 逻辑回归的正则化

(1)梯度下降法

 与线性回归的区别是具体带入的 h_{\theta}(x) 不同。

(2)高级优化算法

Octave 中,我们依旧可以用 fminuc 函数来求解代价函数最小化的参数,值得注意的是参数𝜃0的更新规则与其他情况不同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值