从伯努利分布到交叉熵(一)

 

前言

  通信转数据挖掘不久,发现自己在一些机器学习概念问题有些模糊,不同的教科书的公式形式有些出入,稍有混乱。本文总结了自己对交叉熵这个概念的一些物理意义方面的理解,尝试将这些概念融会贯通。由于水平实在不高,只是把想到的东西简单堆砌,简单梳理了一下逻辑,看起来比较啰嗦.同时有不对之处(有些数学定义都是我自己的理解),希望不吝赐教。

伯努利分布

  伯努利分布,又称0-1分布。这个离散分布非常直观,在中学我们就学过。但是,把这个分布复习一下,对后面一些理解大有裨益。对于一个伯努利试验,它只有两个结果1或0。通常,取1的概率为 $p$,取0的概率为$1-p$。$p$就是该伯努利分布的参数。

  对于随机变量$X$服从伯努利分布,$\Pr(X=1)=p,\Pr(X=0)=q=1-p,0<p<1$.可以发现,对于伯努利分布,本来是需要两个参数的$p$和$q$的,但是由于$p$ 和 $q$相关,只有一个自由度.所以一般用 $p$ 来表示就足够了.相应的概率质量函数(pmf)为:

$$ f(x;p)=\left\{
\begin{aligned}
&p ,&x=1,  \\
&1-p, &x=0.
\end{aligned}
\right.
$$

这种pmf用分段函数的形式简单易懂,但是分段函数对于后续推导来说比较麻烦.所以伯努利分布的另外一种pmf的形式出现了:

$$f(x;p)=p^{x}(1-p)^{1-x},x={0,1}.$$

这种形式相当漂亮,一个表达式中包含了两种情况. 由于 $x$ 取值非1即0,对于特定的x取值,这个表达式中每次仅有部分起作用.(当 $x=1$, $(1-p)$ 的部分的指数项为0, 所以表达式的值为 $p$,和上面的分段函数等价).这里唯一需要注意的是定义域的取值,只能是0或1.(对于二分类的问题,标签有时会取值 $\pm1$. 题外话,通信原理里处理数字信号调制,正交码时候也经常遇到这种问题,有时是0,1,有时是 $\pm1$.)

广义伯努利分布

  事实上,伯努利分布的只能取布尔值,可以对应于二分类问题.对于多分类问题,对应的是广义伯努利分布,也就是随机变量的取值个数不局限于2个.关于广义伯努利分布见wiki:

In probability theory and statistics, a categorical distribution (also called a generalized Bernoulli distributionmultinoulli distribution[1]) is a discrete probability distribution that describes the possible results of a random variable that can take on one of Kpossible elementary events (single outcomes of the discrete sample space, often referred to as categories), with the probability of each elementary event separately specified.

BTW,独立重复试验的话,伯努利分布进化为二项分布;广义伯努利分布进化为多项分布.

  由于广义伯努利分布和多分类有着密切关系,我们简单看看它.首先确认的是它有几个参数?回想伯努利分布,有两个参数 $p$ 和 $q$, 由于相关, 只要一个 $p$就够了.类似,广义伯努利分布有 $k$ 个参数$p_1,p_2,\dots,p_k$,分别代表取值为 $i,i\in\{1,2,\dots,k\}$的概率. 由于概率和为1的导致相关,只有 $k-1$ 个自由度,只要 $k-1$ 个参数就够了.但是,最后一个参数是这么表示的 $p_k=1-p_1-\dots-p_{k-1}$,写起来太麻烦,还不如直接用 $k$ 个参数来表示.好了,广义伯努利分布的pmf是什么呢?类似的可以这么写

$$f(x;p_1,\dots,p_k)=p_i,\hspace{10pt}x=i,\hspace{10pt}i\in\{1,2,\dots,k\}.$$

这里虽然表达式只有一行,但却是一个不折不扣的分段函数,因为函数的值 $p_i$随着 $x$的定义域的每个值上都不同.那么我们想使用上面那个漂亮的非分段函数,使得函数的值在 $x$的定义域可以用个同一的表达式表示.但是,这里遇到了一个困难.因为对于伯努利分布, $x\in\{0,1\}$时, $x$ 和 $1-x$互斥且完备(我等于1,你就不等于1;还要满足一个,我和你必有一个发生,即和为1)(这也是为啥 $x$取0,1的好处).

  而对于广义伯努利分布, $x$的取值比较随意,一般是$\{1,2,\dots,k\}$,我们也希望找到一组互斥且完备的量来写出那个漂亮的非分段函数的pmf.如何做到呢?我们先引入一个示性函数.

示性函数

  示性函数(指示函数)就是这么一个函数能满足我们的所有诉求.看看wiki:

In mathematics, an indicator function or a characteristic function is a function defined on a set X that indicates membership of an element in a subset A of X, having the value 1 for all elements of A and the value 0 for all elements of X not in A

我在测度论和概率论的课程里面第一次接触到这个简单函数(原谅我测度论学的一塌糊涂).它和伯努利分布有着天然的契合性.这是一个定义在集合 $X$ 上的函数,映射到 $\{0,1\}$. 它表示集合$X$中有哪些元素属于某个子集 $A$,定义为

$$ {I}_{A}(x)=\left\{
\begin{aligned}
&1 ,&x\in A, \\
&0, &x\notin A.
\end{aligned}
\right.
$$

它有个性质,就是它的期望等于$A$的概率:$$E(I_A) =\int _X I_A(x) \mathrm{d}\mathbb{P}=\int _A \mathrm{d}\mathbb{P}=P(A).$$

这个性质涉及到测度和测度积分,也不是我短时间说清楚的,有疑问的翻书吧.那么有了这个函数, 定义集合$X=\{0,1\}$,定义子集 $A=\{1\}$,则$\bar{A}=\{0\}$,我们能够将伯努利分布的非分段函数的pmf改写为

$$f(x;p)=p^{I_A(x)}  (1-p)^{I_{\bar{A}}(x)},x={0,1}.$$

  类似的,我们可以对广义伯努利函数这么定义.定义集合$X=\{0,1,\dots,k\}$,将全集 $X$划分为 $k$ 个互斥的子集 $A_1=\{1\}$,$A_2=\{2\}$,...,$A_k=\{k\}$.可以得到 $k$个互斥且完备的示性函数,以第一个为例:

$$ {I}_{A_1}(x)=\left\{
\begin{aligned}
&1 ,&x\in A_1, \\
&0, &x\in A_2,or, A_3,..,or,A_k.
\end{aligned}
\right.
$$

可以发现,当 $x\in A_1$时,仅有$I_{A_1}(x)=1$,其他的$I_{A_i}(x)=0,i\neq1.$那么广义伯努利函数的非分段函数的pmf可以表示为

$$\begin{aligned}f(x;p_1,\dots,p_k)=
&p_1^{I_{A_{1}} (x)} \dots p_k^{I_{A_{k}} (x)},x=\{0,1,\dots,k\}\\
=&\prod_{i=1}^k p_i^{I_{A_i}(x)},x=\{0,1,\dots,k\}.
\end{aligned}
$$

这个连积的形式很简洁.特别强调的是Notation的问题,这里的所有下标和机器学习的下标没关系,纯粹就是伯努利分布自己参数的下标.后面的推导的时候,我还会特别强调各个上下标是什么意思.

  至此,伯努利分布和广义伯努利分布的pmf都可以用一个统一的表达形式.值得注意的是,示性函数的引入,使我们不必固定随机变量的取值.想想也是,伯努利分布中,只有唯一的参数 $p$,和$x$的定义域的取值无关.

 

 

转载于:https://www.cnblogs.com/yajun-yin/p/8608344.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值