dss_1-0
所属分类:Windows编程
开发工具:matlab
文件大小:4312KB
下载次数:19
上传日期:2008-11-23 21:48:44
上 传 者:
rozyang
说明: Denoising source separation is a new source separation framework proposed by Jaakko Sä relä and Harri Valpola. It is based on denoising procedures.
For more information, see the comprehensive journal paper Denoising source separation published in Journal of Machine Learning Research and the Web tutorials
(Denoising source separation is a new source separation framework proposed by Jaakko S盲 rel盲 and Harri Valpola. It is based on denoising procedures. For more information, see the comprehensive journal paper Denoising source separation published in Journal of Machine Learning Research and the Web tutorials)
文件列表:
dss_1-0 (0, 2005-12-07)
dss_1-0\beta_global.m (962, 2005-12-07)
dss_1-0\beta_pow3.m (759, 2005-12-07)
dss_1-0\beta_tanh.m (898, 2005-12-07)
dss_1-0\CHANGES (1553, 2005-12-07)
dss_1-0\default_stop.m (1495, 2005-12-07)
dss_1-0\demos (0, 2005-12-07)
dss_1-0\demos\art_data.mat (327864, 2005-12-07)
dss_1-0\demos\demo_art.m (1943, 2005-12-07)
dss_1-0\demos\demo_MEGblind.m (1677, 2005-12-07)
dss_1-0\demos\demo_MEGprior.m (4135, 2005-12-07)
dss_1-0\demos\MEG_data.mat (4503608, 2005-12-07)
dss_1-0\denoise_avg.m (2855, 2005-12-07)
dss_1-0\denoise_dct.m (1006, 2005-12-07)
dss_1-0\denoise_energy.m (2592, 2005-12-07)
dss_1-0\denoise_fica_gauss.m (1213, 2005-12-07)
dss_1-0\denoise_fica_kurtosis.m (1001, 2005-12-07)
dss_1-0\denoise_fica_skew.m (974, 2005-12-07)
dss_1-0\denoise_fica_tanh.m (1194, 2005-12-07)
dss_1-0\denoise_filter.m (2201, 2005-12-07)
dss_1-0\denoise_mask.m (1248, 2005-12-07)
dss_1-0\denoise_pow3.m (1095, 2005-12-07)
dss_1-0\denoise_smooth_tanh.m (1312, 2005-12-07)
dss_1-0\denoise_tanh.m (1061, 2005-12-07)
dss_1-0\denss.m (3240, 2005-12-07)
dss_1-0\dss_2dmask.m (914, 2005-12-07)
dss_1-0\dss_check_adaptivity.m (2042, 2005-12-07)
dss_1-0\dss_core_defl.m (5618, 2005-12-07)
dss_1-0\dss_core_pca.m (1249, 2005-12-07)
dss_1-0\dss_core_symm.m (4357, 2005-12-07)
dss_1-0\dss_create_state.m (7980, 2005-12-07)
dss_1-0\dss_fastica.m (947, 2005-12-07)
dss_1-0\dss_preprocess.m (897, 2005-12-07)
dss_1-0\dss_set_denoising.m (1516, 2005-12-07)
dss_1-0\dss_sphere.m (2062, 2005-12-07)
dss_1-0\estimate_mask.m (1749, 2005-12-07)
dss_1-0\gamma_179.m (1044, 2005-12-07)
dss_1-0\gamma_predictive.m (1064, 2005-12-07)
dss_1-0\gamma_predictive_symm.m (1150, 2005-12-07)
dss_1-0\gui (0, 2005-12-07)
... ...
DSS MATLAB package
Copyright (C) 2004, 2005 DSS MATLAB package team (dss@cis.hut.fi).
Distributed by Laboratory of Computer and Information Science,
Helsinki University of Technology. http://www.cis.hut.fi/projects/dss/.
This program 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 2
of the License, or (at your option) any later version.
This program 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.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
REQUIREMENTS
This is a MATLAB package. The command line version requires MATLAB v6.1
and the graphical user interface v7.
INSTALLATION
Copy archive into proper directory and unpack it
> gtar -xvzf dss_package.tar.gz
Add DSS package (directory where 'dss.m' is located) to the Matlab path.
Use absolute path definition.
a) Use Matlab pathtool to add path.
OR
b) Add line to the startup.m in your home directory
addpath('/path/to/dss')
OR
c) Add item to the p vector in ~/.matlab/pathdef.m
'/path/to/dss:',...
If you want to use keyboard to interrupt calculation (so that it can
be continued afterwards), MEX or java function must be set to handle
keypresses. To set up java keyboard interrupt modify 'classpath.txt'
file and add path to dss directory on a new line or set the path using
MATLABs javaclasspath command. To set up MEX keyboard interrupt a
testkeypress-function must be compiled with 'prepare.m' script. This
requires that MEX compiler environment is properly set up.
GRAPHICAL USER INTERFACE
DSS package contains a graphical user interface (GUI). See README in
gui-directory for more information.
USAGE
DSS can be run with default parameters simply by passing the mixed
signal matrix as a single parameter. The result is the state structure
containing the details of the run. The state structure allows long
calculations to be interrupted and continued later on. The algorithm
also copies the essential results to the other output arguments.
>> [state] = denss(X)
>> [state, W, A, ...] = denss(X)
The algorithm can be interrupted by a control user interface or
pressing the SPACE-key and choosing the proper interrupt option.
After interruption, the calculation can be continued
by giving the state structure as a parameter.
>> [state, ...] = denss(state)
The parameters are given to the algorithm in a parameter structure that is
similar to the state structure. Parameters can be also given as
a cell array containing parameter and value pairs.
The initialization of the state script can be done in
a separate initialization function.
Also an existing state structure can be updated with new parameters.
% create new parameter structure, set the source dimension to 3
>> params.sdim = 3
% use symmetric approach
>> params.algorithm = 'symm'
% run algorithm with existing parameter structure
>> [state, ...] = denss(X, params)
% run algorithm by passing parameters directly
>> [state, ...] = denss(X, {'sdim', 3, 'algorithm', 'symm', ...})
% create algorithm state structure from parameter structure
>> state = dss_create_state(X, params)
% run algorithm with previously created state structure or
% continue interrupted calculation
>> [state, ...] = denss(state)
% update the algorithm state structure with new parameters
>> state = dss_create_state(state, params)
% run algorithm with existing state structure together with new parameters
>> [state, ...] = denss(state, params)
Some description of the parameters can be found from the files denss.m
and dss_init.m. DSS algorithm customization is made mostly by
providing custom functions for various algorithm operations.
See the demos in the demos directory for more information.
NOTES
MATLAB uses a clever pass-by-reference-or-value in function
calls. This means that passed variables are not copied (which would
take some CPU-time) if the function does not change them. For this
reason, one should avoid changing e.g. the state variable in the
denoising functions, even if it is not returned (no change would be
visible in the main program). Instead, make local copies of the
relevant parts in the denoising function.
If you have run the dss algorithm once and would like to run it again,
you have to clear the fields 'S' and 'W' from the state
struct. Otherwise, dss will start from the predefined S (or W).
FILES
--Main DSS functions:
denss.m Main script for running DSS algorithm. Creates
state structure and calls defl/symm implementation
dss_fastica.m DSS with FastICA-like interface
dss_2dmask.m 2-dim mask denoising (eg. spectrogram denoising)
dss_create_state.m Creates DSS state struct based on given parameters
dss_set_denoising.m Initialize denoising function and parameters
estimate_mask.m Estimate bit mask based on signal dynamics
prepare.m Initialize environment (compile testkeypress.mex)
--Internal functions:
dss_preprocess.m Performs data preprocessing
dss_check_adaptivity.m Initialize alpha, beta and gamma values or functions
dss_core_defl.m Deflation DSS core
dss_core_symm.m Symmetric DSS core
dss_core_pca.m PCA DSS core
message.m Print message depending on verbosity level
--Helper functions:
randlap.m Random laplacian noise
logplot.m Plot data in linear & logarithmic scale
Keytest.class Keyboard reading for interrupting DSS from keyboard
--Preprocessing functions:
pre_sphere.m Default whitening function (basic PCA whitening)
pre_sphere_symm.m Symmetric sphering
--Stopping functions:
default_stop.m Default stopping criteria function
--Orthogonalization functions:
ortho_default.m Default orthogonalization function (both defl & symm)
ortho_quasi.m Quasiorthogonalization
--Denoising functions:
denoise_fica_gauss.m Equals FastICA gaussian non-linearity
denoise_fica_kurtosis.m Equals FastICA kurtosis non-linearity
denoise_fica_skew.m Equals FastICA skewness non-linearity
denoise_fica_tanh.m Equals FastICA tanh non-linearity (default)
denoise_pow3.m Kurtosis denoising function
denoise_tanh.m Tanh denoising function
denoise_mask.m Simple mask denoising function
denoise_energy.m Energy based denoising
denoise_smooth_tanh.m Smooth tanh denoising
denoise_filter.m Generic signal filter (also a denoising function)
denoise_dct.m
denoise_avg.m Ensemble average denoising using given triggers
--Alpha functions:
*none
--Beta functions:
beta_global.m Global spectral shift for all denoising functions
beta_tanh.m Adaptive (local) spectral shift for tanh denoising
beta_pow3.m Adaptive (local) spectral shift for pow3
denoising, equals kurtosis extremisation
--Gamma functions:
gamma_179.m 179-rule adaptive gamma
gamma_predictive.m Predictive controller adaptive gamma (defl dss)
gamma_predictive_symm.m Predictive controller adaptive gamma (symm dss)
--Reporting functions:
report_convergence.m
report_objective.m
report_print.m
report_w.m
--Directories:
gui DSS GUI
src Misc source files
test Unit tests
demos Demonstration data and scripts
CALLBACK FUNCTION SIGNATURES
Preprocessing:
[params, Y, wM, dwM] = preprocf(params, X, dim)
params Function specific parameters
X Original data
Y Whitened data
wM Whitening matrix
dwM Dewhitening matrix
dim Optional dimension reduction
Orthogonalization:
[params, W] = orthof(params,W) for symmetric dss
[params, w] = orthof(params, W, w) for deflation dss
params Function specific parameters
W Unmixing projection matrix estimate
w Projection vector estimate
Stopping:
[stop, params] = stopf(params, state)
state DSS algorithm state
params Stopping function specific modifiable parameters
stop Boolean, true to stop iteration
Denoising:
[params, s_new] = denf(params, s, state)
params Denoising function specific modifiable parameters
s Source signal estimate, matrix of row vector signals
state DSS algorithm state
s_new Denoised signal estimate
[params, alpha] = alphaf(params, state)
[params, beta] = betaf (params, state)
[params, gamma] = gammaf(params, state)
params Coefficient function specific modifiable parameters
state DSS algorithm state
alpha/beta/gamma Coefficient variable
Reporting:
[report_data] = reportf(report_data, state)
report_data Reporting function specific modifiable parameters
state DSS algorithm state
近期下载者:
相关文件:
收藏者: