pySPACE¶
For getting a basic introduction into pySPACE and its main principles, refer to this talk at the PyData Berlin 2014 conference and this paper in the Frontiers in Neuroinformatics Journal. This paper should be also used to cite pySPACE.
Data, Processing & Modalities |
Launch pySPACE |
Learn About Usage |
||
# | # | |||
Short & Long |
Algorithm Overview |
Frequently Asked Questions |
||
# | # |
Welcome¶
pySPACE is a Signal Processing And Classification Environment (SPACE)
written in Python interfacing to the user
with YAML configuration files and enabling parallel process
execution (for all of these reasons we put a small py in front).
pySPACE allows rapid specification, execution,
and analysis of empirical investigations (short: benchmarking)
in signal processing and machine learning.
Besides the benchmarking way of executing pySPACE where you can evaluate your
data with your own configuration of algorithms,
the software also provides a launch_live
mode
where you can directly execute signal processing as soon as you have the data
in an online fashion.
If you take a look at the Main Software Structure of pySPACE you should be able to directly see how you can interact with the software. Besides this, user data (input, output and processing definitions) are stored in your pySPACEcenter (until configured otherwise). You can see more when looking at the Getting started page.
In pySPACE the parallelization part is not restricted to signal processing and
machine learning, though these are the only use cases currently supported.
By defining your own operations
,
you can interface any library with pySPACE, using different
parallelization modes. pySPACE already provides interfaces to popular toolkit
libraries like the Weka framework,
and the MMLF but
also comes with a lot of own algorithms,
though some algorithms are just wrapper to methods from other libraries like
the Modular toolkit for Data Processing
(MDP),
scikit-learn,
LIBSVM or
LIBLINEAR.
This software can be used to analyze and compare the performance
(e.g., classification accuracy) of different methods and parameter settings, respectively.
It allows to estimate these quantities based on different validation schemes
(including crossvalidation) and several
independent runs. Furthermore, it allows to make use of the fact that most of
these problems can be handled independently and allows to process subtasks in parallel on different
backends
. For instance the
MulticoreBackend
allows to run as
many tasks in parallel as cores are present in the respective machine.
pySPACE supports the massive parallel execution of benchmarking experiment on grids like systems using LoadLeveler or MPI sharing a common data access.
This software has an object-oriented design, providing classes for important entities like:
- Resources,
- Processing, and
- Modality,
which define the structure of the data, how it is changed and which parallelization mode is used.
Main Software Structure¶
environments |
Contains everything to make missions possible, e.g., definitions of backends and processing chains |
missions |
Modules for data processing including large tasks (operations), signal processing algorithms (nodes) and interfaces to external packages |
resources |
Everything that can be input and output of pySPACE. |
run |
The name tells you everything: run contains everything that can be executed |
tests |
Collection of pySPACE system and unit tests |
tools |
Several communication, file, memory, and performance tools used in pySPACE |
Indices and Meta Information¶
# | # | |||
The Complete Index |
Learn About the Structure |
All Elemental Algorithms |
||
# | # | |||
pySPACE Vocabulary |
Learn About the Background |
The Doc of the Doc |
||
# | # | |||
GPLv3 |
Some Contributors |
Praise? Curse? Report? |
||
# | # |
Contact¶
pySPACE has been developed jointly by researchers at the German Research Center for Artificial Intelligence (DFKI GmbH), Robotics Innovation Center, Bremen (DFKI RIC) and the Robotics Group at the University of Bremen prior to its release as open source.
If you want to be kept informed about current changes in the framework, add yourself to the user mailing list.
For development discussions and requests or if you want to share with us successful software usage, contact us via the developer mailing list.
We are thankful for everybody who wants to contribute and you can feel free to join the developer mailing list to support us.
Both lists are moderated.
User mailing list : Ric-pyspace-user@dfki.de
Developer mailing list : Ric-pyspace-dev@dfki.de
Documentation TOC¶
Disclaimer¶
Warning
!! IMPORTANT INFORMATION !!
This software including all extensions and accessories is neither designed nor suitable for medical or diagnostic purposes. This software must not be used as a medical product according to appendixes 1 and 2 of the medical product operator regulation (Medizinprodukte-Betreiberverordnung).
!! WICHTIGER HINWEIS !!
Die vorliegende Software einschließlich aller Erweiterungen und Zubehör ist für medizinische oder diagnostische Zwecke nicht bestimmt oder geeignet. Sie darf nich mit Zweckbestimmung eines Medizinproduktes im Sinne der Anlagen 1 und 2 der Medizinprodukte-Betreiberverordnung eingesetzt werden.