Perform Independent Component Analysis using the CuBICA algorithm.
Note that CuBICA is a batch-algorithm, which means that it needs
all input data before it can start and compute the ICs. The
algorithm is here given as a Node for convenience, but it actually
accumulates all inputs it receives. Remember that to avoid running
out of memory when you have many components and many time samples.
As an alternative to this batch mode you might consider the telescope
mode (see the docs of the __init__ method).
Reference:
Blaschke, T. and Wiskott, L. (2003).
CuBICA: Independent Component Analysis by Simultaneous Third- and
Fourth-Order Cumulant Diagonalization.
IEEE Transactions on Signal Processing, 52(5), pp. 1250-1256.
|
core(self,
data)
This is the core routine of the ICANode. Each subclass must
define this function to return the achieved convergence value.
This function is also responsible for setting the ICA filters
matrix self.filters.
Note that the matrix self.filters is applied to the right of the
matrix containing input data. This is the transposed of the matrix
defining the linear transformation. |
|
|
Inherited from unreachable.ProjectMatrixMixin :
get_projmatrix ,
get_recmatrix
Inherited from unreachable.newobject :
__long__ ,
__native__ ,
__nonzero__ ,
__unicode__ ,
next
Inherited from object :
__delattr__ ,
__format__ ,
__getattribute__ ,
__hash__ ,
__new__ ,
__reduce__ ,
__reduce_ex__ ,
__setattr__ ,
__sizeof__ ,
__subclasshook__
|
|
__init__(self,
limit=0.001,
telescope=False,
verbose=False,
whitened=False,
white_comp=None,
white_parm=None,
input_dim=None,
dtype=None)
Input arguments: |
|
|
|
|
|
|
|
|
|
_stop_training(self)
Whiten data if needed and call the 'core' routine to perform ICA.
Take care of telescope-mode if needed. |
|
|
|
execute(self,
x)
Process the data contained in x . |
|
|
|
|
|
stop_training(self)
Whiten data if needed and call the 'core' routine to perform ICA.
Take care of telescope-mode if needed. |
|
|
|
_train(self,
*args)
Collect all input data in a list. |
|
|
|
train(self,
*args)
Collect all input data in a list. |
|
|
|
|
|
__call__(self,
x,
*args,
**kwargs)
Calling an instance of Node is equivalent to calling
its execute method. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_refcast(self,
x)
Helper function to cast arrays to the internal dtype. |
|
|
|
|
|
|
|
copy(self,
protocol=None)
Return a deep copy of the node. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
is_training(self)
Return True if the node is in the training phase,
False otherwise. |
|
|
|
save(self,
filename,
protocol=-1)
Save a pickled serialization of the node to filename .
If filename is None, return a string. |
|
|
|
set_dtype(self,
t)
Set internal structures' dtype. |
|
|
|
|
|
|