coursera机器学习-logistic回归,正则化
#对coursera上Andrew Ng老师开的机器学习课程的笔记和心得;
#注:此笔记是我自己认为本节课里比较重要、难理解或容易忘记的内容并做了些补充,并非是课堂详细笔记和要点;
#标记为<补充>的是我自己加的内容而非课堂内容,参考文献列于文末。博主能力有限,若有错误,恳请指正;
#---------------------------------------------------------------------------------#
logistic function(sigmoid function):g(z) = 1/(1 + e-z),z是一个实数;
我们的预测函数是:;
logistic函数的图形:
, z>0时,g(z)>0.5;z<0时,g(z)<0.5;
#---------------------------------------------------------------------------------#
Cost function for logistic regression
;
线性回归的Cost function:
,
也可以写成:
;
如果我们使用这个函数作为逻辑回归的代价函数,那么它是非凸函数,不利于最优化;
逻辑回归代价函数的凸函数版本:
,
,,纵坐标为Cost function;
将上世合并得最终使用的代价函数: cost(hθ, (x),y) = -ylog( hθ(x) ) - (1-y)log( 1- hθ(x) );
使逻辑回归代价函数最小化:
#---------------------------------------------------------------------------------#
Advanced optimization:conjugate gradient,BFGS,L-BFGS;
用这写方法的优点:
1,No need to manually pick alpha (learning rate);
2,Often faster than gradient descent;
3,Can be used successfully without understanding their complexity;
缺点:
1,Could make debugging more difficult;
2,Should not be implemented themselves;
3,Different libraries may use different implementations - may hit performance;
#---------------------------------------------------------------------------------#
多元分类问题
方法: 使用一对多的方法逐项分类,每次分出一个类;
;
还有一对一的方法,这两种方法的优缺点可见台湾大学机器学习第六周第十一讲的内容;
#---------------------------------------------------------------------------------#
过拟合问题:
underfit <=> higher bias;
overfit <=> higher variance, =>unable to generalize (apply to new examples),即不能用来做预测;
;
如何处理过拟合?
1) 减少特征数量
可用人工选择要保留的特征;
也可用模型来选择特征;
减少特征会失去一些信息,即使特征选的很好;
2) 正则化(Regularization)
保留所有特征,但减少θ的大小;
当我们有很多特征时,这个方法非常有效;
<补充>模型选择的典型方法是正则化。正则化是结构风险最小化策略的实现,是在经验风险上加一个正则化项(regularizer)或惩罚项(penalty term)。正则化项一般是模型复杂度的单调递增函数,模型越复杂,正则化项就越大;
<补充>正则化的作用是选择经验风险最小和模型复杂度同时较小的模型;从贝叶斯估计的角度来看,正则化项对应于模型的先验概率;
#---------------------------------------------------------------------------------#
正则化的代价函数最优化
;
;
;
λ 是正则化参数;使得某几项θ变的很小;
如果λ很大,那么所有的θ参数都会变得很小,造成 underfitting,bias;
#---------------------------------------------------------------------------------#
线性回归的正则化
;
,
也即是
;
Regularization with the normal equation
;
逻辑回归的正则化
;
#---------------------------------------------------------------------------------#
Advanced optimization of regularized linear regression
;
#---------------------------------------------------------------------------------#
参考文献:
《统计学习方法》,李航著;
coursera: standford machine learning, by Andrew Ng;
coursera: 台湾大学機器學習基石,by 林軒田;
coursera机器学习-logistic回归,正则化的更多相关文章
- 机器学习——logistic回归,鸢尾花数据集预测,数据可视化
0.鸢尾花数据集 鸢尾花数据集作为入门经典数据集.Iris数据集是常用的分类实验数据集,由Fisher, 1936收集整理.Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集.数据集包含150个数 ...
- 机器学习——Logistic回归
1.基于Logistic回归和Sigmoid函数的分类 2.基于最优化方法的最佳回归系数确定 2.1 梯度上升法 参考:机器学习--梯度下降算法 2.2 训练算法:使用梯度上升找到最佳参数 Logis ...
- 机器学习——Logistic回归
参考<机器学习实战> 利用Logistic回归进行分类的主要思想: 根据现有数据对分类边界线建立回归公式,以此进行分类. 分类借助的Sigmoid函数: Sigmoid函数图: Sigmo ...
- 机器学习--Logistic回归
logistic回归 很多时候我们需要基于一些样本数据去预测某个事件是否发生,如预测某事件成功与失败,某人当选总统是否成功等. 这个时候我们希望得到的结果是 bool型的,即 true or fals ...
- 机器学习 Logistic 回归
Logistic regression 适用于二分分类的算法,用于估计某事物的可能性. logistic分布表达式 $ F(x) = P(X<=x)=\frac{1}{1+e^{\frac{-( ...
- 机器学习-- Logistic回归 Logistic Regression
转载自:http://blog.csdn.net/linuxcumt/article/details/8572746 1.假设随Tumor Size变化,预测病人的肿瘤是恶性(malignant)还是 ...
- 吴恩达-机器学习+Logistic回归分类方案
- Spark2.0机器学习系列之4:Logistic回归及Binary分类(二分问题)结果评估
参数设置 α: 梯度上升算法迭代时候权重更新公式中包含 α : http://blog.csdn.net/lu597203933/article/details/38468303 为了更好理解 α和 ...
- 机器学习实战之Logistic回归
Logistic回归一.概述 1. Logistic Regression 1.1 线性回归 1.2 Sigmoid函数 1.3 逻辑回归 1.4 LR 与线性回归的区别 2. LR的损失函数 3. ...
随机推荐
- 图说hibernate注释--xml里配置参数(一)
****************************************************************************************[来自我另一博文]
- WPS添加页码不是从首页开始
A.页码从第二页开始 "插入"--"页码"--"格式"--不选"续前页"--"起始页码"设为0 &q ...
- Oracle的建立表格
找到table右键点击,选择新建: 输入名称,用拼音或者英文,中文容易出现错误.输入完名称选择列: 列也写好名称,类型可以选择,VARCHAR2()是字符串类型,括号里面写数字代表长度,英文字母和数字 ...
- Scalaz(11)- Monad:你存在的意义
前面提到了scalaz是个函数式编程(FP)工具库.它提供了许多新的数据类型.拓展的标准类型及完整的一套typeclass来支持scala语言的函数式编程模式.我们知道:对于任何类型,我们只需要实现这 ...
- 我的css笔记
1.css的使用方法 内嵌样式 <p style="font-size:20pt;color:red;">这个Style定义<p> <!--里面的文字 ...
- selenium webdriver读取excel进行数据驱动测试
最近做自动化需要从文件读取数据做参数化,网上发现一个不错的解决方案. 准备:新建一个excel文件,文件名为测试类名,sheet名为测试方法名 excel第一行为标题,从第二行开始为测 ...
- Guacamole之实现和架构(一)
摘要 在网上看到一篇Guacamole官方手册的翻译,但是找不到后续,于是想自己也翻译几篇,有时间的话,会尽量多翻译一些.第一篇就直接转载过来了. Guacamole的介绍以及架构 Guacamole ...
- 【CSS3】CSS3:border-image的详解和实例
border-image简介 border-image是CSS3中的新特性.目前几乎所有的主流浏览器都已经支持该特性,详情请移步border-image的兼容性. border-image属性及使用说 ...
- 基于jPlayer的三分屏制作
三分屏,这里的三分屏只是在一个播放器里同时播放三个视频,但是要求只有一个控制面板同时控制它们,要求它们共享一个时间轨道.这次只是简单的模拟了一下功能,并没有深入的研究. 首先,需要下载jPlayer, ...
- js异步编程
前言 以一个煮饭的例子开始,例如有三件事,A是买菜.B是买肉.C是洗米,最终的结果是为了煮一餐饭.为了最后一餐饭,可以三件事一起做,也可以轮流做,也可能C需要最后做(等A.B做完),这三件事是相关的, ...