Coursera Machine Learning Week3 学习笔记

【Machine Learning, Coursera】机器学习Week3 Logistic Regression 本节内容:1. 逻辑回归(logistic regression)的假设函数形式和代价函数形式 2.高级优化算法(advanced optimization algorithm) 3.One-vs-all 解决多分类问题 阅读详情

五、逻辑回归(Logistic Regression)

在分类问题中,我们要预测变量的y是离散的值,所有我们将使用一种叫逻辑回归(Logistic Regression)算法。

5.1 分类和表示(Classification and Representation)

1、在分类问题中,我们尝试预测的是结果是否属于某一个类(例如正确或错误)。分类问题的例子有
(1)判断一封电子邮件是否是垃圾邮件
(2)判断一次金融交易是否是欺诈
(3)区别一个肿瘤是恶性还是良性

2、我们从二元分类问题开始考虑,将因变量可能属于的两个类分别称为负向类(negative class)和正向类(postiive class),则因变量y∈{0,1},其中0表示负向类,1表示正向类。

3、如果我们用线性回归算法来解决分类问题,对于分类,y取值为0或者1,但如果你使用的是线性回归,那么假设函数的输出值可能远大于1,或者远小于0,即使所有训练样本的标签y都等于0或1。

4、逻辑回归算法的性质:输出值永远在0到1之间。

5.2 假设函数

1、逻辑回归模型的假设函数

hθ(x)=g(θTx)g(z)=11+e−z

其中g函数是sigmoid函数,函数图形如下:

将上面两个合在一起,就得到了逻辑回归模型的假设函数:
hθ(x)=11+e−θTx

2、hθ(x)的作用是对于给定的输入变量,根据选择的参数计算输出变量y=1的概率。

5.3 判定边界(Decision Boundary)

1、在逻辑回归中,我们预测:
(1)当hθ(x)≥0.5,预测y=1
(2)当hθ(x)<0.5,预测y=0

2、模型实例

设置参数θ是向量[-3 1 1],判断边界是直线y=−3+x1+x2,则当−3+x1+x2≥0时,模型预测y=1


设置参数θ是向量[-1 0 0 1 1],判断边界是一个圆点在原点且半径为1的圆形。

5.4 代价函数

1、如果我们用线性回归函数的代价函数,我们得到的代价函数将是一个非凸函数(non-convex function)

导致我们的代价函数有多个局部最小值,将影响我们使用梯度下降算法寻找全局最小值。

2、我们重新定义逻辑回归的代价函数

