0% encontró este documento útil (0 votos)
57 vistas

Programador-Python Compressed

Este documento presenta el plan de estudios de un curso de programación con Python. El curso está dividido en seis módulos que cubren temas como características básicas de Python, programación orientada a objetos, manipulación de datos, machine learning y deep learning. Los módulos incluyen temas específicos como tipos de datos, funciones, clases, herencia, redes neuronales, procesamiento de imágenes y series temporales. El curso también ofrece especializaciones en machine learning y deep learning.

Cargado por

Miguel Macias
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
57 vistas

Programador-Python Compressed

Este documento presenta el plan de estudios de un curso de programación con Python. El curso está dividido en seis módulos que cubren temas como características básicas de Python, programación orientada a objetos, manipulación de datos, machine learning y deep learning. Los módulos incluyen temas específicos como tipos de datos, funciones, clases, herencia, redes neuronales, procesamiento de imágenes y series temporales. El curso también ofrece especializaciones en machine learning y deep learning.

Cargado por

Miguel Macias
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 22

CURSO DE

Programación
con Python

Acreditado por la UCAM*

*Consulta condiciones.
Plan de estudios

Python

Módulo I. Python, el nuevo desconocido

Tema 1: Presentación de Python


● ¿Qué es Python?
● Historia de Python

● Versiones de Python

Tema 2: ¿Por qué escoger Python?


● Evolución y objetivos de Python

Tema 3: Características de Python


● Las 10 características

Tema 4: Entornos de desarrollo con Python


● Intérprete oficial
● Anaconda Jupyter
● PyCharm
● Visual Studio Code

Módulo II. Características básicas del lenguaje

Tema 1: Tipos de datos básicos


● Palabras reservadas
● Comentarios
Plan de estudios

● Tipos de datos básicos de Python


● Variables en Python
● Constantes en Python

Tema 2: Operadores en Python


● Asignación
● Aritméticos

● Lógicos

Tema 3: Tipos de datos avanzados


● Listas de Python
● Tuplas en Python

● Diccionarios en Python

● Sets en Python

Tema 4: Entrada y salida


● Entrada de datos por teclado
● Salida de datos por pantalla

Tema 5: Control de flujo - Estructuras de decisión y estructuras de


repetición
● Condicionale en Python IF - ELSE
● Bucles en Python WHILE / FOR
Plan de estudios

Tema 6: Funciones
● Concepto de las Funciones en Python
● Implementación de las funciones

● Argumentos y parámetros

● Funciones integradas de Python

● Buenas prácticas con las funciones

Módulo III. Programación orientada a objetos (POO)

Tema 1: Metodología basada en objetos


● Programación estructurada VS POO (Programación Orientada a Objetos)
● Los 4 principios de la POO

Tema 2: Clases objetos, atributos y métodos


● Definición de clases, objetos, métodos y atributos

Tema 3: Practicando con clases y objetos


● Definición de constructores

Tema 4: Herencia
● Definición de Herencia
● Usos
● Implementación
Plan de estudios

Módulo IV. POO y métodos aplicados

Tema 1: Otras herramientas de POO


● Herencia múltiple
● Polimorfismo

Tema 2: Métodos aplicados


● Métodos aplicados a los strings
● Métodos aplicados a las listas
● Métodos aplicados a los conjuntos
● Métodos aplicados a los diccionarios

Tema 3: Errores y excepciones


● Errores
● Excepciones

Tema 4: Datos temporales


● Fechas y Horas
● Problemas con las zonas horarias
● Usamos diferentes usos horarios

Módulo V. Manipulación de datos

Tema 1: Archivos
● Manejo de archivos en Python
Plan de estudios

Tema 2: Excel - CSV


● Excel: XLS
● CSV

Tema 3: JSON
● ¿Qué es el JSON?
● JSON vs. XML
● Componentes
● Ejemplo práctico
● JSON Minificado y JSON View
● JSON en Python

Tema 4: Base de datos (BBDD)


● ¿Qué es una base de datos?
● Cómo almacena los datos una base de datos
● Lenguaje SQL
● Ejemplos de bases de datos
● SQLite3

Tema 5: Librerías especializadas en el manejo de datos


● Numpy
● Pandas
● Otras librerías
Plan de estudios

Módulo VI. Practicando se aprende

Tema 1: Práctica 1 - Creación de una app web con Flask y base de datos
SQLite3

Tema 2: Práctica 2 - Creación de una app de escritorio con Tkinter y


base de datos SQLite3

Especialización en Machine Learning (PRPYTHML)

Módulo I. Introducción al Machine Learning

Tema 1: Introducciónj al Big Data y Machine Learning


● Método científico
● Introducción al Big Data

● Introducción al Machine Learning

● Breve repaso del álgebra lineal

Tema 2: Entorno de trabajo: VM


● Crear una máquina virtual local

Tema 3: Jupyter
Plan de estudios

Tema 4: Librerías numéricas de Python


● Numpy
● Pandas
● Matplotlib

Tema 5: Introducción a Scikit-learn

Módulo II. Aprendizaje supervisado

Tema 1: Regresión lineal


