Este github contiene el código del libro Minería de datos: algoritmos y modelos, publicado por Editorial UOC
En esta página encontraréis ejercicios prácticos en Jupyter que os permitirán trabajar más a fondo los contenidos aprendidos en el libro Minería de datos: modelos y algoritmos.
La mejor forma de trabajar estos ejercicios es seguir los capítulos del libro, descargarse los archivos de esta página y abrirlos desde un navegador web accediendo a tu instalación Jupyter.
Este libro es el resultado de 10 años de docencia en minería de datos dentro del Máster Universitario en Ciencia de datos (Data Science) y del Máster de Inteligencia de Negocio de la UOC, a través de los cuales hemos reflexionado junto con nuestros alumnos, la mejor manera de aproximarse al mundo de los algoritmos más habituales en este campo de conocimiento.
Jupyter como herramienta de programación R, Python y Julia. Especializada en minería de datos, nos ha parecido una plataforma excelente para proponer prácticas en las que el estudiante pueda acompañar la comprensión del contenido del libro.
Recomendamos los siguientes enlaces para poder instalar los componentes de software necesarios para seguir los ejercicios propuestos:
Conjuntos de datos propios empleados en los ejemplos:
En este ejemplo se trabajan funciones de R para explorar visualmente y mediante descriptores estadísticos el juego de datos.
Ejemplos en R:
Este ejemplo muestra como extraer los valores singulares en un conjunto de datos y valorar su representatividad.
Ejemplos en R:
- Extracción de características: En este ejemplo se buscan correlaciones entre las variables y se descubren variables con un mayor peso predictivo.
- Análisis de componentes principales: Este ejemplo muestra como extraer los componentes principales en un conjunto de datos y valorar su representatividad.
- Descomposición en valores singulares: Este ejemplo muestra realizar una descomposición en valores singulares.
Este ejemplo muestra del agrupamiento jerárquico y los dendogramas.
Ejemplos en Python:
- Agrupamiento jerárquico y dendogramas: En este ejemplo se muestra la base del agrupamiento jerárquico y los dendogramas.
En estos ejemplos se muestra cómo utilizar las máquinas de soporte vectorial (SVM) a partir ejemplos en Python y R (paquete de R 'e1071'). Se trabajan los distintos modelos de kernel: lineal, radial, polinomial y sigmoidal. También se comparan los resultados de trabajar con dos dimensiones o con todas.
Ejemplos en R:
Ejemplos en Python:
En estos ejemplos se muestra cómo utilizar las redes neuronales artificiales (NN) a partir ejemplos en Python y R (paquete de R 'neuralnet'). Se ven las distintas posibilidades de una red neuronal: capas, neuronas y criterio de parada.
Ejemplos en R:
Ejemplos en Python:
- Redes neuronales con sklearn e IRIS: Ejemplo de clasificación mediante redes neuronales empleando sklearn y el conjunto de datos IRIS.
- Redes neuronales con keras y Fashion-MNIST: Creación de una red neuronal para clasificación del conjunto de datos FASHION-MNIST.
- Ejemplo de transferencia de estilo (NST): Desarrollo de un modelo de transferencia de estilo (Network style transfer, NST) con Keras basado en una red VGG19 preentrenada.
Los siguientes ejemplos crean un árbol de decisión con el algoritmo C5.0. Posteriormente se intenta mejorar la calidad con técnicas de boosting, VSD y PCA. También se muestra como evaluar la capacidad predictiva del modelo generado y ejemplos de árboles generados con poda o sin poda.
Ejemplos en R:
- Creación de un árbol de decisión con el algoritmo C5.0 (R)
- Mejora del árbol con técnicas de boosting (R)
- Capacidad predictiva del modelo generado (R)
- Podado del árbol (R)
- Creación de arbol de decisión y mejora con SVD (R)
- Creación de arbol de decisión y mejora con PCA (R)
Ejemplos en Python:
En los siguientes ejemplos se mejora el resultado de un clasificador mediante las técnicas de Bagging, Boosting, Random Forest y Stacked.
Ejemplos en R: