判别学习算法:直接对问题进行求解,比如二分类问题,都是在空间中寻找一条直线从而把类别的样例分开,对于新的样例只要判断在直线的那一侧就可。 ==》这种直接求解的方法称为判别学习方法

生成学习算法:是对两个类别分别进行建模,用新的样例去匹配两个模型,匹配度较高的作为新的样例的类别;

应用:比如良性肿瘤与恶性肿瘤的分类,首先对两个类别分别建模,比如分别计算两类肿瘤是否扩散的概率,计算肿瘤大小大于某个值的概率等等;

判别学习方法:判别学习方法是直接对$p(y|x)$进行建模或者直接学习输入空间到输出空间的映射关系,其中,x 是某类样例的特征,y 是某类样例的分类标记。

生成学习方法:是对$p(x|y)$(条件概率)和p(y)(先验概率)进行建模,然后按照贝叶斯法则求出后验概率(p(y|x)):

$p(y|x)=p(x|y)p(y)/p(x)$

==》先验概率:先验概率仅仅依赖于主观上的经验估计,也就是事先根据已有的知识的推断,先验概率就是没有经过实验验证的概率,根据已知进行的主观臆测。如抛一枚硬币,在抛之前,主观推断P(正面朝上) = 0.5。

==》后验概率:后验概率是指在得到“结果”的信息后重新修正的概率,如贝叶斯公式中的。是“执果寻因”问题中的”果”。先验概率与后验概率有不可分割的联系,后验概率的计算要以先验概率为基础。解释下来就是,在已知果(B)的前提下,得到重新修正的因(A)的概率P(A|B),称为A的后验概率,也即条件概率。后验概率可以通过贝叶斯公式求解

使得后验概率最大的类别y既是新样例的预测值:若为相互独立的事件组,可根据全概率公式,P(X)=1:

$argmax_{y}p(y|x)=argmax_{y}p(x|y)p(y)/p(x)=argmax_{y}p(x|y)p(y)$

贝叶斯公式,用于描述两个后验概率之间的关系,

P(A∩B) = P(A)*P(B|A)=P(B)*P(A|B)

可变形为:

P(A|B)=P(A)P(B|A)/P(B) P(B)为标准化常量,由条件概率公式推导出贝叶斯公式:P(B|A)=P(A|B)P(B)/P(A);即,已知P(A|B),P(A)和P(B)可以计算出P(B|A)。

==》P(B)可以通过全概率公式,变为P(B)=1

贝叶斯法则的一般公式:

$P(A_{i}|B)=P(B|A_{i})P(A_{i})/\sum_{i=1}^{n}P(B|A_{i})P(A_{i})^{'}$

其中 A1,,,,,,An为完备事件组

举一个简单的例子:一口袋里有3只红球、2只白球,采用不放回方式摸取,求:==》注意这个例子并不是相互独立的事件组

⑴ 第一次摸到红球(记作A)的概率;==》P(A) = 3/5

⑵ 第二次摸到红球(记作B)的概率;==》P(B) = P(B|A)P(A)+P(B|A')P(A') = 3/5 称为标准化常量,A and A' 称为完备事件组

⑶ 已知第二次摸到了红球,求第一次摸到的是红球的概率.

P(A|B) = P(A)P(B|A)/P(B)  = 1/2 这就是A的后验概率

补充很重要的内容:条件概率、全概率公式和贝叶斯公式的理解,其中全概率的进一步理解


贝叶斯统计中的两个基本概念是先验分布和后验分布:

1、先验分布。总体分布参数θ的一个概率分布。贝叶斯学派的根本观点,是认为在关于总体分布参数θ的任何统计推断问题中,除了使用样本所提供的信息外,还必须规定一个先验分布,它是在进行统计推断时不可缺少的一个要素。他们认为先验分布不必有客观的依据,可以部分地或完全地基于主观信念。

2、后验分布。根据样本分布和未知参数的先验分布,用概率论中求条件概率分布的方法,求出的在样本已知下,未知参数的条件分布。因为这个分布是在抽样以后才得到的,故称为后验分布。贝叶斯推断方法的关键是任何推断都必须且只须根据后验分布,而不能再涉及样本分布。

$Pr(A|B)=Pr(B|A)Pr(A)/Pr(B)$

在贝叶斯法则中,每个名词都有约定俗成的名称:

Pr(A)是A的先验概率或边缘概率。之所以称为"先验"是因为它不考虑任何B方面的因素。

Pr(A|B)是已知B发生后A的条件概率,也由于得自B的取值而被称作A的后验概率。

Pr(B|A)是已知A发生后B的条件概率,也由于得自A的取值而被称作B的后验概率。

Pr(B)是B的先验概率或边缘概率,也作标准化常量(normalized constant)。

按这些术语,Bayes法则可表述为:

后验概率 = (似然度 * 先验概率)/标准化常量

也就是说,后验概率与先验概率和似然度的乘积成正比。

我们把P(A)称为"先验概率"(Prior probability),即在B事件发生之前,我们对A事件概率的一个判断。P(A|B)称为"后验概率"(Posterior probability),即在B事件发生之后,我们对A事件概率的重新评估。P(B|A)/P(B)称为"可能性函数"(Likelyhood),这是一个调整因子,使得预估概率更接近真实概率。

另外,比例Pr(B|A)/Pr(B)也有时被称作标准似然度(standardised likelihood,Likelyhood),Bayes法则可表述为:

后验概率 = 标准似然度 * 先验概率

条件概率可以理解成下面的式子:

后验概率 = 先验概率 x 调整因子
这就是贝叶斯推断的含义。我们先预估一个"先验概率",然后加入实验结果,看这个实验到底是增强还是削弱了"先验概率",由此得到更接近事实的"后验概率"。即如果B独立于A时被观察到的可能性越大,那么B对A的支持度越小。
 
在更一般化的情况,假设{Ai}是事件集合里的部分集合,对于任意的Ai,贝叶斯定理可用下式表示:
 

同时在这里补充:先验概率、最大似然估计、贝叶斯估计、最大后验概率的理解https://blog.csdn.net/guohecang/article/details/52313046


贝叶斯估计:

贝叶斯估计,是在给定训练数据D时,确定假设空间H中的最佳假设。 最佳假设:一种方法是把它定义为在给定数据D以及H中不同假设的先验概率的有关知识下的最可能假设。贝叶斯理论提供了一种计算假设概率的方法,基于假设的先验概率、给定假设下观察到不同数据的概率以及观察到的数据本身。

先验概率和后验概率用P(h)表示在没有训练数据前假设h拥有的初始概率。P(h)被称为h的先验概率。先验概率反映了关于h是一正确假设的机会的背景知识如果没有这一先验知识,可以简单地将每一候选假设赋予相同的先验概率。类似地,P(D)表示训练数据D的先验概率,P(D|h)表示假设h成立时D的概率。机器学习中,我们关心的是P(h|D),即给定D时h的成立的概率,称为h的后验概率。

贝叶斯公式提供了从先验概率P(h)、P(D)和P(D|h)计算后验概率P(h|D)的方法p(h|D)=P(D|H)*P(H)/P(D),P(h|D)随着P(h)和P(D|h)的增长而增长,随着P(D)的增长而减少,即如果D独立于h时被观察到的可能性越大,那么D对h的支持度越小。

贝叶斯法则又被称为贝叶斯定理、贝叶斯规则,是指概率统计中的应用所观察到的现象对有关概率分布的主观判断(即先验概率)进行修正的标准方法。当分析样本大到接近总体数时,样本中事件发生的概率将接近于总体中事件发生的概率。

  作为一个规范的原理,贝叶斯法则对于所有概率的解释是有效的;然而,频率主义者和贝叶斯主义者对于在应用中概率如何被赋值有着不同的看法:频率主义者根据随机事件发生的频率,或者总体样本里面的个数来赋值概率;贝叶斯主义者要根据未知的命题来赋值概率。


最大似然估计(MLE):

给定一堆数据,假如我们知道它是从某一种分布中随机取出来的,可是我们并不知道这个分布具体的参,即“模型已定,参数未知”。例如,我们知道这个分布是正态分布,但是不知道均值和方差;或者是二项分布,但是不知道均值。 最大似然估计(MLE,Maximum Likelihood Estimation)就可以用来估计模型的参数。MLE的目标是找出一组参数,使得模型产生出观测数据的概率最大:

$argmax_{\mu}P(X;\mu)$

$argmax_{\mu}P(X;\mu)$表示为似然函数,表示在参数$\mu$下出现观测数据的概率。我们假设每个观测数据是独立的,那么有:

$P(x_{1},x_{2}....x_{n};\mu)=\prod_{i=1}^{n}P(x_{i};\mu)$

为了求导方便,一般对目标取log。 所以最优化对似然函数等同于最优化对数似然函数:

$argmax_{\mu}P(X;\mu)=argmax_{\mu}logP(X;\mu)$

举一个抛硬币的简单例子。 现在有一个正反面不是很匀称的硬币,如果正面朝上记为H,反面朝上记为T,抛10次的结果如下:

T,T,T,T,T,H,H,T,T,T

求出这个硬币正面朝上的概率有多大? 显然可以得到为0.2

使用MLE 进行求解:

提前知道:每一次抛硬币都是一个二项分布,设这面朝上的概率为$\mu$,似然函数:

$P(X;\mu)=\prod_{i=1}^{n}P(x_{i};\mu)=\prod_{i=1}^{i=n}\mu^{x_{i}}(1-\mu)^{1-x_{i}}$

x=1 表示正面向上,x=0表示反面向上,则对数:

$logP(X;\mu)=$log$\prod_{i=1}^{n}\mu^{x_{i}}(1-\mu)^{1-x_{i}}$

      $=\sum_{i=1}^{n}$log${\mu^{x_{i}}(1-\mu)^{1-x_{i}}}$

      $=\sum_{i=1}^{n}[$log$\mu^{x_{i}}+log(1-\mu)^{1-x_{i}}]$

      $=\sum_{i=1}^{n}[x_{i}$log$\mu + (1-x_{i})log(1-\mu)]$

求导:

$\frac{\partial}{\partial \mu}$log$P(X;\mu) = \sum_{i=1}^{n}\frac{\partial [x_{i}log \mu + (1-x_{i})log(1-\mu)] }{\partial \mu}$

                  $=\frac{1}{\mu}\sum_{i=1}^{n}x_{i} - \frac{1}{1-\mu}\sum_{i=1}^{n}(1-x_{i})$

令导数为0,得到

$\hat{\mu}_{ML}= \frac{1}{n}\sum_{i=1}^{n}x_{i} $

=0.2


最大后验估计:

MLE找出一组参数使得似然函数$argmax_{\mu}P(X;\mu)$最大的参数; 现在假设参数$\mu$有一个先验概率。假设这个硬币是均匀的,也就是说$\mu=0.5$的可能性最大,$\mu=0.2$的可能性比较小,那么参数怎么估计呢?

这就是MAP要考虑的问题,MAP优化的是一个后验概率,即给定了观测值后使$\mu$的概率最大:

$\hat{\mu}_{MAP} = argmax_{\mu} P(\mu|X)$

以上根据贝叶斯公式展开:

$\hat{\mu}_{MAP} = argmax_{\mu} \frac{P(X|\mu)P(\mu)}{P(X)}$

          $=argmax_{\mu}P(X|\mu)P(\mu)$

第一项$P(X|\mu)$是似然函数,第二项$P(\mu)$是参数的先验知识,取log之后:

$argmax_{\mu} Pr(\mu|X) = argmax_{\mu}log Pr(\mu|X)$

            $=argmax_{\mu}log \prod_{x_{i}\in X} Pr(x_{i}|\mu)\cdot Pr(\mu)$

            $ =argmax_{\mu} \sum_{x_{i}\in X} {logPr(x_{i}|\mu)}+ logPr(\mu)  $

抛硬币的例子,假设参数$\mu$有一个先验分布,服从Beta分布,即:

$Pr(\mu) = Beta(\mu|\alpha,\beta) = \frac{1}{B(\alpha,\beta)}\cdot \mu^{\alpha-1}(1-\mu)^{\beta-1}$

每次抛硬币任然服从二项分布(伯努利分布):

$Pr(x_{i}|\mu) = Bernouli(x_{i}|\mu) = \mu^{x_{i}}(1-\mu)^{1-x_{i}}$

那么目标函数的倒是为

$\frac{\partial }{\partial \mu} L= \sum_{i} \frac{\partial}{\partial \mu} log Bernoulli(x_{i}|\mu) + \frac{\partial}{\partial \mu} log Beta(\mu| \alpha, \beta)$

求导的第一项在上面的MLE中已经给出,第二项为:

$\frac{\partial}{\partial \mu} log Beta(\mu| \alpha,\beta) = \frac{\partial}{\partial \mu} log {\frac{\Gamma(\alpha + \beta)}{\Gamma(\alpha) \cdot \Gamma(\beta)} \cdot \mu^{\alpha-1} \cdot (1-\mu)^{\beta - 1}}$

            $= \frac{\partial}{\partial \mu}$ log $\frac{\Gamma(\alpha + \beta)}{\Gamma(\alpha)\cdot \Gamma(\beta)} + \frac{\partial}{\partial \mu}$ log $\mu^{\alpha-1} (1-\mu)^{\beta-1}$

$= 0 + \frac{\partial}{\partial \mu}$ log$\mu^{\alpha-1} (1-\mu)^{\beta-1}$

            $= \frac{\alpha-1}{\mu} - \frac{\beta - 1}{1-\mu}$ '

令导数为零,求解为:

$\hat{\mu}_{MAP} = \frac{n_{H} + \alpha - 1}{n + \alpha + \beta -2}$

其中$n_{H}$表示正面朝上的次数, MAP与MLE相比,结果多了一些先验分布的参数;


Beta分布

bata分布是常见的一种先验分布,它的形状由两个参数控制$\alpha,\beta$(如图1所示),定义域[0,1].

figure 1

$P(\mu) = \frac{1}{B(\alpha,\beta)}\cdot \mu^{\alpha-1} (1-\mu)^{\beta-1}$

where $\mu \in [0,1]$, and:

$B(\alpha,\beta) = \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\cdot \Gamma(\beta)}$

