def __simultaneous_iteration(self, A, k, eps):
n, d = A.shape
q = int(np.log((n / eps) / eps))
G = np.random.normal(0., 1., (d, k))
# Gram-Schmidt
Y = np.dot(np.dot(ln.matrix_power(np.dot(A, A.T), q), A), G) # (n, k)
Q, R = ln.qr(Y, mode='complete')
return Q
评论列表
文章目录