Nuevo - Diplomado en Python y Ciencia de Datos - Online*

Este programa está orientado a entregar las competencias de programación y de manejo de datos necesarias para introducirse en las áreas de la Ciencia de Datos y Machine Learning. Al no requerir conocimientos previos de programación (se entregan en el primer curso), el diplomado está abierto no solo a personas con un background más técnico sino a todo tipo de profesionales. 


Descripción

Python es el equivalente a la navaja suiza de los profesionales que deben trabajar con datos.  La versatilidad del lenguaje Python combinada con la existencia de librerías que permiten interactuar con bases de datos de todo tipo y sacar partido de estos datos para encontrar patrones o predecir lo que sucederá en el futuro, lo han convertido en una herramienta indispensable para los profesionales que deben trabajar con datos.

Este diplomado entrega sólidas competencias en el uso del lenguaje Python, en especial en aplicaciones para extraer y analizar datos. El programa consta de dos cursos orientados a generar competencias de programación en el lenguaje Python, y dos cursos orientados a aprender a utilizar este lenguaje y las librerías asociadas para interactuar con bases de datos para extraer información y luego analizarla usando técnicas y algoritmos de ciencia de datos y Machine Learning.

La metodología de enseñanza y aprendizaje para este diploma online consiste en técnicas metodológicas activas, donde el participante puede interactuar con sus pares y profesor-tutor a través de los recursos tecnológicos que provee la plataforma educativa virtual provista para el diplomado.

Dirigido a
  • Todas las personas que necesiten o estén interesadas en adquirir las habilidades para aplicar técnicas de ciencia de datos a su trabajo.
  • Todas las personas que necesiten o estén interesadas en aprender a programar usando el lenguaje Python y aplicarlo a la extracción y análisis de datos.
Prerrequisitos

No tiene requisitos académicos. Se recomienda dos años de experiencia laboral. 

Objetivo de aprendizaje
  • Escribir programas de mediana complejidad usando el lenguaje Python.
  • Interactuar con un motor de bases datos desde un programa Python.
  • Diseñar y construir soluciones de ciencia de datos y Machine Learning usando las librerías disponibles en Python.
Desglose de cursos

DESGLOSE DE CURSOS
Nombre del curso: Introducción a la programación en Python I: Aprendiendo a programar con Python (MOOC)  
Nombre en inglés: Fundamentals of Programming (Python)
Horas cronológicas: 20 hrs; Créditos: 5
Resultados de Aprendizaje

  • Instalar el entorno de desarrollo PyCharm sobre un sistema operativo.
  • Utilizar el razonamiento algorítmico para generar una solución a un problema.
  • Desarrollar programas en el lenguaje de programación Python que permitan resolver problemas sencillos.
  • Utilizar los elementos de control de flujo y estructuras del lenguaje para ordenar la ejecución de un programa.
  • Desarrollar programas que permitan procesar datos a partir de archivos. 

Contenidos:

  • Introducción: la programación y los sistemas computacionales.
  • Instrucciones básicas del lenguaje Python.
  • Control de flujo.
  • Funciones.
  • Strings y archivos.
  • Listas y diccionarios.

Metodología de enseñanza y aprendizaje:

  • Curso online, MOOC alojado en Coursera. Incluyen clases grabadas en videos, actividades interactivas, lecturas y evaluaciones en Coursera.

Evaluación de los aprendizajes:

  • Evaluaciones Online (6):                                100%

Nombre del curso: Desarrollo de Software con Python
Nombre en inglés: Software Development with Python   
Horas cronológicas: 27 hrs; Créditos: 5
Resultados de Aprendizaje

  • Utilizar estructuras de datos secuenciales como listas, tuplas y colas para almacenar y consultar datos.
  • Utilizar estructuras de datos no secuenciales como diccionarios y conjuntos.
  • Construir un programa utilizando los conceptos de la programación orientada a objetos.
  • Utilizar bibliotecas existentes e integrar sus funcionalidades dentro de un programa propio.

Contenidos:

  • Estructuras de datos secuenciales: listas, tuplas, colas.
  • Estructuras de datos no secuenciales: diccionarios y sets.
  • Clases, objetos, atributos y métodos.
  • Interacción entre objetos.
  • Uso de módulos y bibliotecas existentes

Metodología de enseñanza y aprendizaje:
La metodología se presenta más adelante ya que para todos los cursos es la misma (a excepción del MOOC)

Evaluación de los aprendizajes:

  • Tres pruebas on-line, todas de igual ponderación                                      (40% en total)
  • Tres actividades de aplicación, la tercera con doble ponderación          (60% en total) 

Nombre del curso: Python y Bases de Datos
Nombre en inglés: Python and Databases   
Horas cronológicas: 27 hrs; Créditos: 5

