enero 05, 2014

Historia de la Lógica Transcursiva (Capítulo 85)

Cuaderno IV (páginas 507 a 512)

(Continuamos con IA)

Algoritmos genéticos y programación evolutiva:

La naturaleza utiliza potentes medios para impulsar la evolución satisfactoria de los organismos. Aquellos que son poco aptos para un determinado ambiente, mueren; en tanto que, los que están bien adaptados para vivir, se reproducen. Los hijos son semejantes a los padres, por lo que cada nueva generación tiene organismos semejantes a los miembros bien dotados, de la generación anterior.

Si las modificaciones del ambiente son menores, las especies irán evolucionando gradualmente con éste; sin embargo, es probable que un cambio súbito del ambiente provoque la desaparición de especies enteras. Ocasionalmente se producen mutaciones al azar, y aunque implican la muerte cercana del individuo mutado, algunos de estas mutaciones dan como resultado nuevas y satisfactorias especies.

Ejemplo:

función ALGORITMO-GENÉTICO (población, FN-IDONEIDAD); responde con un individuo.
   entradas: población, un conjunto de individuos
                     FN-ADAPTACIÓN, una función que mide la idoneidad de un individuo.

   repetir
                   padres ← SELECCIÓN (población, FN-IDONEIDAD)
                   población ← REPRODUCCIÓN (padres),
   hasta        que un individuo sea suficientemente idóneo
   responde  con el mejor individuo de la población, de acuerdo con FN-IDONEIDAD

ALGORITMO-GENÉTICO, empieza con un conjunto de uno o varios individuos y aplica operadores de selección y reproducción, para que evolucione un individuo satisfactoriamente, lo cual es medido por una FUNCIÓN DE ADAPTACIÓN.

Dado que el procedimiento de evolución aprende la función de agente en base a recompensas recibidas ocasionalmente (descendencia), tal como las proporciona la función de selección, puede verse como una forma de aprendizaje por refuerzo.

ALGORITMO-GENÉTICO busca directamente en el espacio de individuos, con el objeto de encontrar uno que maximice la función de adaptación. La búsqueda se realiza en paralelo, puesto que cada individuo de la población puede considerarse como una búsqueda independiente.

Antes de utilizar ALGORITMO-GENÉTICO (AG) tenemos que contestar:

- ¿Cuál es la función de adaptación?
- ¿Cómo se representa un individuo?
- ¿Cómo se escogen los individuos?
- ¿Cómo se reproducen los individuos?

- La función de adaptación dependerá del problema, pero en general, se trata de una función que considera como entrada un individuo, y produce a la salida un número real.

- En el AG clásico el individuo se representa como una 'cadena', a través de un alfabeto finito. Cada elemento de la cadena es conocido como 'gene'. En el ADN real, el alfabeto es AGTC (Adenina, Guanina, Timina, Citosina); en los AG se utiliza el alfabeto binario [0,1]. [en la teoría final el alfabeto AGTC es traducido a binario, demostrándose así que representa un lenguaje universal]

- La estrategia de selección por lo general es aleatoria, y en la cual, la probabilidad de selección es proporcional a la adaptación. Es decir, si la calificación de un individuo X es dos veces mayor que la de Y en la función de adaptación, entonces X tendrá dos veces más probabilidad de ser seleccionado para la reproducción. Por lo general, la selección se efectúa con reemplazo, por lo que un individuo muy adaptado, llegará a reproducirse varias veces.

- La reproducción se lleva a cabo mediante cruzamiento y mutación. Primero, todos los individuos seleccionados para la reproducción se arreglan al azar por pares. Luego se escoge en cada par, un 'punto de cruce'. Piense que los genes de cada uno de los progenitores están numerados del 1 al N.

- El punto de cruzamiento es un número que está dentro de un rango determinado, digamos: 10. Significa que un descendiente obtendrá del 1 al 10 del primer progenitor, y el resto del segundo progenitor. El segundo descendiente recibirá los genes 1 al 10 del segundo progenitor, y el resto del primero. Sin embargo, cada gene puede alterarse por 'mutación' aleatoria a otro valor, y con poca probabilidad de descendencia.


En (a) de la figura tenemos una población inicial de 4 individuos, que son calificados según la función de idoneidad. En (b), el individuo superior recibe una calificación de 8 (32% sobre un total de 25), y el inferior califica con 5 (20%). Como resultado de lo anterior, el individuo superior tiene el 32% de posibilidades de resultar elegido en cada selección. En (c), la selección produce dos pares de compañeros y se eligen los puntos de cruce (líneas discontinuas). Uno de los individuos se acopla dos veces (el segundo); uno de ellos no se acopla con nadie (el inferior). En (d) se muestra la nueva descendencia generada por el cruce de los genes de los padres. En (e) la mutación produce un cambio de los bits enmascarados (dígitos sombreados con lápiz en (d)). Lo anterior nos da la población de la siguiente generación.

- Aprendizaje por refuerzo:
. El diseño del agente define el tipo de información que deberá aprenderse. Hay dos diseños básicos: 1) el basado en el modelo (M) y una función de utilidad (U), y 2) el carente de modelo y que utiliza la función de valor-acción (Q).

. La utilidad de un estado es la suma esperada de recompensas recibidas entre el momento presente y el final de la secuencia.

. Para aprender las utilidades puede utilizarse tres métodos:
1) El método PMC (promedios de mínimos cuadrados) que utiliza toda la recompensa por actuación observada de un estado determinado, como evidencia directa del aprendizaje de su utilidad. Aquí se emplea el modelo solo para escoger acciones.
2) El método PDA (programación dinámica adaptativa) que emplea el algoritmo de la iteración de valores o de política para calcular las utilidades exactas de los dos estados con base en un modelo estimado. Aquí se emplean óptimamente las restricciones locales de las utilidades de los estados que impone la estructura cercana del ambiente.
3) El método de la DT (desviaciones temporales) que actualiza las estimaciones de utilidad para que coincidan con la de los estados sucesores. Puede considerarse como una aproximación sencilla al PDA, en el que no se necesita de un modelo para el proceso de aprendizaje.

. Las funciones valor-acción o funciones Q se pueden aprender mediante PDA o un DT. En este último caso no necesita de un modelo para el aprendizaje Q, tanto en las fases de aprendizaje como en la selección de la acción. Esto, aunque simplifica el problema del aprendizaje, potencialmente restringe la habilidad para aprender en ambientes complejos.

. Cuando el agente de aprendizaje debe escoger acciones al mismo tiempo que aprende, es necesario que haga un compromiso entre el valor estimado de tales acciones y el potencial que le da el aprendizaje, de nueva y útil información.

. En espacios de estado grandes, los algoritmos de aprendizaje por refuerzo, deben utilizar una representación funcional implícita para poder hacer generalizaciones de entrada en los estados. La señal de desviación temporal puede utilizarse directamente para controlar los cambios de peso de las representaciones paramétricas, como serían las redes neuronales.

. La combinación de una generalización de entrada y un modelo explícito ha dado un resultado excelente en dominios complejos.

. Los AG permiten reforzar el aprendizaje utilizando el refuerzo para aumentar la cantidad de funciones con desempeño satisfactorio en una población de programas. Producen el efecto de generalización mediante programas de mutación y cruzamiento mutuo. [los AG para lo único que resultaron útiles es para emprender búsquedas en grandes bases de conocimiento, lo cual hacen muy bien y de manera mucho más rápida que cualquier otro método.]

El conocimiento en el aprendizaje:

. El empleo del conocimiento anterior en el aprendizaje produce un escenario de aprendizaje acumulativo, donde mejora la capacidad de aprendizaje conforme se adquiere más conocimiento.

. La comprensión de los distintos papeles lógicos que desempeña el conocimiento previo, expresado a través de restricciones de vinculación, contribuye a la definición de una diversidad de técnicas de aprendizaje:
- Aprendizaje basado en la explicación (ABE): a partir de ejemplos sencillos, se obtienen reglas generales, explicando los ejemplos y generalizando la explicación. Constituye un método deductivo para convertir el conocimiento basado en principios fundamentales, en experiencia útil y eficiente, y para propósitos especiales.

