pySPACE is the abbreviation for "Signal Processing and Classification Environment in Python using YAML and supporting parallelization". It is a modular software for processing of large data streams that has been specifically designed to enable distributed execution and empirical evaluation of signal processing chains. V arious signal processing algorithms (so called nodes) are available within the software, from finite impulse response filters over data-dependent spatial filters (e.g. CSP, xDAWN) to established classifiers (e.g. SVM, LDA). pySPACE incorporates the concept of node and node chains of the MDP framework. Due to its modular architecture, the software can be easily extended with new processing nodes and more general operations. Large scale empirical investigations can be configured using simple text- configuration files in the YAML format, executed on different (distributed) computing modalities, and evaluated using an interactive graphical user interface.
pySPACE allows the user to connect nodes modularly and automatically benchmark the respective chains for different parameter settings and compare these with other node chains, e.g. by automatic evaluation of classification performances provided within the software. In addition, the pySPACElive mode of execution can be used for online processing of streamed data. The software specifically supports but is not limited to EEG data. Any kind of time series or feature vector data can be processed and analyzed. pySPACE additionally provides interfaces to specialized signal processing libraries such as SciPy, the WEKA Machine Learning Framework, MDP, and the Maja Machine Learning Framework (MMLF).
completely modular signal processing chains
over 200 processing nodes: comprising data loading, splitting, selection and saving; filtering and normalization; feature generation and selection; parameter optimization; and classification, postprocessing and evaluation
several large dataset operations
benchmarking of signal processing (including the calculation of numerous metrics)
pySPACElive mode for online processing of incoming data streams
interfaces to other frameworks
modular and easy to extent
comprehensive developer and user documentation
data visualization and graphical user interface for analysis of performance results
easy installation building the pySPACEcenter containing everything the user needs: executables, configuration, data storage and specifications
Currently supported operating systems are Linux and MacOSX, and also cluster architectures using MPI or the IBM LoadLeveler system but the software should also run on windows. The software has required dependencies to Python2.6 or 2.7, NumPy, SciPy and YAML. Further optional dependencies exist, e.g. for plotting Matplotlib is needed. Computational efficiency is achieved by using C/C++-Code libraries where needed, e.g. SVM classification can be performed using the LIBSVM package.
- Changes to previous version:
improved testing, improved documentation, windows compatibility, more algorithms
- BibTeX Entry: Download
- Corresponding Paper BibTeX Entry: Download
- URL: Project Homepage
- Supported Operating Systems: Linux, Windows, Mac Os X
- Data Formats: Arff, Brainamp, Csv, Numpy, Edf
- Tags: Brain Computer Interface, Classification, Preprocessing, Parallel, Machine Learning, Signal Processing, Prediction, Time Series Analysis, Parameter Optimization, Metrics, Benchmarking
- Archive: download here
No one has posted any comments yet. Perhaps you'd like to be the first?
Leave a comment
You must be logged in to post comments.