Bingo, Computer Graphics & Game Developer

Mathematical Foundations of Monte Carlo Methods 3

本文为在Scratchapixel上学习的翻译读后感与部分个人解读。这里不会将全篇的内容系数翻译,保留原文以便后期自行理解,笔者只精炼一些文章中关键的点出来便于记录。

The Probability Distribution Function

概率密度函数(Probabilify density function):When a function such as the normal distribution defines a continuous probability distribution. In other words, pdfs are used for continuous random variables.

The PDF can be used to calculate the probability that a random variable lies within an interval:

Pr(aXb)=abpdf(x)dxPr(a \leqslant X \leqslant b) = \int^b_a pdf(x)dx

概率密度函数对概率的积分必为1

g(x)dx=1\int^{\infty}_{-\infty}g(x)dx = 1

概率质量函数(the probability mass function)用于描述离散型随机变量; 概率密度函数(probability distribution function)用于描述连续型随机变量。

累积分布函数(Cumulative Distribution Function/Probability distribution function):CDFs are monotonically increasing functions.It’s not strictly monotic though. There may be intervals of constancy.

pdf(x)=ddxcdf(x)pdf(x) = \frac{d}{dx}cdf(x)

cdf是pdf在区间[,][-\infty, \infty]上的和,pdf(x)是cdf在「点」x上的斜率/导数


Expected Value of the Function of a Random Variable: Law of the Unconscious Statistician

统计师的无意识法则(law of the unconscious statistician):In practice, you don’t necessarily know the probability distribution of F(X). Of course you can calculate it, but this is an extra step, which you can avoid if you use the second method.

E[F(X)]=F[Y]=F(Xi)PX(Xi)E[F(X)] = F[Y] = \sum F(X_i) P_X(X_i)

假定函数F(X)F(X)是关于随机变量XX的一个映射(因此F(X)F(X)本身也是随机变量),那么举例而言F(X)=(X3)2F(X) = (X - 3)^2,现求函数F(X)F(X)的期望。

根据期望的定义(离散型随机变量E[X]=i=0Xipmf(Xi)E[X] = \sum_{i=0}X_ipmf(X_i),连续型随机变量E[X]=Xpdf(X)E[X] = \int^{\infty}_{-\infty}Xpdf(X)),我们需要知道F(X)的pdf(F(X))pdf(F(X))

XX的采样空间为S={1,2,3,4,5,6}S = \{1,2,3,4,5,6\},那么对其所有的可能值进行F(X)F(X)计算

X=1,F(1)=(13)2=4,X=2,F(2)=(23)2=1,X=3,F(3)=(33)2=0,X=4,F(4)=(43)2=1,X=5,F(5)=(53)2=4,X=6,F(6)=(63)2=9.\begin{array}{l}
X = 1, \; F(1) = (1-3)^2 = 4,\\X = 2, \; F(2) = (2-3)^2 = 1, \ X = 3,\;F(3) = (3-3)^2 = 0, \ X = 4,\;F(4) = (4-3)^2 = 1, \\X=5,\;F(5) = (5-3)^2 = 4,\ X = 6,\;F(6) = (6-3)^2 = 9.
\end{array}

也就可以得到pdf(F(X))pdf(F(X))的「离散型表达」(连续性和离散型本质相同)

Pr(F(0))=16Pr(F(1))=16+16=26Pr(F(4))=16+16=26Pr(F(9))=16.\begin{array}{l}
Pr(F(0)) &=& \dfrac{1}{6}
\ Pr(F(1)) &=& \dfrac{1}{6} + \dfrac{1}{6} &=& \dfrac{2}{6}
\ Pr(F(4)) &=& \dfrac{1}{6} + \dfrac{1}{6} &=& \dfrac{2}{6}
\ Pr(F(9)) &=& \dfrac{1}{6}.
\end{array}

最后一步计算F(X)F(X)的期望也就顺理成章

E[F(X)]=0×Pr(F(X)=0)+1×Pr(F(X)=1)+4×Pr(F(X)=4)+9×Pr(F(X)=9),=016+126+426+916,=3.167.\begin{array}{l}
E[F(X)]&=&0 \times Pr(F(X) = 0) + 1 \times Pr(F(X) = 1) + \\
&&4 \times Pr(F(X) = 4) + 9 \times Pr(F(X) = 9),\\
&=&0 \dfrac{1}{6} + 1 \dfrac{2}{6} + 4 \dfrac{2}{6} + 9 \dfrac {1}{6},\\
&=&3.167.
\end{array}

所以这里使用随机变量YY代替随机变量F(X)F(X),就有

E[F(X)]=E[Y]=YiPY(Yi)… …<1>E[F(X)] = E[Y] = \sum Y_i P_Y(Y_i) \text{… …}<1>

根本不需要知道F(X)F(X)的具体概率分布,直接根据随机变量XX的概率分布就可以求出YY的期望。

E[F(X)]=(13)2×Pr(X=1)+(23)2×Pr(X=2)+(33)2×Pr(X=3)+(43)2×Pr(X=4)+(53)2×Pr(X=5)+(63)2×Pr(X=6)=416+116+016+116+416+416=3.167.\begin{array}{l}
E[F(X)] & = &(1-3)^2\times Pr(X = 1) + (2-3)^2\times Pr(X = 2) +\\
&& (3-3)^2\times Pr(X = 3)+ (4-3)^2\times Pr(X = 4) +\\
&& (5-3)^2\times Pr(X = 5) + (6-3)^2\times Pr(X = 6)\\
&=&4 \dfrac{1}{6} + 1 \dfrac{1}{6} + 0 \dfrac{1}{6} + 1 \dfrac{1}{6} + 4 \dfrac{1}{6} + 4 \dfrac{1}{6} \\
&=&3.167.
\end{array}

原因在于,在计算期望的时候,多做了一步工作。也就是将上述式子当中相同的F(Xi)F(X_i)对应的概率进行了合并(Pr(F(Xi)=j=0Pr(Xj)(all F(Xi)==F(Xj)))Pr(F(X_i) = \sum_{j=0}{Pr(X_j)}(all F(X_i) == F(X_j)))),但只为求解他的pdfpdf。所以事实上这一步在求解期望过程中并不需要

E[F(X)]=E[Y]=F(Xi)PX(Xi)… …<2>E[F(X)] = E[Y] = \sum{F(X_i)P_X(X_i)}\text{… …}<2>

对比<1><1>中,我们将中间合并过程得到的Pr(Yi)Pr(Y_i)直接替换为了XX的概率分布。之所以称之为无意识的,是因为这一个过程非常的直观,以至于没有意识的状态下统计学家就得出了这样一个结论,同时也是毫无疑问正确的,因此而得名,How did the Law of the Unconscious Statistician get its name?


The Inverse Transform Sampling Method

简介背景,目前已有函数PDF(X)PDF(X)的一堆数据(这个PDF(X)PDF(X)可能是数学分析就可以解决的自然的概率分布,或是任意的PDF(X)PDF(X)),那么我们就可以通过求解CDF(X)CDF(X)的反函数InvCDF(X)InvCDF(X),进行均匀采样计算就可以得到对应PDF(X)PDF(X)的密度分布。

1.计算机中求解的步骤是如何实现的?

首先对已有数据进行累加求解对应累积分布函数(CDF),如图








在y轴上进行均匀采样(Uniform Distribution),假定当前生成随机数r=0.491r = 0.491,那么求取其下界(最接近该y值的采样点,且采样点的ysampleyy_{sample} \leqslant y)








以下证明方法和原文略有不同,更好理解

令图中采样点n=15,n=16n = 15, n = 16坐标为(x1,y1),(x2,y2)(x_1, y_1), (x_2, y_2)








那么所求随机数生成点(?,r)(?, r)的x轴坐标,令dxdx为采样点间间距,随机采样点x坐标「?」与下界x1x_1之差为k,其中采样区间为[min,max][min, max],采样数量为nSamplesnSamples

dx=minmaxnSamplesdx = \frac{min - max}{nSamples}

kdx=ry1y2y1=t\frac{k}{dx} = \frac{r-y_1}{y_2-y_1} = t

k=tdxk = t * dx

那么所求「?」即为

?=min+nlowerdx+k=min+(nlower+t)dx? = min + n_{lower} dx + k = min + (n_{lower} + t)dx

为了将「?」控制在区间[0,1][0, 1]之间(pdf(X)pdf(X)定义),需要做一次映射

?[min,max]x[0,1]
\begin{array}{l}
? \backsim [min, max] \
x \backsim [0, 1]
\end{array}

xmin?0=maxx1??=xminmaxmin
\begin{array}{l}
\frac{x-min}{?-0} = \frac{max-x}{1-?} \\
? = \frac{x-min}{max-min}
\end{array}

最终,得到横坐标值之后(也就是在invCDF(X)invCDF(X)的x轴上均匀采样得到y值)绘图得到








2.上述过程中并没有求反函数过程,为何要求反函数?

本质上当对CDF(X)CDF(X)的y轴进行均匀采样求解x的时候,就已经是在隐含求解了,不过因为不是所有的CDF(X)CDF(X)都可以显式的通过数学分析变换,因此计算机中求解使用的是通用过程。

3.指数分布的反函数求解过程

PDF(X)=λeλxPDF(X) = \lambda e^{-\lambda x}

P(X>t)=tλeλxdx=tλeλx1λd(λx)\begin{array}{l}

P(X>t) & = & \int^{\infty}_t \lambda e^{-\lambda x}dx \\

& = & \int_{-\infty}^t \lambda e^{-\lambda x} -\frac{1}{\lambda}d(-\lambda x)

\end{array}

u=λxu = -\lambda x,当x=tx = t时,u=λtu = - \lambda t;当x=x = \infty, u=u = -\infty,变换函数x=1λux = -\frac{1}{\lambda}u[,λt][-\infty, -\lambda t]上单值,dxdu=1λ\frac{dx}{du} = -\frac{1}{\lambda}[,λt][-\infty, -\lambda t]上连续

P(X>t)=λteudu=[eu]λt=eλte=eλt\begin{array}{l}
P(X>t) & = & -\int^{-\lambda t}_{-\infty}e^udu \\
& = & -\left[ e^u \right]^{-\lambda t}_{-\infty} \\
& = & e^{- \lambda t} - e^{-\infty} \\
& = & e^{- \lambda t}
\end{array}

那么求取P(x<t)=1eλx=yP(x<t) = 1-e^{-\lambda x} = y的反函数

y=1eλxeλx=1yx=1λln(1y)\begin{array}{l}
y = 1-e^{-\lambda x} \\
e^{-\lambda x} = 1 - y \\
x = -\frac{1}{\lambda}ln(1-y)
\end{array}

那么最终对此函数进行采样,得到的结果就是指数分布。

原文中有误,缺dxdx且最后结果e幂上少符号缺λ\lambda,y的表达式有误,目前已反馈给Scratchapixel


Estimators

参数(Parameter):参数是指描述总体特征的一个或若干个数值,例如总体(Population)的均值、总体的比例和总体的方差等数字特征,两个或两个以上总体间的相关系数、偏相关系数、复相关系数和回归系数等数字特征。

在一般情况下,总体参数是未知的,例如一个国家或地区的人口总数、GDP总量、小麦总产量、人均可支配收入和产品的合格率等都是总体未知参数,而通过全面调查取得这些未知参数需要付出高昂的成本。参数估计的目的就是利用抽样得到的样本信息来估计未知的总体参数(详情可见参数的概念)

估计量(Estimator)与估计值(Estimate): The sample mean is a form of estimator, but in the general sense, an estimator is a function operating on observable data and returning an estimate of the population’s parameter value θθ.

This function δδ is what we call an estimator of the parameter θθ and the result of δ(x1,...,xn)δ(x_1,…,x_n) is called an estimate of θθ.(An estimation of the population’s paramter θθ).

采样均值其实就是总体未知参数的一个估计量,本质上估计量就是一组数据的函数。估计量就是随机变量X1,...,XnX_1, . . . , X_n的一个映射,因此本身他也是随机变量。

常见估计量

  1. 样本均值Xˉ=1ni=1nXi\bar{X} = \frac{1}{n} \sum^n_{i=1}X_i,是总体均值E[X]=μE[X] = \mu的估计量
  2. 样本方差S2=1n1i=1n(XiXˉ)2S^2 = \frac{1}{n-1}\sum^n_{i=1}(X_i - \bar{X})^2是总体方差D(X)=σ2D(X)=\sigma^2的估计量;样本标准差S=1n1i=1n(XiXˉ)2S = \sqrt{\frac{1}{n-1}\sum^n_{i=1}(X_i - \bar{X})^2}是总体标准差σ\sigma的估计量
  3. 样本比例pˉ=n1n\bar{p}=\frac{n_1}{n}是总体比例p的估计量,其中n1n_1为样本中具有某种特征的样本单位数。


估计量和估计值之间的区别: An estimate is a specific value δ(x1,...,xn)δ(x_1,…,x_n) of the estimator which we can determine by using observable values x1,...,xnx_1,…,x_n. The estimator is a function δ(X)δ(X) of the random vector XX while again, an estimate is a just specific value δ(x)δ(x).

一句话概括,估计值只是估计总体未知参数的某一估计量,代入样本值计算得到的具体结果

点估计和区间估计,这里不做延伸阅读,简单的介绍了置信区间置信度/置信概率/置信系数/置信水平置信上下限等基本概念。


Properties of Estimators

无偏性(Unbias):

当采样的数量趋于极限时,样本均值就等于总体均值本身

Xˉnpθforn\bar X_n \xrightarrow{p} \theta \quad \text{for} n \rightarrow \infty

也就是样本均值的期望就有着如下的关系

E[Xˉn]θ=0.E[\bar X_n] - \theta = 0.

而满足无偏估计性质的样本均值,样本均值就是估计量本身,替换Xnˉ\bar{X_n}σ(X)\sigma(X),就有以下两种情况了

E[δunbiased(X)]θ=0.E[\delta_{unbiased}(X)] - \theta = 0.

E[δbiased(X)]θ0.E[\delta_{biased}(X)] - \theta \neq 0.

二者之差就是偏差本身了

E[δbiases(X)]θ= bias .E[\delta_{biases}(X)] - \theta = \text{ bias }.

正如先前讲到的,计算机图形学中经常采用有偏的方法来完成计算,原因在于有偏的方法可以带来更快速度的收敛计算(前提是满足一致性,这比无偏的性质对一个估计量而言更重要),但却只与真实值之间有着微乎其微的误差。

一致性(Consistency):是指随着样本容量的增大,估计量愈来愈接近总体参数的真值。设总体参数为θ\thetaδ\delta为一估计量,如果当样本容量nn \to \infty时, 依概率收敛于θ\theta,即

Plimnδ=θP - lim_{n \to \infty}\delta = \theta

如果一个估计量是一致估计量,那么可以通过增加样本容量来提高估计的精度和可靠性。

可以证明,样本均值Xˉ\bar{X}是总体均值μ\mu的一致估计量;样本比例pˉ\bar{p}是总体比例pp的一致估计量;样本方差S2S^2是总体方差σ2\sigma^2的一致估计量;样本标准差SS 是总体标准差σ\sigma的一致估计量.(详情见估计量评价的标准)

有效性(Variance):有效性是指估计量与总体参数的离散程度。如果两个估计量都是无偏的,那么离散程度较小的估计量相对而言是较为有效的。离散程度是用方差度量的,因此在无偏估计量中,方差愈小愈有效。

θ1\theta_1θ2\theta_2为总体参数θ\theta的无偏估计量,即E(θ1)=θE(\theta_1)=\thetaE(θ2)=θE(\theta_2)=\theta,那么如果两者的方差对比

D(θ1)D(θ2)D(\theta_1) \leqslant D(\theta_2)

那么称θ1\theta_1会比θ2\theta_2有效

有效性是一个对比性质,因此是相对的,不存在绝对的自身有效的估计量。