验证协方差矩阵和信息矩阵之间的关系
作者:互联网
实验一
-
验证信息矩阵和协方差矩阵的是互逆的关系。
-
验证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