Iniciamos el módulo de aprendizaje de máquina. En este vÃdeo, vamos a hacer una presentación muy breve sobre el concepto de aprendizaje de máquina y luego presentaremos un ejemplo del uso de datos para el diseño de conjuntos difusos. ¿Qué entendemos por aprendizaje de máquina? Imaginemos un sistema de cómputo; déjenme llamarlo el primer sistema, que cumple alguna función. Recibe una información, que son sus entradas, las procesa y entrega una salida, otra información. Ahora, lo que queremos es tener un segundo sistema que nos ayude a diseñar el primer sistema, que nos ayude a diseñarlo completamente o, al menos, una parte de ese primer sistema. O que nos ayude a mejorar el desempeño de ese primer sistema, que nos ayude a optimizar ese desempeño del primer sistema. Si logramos hacerlo, tenemos dos sistemas interactuando entre sà y dirÃamos que el sistema original aprende, porque se está modificando gracias a un algoritmo. Es el primer sistema nuestro objetivo y el segundo sistema el que nos ayuda a que ese primero funcione mejor. Esa es la máquina que va a aprender. Pero el segundo sistema necesita información para operar. ¿Qué tipo de información podemos tener? Una primera fuente de información es el desempeño mismo del sistema inicial. Podemos, de alguna manera, medir las entradas y las salidas de ese sistema original para que el sistema de diseño nos ayude a modificar el sistema de cómputo. O también, podemos tener información del entorno en donde se desenvuelve todo el sistema para analizar toda esa información y decidir qué elementos ajustar. Este esquema es el esquema más general de aprendizaje de máquina, donde tenemos un algoritmo que ayuda a que otro algoritmo funcione mejor. Y ese algoritmo que nos ayuda recibe información del desempeño del algoritmo a diseñar o del entorno en donde está ese sistema. Nuestro propósito concreto en este curso es aplicar esta idea a los sistemas basados en reglas. Nuestro foco son los sistemas basados en reglas. Vamos a mostrar que esos sistemas pueden embeberse en un esquema de aprendizaje de máquina. En ese sentido, no es este un curso amplio de aprendizaje de máquinas, sino nuestro mensaje principal es: los sistemas basados en reglas pueden ser diseñados u optimizados con otros algoritmos, es decir, son susceptibles de aprender. La definición que proponemos es, entonces, la que ustedes pueden leer en este momento. El aprendizaje de máquina no es más que algoritmos que ayudan a que otros algoritmos se desempeñen mejor a partir del análisis de datos de su desempeño y del entorno mismo. E insistimos, nuestro propósito es aplicar esta idea a los sistemas basados en reglas, cuya estructura ya conocemos: difusor, concresor, máquina de inferencia, base de reglas. En el aprendizaje de máquina, tenemos tres esquemas generales: el esquema de aprendizaje supervisado, el no supervisado y el aprendizaje por refuerzo. En el aprendizaje supervisado, tenemos la suerte de contar con ejemplos de cómo queremos que nuestro sistema basado en reglas se desempeñe y aprovechamos esos ejemplos. Son casos en donde podemos decir: "Nos gustarÃa que el sistema basado en reglas hiciera lo siguiente: Si esta es la entrada, esta debe ser la salida. Si la entrada cambia, la salida debe ser esta otra". Si contamos con esa información, podemos pensar en un sistema basado en reglas con aprendizaje supervisado, pero en ocasiones no tenemos esa información y el esquema es el de aprendizaje no supervisado. Hay un tercer esquema de aprendizaje por refuerzo en donde podemos saber qué tan bien está cumpliendo su papel el sistema basado en reglas. Es el caso tÃpico del controlador. El controlador está embebido en un lazo de realimentación, estamos controlando alguna planta y podemos determinar si todo ese esquema está funcionando bien o mal, o qué tan bien está funcionando. Y cuanto mejor funcione ese esquema, podremos mejorar el diseño de nuestro controlador, con el esquema de aprendizaje basado en refuerzo. La idea de aprendizaje basado en refuerzo es utilizar los mejores ejemplos de desempeño para ajustar nuestro sistema. Vamos a comenzar, entonces, con un ejemplo muy sencillo sobre el uso de datos para diseñar una parte muy pequeña del sistema basado en reglas. Lo que queremos es construir conjuntos difusos a partir de datos. Imaginémonos esta situación que nos va a servir para ilustrar el ejemplo. Necesitamos, por alguna razón, construir una variable lingüÃstica que represente la edad de las personas. Podemos suponer que una de las entradas a nuestro sistema basado en reglas es la edad de las personas, y entonces necesitamos construir esa variable lingüÃstica. Ya hemos progresado en nuestro diseño. Hemos diseñado ya parte de esa variable lingüÃstica, por ejemplo, hemos seleccionado el nombre, edad. Hemos seleccionado el conjunto de términos que vamos a utilizar: niño, adolescente. joven, adulto, adulto mayor. También hemos seleccionado el universo de discurso, que es el intervalo entre 0 y 100 de la variable medida en años. Y la parte que nos hace falta es la función semántica. La función semántica, que es el puente entre el mundo cuantitativo y el mundo cualitativo, y es la parte que queremos diseñar basada en datos. Lo que no hemos podido construir todavÃa son los conjuntos difusos que nos ayudan a entender qué significa cada uno de esos términos: niño, joven, adolescente, etcétera. Y ese es el punto en donde vamos a aplicar un ejemplo de aprendizaje de máquina. ¿Cómo lo vamos a hacer? Supongamos que iniciamos por la transición entre adulto y adulto mayor. ¿En qué momento es que se da ese cambio? Esa es la primera preocupación, la transición entre las últimas dos etiquetas. Y para buscar información acudimos a nuestros usuarios. Estamos diseñando un sistema y hacemos una encuesta y le preguntamos a los usuarios cuándo creen ellos que será esa transición, y cada uno de los usuarios nos da una respuesta distinta. En este ejemplo, voy a suponer que tenemos 10 respuestas de esa encuesta, y cada una de esas casillitas nos muestra lo que nos contestaron. Una persona nos dijo que esa transición se daba a los 70 años, otra que se daba a los 62, otra a los 67, etcétera. Esos son los datos. ¿Cómo los vamos a aprovechar? Comencemos por ordenar esos datos de menor a mayor. La respuestas ordenadas son las que ven ustedes allÃ. La respuesta que nos dio un dato más pequeño fue el 62 y la respuesta con un dato más grande fue la de 74. Y hay, por ejemplo, un dato que se repite varias veces: tres personas nos dijeron que esa transición se daba a los 67 años. Tenemos ya los datos ordenados. Ahora vamos a hacer un análisis de las respuestas acumuladas. Vamos a preguntarnos "¿menor que...?". Vamos a ver cuántas personas nos dijeron que la transición se daba en una cifra o antes de esa cifra. Por ejemplo, 61. ¿Cuántos datos tenemos menores que 61 en las respuestas ordenadas? Ninguno. ¿Menor que 62? Ninguno. ¿Menor que 63? Ya aparece una respuesta. Quien nos dijo 62, ya es menor que 63. Pasamos a 64. Menor que 64, una sola respuesta. Y asà construimos esa tabla con las respuestas acumuladas que, ya cuando llegamos al número 75, tenemos todas las respuestas porque nuestro rango de respuesta llegó hasta 74. Con las respuestas acumuladas, entonces, vamos a intentar construir el conjunto difuso asociado a la etiqueta "adulto mayor". Lo que hacemos es calcular qué proporción de personas contestaron que la transición se daba antes que 61, 62, 63, etcétera. Y como el número de respuestas es 10, lo que hacemos es la división del número de respuestas acumuladas entre el número total, que es 10, y es el renglón que ustedes ven ahÃ: 0,0, 0,1, 0,1, etcétera, hasta 1. Eso lo podemos graficar, y a la hora de graficarlo, tenemos la transición del concepto "adulto" al concepto "adulto mayor". Esta construcción también permitirÃa una interpretación desde el punto de vista de la teorÃa de probabilidad. Como hemos construido esta transición a través de esa encuesta, bien podrÃamos decir que esta es la función de distribución de probabilidad de que al escoger un usuario al azar, él nos diga que esa edad, la edad tal, corresponde a la de un adulto mayor. Ampliamos esa imagen para verla un poquito mejor, y trabajemos con ella. Primero, podrÃamos intentar construir la transición del concepto "adulto" a "adulto mayor", complementando la función de pertenencia de adulto mayor. Con el "1 menos", tendrÃamos también la función de pertenencia del concepto "adulto", al menos en su parte de transición hacia el adulto mayor. De esta manera, podrÃamos estar asegurando construir una partición difusa. Pero quizás, esta forma no nos guste tanto; quizás quisiéramos mejor tener un trapecio. ¿Cómo obtenemos un trapecio? Haciendo un ajuste de lÃnea recta con los datos que ya tenemos. PodrÃamos tener esa transición con lÃnea recta para construir trapecios y, con los datos que tenemos, las transiciones y los vértices del trapecio serÃan los que están marcados en azul. 61,95 y 73,34. ¿Cómo los obtuvimos? Lo que hicimos fue tomar todos los datos con función de pertenencia mayor que 0 y menor que 1. Excluimos las del 0 y las del 1 para tener solo el cambio, la transición; e hicimos una regresión lineal. Esa regresión lineal nos da un ajuste de lÃnea recta y, para determinar los vértices del trapecio, lo que hicimos fue, ya con la ecuación de la recta, encontrar los valores x_1 y x_2 que cruzan con 0 y 1, es decir, cuando la función de pertenencia vale 0 y cuando la función de pertenencia vale 1. Y ahà fue donde obtuvimos los dos vértices. Ya con los dos vértices, entonces es fácil también construir el trapecio del conjunto "adulto", el extremo derecho de ese trapecio, utilizando el complemento "1 menos". Y teniendo ya el trapecio, podemos también pensar en tener un trapecio curvo, aprovechando los cuatro vértices y utilizando una función de transición, como por ejemplo un exponente, como las funciones gaussianas presentadas en módulos anteriores. Observen, entonces, que hemos logrado, a partir de datos tomados de una encuesta, construir la transición entre dos conjuntos, entre dos conceptos. Y si repetimos ese procedimiento en las distintas transiciones, tenemos una forma para construir la función semántica, que podrÃa dar un resultado como el que ustedes ven allÃ. Lo que quiero destacar es que estamos aprovechando datos para dar un sentido a los conceptos. Es el ejemplo del aprendizaje de máquina. Pero en particular, este procedimiento nos permite también construir consensos entre personas, y esa es una utilidad muy interesante de los conjuntos difusos. Lo que tenemos en este momento representado gráficamente es la subjetividad de un colectivo de personas, ya no de un individuo, sino de un grupo humano. Y eso puede ser muy interesante para efectos de tareas en donde hay que llegar a acuerdos, hacer negociaciones, etcétera. Visto en perspectiva de aprendizaje de máquinas, lo que hemos hecho es utilizar datos provenientes del entorno, en este caso de los usuarios, para diseñar una partecita muy pequeña del sistema basado en reglas, pero una partecita muy importante: la función semántica de las variables lingüÃsticas. En siguientes vÃdeos, veremos otras estrategias distintas para aprovechar datos en ese diseño y optimización de los sistemas basados en reglas. Gracias.