Stanford机器学习---第三周.逻辑回归、正则化

第三周 逻辑回归与正则化

学完前三周简要做个总结,梳理下知识框架:



第一讲 逻辑回归Logistic Regression


1.分类问题Classification Problem

for example

->Email: Spam / Not Spam 判断一封邮件是不是垃圾邮件?

->Online Transaction:Fraudulent(Yes/NO)?判断某个网络交易是否是诈骗?

->Tumor:Malignant / Benign?判断肿瘤是恶性还是良性?

综上,分类问题就是这样一类问题:针对某个实际样本,根据某种标准,判断它属于哪一个类别,其最终结果是离散的输出值。

分类问题在生活中很常见,除了以上的例子外,想对某水体采样判断水质的酸碱性、对某地大气采样判断其空气污染级别,以上问题的解决都属于今天我们讨论的话题。

2.名次解释

   对于分类classification问题,要构建逻辑回归模型去预测,注意:这里的逻辑回归虽然也有‘回归’二字,但并不是针对回归问题而言,因为其预测的结果是离散值,所以不要被“回归”二字混淆,逻辑回归并不属于回归问题。

3.假设函数Hypothesis

分类问题要求Classification: y = 0 or 1

相应地预测结果 h(x) need to be limited to : 0 <= h(x) <= 1

所以,对于逻辑回归中的假设函数我们有如下定义(在线性回归模型上进行改进):


当样本预测结果h(x)>=0.5时,预测输出值y=1;若h(x)<0.5时,预测输出值y = 0;

所以这使得假设函数h(x)有这样的物理意义:h(x)表征预测结果y=1的概率;


4.决策边界Decision boundary

决策边界是假设函数h(x)的一个属性,当通过训练集拟合出了一条曲线-----即x对应的θ确定,那么相应的决策边界也就确定。

决策边界就是θ^(T)x=0的曲线,曲线的两侧分别对应y=0 or 1。根据一个样本落在曲线的哪一侧,从而对结果进行决策。


4.代价函数J(θ)

代价函数J如果采用线性回归模型中的平方误差函数定义,得到的J是一个non-convex(凸),采用梯度下降不易得到全局最优解,这里我们采用概率论中的极大似然估计对J做一个凸优化,有:


整理可得:

               

   代价函数虽然重新定义,但是更符合逻辑问题的预测情况,当y=1时:若h(x)->1,cost->0;若h(x)->0,cost->

∞,代价函数J很好的体现了“代价”这一含义。

★★★5.逻辑回归模型Logistic Regression Model

与线性回归模型的区别:y = 0 or 1 

                                 0 <= h(x) <= 1 

①假设/拟合函数Hypothesis:



②参数Parameter:


③代价函数Cost Function:


④目标Goal: 



对于逻辑回归模型Logistic Regression Model的求解主要有:梯度下降和高级优化算法。

6.梯度下降Gradient Decent

    梯度下降算法在第二周的线性回归模型中有详细描述,思路就是沿着J(θ)偏导数的方向以α的步伐下降,同时同步更新θ,迭代下去直至J(θ)收敛。

    对于Logistic Regression由于J(θ)有变化,梯度下降算法虽然在原理上没有任何变化,就其表达形式我们也重新做一下推导:

   

对于θ的更新第二个等号的后面表达式的由来,就是对J(θ)求偏导,笔者曾经详细的推导过,利用了一点g(z)函数的性质和适当的换元,感兴趣的读者可以试着推到下,最终你会惊人的发现:逻辑回归在改变J的前提下梯度下降算法的表达形式与Linear Regression表达形式出奇的一致:-),当然,h(x)的形式不同啦!QAQ

7.高级优化算法Advanced Optimization

   Andrew Ng在这里讲到了三种高级优化算法,它们的高级是指相对于梯度下降算法而言,有更快的收敛速度和自适应性,无需人工选择学习速率α,缺点就是太复杂。

   Andrew Ng坦言,对于这些高级优化算法,重要的是成功应用这些算法于不同的学习问题,而不太需要真正理解这些算法的内环间在做什么。


8.多类别分类问题Multi-class classification

之前讲的都是两种输出y = 0 or 1,实际生活中会遇到多种类别的问题,解决这类多类别分类问题的基础,就是之前的逻辑回归。

for example

Weather : Sunny , Cloudy , Rain , Snow(预测天气情况)

Email tagging : Work , Friends , Family , Hobby(邮件归类)

这时候相应的,y = 1 , 2 , 3 ,4 ....

One-vs-all思路:

选中某一类,其余归于一类,对于这样的逻辑回归问题进行求解得到分类器h1(x);

再依次选择其他类别,分别求解得到h2(x)....hn(x)(假设有n类)

最终,对某个样本x进行预测时,挑选hi(x)中的最大值(可以理解为交集)



第二讲 正则化Regularization

正则化是一种处理过拟合问题的有效手段,Andrew Ng调侃道熟练掌握和使用梯度下降+高级优化算法+正则化,就能在silicon valley混得不错TAT.

1.过拟合现象overfitting

所谓的过拟合,就是特征量冗余,导致拟合函数虽然能够很好的满足训练集,但是波动性大、方差大,对于新的样本值不能很好的预测(用老话讲,有点“过犹不及”的味道)

以下是欠拟合、正确拟合、过拟合的图示比较,更直观一些:


解决过拟合的方法,这里介绍用处很大的正则化方法Regularization

★★★2.正则化对代价函数的改进

思路:引入θ求和项对1-n的θ进行惩罚,λ称为正则化参数


因为有sigmaθ项的存在,在最小化代价函数的最终结果除了θ0外所有的θ都趋近于0。

λ很大时,拟合曲线趋近于一条水平直线,结果欠拟合,且梯度下降算法不能很好工作,通常λ选作1,就可以优化过拟合的情况。

至于如何将正则化的原理应用到线性回归模型、逻辑回归模型中去,就需要包括笔者在内的大家在实际问题中去动手实践了!~


第三周的课程结束,伴随着寒假的来临,临近新年要给自己大大的礼物才是,明天week4,Go~生气







发布了201 篇原创文章 · 获赞 45 · 访问量 25万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章