Machine Learning - Coursera week6 Evaluating a learning algorithm

Evaluating a learning algorithm

1. Design what to do next

在预测房价的学习例子,假如你已经完成了正则化线性回归,也就是最小化代价函数J的值。假如在你得到你的学习参数以后把它应用到放到一组新的房屋样本上进行测试,发现在预测房价时产生了巨大的误差。
要想改进这个算法,应该怎么办?
其中一种办法是使用更多的训练样本,但是这个办法不总是有用;
也许需要更多的特征,或者减少特征;
减小或增大正则化参数lambda的值;

机器学习诊断能够让你深入理解系统哪里工作,哪里不工作或者存在问题。

2. Evaluating a hypothesis

如何评估假设函数?下面讨论如何避免过拟合和欠拟合问题。
如何判断一个假设函数是过拟合的?
对于简单的例子,可以对假设函数h(x)进行画图,然后观察图形趋势。但对于特征变量不止一个的这种一般情况,想要通过画出假设函数来进行观察就会变得很难甚至是不可能实现。因此,我们需要另一种方法来评估我们的假设函数。 如下给出了一种评估假设函数的标准方法,假设我们有这样一组数据组,在这里我只展示出10组训练样本。为了确保我们可以评估我们的假设函数,将这些数据分成两部分。按照7:3的比例将70%的数据作为训练集,30%的数据作为测试集。如果这组数据有某种规律或顺序的话,那么随机选择70%作为训练集,剩下的30%作为测试集。如果数据已经随机分布了,可以选择前70%和后30%.
接下来展示了一种典型的方法,你可以按照这些步骤训练和测试你的学习算法 比如线性回归算法。 首先,你需要对训练集进行学习得到参数θ。 具体来讲就是最小化训练误差J(θ)。 这里的J(θ)是使用那70%数据。 然后计算出测试误差, JtestJtest来表示测试误差.使用包含参数θ的假设函数对每一个测试样本进行测试,然后通过假设函数和测试样本计算出mtest个平方误差. 这是使用线性回归和平方误差标准时测试误差的定义.

如果是考虑分类问题,比如说使用逻辑回归.训练和测试逻辑回归的步骤与之前所说的非常类似. 唯一的区别是现在我们使用的是mtest个测试样本.测试误差Jtest(θ)叫误分类率,也被称为0/1错分率. 当你的假设函数h(x)的值大于等于0.5,并且y的值等于0或者当h(x)小于0.5并且y的值等于1,这个误差等于1.用错分率误差来定义测试误差.

3. Model selection and Train/Validation/Test sets

模型选择问题:
怎样选用正确的特征来构造学习算法?
选择学习算法中的正则化参数λ?

数据集的划分:
通常划分为3部分,按照6:2:2分为训练集、验证集和测试集,定义训练误差 交叉验证误差 和测试误差。

我们的做法是训练多个不同的模型,使用验证集去选择交叉验证最小的模型,最后使用测试集估计模型的泛化误差。

转载于:https://www.cnblogs.com/siucaan/p/9623132.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/451745.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Tiny Core Linux 4.5 发布,微型 Linux 操作系统

世界上最小的Linux桌面发行版——Tiny Core Linux 今天发布了4.5版本。Tiny Core Linux是一个基于Linux2.6版本内核,采用BusyBox、Tiny X、FLTK 和其它小型软件构筑的带图形用户界面的微型Linux操作系统。由于体积很小,大约10MB,故采用整体装…

maven的web工程打包为war并部署到服务器

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1.在maven工程上右键 --> export --> 选择WAR file --> next 2. 点击Browse... 选择导出后存放位置 3. 将工程名改为ROOT.war…

Hive笔记之严格模式(strict mode)

Hive有一个严格模式,在严格模式下会对可能产生较大查询结果的语句做限制,禁止其提交执行。 一、切换严格模式 查看当前的模式:hive> set hive.mapred.mode; hive.mapred.mode is undefined 未定义即为false,即no-strict模式。 …

Notepad++ 6.0 发布,优化了大文件加载性能

开源编辑器Notepad今天发布了最新的6.0版本。 Notepad 是一款免费的开源跨平台代码编辑器。它支持包括中文在内的多国语言,功能强大,除了可以用来制作一般的纯文字说明文件外,也可以作为代码编辑器。Notepad不仅可以实现语法高亮显示&#x…

JDK下载地址、SecureCRT中JDK安装和环境配置、SecureCRT窗口编程、linux下命令运行小程序

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 下载linux版本的JDK。java SE、java EE JDK是通用的, 32位系统选Linux x86, 64位系统选Linux x64&#xff…

HTMLTestRunner 汉化版---来源一个大神的源码(加了失败截图,用例失败重新执行 功能)...

HTMLTestRunner 汉化版 20170925 测试报告完全汉化,包括错误日志的中文处理针对selenium UI测试增加失败自动截图功能增加失败自动重试功能增加饼图统计同时兼容python2.x 和3.x20180402 表格样式优化修复部分bug增加截图组,可展示多张截图,首…

PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilder

一.问题描述&#xff1a;pom.xml导入依赖时报错 PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilder 二.解决方法&#xff1a; 1.加入ali镜像源 <repositories><repository><id>maven-ali</id><url>https://mave…

你很棒的---自我管理方法,一生受用!!!

激励自己--自我暗示 每天写下五件幸福的事 &#xff1a;&#xff08;例12月2日周日&#xff09;1、给爸妈各买了一件衣服 2、出门晒了一下太阳 3、认识了一个新朋友&#xff0c;去了青年湖公园&#xff0c;人生就是一种经历&#xff01;4、看了场电影《命运呼叫转移》悟人生真…

持续集成与自动化部署 - jenkins sonar代码质量管理平台 部署和基础使用(五)...

1 jenkins 安装参考链接 1.1 安装jenkins [roottest-node3 ~]# yum install -y java-1.8.0 [roottest-node3 ~]# cd /etc/yum.repos.d/ [roottest-node3 yum.repos.d]# wget http://pkg.jenkins.io/redhat/jenkins.repo [roottest-node3 yum.repos.d]# rpm --import http://pkg…

【转】数学与编程——求余、取模运算及其性质

一、求余运算&#xff08;Remainder&#xff09; &#xff08;参考维基百科&#xff1a; http://zh.wikipedia.org/wiki/余数 http://en.wikipedia.org/wiki/Remainder http://en.wikipedia.org/wiki/Euclidean_divisionhttp://zh.wikipedia.org/wiki/同余&#xff09; Euclid…

javax.net.ssl.SSLException MESSAGE: closing inbound before receiving peer‘s close_notify

1. 问题描述&#xff1a; ** BEGIN NESTED EXCEPTION ** javax.net.ssl.SSLException MESSAGE: closing inbound before receiving peers close_notifySTACKTRACE:javax.net.ssl.SSLException: closing inbound before receiving peers close_notifyat sun.security.ssl.Alert.…

多线程原理分析面试题理解

系列前言 本系列是本人参加微软亚洲研究院&#xff0c;腾讯研究院&#xff0c;迅雷面试时整理的&#xff0c;另外也加入一些其它IT公司如百度&#xff0c;阿里巴巴的笔试面试题目&#xff0c;因此具有很强的针对性。系列中不但会详细讲解多线程同步互斥的各种“招式”&#xff…

Could not load driverClass “com.mysql.jdbc.Driver“

1. 问题描述 Could not load driverClass “com.mysql.jdbc.Driver” 2. 解决办法 检查是否成功导入了mysql的jdbc的jar包 导入后成功解决 参考文献&#xff1a; https://blog.csdn.net/weixin_43433032/article/details/98494228 感谢作者分享&#xff01;

Django的models操作

一、先看单表操作 增 方式1&#xff1a; models.book.objects.create(Book_name "aaa",Book_info "bbb",Book_price "ccc",Book_num "ddd")方式2&#xff1a;用2个*号传递一个字典进去  book_info {"Book_name":"…

ngingx安装错误 ./configure: error: the HTTP rewrite module requires the PCRE library.

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. ngnix 安装报错&#xff1a; 2. 解决&#xff1a; 安装pcre-devel解决问题&#xff0c;运行命令 yum -y install pcre-devel 3.…

实习期间的一些思考整理(3)2018.4.12~4.13

青云诀游戏体验日报-2018.4.12 今日关键点&#xff1a;核心玩法 青云诀的核心玩法是“战斗”、“成长”、“探索”&#xff08;这三点也是RPG类型的要素&#xff09;&#xff0c;侧重于成长。 我是这样想的&#xff0c;要想找出核心玩法是什么&#xff0c;就要看哪些玩法没了&a…

js之base64上传图片

首先要搭建好springmvc&#xff0c;详见https://www.cnblogs.com/zzb-yp/p/9295397.html 整体思路&#xff1a;前端代码包括显示和传参&#xff08;这里的参数主要就是图片的base64字符串&#xff09;&#xff0c;显示主体部分是type“file”类型的input组件和一个提交按钮 …

WPF 使用皮肤影响按钮自定义

在WPF项目中使用了 Theme的皮肤后&#xff0c;发现自定义的按钮全部都是 皮肤里面的样式&#xff0c;如下图&#xff1a; 要自定义样式&#xff0c;只有不给按钮使用皮肤样式。 如果想给某一个控件使用样式&#xff0c;在前端Xaml的控件中&#xff0c;设置一下属性即可&#xf…

树链剖分 讲解+模板+习题

今天我们来讲一下树链剖分 树链剖分是什么&#xff1f; 树链剖分是一种用来维护树上路径信息的在线方法&#xff0c;可以处理在线。 通常通过一种方法&#xff0c;将一棵树剖分成若干条链&#xff0c;然后通过数据结构&#xff08;线段树&#xff0c;BIT等&#xff09;去维护。…