- Aprendizaje basado en la relevancia (ABR): se utiliza el conocimiento previo que adopta la forma de determinaciones que sirven para identificar los atributos relevantes, generando así, un reducido espacio de hipótesis, lo cual acelera el conocimiento. También permite hacer generalizaciones deductivas a partir de ejemplos sencillos.

. Aprendizaje inductivo basado en conocimiento (AIBC): encuentra hipótesis inductivas que explican conjuntos de observaciones, con ayuda de conocimientos previos.

. Las técnicas de programación lógica inductiva (PLI): llevan a cabo el AIBC utilizando un conocimiento expresando el LPO. Los métodos PLI pueden aprender conocimiento racional [esto no pasa de ser una simple expresión de deseo], que no es posible expresar en sistemas basados en atributos.

- Comunicación, percepción y actuación:

Desafortunadamente la metodología psicológica actual no nos permite diferenciar entre conductas que son posibles, a través de modelos internos, y conductas que no son sino esquemas de estímulo-respuesta. [y eso que la Psicología actual, o sea, la Psicología Cognitiva, surgió como consecuencia de la crítica devastadora que Chomsky hizo a Skinner que era el defensor más fuerte del conductismo, vale decir, aquella corriente psicológica que explicaba todo derivado del par estímulo-respuesta. Esto es, la Psicología actual es una burda continuación del conductismo de Skinner que tanto criticó, en donde solo se cambió estímulo-respuesta por input-output (entrada-salida) operado por un computador. Por lo menos el conductismo estaba basado en la evidencia biológica.]

Generalidades sobre el lenguaje:

Existen lenguajes formales (Lisp y la LPO), productos de la invención, y definidos de manera rígida; y los lenguajes naturales, los que los humanos usan. [este concepto de lenguaje natural cambiará en la teoría final]

. Un lenguaje formal se define como un conjunto de cadenas en donde, cada una de ellas está formada por una secuencia de símbolos tomados de un conjunto finito conocido como símbolos terminales.

. Estructura de frase: las cadenas se componen de subcadenas: frases, las cuales se agrupan en distintas categorías: frase nominal (FN), frase verbal (FV), y la combinación de las dos: oración (O). Esta esquematización nos permite especificar cuáles son las cadenas permisibles de un lenguaje.

. FN, FV y O son los símbolos terminales.

- Capacidad generativa: es una manera de clasificar los formalismos gramaticales: el conjunto de lenguajes que pueden representar.

. Chomsky (1957) habla de cuatro clases de formalismos gramaticales que difieren solo por la forma de sus reglas de reescritura. Las clases de disponen de acuerdo con una jerarquía; cada clase sirve para describir todos aquellos lenguajes que pueden describirse utilizando una clase de menor capacidad, así como otros lenguajes más. Sin dar detalles, las cuatro clases son:
a) Gramáticas enumerables repetidamente.
b) Gramáticas que dependen del contexto.
c) Gramáticas que no dependen del contexto.
d) Gramáticas regulares.

[es muy importante aclarar que todo lo anterior, que surgió del ingenio de Chomsky y estuvo en vigencia durante largos 40 años, nunca aportó absolutamente nada sobre los mecanismos mentales que supuestamente trataba de explicar. De hecho gran parte de todas las Ciencias Cognitivas se basan en estos principios; en donde, por supuesto, está incluida la Neurociencia. Para lo único que sirvió todo esto, y hay que reconocerlo, fue para dar paso a todo el desarrollo monstruoso que hoy tienen las técnicas de programación, lo cual no es poco mérito. Pero, tanto en Lingüística como en Psicología, su aporte fue nulo. La gramática generativa, de supuesto origen biológico e innato, nunca fue demostrada ni fundamentada desde el punto de vista científico; inclusive llegó a ser desestimada por su propio autor. Fue solo una secuencia de 'fuegos de artificio' que mantuvieron entretenidos a miles de 'científicos' de todo el mundo, haciéndoles creer que estaban muy cerca de desentrañar el funcionamiento mental. Lo lamentable de todo esto, más allá del engaño y de las pingües ganancias que le procuraron a sus mentores, es que hoy en día, todavía haya muchos que se dicen 'científicos' porque son fervientes defensores de un dogma embustero como este, producto de un adoctrinamiento muy bien planeado, y de un rendimiento mercantil brillante.]

¡Nos encontramos mañana!