function | fastica
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的更多相关文章
- 通过百度echarts实现数据图表展示功能
现在我们在工作中,在开发中都会或多或少的用到图表统计数据显示给用户.通过图表可以很直观的,直接的将数据呈现出来.这里我就介绍说一下利用百度开源的echarts图表技术实现的具体功能. 1.对于不太理解 ...
- scikit-learn:class and function reference(看看你究竟掌握了多少。。)
http://scikit-learn.org/stable/modules/classes.html#module-sklearn.decomposition Reference This is t ...
- jsp中出现onclick函数提示Cannot return from outside a function or method
在使用Myeclipse10部署完项目后,原先不出错的项目,会有红色的叉叉,JSP页面会提示onclick函数错误 Cannot return from outside a function or m ...
- JavaScript function函数种类
本篇主要介绍普通函数.匿名函数.闭包函数 目录 1. 普通函数:介绍普通函数的特性:同名覆盖.arguments对象.默认返回值等. 2. 匿名函数:介绍匿名函数的特性:变量匿名函数.无名称匿名函数. ...
- 在ubuntu16.10 PHP测试连接MySQL中出现Call to undefined function: mysql_connect()
1.问题: 测试php7.0 链接mysql数据库的时候发生错误: Fatal error: Uncaught Error: Call to undefined function mysqli_con ...
- jquery中的$(document).ready(function() {});
当文档载入时执行function函数里的代码, 这部分代码主要声明,页面加载后 "监听事件" 的方法.例如: $(document).ready( $("a") ...
- Function.prototype.toString 的使用技巧
Function.prototype.toString这个原型方法可以帮助你获得函数的源代码, 比如: function hello ( msg ){ console.log("hello& ...
- 转: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. ...
- [Xamarin] 透過Native Code呼叫 JavaScript function (转帖)
今天我們來聊聊關於如何使用WebView 中的Javascript 來呼叫 Native Code 的部分 首先,你得先來看看這篇[Xamarin] 使用Webview 來做APP因為這篇文章至少講解 ...
- Oracle数据库自动备份SQL文本:Procedure存储过程,View视图,Function函数,Trigger触发器,Sequence序列号等
功能:备份存储过程,视图,函数触发器,Sequence序列号等准备工作:--1.创建文件夹 :'E:/OracleBackUp/ProcBack';--文本存放的路径--2.执行:create or ...
随机推荐
- C# List间的交集并集差集
一.简单类型List的交集并集差集 1.先定义两个简单类型的List List<int> listA = new List<int>() { 1, 2, 3, 4, 5, 6, ...
- excel数字转日期
import datetime delta = datetime.timedelta() today = datetime.datetime.strptime('1899/12/30', '%Y/%m ...
- 技嘉b75m-d3v在nvme固态安装win7并且oem激活的实现过程
本篇文章主要讲述了实现台式机主板oem激活win7以及旧平台主板使用nvme固态安装win7的过程 事情的起因是我去年在小黄鱼买了台戴尔n4110,今年买了台惠普银河舰队2代,并且把里面128GB的n ...
- 使用pip安装PySide6
https://www.perfcode.com/p/pip-install-pyside6.html 要求 在安装PySide6之前,你必须先安装Python 3.6 以上版本: 安装PySide6 ...
- JSON中put、accumulate、elemate的区别
JSONObject.put():将value映射到key下,加入在JSONObject对象之前存在一个value存在key下,当前的value会替换之前的value. JSONObject.accu ...
- [JavaScript]关于prototype继承
When it comes to inheritance, JavaScript only has one construct: objects. Each object has a private ...
- 物理机安装mysql8, 修改数据库目录
自动安装mysql ,并修改数据库目录. #! /bin/bash #mysql官方下载路径:https://dev.mysql.com/downloads/mysql/ # 配置dnf源 mkdir ...
- leedcode题目 :罗马数字转整数 Java
罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 例如, 罗马数字 2 写做 II ,即为两个并列的 1.12 写做 XII ,即为 X + II . 27 写做 XXVII, 即 ...
- Linux 释放内存及占用较高问题排查
1. 查看内存情况 #按 k 查看 free #按兆M查看 free -m total:总计物理内存的大小. used:已使用多大. free:可用有多少. Shared:多个进程共享的内存总额. B ...
- C++之split字符串分割
在C++中没有直接对应的split函数,字符串分割可借助以下方法实现: 1.借助strtok函数 函数原型:char * strtok (char *str, char * delim); 函数功能: ...