吴恩达机器学习笔记1--回归与分类

1.什么是机器学习?

1.Tom Mitchell(定义):计算机程序从经验E中学习,解决某一任务T,进行某一性能度量P,测定P在T上的表现因经验E而提高。
2.机器学习分为监督学习和无监督学习。

2.监督学习和无监督学习

1.监督学习大致分为回归问题和分类问题。回归问题的目标是预测出连续的目标输出,分类问题则是预测出离散的目标输出。
2.监督学习给定的数据有标签。而无监督学习不给定数据标签,需要机器自己学习数据的内在联系进行分类。

3.模型的构建

监督学习是需要根据数据原有的标签对模型预测的值进行比较找出差距,并根据差距调整模型参数,然后在根据新的参数计算模型预测值与标签的差距,再根据差距调整模型参数,通过这种不断迭代的过程,使我们的模型的预测值与真实值接近,模型参数达到最优。因此如何构建一个合适的模型能很好的表达数据与标签的关系是及其重要的。

3_1.回归模型构建

假设函数: h θ ( x ) = θ 0 + θ 1 x h_{\theta }(x)=\theta _{0}+\theta _{1}x hθ(x)=θ0+θ1x
代价函数: J ( θ 0 , θ 1 ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 J\left ( \theta _{0} ,\theta _{1} \right )=\frac{1}{2m}\sum_{i=1}^{m}\left ( h_{\theta }\left ( x^{(i)} \right )-y^{(i)} \right )^{2} J(θ0,θ1)=2m1i=1m(hθ(x(i))y(i))2
优化目标: m i n J ( θ 0 , θ 1 ) minJ\left (\theta _{0}, \theta _{1} \right ) minJ(θ0,θ1)
参数更新(梯度下降法): θ j = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 ) \theta _{j}=\theta _{j}-\alpha \frac{\partial }{\partial \theta _{j}}J(\theta _{0},\theta _{1}) θj=θjαθjJ(θ0,θ1)

3_2.逻辑回归模型的构建

假设函数: h θ ( x ) = g ( θ T x ) g ( z ) = 1 1 + e − z h_{\theta }(x)=g(\theta ^{T}x)\\[2mm]g(z)=\frac{1}{1+e^{-z}} hθ(x)=g(θTx)g(z)=1+ez1
代价函数: C o s t ( h θ , y ) = {   − l o g ( h θ ( x ) ) i f   y = 1   − l o g ( 1 − h θ ( x ) )   i f   y = 0 整 理 得 : J ( θ ) = 1 m [ ∑ i = 1 m y ( i ) l o g   h θ ( x ( i ) ) + ( 1 − y ( i ) ) l o g ( 1 − h θ ( x ( i ) ) ) ] Cost(h_{\theta },y)=\left\{\begin{matrix} \ -log (h_{\theta }(x)) \qquad if \ y=1\\[2mm] \ -log(1-h_{\theta }(x)) \ if\ y=0 \end{matrix}\right.\\[2mm] 整理得:J(\theta )=\frac{1}{m}[\sum_{i=1}^{m}y^{(i)}log\ h_{\theta }(x^{(i)})+(1-y^{(i)})log(1-h_{\theta }(x^{(i)}))] Cost(hθ,y)={ log(hθ(x))if y=1 log(1hθ(x)) if y=0J(θ)=m1[i=1my(i)log hθ(x(i))+(1y(i))log(1hθ(x(i)))]
优化目标: m i n J ( θ ) minJ\left (\theta \right ) minJ(θ)
参数更新(梯度下降法): θ j = θ j − α ∂ ∂ θ j J ( θ ) \theta _{j}=\theta _{j}-\alpha \frac{\partial }{\partial \theta _{j}}J(\theta ) θj=θjαθjJ(θ)
回归与逻辑回归(本质是分类)的参数更新函数相同但h(x)的表达式已经发生了变化。

4.梯度下降法中的技巧

当我们特征(数据)从数值上差距较大,会使我们的特征分布在一个窄而狭长的范围,在进行梯度下降时,梯度下降的学习率在任一特征维度都是相同的,那么当学习率适合其中一个特征维度时,必然不适用于另一个。因此我们需要在训练前对特征进行标准化,使我们的特征在不同维度上分布在相似范围时学习率对任意维度都适用。

5.正规方程

梯度下降法需要不断迭代,消耗计算机资源,而正规方程可以通过对代价函数的求导直接解出各参数的最优解。参数的解为: θ = ( X T X ) − 1 X T y \theta =(X^{T}X)^{-1}X^{T}y θ=(XTX)1XTy
由公式可知解正规方程需要特征矩阵的转置乘以特征矩阵这一项可逆且计算量小。当该项不可逆时,该矩阵为奇异矩阵,我们可以通过以下方法可能得到可逆的新矩阵:
1.是否有相关性很强的特征,如果有只保留一个。
2.数量上是否存在过多特征,如果有删除一部分无用特征。
已知一个矩阵的转置计算量随矩阵维度的增加呈指数级增长,此时的矩阵维度是N×N,其中N是特征数。因此,当特征数N=10000时,正规方程将不再适用。

6.过拟合

当数据过少而构建的模型过于复杂时模型会在训练集上出现过拟合,而在测试集上表现很差,训练出来的模型泛化能力很弱,我们需要避免这种情况。
通常解决方法有两种但本质是相同的,一种是去除冗余的特征,二是正则化。正则化就是对最小化经验误差函数上加约束,这样的约束可以解释为先验知识。约束有引导作用,在优化误差函数的时候倾向于选择满足约束的梯度减少的方向,使最终的解倾向于符合先验知识。

7.正则化

7_1.回归问题的正则化
梯度下降法的正则化公式

正则化后的代价函数如下:
J ( θ 0 , θ 1 ) = 1 2 m [ ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 + λ ∑ j = 1 m θ j 2 ] J\left ( \theta _{0} ,\theta _{1} \right )=\frac{1}{2m}\left [ \sum_{i=1}^{m}\left ( h_{\theta }\left ( x^{(i)} \right )-y^{(i)} \right )^{2}+\lambda \sum_{j=1}^{m} \theta _{j}^{2}\right ] J(θ0,θ1)=2m1[i=1m(hθ(x(i))y(i))2+λj=1mθj2]
参数更新(梯度下降法):
{ θ 0 = θ 0 − α 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y i ) x 0 ( i ) θ j = θ j ( 1 − α λ m ) − α 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y i ) x j ( i ) \left\{\begin{matrix} \theta _{0}=\theta _{0}-\alpha \frac{1}{m}\sum_{i=1}^{m}(h_{\theta }(x^{(i)})-y^{i})x_{0}^{(i)}\\[2mm]\theta _{j}=\theta _{j}(1-\alpha \frac{\lambda }{m})-\alpha \frac{1}{m}\sum_{i=1}^{m}(h_{\theta }(x^{(i)})-y^{i})x_{j}^{(i)} \end{matrix}\right. θ0=θ0αm1i=1m(hθ(x(i))yi)x0(i)θj=θj(1αmλ)αm1i=1m(hθ(x(i))yi)xj(i)

正规方程的正则化公式

θ = ( X T X + λ A ) − 1 X T y \theta =(X^{T}X+\lambda A )^{-1}X^{T}y θ=(XTX+λA)1XTy
其中A是除第一个值为0其余对角线值为1的维度为N+1的矩阵,并且已知当该方程中的项一定是可逆矩阵。

7_2.分类问题的正则化

分类问题正则化后的各类函数与上面回归问题的梯度下降法的公式符号相同故不再重复。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值