概率图模型课堂笔记:1.4 决策理论
预备知识,求和函数的两个性质:
- $\displaystyle\sum_{x,y}F(x)G(y)=[\sum_{x}F(x)][\sum_{y}G(y)]$
- $\displaystyle\sum_{x,y}F(x)G(x,y)=\sum_{x}[F(x)[\sum_{y}G(y)]]$
抽奖Lottery:
- Lottery是指一系列的系统状态和它对应的发生概率。例如,“50%获得1000元钱,50%获得0元”是一个lottery。它有两个状态:获取1000元钱,获取0元钱,以及各自的概率都是50%
效用函数:$U(x)$
- $U$是一个一元或多元函数,值域为实数,表示Agent对系统状态的满意程度的打分。每一个x的取值都描述了一个系统状态
- 一个Lottery的效用就是将所有的系统状态$x$的效用$U(x)$用对应的概率$P(x)$进行加权平均:$\displaystyle\sum_xP(x)U(x)$,我们也称之为期望效用$EU$
- $U$这个函数一般要经过设计,使得对不同的系统状态的U取值进行概率线性叠加后,依然能反映效用高低。例如,如果人们更倾向于“100%的概率获得500元钱”,而不是“50%获得1000元钱,50%获得0元”。那么后者的效用低于前者。即:$0.5U(0)+0.5U(1000)<U(500)$,那么,U应该设计为一个上凸函数。
- 效用函数本身是一个Factor,为方便计算机运算,用条件概率的形式描述为:$P(1|x)=U(x)$,其中1是U的唯一取值,取值概率为$U(x)$。整个概率图就是一个大的Lottery,系统概率总和不再是1,而是效用$\displaystyle EU=\sum_xP(x)U(x)$
决策:
- 在概率图中引入第二种特殊元素:决策变量A。
- 将效用函数$U(x)$的自变量分为两部分:$x$和$a$,前者是普通的随机变量,后者是决策变量。
- 情况1:$Pa_{A}=\emptyset$
- 若A有后继随机变量结点,则A会影响系统状态的分布。否则,不影响系统状态的分布。
- 无论是否影响系统状态分布,A通常都直接或间接连接到了U。影响整个系统的效用:$\displaystyle EU[D[a]]=\sum_{x}P(x|a)U(x,a)$。
- 解析:如果A的取值不固定,那么原始的写法是:$\displaystyle EU=\sum_{x,a}P(x,a)U(x,a)$,但$A$已经决策,$A=a$发生的概率是100%。那么$P(x|a)=\frac{P(x,a)}{P(a)}=P(x,a)$,则
$\displaystyle \sum_{x,a}P(x,a)U(x,a)=\sum_{x}P(x|a)U(x,a)$
- 解析:如果A的取值不固定,那么原始的写法是:$\displaystyle EU=\sum_{x,a}P(x,a)U(x,a)$,但$A$已经决策,$A=a$发生的概率是100%。那么$P(x|a)=\frac{P(x,a)}{P(a)}=P(x,a)$,则
- 需要期望效用最大化,那么就遍历所有A的取值,然后取EU最大的那个:$argmax_{a}EU[D[a]]$
- 情况2:$Pa_{A}\ne\emptyset$。为了方便描述,我们定义一个$\delta_{a}(A|Pa_{A})$,代表在$Pa_{A}$给定的情况下,A取值的分布率。
-
- $\delta_{A}(A|Pa_{A})$是我们要求的目标函数,取值非0即1
- 函数$\delta_A$确定后,
$EU[D[\delta_A]]$
$=\displaystyle \sum_{x,a}P_{\delta_A}(x,a)U(x,a)$
$=\displaystyle\sum_{X_1,...,X_n,A}(\prod_iP(X_i|Pa_{X_i}))U(Pa_U)\delta_A(A|Pa_A)$
$=\displaystyle\sum_{Pa_A,A}\delta_A(A|Pa_A)\sum_{X_1,...,X_n - Pa_A}(\prod_i(P(X_i|Pa_{X_i}))U(Pa_U)$
$=\displaystyle\sum_{Pa_A,A}\delta_A(A|Pa_A)\mu(A,Pa_A)$ - 其中$\displaystyle \mu(A,Pa_{A})=\sum_{X_{1},...,X_{n} - Pa_{A}}(\prod_i(P(X_{i}|Pa_{X_{i}}))U(Pa_U)$ 理解这个式子非常重要,它是手动推算的基础。就是给定A和$Pa_{A}$的情况下,系统的EU。
- 需要期望效用最大化,那么对每一个$Pa_{A}可能的取值,穷举$A的取值,然后取$\mu$最大的那个
$\delta^*_{A}(A|Pa_{A})=\begin{cases}1&a=argmax_{A}\mu(A,Pa_{A})\\0&otherwise\end{cases}$
为什么条件决策比无条件决策的EU更高?因为针对不同的$Pa_A$取值可以有不同的A。如果针对不同的Pa取值强行使用相同的决策,那么可退化成无条件决策。那么可以说,条件决策和无条件决策至少一样好。