Note
Siren is a multi-platform software licensed under the Apache License, Version 2.0.
Siren and the algorithms that come with it are implemented in Python.
Siren is the graphical user interface that allows to mine, visualize and interactively edit redescriptions. Clired is the command-line user interface that allows to mine and preprocess redescriptions. They rely on a few different mining algorithms.
The interface is built with the wxPython Open Source GUI toolkit, ensuring cross-platform compatibility. The matplotlib library enables to generate high quality figures, seamlessly integrated in the interface.
The code is compatible with Python 3. Code from releases prior to 5.0
is compatible with Python 2.7.
After installing Siren, take a look at the user guide to get started.
Feel free to contact us for support or with feedback, bug reports and questions. mailto:esther.galbrun@inria.fr
If you do not yet have it, you will need to install Python, recent versions come with pip (the Python Package Installer) onboard.
Siren requires a number of python libraries, including scipy
, numpy
, scikit-learn
, matplotlib
, cartopy
and wxPython
. Make sure they are installed and accessible before you run Siren.
The source code is hosted on GitLab Inria. You can clone it.
Once you obtained the source code, Siren can be launched by running python exec_siren.py from the python-siren folder.
Siren is available as a python package on PyPI. Installing the package with pip is probably the easiest way to proceed.
If all goes well with the installation, the Siren interface can then be launched with the command exec_siren.
Anaconda is a cross-platform, free and open-source distribution of the Python programming language, including a convenient tool for managing packages. Through it, you can get Python as well as the packages needed for running Siren.
First, you need to install Anaconda , following for instance the instructions here.
This can be done with the following sequence of commands:
conda create --name conda-siren python=3.7
conda activate conda-siren
conda install -c conda-forge scikit-learn wxpython cartopy
pip install python-siren
If all went well, the Siren interface can be launched from within the conda-siren environment with the command exec_siren.
The platform-specific installation methods are no longer maintained!
With a debian-based distribution run the following commands as root to install
dpkg -i the_latest_siren_deb_package.deb
Afterward, you might need to run, to fix dependencies, i.e., install missing required packages
apt-get -f install
Or use a tool like Ubuntu Software Center to open the package and install the application.
If everything went fine, you should find a Siren entry in your Applications menu.
python-siren v4.3.0 (dmg, macOS 10.12, Sierra)
python-siren v4.3.0 (dmg, OS X 10.11, El Capitan)
To install, download the above disk image and copy the file Siren to your Applications folder (or anywhere else outside the disk image). Once that is done you only have to double-click the program icon to run Siren.
To run the program, double-click the program icon.
The Siren application is not digitally signed. Therefore, users with OS X Gatekeeper active cannot run the Siren application by double-clicking it. An attempt to do so will result in an error message. In order to open Siren for the first time, you need to right-click (command-click) the Siren icon, and select “Open” from the contextual menu. You only need to do this for the first launch after every re-installation of Siren.
More information about Gatekeeper can be found at http://support.apple.com/kb/HT5290”.
Download and run to install Siren. Once that is done you only have to double-click the program icon to run Siren.
Previous versions of Siren can be found in this folder.
CHANGELOG for Clired/Siren
=============================
v6.0.8
------
* Renamed folders
v6.0.7
------
* Adding a command-line client
* Multiple bug fixes and refactoring
v6.0.5
------
* Fixed bug of logger querying a parameter that no longer exists
v6.0.4
------
* Modified reading of missing values for categorical variables.
* Added warning messages for useless variables.
* Fixes to xprTerms comparison and new columns naming.
v6.0.3
------
* Revisited splittrees/layeredtrees algorithms, added minimum improvement constraint and fixed bugs.
* Fixed a couple of bug in views, e.g. with histograms, maps and projections
v6.0.2
------
* Fixed a couple of bad parameters in layeredtree algorithm
v6.0.1
------
* Added choice of colors for cluster plots and variables in projections
* Few bug fixes in the interface
v6.0.0
------
* Reorganised the structure to clarify the distinction between command-line tool, now named Clired, and ReRemi greedy mining algorithm
* Rearranged parameters for clarity
v5.0.6
------
* Edited code for tree algorithms
* Few bug fixes
v5.0.5
------
* Various bug fixes
v5.0.4
------
* Switch map plotting to Cartopy
* Find file rdefs and vdefs
v5.0.3
------
* Various bug fixes
v5.0.2
------
* Reincorporated data extensions and polygons
* Some bug fixes
v5.0.1
------
* Minor bug fixes
v5.0.0
------
* Migrated to Python3
* Conditional variable and time-series view
* Various bug fixes
v4.3.0
------
* Adding view for list of redescriptions (with clustering by support differences)
* Handling several redescriptions lists to a package
* Some bugs fixes, especially support subsets in tree diagrams, and bug on closing intab fig (Mac)
* Not yet fixed documentation, which is getting very outdated
v4.2.0
------
* Adding reconnection capability to work server
* Better support of data reset/reload
* More flexible printing of reds / reading of data
* Improved reporting of support with missing values
* Fixed various bugs (icons and drag and drop in OSX, bucketing of numerical variable for initial pairs, sparse storing of numerical variables, support sets with missing values in tree diagrams, reordering row indices when parsing list to Boolean variable)
v4.0.1
------
* Various bug fixes
v4.0.0
------
* Support for the selection and manipulation of multiple redescriptions
* Support for multiple lists of results
* Showing the contribution of the literals in parallel coordinates plots
* List views (preliminary version)
* Filtering on support distribution over folds
v3.1.1
------
* Projection of numerical variables with heatmap and histogram
* Various minor fixes
* Adding small features (caching projections, printing out support, drawing E00 on maps, etc.)
* Changed hosting
v3.1.0
------
* Visualization tab and splitted frame
* Learn/Test splits, interface and integration to vizualizations
* Initial target vectors for trees based on categorical and sparse numerical variables. List sorting and cut-off.
* More efficient filtering of results on return of a result, comparing only what as changed.
* Fixed various bugs (naming of tree algorithms, saving data to package)
v3.0.1
------
* Fixed various bugs (server info on failure, DW unchange on saving package)
* Added main entry-point for server
v3.0.0
------
* Integrated more tree-based mining methods
* Visualization for trees
* Distributed computation
* Modified visualization layout
* Fixed the previous tree-based methods
* Fixed a bug in loading data
v2.2.0
------
* Integrated tree-based (CART) mining methods from T.Zinchenko MSc Thesis
v2.1.1
------
* freeze_support for multiprocessing in windows
* Bug fix with log outputs and multiprocessing
* Enable negations by variable types
* Flip negation of Boolean variables in the Parallel Coordinates View
* Updated help files
v2.1.0
------
* Modified input/output
* New parsing for the queries based on GRAKO generated parser
* Removed Custom and XML data formats, everything to CSV
v2.0.3
------
* Bug fix for class variables in threading
v2.0.2
------
* Various bug fixes
v2.0.1
------
* Dialog for setting up (possibly remote) workers
v2.0.0
------
* Added parallel coordinates visualization
* Added various projections visualization (scikit)
* Entity selection by picking dot or drawing polygon
* Disabling entities to recompute support on restricted area
* Side selective automatic expansion
* Automatic expansion with subset of entities emphasized
* Interactive modification of literals'bounds in para.co. view
v1.1.0
------
* Added option to change colours in plots
* Changed the icon for Siren data files (OS X bundle only)
* Updated GEOS to 3.3.6 (OS X bundle only)
* Updated Python to 2.7.3 (OS X bundle only)
* Updated wxPython to 2.9.4.0 (OS X bundle only)
* Updated Basemap to 1.0.5 (OS X bundle only)
* Various bug fixes
v1.0.1
------
* Added support for importing CSV files
* Various bug fixes
v1.0.0
------
* The initial Siren release