
Me presento, hago una presentación del curso,comentando el temario y los principales conocimientos que adquieren los estudiantes cuando lo terminen
Definiciones de ciencia de datos y machine learning
Introducción y ejemplos de aplicación de machine learning
Se comentarán los principales tipos de aprendizaje automático
Se comentarán los problemas que resuelven cada tipo
Se comentará la problemática del sobreentrenamiento en problemas de machine learning y se propondrán algunas soluciones
Se comentarán los principales pasos para construir un modelo de machine learning
Se comentarán los principales librerías,instalación y ejemplos con numpy y pandas
Se comentará la instalación de un entorno de desarrollo para python basado en notebook instalando los paquetes mediante anaconda
Se comentarán los principales comandos para instalar paquetes con anaconda
Se comentará el módulo pydatasets que contiene conjuntos de datos predefinidos que podemos usar para realizar pruebas
Se comentarán las principales funcionalidades de la librería pandas para tratamiento de datos
Se comentarán ejemplos con las librerías de pandas
Se comentarán los principales librerías de visualización de datos en python,
Se comentarán ejemplos para visualización de datos con matplotlib,bokeh, seaborn y folium
Se comentarán librerías relacionadas con machine learning que podemos encontrar en python
Instalación de la librería , uso de los principales módulos y datasets incorporados en scikit-learn
Se comentarán los principales algoritmos que vamos a ver y dar una primera visión de los vamos a ver a nivel del API de sklearn para entrenar nuestros datos
Se introducirá la regresión lineal a nivel teórico y se introducirá cómo podemos aplicarlo de forma gráfica con sklearn y matplotlib
Definir en qué consiste el algoritmo de regresión lineal y ejemplo de problema de regresión lineal con un dataset definido en scikit-learn
Se tratará de resolver el problema de predecir el trafico de una web mediante distintos algoritmos de regresión para determinar cuál es el más óptimo
Ejemplo de regresión logística con un dataset definido en scikit-learn
Se introducirán los principales conceptos a nivel teórico de los árboles de decisión
Ejemplo de árboles de decisión con un dataset definido en scikit-learn
Explicación del algoritmo SVM para resolver problemas de clasificación
Ejemplos de clasificador multiclase y gráfico donde se pueden ver los diferentes modelos de implementación de support vector machine
Ejemplo de implementación en python con scikit-learn con el dataset de digits
Explicación del algoritmo K-NN (K Nearest Neighbor) para resolver problemas basados en el cálculo de los k vecinos más cercanos
Ejemplos de implementación en python con scikit-learn
Comparación entre ambos modelos de aprendizaje en scikit-learn
Explicación del algoritmo de clustering dentro del aprendizaje no supervisado
Describir las principales aplicaciones que se pueden aplicar
Explicación del algoritmo Kmeans para resolver problemas de agrupación de datos
Ejemplo de implementación en python con scikit-learn
Implementación del algoritmo de clustering AffinityPropagation en scikit-learn
Mostrar el dataset del titanic con gráficos circular,histograma y de barras
Mostrar técnicas de tratamiento de datos antes de aplicar machine learning ,técnicas relacionadas con la limpieza de los datos y la selección de atributos,a nivel de aprendizaje se mostrará el algoritmo de árbol de decisión sobre el dataset de titanic.scv
Comentar las principales características de Apache Spark y ventajas respecto a otros sistemas
Comentar los principales módulos de Apache Spark
Comentar los principales ventajas que aporta Spark para científicos de datos
Comentar la instalación de Apache Spark en sistemas unix
Comentar la ejecución de comandos de spark desde la consola interactiva de python
Comentar el principal objeto del que disponemos para trabajar con spark y ejemplos de aplicación mediante scripts de python
Definir los conceptos de dataset y RDD dentro del contexto de spark
Crear colecciones de datos con pyspark
Comentar las principales transformaciones que se pueden aplicar a las colecciones de datos con pyspark.
Funciones lambda,map,filter,reduce en python
Resumen operaciones pyspark
Resumen operaciones map reduce
Comentar la instalación y ejecución de pyspark con docker
Instalar y ejecutar Pyspark con docker
Ejemplo de scripts en python con jupyter notebook
Palabras más frecuentes de un texto con pyspark
Leer fichero csv y cargarlo como un RDD en spark
Resumen operaciones sql dataframes pyspark
Instalar Docker compose y mostrar ejemplo de aplicación con un cluster de docker para ejecutar pyspark
Introducir MLlib como módulo de machine learning comentando los principales algoritmos que podemos utilizar
Sistema de recomendaciones que recomiende películas a los usuarios
Practica en notebook con ejemplo de recomendación basado en filtro colaborativo donde se usa el dataset de movielens que contiene películas y usuarios que votan las mismas.
Práctica filtro colaborativo csv
Recursos y artículos
Este curso pretende ser una introducción a las técnicas más relevantes de Machine Learning y mostrar ejemplos de aplicación de estas técnicas. Que sirva para conocer qué técnicas existen, en qué se fundamentan y sobre qué tipos de problemas pueden aplicarse.
El enfoque será teórico-práctico y se hará uso del lenguaje de programación Python y del toolkit Scikit Learn. Se recomienda a los alumnos instalarse ANACONDA en su plataforma habitual. ANACONDA incluye Python, Scikit-Learn y Matplotlib. La versión de python que utilizaremos será la 3.6.
También veremos pyspark como plataforma de desarrollo de aplicaciones distribuídas
Entre los principales objetivos podemos destacar:
Introducir los conceptos de ciencias de datos y machine learning.
Introducir las principales librerías que podemos encontrar en python para aplicar técnicas de machine learning a los datos.
Introducir las principales librerías que podemos encontrar en python para tratamiento y visualización de datos
Dar a conocer los pasos para construir un modelo de machine learning, desde la adquisición de datos,pasando por la generación de funciones, hasta la selección de modelos.
Dar a conocer los principales algoritmos para resolver problemas de machine learning.
Introducir scikit-learn como herramienta para resolver problemas de machine learning.
Introducir pyspark como herramienta para aplicar técnicas de big data y map-reduce a los datos.
Conocer y aplicar algoritmos de machine learning con pyspark.
Introducir los sistemas de recomendación basados en contenidos