MLAPP机器学习的概率知识总结_MLAPP pdf_MLAPP下载

《机器学习》课程使用的是Kevin P. Murphy所著的《Machine Learning A Probabilistic Perspective》这本英文原版教材,这本书从概率论这个数学角度独特阐述了机器学习的所有问题,需要较强的数学基础。因为是英文教材,特开一个专题在此记录自己的学习过程和各种问题,以供备忘和举一反三之用。

在讲解了机器学习的概述之后,第二章紧接着就开始讲述概率论的知识,通过后续的学习会发现,这些概率论知识有部分在本科的概率论课程中学习过,但是有很多其他部分是没有在现有的本科阶段甚至研究生阶段也很少涉及的知识点,在此做一个总结。1、概率学派

频率学派:概率代表的是对一个试验重复执行N次,所关注的事件发生的频率。这里要求的是需要进行重复试验,这对于一般可重复执行的试验是比较好的标识方式,这也成为实验概率。

贝叶斯学派:概率代表的是人们对一个未知事件发生的不确定性的一种表征,这里不要求对这个事件进行重复试验。同时对于任何未知的事件,都可以用一个概率来表征人们对它的认识。

通过上述比较可以发现,对于某些不能重复试验的事件(比如生成灯管的工厂生成的灯管的平均使用寿命,进行重复实验是不现实的),使用贝叶斯概率的解释更加合理。因此在整个学习中都以贝叶斯学派为准。2、基本知识

概率:事件空间Ω到实数域R的映射,对于每个事件A,都有一个实数p(A)与之对应,同时满足:(1)非负性,p(A)>=0;(2)规范性,p(Ω)=1;(3)可列可加性:p(A1+A2+…An) = p(A1)+p(A2)+…p(An)其中A1、A2…An都是互补相容的事件。

基本概率公式:

全概率公式和贝叶斯公式:

通用的贝叶斯分类器:

( θ为模型的参数)3、离散型分布

(1)二项分布Binomial

K为每次试验可能出现的结果,n为进行试验的次数。贝努利试验就是K={0,1}且n=1的试验,对于n(n>1)的n重贝努利实验就是二项分布,分布函数如下:

mean=θ,variance=nθ(1-θ)。二项分布描述的典型试验就是抛硬币,每次出现正面或者反面两种结果。这在机器学习的分类算法中用于描述二值的特征,也就是每个数据的特征的取值是两个状态(一般是0和1),用来 表征当前数据是否有这个特征 ,因此可以使用二项分布来描述当前特征的分布。

(2)多项分布Multinormial

当每次试验出现的结果可能有K(K>2)种时,也就是 一个特征的不仅仅是表征是否出现,而是需要用一个具体数值来表征该特征的影响大小 ,此时可以用多项分布进行描述。

此处,当K=2时也就是两种状态,可以看出多项分布就退化到了二项分布,可以看出x1=k,x2=n-k,x1+x2=n条件满足。其中,当n=1时,也就是只进行一次试验,此时的分布称为多维贝努利分布,因为每次的可能状态有K(K>2)个,也成为离散分布(discrete distribution)或者分类分布(categorical distribution),记为Cat(x| θ ):

(3)泊松分布Poisson

变量X={0,1,2.....}, λ>0,分布如下:

泊松分布可以用来模拟以时间序列发送的事件,具有无记忆性。4、连续型分布

(1)正态分布Gaussian(Normal)

mean=u,mode=u,variance=σ^2。在统计学中应用非常广泛,首先两个参数非常好理解,分别是均值和标准差,同时,中心极限定理得到相互独立的随机变量的和的分布近似为高斯分布,可以用来模拟噪声数据;第三,高斯分布使用了最小的假设也就是拥有最大熵;第四,数学形式相对简单,非常利于实现。

(2)Student t分布

mean=u,mode=u,variance=ν σ^2/(ν-2),ν>0为自由度,方差在ν>2时有定义,均值在ν>1时有定义。此分布形式上与高斯分布类似,弥补了高斯分布的一个不足,就是 高斯分布对离群的数据非常敏感,但是Student t分布更鲁棒 。一般设置ν=4,在大多数实际问题中都有很好的性能,当ν大于等于5时将会是去鲁棒性,同时会迅速收敛到高斯分布。

特别的,当ν=1时,被称为柯西分布(Cauchy)。

(3)拉普拉斯分布Laplace

mean=u,mode=u,variance=2b^2。也被称为双侧指数分布,引出了绝对值的指数次方,因此在x=u处不可导。b(b>0)为缩放因子,用来调节数据的分散程度。 拉普拉斯分布对离群数据的鲁棒性更好 。同时,在x=u处给予了比高斯分布更大的概率密度,这个性质可以用来修正模型中稀疏的数据。

(4)Gamma分布

mean=a / b,mode=(a-1) / b,variance=a / b^2,mean在a>1时有定义,variance在a>2时有定义。其中变量T的范围为T>0,a>0称为形状参数,b>0称为速率参数。Exponential分布:a=1,b= λ时,Expon(x| λ )=Ga(x|1, λ ),这个分布描述了连续的泊松过程,与离散型的泊松分布共轭。

ErLang分布:ErLang(x| λ)=Ga(x|2, λ)

Chi-Squared分布(卡方分布):ChiSq(x|v)=Ga(x|v/2,1/2),这是N个高斯分布的随机变量的平方和所服从的分布。

当使用1/x代替Gamma分布中的变量时,得到的是反Gamma分布,即:

