PRML Chapter2
参考文献:PRML2
参数方法和非参数方法
机器学习上的方法分为参数方法(根据先验知识假定模型服从某种分布,然后利用训练集估计出模型参数,也就弄清楚了整个模型,例如感知器)和非参数方法(基于记忆训练集,然后根据训练集预测,例如kNN)。
参数方法
参数方法根据先验知识假定模型服从某种分布,然后利用训练集估计出模型参数,也就弄清楚了整个模型。
那么,估计模型参数到底是一个客观存在的参数还是一个概率密度分布,这个分歧就引出了贝叶斯学派和非贝叶斯学派的不同之处。
非贝叶斯学派:
非贝叶斯学派认为先验知识是指一组数据服从某个分布,那么分布的参数是客观存在的,可以利用数据做出估计,进而获得后验估计。典型代表方法是最大似然估计。贝叶斯学派:
贝叶斯学派认为,先验知识是数据服从某个分布和这个分布参数的先验概率密度,模型的参数本来就是一个概率分布,数据集可以获得参数的后验概率密度,进而获得后验估计。这种方法称为贝叶斯估计。
参数估计的泛化误差
泛化误差由方差和偏倚组成。欠训练时,方差小,偏倚大,欠拟合。过训练时,方差大,偏倚小,过拟合。
参数方法和非参数方法
Conjugate prior-共轭先验
假设有这样几类概率:
p(θ)(先验分布)
p(θ|X)(后验分布)
p(X)
p(X|θ)(似然函数)
它们之间的关系可以通过贝叶斯公式进行连接: 后验分布 = 似然函数* 先验分布/ P(X)(贝叶斯公式)。之所以采用共轭先验的原因是可以使得先验分布和后验分布的形式相同,这样一方面合符人的直观(它们应该是相同形式的);另外一方面是可以形成一个先验链,即现在的后验分布可以作为下一次计算的先验分布,如果形式相同就可以形成一个链条。为了使得先验分布和后验分布的形式相同,我们定义:如果先验分布和似然函数可以使得先验分布和后验分布有相同的形式,那么就称先验分布与似然函数是共轭的。所以共轭是指:先验分布和似然函数共轭。
- 常见的先验分布及其共轭分布:

- 补充知识:


- 符号:
∝表示正比于,表示符号左侧的量与右侧的量成正比,∞表示无穷大,∽表示相似于
多元高斯分布(也即多元正态分布)
- 正定:
若对于任意的非零向量X,恒有f(x1,x2,...,xn)=XTAX>0,则称二次型f为正定二次型,对应矩阵A为正定矩阵。
正定矩阵的充要条件:
矩阵A正定<=>A=DTD,其中D是可逆矩阵(非奇异矩阵)
<=>A的全部特征值大于0
<=>A的顺序主子式大于0
多元正态分布
协方差矩阵
指数分布族exponential family
指数分布族定义:

其中pdf指probability density function, pmf指probability mass function,都是概率密度函数。其中θ叫做自然变量(natural parameters),Φ(x)叫做充分统计量,Z(θ)是归一化因子。之所以使用以e为底的指数形式,是因为e可以把乘法运算转换为加法运算。指数分布族有以下性质:
- 伯努利分布,高斯分布,均匀分布,gamma分布,t分布都可以转化为exponential family的形式。
- 在一定条件下,exponential family是唯一具有充分统计量的分布家族。(一定条件指的是the support of the distribution not be dependent on the parameter)
- exponential family 是唯一具有共轭先验的分布。
- exponential family是在给定限制条件下,做出最少假设的分布家族(所以最大熵模型是exponential family形式!解释通了!)
- exponential family是通用线性模型(generalized linear models)的核心。(可以解释logistic回归中的映射函数为f(x)=1/(1+ex))
- exponential family是variational inference的核心。
文献1:指数分布族
文献2:指数分布族
文献3:指数分布族
无信息先验
在概率推理过程中,我们经常需要先验概率分布。然而很多时候,这样的先验知识并不容易获取,在这种情况下,无信息先验被提出,那么什么是无信息先验呢? 顾名思义,无信息先验是在没有任何信息的情况下给
出的一个先验概率分布,常用P(λ)=C(C是常数)表示。理解无信息先验并不困难,在没有任务信息的情况,认为各个点的概率或概率密度相等是合理的,我们没有理由让任意一点的概率大于其它点的概率。无信息先验试图给出一个对后验概率影响尽可能少的分布,一切让数据说话。
详细的书中例子:
PRML笔记-无信息先验
无信息先验
Nonparameter method
- 核密度估计
- kNN
参见:非参数方法
PRML Chapter2的更多相关文章
- PRML
PRML 学习之 第一章 介绍 Introduction #欢迎共同学习和讨论,由于本文将不断修改,谢绝转载 模式识别问题具有重要且久远的历史.比如,16世纪开普勒发现行星运动定律,又如20世纪出发现 ...
- PRML读书会第十四章 Combining Models(committees,Boosting,AdaBoost,决策树,条件混合模型)
主讲人 网神 (新浪微博: @豆角茄子麻酱凉面) 网神(66707180) 18:57:18 大家好,今天我们讲一下第14章combining models,这一章是联合模型,通过将多个模型以某种形式 ...
- PRML读书会第十三章 Sequential Data(Hidden Markov Models,HMM)
主讲人 张巍 (新浪微博: @张巍_ISCAS) 软件所-张巍<zh3f@qq.com> 19:01:27 我们开始吧,十三章是关于序列数据,现实中很多数据是有前后关系的,例如语音或者DN ...
- PRML读书会第十二章 Continuous Latent Variables(PCA,Principal Component Analysis,PPCA,核PCA,Autoencoder,非线性流形)
主讲人 戴玮 (新浪微博: @戴玮_CASIA) Wilbur_中博(1954123) 20:00:49 我今天讲PRML的第十二章,连续隐变量.既然有连续隐变量,一定也有离散隐变量,那么离散隐变量是 ...
- 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 ...
- PRML读书会第十章 Approximate Inference(近似推断,变分推断,KL散度,平均场, Mean Field )
主讲人 戴玮 (新浪微博: @戴玮_CASIA) Wilbur_中博(1954123) 20:02:04 我们在前面看到,概率推断的核心任务就是计算某分布下的某个函数的期望.或者计算边缘概率分布.条件 ...
- PRML读书会第九章 Mixture Models and EM(Kmeans,混合高斯模型,Expectation Maximization)
主讲人 网络上的尼采 (新浪微博: @Nietzsche_复杂网络机器学习) 网络上的尼采(813394698) 9:10:56 今天的主要内容有k-means.混合高斯模型. EM算法.对于k-me ...
- PRML读书会第八章 Graphical Models(贝叶斯网络,马尔科夫随机场)
主讲人 网神 (新浪微博: @豆角茄子麻酱凉面) 网神(66707180) 18:52:10 今天的内容主要是: 1.贝叶斯网络和马尔科夫随机场的概念,联合概率分解,条件独立表示:2.图的概率推断in ...
- PRML读书会第七章 Sparse Kernel Machines(支持向量机, support vector machine ,KKT条件,RVM)
主讲人 网神 (新浪微博: @豆角茄子麻酱凉面) 网神(66707180) 18:59:22 大家好,今天一起交流下PRML第7章.第六章核函数里提到,有一类机器学习算法,不是对参数做点估计或求其分 ...
随机推荐
- eclipse 编写scala代码时提示computing additional info
window->proference,把方框中那两个选项去掉不选,保存即可(或者只选择scala completions(java sources)),(只不过这么做之后就没有代码提示了)遇到这 ...
- 前端css实现最基本的时间轴
原型: 图片.png 代码: <!DOCTYPE html > <html> <head> <link rel="stylesheet" ...
- Java Service Wrapper 使用(windows)
1 简介 最近项目中需要做一个Windows系统服务,记录一下使用过程. Java Service Wrapper 可以将Java程序包装成系统服务,这样就可以随着系统的运行而自动运行.J ...
- 《80x86汇编语言程序设计》保护模式第一个例题
<80x86汇编语言程序设计>保护模式第一个例题的一些个人理解和注视 ; 16位偏移的段间直接转移指令的宏定义 jump macro selector, offsetv db 0eah ...
- idhttp post 出现exception class EIdSocketError with message 'Socket Error # 10054的解决办法(捕捉异常,防止程序挂掉)
由于项目需要.需要向一个地址提交数据.提交的次数很频繁,但是程序经常raised exception class EIdSocketError with message 'Socket Error # ...
- CSS 常用 background 设置
CSS 背景图片设置: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> & ...
- nditer —— numpy.ndarray 多维数组的迭代
1. Single array iteration >>> a = np.arange(6).reshape(2,3) >>> for x in np.nditer ...
- OpenCL编译环境配置(VS+Nvidia)
英伟达的显卡首先要下载安装CUDA开发包,可以参考这里的步骤: VS2015编译环境下CUDA安装配置 安装好CUDA之后,OpenCL的配置就已经完成了80%了,剩下的工作就是把OpenCL的路 ...
- 将您的Cordova应用程序打包
参考 https://github.com/MicrosoftDocs/cordova-docs/blob/master/articles/tutorial-package-publish/tutor ...
- c语言学习笔记(13)——链表
链表 算法: 1.通俗定义: 解题的方法和步骤 2.狭义定义: 对存储数据的操作 3.广义定义: 广义的算法也叫泛型 无论数据是如何存储的,对数据的操作都是一样的 我们至少可以通过两种结构来存储数据 ...