Inteligencia Artificial

Fórmate online en Inteligencia Artificial, un área muy versátil que ya es parte de nuestro día a día. Python es un lenguaje de programación que facilita la creación de programas. Juntos forman una combinación explosiva que podremos aplicar en varios sectores. Especialízate en Tokio y aprende a integrar nuevos desarrollos de IA en sistemas informáticos existentes y a diseñar, desarrollar e implementar sus técnicas.

  • Introducción a la Inteligencia Artificial
    • Introducción a la Inteligencia Artificial
    • Introducción al Machine Learning
    • Introducción al Deep Learning
  • La IA y la resolución de problemas
    • Resolver problemas
    • Algunos tipos de problemas
  • Búsqueda no informada
    • Búsqueda
      • Representación de estados: árboles y grafos
    • Búsqueda en Amplitud
    • Búsqueda en Profundidad
    • Búsqueda de Coste Uniforme
  • Búsqueda informada
    • Función Heurística
    • Búsqueda con vuelta atrás
    • Algoritmo A*
    • Búsqueda Local
      • Algoritmos constructivos (Dijkstra, Clarke y Wrigt)
  • La IA y los juegos
    • El algoritmo minimax
    • Poda alfa-beta
  • El Razonamiento
    • Sistemas Expertos
    • Sistemas Difusos
  • El Aprendizaje
    • Clasificación probabilística
    • Redes Neuronales artificiales
        • Redes neuronales multicapa
        • Red de Hopfield
  • Introducción a la ciencia de datos
  • El proceso de la ciencia de datos
    • Definición del objetivo del proyecto
    • Obtención de los datos de cualquier fuente posible
    • Limpieza y preparación de los datos para que nuestro software lo entienda
    • Exploración de los datos en busca de patrones utilizando algoritmos matemáticos y estadísticos
    • Definición y construcción de los modelos de predicción
    • Representación de resultados útiles
  • Minería de datos
  • Introducción a las principales librerías
    • Numpy
    • Pandas
    • ScikitLearn
    • Otras
  • ¿Qué es?
  • Algunos de sus poryectos
  • Proyecto 1
    • Definición del objetivo del proyecto
    • Obtención de los datos de cualquier fuente posible
    • Limpieza y preparación de los datos para que nuestro software lo entienda
    • Exploración de los datos en busca de patrones utilizando algoritmos matemáticos y estadísticos
    • Definición y construcción de los modelos de predicción
    • Representación de resultados útiles
  • Proyecto 2
    • Definición del objetivo del proyecto
    • Obtención de los datos de cualquier fuente posible
    • Limpieza y preparación de los datos para que nuestro software lo entienda
    • Exploración de los datos en busca de patrones utilizando algoritmos matemáticos y estadísticos
    • Definición y construcción de los modelos de predicción
    • Representación de resultados útiles

Un cliente, una compañía de suministros informáticos, ha pedido a la empresa para la que trabajamos que desarrolle una aplicación web que le ayude con la gestión de sus productos y proveedores. Por lo tanto, debemos poner en marcha una aplicación que nos sirva de base de datos, pero también de gestión. Una vez realizada, la adaptaremos a ciertos requisitos que se plantearán para incluir la Inteligencia Artificial en el sistema y poder así mejorarlo.

Machine Learning

El Machine Learning nació del reconocimiento de patrones, pero hoy en día nos permite desarrollar aplicaciones que mejoran su rendimiento, “aprendiendo” a partir de datos recopilados en situaciones pasadas. En este campo de especialización de Python podrás aplicar Machine Learning a proyectos reales, incluyendo la preparación y las tareas relacionadas, el despliegue en producción y el ciclo de vida de un modelo.

  • Introducción al Big Data y Machine Learning
    • Método científico
    • Introducción al Big Data
    • Introducción al Machine Learning
    • Breve repaso del álgebra linea
  • Entorno de trabajo: VM
    • Crear una máquina virtual local
  • Jupyter
  • Librerías numéricas de Python
    • Numpy
    • Pandas
    • Matplotlib
  • Introducción a Scikit-learn
  • Regresión lineal
    • Simple
    • Multivariable
  • Optimización por descenso de gradiente
    • Convergencia
    • Ratio de aprendizaje
  • Normalización
    • Problema
    • Normalización
    • Entrenamiento
  • Regularización
    • Desviación y varianza
    • Función de coste regularizada
  • Validación cruzada
    • Métodos de resolución
    • Subdivisión del set de datos
    • K-fold
  • Teorema de Bayes
    • Ejemplo de clasificación
    • Sensibilidad y especificidad
  • Clasificación por árboles de decisión
    • Variables objertivo categóricas y continuas
    • Splitting
    • Limitaciones al tamaño del árbo
    • Pruning
    • Bootstrapping
  • Regresión logística/clasificación
    • Modelado de dato
    • Clasificación binaria y multiclase
    • Función sigmodea
    • Función de coste
  • Clasificación por SVM (Support Vector Machines)
    • Kernels y Landmarks
    • Transformación de la hipótesis
    • Tipos de kernels
    • Parámetro de regularización
  • Introducción a las redes neuronales
    • Neuronas naturales
    • Neuronas artificiales
    • Redes neuronales profundas
  • Optimización por aleatoriedad
    • Entrenamiento múltiple
    • Implementación
  • Agrupación
    • Diferencias entre agrupación y clasificación
    • K-means y otros algoritmos
  • Detección de anomalías
    • Anomalías
    • Representación de modelo
    • Elección de características
    • Distribución normal o gaussiana
  • Sistemas de recomendación
    • Sistemas de recomendación por regresión lineal
    • Función de coste
    • Algoritmos de entrenamiento
    • Realización de predicciones
  • Algoritmos genéricos
    • Evolución natural
    • Evolución del comportamiento
    • Algoritmos aplicados a la optimización
  • Ingeniería de características (“feature engineering”)
    • Creación de características
    • Problemas y soluciones
  • Análisis de Componentes Principales (“PCA”)
    • Representación de variables
    • Modelos de dimensionalidad
    • Reducción de dimensionalidad
  • Ensamblajes
    • Composición de modelos
    • Técnicas de ensamblaje
    • Bagging
  • Planteamiento de sistemas de ML
    • Planteamiento de un sistema de ML
    • Evaluación del modelo
    • Implementación a gran escala
    • Paralelización
  • Evaluación y mejora de modelos
    • Sobreajuste vs. desviación
    • Métricas de evaluación
    • Métricas de clasificación
  • Operaciones en ML
    • MLOps
    • Plataforma Kaggle