● Simple
● Multivariable

Tema 2: Optimización por descenso de gradiente


● Convergencia
● Ratio de aprendizaje

Tema 3: Normalización
● Problema
● Normalización
● Entrenamiento

Tema 4: Regularización
● Desviación y varianza
● Función de coste regularizada
Plan de estudios

Tema 5: Validación cruzada


● Métodos de resolución
● Subdivisión del set de datos
● K-fold

Tema 6: Teorema de Bayes


● Ejemplo de clasificación
● Sensibilidad y especificidad

Tema 7: Clasificación por árboles de decisión


● Variables objertivo categóricas y continuas
● Splitting
● Limitaciones al tamaño del árbol
● Pruning
● Bootstrapping

Tema 8: Regresión logística/clasificación


● Modelado de dato
● Clasificación binaria y multiclase
● Función sigmodea
● Función de coste

Tema 9: Clasificación por SVM (Support Vector Machines)


● Kernels y Landmarks
Plan de estudios

● Transformación de la hipótesis
● Tipos de kernels
● Parámetro de regularización

Tema 10: Introducción a las redes neuronales


● Neuronas naturales
● Neuronas artificiales
● Redes neuronales profundas

Módulo III. Aprendizaje no supervisado

Tema 1: Optimización por aleatoriedad


● Entrenamiento múltiple
● Implementación

Tema 2: Agrupación
● Diferencias entre agrupación y clasificación
● K-means y otros algoritmos

Módulo IV. Aprendizaje reforzado

Tema 1: Detección de anomalías


● Anomalías
● Representación de modelo
Plan de estudios

● Elección de características
● Distribución normal o gaussiana

Tema 2: Sistemas de recomendación


● Sistemas de recomendación por regresión lineal
● Función de coste
● Algoritmos de entrenamiento

● Realización de predicciones

Tema 3: Algoritmos genéricos


● Evolución natural
● Evolución del comportamiento
● Algoritmos aplicados a la optimización

Módulo V. Desarrollo de sistemas de aprendizaje


automático

Tema 1: Ingeniería de características (“feature engineering”)


● Creación de características
● Problemas y soluciones

Tema 2: Análisis de Componentes Principales (“PCA”)


● Representación de variables
● Modelos de dimensionalidad
● Reducción de dimensionalidad
Plan de estudios

Tema 3: Ensamblajes
● Composición de modelos
● Técnicas de ensamblaje
● Bagging

Tema 4: Planteamiento de sistemas de ML


● Planteamiento de un sistema de ML
● Evaluación del modelo
● Implementación a gran escala
● Paralelización

Tema 5: Evaluación y mejora de modelos


● Sobreajuste vs. desviación
● Métricas de evaluación
● Métricas de clasificación

Tema 6: Operaciones en ML
● MLOps
● Plataforma Kaggle
Plan de estudios

Especialización en Deep Learning (PRPYTHDL)

Módulo I. Introducción al Aprendizaje automático

Tema 1: Fundamentos básicos


● Fundamentos básicos de Machine Learning
• Proceso de aprendizaje
• Tipos de modelo
• Tipos de algoritmo
• Tipos de modos de aprendizaje

● Fundamentos básicos de Deep Learning


● Herrameintas básicas para el desarrollo de modelos
• Herramientas de desarrollo
• Herramientas de manipulación
• Herramientas de evaluación
• Herramientas de despliegue y ejecución

● Introducción a Collaborate
• Google Collaboratory
• Creación de un notebook con Colab
• Creación de un fragmento de código
• Modificación del tipo de hardware

● Introducción a Scikit Learn


• Carga de datos
• Creación de un modelo
• Evaluación del modelo
• Visualización del modelo

Tema 2: Preparación de datos y herramientas


● Conjunto de información y operación
Plan de estudios

● Información de entrada
• Conceptos básicos sobre datos
• Preparación de datos

● Información de salida
• Función de pérdida (Loss)
• Ajuste del modelo

● Información de aprendizaje
• Algoritmos de optimización
● TensorFlow
• Instalación
• Utilización de dispositivos
• Operaciones básicas
• Cálculo de gradientes
• Funciones
• Operaciones Matriciales

Módulo II: Introducción al aprendizaje profundo

Tema 1: Redes de neuronas profundas


● Conceptos básicos sobre redes de neuronas
● Estructura de la red y funciones de activación

Tema 2: Clasificación
● Conceptos básicos de clasificación
● Construyendo sistemas de clasificación

• Clasificación Binaria
Plan de estudios

• Clasificación multi-clase
• Clasificación multi-etiqueta

● Optimización de hiper-parámetros

● Transferencia de aprendizaje (Transfer learning)

Tema 3: Regresión
● Conceptos básicos sobre regresión
● Construcción de redes de neuronas (Funciones de activación y Funciones de loss)

● Regresión lineal simple

● Regresión lineal múltiple

Módulo III: Aprendizaje profundo mediante imágenes y


sonidos

Tema 1: Redes de neuronas convolucionales (CNN)


● Conceptos básicos sobre visión artificial (Imágenes, filtros, etc)
● Redes de neuronas convolucionales (CNN)
● Preparación de datos
● Creación y compilación de la red

