数学与编程——概率论与数理统计
2015-11-12 15:06
253 查看
D(x)=E{[x−E(x)]2}:相对于平均数差距的平方的期望;
数理统计一词的理解:mathematical stats,也即用数学的观点审视统计,为什么没有数理概率,因为概率本身即为数学,而对于统计,random variable 的性质并不全然了解,所以数理统计在一些书里又被称作:stats in inference(统计推论,已知 ⇒ 未知)
概率与统计的中心问题,都是random variable,
fX(x)={Pr(X=x),0,x∈Sx∈R∖S
注意这在所有实数上,包括那些X不可能等于的实数值上,都定义了pmf,只不过在这些X不可能取的实数值上,fX(x)取值为0(x∈R∖S,Pr(X=x)=0)。
离散型随机变量概率质量函数(pmf)的不连续性决定了其累积分布函数(cdf)也不连续。
p(θ|X)=p(θ)p(X|θ)p(x)
p(X|θ):似然(likelihood)
p(θ):先验(prior)
p(X):归一化常数(normalizing constant)
我们定义:如果先验分布(p(θ))和似然函数(p(X|θ))可以使得先验分布(p(θ))和后验分布(p(θ|X))有相同的形式(如,Beta(a+k, b+n-k)=Beta(a, b)*binom(n, k)),那么就称先验分布与似然函数是共轭的(成Beta分布与二项分布是共轭的)。
几个常见的先验分布与其共轭分布
p(θ|X)=p(θ)p(X|θ)p(X)
可将θ看成欲估计的分布的参数,X表示样本,p(X|θ)则表示似然。
现给定样本集\mathcal{D}=\{x_1,x_2,\ldots,x_N\}D={x1,x2,…,xN},似然函数为:
p(\mathcal{D}|\theta)=\prod_{n=1}^Np(x_n|\theta)p(D|θ)=∏n=1Np(xn|θ)
为便于计算,再将其转换为对数似然函数形式:
\ln p(\mathcal{D}|\theta)=\sum_{n=1}^N\ln p(x_n|\theta)lnp(D|θ)=∑n=1Nlnp(xn|θ)
我们不妨以伯努利分布为例,利用最大似然估计的方式计算其分布的参数(pp),伯努利分布其概率密度函数(pdf)为:
f_X(x)=p^x(1-p)^{1-x}=\left \{
\begin{array}{ll}
p,&\mathrm{x=1},\\
q\equiv1-p ,&\mathrm{x=0},\\
0,&\mathrm{otherwise}
\end{array}
\right.fX(x)=px(1−p)1−x=⎧⎩⎨⎪⎪p,q≡1−p,0,x=1,x=0,otherwise
整个样本集的对数似然函数为:
\ln p(\mathcal{D}|\theta)=\sum_{n=1}^N\ln p(x_n|\theta)=\sum_{n=1}^N\ln (\theta^{x_n}(1-\theta)^{1-x_n})=\sum_{n=1}^Nx_n\ln\theta+(1-x_n)\ln(1-\theta)lnp(D|θ)=∑n=1Nlnp(xn|θ)=∑n=1Nln(θxn(1−θ)1−xn)=∑n=1Nxnlnθ+(1−xn)ln(1−θ)
等式两边对\thetaθ求导:
\frac{\partial \ln(\mathcal{D}|\theta)}{\partial \theta}=\frac{\sum_{n=1}^Nx_n}{\theta}-\frac{N}{1-\theta}+\frac{\sum_{n=1}^Nx_n}{1-\theta}∂ln(D|θ)∂θ=∑Nn=1xnθ−N1−θ+∑Nn=1xn1−θ
令其为0,得:
θml=∑Nn=1xnN
Beta分布的峰值在a−1b+a−2处取得。其中Γ(x)≡∫∞0ux−1e−udu有如下性质:
Γ(x+1)=xΓ(x)Γ(1)=1andΓ(n+1)=n!
我们来看当先验分布为Beta分布时的后验分布:
p(θ)=1B(a,b)θa−1(1−θ)b−1p(X|θ)=(nk)θk(1−θ)n−kp(θ|X)=1B(a+k,b+n−k)θa+k−1(1−θ)b+n−k−1
对应于python中的
读作:P of X given Y,下划线读作
X:所关心事件
Y:条件(观察到的,已发生的事件),conditional
比如一个人答题,有A,B,C,D四个选项,在答题者对题目一无所知的情况下,他答对的概率自然就是14,而是如果具备一定的知识,排除了A,C两个错误选项,此时他答对的概率简单计算就增加到了12。
本质是样本空间从S={A,B,C,D},变为了S′={B,D}。
新样本空间下P(A|排除A/C)=0,P(C|排除A/C)=0,归纳出来,也即某实验结果(outcome,oi)与某条件Y不相交,则:
P(oi|Y)=0
最后我们得到条件概率的计算公式:
P(oi|Y)=P(oi)P(o1)+P(o2)+⋯+P(on)=P(oi)P(Y)Y={o1,o2,…,on}
考虑某事件X={o1,o2,q1,q2},已知条件Y={o1,o2,o3}发生了,则:
P(X|Y)=P(o1|Y)+P(o2|Y)+0+0=P(o1)P(Y)+P(o2)P(Y)=P(X∩Y)P(Y)
P(X|Y)=P(X∩Y)P(Y)
贝叶斯公式:
P(X|Y)=P(X)P(Y|X)P(Y)
其实是可从条件概率推导贝叶斯公式的:
P(A|B)=P(B|A)=P(A|B)P(B)===P(B|A)=P(A∩B)P(B)P(A∩B)P(A)P(A∩B)P(B)P(B)P(A∩B)P(A)P(B|A)P(A|B)P(B)P(A)
数理统计一词的理解:mathematical stats,也即用数学的观点审视统计,为什么没有数理概率,因为概率本身即为数学,而对于统计,random variable 的性质并不全然了解,所以数理统计在一些书里又被称作:stats in inference(统计推论,已知 ⇒ 未知)
概率与统计的中心问题,都是random variable,
PMF与PDF
PMF:probability mass function,概率质量函数,是离散型随机变量在各特定取值上的概率。与概率密度函数(PDF:probability density function)的不同之处在于:概率质量函数是对离散型随机变量定义的,本身代表该值的概率;概率密度函数是针对连续型随机变量定义的,本身不是概率(连续型随机变量单点测度为0),只有在对连续随机变量的pdf在某一给定的区间内进行积分才是概率。notation
假设X是一个定义在可数样本空间S上的离散型随机变量S⊆R,则其概率质量函数PMF为:fX(x)={Pr(X=x),0,x∈Sx∈R∖S
注意这在所有实数上,包括那些X不可能等于的实数值上,都定义了pmf,只不过在这些X不可能取的实数值上,fX(x)取值为0(x∈R∖S,Pr(X=x)=0)。
离散型随机变量概率质量函数(pmf)的不连续性决定了其累积分布函数(cdf)也不连续。
共轭先验(conjugate prior)
所谓共轭(conjugate),描述刻画的是两者之间的关系,单独的事物不构成共轭,举个通俗的例子,兄弟这一概念,只能是两者才能构成兄弟。所以,我们讲
这两个人是兄弟关系,A是B的兄弟,
这两个分布成共轭分布关系,A是B的共轭分布。
p(θ|X)=p(θ)p(X|θ)p(x)
p(X|θ):似然(likelihood)
p(θ):先验(prior)
p(X):归一化常数(normalizing constant)
我们定义:如果先验分布(p(θ))和似然函数(p(X|θ))可以使得先验分布(p(θ))和后验分布(p(θ|X))有相同的形式(如,Beta(a+k, b+n-k)=Beta(a, b)*binom(n, k)),那么就称先验分布与似然函数是共轭的(成Beta分布与二项分布是共轭的)。
几个常见的先验分布与其共轭分布
先验分布 | 共轭分布 |
---|---|
伯努利分布 | beta distribution |
Multinomial | Dirichlet Distribution |
Gaussian, Given variance, mean unknown | Gaussian Distribution |
Gaussian, Given mean, variance unknown | Gamma Distribution |
Gaussian, both mean and variance unknown | Gaussian-Gamma Distribution |
最大似然估计(MLE)
首先来看,大名鼎鼎的贝叶斯公式:p(θ|X)=p(θ)p(X|θ)p(X)
可将θ看成欲估计的分布的参数,X表示样本,p(X|θ)则表示似然。
现给定样本集\mathcal{D}=\{x_1,x_2,\ldots,x_N\}D={x1,x2,…,xN},似然函数为:
p(\mathcal{D}|\theta)=\prod_{n=1}^Np(x_n|\theta)p(D|θ)=∏n=1Np(xn|θ)
为便于计算,再将其转换为对数似然函数形式:
\ln p(\mathcal{D}|\theta)=\sum_{n=1}^N\ln p(x_n|\theta)lnp(D|θ)=∑n=1Nlnp(xn|θ)
我们不妨以伯努利分布为例,利用最大似然估计的方式计算其分布的参数(pp),伯努利分布其概率密度函数(pdf)为:
f_X(x)=p^x(1-p)^{1-x}=\left \{
\begin{array}{ll}
p,&\mathrm{x=1},\\
q\equiv1-p ,&\mathrm{x=0},\\
0,&\mathrm{otherwise}
\end{array}
\right.fX(x)=px(1−p)1−x=⎧⎩⎨⎪⎪p,q≡1−p,0,x=1,x=0,otherwise
整个样本集的对数似然函数为:
\ln p(\mathcal{D}|\theta)=\sum_{n=1}^N\ln p(x_n|\theta)=\sum_{n=1}^N\ln (\theta^{x_n}(1-\theta)^{1-x_n})=\sum_{n=1}^Nx_n\ln\theta+(1-x_n)\ln(1-\theta)lnp(D|θ)=∑n=1Nlnp(xn|θ)=∑n=1Nln(θxn(1−θ)1−xn)=∑n=1Nxnlnθ+(1−xn)ln(1−θ)
等式两边对\thetaθ求导:
\frac{\partial \ln(\mathcal{D}|\theta)}{\partial \theta}=\frac{\sum_{n=1}^Nx_n}{\theta}-\frac{N}{1-\theta}+\frac{\sum_{n=1}^Nx_n}{1-\theta}∂ln(D|θ)∂θ=∑Nn=1xnθ−N1−θ+∑Nn=1xn1−θ
令其为0,得:
θml=∑Nn=1xnN
Beta分布
f(μ|a,b)=Γ(a+b)Γ(a)Γ(b)μa−1(1−μ)b−1=1B(a,b)μa−1(1−μ)b−1Beta分布的峰值在a−1b+a−2处取得。其中Γ(x)≡∫∞0ux−1e−udu有如下性质:
Γ(x+1)=xΓ(x)Γ(1)=1andΓ(n+1)=n!
我们来看当先验分布为Beta分布时的后验分布:
p(θ)=1B(a,b)θa−1(1−θ)b−1p(X|θ)=(nk)θk(1−θ)n−kp(θ|X)=1B(a+k,b+n−k)θa+k−1(1−θ)b+n−k−1
对应于python中的
math.gamma()及matlab中的
gamma()函数(matlab中
beta(a, b)=gamma(a)gamma(b)/gamma(a+b))。
条件概率(conditional probability)
P(X|Y)读作:P of X given Y,下划线读作
given
X:所关心事件
Y:条件(观察到的,已发生的事件),conditional
条件概率的计算
仍然从样本空间(sample space)的角度出发。此时我们需要定义新的样本空间(给定条件之下的样本空间)。所以,所谓条件(conditional),本质是对样本空间的进一步收缩,或者叫求其子空间。比如一个人答题,有A,B,C,D四个选项,在答题者对题目一无所知的情况下,他答对的概率自然就是14,而是如果具备一定的知识,排除了A,C两个错误选项,此时他答对的概率简单计算就增加到了12。
本质是样本空间从S={A,B,C,D},变为了S′={B,D}。
新样本空间下P(A|排除A/C)=0,P(C|排除A/C)=0,归纳出来,也即某实验结果(outcome,oi)与某条件Y不相交,则:
P(oi|Y)=0
最后我们得到条件概率的计算公式:
P(oi|Y)=P(oi)P(o1)+P(o2)+⋯+P(on)=P(oi)P(Y)Y={o1,o2,…,on}
考虑某事件X={o1,o2,q1,q2},已知条件Y={o1,o2,o3}发生了,则:
P(X|Y)=P(o1|Y)+P(o2|Y)+0+0=P(o1)P(Y)+P(o2)P(Y)=P(X∩Y)P(Y)
条件概率与贝叶斯公式
条件概率:P(X|Y)=P(X∩Y)P(Y)
贝叶斯公式:
P(X|Y)=P(X)P(Y|X)P(Y)
其实是可从条件概率推导贝叶斯公式的:
P(A|B)=P(B|A)=P(A|B)P(B)===P(B|A)=P(A∩B)P(B)P(A∩B)P(A)P(A∩B)P(B)P(B)P(A∩B)P(A)P(B|A)P(A|B)P(B)P(A)
证明:P(B,p|D)=P(B|p,D)P(p|D)
P(B,p|D)====P(B,p,D)P(D)P(B|p,D)P(p,D)P(D)P(B|p,D)P(p,D)P(D)P(B|p,D)P(p|D)References
[1] 概率质量函数相关文章推荐
- 用批处理解决数学问题的代码第1/4页
- PDF里的文字显示模糊的解决方法
- PDF编辑工具 Foxit PDF Editor 1.5 Build 2911 下载
- 没有文件大小限制并免费的PDF到HTML转换工具
- MicroAdobe PDF Editor 6.2 英文正式版附破解补丁 下载
- C#使用iTextSharp设置PDF所有页面背景图功能实例
- PDF的VBS小程序代码
- C#实现TIF图像转PDF文件的方法
- c#实现将pdf转文本的示例分享
- C#代码实现PDF文档操作类
- C#使用iTextSharp封装的PDF文件操作类实例
- C#编程读取文档Doc、Docx及Pdf内容的方法
- Java开源工具iText生成PDF简单实例
- C#使用itextsharp生成PDF文件的实现代码
- 使用java为pdf添加书签的方法(pdf书签制作)
- java中输出pdf文件代码分享
- Python实现将DOC文档转换为PDF的方法
- C#实现HTML转WORD及WORD转PDF的方法
- JSP生成WORD文档,EXCEL文档及PDF文档的方法
- PHP中使用imagick实现把PDF转成图片