我是靠谱客的博主 刻苦小蘑菇,最近开发中收集的这篇文章主要介绍利用矩阵的迹巧妙解决矩阵的求导问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

题目引入:

在维纳滤波的过程中需要利用以前的信息的线性组合来预测当前值,同时要满足最小均方误差准则。另外,在线性MIMO接收机的设计过程中,有以下信道模型:

$$y=Hx+n$$

为了根据接收到的信号y,恢复出发送的信号x,需要对发送向量做一个估计,假设采用最小均方误差准则(MMSE),存在系数矩阵A使得:

$$hat{x}_{MMSE}=Ay$$

均方误差为:

$$e = E||hat{x}_{MMSE}-x||^2=E(Ay-x)^T(Ay-x)$$

现在的问题是如何得到矩阵A,使得上述均方误差达到最小?

很多教材上对此大都未曾提及,这里介绍了已知巧妙简单易懂的方法来解决上述问题。首先介绍一些关于矩阵迹的先验知识。

矩阵的迹就是矩阵对角元素之和。有以下性质:

$$tr(AB)=tr(BA)$$

$$frac{{partial trleft( {AB} right)}}{{partial A}} = {B^T}$$

根据以上两个性质基本上就可以进行接下来的操作。首先利用上述性质计算如下导数:

$$frac{{partial trleft( {AB{A^T}C} right)}}{{partial A}}$$


对于不同位置含有两个矩阵A,该如何操作呢?这里先引入微积分中对$x^2$的分步求导过程:

$$frac{{d{x^2}}}{{dx}} = frac{{dxx}}{{dx}} = xfrac{{dx}}{{dx}} + xfrac{{dx}}{{dx}} = 2x$$


同样地,

[begin{array}{l}
frac{{partial trleft( {AB{A^T}C} right)}}{{partial A}} = frac{{partial trleft( {{A^T}CAB} right)}}{{partial A}}\
 = {left( {B{A^T}C} right)^T} + CAB\
 = {C^T}A{B^T} + CAB
end{array}]


接下来,我们来解决前面提出的问题。

[e = Eleft[ {{{left( {Ay - x} right)}^T}left( {Ay - x} right)} right]]


上式对A求导:

[begin{array}{l}
frac{{de}}{{dA}} = frac{d}{{dA}}Eleft[ {{{left( {Ay - x} right)}^T}left( {Ay - x} right)} right]\
 = Eleft[ {frac{d}{{dA}}{{left( {Ay - x} right)}^T}left( {Ay - x} right)} right]
end{array}]


待求期望的部分是

[begin{array}{l}
frac{d}{{dA}}{left( {Ay - x} right)^T}left( {Ay - x} right) = frac{d}{{dA}}trleft( {{{left( {Ay - x} right)}^T}left( {Ay - x} right)} right)\
 = frac{d}{{dA}}trleft( {{y^T}{A^T}Ay - {y^T}{A^T}x - {x^T}Ay + {x^T}x} right)\
 = frac{d}{{dA}}trleft( {{y^T}{A^T}Ay - {y^T}{A^T}x - {x^T}Ay} right) + frac{d}{{dA}}trleft( {{x^T}x} right)\
 = frac{d}{{dA}}trleft( {{y^T}{A^T}Ay - {y^T}{A^T}x - {x^T}Ay} right)\
 = frac{d}{{dA}}trleft( {Ay{y^T}{A^T} - {A^T}x{y^T} - Ay{x^T}} right)\
 = {left( {y{y^T}{A^T}} right)^T} + Ay{y^T} - x{y^T} - {left( {y{x^T}} right)^T}\
 = 2Ay{y^T} - 2x{y^T}
end{array}]


令上式为零就可得到MMSE下的解。

[begin{array}{l}
frac{{de}}{{dA}} = Eleft[ {frac{d}{{dA}}{{left( {Ay - x} right)}^T}left( {Ay - x} right)} right]\
 = Eleft( {2Ay{y^T} - 2x{y^T}} right) = 0
end{array}]


假设

begin{array}{l}
Eleft[ {x{x^T}} right] = I\
Eleft[ {n{x^T}} right] = 0\
Eleft[ {n{n^T}} right] = {sigma ^2}I
end{array}


[begin{array}{l}
frac{{de}}{{dA}}{rm{ = }}Eleft( {2Ay{y^T} - 2x{y^T}} right){rm{ = }}0\
AEleft( {y{y^T}} right) - Eleft( {x{y^T}} right) = 0\
Eleft( {y{y^T}} right) = Eleft( {left( {Hx + n} right){{left( {Hx + n} right)}^T}} right)\
 = Eleft( {Hx{x^T}{H^T} + Hx{n^T} + n{x^T}{H^T} + n{n^T}} right)\
 = HEleft( {x{x^T}} right){H^T} + Eleft( {n{n^T}} right)\
 = HI{H^T} + {sigma ^2}I\
 = H{H^T} + {sigma ^2}I
end{array}]


从而有

[begin{array}{l}
AEleft( {y{y^T}} right) = Eleft( {x{y^T}} right) = Eleft( {x{{left( {Hx + n} right)}^T}} right) = {H^T}\
Aleft( {H{H^T} + {sigma ^2}I} right) = {H^T}\
A = {H^T}{left( {H{H^T} + {sigma ^2}I} right)^{ - 1}}
end{array}]


至此就求得了矩阵A,从而得到了MIMO接收机的发送信号估计公式:

[begin{array}{l}
{{hat x}_{MMSE}} = Ay\
 = {H^T}{left( {H{H^T} + {sigma ^2}I} right)^{ - 1}}y
end{array}]


利用上述方法简介明了地推出了MMSE下MIMO接收机发送信号估计公式。利用矩阵的迹的性质还可以简便地推出最小二乘法的表达式。读者可以尝试。这在博客http://blog.csdn.net/acdreamers/article/details/44662633得到了实现。




最后

以上就是刻苦小蘑菇为你收集整理的利用矩阵的迹巧妙解决矩阵的求导问题的全部内容,希望文章能够帮你解决利用矩阵的迹巧妙解决矩阵的求导问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部