Última actualización: 16/05/2022


Curso Académico: 2022/2023

Computación de Altas Prestaciones para la Ciencia de Datos
(19377)
Titulación: Máster Universitario en Estadística para la Ciencia de Datos (345)
Escuela de Ingeniería y Ciencias Básicas


Coordinador/a: GARCIA PORTUGUES, EDUARDO

Departamento asignado a la asignatura: Departamento de Estadística

Tipo: Optativa
Créditos: 3.0 ECTS

Curso:
Cuatrimestre:




Requisitos (Asignaturas o materias cuyo conocimiento se presupone)
Programación en R Programación Avanzada
Objetivos
* Competencias básicas   - CB6: Poseer y comprender los conocimientos que proporcionan una base u oportunidad para ser original en el desarrollo y/o aplicación de ideas, a menudo en un contexto de investigación.   - CB7: Saber aplicar los conocimientos adquiridos y su capacidad de resolución de problemas en entornos nuevos o poco conocidos dentro de contextos más amplios (o multidisciplinares) relacionados con su área de estudio.   - CB8: Integrar conocimientos y enfrentarse a la complejidad de formular juicios a partir de una información que, siendo incompleta o limitada, incluya reflexiones sobre las responsabilidades sociales y éticas vinculadas a la aplicación de sus conocimientos y juicios.   - CB9: Comunicar conclusiones, así como el conocimiento y las razones últimas que las sustentan, a audiencias especializadas y no especializadas de una manera clara e inequívoca.   - CB10: Desarrollar las habilidades de aprendizaje que permitan continuar estudiando de manera que se sea en gran medida autodirigido o autónomo. * Competencias generales   - CG1: Aplicar las técnicas de análisis y representación de la información, para adaptarla a problemas reales.   - CG2: Identificar el modelo estadístico más adecuado para cada problema real y saberlo aplicar para su análisis, diseño y solución.   - CG3: Obtener soluciones científicamente viables para problemas estadísticos reales complejos, tanto de manera individual como en equipo.   - CG4: Sintetizar las conclusiones obtenidas del análisis de datos y presentarlas de forma clara y convincente en un entorno bilingüe (español e inglés), tanto escrito como oral.   - CG5: Generar nuevas ideas (creatividad) y anticiparse a nuevas situaciones, en los contextos de análisis de datos y de toma de decisiones.   - CG6: Aplicar habilidades sociales para el trabajo en equipo y para relacionarse con los demás de forma autónoma. * Competencias específicas   - CE2: Usar software libre como R y Python para la implementación de análisis estadísticos.   - CE7: Aplicar técnicas de optimización en la estimación de los parámetros en modelos muestrales complejos.   - CE8: Aplicar y desarrollar técnicas de visualización de muestras recogidas con software de libre distribución como R y Python.   - CE10: Aplicar la modelización estadística en el tratamiento de problemas relevantes en el campo científico. * Resultados del aprendizaje Adquisición de conocimientos sobre: 1) lenguaje C++ y su uso conjunto con R; 2) computación en paralelo; 3) plataforma de computación en la nube Google Cloud.
Competencias y resultados del aprendizaje
Descripción de contenidos: Programa
1. El camino hacia la computación de altas prestaciones   1.1. Visión general de la HPC   1.2. Herramientas de automatización y scripting   1.3. Herramientas para la medición y profiling 2. Cómo hacer que tu código se ejecute más rápido: a hombros de gigantes   2.1. Motivación y conceptos principales   2.2. Conectando bibliotecas externas de C/C++ a través de Rcpp   2.3. Uso eficiente de motores de álgebra lineal   2.4. Conectando con otros lenguajes y bibliotecas   2.5. Casos de uso en estadística 3. Ejecutar varias cosas a la vez: programación paralela   3.1. Motivación y conceptos principales   3.2. Paralelismo de bajo nivel: OpenMP, RcppParallel   3.3. Paralelismo de alto nivel: el paquete future   3.4. Casos de uso en estadística 4. Utilización de más recursos: trabajar en la nube y más allá   4.1. Motivación y conceptos principales   4.2. Containerización: entornos de ejecución reproducibles   4.3. Escalando R en la nube con googleComputeEngineR   4.4. Casos de uso en estadística El programa está sujeto a modificaciones menores debido al desarrollo del curso y/o al calendario académico.
Actividades formativas, metodología a utilizar y régimen de tutorías
* Actividades formativas   - AF1: Clase teórica.   - AF2: Clase práctica.   - AF5: Tutorías.   - AF6: Trabajo en grupo.   - AF7: Trabajo individual.   - AF8: Pruebas de evaluación presenciales. * Metodologías docentes   - MD1: Exposiciones en clase del profesor con soporte de medios informáticos y audiovisuales, en las que se desarrollan los conceptos principales de la materia y se proporciona la bibliografía para complementar el aprendizaje de los alumnos.   - MD3: Resolución de casos prácticos, problemas, etc. planteados por el profesor de manera individual o en grupo.   - MD5: Elaboración de trabajos e informes de manera individual o en grupo.
Sistema de evaluación
  • Peso porcentual del Examen Final 0
  • Peso porcentual del resto de la evaluación 100
Calendario de Evaluación Continua
Bibliografía básica
  • Chambers, J. M.. Software for Data Analysis Programming with R. Springer. 2009
  • Chambers, J. M.. Extending R. Chapman and Hall/CRC. 2017
Bibliografía complementaria
  • Chapple, S., Troup, E., Forster, T. y Sloan, T.. Mastering Parallel Programming with R. Packt Publishing. 2016
  • Eddelbuettel, D.. Seamless R and C++ integration with Rcpp. Springer. 2013
  • McCallum, Q. E. y Weston, S.. Parallel R. O'Reilly Media. 2012

El programa de la asignatura podría sufrir alguna variación por causa de fuerza mayor debidamente justificada o por eventos académicos comunicados con antelación.