备:

  High bias(高偏差) 模型会欠拟合

    High variance(高方差) 模型会过拟合

  正则化参数λ过大造成高偏差,λ过小造成高方差

一、利用训练好的模型做数据预测时,如果效果不好,下一步大概如何做?存在如下几种情况:

  1)获取更多的训练样本。(高方差时用。增加训练样本能防止过度拟合,进而防止高方差,因为非常多的训练样本,很难完全拟合)

  2)使用更少的特征维度。(高方差时用,因为有可能过拟合了)

  3)使用更多的特征维度。(高偏差时用,因为有可能欠拟合了)

  4)增加多项式特征。(高偏差时用)

  5)减小λ值。(高偏差时用,因为可能欠拟合了)

  6)增加λ值。(高方差时用,因为可能过拟合)

二、训练样本分割比例问题

  1)通常7:3比例:70%训练样本,30%测试样本

  2)另一种是6:2:2  60%训练集  20%验证集  20%测试集

  在选取正则化参数λ的值与多项式预测选用最高次数时,均可以采用第(2)种分割方式。

  例如:对于多项式最高次数d(d=1,2,...,10),分别用训练集训练出10个模型,然后利用学习后的参数Θ计算验证集的误差Jcv,选取使Jcv最小的一个d。

  神经网络的隐藏层数,也可以采用第(2)种方式,用验证集去验证采用几个层比较好,方法同上述多项式。一般来讲,采用一个隐藏层的居多。

三、当模型处于高偏差时,此时模型过于简单,处于欠拟合状态。这个时候增加更多的训练样本,依然不会有用,因为当前的训练样本都没有拟合好,增加更多的样本,更难以拟合好,所以是模型的问题所在。

四、如何平衡查准率和召回率?

  采用F1值是一个好办法。

  F1=2*[(P*R)/(R+P)]  当P或R=0时,F1=0 (可以防止某一项值过低) ;当P=1且R=1时,F1=1

  F1值越大的模型,相对较好一些。

五、什么条件下训练出来的模型最好(总结)?

  1)拥有复杂的参数,模型可以防止高偏差。

  2)拥有更多的训练样本,可以防止高方差。

  所以,如果一个模型拥有相对复杂的参数(也不能太复杂),同时拥有更多的训练样本,这样出来的模型往往是一个较好的模型!

六、根据模型的学习曲线(learning curves)判断模型拟合的好与差。

  因为多维数据很难直接画出数据与模型的拟合曲线,通过画模型的学习曲线可以直观看出模型的拟合情况。

  High bias(高偏差)

  High variance(高方差)

七、在进行多项式回归时,比如:x,x^2,x^3,...,x^8等等,一定要先对x进行归一化,否则的话,x^8的值会非常之大。  

