其他分享
首页 > 其他分享> > 验证协方差矩阵和信息矩阵之间的关系

验证协方差矩阵和信息矩阵之间的关系

作者:互联网

实验一

  1. 验证信息矩阵和协方差矩阵的是互逆的关系。

  2. 验证Schur completion的成立性。

给定一个系统:

\[x_1 = w_1x_2+v_1\\ x_2 = v_2\\ x_3 = w_3x_2+v_3\\ 给定数据:w1 = 2; w3 = 3;\\ v1,v2,v3分别服从N1(0,0.01),N2(0,0.04),N3(0,0.09) \]

求该系统的对应的协方差矩阵和对应的信息矩阵?

求解如下:

根据协方差的定义,计算的协方差矩阵如下:

[[0.17 0.08 0.24]

[0.08 0.04 0.12]

[0.24 0.12 0.45]]

根据信息矩阵的定义,计算的信息矩阵如下:

[[ 100. -200. 0. ]

[-200. 525. -33.33333333]

[ 0. -33.33333333 11.11111111]]

点积是单位阵。

说明信息矩阵和协方差的逆之间是相等的

基于python的代码如下:

import numpy as np
w1 = 2
w3 = 3
shegma2_1 = 0.01
shegma2_2 = 0.04
shegma2_3 = 0.09
\# 计算对应的协方差

A = np.array([
  [w1 * w1 * shegma2_2 + shegma2_1, w1 * shegma2_2, w1 * w3 * shegma2_2],
  [w1 * shegma2_2, shegma2_2, w3 * shegma2_2],
  [w1 * w3 * shegma2_2, w3 * shegma2_2, w3 * w3 * shegma2_2 + shegma2_3]
])
A_information = np.array([
  [1 / shegma2_1, -w1 / shegma2_1, 0],
  [-w1 / shegma2_1, w1 * w1 / shegma2_1 + 1 / shegma2_2 + w3 * w3 / shegma2_3, -w3 / shegma2_3],
  [0, -w3 / shegma2_3, 1 / shegma2_3]])
print("协方差矩阵是:\n", A)
print("A的逆运算是:\n", np.linalg.inv(A))
print("信息矩阵是:\n", A_information)
print("信息矩阵的乘的结果是:\n ", np.dot(A, A_information))

对应的输出结果如下:


协方差矩阵是:

 [[0.17 0.08 0.24]

 [0.08 0.04 0.12]

 [0.24 0.12 0.45]]

A的逆运算是:

 [[ 1.00000000e+02 -2.00000000e+02 -2.07488347e-14]

 [-2.00000000e+02  5.25000000e+02 -3.33333333e+01]

 [-0.00000000e+00 -3.33333333e+01  1.11111111e+01]]

信息矩阵是:

 [[ 100.     -200.       0.     ]

 [-200.      525.      -33.33333333]

 [  0.      -33.33333333  11.11111111]]

信息矩阵的乘的结果是:

 [[ 1.00000000e+00 -2.72374715e-16 -4.89484996e-16]

 [-1.66533454e-16  1.00000000e+00 -2.44742498e-16]

 [ 8.88178420e-16 -1.36187358e-15  1.00000000e+00]]

标签:shegma2,验证,16,矩阵,协方差,w3,w1
来源: https://www.cnblogs.com/wpf2022/p/16223189.html