Modulo_1. Introducción a la Inteligencia Artificial.
o Objetivos.
o Introducción a la Inteligencia Artificial (IA).
o Áreas de aplicación de la IA.
o Ramas de la IA.
o Sistemas inteligentes en los Sistemas Electrónicos.
o Tipos de Técnicas de la IA:
o Redes Neuronales.
o Fuzzy control (Lógica Borrosa)
o Sistemas Expertos.
o Algoritmos Genéticos.
o Preguntas que hacerse de la IA.
Modulo_2. Introducción al Machine Learning (ML).
o Introducción a Machine Learningne/Deep Learning.
o Programación tradicional vs Machine Learning.
o Tipos de Aprendizaje:
- Supervisado
- No Supervisado
- Automático inductivo
o Técnicas Machine Learning: Clasificación, Regresión, Agrupamiento, Reducción de Dimensionalidad, Sistemas de Recomendación y Ejemplos.
o Aplicaciones del Machine Learning (ML).
o Metodología del Machine Learning (ML). Patrones. Ejemplos.
o Herramientas del Machine Learning (ML).
o Aprendizaje automático con Node/JavaScript.
o Aprendizaje Automático y tipos.
o ¿Cómo funciona el aprendizaje profundo por refuerzo?.
o Aprendizaje por refuerzo. Terminología.
o Implementación del Aprendizaje por Refuerzo.
o Elementos del Aprendizaje por Refuerzo.
o Aprendizaje por Refuerzo: Ecuación de Bellman.
o Proceso de decisión de Markov.
o Algoritmos de Aprendizaje por Refuerzo: Q-learning, SARSA y DQN.
Modulo_3. Lenguaje de programación "Node.js".
o Editores de código. Visual Studio Code.
o Introducción al Node.js
o ¿Qué es Node.js?.
o Definición del lenguaje Node.js.
o Instalar Node.js.
o Testear Node.js. npm y nvm.
o ¿Qué es un sistema basado en eventos?.
o ¿Qué podemos hacer con Node.js?.
o Comenzar con Node.js. Ejemplos.
o Como tratar eventos con Node.js.
o Ejemplo sencillo con Node.js.
o Buffer en el lenguaje Node.js.
o Streams (ficheros) en el lenguaje Node.js.
o Sistema de archivos Node.js. Ejemplos.
o Callbacks en el lenguaje Node.js. Ejemplos.
o Promesas en el lenguaje Node.js. Ejemplos.
o Sistema de archivos JavaScript.
Abrir un fichero.
Leer/escribir en un Fichero
Cerrar un fichero
o Ejemplo: abrir y leer un fichero Node/JavaScript.
o Ejemplo con archivos de texto en Node.js.
o Implementar la lectura temperatura de la RPI en Node.js.
o Acceso de lectura a archivos *.csv en Node.js.
o ¿Qué es el formato JSON?
o Porque utilizar JSON.
o Sintaxis de JSON.
o Manejo de archivos JSON en Node.js. Ejemplos.
o DataLogger. Introducción.
o Herramientas aplicadas al entrono del Lenguaje Node.js
Modulo_4. Regresión: Lineal y Logística aplicada con Node.js.
o Introducción. Regresión Lineal.
o El modelo de regresión lineal simple (RLS).
o El modelo de RLS. Estimadores de mínimos cuadrados.
o Medidas de dependencia lineal. La covarianza.
o El modelo de RLS. Ejemplo.
o Ejemplo de Regresión Lineal en “Node.js”.
o Ejemplo de Predicción-Fit con Regresión Lineal.
o Regresión Lineal Múltiple (RLM). Ejemplo.
o Ejemplo de Regresión Lineal Múltiple en "Node.js".
o Clasificación con Regresión Lineal (RL).
Modulo_5. Clasificación mediante el Aprendizaje Automático (ML).
o ¿Introducción. ¿Qué es la Clasificación en el ML?
o Clasificación. Esquema, Componentes y Conceptos.
o Modelo y matriz de confusión.
o Testeo del modelo. Métricas de Desempeño.
o Algoritmos de clasificación / regresión.
o Ejemplo ML de Clasificación de Flores Iris.
o Algoritmo K vecinos mas cercanos (KNN).
o Ejemplo KNN. Clasificación de Iris-Flores
o Algoritmo Naive-Bayes. Introducción.
o Árboles de Decisión. Algoritmo ID3 y C4.5
o Ejemplo Golf de implementación del Algoritmo ID3.
o SVM. ¿Qué son Maquinas de soporte Vectorial (SVM)?
o Conceptos de Maquinas de soporte Vectorial (SVM)
o Clasificador SVM (Support Vector Machines).
o Ejemplo SVM. Clasificación de Iris-Flores.
Modulo_6. Clustering/Agrupación mediante el Aprendizaje Automático (ML).
o ¿Qué es Clustering en el Machine Learning(ML)?
o Aplicaciones del Clustering-Agrupación.Tipos.
o Clustering (Agrupación). K-means.
o Flujograma del Algoritmo K-means.
o Ejemplo de Algoritmos de Clustering (Agrupación). K-means.
o Clustering (Agrupación). Sum of Squared Error (SSE).
o Ejemplo-01 Clustering en Javascript/Node.js (K-means).
o Clustering Jerárquico Aglomerativo.
o Clustering. DBSCAN.
o Ejemplo-02 Cluster DBSCAN en Node.js.
o Clustering. Evaluar los Clusters.
o Ejemplo-03 Clustering en JavaScript/Node.js (K-means).
o Ejemplo-04 de Clustering de Flores Iris con Node.js.
Modulo_7. Redes Neuronales aplicadas con Node.js.
o Redes Neuronales. Introducción.
o Células de McCulloch-Pitts (1943). Red monocapa.
o Renacimiento de las redes neuronales artificiales.
o Implementación de un Perceptrón.
o Medición del entrenamiento del Perceptrón.
o Épocas y Bias.
o Implementación de un Perceptrón.
o Implementación básica de un Perceptrón en Node.js.
o Ejemplo Prediccion Lluvia (Perceptron) con Node.js.
o El Perceptrón Multicapa. Introducción.
o El Perceptrón Multicapa. Arquitectura.
o Algoritmo BACKPROPAGATION. Descripción.
o Implementación de la función XOR mediante una red multicapa.
o Ejemplo de Par/Impar/Primo con Node.js y RNA.
o Ejemplo Predicción de Jugar mediante Node.js.
o Ejemplo de Clasificación Vino con RNA y Node.js.
o Ejemplo Predicción de RGB mediante Node.js.
o Introducción a Series Temporales.
o Componentes y Clasificación de una serie de tiempo.
o Objetivos del análisis de series temporales.
o Introducción a las RNA.
o Topología en la Red Neuronal tipo Feedforward.
o ¿Redes Neuronales Estáticas o dinámicas?
o Introducción a las RNA recurrentes (RNN). Red de Hopfield.
o Características de una RNA de Hopfield.
o Ejemplo de una RNA de Hopfield.
o RED ELMAN. Introducción y Esquema.
o Introducción a las RNA recurrentes.
o Características principales de las RNA recurrentes.
o Redes totalmente recurrentes. Aplicaciones.
Modulo_8. TensorFlow.js.
o ¿Qué es TensorFlow?
o Características de TensorFlow.
o Fundamentos de TensorFlow.
o TensorFlow.js. Introducción.
o ¿Qué es un Tensor?.
o Como Implementar TensorFlow.js en el proyecto de NodeJS.
o TensorFlow.js. Operaciones y Ejemplos.
o Laboratorio: TensorFlow.js. Manejo de la Memoria RAM.
o TensorFlow.js. Modelos y Capas. Ejemplos.
o TensorFlow.js. Ejemplo Predicción Tiempo de carga.
o Casos de uso de TensorFlow.js.
o Ejemplo de TensorFlow.js. Reconocimiento de imágenes.
o Guardar y cargar modelos en TensorFlow.js.
o Ejemplo reconocimiento de digito en TensorFlow.js.
o Keras. Introducción.
o Ejemplo de Clasificación de Flores Iris con TensorFlow.js
o Manipulación de datos. Danfo.js y TensorFlow.js
Laboratorios prácticos en Machine Learning (ML):
Mas de 35 laboratorios !!! completos con su código Fuente en “Node.js”.
Laboratorios- Lenguaje "Node.js". Introducción:
• Lenguaje_Node.js. Eventos.
• Lenguaje_Node.js. Promesas (“async” y “await”).
• Lenguaje_Node.js. Ficheros (*.csv).
• Lenguaje_Node.js. Ficheros JSON.
Laboratorios-Regresión Lineal y Logística con Node.js:
• Implementación de una Regresión Lineal de una forma simple.
• Implementación de una Regresión Lineal aplicada a la estimación del coste de un vehiculo en función de los km recorridos.
• Implementación Regresión Múltiple para ello se parte de unos datos adquiridos y almacenados en un fichero cuyo objetivo es obtener el precio de una vivienda.
• Regresión Lineal aplicada a la Clasificación de una serie de datos, en este caso las Flores Iris.
Laboratorios-Clasificación aplicada con Aprendizaje Automático con Node.js:
• Clasificar un grupo de flores del tipo IRIS con el algoritmo KNN.
• Aplicar probabilidades de una moneda con Node.js.
• Predicción de Jugar al Golf, utilizando el algoritmo de Bayes con Node.js.
• Clasificación de un texto determinado, utilizando el algoritmo de Bayes con Node.js.
• Predicción de Jugar al Golf utilizando Árboles de Decisión con Node.js.
• Clasificación de unos datos en un fichero *.csv, utilizando el algoritmo de C4.5 con Node.js.
• Clasificación de unos datos de texto, utilizando el algoritmo de Random Forest con Node.js
• Clasificar un grupo de flores del tipo IRIS con el algoritmo SVM.
• Clasificación de unos datos de texto, utilizando el algoritmo de SVM con Node.js.
Laboratorios-Clustering/Agrupación aplicada con Aprendizaje Automático con Node.js:
• Clustering de unos datos, utilizando el algoritmo de K-means con Node.js.
• Clustering de unos datos, utilizando el algoritmo de DBSCAN con Node.js.
• Clustering de unos datos partiendo de una información determinada almacenada en un fichero (data.js), para ello aplicamos el algoritmo K-means con Node.js.
• Clustering un grupo de flores del tipo IRIS con el algoritmo K-means.
• Clasificación de unos datos de texto, utilizando el algoritmo de SVM con Node.js
Laboratorios-Redes Neuronales con Node.js:
• Implementación de una red neuronal para la predicción de Lluvia ML según la tabla de entrada con Node.js.
• Identificación de patrones numéricos (par, impar, primo) utilizando Redes Neuronales Artificiales con el algoritmo BackPropagation con Node.js.
• Predicción de Jugar al Golf utilizando Redes Neuronales con Node.js.
• Clasificar la Calidad del vino utilizando Redes Neuronales con Node.js.
• Función XOR con Redes Neuronales Recurrentes con Node.js.
• Predicción de quien gana en un partido de futbol con Redes Neuronales Recurrentes con Node.js.
• Predicción de Temperatura con Redes Neuronales Recurrentes (LTSM) con Node.js.
• Predicción de Venta de Software con Redes Neuronales Recurrentes (LTSM) con Node.js.
Laboratorios-TensorFlow.js:
• Implementación de operaciones básicas entre tensores con TensorFlow.js.
• diseñar e implementar unas operaciones básicas con tensores, pero además teniendo en cuenta la ocupación de memoria con TensorFlow.js.
• Utilización de API's con TensorFlow.js.
• Implementación de una regresión lineal mediante TensorFlow.js.
• Predicción del tiempo de carga de un código en la memoria RAM mediante TensorFlow.js.
• Clasificador de imágenes mediante TensorFlow.js.
• Guardar un modelo tf con 'tf.Model' y 'tf.Sequential' mediante TensorFlow.js.
• Clasificador de patrones para identificar la especie de flores iris mediante TensorFlow.js.