Tema 2: Redes de neuronas residuales (ResNet)


● Importación de las librerías
● Definiciones de bloques residuales
● Transferencia de aprendizaje sobre ResNet
Plan de estudios

Tema 3: Redes de neuronas recurrentes (RNN)


● Conceptos básicos sobre NLP
● Redes de neuronas recurrentes (RNN)
● Long-Short Term Memory (LSTM)
● Otros tipos de redes de neuronas

Módulo IV: Aplicaciones del aprendizaje profundo

Tema 1: Redes generativas antagónicas (GANs)


● Conceptos básicos sobre Redes generativas antagónicos
● Generador y discriminador
● Funciones de loss en redes GAN
● Redes GAN

Tema 2: Redes de neuronas basadas en refuerzo


● Conceptos básicos sobre Aprendizaje por Refuerzo
● Deep Reinforcement Learning
● Redes de refuerzo profundo

Tema 3: Otras aplicaciones


● Despliegue de modelos
● Despliegue de modelos en dispositivos (TFLite and TensorFlow.js)
● TensorFlow Extended
● Aplicaciones de Deep Learning

● Deep Learning en videojuegos (AlphaGo y AlphaStar)


Plan de estudios

Especialización en Inteligencia Artificial (PRPYTH)

Módulo I. Adentrándose en la IA

Tema 1: Introducción a la Inteligencia Artificial


● ¿Qué es la IA?
● ¿Cómo sabemos que una máquina es inteligente?
● Historia de la IA
● Sectores de la IA
● Tecnologías de la IA
● IA vs ML vs DL
● Ejemplos de la IA que usamos a diario
● ¿Alguien ha probado el Test de Turing?
● Revoluciones
● Categorías de la IA

Tema 2: La IA, las búsquedas y los juegos


● Búsqueda no informada e informada
● La IA y los juegos

Tema 3: Ciencia y minería de datos


● Ciencia de datos
● El proceso de la Ciencia de Dat
● Minería de Datos (Data Mining)
Plan de estudios

Módulo II. El aprendizaje y sus librerías

Tema 1: El proceso de la ciencia de datos


● El razonamiento
● El aprendizaje
• El aprendizaje automático (Machine Learning)
• Paradigmas de aprendizaje
• El aprendizaje y la clasificación
• Algoritmos de clasificación
• Redes neuronales y Deep Learning

Tema 2: Librerías de análisis de datos y Machine Learning


● Librerías de análisis de datos: Pandas
● Librerías de aprendizaje automático: Scikit-learn
• Conjuntos de entrenamiento, test y validación
• Overfitting (sobreajuste) y underfitting (subajuste)
• Evaluar el rendimiento. Matriz de confusión
• Pongamos en práctica todo lo anterior

Tema 3: Librerías avanzadas de Inteligencia Artificial


● TensorFlow y Keras. Ejemplo con CIFAR-10 (clasificación de imágenes)
● SHAP
● spaCy: Procesamiento de lenguaje natural (NLP)
Plan de estudios

Módulo III. La plataforma Kaggle

Tema 1: Qué es Kaggle y algunos de sus proyectos


● ¿Qué es Kaggle?
● Estructura de Kaggle
● Kaggle. Algunos de sus proyectos

Tema 2: Proyecto

Especialización en Internet de las Cosas (IoT): Gestión de


Dispositivos

Módulo I. Introducción a IoT

Tema 1: Conceptos generales de IoT

Tema 2: Arquitectura típica de una solución IoT

Tema 3: Conceptos básicos de redes de sensores y actuadores

Tema 4: Sensores y actuadores comunes

Tema 5: Ejemplos de aplicaciones


Plan de estudios

Módulo II. Redes de Comunicaciones para IoT

Tema 1: Comunicación alámbrica e inalámbrica

Tema 2: Redes inalámbricas de bajo consumo

Tema 3: Criterios de selección de tecnologías de comunicación

Tema 4: Protocolos de comunicaciones IoT:


● Comunicación Machine2Machine (M2M)
● Tipos de protocolos
● MQTT

Módulo III. Conceptos Generales de Computación en la


Nube

Tema 1: Servicios principales disponibles en una plataforma cloud

Tema 2: Relación entre servicios

Tema 3: Pricing y modelos de soporte

Tema 4: Almacenamiento de datos en la nube: tipos de bases de datos

Tema 5: Integración HUB IoT y BD Cloud


Plan de estudios

Módulo IV. Seguridad y Privacidad en IoT

Tema 1: Conceptos generales

Tema 2: Modelos de seguridad

Tema 3: Privacidad en sistemas distribuidos

Tema 4: Aplicación práctica de técnicas de cifrado simétrico y


asimétrico

Casos de Uso

Caso práctico 1: Introducción al uso del ESP8266

Caso práctico 2: Uso de sensores y actuadores con el ESP8266

Caso práctico 3: Uso de la conexión WiFi del ESP8266

Caso práctico 4: Uso de MQTT con el ESP8266

Caso práctico 5: Securización de MQTT

También podría gustarte