Resultados del Aprendizaje

  • Describir las características de una base de datos relacional y una base de documentos.
  • Interactuar directamente con un motor de bases de datos desde la herramienta de administración.
  • Escribir consultas simples utilizando el lenguaje SQL.
  • Agregar, eliminar información y formular consultas simples de una base de datos relacional mediante el lenguaje standard SQL.
  • Construir programas Python capaces de conectarse a un motor de bases de datos para extraer o registrar información. 

Contenidos:

  • Conceptos fundamentales de bases de datos.
  • El modelo relacional.
  • El lenguaje de consultas estándar SQL.
  • Interacción directa con una base de datos relacional usando SQL.
  • Conectores y librerías Python para trabajo con Bases de Datos relacionales.
  • Extracción directa de información desde un programa Python.
  • La librería Pandas y el concepto de Dataframe.
  • Extracción de información de mediana complejidad desde un programa Python.
  • Modificación y eliminación de información de la base de datos desde Python.
  • El modelo de documentos.
  • El formato JSON.
  • Interacción con una base de datos de documentos desde un programa Python.
  • Interacción con una base de datos de documentos desde un programa Python.

Metodología de enseñanza y aprendizaje:
La metodología se presenta más adelante ya que para todos los cursos es la misma (a excepción del MOOC)

Evaluación de los aprendizajes:

  • Tres pruebas on-line, todas de igual ponderación                                      (40% en total)
  • Tres actividades de aplicación, la tercera con doble ponderación          (60% en total) 

Nombre del curso: Introducción a Minería de Datos y Machine Learning
Nombre en inglés: Introduction to Data Mining and Machine Learning   
Horas cronológicas: 27 hrs; Créditos: 5

Resultados de Aprendizaje

  • Conocer y comprender las principales teorías y prácticas de la emergente área de Minería de Datos.
  • Aplicar reglas de asociación para encontrar relaciones en un set de transacciones.
  • Desarrollar soluciones a problemas reales de Big Data y ciencia de datos que involucren la necesidad de técnicas de Minería de Datos como árboles de decisión y clustering.
  • Implementar soluciones usando herramientas de software de Minería de Datos aplicándolas en datos reales. 

Contenidos:

  • Conceptos fundamentales de Minería de Datos.
  • Preparación de datos y reducción de información.
  • Reglas de Asociación.
  • Algoritmos de Clasificación.
  • Algoritmos de Clustering y medidas de similaridad.
  • Selección de modelos e Introducción a Machine Learning

Metodología de enseñanza y aprendizaje:
La metodología se presenta más adelante ya que para todos los cursos es la misma (a excepción del MOOC)

Evaluación de los aprendizajes:

  • Tres pruebas on-line, todas de igual ponderación                                      (40% en total)
  • Tres actividades de aplicación, la tercera con doble ponderación          (60% en total) 

Metodología de enseñanza y aprendizaje:
La modalidad de capacitación es e-learning asincrónica, por lo que los participantes accederán a una plataforma educativa virtual (LMS). Las actividades se desarrollan en forma remota, lo que permite entregar flexibilidad en los horarios, de manera que cada participante pueda distribuir su tiempo y ser autónomo en su proceso de aprendizaje. No obstante, el proceso de enseñanza-aprendizaje se acompañará con un tutor, quien tendrá un rol de mediador y facilitador, ofreciendo apoyo a los participantes en aspectos técnicos y también administrativos durante la actividad de capacitación.

Respecto a las estrategias de enseñanza - aprendizaje, se utilizarán videoclases, screencast y clases interactivas para la presentación de contenidos y actividades de aplicación que serán desarrolladas a partir de cuestionarios y tareas, dirigidas a que los participantes resuelvan problemas/situaciones aplicando los conocimientos aprendidos y comprobar la comprensión de los contenidos a través de test automáticos.

Los participantes también contarán con foros abiertos de consulta, como apoyo a su proceso de aprendizaje, donde podrán interactuar con sus pares y tutor.
Nota: El orden de los cursos dependerá de la programación que realice la Dirección Académica.

BIBLIOGRAFÍA

  • Tan Pang-Ning, Steinbach, M., Karpatne, A., Kumar, V. Introduction to Data Mining, 2nd Ed, Pearson 2019.
  • Hastie, T., Tibshirani, R., Friedman, J., The Elements of Statistical Learning: Data Mining, Inference, and Prediction (2nd Ed.), Springer, 2009.
  • Learning Python 5th Ed, M. Lutz, O´Reilly 2013.
  • Advanced Computer Programming in Python, K. Pichara, C. Pieringuer, CreateSpace 2017.
  • Learning Python 5th Ed, M. Lutz, O´Reilly 2013.
  • Advanced Computer Programming in Python, K. Pichara, C. Pieringuer, CreateSpace 2017.
  • González, R. (2008). Python para todos. Creative Commons Reconocimiento 2.5 España. Descargable en http://mundogeek.net/tutorial-python/
  • Beaulieu, A. (2009). Aprende SQL, Anaya Multimedia-Anaya Interactiva. 2da Edición en español.
  • González, P. (2014). Fundamentos de Bases de Datos con MySQL (Spanish Edition). Edición eBook Amazon Digital Services.
  • Lukaszewski, A. (2010) MySQL for Python, Packt Publishing.
