fastica - Fast Independent Component Analysis

FastICA for Matlab 7.x and 6.x

Version 2.5, October 19 2005

Copyright (c) Hugo G�vert, Jarmo Hurri, Jaakko S�rel�, and Aapo Hyv�rinen.

fastica(mixedsig) estimates the independent components from given

multidimensional signals. Each row of matrix mixedsig is one

observed signal. fastica uses Hyvarinen's fixed-point algorithm,

see http://www.cis.hut.fi/projects/ica/fastica/. Output from the

function depends on the number output arguments:

[icasig] = fastica (mixedsig); the rows of icasig contain the

estimated independent components.

[icasig, A, W] = fastica (mixedsig); outputs the estimated separating

matrix W and the corresponding mixing matrix A.

[A, W] = fastica (mixedsig); gives only the estimated mixing matrix

A and the separating matrix W.

Some optional arguments induce other output formats, see below.

A graphical user interface for fastica can be launched by the

command FASTICAG

fastica can be called with numerous optional arguments. Optional

arguments are given in parameter pairs, so that first argument is

the name of the parameter and the next argument is the value for

that parameter. Optional parameter pairs can be given in any order.

OPTIONAL PARAMETERS:

Parameter name Values and description

======================================================================

--Basic parameters in fixed-point algorithm:

'approach' (string) The decorrelation approach used. Can be

symmetric ('symm'), i.e. estimate all the

independent component in parallel, or

deflation ('defl'), i.e. estimate independent

component one-by-one like in projection pursuit.

Default is 'defl'.

'numOfIC' (integer) Number of independent components to

be estimated. Default equals the dimension of data.

======================================================================

--Choosing the nonlinearity:

'g' (string) Chooses the nonlinearity g used in

the fixed-point algorithm. Possible values:

                    Value of 'g':      Nonlinearity used:
'pow3' (default) g(u)=u^3
'tanh' g(u)=tanh(a1*u)
'gauss g(u)=u*exp(-a2*u^2/2)
'skew' g(u)=u^2

'finetune' (string) Chooses the nonlinearity g used when

fine-tuning. In addition to same values

as for 'g', the possible value 'finetune' is:

'off' fine-tuning is disabled.

'a1' (number) Parameter a1 used when g='tanh'.

Default is 1.

'a2' (number) Parameter a2 used when g='gaus'.

Default is 1.

'mu' (number) Step size. Default is 1.

If the value of mu is other than 1, then the

program will use the stabilized version of the

algorithm (see also parameter 'stabilization').

'stabilization' (string) Values 'on' or 'off'. Default 'off'.

This parameter controls wether the program uses

the stabilized version of the algorithm or

not. If the stabilization is on, then the value

of mu can momentarily be halved if the program

senses that the algorithm is stuck between two

points (this is called a stroke). Also if there

is no convergence before half of the maximum

number of iterations has been reached then mu

will be halved for the rest of the rounds.

======================================================================

--Controlling convergence:

'epsilon' (number) Stopping criterion. Default is 0.0001.

'maxNumIterations' (integer) Maximum number of iterations.

Default is 1000.

'maxFinetune' (integer) Maximum number of iterations in

fine-tuning. Default 100.

'sampleSize' (number) [0 - 1] Percentage of samples used in

one iteration. Samples are chosen in random.

Default is 1 (all samples).

'initGuess' (matrix) Initial guess for A. Default is random.

You can now do a "one more" like this:

[ica, A, W] = fastica(mix, 'numOfIC',3);

[ica2, A2, W2] = fastica(mix, 'initGuess', A, 'numOfIC', 4);

======================================================================

--Graphics and text output:

'verbose' (string) Either 'on' or 'off'. Default is

'on': report progress of algorithm in text format.

'displayMode' (string) Plot running estimates of independent

components: 'signals', 'basis', 'filters' or

'off'. Default is 'off'.

'displayInterval' Number of iterations between plots.

Default is 1 (plot after every iteration).

======================================================================

