主讲人 planktonli

planktonli(1027753147) 19:52:28

现在我们就开始讲第四章,第四章的内容是关于 线性分类模型,主要内容有四点:
1) Fisher准则的分类,以及它和最小二乘分类的关系 (Fisher分类是最小二乘分类的特例)
2) 概率生成模型的分类模型
3) 概率判别模型的分类模型
4) 全贝叶斯概率的Laplace近似 
需要注意的是,有三种形式的贝叶斯:
1) 全贝叶斯
2) 经验贝叶斯
3) MAP贝叶斯
我们大家熟知的是 MAP贝叶斯 
MAP(poor man's Bayesian):不涉及marginalization,仅是一种按后验概率最大化的point estimate。这里的MAP(poor man's Bayesian)是属于 点概率估计的。而全贝叶斯可以看作对test样本的所有参数集合的加权平均,PRML说的Bayesian主要还是指Empirical Bayesian:

这里的为超参 。
Curve fitting为例子:
1) MLE,直接对likelihood function求最大值,得到参数w。该方法属于point estimate。
2) MAP (poor man's bayes),引入prior probability,对posterior probability求最大值,得到w。MAP此时相当于在MLE的目标函数(likelihood function)中加入一个L2 penalty。该方法仍属于point estimation。
3) fully Bayesian approach,需使用sum rule和product rule(因为"degree of belief"的machinery和概率相同,因此这两个rule对"degree of belief"成立),而要获得predictive distribution又需要marginalize (sum or integrate) over the whole of parameter space w:

其中,x是待预测的点,X是观察到的数据集,t是数据集中每个数据点相应的label。其实是用参数w的后验概率为权,对probability进行一次加权平均;因此这个过程需要对w进行积分,即marginalization。
由于 marginalization 通常是非常难求取的,所以一般在针对Graphical Model的时候就需做Laplace approximation、Variation inference、MCMC采样这些。
所以我们要建立的概念是:Graphical Model的东西是一个需要marginalization的。

下面我们看看本讲的内容:
首先将上节 LS(Least Square)方法直接用于求分类问题,就可以得到 Least squares for classification。



一般线性模型Generalized Linear Model: an activation function acting on a linear function of the feature variables:

Linear Model对于回归和分类的区别在于:激活函数的不同

这里sign就是一个非线性的函数,其实是一个间断函数,非连续的。

下图证明了点到平面的距离公式。超平面:在一个D维Euclidean space中的超平面是一它的一个D-1维流形,而且该空间是一个线性空间。Linearly separable:分布于D维空间中的全部数据点可以用超平面无错地分隔成类。Coding scheme:1-of-K binary coding scheme,即如果有K个类,某数据点属于第i个类,则表示为一个K维向量,该向量除了第i个分量是1,其余都是0。

关于超平面,线性可分的一些概念,在多类情况,可以使用1对1,1对多分类器的方式,例如:
你要分类3类物体: 苹果,西瓜,香蕉
那么 1对1 就是建立6个分类器
那么 1对1 就是建立3个分类器
苹果,西瓜
苹果,香蕉
西瓜,香蕉
1对多分类器就是:
苹果和非苹果
西瓜和非西瓜
香蕉和非香蕉

左边是1对多,右边是1对1,都存在一些无法分类的情况,也就是绿色区域部分。

多分类的决策域是单连通,而且是凸的, 下面给出了证明:

证明的图形示意:

上面有没有问题?没有就继续讲 Fisher's Linear Discriminant了。
echo<echotooo@gmail.com> 20:26:46 
无法分类的情况一般怎么办?就是绿色区域了
planktonli(1027753147) 20:27:35 
恩,那就是可能出现判断错误了,这个没有办法。
echo<echotooo@gmail.com> 20:28:12 
哦,好的,pass。
planktonli(1027753147) 20:28:54 
好了,现在看看 Fisher's Linear Discriminant,Linear Discriminant Analysis, LDA),也叫做Fisher线性判别,这个要和Graphical Model的 Latent Dirichlet allocation 区分开。我个人认为 LDA可以看成一个有监督降维的东西,这些PCA(主成分分析),ICA(独立成分分析)也是降低维的,不过是无监督的东西,包括mainfold dimension reduction的,都是无监督的。LDA是降低到一个投影方向上,使得它的可分性最好
而PCA是要找它的主要成分也就是使得Loss最小的方向,LDA要求 类间散度最大,类内聚合度最强。

