分类问题(classification problems)

y=0 or 1

回归分析/逻辑分析(logistic regression):

目标:令h(x)位于[0,1]之间

逻辑函数/S型函数:

图像:

x=0,y=0.5;x=正无穷,y=1;x=负无穷,y=0;

概率角度:P(y=0|x;θ)+P(y=1|x;θ)=1,P(y=1|x;θ)表示在给定x数值时y=1的概率。

由图可知,要使得h>0(y=1),就要z>0,所以是theta定义了决策边界,而训练集用于拟合参数theta

一对多问题(One-vs-all)

若有个分类,则将问题分成n个1/0简单分类问题。每个简单分类问题中,1代表n类中的一类,0代表剩余的n-1类。

计算出每个简单分类问题y=1的概率,最终概率即为n个概率中该分类概率最大的。

高级优化算法(Advanced Optimization)

如:BFGS(变尺度法)、L-BFGS(限制变尺度法)、Conjugate gradient(共轭梯度法)

优点

  • 不用手动选择α,内部有智能的线性搜索算法(line search),可以自动尝试各种α
  • 速度比梯度下降法快
  • 缺点只有复杂

在Matlab使用高级优化算法

1
2
3
4
function [jVal, gradient] = (theta)
jVal = [...code to compute J(theta)...];
大专栏  机器学习Week3s="line"> gradient = [...code to compute derivative of J(theta)...];
end
1
2
3
options = optimset('GradObj', 'on', 'MaxIter', 100); %储存option的数据结构,'GradObj', 'on'设置梯度目标参数为on打开,'MaxIter', 100最大迭代次数。
initialTheta = zeros(2,1); %theta的最初猜想值
[optTheta, functionVal, exitFlag] = fminunc(@costFunction, initialTheta, options); %fminunc是无约束最小化函数,@为指向costFunction的指针。

运行结果中exitFlag=1表示已经收敛,此时functionVal的值接近0

θ必须是二维及以上列向量

过度拟合(overfitting)

图一表示未拟合(underfitting)或者HIgh bios(高偏差);图三表示表示过度拟合或者高方差(hegh variance)。

定义:在有很多数据的情况下,曲线可能很好的拟合已有曲线。但是无法泛化(generate)新数据。

解决:1.减少选取的变量数。人工选取更重要的变量或者用模型选择算法自动选择变量。

2.正规化(regularization)

保存所有变量,不过减少数量级或者θ(j)的大小

正规化

通过’惩罚’某些参数,可以使得曲线更加接近合适的曲线。为了使正规化更好的运行,需要选择合适的λ参数。

同样,正规化改变了J(θ),也要改变梯度下降和正规方程算法中θ的递归式。在正规方程算法中,只要λ>0,则矩阵可逆。


正文结束


一点吐槽:用了chrome和印象笔记快两年了,今天才发现印象笔记剪藏chrome插件有多好用,coursera上的文本基本都能一键收藏啊,还不用每次为了做笔记辛苦弄公式传图片。

大概以后就可以少写很多笔记了吧(各种偷懒)。

机器学习Week3的更多相关文章

  1. 斯坦福机器学习视频笔记 Week3 逻辑回归与正则化 Logistic Regression and Regularization

    我们将讨论逻辑回归. 逻辑回归是一种将数据分类为离散结果的方法. 例如,我们可以使用逻辑回归将电子邮件分类为垃圾邮件或非垃圾邮件. 在本模块中,我们介绍分类的概念,逻辑回归的损失函数(cost fun ...

  2. Andrew Ng机器学习课程笔记--week3(逻辑回归&正则化参数)

    Logistic Regression 一.内容概要 Classification and Representation Classification Hypothesis Representatio ...

  3. coursera-斯坦福-机器学习-吴恩达-笔记week3

    1 逻辑回归 1. classification 分类 eg:垃圾邮件分类.交易是否是欺诈.肿瘤类别.分类的结果是离散值. 2. sigmoid函数 使用线性方法来判断分类问题,会出现上图中的问题,需 ...

  4. ML:吴恩达 机器学习 课程笔记(Week3~4)

    Logistic Regression Regularization Neural Networks: Representation

  5. Coursera-吴恩达机器学习课程笔记-Week3

    logistic regression Binary classification problems logistic regression 是一个分类算法 Hypothesis function d ...

  6. Andrew Ng机器学习课程笔记--汇总

    笔记总结,各章节主要内容已总结在标题之中 Andrew Ng机器学习课程笔记–week1(机器学习简介&线性回归模型) Andrew Ng机器学习课程笔记--week2(多元线性回归& ...

  7. Deep Learning--week1~week3

    week1 一张图片,设像素为64*64, 颜色通道为红蓝绿三通道,则对应3个64*64实数矩阵 为了用向量表示这些矩阵,将这些矩阵的像素值展开为一个向量x作为算法的输入 从红色到绿色再到蓝色,依次按 ...

  8. Coursera机器学习+deeplearning.ai+斯坦福CS231n

    日志 20170410 Coursera机器学习 2017.11.28 update deeplearning 台大的机器学习课程:台湾大学林轩田和李宏毅机器学习课程 Coursera机器学习 Wee ...

  9. Andrew Ng 的 Machine Learning 课程学习 (week3) Logistic Regression

    这学期一直在跟进 Coursera上的 Machina Learning 公开课, 老师Andrew Ng是coursera的创始人之一,Machine Learning方面的大牛.这门课程对想要了解 ...

随机推荐

  1. Lua与C++交互初探之C++调用Lua

    Lua与C++交互初探之C++调用Lua 自从学习了lua这个脚本语言之后,无时不想着将他与c/c++联系起来,看看他真正的威力.奈何水平有限,网上找的代码无论怎样都无法运行成功.我知道是我少了某一步 ...

  2. TensorFlow 实例一(一元线性回归)

    使用TensorFlow进行算法设计与训练的核心步骤: 准备数据 构建模型 训练模型 进行预测 问题描述: 通过人工数据集,随机生成一个近似采样随机分布,使得w = 2.0 ,b= 1,并加入一个噪声 ...

  3. Drools规则引擎详解-常用的drl实例

    package droolsDemo //说明:每个 drl 都必须声明一个包名,这个包名与 Java 里面的不同,它不需要与文件夹的层次结构一致, //主要用于可以根据kmodule.xml中不同的 ...

  4. soap,restful 两种web service实现方式比较

    web service服务 目前常用的实现web service的方式有有两种 1.SOAP 原始的web service标准,一堆标准,不过这些标准是在开发框架中实现的,有上层接口,可以调用 2.R ...

  5. lnmp环境搭建:Centos7 + Nginx1.12.2 + Mysql-5.6.38 + PHP7.2.0

    https://blog.csdn.net/ty_hf/article/details/50622888

  6. js几个常用的弹层

    js弹层技术很常见,自己每次用上网找,一找一大堆. 对比了几种,考虑通用性和易用性,这里记录两个. jQueryUI的http://jqueryui.com/dialog/#modal-form ar ...

  7. dom4j 为生成 XML 的文件添加 xmlns(命名空间) 属性

    dom4j 为生成 XML 的文件添加 xmlns(命名空间) 属性 分类: Java2011-06-03 16:14 976人阅读 评论(0) 收藏 举报 xml扩展语言 今天在开发sitemap地 ...

  8. android 9.0 http无法访问问题

    在res/xml下新建network-security-config.xml <?xml version="1.0" encoding="utf-8"?& ...

  9. python数据类型:字典Dictionary

    python数据类型:字典Dictionary 字典是一种可变容器模型,可以存储任意类型对象 键是唯一的,但是值不需要唯一 值可以取任何数据类型,但是键必须是不可变的,如字符串,数字,元组 创建字典: ...

  10. springboot学习笔记:4.logback日志配置

    springboot中日志组件推荐使用logback: 由于springboot内置了logback,所以可以直接在application.properties中配置:如果要功能丰富些,则配置下log ...