--Controlling reduction of dimension and whitening:

Reduction of dimension is controlled by 'firstEig' and 'lastEig', or

alternatively by 'interactivePCA'.

'firstEig' (integer) This and 'lastEig' specify the range for

eigenvalues that are retained, 'firstEig' is

the index of largest eigenvalue to be

retained. Default is 1.

'lastEig' (integer) This is the index of the last (smallest)

eigenvalue to be retained. Default equals the

dimension of data.

'interactivePCA' (string) Either 'on' or 'off'. When set 'on', the

eigenvalues are shown to the user and the

range can be specified interactively. Default

is 'off'. Can also be set to 'gui'. Then the user

can use the same GUI that's in FASTICAG.

If you already know the eigenvalue decomposition of the covariance

matrix, you can avoid computing it again by giving it with the

following options:

'pcaE' (matrix) Eigenvectors

'pcaD' (matrix) Eigenvalues

If you already know the whitened data, you can give it directly to

the algorithm using the following options:

'whiteSig' (matrix) Whitened signal

'whiteMat' (matrix) Whitening matrix

'dewhiteMat' (matrix) dewhitening matrix

If values for all the 'whiteSig', 'whiteSig' and 'dewhiteMat' are

supplied, they will be used in computing the ICA. PCA and whitening

are not performed. Though 'mixedsig' is not used in the main

algorithm it still must be entered - some values are still

calculated from it.

Performing preprocessing only is possible by the option:

'only' (string) Compute only PCA i.e. reduction of

dimension ('pca') or only PCA plus whitening

('white'). Default is 'all': do ICA estimation

as well. This option changes the output

format accordingly. For example:

                    [whitesig, WM, DWM] = fastica(mixedsig,
'only', 'white')
returns the whitened signals, the whitening matrix
(WM) and the dewhitening matrix (DWM). (See also
WHITENV.) In FastICA the whitening matrix performs
whitening and the reduction of dimension. Dewhitening
matrix is the pseudoinverse of whitening matrix. [E, D] = fastica(mixedsig, 'only', 'pca')
returns the eigenvector (E) and diagonal
eigenvalue (D) matrices containing the
selected subspaces.

======================================================================

EXAMPLES

    [icasig] = fastica (mixedsig, 'approach', 'symm', 'g', 'tanh');
Do ICA with tanh nonlinearity and in parallel (like
maximum likelihood estimation for supergaussian data). [icasig] = fastica (mixedsig, 'lastEig', 10, 'numOfIC', 3);
Reduce dimension to 10, and estimate only 3
independent components. [icasig] = fastica (mixedsig, 'verbose', 'off', 'displayMode', 'off');
Don't output convergence reports and don't plot
independent components.

A graphical user interface for fastica can be launched by the

command FASTICAG

See also fasticag

