@@ -25,18 +25,18 @@ And the following python modules :
...
@@ -25,18 +25,18 @@ And the following python modules :
*[m2r](https://pypi.org/project/m2r/) - Used to generate documentation from the readme,
*[m2r](https://pypi.org/project/m2r/) - Used to generate documentation from the readme,
*[docutils](https://pypi.org/project/docutils/) - Used to generate documentation,
*[docutils](https://pypi.org/project/docutils/) - Used to generate documentation,
*[pyyaml](https://pypi.org/project/PyYAML/) - Used to read the config files,
*[pyyaml](https://pypi.org/project/PyYAML/) - Used to read the config files,
*[plotly](https://plot.ly/) - Used to generate interactive HTML visuals.
*[plotly](https://plot.ly/) - Used to generate interactive HTML visuals,
*[tabulate](https://pypi.org/project/tabulate/) - Used to generated the confusion matrix.
They are all tested in `multiview-machine-mearning-omis/multiview_platform/MonoMutliViewClassifiers/Versions.py` which is automatically checked each time you run the `execute` script
### Installing
### Installing
Once you cloned the project from this repository, you just have to use :
Once you cloned the project from the [gitlab repository](https://gitlab.lis-lab.fr/baptiste.bauvin/multiview-machine-learning-omis/), you just have to use :
```
```
pip install -e .
pip install -e .
```
```
In the `multiview_machine-learning-omis` directory.
In the `multiview_machine-learning-omis` directory to install SuMMIT and its dependencies.
### Running on simulated data
### Running on simulated data
...
@@ -45,10 +45,10 @@ In order to run it you'll need to try on **simulated** data with the command
...
@@ -45,10 +45,10 @@ In order to run it you'll need to try on **simulated** data with the command
frommultiview_platform.executeimportexecute
frommultiview_platform.executeimportexecute
execute()
execute()
```
```
This will run the first example. For more information about the examples, see the documentation
This will run the first example. For more information about the examples, see the [documentation](http://baptiste.bauvin.pages.lis-lab.fr/multiview-machine-learning-omis/)
Results will be stored in the results directory of the installation path :
Results will be stored in the results directory of the installation path :
For further information about classifier-specific arguments, see the documentation.
For further information about classifier-specific arguments, see the [documentation](http://baptiste.bauvin.pages.lis-lab.fr/multiview-machine-learning-omis/).
### Dataset compatibility
### Dataset compatibility
In order to start a benchmark on your dataset, you need to format it so the script can use it.
In order to start a benchmark on your own dataset, you need to format it so SuMMIT can use it.
You can have either a directory containing `.csv` files or a HDF5 file.
##### If you have multiple `.csv` files, you must organize them as :
[comment]:<>(You can have either a directory containing `.csv` files or a HDF5 file.)
[comment]:<>(#### If you have multiple `.csv` files, you must organize them as :
*`top_directory/database_name-labels.csv`
*`top_directory/database_name-labels.csv`
*`top_directory/database_name-labels-names.csv`
*`top_directory/database_name-labels-names.csv`
*`top_directory/Views/view_name.csv` or `top_directory/Views/view_name-s.csv` if the view is sparse
*`top_directory/Views/view_name.csv` or `top_directory/Views/view_name-s.csv` if the view is sparse)
With `top_directory` being the last directory in the `pathF` argument
[comment]:<>(With `top_directory` being the last directory in the `pathF` argument)
##### If you already have an HDF5 dataset file it must be formatted as :
##### If you already have an HDF5 dataset file it must be formatted as :
One dataset for each view called `ViewX` with `X` being the view index with 2 attribures :
One dataset for each view called `ViewI` with `I` being the view index with 2 attribures :
*`attrs["name"]` a string for the name of the view
*`attrs["name"]` a string for the name of the view
*`attrs["sparse"]` a boolean specifying whether the view is sparse or not
*`attrs["sparse"]` a boolean specifying whether the view is sparse or not
*`attrs["ranges"]` a `np.array` containing the ranges of each attribute in the view (for ex. : for a pixel the range will be 255, for a real attribute in [-1,1], the range will be 2).
*`attrs["ranges"]` a `np.array` containing the ranges of each attribute in the view (for ex. : for a pixel the range will be 255, for a real attribute in [-1,1], the range will be 2).
...
@@ -93,28 +94,20 @@ One group for the additional data called `Metadata` containing at least 3 attrib
...
@@ -93,28 +94,20 @@ One group for the additional data called `Metadata` containing at least 3 attrib
*`attrs["nbClass"]` an int counting the total number of different labels in the dataset
*`attrs["nbClass"]` an int counting the total number of different labels in the dataset
*`attrs["datasetLength"]` an int counting the total number of examples in the dataset
*`attrs["datasetLength"]` an int counting the total number of examples in the dataset
The `format_dataset.py` file is documented and can be used to format a multiview dataset in a SuMMIT-compatible HDF5 file.
### Running on your dataset
### Running on your dataset
In order to run the script on your dataset you need to use :
Once you have formatted your dataset, to run SuMMIT on it you need to modify the config file as
```
```yaml
cd multiview-machine-learning-omis/multiview_platform
This will run a full benchmark on your dataset using all available views and labels.
This will run a full benchmark on your dataset using all available views and labels.
You may configure the `--CL_statsiter`, `--CL_split`, `--CL_nbFolds`, `--CL_GS_iter` arguments to start a meaningful benchmark
It is highly recommended to follow the documentation's [tutorials](http://baptiste.bauvin.pages.lis-lab.fr/multiview-machine-learning-omis/tutorials/index.html) to learn the use of each parameter.
## Running the tests
**/!\ still in development, test sucess is not meaningful ATM /!\\**
In order to run it you'll need to try on simulated data with the command
@@ -3,15 +3,15 @@ sphinx-quickstart on Mon Jan 29 17:13:09 2018.
...
@@ -3,15 +3,15 @@ sphinx-quickstart on Mon Jan 29 17:13:09 2018.
You can adapt this file completely to your liking, but it should at least
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
contain the root `toctree` directive.
Welcome to MultiviewPlatform's documentation!
Welcome to SuMMIT's documentation!
=============================================
=============================================
This package is used as an easy-to-use platform to estimate different mono- and multi-view classifiers' performance on a multiview dataset.
This package ha been designed as an easy-to-use platform to estimate different mono- and multi-view classifiers' performances on a multiview dataset.
The main advantage of the platform is that it allows to add and remove a classifier without modifying its core code (the procedure is described thoroughly in this documentation).
The main advantage of the platform is that it allows to add and remove a classifier without modifying its core code (the procedure is described thoroughly in this documentation).