ex2、逻辑回归
介绍:
在本练习中,您将实现逻辑回归,并将其应用于两个不同的数据集。在开始编程练习之前,我们强烈要求建议观看视频讲座并完成相关主题的问题。要开始练习,您需要下载起始代码并将其内容解压缩到要完成练习的目录。如果需要,请在开始本练习之前使用octave/matlab中的cd命令更改到此目录。您也可以在课程网站的“环境设置说明”中找到安装Octave/Matlab的说明。
本练习中包含的文件
ex2.m-octave/matlab脚本,指导您完成练习
ex2 reg.m-octave/matlab脚本,用于练习的后面部分
ex2data1.txt-练习前半部分的训练集
ex2data2.txt-练习后半部分的训练集
submit.m-将解决方案发送到我们服务器的提交脚本
map.Feature.m-多项式生成函数
plotDecisionBoundary.m -绘制分类器决策边界的函数
[*] plotData.m - Function to plot 2D classification data(用于绘制二维分类数据的函数)
[*] sigmoid.m - Sigmoid Function(逻辑函数S型函数)
[*] costFunction.m - Logistic Regression Cost Function(逻辑回归代价函数)
[*] predict.m - Logistic Regression Prediction Function(逻辑回归预测函数)
[*] costFunctionReg.m - Regularized Logistic Regression Cost(正则化逻辑回归代价函数)
* indicates files you will need to complete
在整个练习中,您将使用脚本ex2.m和ex2 reg.m。这些脚本已经建立了关于问题的数据集,并且调用你要写的的函数。你不需要修改它们中的任何一个。你只是
按照中的说明修改其他文件中的功能这项任务。
1逻辑回归
在练习的这一部分中,您将构建一个逻辑回归模型来预测学生是否被大学录取。假设你是一所大学的系主任,你想根据每个申请者在两次考试中的成绩来决定他们的入学机会。您有以前申请者的历史数据,可以用作逻辑回归的训练集,对于每个培训示例,你都有申请者在两次考试中的分数和录取决定。你的任务是建立一个分类模型,根据这两次考试的分数来估计申请者的录取概率。大纲和ex2.m中的框架代码将指导您完成这个练习。
2、正则逻辑回归
在练习的这一部分中,您将实现正则化逻辑回归,以预测来自制造工厂的微芯片是否通过质量保证(QA)。在质量保证期间,每个微芯片都要经过各种测试以确保它工作正常。假设你是工厂的产品经理,你有两个不同测试的微芯片测试结果。从这两个测试中,您想确定是否应该接受或拒绝微芯片。为了帮助您做出决定,您有一个关于过去芯片的测试结果的数据集,你可以从中建立一个逻辑回归模型。
你将使用另一个脚本,ex2_reg.m 有这个练习需要你完成的部分。
可选练习
在本部分练习中,您将尝试数据集的不同正则化参数,以了解正则化参数如何防止过拟合的。注意当你改变λ时决策边界的变化。用一个小的λ,你应该发现分类者几乎可以正确地得到每一个训练示例,但却画出了一个非常复杂的边界,从而过多地设置了数据(图5)。这不是一个好的决策边界:例如,它预测x=(-0.25,1.5)处的一个点被接受(y=1),考虑到训练集,这似乎是一个错误的决策。
对于较大的λ,您应该会看到一个图,它显示了一个更简单的决策边界,仍然可以很好地分离正反两方面。但是,如果将λ设置为过高的值,您将无法得到一个好的结果,并且决策边界也不会很好地遵循数据,从而导致数据设置不足(图6)。



