如何在python中从随机数创建非奇异对称矩阵



我想使用随机实数创建一个非奇异对称矩阵。

例如,我想使用随机生成的实数创建一个3*3非奇异对称矩阵

number_list= [a,b,c,d,e,f]

我尝试了以下方法,但有时仍然会得到奇异矩阵。

upper = tfp.math.fill_triangular(number_list, upper=True)

symm= 0.5 * (upper + tf.transpose(upper, perm=[0,2,1]))

final =tf.matmul(symm, tf.transpose(symm, perm=[0,2,1]))

tfp.bijectors.FillScaleTriL()(number_list)将从三角形大小的数字列表中为您生成psd cholesky因子。CCD_ 3将形成协方差矩阵。组合可以写成bij = tfb.CholeskyOuterProduct()(tfb.FillScaleTriL()); bij(number_list)

最新更新