function | fastica的更多相关文章

  1. 通过百度echarts实现数据图表展示功能

    现在我们在工作中,在开发中都会或多或少的用到图表统计数据显示给用户.通过图表可以很直观的,直接的将数据呈现出来.这里我就介绍说一下利用百度开源的echarts图表技术实现的具体功能. 1.对于不太理解 ...

  2. scikit-learn:class and function reference(看看你究竟掌握了多少。。)

    http://scikit-learn.org/stable/modules/classes.html#module-sklearn.decomposition Reference This is t ...

  3. jsp中出现onclick函数提示Cannot return from outside a function or method

    在使用Myeclipse10部署完项目后,原先不出错的项目,会有红色的叉叉,JSP页面会提示onclick函数错误 Cannot return from outside a function or m ...

  4. JavaScript function函数种类

    本篇主要介绍普通函数.匿名函数.闭包函数 目录 1. 普通函数:介绍普通函数的特性:同名覆盖.arguments对象.默认返回值等. 2. 匿名函数:介绍匿名函数的特性:变量匿名函数.无名称匿名函数. ...

  5. 在ubuntu16.10 PHP测试连接MySQL中出现Call to undefined function: mysql_connect()

    1.问题: 测试php7.0 链接mysql数据库的时候发生错误: Fatal error: Uncaught Error: Call to undefined function mysqli_con ...

  6. jquery中的$(document).ready(function() {});

    当文档载入时执行function函数里的代码, 这部分代码主要声明,页面加载后 "监听事件" 的方法.例如: $(document).ready( $("a") ...

  7. Function.prototype.toString 的使用技巧

    Function.prototype.toString这个原型方法可以帮助你获得函数的源代码, 比如: function hello ( msg ){ console.log("hello& ...

  8. 转:ORA-15186: ASMLIB error function = [asm_open], error = [1], 2009-05-24 13:57:38

    转:ORA-15186: ASMLIB error function = [asm_open], error = [1], 2009-05-24 13:57:38http://space.itpub. ...

  9. [Xamarin] 透過Native Code呼叫 JavaScript function (转帖)

    今天我們來聊聊關於如何使用WebView 中的Javascript 來呼叫 Native Code 的部分 首先,你得先來看看這篇[Xamarin] 使用Webview 來做APP因為這篇文章至少講解 ...

  10. Oracle数据库自动备份SQL文本:Procedure存储过程,View视图,Function函数,Trigger触发器,Sequence序列号等

    功能:备份存储过程,视图,函数触发器,Sequence序列号等准备工作:--1.创建文件夹 :'E:/OracleBackUp/ProcBack';--文本存放的路径--2.执行:create or ...

随机推荐

  1. ARMv7-Protected Memory System Architecture(PMSA)

    PMSA介绍: PMSA基于内存保护单元(MPU),PMSA与基于VMSA的MMU相比提供了更简单的内存保护方案,简化适用于硬件和软件.PMSAv7处理器依赖MPU类型寄存器来识别,请参见MPUIR, ...

  2. Flink 消费RabbitMQ 和 Kafka

    在消息RabbitMQ时,我们关心的一个问题是手动ack还是自动ack,如果是自动ack就怕出现丢消息的情况 Flink以RabbitMQ作为Source,是怎么保证消息唯一性的呢,是怎么保证ack的 ...

  3. 什么是axios

    原文: https://blog.csdn.net/qq_40837310/article/details/123028044 1.使用格式和jquery的ajax很相似,和最初的相比可以链式调用,1 ...

  4. android HttpURLConnection ,HttpClient设置Cookie

    上一阶段项目设计使用cookie信息实现登录访问功能,在实现过程遇到一些问题,下面整理一下: 首先,client想使用cookie,必须访问一次server从会话中获取cookie信息,然后在设置回去 ...

  5. mysql数据库配置

    1.下载mysql数据库解压到自己存放的路径 2.解压之后配置环境变量 [此电脑]- [右键]-[属性]-[高级系统设置]-[环境变量]- [找到系统变量中的path]-[选中]-[编辑]- [新建] ...

  6. PLSQL中文乱码问题(显示问号)解决办法

    select userenv('language') from dual; 在环境变量的系统变量中添加配置: NLS_LANG SIMPLIFIED CHINESE_CHINA.ZHS16GBK 这个 ...

  7. Android开发数据库Sqlite

    创建数据库 首先我们要了解这个类:SQLiteOpenHelper: 1.写一个类继承SQLiteOpenHelper 2.实现里面的方法,创建构造方法 参数解释: /** @param: conte ...

  8. 2022-04-24内部群每日三题-清辉PMP

    1.在估算项目成本时,项目经理与一位主题专家(SME)合作,该专家曾有低估交付项目需求所需工作的历时.然而,在所有其他领域,该主题专家是一位很好的贡献者,备受尊重,并且经常有相关方需要他.若要主动减轻 ...

  9. element-ui的自定义表头

    自定义表头 需求:之前在做一个项目的时候,原型图要求表头文字需要额外解释就会在文字后面标注 1,2作为上标 html中提供了<sup></sup>和<sub>< ...

  10. 手写JS深拷贝

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...