Equipo Docente

JEFE DE PROGRAMA
Jaime Navón Cohen
Ph.D. Computer Science, University of North Carolina at Chapel Hill. Master of Science, Technion-Israel Institute of Technology. Ingeniero Civil Electricista, Pontificia Universidad Católica de Chile. Profesor Asociado del Departamento de Ciencia de la Computación, Pontificia Universidad Católica de Chile.

EQUIPO DOCENTE
Mauricio Arriagada
Doctor en Ciencias de la Ingeniería, Pontificia Universidad Católica de Chile. Master in Computer Science, University of Northern Iowa (USA). Master en Ingeniería de Software e Ingeniero Civil en Computación e Informática, Universidad de Tarapacá (Chile).

Valeria Herskovic
Ingeniero Civil en Computación, y Doctora en Ciencias, mención Computación, Universidad de Chile. Actualmente se desempeña como profesora asistente del Departamento de Ciencia de la Computación UC, realizando investigación en el área de Sistemas Colaborativos y Computación centrada en las personas. El año 2014 obtuvo el Premio de Excelencia en Docencia de la Escuela de Ingeniería UC, y ha dictado cursos introductorios de programación por más de 10 años.

Jorge Muñoz-Gama
Ingeniero Informático y Master en Computación por la Universitat Politècnica de Catalunya, recibió el grado de Doctor en Computación con distinción Cum Laude y mención internacional en la misma universidad. Nacido en Barcelona, actualmente se desempeña como profesor del Departamento de Ciencia de la Computación UC, realizando docencia e investigación en las áreas de Process Mining y Process Oriented Data Science. Autor del libro "Conformance Checking and Diagnosis in Process Mining", en 2015 recibió el premio IEEE Best Dissertation on Process Mining.

Jaime Navón Cohen
Ph.D. Computer Science, University of North Carolina at Chapel Hill. Master of Science, Technion-Israel Institute of Technology. Ingeniero Civil Electricista, Pontificia Universidad Católica de Chile. Profesor Asociado del Departamento de Ciencia de la Computación, Pontificia Universidad Católica de Chile.

Cristián Ruz
Docteur, Université Nice Sophia Antipolis, Magister en Ciencias de la Ingeniería, Pontificia Universidad Católica de Chile, Ingeniero Civil en Computación, Pontificia Universidad Católica de Chile. Profesor Asistente Adjunto del Departamento de Ciencia de la Computación, Pontificia Universidad Católica de Chile.
* EP (Educación Profesional) de la Escuela de Ingeniería se reserva el derecho de remplazar, en caso de fuerza mayor, a él o los profesores indicados en este programa.

Requisitos de aprobación

La Nota final del diplomado se calculará de acuerdo a la siguiente ponderación de los cursos:
Curso: Python, una herramienta multipropósito para el siglo 21              Aprobación
Curso: Desarrollo de Software con Python                                                   33,33%
Curso: Python y Bases de Datos                                                                      33,33%
Curso: Introducción a Minería de Datos y Machine Learning                    33,33%

Los alumnos deberán ser aprobados de acuerdo a los siguientes criterios:
a)              Calificación mínima de todos los cursos 4,0 en su promedio ponderado y
b)             75% de asistencia o cifra superior a las sesiones presenciales.
En el caso de los programas en modalidad en línea, los estudiantes tendrán que cumplir con la calificación mínima de 4.0 y con los requisitos establecidos para cada programa.
Para aprobar los programas de diplomados se requiere la aprobación de todos los cursos que lo conforman y en el caso que corresponda, de la evaluación final integrativa.
Los alumnos que aprueben las exigencias del programa recibirán un certificado de aprobación digital otorgado por la Pontificia Universidad Católica de Chile.
El alumno que no cumpla con una de estas exigencias reprueba automáticamente sin posibilidad de ningún tipo de certificación.

Proceso de Admisión

Las personas interesadas deberán enviar los documentos que se detallan más abajo al correo programas@ing.puc.cl

  • Fotocopia Carnet de Identidad.
  • Fotocopia simple del Certificado de Título o del Título.
  • Curriculum Vitae actualizado

-                 El postular no asegura el cupo, una vez aceptado en el programa, se debe cancelar o documentar el valor, para estar matriculado.
VACANTES: 50
“No se tramitarán postulaciones incompletas”
El Programa se reserva el derecho de suspender la realización del curso si no cuenta con el mínimo de alumnos requeridos. En tal caso se devuelve a los alumnos matriculados la totalidad del dinero en un plazo aproximado de 10 días hábiles.
A las personas matriculadas que se retiren de la actividad antes de la fecha de inicio, se les devolverá el total pagado menos el 10% del total del arancel.

imagen
SOLICITAR MÁS INFORMACIÓN
POSTULA AQUÍ


Otros programas que pueden ser de su interés

Diplomado en Python Profesional

Desarrollo de Software con Python