Deep Learning

El Deep Learning es una de las áreas más avanzadas del Machine Learning y se aplica en asistentes virtuales, coches autónomos o aplicaciones de reconocimiento de información en imágenes. Es un área que está revolucionando el mundo de la tecnología ayudada por uno de los lenguajes más veloces y versátiles, Python. Al especializarte en Deep Learning aprenderás a trabajar con librerías estándar, externas y frameworks, conocerás los tipos de redes neuronales y adquirirás los conocimientos para su aplicación práctica.

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
  • Herramientas 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

Preparación de datos y herramientas

  • Conjunto de información y operación
  • 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
    • Calculo de gradientes
    • Funciones
    • Operaciones Matriciales

Redes de neuronas profundas

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

Clasificación

  • Conceptos básicos de clasificación 
  • Construyendo sistemas de clasificación
    • Clasificación Binaria
    • Clasificación multi-clase
    • Clasificación multi-etiqueta
  • Optimización de hiper-parámetros
  • Transferencia de aprendizaje (Transfer learning)

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

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

Redes de neuronas residuales (ResNet)

  • Importación de las librerías
  • Definiciones de bloques residuales
  • Transferencia de aprendizaje sobre ResNet

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

Redes generativas antagónicas (GANs)

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

Redes de neuronas basadas en refuerzo

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

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)

Módulo de Metodologías ágiles

Consigue la Certificación de Scrum Master

Al igual que evolucionan la tecnología y los lenguajes de programación, las metodologías de trabajo también cambian con el tiempo. Las organizaciones y empresas buscan constantemente formas de agilizar procesos, reducir costes y acelerar la producción para obtener mayores beneficios y es aquí donde la figura del Scrum Master es clave para gestionar de forma efectiva esos proyectos y alcanzar los resultados esperados. 

Nuestro curso en metodologías ágiles con Certificación Scrum te permitirá dominar esta metodología y convertirte en Scrum Master, una de las titulaciones y profesiones más demandadas actualmente. Además, te permitirá entender y aplicar otras metodologías Agile como Kanban, cada vez más en vigor en un mercado tan dinámico como el actual.

Salidas laborales

Agilidad

  • Gestión predictiva 
  • Gestión ágil
  • Manifiesto ágil: valores y principios
  • Scrum

Desmontando la gestión de proyectos

  • Desarrollo, Trabajo y Conocimiento
  • Ingeniería secuencial, concurrente y agilidad

Diferenciando las prácticas de los principios y valores Scrum

  • Scrum técnico
  • Scrum avanzado

Roles

  • Propietario del producto
  • Equipo
  • Scrum Master

Artefactos

  • Pila del producto
  • Pila del sprint
  • Incremento

Eventos

  • Sprint
  • Reunión de planificación del sprint
  • Scrum diario
  • Revisión del sprint
  • Retrospectiva del sprint

Medición y estimación

Principios y valores

  • Las personas y sus roles
  • Artefactos
  • Eventos

Prácticas para flexibilizar Scrum

  • Gráfico burn down
  • Estimación de póquer
  • Kanban
  • Técnicas a prueba de errores

Certificación vs Acreditación

  • Scrum Manager y Scrum Máster

Puntos de Autoridad. PDAs

  • Actualización de la Certificación

El examen

Certificación

Una vez realices este curso troncal, podrás presentarte al examen oficial de Scrum Manager. Si lo apruebas, recibirás el certificado de Scrum Master: