Práctica 01 - Minería de Datos - Master Big Data
Práctica de minería de datos sobre 3 tipos de algoritmos de predicción, usando aprendizaje de máquinas:
- Machine learning con SVC: en script
predictor-ml.py
- Ensemble con RandomForest: en script
predictor-en.py
- DeepLearning con DNN: en notebooks
predictor-dl.ipynb
y con la última ejecución:predictor-dl-outputs.ipynb
El objetivo de la predicción es evaluar si un canto de ave pertenece a alguna de las especies observadas en el entrenamiento.
Se utilizan los datos de audio y de espectrografía Western Mediterranean Wetlands Bird Dataset, descargable desde: https://zenodo.org/record/7505820#.Y8U4f3bMKUk
- Antes de iniciar, se debe contar con git, y descargar el código del repositorio github.
- Se debe iniciar un ambiente virtual de python para instalar las dependencias.
- Se proporciona un script para descargar el dataset y los archivos de soporte.
- Se debe ejecutar el script adecuado, según se quiera ver la ejecución de cada caso.
Se debe contar con git instalado localmente para descargar el repo:
git clone [email protected]:EdwinFLopez/mbd-datamining-p01.git
En caso de no tener git instalado, se puede descargar un zip de la siguiente url: https://github.com/EdwinFLopez/mbd-datamining-p01/archive/refs/heads/main.zip
Para ejecutar los scripts, se deben proporcionar las dependencias adecuadas. Con este propósito debemos crear un ambiente virtual.
$ conda create -n practica-mdd python=3.12
$ conda activate practica-mdd
Las dependencias quedarán instaladas en el folder ~/.conda/practica-mdd
.
Más información en: https://www.anaconda.com/open-source
Se debe entrar en el folder donde se descargó el repo.
$ cd mbd-datamining-p01
$ python -m venv venv
$ source venv/bin/activate
Una vez creado el ambiente virtual, se deben instalar las dependencias:
$ pip install -r requirements.txt
Una vez activado el ambiente virtual y las dependencias instaladas, procedemos a descargar el dataset. Los archivos zip serán descomprimidos automáticamente por el script.
$ python download-all.py
Los archivos del dataset quedarán ubicados bajo el folder data
.
$ tree data
├── readme.txt
├── metadata.csv
├── audio_files.zip
├── spectrograms.zip
├── audio_files
│ └── ...
└── spectrograms
└── ...
$ python predictor-ml.py
La primera vez que se ejecuta, crea un archivo del modelo ./data/birds_features.csv
.
Este archivo se usa para evitar el reprocesamiento de los audios para extraer los features.
$ python predictor-en.py
La primera vez que se ejecuta, crea un archivo del modelo ./data/birds_data_rf.csv
.
Este archivo se usa para evitar el reprocesamiento de los audios para extraer los features.
En este caso, se utiliza un notebook jupyter. El notebook es predictor-dl.ipynb
. En nuestro caso
utilizamos tanto PyCharm como VSCode para procesarlo y ejecutarlo.
El modelo entrenado se almacena en la ruta: ./data/DL_model_birds.h5
.
Para ver los últimos cálculos generados, se debe cargar el notebook predictor-dl-outputs.ipynb
.