广义线性模型 - Andrew Ng机器学习公开课笔记1.6

在分类问题中我们如果:

他们都是广义线性模型中的一个样例,在理解广义线性模型之前须要先理解指数分布族。
指数分布族(The Exponential Family)
假设一个分布能够用例如以下公式表达,那么这个分布就属于指数分布族:

公式中y是随机变量;h(x)称为基础度量值(base measure);
η称为分布的自然參数(natural parameter),也称为标准參数(canonical parameter);
T(y)称为充分统计量,通常T(y)=y;
a(η)称为对数切割函数(log partition function);
本质上是一个归一化常数。确保
概率和为1。
当T(y)被固定时,a(η)、b(y)就定义了一个以η为參数的一个指数分布。我们变化η就得到这个分布的不同分布。
伯努利分布属于指数分布族。伯努利分布均值为φ,写为Bernoulli(φ)。是一个二值分布,y ∈ {0, 1}。所以p(y = 1; φ) = φ; p(y = 0; φ) = 1 − φ。当我们变化φ就得到了不同均值的伯努利分布。伯努利分布表达式转化为指数分布族表达式步骤例如以下:

当中,


再举一个高斯分布的样例。高斯分布也属于指数分布族。由高斯分布能够推导出线性模型(推导过程将在EM算法中解说)。由星型模型的如果函数能够得知,高斯分布的方差
与如果函数无关,因而为了计算简便,我们设方差
=1。
高斯分布转化为指数分布族形式的推导步骤例如以下:

当中

更多分部也属于指数分布族。比如:伯努利分布(Bernoulli)、高斯分布(Gaussian)、多项式分布(Multinomial)、泊松分布(Poisson)、伽马分布(Gamma)、指数分布(Exponential)、β分布、Dirichlet分布、Wishart分布。
构建广义线性模型(Constructing GLMs)
在分类和回归问题中,我们通过构建一个关于x的模型来预測y。这样的问题能够利用广义线性模型(Generalized linear models,GMLs)来解决。构建广义线性模型我们基于三个如果。也能够理解为我们基于三个设计决策。这三个决策帮助我们构建广义线性模型:
,如果
满足一个以为參数的指数分布。比如,给定了输入x和參数θ。那么能够构建y关于的表达式。- 给定x。我们的目标是要确定T(y)。即
。
大多数情况下T(y)=y,那么我们实际上要确定的是
。即给定x,如果我们的目标函数是
。(在逻辑回归中期望值是。因此目标函数h是φ。在线性回归中期望值是μ,而高斯分布中
,因此线性回归中目标函数
)。 - 如果自然參数η和x是线性相关,即如果:

如果有一个预測问题:基于特征商店促销活动、近期的广告、天气、星期几等特征x。来预測商店在任一小时内的顾客数目y。
依据概率知识可知,x、y符合泊松分布。泊松分布属于指数分布族。我们能够利用上面的3个如果。构建一个广义线性模型来进行构建预測模型。
GLMs构建最小二模型
线性回归中的优化目标y(损失函数)是由最小二乘法得到的。能够使用广义线性模型构建最小二乘模型。三个如果:
- 最小二乘法得到的目标变量y是一个连续值,我们如果给定x下y的分布符合高斯分布。
如果1中的ExponentialFamily(η)就是高斯分布。
- 在高斯分布中
。目标函数
- 如果:

推导步骤例如以下:

第一步变换依据如果2:
第二步变换依据y|x; θ ∼ N(μ, σ2),高斯分布的期望值是μ
第三步依据如果1:高斯分布中
第四步依据如果3:
如今已经使用广义线性模型构建出了最小二乘模型。接下来的工作就是利用梯度下降、牛顿方法来求解θ。梯度下降、牛顿方法的内容请參考之前的讲义。
GLMs构建逻辑回归
逻辑回归能够用于解决二分类问题,而分类问题目标函数y是二值的离散值,
。依据统计知识。二分类问题能够选择伯努利分布来构建模型。
在伯努利分布的指数分布族表达式中我们已知:
,从而得到
。
构建广义线性模型的三个如果:
- 如果符合伯努利分布,

。伯努利分布中

推导步骤例如以下:

同最小二乘模型一样。接下来的工作就由梯度下降或牛顿方法来完毕。
注意一下上面的推到结果
,回顾一下,在逻辑回归中。我们选用Sigmoid函数
。
之所以在逻辑回归中选用这个g(z)作为Sigmoid函数是由一套理论作支持的。这个理论便是广义线性模型。
广义线性模型 - Andrew Ng机器学习公开课笔记1.6的更多相关文章
- Andrew Ng机器学习公开课笔记 -- 支持向量机
网易公开课,第6,7,8课 notes,http://cs229.stanford.edu/notes/cs229-notes3.pdf SVM-支持向量机算法概述, 这篇讲的挺好,可以参考 先继 ...
- Andrew Ng机器学习公开课笔记–Principal Components Analysis (PCA)
网易公开课,第14, 15课 notes,10 之前谈到的factor analysis,用EM算法找到潜在的因子变量,以达到降维的目的 这里介绍的是另外一种降维的方法,Principal Compo ...
- Andrew Ng机器学习公开课笔记 -- Generative Learning algorithms
网易公开课,第5课 notes,http://cs229.stanford.edu/notes/cs229-notes2.pdf 学习算法有两种,一种是前面一直看到的,直接对p(y|x; θ)进行建模 ...
- Andrew Ng机器学习公开课笔记 -- Generalized Linear Models
网易公开课,第4课 notes,http://cs229.stanford.edu/notes/cs229-notes1.pdf 前面介绍一个线性回归问题,符合高斯分布 一个分类问题,logstic回 ...
- Andrew Ng机器学习公开课笔记 -- 学习理论
网易公开课,第9,10课 notes,http://cs229.stanford.edu/notes/cs229-notes4.pdf 这章要讨论的问题是,如何去评价和选择学习算法 Bias/va ...
- Andrew Ng机器学习公开课笔记 -- Regularization and Model Selection
网易公开课,第10,11课 notes,http://cs229.stanford.edu/notes/cs229-notes5.pdf Model Selection 首先需要解决的问题是,模型 ...
- Andrew Ng机器学习公开课笔记–Reinforcement Learning and Control
网易公开课,第16课 notes,12 前面的supervised learning,对于一个指定的x可以明确告诉你,正确的y是什么 但某些sequential decision making问题,比 ...
- Andrew Ng机器学习公开课笔记 – Factor Analysis
网易公开课,第13,14课 notes,9 本质上因子分析是一种降维算法 参考,http://www.douban.com/note/225942377/,浅谈主成分分析和因子分析 把大量的原始变量, ...
- Andrew Ng机器学习公开课笔记 -- 线性回归和梯度下降
网易公开课,监督学习应用.梯度下降 notes,http://cs229.stanford.edu/notes/cs229-notes1.pdf 线性回归(Linear Regression) 先看个 ...
随机推荐
- 如何使用JW Player来播放Flash并隐藏控制按钮和自定义播放完成后执行的JS
在一个客户项目中播放的flash需要进行定制如不显示控制按钮,flash播放完成后执行特定的js等,在用过了N多的JQery插件和播放器后最终JW Player插件可以满足我的以上要求 因为JW Pl ...
- netty-socketio之BroadcastOperations
最近用到了netty-socketio.之前对这个了解比较少,对netty了解比较多,看代码的时候,发现二者不是一个东西(废话). 主要让我比较惊讶的区别是BroadcastOperations这个东 ...
- 从头认识java-13.11 对照数组与泛型容器,观察类型擦除给泛型容器带来什么问题?
这一章节我们继续类型擦除的话题,我们将通过对照数组与泛型容器,观察类型擦除给泛型容器带来什么问题? 1.数组 package com.ray.ch13; public class Test { pub ...
- Discuz常见小问题-如何禁止用户发言,快速删除某个用户的所有帖子
用户-用户组,勾选批量编辑,然后点击批量编辑的链接 点击论坛相关-帖子相关,然后把指定用户组的允许发新话题设置为否,拉到底部,点击提交 以一个普通用户重新登录,尝试发帖报错,说明已经设置成功 ...
- LeetCode 303 Range Sum Query - Immutable(范围总和查询-永久不变)(*)
翻译 给定一个整型数组nums,找出在索引i到j(i小于等于j)之间(包含i和j)的全部元素之和. 比如: 给定nums = [-2,0,3,-5,2,-1] sumRange(0, 2) -> ...
- html5图像、图片处理【转】
本文主题 情人节在网上看到国外JS牛人利用HTML5技术实现的一朵玫瑰花,深切的感受到HTML5技术的强大.本着学习的态度看了一下那朵玫瑰花的源代码,其中用到的HTML5技术是canvas标签,于是灵 ...
- 工具篇:使用natapp工具映射内网到外网访问
一.环境说明 开发基于微信公众号的应用最大的痛苦之处就是调试问题,每次实现一个功能后都需要部署到一个公网服务器进行测试,因为微信用户每次向公众号发起请求时,微信服务器会先接收到用户的请求,然后再转发到 ...
- 第十六周oj刷题——Problem I: 改错题:类中私有成员的訪问
Description 改错题: 设计一个日期类和时间类,并编写全局函数display用于显示日期和时间. 要求:display函数作为类外的普通函数,而不是成员函数 在主函数中调用display函数 ...
- 算法笔记_012:埃拉托色尼筛选法(Java)
1 问题描述 Compute the Greatest Common Divisor of Two Integers using Sieve of Eratosthenes. 翻译:使用埃拉托色尼筛选 ...
- Reusing dialogs with a dialog pool--一个sql server service broker例子
一个sql server service broker例子 ----------------------------------- USE master GO -------------------- ...