Coursera在线学习---第六节.构建机器学习系统的更多相关文章

  1. Coursera在线学习---第十节.大规模机器学习(Large Scale Machine Learning)

    一.如何学习大规模数据集? 在训练样本集很大的情况下,我们可以先取一小部分样本学习模型,比如m=1000,然后画出对应的学习曲线.如果根据学习曲线发现模型属于高偏差,则应在现有样本上继续调整模型,具体 ...

  2. Coursera在线学习---第七节.支持向量机(SVM)

    一.代价函数   对比逻辑回归与支持向量机代价函数. cost1(z)=-log(1/(1+e-z)) cost0(z)=-log(1-1/(1+e-z)) 二.支持向量机中求解代价函数中的C值相当于 ...

  3. Coursera在线学习---第五节.Logistic Regression

    一.假设函数与决策边界 二.求解代价函数 这样推导后最后发现,逻辑回归参数更新公式跟线性回归参数更新方式一摸一样. 为什么线性回归采用最小二乘法作为求解代价函数,而逻辑回归却用极大似然估计求解? 解答 ...

  4. Coursera在线学习---第四节.过拟合问题

    一.解决过拟合问题方法 1)减少特征数量 --人为筛选 --靠模型筛选 2)正则化(Regularization) 原理:可以降低参数Θ的数量级,使一些Θ值变得非常之小.这样的目的既能保证足够的特征变 ...

  5. Andrew Ng机器学习课程笔记(六)之 机器学习系统的设计

    Andrew Ng机器学习课程笔记(六)之 机器学习系统的设计 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7392408.h ...

  6. VUE2.0实现购物车和地址选配功能学习第六节

    第六节 地址列表过滤和展开所有的地址 html:<li v-for="(item,index) in filterAddress">js: new Vue({ el:' ...

  7. Coursera在线学习---第九节(1).异常数据检测(Anomaly Detection)

    一.如何构建Anomaly Detection模型? 二.如何评估Anomaly Detection系统? 1)将样本分为6:2:2比例 2)利用交叉验证集计算出F1值,可以用F1值选取概率阈值ξ,选 ...

  8. Coursera在线学习---第九节(2).推荐系统

    一.基于内容的推荐系统(Content Based Recommendations) 所谓基于内容的推荐,就是知道待推荐产品的一些特征情况,将产品的这些特征作为特征变量构建模型来预测.比如,下面的电影 ...

  9. Coursera在线学习---第二节.Octave学习

    1)两个矩阵相乘 A*B 2)两个矩阵元素位相乘(A.B矩阵中对应位置的元素相乘) A.*B 3)矩阵A的元素进行平方 A.^2 4)向量或矩阵中的元素求倒数 1./V    或   1./A 5) ...

随机推荐

  1. PreparedStatement的execute误解

    boolean execute()  throws SQLException在此 PreparedStatement 对象中执行 SQL 语句,该语句可以是任何种类的 SQL 语句.一些特别处理过的语 ...

  2. 最大流算法-ISAP

    引入 最大流算法分为两类,一种是增广路算法,一种是预留推进算法.增广路算法包括时间复杂度\(O(nm^2)\)的EK算法,上界为\(O(n^2m)\)的Dinic算法,以及一些其他的算法.EK算法直接 ...

  3. uva1391-Astronauts

    宇航员执行任务,有三个任务ABC.把宇航员按照平均年龄分成新老两组,老宇航员可以去AC,新宇航员可以取BC.宇航员之间有不能共存关系,问是否有合法的分配方案. 分析 虽然有三个任务,但每个宇航员还是只 ...

  4. 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为1000。

    给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为1000. 示例 1: 输入: "babad" 输出: "bab" 注意: &quo ...

  5. varnish启动报错

    错误1.Starting Varnish Cache: Error: Cannot open socket: :80: Address family not supported by protocol ...

  6. Openssl的编译安装以及Vs2012上环境搭建教程

    Openssl的编译安装以及Vs2012上环境搭建教程 一.Openssl的编译安装 一.准备工作 1.Openssl下载地址:https://www.openssl.org/source/ 2.Ac ...

  7. HBase多租户机制分析

    在HBase1.1.0发布之前,HBase同一集群上的用户.表都是平等的,没有优劣之分.这种’大同’社会看起来完美,实际上有很多问题.最棘手的主要有这么两个,其一是某些业务较其他业务重要,需要在资源有 ...

  8. 洛谷 P2604 [ZJOI2010]网络扩容 解题报告

    P2604 [ZJOI2010]网络扩容 题目描述 给定一张有向图,每条边都有一个容量C和一个扩容费用W.这里扩容费用是指将容量扩大1所需的费用.求: 1. 在不扩容的情况下,1到N的最大流: 2. ...

  9. python基础5--模块

    模块 一.模块简介 模块是一个包含有定义的函数和变量的文件,其后缀名是.py.Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持. 标准 ...

  10. 使用RVM轻松部署Ruby环境

    Ruby用得不多,但发现有业务需要部署指定的版本和插件.起初找了一些Fedora的src.rpm重新打包,发现依赖问题比较多,最终还是费劲的把el6的包编出来了. 不巧今天又有业务要求el5的包,原本 ...