leftMultiplyByInvXAtXA: leftMultiplyByInvXAtXA

View source: R/leftMultiplyByInvXAtXA.R

leftMultiplyByInvXAtXAR Documentation

leftMultiplyByInvXAtXA

Description

Compute r = inv(X(:,ind)'*X(:,ind))*b , where X is the n*(n-1) design matrix for the weighted group fused lasso.

Usage

leftMultiplyByInvXAtXA(n, ind, val, w = defaultWeights(n), verbose = FALSE)

Arguments

n

The size of X is n*(n-1)

ind

a*1 vector of indices between 1 and n-1, sorted in increasing order

val

a*p matrix

w

(n-1)*1 vector of weights

verbose

A logical value: should extra information be output ? Defaults to FALSE.

Details

This implementation is derived from the MATLAB code of Vert and Bleakley:

Value

r

the (n-1)*p matrix equal to X'*Y

Author(s)

Morgane Pierre-Jean and Pierre Neuvial

References

Bleakley, K., & Vert, J. P. (2011). The group fused lasso for multiple change-point detection. arXiv preprint arXiv:1106.4199.

Vert, J. P., & Bleakley, K. (2010). Fast detection of multiple change-points shared by many signals using group LARS. Advances in Neural Information Processing Systems, 23, 2343-2351.

Examples


val <- matrix(c(1.56, 1.35, 1.26, 1.15), ncol=2)
ind <- c(5,6)
n <- 10
res <- leftMultiplyByInvXAtXA(n=n, ind=ind, val=val)
res
##         [,1]      [,2]
## [1,] 1.373189 0.9630868
## [2,] 0.228796 0.3636429


jointseg documentation built on June 8, 2025, 11:15 a.m.