类间散度最大是通过它们的均值距离体现的,而 类内聚合度最强 是通过 类内的点到均值的散的程度表达的,也就是说Fisher分类是LS的特例,好了,看大家对 Fisher 还有什么疑问?
echo<echotooo@gmail.com> 20:41:53 
....LDA是基于高斯分布假设上的吗?
planktonli(1027753147) 20:44:12 
LDA的样本是需要在 Gaussian假设下,会有 power performance的,如果data 的distribution是非常不规则的,那么LDA肯定是失效的。那就需要用些 Kernel等的trick了。
echo<echotooo@gmail.com> 20:45:29 
这是为什么,是因为它的公式推导的时候有用到高斯分布的假设吗?
planktonli(1027753147) 20:45:32

推导不需要Gaussian假设

网络上的尼采(813394698) 20:46:01

用到了均值
echo<echotooo@gmail.com> 20:46:40 
协方差部分呢?
planktonli(1027753147) 20:47:00 
需要两类的 Between class Variance,这个是通过 均值差表达的。
echo<echotooo@gmail.com> 20:47:28 
嗯嗯,好像懂了,谢谢。
planktonli(1027753147) 20:47:45 
如果两个类的mean完全相等,那么LDA肯定是失效的。if the distribution of data is not so good, then we may use Kernel Fisher discriminant analysis 
I mean that the distribution doesn't meet the gaussian。
echo<echotooo@gmail.com> 20:50:35 
难道kfda不对高斯分布有偏好吗?
planktonli(1027753147) 20:50:42 
the detail info you can c the web site http://en.wikipedia.org/wiki/Kernel_Fisher_discriminant_analysis KDA算法步聚,大部分跟LDA相同,不同的地方是用到了Kernel方法构造了矩阵Sb, Sw,这里的KDA就是kernel fisher 了。

电闪雷鸣(37633749) 20:52:11

OK,明白
planktonli(1027753147) 20:52:24 
好了,下面看看NN神经网络的perceptron ,这个是一个单层的东西,注意它的training error函数 ,优化过程用的是梯度下降法:




好了,perceptron是比较简单的。

下面看,Probabilistic Generative Models,通过MAP方式建立概率模型,需要 先验概率,类条件概率和边缘概率。2类的Probabilistic Generative Models就是 logistic sigmoid function:


这种方法需要假设input的分布,即得到class-conditional distribution,用贝叶斯定理转化成后验概率后,就是和Discriminant model一样进行make decision了。

在gaussian分布的情况下,我们分析:




协方差矩阵不同,则变成了2次分类了,在2类情况下,我们用MLE方法,估计参数:




步骤小结:
1) 假定class-conditional distribution的分布形式,MLE估计该分布中的参数(从而得到了class-conditional distribution) 
2) 计算每个类别的后验概率。在上面的例子中,得到的后验概率刚好是一个GLM模型(Logistic)
好了,这部分结束了。大家讨论下,没问题就继续了。
Probabilistic Discriminative Models:
直接建立分类函数模型,而不是建立生成过程模型,生成模型和判别模型的区别:
maping the data from the orginal sapce to a new space may make it linearly separable 



逻辑回归的最大似然参数估计方法:






 
注意这里 ,Logistic regression是用于分类的,而不是回归。

好了,这就是Probabilistic Discriminative Models的内容,其实质还是 point estimization。
最后看看Bayesian Logistic Regression:

这里是 we want to approximate the posterior using Gaussian,就是用高斯分布近似后验概率
来看Laplace Approximation :



Laplace近似将任意一个分布近似成了高斯分布






好了,最后的 Bayesian Logistic Regression 也完了。

============================讨论=================================

zeno(117127143) 21:25:06 
没太明白 ,生成模型和判别模型的区别 ,优缺点呢 ?
planktonli(1027753147) 21:26:02 
一个model p(x,y) 生成式的,一个model p(y|X)判别式的,判别式的只在乎boundry的这些点,生成式的需要知道这些点是怎么生成的:


zeno(117127143) 21:26:38 
是判别式要好一点吗 ?
planktonli(1027753147) 21:27:34 
生成模型: Naive Bayes, Graphical Model ,判别模型: NN,SVM,LDA,Decision Tree 等。不能说谁好谁不好,还有 生成模型 + 判别模型的,例如: SVM的kernel construcion你可以用 generative的方式去做,那就是 Generative + Discriminant 的了。
zeno(117127143) 21:30:38 
生成式要求X互相独立吧 ?
planktonli(1027753147) 21:31:39 
恩,生成式是需要IID的,这个在statistics上通常都有IID假设的,否则不好整,还有什么问题?
HX(458728037) 21:33:12 
我想问一个简单的问题,其实生成模型最后做分类的时候不还是根据一个boundary来判断的吗?
planktonli(1027753147) 21:34:32 
生成模型 在 two class 而且是 gaussian distribution的时候,就可以转化为 判别式的,这个验证起来很简单,看看下面的PPT就明白了:




zeno(117127143) 21:36:52 
好的,谢谢,总是看见生成判别,弄不太清楚,关键是强调分清楚生成判别,对解决问题选那种工具有何影响,一直搞不清,我感觉feature 不独立时用判别,feature 多时用判别,那么生成式有什么优势呢?

阳阳(236995728) 21:34:22 
判别模型用的是频率学派的观点 ,也就是最大似然估计法, 生成模型用的是贝叶斯学派观点 ,也就是最大后验概率。
planktonli(1027753147) 21:37:10 
阳阳,这个是不对的。MLE也是statistics的东西,判别模型则根本不考虑 statistics,你可以看看NN的东西,包括今天的LDA,它们直接求boundry的。
晴(498290717) 21:39:41 
查了下别人的博客,我觉得这个是两者最最本质的区别


ant/wxony(824976094) 21:42:18 
产生式模型和判别式模型我觉得就是把人的知识用在模型的构建还是feature的设计上,特征多的时候一般还是判别式模型猛些。
HX(458728037) 21:44:51 
生成式的模型在无监督的一些学习上应该才好用吧 ?
ant/wxony(824976094) 21:45:43 
嗯,无监督学习上确实
planktonli(1027753147) 21:48:38 
我把 Generative verses discriminative classifier的一个PPT发到群里,大家有兴趣的看看:
"Lecture2.pdf" 下载

PRML读书会讲稿PDF版本以及更多资源下载地址:http://vdisk.weibo.com/u/1841149974

