• 最大熵模型(一)


    物理学的熵

    描述事物无序性的参数,熵越大则无序性越强。
    从宏观方面讲(根据热力学定律),一个体系的熵等于其可逆过程吸收或耗散的热量除以它的绝对温度
    从微观讲,熵是大量微观粒子的位置和速度的分布概率的函数。
    自然界的一个基本规律就是熵递增原理,即,一个孤立系统的熵,自发性地趋于极大,随着熵的增加,有序状态逐步变为混沌状态,不可能自发地产生新的有序结构,这意味着自然界越变越无序。

    信息论的熵

    先认识一下信息论的鼻祖,香农。

    信息论之父 C. E. Shannon
    信息论的开创者香农认为,信息(知识)是人们对事物了解的不确定性的消除或减少。他把不确定的程度称为信息熵。表示为:
    Matlab Demo:
    p=[0:0.01:1];
    h=-1*(p.*log2(p)+(1-p).*log2(1-p));
    plot(p,h); grid on;
     
    熵的性质
    假设可能状态的数量有限,当所有概率相等时,熵取得最大值。用拉格朗日法证明。

    最大熵原理

    最大熵原理是根据样本信息对某个未知分布做出推断的一种方法。
     
    吴军(2006)举了一个例子。对一个均匀的骰子,问它每个面朝上的概率分别是多少。所有人都会说是1/6。这种“猜测”当然是对的,因为对这个“一无所知”的色子,假定它每一个朝上概率均等是最安全的做法,你不应该假设它被做了手脚。从信息论的角度讲,就是保留了最大的不确定性,让熵达到最大(从投资的角度来看,这就是风险最小的做法)。但是,如果这个骰子被灌过铅,已知四点朝上的概率是1/3,在这种情况下,每个面朝上的概率是多少?当然,根据简单的条件概率计算,除去四点的概率是 1/3外,其余的概率都是 2/15。也就是说,除已知的条件(四点概率为 1/3)必须满足外,对其它各点的概率,我们仍然无从知道,也只好认为它们相等。这种基于直觉的猜测之所以准确,是因为它恰好符合了最大熵原理。
     
    回到物理学例子中。在涉及物理系统的情形中,一般要确定该系统可以存在的多种状态,需要了解约束下的所有参数。比如能量、电荷和其他与每个状态相关的物理量都假设为已知。为了完成这个任务常常需要量子力学。我们不假设在这个步骤系统处于特定状态;事实上我们假定我们不知道也不可能知道这一点,所以我们反而可以处理被占据的每个状态的概率。这样把概率当作应对知识缺乏的一种方法。我们很自然地想避免假定了比我们实际有的更多的知识,最大熵原理就是完成这个的方法。
     
    这里可以总结出最大熵对待已知事物和未知事物的原则:承认已知事物(知识);对未知事物不做任何假设,没有任何偏见。最大熵原理指出,当我们需要对一个随机事件的概率分布进行预测时,我们的预测应当满足全部已知的条件,而对未知的情况不要做任何主观假设(不做主观假设,这点很重要。)在这种情况下,概率分布最均匀,预测的风险最小。因为这时概率分布的信息熵最大,所以人们称这种模型叫“最大熵模型”。我们常说,不要把所有的鸡蛋放在一个篮子里,其实就是最大熵原理的一个朴素的说法,因为当我们遇到不确定性时,就要保留各种可能性。
     
    一个快餐店提供3种食品:汉堡(B)、鸡肉(C)、鱼(F)。价格分别是1元、2元、3元。已知人们在这家店的平均消费是1.75元,求顾客购买这3种食品的概率。如果你假设一半人买鱼另一半人买鸡肉,那么根据熵公式,这不确定性就是1位(熵等于1)。但是这个假设很不合适,因为它超过了你所知道的事情。我们已知的信息是:
     
    latex equation:
    \begin{cases} 
    p(B)+p(C)+p(F)=1\\ 
    1*p(B)+2*p(C)+3*p(F)=1.75
    \end{cases}
     

    对前两个约束,两个未知概率可以由第三个量来表示,可以得到:

    latex equation: 
    \begin{cases} 
    p(C)=0.75-2*p(F)\\ 
    p(B)=0.25+p(F)
    \end{cases}
     
    把上式代入熵的表达式中,熵就可以用单个概率 p(F) 来表示。
    对这个单变量优化问题,很容易求出 p(F)=0.216 时熵最大,有 p(B)=0.466, p(C)=0.318 和 S=1.517。
     
    以上,我们根据未知的概率分布表示了约束条件,又用这些约束条件消去了两个变量,用剩下的变量表示熵,最后求出了熵最大时剩余变量的值,结果就求出了一个符合约束条件的概率分布,它有最大不确定性,我们在概率估计中没有引入任何偏差。
     

    参考





  • 相关阅读:
    :nth-child(n)选择器
    lable标签的用途
    输入框事件处理
    2D转换与3D转换的区别
    vertical-align  css属性
    linux下nginx整合php
    利用crontab定时备份nginx访问日志(也可以说是定时切分日志)
    关于nginx配置虚拟主机
    linux下nginx编译安装
    正则表达式解决结巴字符串
  • 原文地址:https://www.cnblogs.com/kidoln/p/2311864.html
Copyright © 2020-2023  润新知