where $\Gamma$ is Gamma function

Beta 分布的最大值是X等于$\frac{\alpha-1}{\alpha + \beta -2}$的时候:

Beta分布的特性:

Beta(1,1)等于均值分布$Uni(0,1)$;

作为概率的概率分布,Beta($\alpha,\beta$)在(0,1)上对$\theta$积分必定为1;

Beta($\alpha,\beta$)同时能作为先验和后验分布,必定能够模拟各种概率分布情况

Beta分布可以模拟出(0,1)上任意点为峰值的曲线,这表明Beta分布可以模拟极大似然法求出的任意最大值点概率值;


所以,在抛硬币中,先验知识是硬币是匀称的,那么让$\alpha = \beta$ , 这两个值相等对最终结果很有影响;

这两个值越大 偏离匀称的可能性越小;

MAP;MLE的更多相关文章

  1. 条件随机场(crf)及tensorflow代码实例

    对于条件随机场的学习,我觉得应该结合HMM模型一起进行对比学习.首先浏览HMM模型:https://www.cnblogs.com/pinking/p/8531405.html 一.定义 条件随机场( ...

  2. PRML Chapter3

    曲线拟合的几种方法 最大似然估计MLE,最大后验概率MAP:MLE和MAP MLE 给定一堆数据,假如我们知道它是从某一种分布中随机取出来的,可是我们并不知道这个分布具体的参,即"模型已定, ...

  3. 最大似然估计 (MLE) 最大后验概率(MAP)

    1) 最大似然估计 MLE 给定一堆数据,假如我们知道它是从某一种分布中随机取出来的,可是我们并不知道这个分布具体的参,即"模型已定,参数未知". 例如,我们知道这个分布是正态分布 ...

  4. 最大似然估计(MLE)和最大后验概率(MAP)

    最大似然估计: 最大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”.简单而言,假设我们要统计全国人口的身高,首先假设这个身高服从服从正态分布,但是该分布的均值与方差未知 ...

  5. MLE MAP EM

    1.最大似然估计 (MLE):  什么是最大似然估计?     问题:给定一组观察数据还有一个参数待定的模型,如何来估计这个未知参数呢? 观察数据(x1,y1)......(xn,yn)   待定模型 ...

  6. 频率学派与贝叶斯学派(先验分布与后验分布,MLE和MAP)

    频率学派(古典学派)和贝叶斯学派是数理统计领域的两大流派. 这两大流派对世界的认知有本质的不同:频率学派认为世界是确定的,有一个本体,这个本体的真值是不变的,我们的目标就是要找到这个真值或真值所在的范 ...

  7. 详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解

    转载声明:本文为转载文章,发表于nebulaf91的csdn博客.欢迎转载,但请务必保留本信息,注明文章出处. 原文作者: nebulaf91 原文原始地址:http://blog.csdn.net/ ...

  8. 【机器学习基本理论】详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解

    [机器学习基本理论]详解最大似然估计(MLE).最大后验概率估计(MAP),以及贝叶斯公式的理解 https://mp.csdn.net/postedit/81664644 最大似然估计(Maximu ...

  9. 机器学习的MLE和MAP:最大似然估计和最大后验估计

    https://zhuanlan.zhihu.com/p/32480810 TLDR (or the take away) 频率学派 - Frequentist - Maximum Likelihoo ...

随机推荐

  1. Java8之日期处理

    简介 Java8除了有较大更新的 lambda. Stream ,还推出了全新的日期时间API.Java之前处理日期.日历和时间的不足之处主要有: 日期类型为可变类型,非线程安全使其应用非常受限 没有 ...

  2. Linux Shell脚本简单语法汇总(Deepin下运行)

    整理自: https://www.runoob.com/?s=shell Shell 脚本(shell script),是一种为 shell 编写的脚本程序. 业界所说的 shell 通常都是指 sh ...

  3. burp suite 之 proxy(代理)

    proxy 代理 通过 Options(选项)的edit(编辑) 更改代理的端口号.我的是10086 (不许更改与本机使用端口冲突的端口号) 使用火狐浏览器将代理更改为10086. 抓取火狐浏览器的包 ...

  4. 详细分析 Java 中启动线程的正确和错误方式

    目录 启动线程的正确和错误方式 前文回顾 start 方法和 run 方法的比较 start 方法分析 start 方法的含义以及注意事项 start 方法源码分析 源码 源码中的流程 run 方法分 ...

  5. 树形DP 学习笔记

    树形DP学习笔记 ps: 本文内容与蓝书一致 树的重心 概念: 一颗树中的一个节点其最大子树的节点树最小 解法:对与每个节点求他儿子的\(size\) ,上方子树的节点个数为\(n-size_u\) ...

  6. Python实现的数据结构与算法之链表详解

    一.概述 链表(linked list)是一组数据项的集合,其中每个数据项都是一个节点的一部分,每个节点还包含指向下一个节点的链接.根据结构的不同,链表可以分为单向链表.单向循环链表.双向链表.双向循 ...

  7. C\C++中计时、延时函数

    转载:https://blog.csdn.net/keith_bb/article/details/53055380 C\C++标准库中提供了两种计时函数clock()和time().其用法如下:(1 ...

  8. matlab做gaussian高斯滤波

    原文链接:https://blog.csdn.net/humanking7/article/details/46826105 核心提示 在Matlab中高斯滤波非常方便,主要涉及到下面两个函数: 函数 ...

  9. 开始在Windows上开发Android

    介绍 鉴于您正在阅读这篇文章,您很可能已经知道android是什么了.可能.在科幻小说和电影中,机器人本质上是具有拟人化特征的机器人.还记得<星球大战>里的C-3PO吗?那<星际迷航 ...

  10. 多测师讲解自动化--rf断言(下)--_高级讲师肖sir

    1.Page Should Contain 1.1存在页面上的内容 1.2 不存在页面上的内容, 运行抛异常 1.3 Page Should Not Contain 1.4 1.5 输入页面元素,判断 ...