J(θ)=1m∑i=1mCost(hθ(x(i)),y(i))Cost(hθ(x),y)={−log(hθ(x))−log(1−hθ(x))if y = 1if y = 0

3、hθ(x)跟Cost(hθ(x),y)的关系
(1)当y=1时,Cost(hθ(x),y)=−log(hθ(x))

(2)当y=0时,Cost(hθ(x),y)=−log(hθ(1−x))

4、构建Cost(hθ(x),y)的特点
(1)当实际的y=1且hθ也为1时代价为0,当y=1但hθ不为1时代价随着hθ的变小而变大
(2)当实际的y=0且hθ也为0时代价为0,当y=1但hθ不为1时代价随着hθ的变大而变大

5、简化后的代价函数

J(θ)=−1m[∑i=1my(i)log(hθ(x(i)))+(1−y(i))log(1−hθ(x(i)))]

5.5 梯度下降

(1)Hypothesis:

hθ(x)=11+e−θTx

(2)CostFunction:
J(θ)=−1m[∑i=1my(i)log(hθ(x(i)))+(1−y(i))log(1−hθ(x(i)))]

(3)Goal:
minimizeθJ(θ)

(4)梯度下降算法
repeat} until convergence: {θj:=θj−α∂∂θjJ(θ)(simultaneously update all)

将J(θ)的偏导数带入可得
repeat} until convergence: {θj:=θj−α1m∑i=1m(hθ(x(i))−y(i))⋅x(i)j(simultaneously update all)

5.6 多类别分类(Multiclass Classification)

1、一对多(one-vs-all)方法:逻辑回归可以将数据一分为二(正类和负类),则我们分别将每一种类别都作为一次正类区分所有的类别,从而实现多类别分类。

2、原理
现在我们有一个训练集,用三角形表示y=1,方框表示y=2,叉叉表示y=3,下面我们要做的就是使用一个训练集,将其分成三个二元分类问题。

首先,我们从用三角形代表的类别1开始,类别1设定为正类,类别2和类别3定为负类,我们创建一个新的训练集,拟合出一个合适的分类器h(1)θ(x)。

然后,我们设定类别2为正类,类别1和类别3为负类,创建一个新的训练集,拟合出一个新的分类器h(2)θ(x),

最后,我们设定类别3为正类,类别1和类别2为负类,创建第三个训练集,拟合出分类器h(3)θ(x)。

我们最终得到一个模型h(i)θ(x)(i=1,2,3)

在我们需要做预测时,我们将所有分类器都运行一遍,然后对每一个输入变量,选择最高可能性的输出变量。

也就是说,对于逻辑回归分类器h(i)θ(x),我们在三个分类器里面输入一个新的x值,然后我们选择一个让h(i)θ(x)最大的i,作为y=i的预测结果。

六、正则化(Regularization)

6.1 过拟合(overfitting)


第一个模型没有很好拟合训练数据,我们把这个称为欠拟合(underfitting),或者另一个术语高偏差(high bias);
第二个模型很好拟合了训练数据,我们称为恰好拟合(Just right)。
第三个模型非常好的拟合训练数据,但过于强调拟合原始数据,我们称为过拟合(overfitting),或者高方差(high variance);

1、过拟合:如果我们有太多的变量,使得假设函数很好的拟合率训练数据集,但是无法泛化到新的数据样本中,以至于无法预测正确的数据样本结果(泛化是指一个假设模型能够应用到新样本的能力)。

2、解决过拟合的方法:
(1)减少特征变量的数量,手工选择保留哪些特征,或者使用一些模型选择算法来处理。
(2)正则化,保留所有特征,但是减少参数的大小。

6.2 正规化代价函数

为了防止过拟合,我们对代价函数进行正规化:

J(θ)=12m[∑i=1m(hθ(x(i))−y(i))2+λ∑j=1nθ2j]

λ称为正则化参数(Regularization Parameter),如果选择的正则化参数λ过大,则会把所有的参数都最小化了,导致模型变成hθ(x)=θ0。

为什么要增加一项λ∑j=1nθ2j?

因为一个模型中真正重要的参数可能并不多,而我们的假设函数里面包含很多参数,为了使某些不重要的参数不起作用,我们可以将其尽可能近似于0,于是我们通过控制λ的大小来达到这个目的。

所以对于正则化,我们取一个合理的λ的值,就能很好的应用正则化。

6.3 正则化线性回归(Regularized Linear Regression)

1、正则化线性回归的代价函数

J(θ)=12m[∑i=1m(hθ(x(i))−y(i))2+λ∑j=1nθ2j]

2、梯度下降算法
由于θ0不参与正则化,所以我们将梯度下降算法分成两种情形

repeat} until convergence: {θ0:=θ0−α1m∑i=1m(hθ(x(i))−y(i))⋅x(i)0θj:=θj−α[1m∑i=1m(hθ(x(i))−y(i))⋅x(i)j+λmθj](simultaneously update all)

对第二个式子进行调整可得
θj:=θj(1−λmα)−α1m∑i=1m(hθ(x(i))−y(i))⋅x(i)j

可以看出正则化线性回归的梯度下降算法的变化在于,每次都在原有算法更新规则的基础上令θ值减少了一个额外的值。

3、正规化正规方程

θ=(XTX+λ⎡⎣⎢⎢⎢⎢00⋮001⋮0⋯⋯⋯00⋮1⎤⎦⎥⎥⎥⎥)−1XTy

其中矩阵的大小是(n+1)∗(n+1)。

6.4 正则化逻辑回归(Regularized logistics regression)

1、我们同样也给代价函数增加一个正则化的表达式,代价函数为

J(θ)=−1m[∑i=1my(i)log(hθ(x(i)))+(1−y(i))log(1−hθ(x(i)))]+λ2m∑j=1nθ2j

2、梯度下降算法

repeat} until convergence: {θ0:=θ0−α1m∑i=1m(hθ(x(i))−y(i))⋅x(i)0θj:=θj−α[1m∑i=1m(hθ(x(i))−y(i))⋅x(i)j+λmθj](simultaneously update all)
Machine Learning - Coursera 吴恩达机器学习教程 Week3 学习笔记 分类问题 例如对肿瘤的分类问题: 0:良性 1:恶性 二元分类问题(binary classification problem)只需要两个结果:0和1。有时候也用-和+表示,所以y(i) 也被称为标签。 逻辑回归 一些术语: asymptotes 渐近线 使用sigmoid函数g(z)将线性函数h(x)的值域映射到(0, 1), g(z)的函数图: 新的h(x)就表示结果为1的概率。 例如肿瘤分类的例子,假如hθ (x) = 0.7,就表示输出结果为1,即肿瘤为恶性的概率为70%。 相应的,输出结果为0 阅读详情

相关推荐

Coursera课程《Machine Learning》学习笔记(week1)

Coursera课程《Machine Learning》第一周学习笔记。

悠望南山的博客 2183

[Machinie Learning] 吴恩达机器学习课程笔记——Week3

吴恩达机器学|机器学习|Machine Learning|AI

qq_52883908的博客 419

Week6_Machine Learning System Design课后习题解答

大家好,这篇文章主要和大家讨论coursra网站上斯坦福大学机器学习第6周第二部分Machine Learning System Design的课后习题。我将给出习题的大致翻译和本人的解题思路,其中可能存在错误,欢迎大家批评指正!

Mac Jiang的博客 6528

【Machine Learning 学习笔记(上)】

吴恩达机器学习笔记

天才在左,疯子在右,而我只想做个不折不扣的乐天派 552

Coursera Machine Learning ex2第三周 week3编程全套满分题目+注释(包括选做optional)

Coursera Machine Learning ex2第三周 week3编程全套满分题目+注释(包括选做optional)

Coursera Machine Learning week3

Coursera Machine Learning(NG大牛的) week 3 的讲义

coursera Machine Learning Week3-2 学习笔记

Part 7:Regularition

Love_Tea_Cat的专栏 1901

machine learning 课程笔记及编程作业

machine learning 课程笔记及编程作业 讲义很详细 很多作者个人理解 很多看完视频后还有的问题通过这个讲义解决了 还包括第第7周(SVM)开始的编程作业

【Coursera Machine Learning】 Week3 学习笔记

五、逻辑回归(Logistic Regression)在分类问题中,我们要预测变量的y是离散的值,所有我们将使用一种叫逻辑回归(Logistic Regression)算法。5.1 分类和表示(Classification and Representation)1、在分类问题中,我们尝试预测的是结果是否属于某一个类(例如正确或错误)。分类问题的例子有 (1)判断一封电子邮件是否是垃圾邮件 (2)

JinbaoSite 1235

SRAM compiler中 Number of banks 设置

的值时,需要考虑应用的性能需求、功耗要求和面积限制。设计者应根据具体的应用场景选择合适的bank数量,以优化整体系统性能。bank是一种用于分离存储器访问的设计结构,允许同时对不同的存储区域进行读写操作,从而提高存储器的并发访问性能。选项用于指定 SRAM 存储器的 并发存储区域。在 SRAM 编译器中,

hzmscut的博客 1871

AI视频生成提示词工程:结构化公式与实战案例详解

在实际使用 AI 生成视频或图像时,最常遇到的困惑是:为什么我的提示词(Prompt)生成的画面总是不理想?是模型能力不足,还是我的描述有问题?答案往往是后者。提示词工程(Prompt Engineering)并非简单的“翻译”需求,而是一门需要结构化思维和精准描述的技能。它决定了 AI 能否准确理解你的意图,并生成符合预期的视觉内容。 本文将通过两个核心案例,深入拆解提示词的构建逻辑。第一个案例聚焦于“文生视频”,我们将学习如何将一个简单的想法,如“小猫在雪地里玩雪球”,通过结构化公式扩展为一段富有细节和

weixin_30800987的博客 556

coursera Machine Learning Week3-1 学习笔记

Part 6:Logistic Regression

Love_Tea_Cat的专栏 1940

VS2022配置Qt6

VS2022配置QT教程

Life is a struggle ! 6359

coursera-Machine Learning--吴恩达-week3--逻辑回归--学习笔记

1 分类 classification 1.1分类描述 前面学习的线性回归输出的预测值是连续的,但对于有些问题,比如判断一封邮件是否为垃圾邮件,肿瘤的恶性还是良性等问题,其分类的结果思离散的,对于这些问题,我们可以通过输出值y ϵ {0, 1} 来表示,其值不再连续,而是离散,故前面的线性回归模型不再适用,需要提出新的模型。 1.2 分类模型表示 根据前章节的学习思路,依旧利用假设函数...

yyxyuxueYang的博客 689

win10 离线安装.Net Framework3.5

起因,安装软件比如3dmax2014等需要.Net Framework3.5支撑,那么需要安装低版本的.Net Framework3.5 闲话少说。 1.下载 NetFx3.cab 链接: https://pan.baidu.com/s/124to7F3BOy4yAlY61OjbDg 提取码: kixu 2.将NetFx3.cab 放入 系统盘的windows目录下(示例 C:\Wi...

m0_37615458的博客 7715

kali破解wifi之airmon-ng 工具利用

......

qq_42378173的博客 1万+

[Coursera][Stanford] Machine Learning Week 1 2

有很多东西不回忆就会遗忘,在此也算给自己的学习做一个笔记

Fighting 1058

基于simulink 的不间断电源ups的项目实例

UPS系统的核心组件包括整流器、逆变器、电池管理系统和控制系统。- **Three-Phase Controlled Rectifier**:设置触发角为0度,用于控制整流器的输出电压。- **Three-Phase Inverter**:设置逆变器的输出频率为60Hz,用于将直流电转换为交流电。- **Control System**:编写MATLAB函数,用于监测市电状态并控制各模块的工作模式。- **Step**:设置阶跃时间,例如0.05秒,阶跃前后的值分别为0和1,用于模拟市电中断。

xiaoheshang_123的博客 709

Coursera Machine Learning Week1 学习笔记

Coursera Machine Learning Week1一、Introduction1.1 机器学习(Machine Learning)第一个机器学习的定义来自于Arthur Samuel,他定义机器学习为 在进行特定编程的情况下,给予计算机学习能力的领域。 近年代的机器学习定义由Tom Mitchell提出,Tom定义的机器学习是 一个程序被认为能从经验E中学习,解决任务T,达到性能

Jinbao 1159

YOLOv8工业缺陷检测实战:攻克光照不均难题,精度从70%到92%的全流程优化(附缺陷数据集)

YOLOv8在工业缺陷检测中突破光照不均难题,核心是“硬件控光+数据造景+模型聚焦+训练攻坚硬件控光:从源头减少光照变异,降低算法难度;数据造景:用CLAHE、合成样本让模型“见过足够多的光照情况”;模型聚焦:用ECA注意力和Focal-EIoU损失,让模型盯住缺陷而非光照;训练攻坚:分阶段+难例挖掘,强迫模型学习薄弱点。这套方案已在汽车轴承、手机外壳、PCB板3类产线落地,平均精度提升20%+,漏检率控制在0.08%以内,完全满足工业级要求。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1195

第七天 Labview进阶(7.3 Teststand简单使用)

TestStand是NI开发的自动化测试管理软件,支持多语言编程和硬件集成,广泛应用于电子产品和工业测试。安装时需注意版本选择,2022版支持离线安装。使用步骤包括:1)创建测试序列文件;2)插入测试动作并配置参数(如选择VI路径、设置变量);3)添加条件判断和延时控制;4)执行测试序列时具备流程控制功能,如失败步骤自动跳过后续测试。该软件能有效提升测试效率与准确性,通过可视化操作实现复杂测试流程管理。

