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. CAD梦想看图手机版20211101更新(手机版CAD软件)

    CAD梦想看图手机版20211101更新(手机版CAD软件)1. 新界面风络2. 增加图块库功能3. 适配Android 114. 修改图块中的,多线义线的线型可能显示不对问题5. 修改图块中套用图块 ...

  2. 36.201——LTE物理层——总体描述物理层综述协议

    主要包括物理层在协议结构中的位置和功能,包括物理层4个规范36.211.36.212.36.213.36.214的主要内容和相互关系等 The radio interface is composed ...

  3. .Net Core WebApi AutoFac用法

    1. 安装Autofac.Extensions.DependencyInjection管理包 UI层安装 2.在Program里面配置服务提供工厂 3.在Startup里面添加一个配置容器的方法 使用 ...

  4. python语法中的左值、右值和字符

    位置决定语义 在下面的python代码中,忽略掉语法错误,源码中同样一个单词tsecer在不同的位置有不同的意义 import之后 在import之后的tsecer是作为一个简单的字面字符串来处理:这 ...

  5. java基于springboot的新生报到小程序带论文

    简介 本项目主要是新生报道系统,包含的新生入学流程的功能:新生可以在app里提交预报到日期确认报到,查看自己的学费缴费记录,更改自己的银行卡号,查看课表,查看寝室,查看自己的专业班级等个人信息,查看饭 ...

  6. nacos原理

    配置中心原理 1.Nacos 客户端使用长轮询请求客户端变更数据,并且设置30s超时,当配置发生变化响应会立即返回,否则一直等到29.5s之后再返回响应. 2.客户端的请求到达服务端后,服务端将该请求 ...

  7. HTML图片上传实时预览js

    <style>*{margin:0; padding:0;}form{background:#F1F1F1;}.bbg{background:url(../images/add_ico.j ...

  8. php 动态实例化某个类

    $name = 'test'; $controller = 'test'; $a = '\\addons\\'.$name.'\\model\\'.$controller; $this->mod ...

  9. docker持久化数据存储

    一.把数据存储到本地/opt/data目录下面,容器挂载到/data目录下面 [root@docker-1 ~]# docker run -itd --name www -v /opt/data:/d ...

  10. 765. 情侣牵手 (Hard)

    问题描述 765. 情侣牵手 (Hard) n 对情侣坐在连续排列的 2n 个座位上,想要牵到对方的手. 人和座位由一个整数数组 row 表示,其中 row[i] 是坐在第 i 个座位上的人的 ID. ...