从拉格朗日乘数法到最大熵再到基因表达分析

从拉格朗日乘数法到最大熵再到基因表达分析

  前言:本文将简要的介绍一下拉格朗日乘数法,并填一下上篇文章挖的坑(证明当为均匀分布时,熵值达到最大。) ,最后简要介绍熵在基因表达分析中的应用。
  首先是拉格朗日乘数法的简要介绍。主要以二元函数为例。(大部分参考一篇文献,文献见末尾 [ 1 ] ^{[1]} [1]) 拉格朗日乘数法是求解条件极值问题的一大利器。在《高等数学》同济版中是这样介绍的:“考虑如下的条件极值:求二元函数z=f(x,y),在条件 ϕ ( x , y ) \phi ( x , y ) ϕ(x,y)=0下的极值和最值。”
  假定函数z=f(x,y)在p( x 0 x_{0} x0, y 0 y_{0} y0)取得极值,并且 ϕ ( x 0 , y 0 ) = 0 \phi(x_{0},y_{0})=0 ϕ(x0,y0)=0,若在p的某个邻域内二元函数z=f(x,y)和方程 ϕ ( x , y ) \phi ( x , y ) ϕ(x,y)=0都存在连续的一阶偏导数,且 ϕ y ( x 0 , y 0 ) ≠ 0 \phi _ { y } \left( x _ { 0 } , y _ { 0 } \right) \neq 0 ϕy(x0,y0)=0
则根据隐函数的存在定理,方程 ϕ ( x , y ) \phi ( x , y ) ϕ(x,y)=0确定一个连续且有连续导数的函数y= ψ ( x ) \psi ( x ) ψ(x),将其带入二元函数中可得z=f(x, ψ ( x ) \psi ( x ) ψ(x))
  有假设可知,函数z=f(x,y)在p点取得极值,即函数z=f(x,y)在x= x 0 x_{0} x0取得极值,对此时的一元函数求导得:
d z d x = f x ( x 0 , y 0 ) + f y ( x 0 , y 0 ) d y d x ∣ x = x 0 = 0 \frac { d z } { d x } = f _ { x } \left( x _ { 0 } , y _ { 0 } \right) + \left. f _ { y } \left( x _ { 0 } , y _ { 0 } \right) \frac { d y } { d x } \right| _ { x = x _ { 0 } } = 0 dxdz=fx(x0,y0)+fy(x0,y0)dxdyx=x0=0
而对函数y= ψ ( x ) \psi(x) ψ(x)进行隐函数求导有:
d y d x ∣ x = x 0 = − ϕ x ( x 0 , y 0 ) ϕ y ( x 0 , y 0 ) \left. \frac { d y } { d x } \right| _ { x = x _ { 0 } } = - \frac { \phi _ { x } \left( x _ { 0 } , y _ { 0 } \right) } { \phi _ { y } \left( x _ { 0 } , y _ { 0 } \right) } dxdyx=x0=ϕy(x0,y0)ϕx(x0,y0)
将隐函数的求导结果带入 d z d x \frac { d z } { d x } dxdz式子中得:
f x ( x 0 , y 0 ) − f y ( x 0 , y 0 ) φ x ( x 0 , y 0 ) ϕ y ( x 0 , y 0 ) = 0 f _ { x } \left( x _ { 0 } , y _ { 0 } \right) - f _ { y } \left( x _ { 0 } , y _ { 0 } \right) \frac { \varphi _ { x } \left( x _ { 0 } , y _ { 0 } \right) } { \phi _ { y } \left( x _ { 0 } , y _ { 0 } \right) } = 0 fx(x0,y0)fy(x0,y0)ϕy(x0,y0)φx(x0,y0)=0
且令 λ \lambda λ= − f y ( x 0 , y 0 ) ϕ y ( x 0 , y 0 ) - \frac { f _ { y } \left( x _ { 0 } , y _ { 0 } \right) } { \phi _ { y } \left( x _ { 0 } , y _ { 0 } \right) } ϕy(x0,y0)fy(x0,y0)
  则p点是等式条件约束下的多元函数极值的必要条件是:
{ f x ( x , y ) − λ ϕ x ( x 0 , y 0 ) = 0 f y ( x 0 , y 0 ) − λ ϕ y ( x 0 , y 0 ) = 0 ϕ ( x , y 0 ) = 0 \left\{ \begin{array} { l } { f _ { x } ( x , y ) - \lambda \phi _ { x } \left( x _ { 0 } , y _ { 0 } \right) = 0 } \\ { f _ { y } \left( x _ { 0 } , y _ { 0 } \right) - \lambda \phi _ { y } \left( x _ { 0 } , y _ { 0 } \right) = 0 } \\ { \phi _ { \left( x , y _ { 0 } \right) = 0 } } \end{array} \right. fx(x,y)λϕx(x0,y0)=0fy(x0,y0)λϕy(x0,y0)=0ϕ(x,y0)=0
&若我们引入辅助函数L(x,y)=f(x,y)- λ ϕ ( x , y ) \lambda\phi(x,y) λϕ(x,y)则对函数L对x,y, λ \lambda λ,求偏导数后不难看出就是必要条件的三个等式。这个函数L就是拉格朗日函数, λ \lambda λ就是拉格朗日乘子。若是对拉格朗日函数及乘子的构造有疑问,可以参考文末的文献,其给出了几何角度的解释。
下面我们运用拉格朗日乘数法证明当是均匀分布时,取得最大熵值。
熵: H ( X ) = − ∑ i n P ( x i ) log ⁡ P ( x i ) H (X) = - \sum _ { i } ^nP \left( x _ { i } \right) \log P \left( x _ { i } \right) H(X)=inP(xi)logP(xi) ,且 ∑ i n P ( x i ) \sum_{i}^nP(x_{i}) inP(xi)=1 (log的底数默认为2)
构造拉格朗日函数L(x)= − ∑ i n P ( x i ) log ⁡ P ( x i ) - \sum _ { i }^n P \left( x _ { i } \right) \log P \left( x _ { i } \right) inP(xi)logP(xi)+ λ \lambda λ( ∑ i \sum_{i} iP( x i x_{i} xi)-1)
然后对所有的 P ( x i ) P(x_{i}) P(xi)求偏导:
∂ ∂ P ( x i ) \frac { \partial } { \partial P (x _ { i }) } P(xi)( − ∑ i n P ( x i ) log ⁡ P ( x i ) - \sum _ { i }^n P \left( x _ { i } \right) \log P \left( x _ { i } \right) inP(xi)logP(xi)+ λ \lambda λ( ∑ i \sum_{i} iP( x i x_{i} xi)-1))
得到n个等式的微分,且取最值时,一阶导数为 0: − ( log ⁡ 2 p ( x i ) + 1 ln ⁡ 2 ) + λ = 0 - \left( \log _ { 2 } p( x _ { i })+ \frac { 1 } { \ln 2 } \right) + \lambda = 0 (log2p(xi)+ln21)+λ=0
进而得到:
P ( x i ) = 2 λ − 1 ln ⁡ 2 P \left( x _ { i } \right) = 2 ^ { \lambda - \frac { 1 } { \ln 2 } } P(xi)=2λln21
所以我们易知 P ( x 1 ) P(x_{1}) P(x1)= P ( x 2 ) P(x_{}2) P(x2)= P ( x 3 ) P(x_{3}) P(x3)=…= P ( x n ) P(x_{n}) P(xn)= 2 λ − 1 l n 2 2^{\lambda-{\frac{1}{ln2} }} 2λln21

∑ i n P ( x i ) \sum_{i}^nP(x_{i}) inP(xi)=1 :
P ( x 1 ) P(x_{1}) P(x1)= P ( x 2 ) P(x_{}2) P(x2)= P ( x 3 ) P(x_{3}) P(x3)=…= P ( x n ) P(x_{n}) P(xn)= 1 n \frac{1}{n} n1
故此时为均匀分布。
且将结果带入H(X)中得到最大的熵值为: l o g 2 n log_{2}n log2n
  在Schug等人的文章《Promoter features related to tissue specificity as measured by Shannon entropy》提到了用信息熵来衡量某些基因在组织中相对表达水平。

Given expression levels of a gene in N tissues, we defined the
relative expression of a gene g in a tissue t as p t ∣ g p_{t|g} ptg =
w g , t w_{g,t} wg,t / ∑ 1 ≤ t ≤ N \sum_{1 ≤ t ≤ N} 1tN w g , t w_{g,t} wg,t where w g , t w_{g,t} wg,t is the expression level of the gene in the tissue. The entropy of a gene’s expression distribution is H g H_g Hg
= ∑ 1 ≤ t ≤ N − p t ∣ g l o g 2 ( p t ∣ g ) \sum_{1 ≤ t ≤ N} - p_{t|g} log_2(p_{t|g}) 1tNptglog2(ptg). H g H_g Hg has units s and ranges from
zero for genes expressed in a single tissue to l o g 2 ( N ) log_2(N) log2(N) for genes
expressed uniformly in all tissues considered. The maximum
value of H g H_g Hg depends on the number of tissues considered so
we will report this number when appropriate. [ 2 ] ^{[2]} [2]

如上文所说:如果某基因在这N个组织中的表达水平趋近于相同(即该基因倾向于广泛表达),则熵值趋近于最大值 l o g 2 N log_{2}N log2N,若某基因倾向于只在某一组织中表达,则熵值趋近于0

参考文献:[1] 吴元泽. 关于拉格朗日乘数法的一点思考[J]. 教育教学论坛, 2018, No.350(08):232-233.
[2] Schug J, Schuller W P, Kappen C, et al. Promoter features related to tissue specificity as measured by Shannon entropy[J]. Genome biology, 2005, 6(4): R33.

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
拉格朗日乘数法是一种常用的数学优化方法,用于求解带有约束条件的最优化问题。这种方法的基本思想是将原问题转化为一个无约束的问题,通过引入拉格朗日乘子来将约束条件纳入目标函数中。 在使用拉格朗日乘数法求解问题时,首先需要构建一个拉格朗日函数,它由原始目标函数和约束条件组成。然后,通过对拉格朗日函数进行求导,可以得到一组方程,称为拉格朗日方程。 这组方程包含了原始目标函数和约束条件的关系,通过解这组方程,可以求得最优解。在求解的过程中,有时需要对拉格朗日方程进行最大化或最小化。 为什么要先求最大再求最小呢?这是因为在求解过程中,我们需要找到拉格朗日函数的临界点或者鞍点,这些点可能是最优解。而临界点或者鞍点通常是通过求解一阶导数等于零的方程得到的。当我们求解一阶导数时,需要分别对原始目标函数和约束条件进行求导。 通过求解拉格朗日方程,得到的解中可能包含了最优解,但也可能包含其他类型的点,比如局部最小值、局部最大值等。因此,为了确保求得的解是最优解,需要对拉格朗日函数进行最大化或最小化,以确定最优解的位置。 总结起来,求解过程中先求最大再求最小是为了找到拉格朗日函数的临界点或者鞍点,以确定最优解的位置。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值