root/doc/html/fastica_8h.html @ 354

Revision 353, 10.8 kB (checked in by smidl, 16 years ago)

doc

Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3<title>mixpp: fastica.h File Reference</title>
4<link href="tabs.css" rel="stylesheet" type="text/css">
5<link href="doxygen.css" rel="stylesheet" type="text/css">
6</head><body>
7<!-- Generated by Doxygen 1.5.8 -->
8<script type="text/javascript">
9<!--
10function changeDisplayState (e){
11  var num=this.id.replace(/[^[0-9]/g,'');
12  var button=this.firstChild;
13  var sectionDiv=document.getElementById('dynsection'+num);
14  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
15    sectionDiv.style.display='block';
16    button.src='open.gif';
17  }else{
18    sectionDiv.style.display='none';
19    button.src='closed.gif';
20  }
21}
22function initDynSections(){
23  var divs=document.getElementsByTagName('div');
24  var sectionCounter=1;
25  for(var i=0;i<divs.length-1;i++){
26    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
27      var header=divs[i];
28      var section=divs[i+1];
29      var button=header.firstChild;
30      if (button!='IMG'){
31        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
32        button=document.createElement('img');
33        divs[i].insertBefore(button,divs[i].firstChild);
34      }
35      header.style.cursor='pointer';
36      header.onclick=changeDisplayState;
37      header.id='dynheader'+sectionCounter;
38      button.src='closed.gif';
39      section.id='dynsection'+sectionCounter;
40      section.style.display='none';
41      section.style.marginLeft='14px';
42      sectionCounter++;
43    }
44  }
45}
46window.onload = initDynSections;
47-->
48</script>
49<div class="navigation" id="top">
50  <div class="tabs">
51    <ul>
52      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
53      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
54      <li><a href="modules.html"><span>Modules</span></a></li>
55      <li><a href="annotated.html"><span>Classes</span></a></li>
56      <li class="current"><a href="files.html"><span>Files</span></a></li>
57    </ul>
58  </div>
59  <div class="tabs">
60    <ul>
61      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
62      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
63    </ul>
64  </div>
65</div>
66<div class="contents">
67<h1>fastica.h File Reference</h1>Definition of FastICA (Independent Component Analysis) for IT++. 
68<a href="#_details">More...</a>
69<p>
70<code>#include &lt;<a class="el" href="mat_8h-source.html">itpp/base/mat.h</a>&gt;</code><br>
71
72<p>
73<a href="fastica_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
74<tr><td></td></tr>
75<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
76<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1Fast__ICA.html">itpp::Fast_ICA</a></td></tr>
77
78<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classitpp_1_1Fast__ICA.html" title="Fast_ICA Fast Independent Component Analysis (Fast ICA)The software is based upon...">Fast_ICA</a> Fast Independent Component Analysis (Fast ICA)<p>
79The software is based upon original FastICA for Matlab from A. Hyvarinen. Fast and Robust Fixed-Point Algorithms for Independent Component Analysis. IEEE Transactions on Neural Networks, 10(3), pp. 626-634, 1999.  <a href="classitpp_1_1Fast__ICA.html#_details">More...</a><br></td></tr>
80<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
81<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d1f545693a7caf99d42e7bd0b6c6c9fd"></a><!-- doxytag: member="fastica.h::FICA_APPROACH_DEFL" ref="d1f545693a7caf99d42e7bd0b6c6c9fd" args="" -->
82#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastica_8h.html#d1f545693a7caf99d42e7bd0b6c6c9fd">FICA_APPROACH_DEFL</a>&nbsp;&nbsp;&nbsp;2</td></tr>
83
84<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use deflation approach : compute IC one-by-one in a Gram-Schmidt-like fashion. <br></td></tr>
85<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ac33dc925ad4c4e9bd9ea1c2bc972178"></a><!-- doxytag: member="fastica.h::FICA_APPROACH_SYMM" ref="ac33dc925ad4c4e9bd9ea1c2bc972178" args="" -->
86#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastica_8h.html#ac33dc925ad4c4e9bd9ea1c2bc972178">FICA_APPROACH_SYMM</a>&nbsp;&nbsp;&nbsp;1</td></tr>
87
88<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use symmetric approach : compute all ICs at a time. <br></td></tr>
89<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="335a77f36fe4193000c24be53806dd4e"></a><!-- doxytag: member="fastica.h::FICA_NONLIN_POW3" ref="335a77f36fe4193000c24be53806dd4e" args="" -->
90#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastica_8h.html#335a77f36fe4193000c24be53806dd4e">FICA_NONLIN_POW3</a>&nbsp;&nbsp;&nbsp;10</td></tr>
91
92<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use x^3 non-linearity. <br></td></tr>
93<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f55288e52a8e7a40ae253228ae01e439"></a><!-- doxytag: member="fastica.h::FICA_NONLIN_TANH" ref="f55288e52a8e7a40ae253228ae01e439" args="" -->
94#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastica_8h.html#f55288e52a8e7a40ae253228ae01e439">FICA_NONLIN_TANH</a>&nbsp;&nbsp;&nbsp;20</td></tr>
95
96<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use tanh(x) non-linearity. <br></td></tr>
97<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a218f0ad3979a6de7005eeb86e15eb54"></a><!-- doxytag: member="fastica.h::FICA_NONLIN_GAUSS" ref="a218f0ad3979a6de7005eeb86e15eb54" args="" -->
98#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastica_8h.html#a218f0ad3979a6de7005eeb86e15eb54">FICA_NONLIN_GAUSS</a>&nbsp;&nbsp;&nbsp;30</td></tr>
99
100<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use Gaussian non-linearity. <br></td></tr>
101<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ed6ec962554dcf6914d8213f349ba8ff"></a><!-- doxytag: member="fastica.h::FICA_NONLIN_SKEW" ref="ed6ec962554dcf6914d8213f349ba8ff" args="" -->
102#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastica_8h.html#ed6ec962554dcf6914d8213f349ba8ff">FICA_NONLIN_SKEW</a>&nbsp;&nbsp;&nbsp;40</td></tr>
103
104<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use skew non-linearity. <br></td></tr>
105<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="87e4b97f3d0283410cc273c80db405d6"></a><!-- doxytag: member="fastica.h::FICA_INIT_RAND" ref="87e4b97f3d0283410cc273c80db405d6" args="" -->
106#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastica_8h.html#87e4b97f3d0283410cc273c80db405d6">FICA_INIT_RAND</a>&nbsp;&nbsp;&nbsp;0</td></tr>
107
108<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set random start for Fast_ICA. <br></td></tr>
109<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2ec5d4482d4345e6ee684f3e0bfb0be0"></a><!-- doxytag: member="fastica.h::FICA_INIT_GUESS" ref="2ec5d4482d4345e6ee684f3e0bfb0be0" args="" -->
110#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastica_8h.html#2ec5d4482d4345e6ee684f3e0bfb0be0">FICA_INIT_GUESS</a>&nbsp;&nbsp;&nbsp;1</td></tr>
111
112<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set predefined start for Fast_ICA. <br></td></tr>
113<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eafa658d11e26fe56b0b5450469ee119"></a><!-- doxytag: member="fastica.h::FICA_TOL" ref="eafa658d11e26fe56b0b5450469ee119" args="" -->
114#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="fastica_8h.html#eafa658d11e26fe56b0b5450469ee119">FICA_TOL</a>&nbsp;&nbsp;&nbsp;1e-9</td></tr>
115
116<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Eigenvalues of the covariance matrix lower than FICA_TOL are discarded for analysis. <br></td></tr>
117</table>
118<hr><a name="_details"></a><h2>Detailed Description</h2>
119Definition of FastICA (Independent Component Analysis) for IT++.
120<p>
121<dl class="author" compact><dt><b>Author:</b></dt><dd>Francois Cayre and Teddy Furon</dd></dl>
122-------------------------------------------------------------------------<p>
123Copyright (C) 1995-2008 (see AUTHORS file for a list of contributors)<p>
124This file is part of IT++ - a C++ library of mathematical, signal processing, speech processing, and communications classes and functions.<p>
125IT++ is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.<p>
126IT++ is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.<p>
127You should have received a copy of the GNU General Public License along with IT++. If not, see &lt;<a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>&gt;.<p>
128-------------------------------------------------------------------------<p>
129This is IT++ implementation of the original Matlab package FastICA.<p>
130This code is Copyright (C) 2004 by: Francois CAYRE and Teddy FURON TEMICS Project INRIA/Rennes (IRISA) Campus Universitaire de Beaulieu 35042 RENNES cedex FRANCE<p>
131Email: <a href="mailto:firstname.lastname@irisa.fr">firstname.lastname@irisa.fr</a><p>
132Matlab package is Copyright (C) 1998 by: Jarmo HURRI, Hugo GAVERT, Jaakko SARELA and Aapo HYVARINEN Laboratory of Information and Computer Science Helsinki University of Technology<p>
133URL: <a href="http://www.cis.hut.fi/projects/ica/fastica/about.shtml">http://www.cis.hut.fi/projects/ica/fastica/about.shtml</a><p>
134If you use results given by this FastICA software in an article for a scientific journal, conference proceedings or similar, please include the following original reference in the bibliography:<p>
135A. Hyvarinen, Fast and Robust Fixed-Point Algorithms for Independent Component Analysis, IEEE Transactions on Neural Networks 10(3):626-634, 1999<p>
136Differences with the original Matlab implementation:<ul>
137<li>no GUI</li><li>return something even in the case of a convergence problem</li><li>optimization of SVD decomposition (performed 2 times in Matlab, only 1 time in IT++)</li><li>default approach is SYMM with non-linearity POW3 </li></ul>
138</div>
139<hr size="1"><address style="text-align: right;"><small>Generated on Tue Jun 2 10:02:13 2009 for mixpp by&nbsp;
140<a href="http://www.doxygen.org/index.html">
141<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
142</body>
143</html>
Note: See TracBrowser for help on using the browser.