weixin_38637405的博客 1728

Coursera Machine Learning —— Week 2

Foreword 原来想做完Week2的作业之后再来写的,但是发现我不会做……所以边写边复习了。好久没有这种被作业支配的烦躁感了,啊啊啊啊啊。 MATLAB Online Andrew推荐了两款软件,Octave和MATLAB,Octave开源免费,MATLAB要钱,不过可以使用MATLAB Online Licenses免费完成这门课的作业,于是我选择了MATLAB Online来做作业。 怎么在MATLAB Online上做作业并且提交可以看Coursera Machine Learning如何提交MA

weixin_42150654的博客 310

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Coursera Machine Learning Week 4 - Neural Networks

Coursera Machine Learning Week 4 - Neural Networks

xiewen99的专栏 1万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Coursera Machine Learning Week2 学习笔记

四、多变量线性回归(Linear Regression with Multiple Variables)4.1 多变量线性回归模型(1)HypothesisHypothesis: hθ(x)=θ0+θ1x1+θ2x2+θ3x3+⋯+θnxnh_\theta (x) = \theta_0 + \theta_1 x_1 + \theta_2 x_2 + \theta_3 x_3 + \cdots +

Jinbao 903

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Coursera 吴恩达 Machine Learning 课程 week 9 quiz

Anomaly Detection Algorithm: Developing and Evaluating an Anomaly Detection System: Anomaly Detection VS.Supervised learning

coco的专栏 600
上一篇: 蟒蛇绘制程序
下一篇: Coursera Machine Learning Week4 学习笔记
JinbaoSite0144
博客等级 码龄12年 231粉丝 157原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值