PRML读书会第四章 Linear Models for Classification(贝叶斯marginalization、Fisher线性判别、感知机、概率生成和判别模型、逻辑回归)的更多相关文章

  1. PRML读书会第三章 Linear Models for Regression(线性基函数模型、正则化方法、贝叶斯线性回归等)

    主讲人 planktonli planktonli(1027753147) 18:58:12  大家好,我负责给大家讲讲 PRML的第3讲 linear regression的内容,请大家多多指教,群 ...

  2. PRML读书会第十四章 Combining Models(committees,Boosting,AdaBoost,决策树,条件混合模型)

    主讲人 网神 (新浪微博: @豆角茄子麻酱凉面) 网神(66707180) 18:57:18 大家好,今天我们讲一下第14章combining models,这一章是联合模型,通过将多个模型以某种形式 ...

  3. PRML读书会第十三章 Sequential Data(Hidden Markov Models,HMM)

    主讲人 张巍 (新浪微博: @张巍_ISCAS) 软件所-张巍<zh3f@qq.com> 19:01:27 我们开始吧,十三章是关于序列数据,现实中很多数据是有前后关系的,例如语音或者DN ...

  4. PRML读书会第七章 Sparse Kernel Machines(支持向量机, support vector machine ,KKT条件,RVM)

    主讲人 网神 (新浪微博: @豆角茄子麻酱凉面) 网神(66707180) 18:59:22  大家好,今天一起交流下PRML第7章.第六章核函数里提到,有一类机器学习算法,不是对参数做点估计或求其分 ...

  5. PRML读书会第六章 Kernel Methods(核函数,线性回归的Dual Representations,高斯过程 ,Gaussian Processes)

    主讲人 网络上的尼采 (新浪微博:@Nietzsche_复杂网络机器学习) 网络上的尼采(813394698) 9:16:05 今天的主要内容:Kernel的基本知识,高斯过程.边思考边打字,有点慢, ...

  6. PRML读书会第五章 Neural Networks(神经网络、BP误差后向传播链式求导法则、正则化、卷积网络)

    主讲人 网神 (新浪微博:@豆角茄子麻酱凉面) 网神(66707180) 18:55:06 那我们开始了啊,前面第3,4章讲了回归和分类问题,他们应用的主要限制是维度灾难问题.今天的第5章神经网络的内 ...

  7. PRML读书会第十一章 Sampling Methods(MCMC, Markov Chain Monte Carlo,细致平稳条件,Metropolis-Hastings,Gibbs Sampling,Slice Sampling,Hamiltonian MCMC)

    主讲人 网络上的尼采 (新浪微博: @Nietzsche_复杂网络机器学习) 网络上的尼采(813394698) 9:05:00  今天的主要内容:Markov Chain Monte Carlo,M ...

  8. 11 Linear Models for Classification

    一.二元分类的线性模型 线性分类.线性回归.逻辑回归 可视化这三个线性模型的代价函数 SQR.SCE的值都是大于等于0/1的 理论分析上界 将回归应用于分类 线性回归后的参数值常用于pla/pa/lo ...

  9. 机器学习基石笔记:11 Linear Models for Classification

    一.二元分类的线性模型 线性分类.线性回归.逻辑回归: 可视化这三个线性模型的代价函数, SQR.SCE的值都是大于等于0/1的. 理论分析上界: 将回归应用于分类: 线性回归后的参数值常用于pla/ ...

随机推荐

  1. android中的坐标系以及获取坐标的方法

    android中有两种坐标系,分别称之为Android坐标系和视图坐标系.而对应的也有一些相关的方法可以获取坐标系中的 坐标值.只有搞清楚这些区别,才能在实现的时候不至于出错或者得不到你想要的效果. ...

  2. ORACLE 创建与使用视图

    一.what(什么是视图?) 1.视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表,视图所对应的数据并不真正地存储在视图中,而是存储在所引用的数据表中,视图的结构和数据是对数据表进行查询 ...

  3. IIS管理

    1.缓存的处理 http://www.cnblogs.com/dudu/p/iis_user-mode_caching_cache-control_public.html 2.负载均衡的使用 ARR ...

  4. hibernate取出count(*)的办法

    1.定义查询语句    String sql="select count(*) from ExcelInfor";2.获取count(*)返回结果: (1)int count=In ...

  5. GDI学习之俄罗斯方块续

    当前方块对象 #region 定义砖块int[i,j,y,x] Tricks:i为那块砖,j为状态,y为列,x为行 private int[, , ,] Tricks = {{ { {,,,}, {, ...

  6. Mac OS X 快捷键

    启动快捷键 按下按键或组合键,直到所需的功能出现(例如,在启动过程中按住 Option 直到出现“启动管理程序”,或按住 Shift 直到出现“安全启动”).提示:如果启动功能未起作用,而您使用的是第 ...

  7. 以太网卡TSO技术

    一.简介 TSO(TCP Segment Offload)技术是一种利用网卡的少量处理能力,降低CPU发送数据包负载的技术,需要网卡硬件及驱动的支持.   二.原理 在不支持TSO的网卡上,TCP层向 ...

  8. hdu Flow Problem (最大流 裸题)

    最大流裸题,贴下模版 view code#include <iostream> #include <cstdio> #include <cstring> #incl ...

  9. [转]轻松学习Ionic (四) 修改应用图标及添加启动画面(更新官方命令行工具自动生成)

    本文转自:http://blog.csdn.net/zapzqc/article/details/42237935 由于Ionic更新了命令行工具,以后修改应用图标和添加启动画面就简单了,最新方法见最 ...

  10. [转]Highcharts仪表盘制作

    http://www.runoob.com/highcharts/highcharts-guage-solid.html 本文转自:http://blog.csdn.net/javaliuzhiyue ...