是否有计算以下表达式的改进方法?

计算科学 优化 算法 表现 矩阵 复杂
2021-12-02 12:12:31

给定一个对称矩阵YRn×n, 和任意矩阵XRn×n, 和一个向量vRn×1, 是否可以计算以下表达式O(n2)时间?

diag(XTYX)v

在哪里diag(X)返回一个n×n矩阵,其主要对角元素等于X和非对角元素等于 0,和XT是转置X.

1个回答

让我试着帮忙,但如果我错了,请纠正我,因为我只是把它从我的帽子里拉出来:

我将扩展计算以帮助查看正在发生的事情。

让我们写A=(XTY)

所以你想计算kaikxkiνi对于每个i

aik=lxliylk

(diag(XTYX)v)i=klxliylkxkiνi这是O(n3).

现在让我们提出假设:由于Y是对称的,ylk=ykl. 总之,只有产品xlixki这也是关于对称的kl.

所以(diag(XTYX)v)i=2×kl>kxliylkxkiνi+kxkiykkxkiνi

那是nn(n+1)2计算。所以你可以将计算除以几乎2但不是n.