The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

Type: Package
Title: Whitening Data as Preparation for Blind Source Separation
Version: 0.1
Date: 2021-03-25
Maintainer: Markus Matilainen <markus.matilainen@outlook.com>
Imports: Rcpp (≥ 0.11.0)
LinkingTo: Rcpp, RcppArmadillo
Description: Whitening is the first step of almost all blind source separation (BSS) methods. A fast implementation of whitening for BSS is implemented to serve as a lightweight dependency for packages providing BSS methods.
License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
NeedsCompilation: yes
Packaged: 2021-03-25 14:05:39 UTC; manmat
Author: Markus Matilainen ORCID iD [cre, aut], Klaus Nordhausen ORCID iD [aut]
Repository: CRAN
Date/Publication: 2021-03-29 09:32:16 UTC

Whitening Data as Preparation for Blind Source Separation

Description

Whitening is the first step of almost all blind source separation (BSS) methods. A fast implementation of whitening for BSS is implemented to serve as a lightweight dependency for packages providing BSS methods.

Details

Package: BSSprep
Type: Package
Version: 0.1
Date: 2021-03-25
License: GPL (>= 2)

This package contains the single function BSSprep for whitening multivariate data as a preprocessing step for blind source separation (BSS). The package is meant as a fast and lightweight dependency for packages providing BSS methods as whitening is almost always the first step.

Author(s)

Markus Matilainen, Klaus Nordhausen

Maintainer: Markus Matilainen <markus.matilainen@outlook.com>


Whitening of Multivariate Data

Description

A function for data whitening.

Usage

BSSprep(X)

Arguments

X

A numeric matrix. Missing values are not allowed.

Details

A p-variate {\bf Y} with T observations is whitened, i.e. {\bf Y}={\bf S}^{-1/2}({\bf X}_t - \frac{1}{T}\sum_{t=1}^T {\bf X}_{t}), for t = 1, \ldots, T, where {\bf S} is the sample covariance matrix of {\bf X}.

This is often need as a preprocessing step like in almost all blind source separation (BSS) methods. The function is implemented using C++ and returns the whitened data matrix as well as the ingredients to back transform.

Value

A list containing the following components:

Y

The whitened data matrix.

X.C

The mean-centered data matrix.

COV.sqrt.i

The inverse square root of the covariance matrix of X.

MEAN

Mean vector of X.

Author(s)

Markus Matilainen, Klaus Nordhausen

Examples

n <- 100
X <- matrix(rnorm(10*n) - 1, nrow = n, ncol = 10)

res1 <- BSSprep(X)
res1$Y # The whitened matrix
colMeans(res1$Y) # should be close to zero
cov(res1$Y) # should be close to the identity matrix
res1$MEAN # Should hover around -1 for all 10 columns

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.