mean=b / (a-1),mode=b / (a+1),variance=b^2 / (a-1)^2(a-2),其中mean在a>1时定义,variance在a>2时定义。

(5)Beta分布

定义在[0,1]区间上,要求a>0,b>0,当a=b=1时就是[0,1]上的均匀分布。mean=a / (a+b), mode=(a-1) / (a+b-2), variance = ab / (a+b)^2(a+b+1)。这个分布 与离散的二项分布是共轭的 ,在朴素贝叶斯分类应用中,当似然分布为二项分布时,选择Beta分布为共轭先验分布,则后验分布也为Beta分布,非常便于实际操作和计算。

(6)Pareto分布

mean=km/(k-1)(k>1),mode=m,variance=mk^2 / (k-1)^2(k-2)(k>2),这个 分布对应有一个Zipf's 定律 ,用来描述单词的排名和其出现的频率的关系。x必须比一个常数m要大,但是不能超过k,当k为无穷大时,这个分布会趋于δ(x-m)。上述分布在信息检索中对索引构建中的词频估计很有效。

(7)狄利克雷分布Dirichlet

mean(Xk)=ak/a0, mode(Xk) = (ak - 1) / (a0 - K), variance(Xk) = ak(a0-ak) / a0^2(a0+1)。这是beta分布在多维条件下的分布,对应的参数和变量都是一个向量,这个分布 与离散的多项分布时共轭的 ,在朴素贝叶斯分类应用中,似然使用多项分布时,选择Dirichlet分布为先验分布,得到后验分布也为Dirichlet分布。

以上对机器学习中使用到的概率分布做了一个总结,供后续学习时备忘和复习。

multinorm r语言_MLAPP机器学习的概率知识总结_MLAPP pdf_MLAPP下载相关推荐

  1. R语言与机器学习学习笔记(分类算法)

    转载自:http://www.itongji.cn/article/0P534092014.html 人工神经网络(ANN),简称神经网络,是一种模仿生物神经网络的结构和功能的数学模型或计算模型.神经 ...

  2. R语言基于机器学习算法进行特征筛选(Feature Selection)

    R语言基于机器学习算法进行特征筛选(Feature Selection) 对一个学习任务来说,给定属性集,有些属性很有用,另一些则可能没什么用.这里的属性即称为"特征"(featu ...

  3. 使用R语言进行机器学习的原因

    两种最常用的数据科学语言R和Python之间存在着某种竞争. 刚接触机器学习的人都会选择其中一种语言来学习.人们的决定通常以他们可以访问的学习资源为指导,比如哪些资源在他们的工作领域中更常用,以及哪些 ...

  4. predict函数 R_学习|R语言做机器学习的常用函数总结

    预测函数:predict() type="prob"判别该量度的昆虫归类为A.B和C的概率:type="response":判别该量度的昆虫的类别: 预测分类的 ...

  5. multinorm r语言_与心理学数据分析相关的R工具包

    为下周末的R语言会议热个身,写下自己收集的心理学研究的数据分析相关的R包. R语言做统计已经慢慢成为(国际)心理学的主流了,国内由于盗版SPSS的长期存在,严重阻碍了心理学研究者使用R的步伐.当然,考 ...

  6. R语言caret机器学习(四):数据拆分

    [R语言数据科学]

  7. R语言caret机器学习(二):数据预处理上

    [R语言数据科学]

  8. R语言caret机器学习(一)数据可视化:绘制特征变量图

    [R语言数据科学]

  9. R语言caret机器学习(三):数据预处理下集

    [R语言数据科学]

最新文章

  1. nginx负载均衡策略upstream
  2. php使用file,PHP中is_file()函数使用指南
  3. SpringBoot(Thymeleaf)拼接跳转链接
  4. Angular里的property binding的一个例子
  5. 计算机的科学原理是什么,人工智能的工作原理是什么?
  6. 时隙aloha协议仿真程序_工控ModbusTCP/IP协议仿真环境搭建
  7. Conditional project or library reference in Visual Studio
  8. 稀疏表示字典的显示【MATLAB实现】
  9. js工作笔记003---js编写习惯_提高网页显示速度
  10. NModBus的使用
  11. Struts2之OGNL表达式与值栈对象及常用标签的使用
  12. ArrayList以及List的常用方法
  13. Bootstrap模态框中再嵌套模态框导致第一个模态框的滚动条消失
  14. c语言大学生信息管理系统实验报告,c语言学生信息管理系统实训报告
  15. viper4android 6.0脉冲,【详解】v4a音效脉冲样本
  16. 映泰主板G31安装centos系统启动不了解决办法
  17. NKOJ 4234 三角分形
  18. python高级练习题:法贝热复活节彩蛋压测试【难度:5级】--景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
  19. HTML入门零基础教程(四)
  20. 什么是高防CDN?高防CDN的用处有哪些?

热门文章

  1. php args argc,Main函数参数argc,argv说明
  2. Java开发环境概述
  3. 移动端app和H5混合开发交互
  4. 目标跟踪中的卡尔曼滤波和匈牙利算法解读。
  5. Andriod学习笔记(1)
  6. C++ 获取进程所在目录(全路径)
  7. QQ空间运营 怎么做一个QQ人气号?
  8. 计算机应用技术轻薄本,高配置轻薄笔记本推荐,终结你的选择困难症!
  9. GoogLeNet 浅析
  10. 街篮先锋测试显示服务器,街篮手游先锋测试玩家教你中锋搭配技巧