Intro to Probabilistic Model
概率论复习
概率(Probability)
频率学派(Frequentist):由大量试验得到的期望频率(致命缺陷:有些事情无法大量试验,例如一封邮件是垃圾邮件的概率,雷达探测的物体是一枚导弹的概率);
贝叶斯学派(Bayesian):基于已有信息而对预测结果的不确定性;
离散随机变量(Discrete Random Variables)
设\(X \in \left \{x_{1},\ x_{2},\ ...,\ x_{n} \right \}\) 为离散随机变量
概率质量函数(Probability Mass Function)
\[f_{X}(x) = P(X = x),\quad where\ 0 \leqslant P(X = x) \leqslant 1\]
\[\sum_{i=1}^{n}f_{X}(x_i)=1\]
联合概率(Joint Probability)
\[P(X = x, Y = y)\]
边缘概率(Marginal Probability)
\[P(X = x) = \sum_{y}{P(X = x, Y = y)} = \sum_{y}{P(X = x|Y = y)P(Y = y)}\]
条件概率(Conditional Probability)
\[P(X = x|Y = y) = \frac{P(X = x, Y = y)}{P(Y = y)}\]
贝叶斯理论(Bayes‘ Theorem)
\[P(X = x|Y = y) = \frac{P(Y = y|X = x)P(X = x)}{P(Y = y)}\]
独立与条件独立(Independence and Conditional Independence)
无条件独立
\[X \perp Y \leftrightarrow P(X, Y) = P(X)P(Y)\]
即:联合概率等于边缘概率之积
随机变量间的无条件独立在现实中十分罕见,概率模型中的变量(X=是否下大雨,Y=是否打球)间通常都存在互相影响的因素。
但这些因素大多是通过其他变量(如 Z=是否在室外)间接影响。
条件独立
\[X \perp Y|Z \leftrightarrow P(X, Y|Z) = P(X|Z)P(Y|Z)\]
即:条件联合密度等于条件边缘密度之积
例子:X = 是否下大雨,Y = 是否打球,Z = 是否在室外;
如果我们知道 Z,则预测 X 不需要知道 Y,预测 Y 也不需要知道 X,亦即 X 与 Y 在 Z 的条件下独立。
连续随机变量(Continuous Random Variables)
概率密度函数(Probabilistic Density Function)
\[f(x) = p(X = x)\]
\[\int_{-\infty}^{+\infty}f(x)\mathrm{d}x = 1\]
累积分布函数(Accumulative Distribution Function)
\[F(x) = P(X \leqslant x) = \int_{-\infty}^{x}f(x)\mathrm{d}x\]
ADF 是 单调递增函数(monotonically increasing function)
期望(Expectation)
期望亦即平均值(Mean)。
- 对于离散随机变量:
\[E(X) = \sum_{x}{xP(X=x)} \triangleq \mu\] - 对于连续随机变量:
\[E(X) = \int_{-\infty}^{+\infty}xf(x)\mathrm{d}x \triangleq \mu\]
方差(Variance)
方差用来描述一个分布的“分散程度”(亦即“集中程度”)
\begin{align*}\notag
D(X) &= E[(X - \mu)^2] \triangleq \sigma^2 \\
&= E(X^2) - \mu^2
\end{align*}
分位数(Quantiles)
设 \(F(x)\) 是 CDF,\(F^{-1}(\alpha)\) 是 \(F(x)\) 的反函数,则 \(\alpha\) 是累计概率 \(F(x_{\alpha})\),也是概率密度的积分(即面积)。
\[\alpha=F(x_{\alpha}) = \int_{-\infty}^{x_{\alpha}}f(x)\mathrm{d}x\]
二元数据模型(Binary Data Model)
二元随机变量 (Binary Random Variable)是指随机变量\(X \in \{0, 1\}\),例如抛硬币的正、反面两种结果,某单词在文档中出现与不出现两种结果。
二项分布(Binomial Distribution)
已知某事件的发生概率与不发生概率分别为 \(\theta\) 和 \((1- \theta)\),
若 \(X \sim Bin(n, \theta)\),则称\(X\) 服从概率为\(\theta\)和\((1- \theta)\),试验次数为\(n\) 的二项分布
设某随机变量 \(X\) 服从二项分布,其 PMF(概率质量函数)为:
\[Bin(x|n;\theta) = C_{n}^{x} \cdot \theta^{x} (1-\theta)^{n-x}, \quad where \ C_{n}^{x} = \frac{n!}{(n-x)!x!}, \quad x = 0, 1, ..., n\]
该离散函数的每个点都表示\(n\)次试验下该事件发生\(x\)次的概率。
伯努利分布(Bernoulli Distribution)
当二项分布的\(n=1\)时,称此特殊的二项分布为伯努利分布,其 PMF 为:
\[Ber(x;\theta) = \theta^{x} (1-\theta)^{1-x}, \quad where \ \in \{0, 1\}\]
一个自然的问题是:如何估计\(\theta\)这个参数的值呢?
对伯努利模型的参数估计(Parameter Estimation)
考虑对一个伯努利事件的\(n\)次观察值:\(D = \{x_{1}, x_{2}, ..., x_{n}\} \quad where \ x \in \{0, 1\}\)
最大似然估计(Maximum Likelihood Estimation)
假设每个观测值独立同分布(Independent Identical Distribution),我们可以写出这些观测值在伯努利模型下的似然性(likelihood):
\[p(D| \theta) = \prod_{i=1}^{n} p( x_{i} | \theta ) = \prod_{i=0}^{n} \theta^{x_i}(1-\theta)^{1-x_i}\]
定义似然函数:
\[L(\theta) = logp(D|\theta) = \sum_{i=0}^{n} x_i log\theta + (1-x_i) log(1-\theta)\]
我们需要找到\(p(D| \theta)\)关于\(\theta\)的最大似然估计值:
\[Set \ \frac{\mathrm{d} L(\theta)}{\mathrm{d} \theta} = 0,\quad\ we\ obtain \\
\hat{\theta} = \frac{1}{n}\sum_{i=1}^{n}x_i\]
即\(x=1\)在所有观测值中出现的比例。
- 最大似然估计方法存在的问题
在某些情况,尤其是当数据量比较小时,可能会出现\(x=1\)从未出现的情况。(例如掷3次硬币都是反面,Volleyball 在5篇体育类新闻中均未出现)
此时很明显出现了过拟合(Overfitting)。
解决方案:“平滑处理”(Smooth)(依据?)——用参数\(\theta\)的先验(prior)做贝叶斯推断(Bayesian Inference)
贝叶斯推断(Bayesian Inference)
β分布(Beta Distribution)
β分布定义在区间\([0, 1]\)之间:
\[Beta(x|a,b) = \frac{1}{B(a,b)}x^{a-1}(1-x)^{b-1}, \\
where \quad B(a,b) = \frac{\Gamma(a)\Gamma(b)}{\Gamma(a+b)} \quad a, b > 0\]
其数字特征(Numerical Characteristic)分别为
\[\mu = \frac{a}{a+b}\\
\sigma = \frac{ab}{(a+b)^2(a+b+1)}\]
- 当\(a = b=1\)时,我们得到的是均匀分布;
- 当\(a, b < 1\)时,我们得到的是双峰分布(峰值在\(x=0, x=1\)处);
- 当\(a, b > 1\)时,我们得到的是单峰分布;
β-伯努利模型(Beta-Bernoulli Model)
- 似然概率(Likelihood)
假设观测数据 iid,则似然概率可以写为:
\[p(D|\theta) = \theta^{n_1}(1-\theta)^{n_0} \\
where \quad n_1 = \sum_{i=1}^{n} \mathbb{I}(x_i = 1), \quad n_0 = \sum_{i=1}^{n} \mathbb{I}(x_i = 0)\]
\(n_0\),\(n_1\)分别表示\(D\)中\(x=0\),\(x=1\)出现的次数。(很明显,\(n = n_0 + n_1\))
这两个数字称为数据\(D\)的充分统计量(Sufficient Statistics),意思是我们只需要这两个统计量,就可以得到推断\(\theta\)所需要的关于数据\(D\)的全部信息。
- 先验概率(Prior)
首先,我们需要先验定义在区间\([0, 1]\)之间。其次,如果先验和似然的形式相同,即类似于这种:
\[p(\theta) \propto \theta^{\gamma_1}(1-\theta)^{\gamma_0}\\
where \quad \gamma_1\ and\ \gamma_0\ are\ some\ parameters\]
我们就可以方便地求出后验概率(指数相加即可):
\[p(\theta|D) \propto p(\theta)p(D|\theta) = \theta^{N_1+\gamma_1} \theta^{N_0+\gamma_0}\]
这种似然形式相同的先验,我们称之为共轭先验(Conjugate Prior)
对于伯努利模型,其共轭先验就是上面提到的β分布:
\[Beta(\theta|a,b) \propto \theta^{a-1} (1-\theta)^{b-1}\]
- 后验概率(Posterior)
根据先验、似然、贝叶斯公式,我们可以求出后验概率:
\begin{align*}\notag
p(\theta|D,a,b) &= \frac {p(\theta|a, b)p(D|\theta)} {p(D, a, b)}\\
&= \frac {p(\theta|a, b)p(D|\theta)} {\int_0^1p(\theta|a, b)p(D|\theta,a,b) \mathrm{d}x}\\
&= Beta(\theta|n_1+a, n_0+b)
\end{align*}
\(a, b\)可视为伪计数(Pseudo Count),假设先验服从均匀分布,即先验参数\(a=1,b=1\),此时相当于对数据做拉普拉斯平滑(Laplace Smoothing),也叫 Laplace’s Rule of Succession。
- Bayesian Sequential Update
使用分批(Batch)数据 \(D_i \quad i = 1, 2, ..., N\) 更新后验概率:
\begin{align*}\notag
p\left (\theta \bigg\rvert \bigcup_{i=1}^{N}D_i,a,b\right ) &\propto \theta^{a-1+\sum_{i=1}^{N}n_{1i}} (1-\theta)^{b-1+\sum_{i=1}^{N}n_{0i}}\\
&\propto Beta\left (\theta \ \bigg\rvert \ a+\sum_{i=1}^{N}n_{1i}, b+\sum_{i=1}^{N}n_{0i}\right )
\end{align*}
- Bayesian Predictions —— 后验预测分布(Posterior Predictive Distribution)
预测下一次伯努利试验结果
\[p(x=1|D, a,b) = \int_0^1 p(x=1|\theta)p(\theta|D,a,b)\mathrm{d}\theta\]
\begin{align*}\notag
p(\hat{x}=1|D, a,b) &= \int_0^1 p(x=1|\theta)p(\theta|D,a,b)\mathrm{d}\theta\\
&= \int_0^1 \theta Beta(\theta|n_1+a,n_0+b) \mathrm{d}\theta\\
&= \mathbb{E}(\theta|D) = \frac{n_1+a}{n_1+a+n_0+b}
\end{align*}
由此可见,当\(n_0, n_1 \gg b, a\)时,先验的作用可忽略不计。
类别数据模型(Categorical Data Model)
类别随机变量(Categorical Random Variable) 是 多元随机变量 (Categorical Random Variable) 的离散形式,是指随机变量\(X\)存在K种状态,例如掷K面体的骰子有K种结果,某单词在长度为K的词汇(Vocabulary)中出现。(通常使用 One-hot Encoding 表示不同状态)
狄利克雷分布(Dirichlet Distribution)
狄利克雷分布是多元普遍化(Multivariate Generalization)的β分布,定义在 Probability Simplex 上:
\[S_K = \{x:0 \leqslant x_k \leqslant 1 \ \wedge \ \sum_{k=1}^{K} x_k = 1 \}\]
其 PDF 定义为:
\[Dir(\vec{x}|\vec{\alpha}) = \frac{1}{B( \vec{\alpha} )} \prod_{k=1}^K x_k^{ \alpha_k -1 } \mathbb{I}(x \in S_K)\\
where \quad B(\vec{\alpha}) = \frac{\prod_{k=1}^K \Gamma(\alpha_k)}{\Gamma(\sum_{k=0}^K\alpha_k)} \quad a, b > 0\]
\(\alpha_k\): 某元素值的大小 \(\alpha_k\) 决定曲面的峰值离该元素有多近。如果\(\vec{\alpha}\) 中所有元素都小于1,则曲面呈凹形,每个元素的位置都有一个尖端。
\(\sum_{k=0}^K\alpha_k\): \(\vec{\alpha}\) 中所有元素之和越大,则曲面越陡峭;
上图是5维对称狄利克雷分布的采样样例,左图参数为 \(\vec{\alpha}=(0.1, 0.1, 0.1, 0.1, 0.1)\),分布非常稀松(sparse);右图参数为\(\vec{\alpha}=(1.0, 1.0, 1.0, 1.0, 1.0)\),分布均匀(uniform)且密集(dense)。
数字特征为:
\[
\mu=\frac{\alpha_k}{\alpha_{sum}}\\
\sigma = \frac{\alpha_k(\alpha_{sum}-\alpha_k)}{\alpha_{sum}^2(\alpha_{sum}+1)}
\]
狄利克雷-多项分布模型(Dirichlet-Multinomial Model
某数据集中有 \(n\) 个数据点(data case)\(D=\{x_1, ..., x_n\}\);而 \(x_i\in \{1, ..., K\}\) 表示一次试验(一个数据点)有\(K\)种可能事件,通常使用 one-hot encoding;参数\(\theta\)定义在 Probability Simplex 上。
似然概率(Likelihood)
假设每条数据 iid,则可得到似然概率:
\[
P(D|\theta)=\prod_{k=1}^K \theta_k^{\sum_{i=1}^nx_{ik}}=\prod_{k=1}^K \theta_k^{n_k}
\]
\(n_k\) 表示第 \(k\) 种事件发生的次数。这也是模型的充分统计量(Sufficient Statistics)
先验概率(Prior)
参数 \(\vec\theta\) 可视为 \(K\) 维向量,上面得到的似然概率是 \(K\) 个带指数参数相乘的形式。我们需要一个与似然概率形式相同的共轭先验,而狄利克雷分布的PDF正好满足这一点。因此可以借用狄利克雷分布:
\[
Dir(\vec{\theta}|\vec{\alpha}) = \frac{1}{B( \vec{\alpha} )} \prod_{k=1}^K \theta_k^{ \alpha_k -1 } \mathbb{I}(x \in S_K)
\]
后验概率(Posterior)
后验正比于先验和似然之积:
\[
\begin{align*}\notag
P(\theta|D) &\propto P(\theta)P(D|\theta)\\
&\propto \frac{1}{B( \vec{\alpha} )} \prod_{k=1}^K \theta_k^{ \alpha_k -1 }\theta_k^{n_k}\\
&\propto \frac{1}{B( \vec{\alpha} )} \prod_{k=1}^K \theta_k^{ (\alpha_k+n_k) -1 }\\
&\propto Dir(\vec{\theta}|\vec{\alpha}+\vec n)
\end{align*}
\]
\(\vec n\)是数据集 \(D\) 的充分统计量,\(\vec\alpha\) 相当于 pseudo count
后验预测分布(Posterior Predictive Distribution)
预测下一次试验结果是第 \(k\) 种事件发生的概率:
\begin{align*}\notag
P(x=k|D, \vec \alpha)&=\int_{\vec{\theta}} P(x=k|\vec \theta)P(\vec \theta|D,\vec \alpha) \mathrm{d}\vec \theta \\
&= \frac{\alpha_k+n_k}{\sum_k(\alpha_k+n_k)}
\end{align*}
\(\alpha_k\) 就是该 feature 的 pseudo count。
Written with StackEdit.
Intro to Probabilistic Model的更多相关文章
- [IR] Probabilistic Model
If user has told us some relevant and some irrelevant documents, then we can proceed to build a prob ...
- PGM:概率图模型Graphical Model
http://blog.csdn.net/pipisorry/article/details/51461878 概率图模型Graphical Models简介 完全通过代数计算来对更加复杂的模型进行建 ...
- 深度学习基础 Probabilistic Graphical Models | Statistical and Algorithmic Foundations of Deep Learning
目录 Probabilistic Graphical Models Statistical and Algorithmic Foundations of Deep Learning 01 An ove ...
- (转)Awesome Courses
Awesome Courses Introduction There is a lot of hidden treasure lying within university pages scatte ...
- (转)Three challenges you’re going to face when building a chatbot
转自:https://blog.infermedica.com/three-challenges-youre-going-to-face-when-building-a-chatbot/ ...
- (转)The Neural Network Zoo
转自:http://www.asimovinstitute.org/neural-network-zoo/ THE NEURAL NETWORK ZOO POSTED ON SEPTEMBER 14, ...
- (转)A Survival Guide to a PhD
Andrej Karpathy blog About Hacker's guide to Neural Networks A Survival Guide to a PhD Sep 7, 2016 T ...
- {ICIP2014}{收录论文列表}
This article come from HEREARS-L1: Learning Tuesday 10:30–12:30; Oral Session; Room: Leonard de Vinc ...
- Fuzzy Probability Theory---(2)Computing Fuzzy Probabilities
Let $X=\{x_1,x_2,...,x_n\}$ be a finite set and let $P$ be a probability function defined on all sub ...
随机推荐
- iOS之利用runtime,避免可变数组和可变字典为nil或者数组越界导致的崩溃
NSArray.NSMutableArray.NSDictionary.NSMutableDictionary.是我们的在iOS开发中非常常用的类.当然,在享受这些类的便利的同时,它们也给我们带来一些 ...
- Java设计模式六大原则-1
Java设计模式六大原则-1 做Java程序开发的每天都在使用JDK,Spring,SpringMvc,Mybatis,Netty,MINA等框架,但很少有人懂得背后的原理.即使打开跟下原码也是一头雾 ...
- Nodejs中获取参数以及处理参数
先看题干效果 在这里我们建了一个表单 填入表单需要提交的信息 对两个参数进行获取和一个加法计算 表单html代码 <form action='http://localhost:8080' met ...
- vue 新属性学习
1, $listeners 父级元素 <base-input v-on:focus.native="onFocus"></base-input> 子级元素 ...
- JS 匿名函数或自执行函数总结
JS引擎在遇到function关键字时做如下两种处理: 1.当语句是以function关键字开头:此时的JS语句解释为函数声明,因此function关键字后面必须要跟函数名字,如果写成匿名函数,则会报 ...
- linux 操作系统下简单的命令行操作
一: 配置linux 操作系统虚拟主机 首先安装一个虚拟机(百度上面有很多哦) , 我主要使用的是VMware workstation 然后 下载一个centos镜像6..5到7都可以; 然后用VMw ...
- java端连接zookeeper出现unknowHostException错误
连接zookeeper出现异常:unknowHostException 出现这种错误一开始以为是zookeeper的配置文件出了问题,所以一直在找配置文件的问题,但是zookeeper在虚拟机里面是可 ...
- django_orm 基本操作
单表操作 增的操作: 一种方式:表名.objects.create(name='xxoo') 第二种方式:表名(name='xxoo') obj=表名(name='xxoo') obj.save() ...
- mysql的数据类型与表约束
数据类型 (详细数据类型请参考:http://www.runoob.com/mysql/mysql-data-types.html) 数字 整型 tinyint int bigint 小数: flo ...
- python爬xx图代码
今日 好热,照样是挖洞挖不到,看了几天的python爬虫,学会了xpath解析 撸一个代码玩玩] 不要说什么,优化之类的,刚学完,跑了一阵 ,还可以 挺稳定 # -*- coding:utf-8 - ...