Conmo is a framework developed in Python whose main objective is to facilitate the execution and comparison of different anomaly detection and experiments.
Project description
Conmo
Conmo is a framework developed in Python whose main objective is to facilitate the execution and comparison of different experiments mainly related to Anomaly Detection and Condition Monitoring problems. These experiments consist of a series of concatenated stages forming a pipeline architecture, i.e. the output of one stage is the input of the next one. This framework aims to provide a way to standarize machine learning experiments, thus being able to reconstruct result tables of scientific papers.
Requirements
Conmo works properly in Python versions 3.7 and 3.8. It has not yet been tested for operation with newer or deprecated versions. To be able to start working with Conmo you need to have installed this list of libraries:
- Numpy
- Pandas
- Tensorflow
- Scikit-Learn
- Scipy
- Requests
- Pyarrow
If you want to make a contribution by modifying code and documentation you need to include these libraries as well:
- Sphinx
- Sphinx-rtd-theme
- Isort
- Autopep8
Installation
There are currently two ways to install Conmo:
Package manager Pip
The easiest way is to use the pip command so that it's installed together with all its dependencies.
pip install conmo
From source code
You can also download this repository and then create a virtual environment to install the dependencies in. We recommend this option if you plan to contribute to Conmo.
git clone https://github.com/MyM-Uniovi/conmo.git
cd conmo
In /scripts folder we provide a bash script to prepare a Conda environment ready for running Conmo:
cd scripts
./install_conmo_conda.sh
In case you are not using a Linux distribution and your OS is Windows 10/11 you can use Windows Subsytem for Linux (WSL) tool or create the virtual environment manually. To check if the Conda enviroment is activated you should see a (conda_env_name) in your command line. If it is not activated, then you can activated it using:
conda activate conda_env_name
Overview
The experiments in Conmo have a pipeline-based architecture. A pipeline consists of a chain of processes connected in such a way that the output of each element of the chain is the input of the next, thus creating a data flow. Each of these processes represents one of the typical generic steps in Machine Learning experiments. These steps are:
- Datasets
- Splitters
- Preprocesses
- Algorithms
- Metrics
In "/examples" folder there are a small set of Conmo experiments with source code explained to try to help you understand how this framework works.
Authors
Conmo has been developed by Metrology and Models Group in University of Oviedo (Principality of Asturias, Spain). However, as this is a collaborative project it is intended that anyone can include their own experiments, so please feel free to collaborate with us!
Issues & Bugs
As the project is currently in an early stage of development, it is easy for different bugs and issues to appear, so please, if you detect one post a ticket in the issues tab or contact the developers directly via email: mym.inv.uniovi@gmail.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file conmo-1.0.1.tar.gz
.
File metadata
- Download URL: conmo-1.0.1.tar.gz
- Upload date:
- Size: 30.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 576c34ba92f5a8857deddcbcc6562e7e086ff4baba92aeaf909e49c72af9371d |
|
MD5 | a30ce0632131f47c7af0c15cfee7695a |
|
BLAKE2b-256 | 65a5609f8f0cf02d27d9e1b8c072868638575496b1dd1da6395c0ab3946d200e |
File details
Details for the file conmo-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: conmo-1.0.1-py3-none-any.whl
- Upload date:
- Size: 50.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e30b003c2edde7316b8d3e515e981f4bbcac84be6a5fc2dcb375497c51310870 |
|
MD5 | 1d78d5e2c694e5ee3804a5a110228343 |
|
BLAKE2b-256 | 878f401cc32a0d995a7a26abd51722924b7e39968a9ce21ce69dc3163847f66b |