Record Class ICA
- Record Components:
components- each row is an independent component.
- All Implemented Interfaces:
Serializable
Like most ICA algorithms, FastICA seeks an orthogonal rotation of prewhitened data, through a fixed-point iteration scheme, that maximizes a measure of non-Gaussianity of the rotated components. Non-gaussianity serves as a proxy for statistical independence, which is a very strong condition and requires infinite data to verify. To measure non-Gaussianity, FastICA relies on a non-quadratic nonlinear function f(u), its first derivative g(u), and its second derivative g2(u).
A simple application of ICA is the cocktail party problem, where the underlying speech signals are separated from a sample data consisting of people talking simultaneously in a room. Usually the problem is simplified by assuming no time delays or echoes.
An important note to consider is that if N sources are present, at least N observations (e.g. microphones if the observed signal is audio) are needed to recover the original signals.
References
- Aapo Hyvärinen: Fast and robust fixed-point algorithms for independent component analysis, 1999
- Aapo Hyvärinen, Erkki Oja: Independent component analysis: Algorithms and applications, 2000
- See Also:
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondouble[][]Returns the value of thecomponentsrecord component.final booleanIndicates whether some other object is "equal to" this one.static ICAfit(double[][] data, int p) Fits independent component analysis with LogCosh contrast function.static ICAfit(double[][] data, int p, ICA.Options options) Fits independent component analysis.final inthashCode()Returns a hash code value for this object.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
ICA
public ICA(double[][] components) Creates an instance of aICArecord class.- Parameters:
components- the value for thecomponentsrecord component
-
-
Method Details
-
fit
Fits independent component analysis with LogCosh contrast function.- Parameters:
data- training data. The number of columns corresponding with the number of samples of mixed signals and the number of rows corresponding with the number of independent source signals.p- the number of independent components.- Returns:
- the model.
-
fit
Fits independent component analysis.- Parameters:
data- training data.p- the number of independent components.options- the hyperparameters.- Returns:
- the model.
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
components
public double[][] components()Returns the value of thecomponentsrecord component.- Returns:
- the value of the
componentsrecord component
-