ex2、逻辑回归的更多相关文章
- ex2:逻辑回归及正则条件下的练习
EX2 逻辑回归练习 假设你是一个大学某系的管理员,你想根据两项考试结果来确定每个申请人的录取机会.你有以前申请人的历史资料以作为逻辑回归的训练集.对于每一个训练集,你拥有每个申请人的两项考试的分 ...
- 【原】Coursera—Andrew Ng机器学习—编程作业 Programming Exercise 2——逻辑回归
作业说明 Exercise 2,Week 3,使用Octave实现逻辑回归模型.数据集 ex2data1.txt ,ex2data2.txt 实现 Sigmoid .代价函数计算Computing ...
- 逻辑回归 Logistic Regression
逻辑回归(Logistic Regression)是广义线性回归的一种.逻辑回归是用来做分类任务的常用算法.分类任务的目标是找一个函数,把观测值匹配到相关的类和标签上.比如一个人有没有病,又因为噪声的 ...
- 用R做逻辑回归之汽车贷款违约模型
数据说明 本数据是一份汽车贷款违约数据 application_id 申请者ID account_number 账户号 bad_ind 是否违约 vehicle_year ...
- 逻辑回归(LR)总结复习
摘要: 1.算法概述 2.算法推导 3.算法特性及优缺点 4.注意事项 5.实现和具体例子 6.适用场合 内容: 1.算法概述 最基本的LR分类器适合于对两分类(类0,类1)目标进行分类:这个模型以样 ...
- scikit-learn 逻辑回归类库使用小结
之前在逻辑回归原理小结这篇文章中,对逻辑回归的原理做了小结.这里接着对scikit-learn中逻辑回归类库的我的使用经验做一个总结.重点讲述调参中要注意的事项. 1. 概述 在scikit-lear ...
- 逻辑回归LR
逻辑回归算法相信很多人都很熟悉,也算是我比较熟悉的算法之一了,毕业论文当时的项目就是用的这个算法.这个算法可能不想随机森林.SVM.神经网络.GBDT等分类算法那么复杂那么高深的样子,可是绝对不能小看 ...
- 逻辑回归(Logistic Regression)
转载请注明出自BYRans博客:http://www.cnblogs.com/BYRans/ 本文主要讲解分类问题中的逻辑回归.逻辑回归是一个二分类问题. 二分类问题 二分类问题是指预测的y值只有两个 ...
- 逻辑回归算法的原理及实现(LR)
Logistic回归虽然名字叫"回归" ,但却是一种分类学习方法.使用场景大概有两个:第一用来预测,第二寻找因变量的影响因素.逻辑回归(Logistic Regression, L ...
随机推荐
- rocketmq特性(features)
# 特性(features) 1 订阅与发布 消息的发布是指某个生产者向某个topic发送消息:消息的订阅是指某个消费者关注了某个topic中带有某些tag的消息,进而从该topic消费数据. 2 消 ...
- python 布尔判断并做需要的返回值
- MySQL两个时间相减
SELECT TIMESTAMPDIFF(MONTH,'2009-10-01','2009-09-01'); interval可是: SECOND 秒 SECONDS MINUTE 分钟 MINUTE ...
- C#删除文件夹的文件
using System.IO; //判断文件是不是存在if(File.Exists(@"文件路径")){//如果存在则删除File.Delete(@"文件路径" ...
- Java——动态绑定和多态
动态绑定是在执行期间(而不是编译期间)判断所用对象的实际类型,根据其实际的类型调用其相应的方法(确定选择哪个多态形式被调用). 首先是方法的参数是父类对象,传入子类对象是否可行 然后引出Parent ...
- 算法题常见的BUG错误(总结)
1. 快排的partition if(l >= r) return ; int i = l, j = r; int tmp = v[i]; while(i < j) { while(i & ...
- 区间查询异或最大值——cf1100F,hdu6579
cf1100F是静态区间查询最大值,有离线的解法,我感觉线段树或者莫队应该都能过 更优秀的解法可以在线并支持修改,可以解决hdu6579,即依次插入每个数,pos[i][j]表示在插第i个数时第j个基 ...
- BZOJ 4939: [Ynoi2016]掉进兔子洞(莫队+bitset)
传送门 解题思路 刚开始想到了莫队+\(bitset\)去维护信息,结果发现空间不太够..试了各种奇技淫巧都\(MLE\),最后\(\%\)了发题解发现似乎可以分段做..这道题做法具体来说就是开\(3 ...
- React-Native 之 GD (十七)小时风云榜按钮处理
小时风云榜按钮处理 在服务器返回给我们的 json 数据中,提供了 hasnexthour 字段,当这个字段返回为 1 的时候,表示后面还有内容,按钮可以点击,否则不能点击,按照这个思路,我们就来完成 ...
- python文件操作错误解决
1. python读取文件时提示"UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illega ...