통계에서 일반적인 문제는 대칭 양수 한정 행렬의 제곱근 역을 계산하는 것입니다. 이것을 계산하는 가장 효율적인 방법은 무엇입니까?
나는 우연히 어떤 문학 (나는 아직 읽지 않은), 일부 부수적 R 코드 여기에 내가 편의를 위해 여기에 재생됩니다,
# function to compute the inverse square root of a matrix
fnMatSqrtInverse = function(mA) {
ei = eigen(mA)
d = ei$values
d = (d+abs(d))/2
d2 = 1/sqrt(d)
d2[d == 0] = 0
return(ei$vectors %*% diag(d2) %*% t(ei$vectors))
}
나는 내가 그 선을 이해한다고 확신하지 못한다 d = (d+abs(d))/2
. 행렬 제곱근 역을 계산하는 더 효율적인 방법이 있습니까? R eigen
함수는 LAPACK을 호출합니다 .
d[d<0] = 0
.