Improved README

This commit is contained in:
Arnaud Vergnet 2022-01-08 17:07:07 +01:00
parent 9bf6c5e65f
commit 2fa6908d64

View file

@ -1,10 +1,10 @@
# 5ISS- Analyse et Traitement de Données
# 5ISS - Analyse et Traitement de Données
Paul Faure - Arnaud Vergnet
Ce dépôt contient les sources utilisées pour le TP de 5ISS en Analyse et Traitement de Données.
Il comprend un fichier par partie de TP (`tp1-kmeans.py.py`, `tp2-agglo.py.py` et `tp3-dbscan.py`) et deux fichiers servant de librairie commune (`mydatalib.py` pour le traitement de données, `myplotlib.py` pour l'affichage de graphes).
Il comprend un fichier par partie de TP (démarrant par `tpX` avec X la partie du tp) et deux fichiers servant de librairie commune (`mydatalib.py` pour le traitement de données, `myplotlib.py` pour l'affichage de graphes).
## Installation
@ -21,33 +21,50 @@ python3 -m venv ./venv
pip install -r ./requirements.txt
```
Chaque scripte suppose que des jeux de données venant du [benchmark de deric](https://github.com/deric/clustering-benchmark) sont disponibles dans le dossier `artificial`.
L'environnement est maintenant prêt.
## TP1
## Fonctionnement général
Ce tp se lance à l'aide de la commande suivante :
Chaque script va générer les graphes de résultat dans le dossier `./IMG`. Le dossier `./IMG/DATA_VISUALISATION` contient les graphes des jeux de données brutes et mises à l'échelle, sans clustering.
Ensuite, nous avons un dossier par algorithme. Chacun contient ensuite un dossier par jeu de donnée. Enfin, ces jeux de données possèdent un dossier `CLUSTERS` contenant les graphes de clusters et un dossier `EVALUATIONS` contenant les métriques d'évaluation.
Chaque script peut être configuré à l'aide de plusieurs variables :
- `dataset_name`: le nom du dataset à utiliser
- `path`: le chemin vers le dossier contenant les dataset
Certains scripts possèdent d'autres variables de configurations expliquées dans la suite.
## Parties du TP
### K-Means
Cette partie se lance à l'aide de la commande suivante :
```shell
python3 tp1-kmeans.py
```
Il suppose que des jeux de données sont disponibles dans le dossier `artificial`. Il va tout d'abord créer dans le dossier `./IMG/DATA_VISUALISATION` les images associées aux graphes des jeux de données golfball, xclara, et xclara après une mise à l'échelle.
Ce script va appliquer l'algorithme K-Means sur le dataset donné pour k variant de 2 à 49.
Ensuite, il va appliquer l'algorithme K-Means sur le dataset xclara pour k variant de 2 à 49. Les graphes résultants sont sauvegardés dans `./IMG/k-means/xclara/CLUSTERS`. Ce script génère aussi des graphiques sur différentes métriques comme le temps de calcul ou le coefficient de silhouette pour analyser les performances de K-Means. Ces graphiques sont sauvegardés dans `./IMG/k-means/xclara/EVALUATION`.
### Agglomerative
## TP2
Ce tp se lance à l'aide de la commande suivante :
Cette partie se lance à l'aide de la commande suivante :
```shell
python3 tp2-agglo.py
```
Ce script possède un fonctionnement analogue au précédent, mais utilisant un algorithme agglomerative. Les graphes résultants sont donc sauvegardés dans `./IMG/agglomerative_complete`.
Ce script possède un fonctionnement analogue au précédent, mais utilisant un algorithme agglomerative.
## TP3
Une variable de configuration supplémentaire est disponible :
- `linkage`: le type de linkage à utiliser
Ce tp se lance à l'aide de la commande suivante :
### DBSCAN
Cette partie se lance à l'aide de la commande suivante :
```shell
python3 tp2-dbscan.py
```
Ce script possède un fonctionnement analogue aux précédents, mais utilisant un algorithme DBSCAN. Les graphes résultants sont donc sauvegardés dans `./IMG/dbscan`.
Ce script possède un fonctionnement analogue aux précédents, mais utilisant un algorithme DBSCAN.