You are on page 1of 333
Capitulo 1 INTRODUCCION El proceso natural de creacién de la inteligencia que el ser humano posee pasa indefectiblemente por la utilizacién masiva de la capacidad de aprender. No se puede entender la compleja evolucién de la inteligencia, desde que se nace (incluso antes, desde el punto de vista biolégico), sin que intervenga como fuerza motriz y fuente continua de mejora el aprendizaje. Asi, el pre- mio nébel Herbert Simon expuso en el clésico “Computers and Thought” que (Newell and Simon, 1963]: Hay méquinas que pueden pensar, aprender y crear. Es mds, su capacidad de realizar estas labores est4 aumentando répidamen- te hasta que —en un futuro previsible— el rango de problemas que podrdn resolver seré parejo al que se ha aplicado la mente humana. Es por ello que si se desea alcanzar la meta de construir sistemas compu- tacionales (artificiales) que demuestren un comportamiento “inteligente” (o simulacién de un comportamiento inteligente), esto sdlo se pueda conseguir, entre otras tareas, a partir de un esfuerzo por dotar a tales sistemas de la capacidad de aprender. De esta apreciacién surgi, dentro del campo de la Inteligencia Artificial, la disciplina cientifica del Aprendizaje Automético (AA). 6 Intropuccion El objetivo del Aprendizaje Automdtico, al que también se denominaré sim- plemente aprendizaje, consiste en dotar a los computadores de la capacidad de adquirir conocimientos! autométicamente para poder resolver nuevos proble- mas 0 mejorar su comportamiento a partir de la experiencia. Los autores de este libro defienden la idea de que précticamente todas las actividades compu- tacionales del futuro requerirén alguna componente de adaptacién/aprendi- zaje al/del contexto. Este libro pretende ser una guia de las técnicas més significativas generadas hasta este momento, de forma que se pueda pensar en las siguientes generaciones de sistemas de aprendizaje por parte de las méquinas. Como se discutiré mas adelante, el término aprendizaje abarca una gran variedad de tareas y métodos que tienen como principales objetivos construir programas de computadores que sean capaces, entre otras cosas, de adaptarse a las necesidades del entorno (usuarios / otros programas / otras fuentes), mejorar en la realizacién de las tareas, descubrir nuevos hechos o teorias, 0 adquirir nuevo conocimiento. Esta introduccién expone en su primera seccién algunas de las motivacio- nes que pueden ilevar a conocer y utilizar m4s en profundidad las técnicas de AA. La siguiente seccién describe una breve historia del campo. Después de describir los orfgenes del AA y del aprendizaje natural, en la siguiente seccién se formula el AA como una nueva forma de programar, que permite evolucionar la concepcién tradicional de la programacién. A continuacidn, se presenta un enfoque unificado de resolucién de problemas, incluyendo el pro- pio proceso de aprendizaje, de forma que todos los sistemas de AA se pueden caracterizar bajo la misma formalizacién: el espacio de problemas. Para po- der utilizar correctamente este libro, la seccién 1.3 describe los objetivos del mismo, mientras que la seccién 1.6 trata de la estructura del mismo, asi como de la organizacién interna de cada capitulo. 1.1. Motivaciones En esta seccién se tratarén algunas de las motivaciones por las que se considera titil el estudio y utilizacién de las técnicas basadas en el campo del 1 Entendiendo por conocimiento un término descriptivo que le permite a un observador externo valorar lo que el programa esté haciendo. Como se veré a lo largo de este libro, muchas veces lo que se aprende no adopta formas que puedan asociarse ficilmente a lo que entendemos por “conocimiento”. 1.1 Mottvactones 7 aprendizaje automético. Se han dividido en razones técnicas (construccin de software de manera automatica), comerciales (personalizacién de servicios y productos para el ciudadano), y cientfficas (estudio del aprendizaje humano y andlisis automdtico de grandes cantidades de datos cientificos). Motivaciones técnicas Este tipo de motivaciones son de interés fundamentalmente para los de- sarrolladores de software. Entre estas motivaciones, se pueden citar: «= Las técnicas de aprendizaje automdético adquieren conocimiento de for- ma auté-noma a partir de la experiencia, con lo que resultan titiles para la construccidn semi-automatica de programas cuando se dispone de experiencia en la resolucién de una determinada tarea. = Para algunas tareas es dificil determinar cudl es el algoritmo que permi- tirfa resolverlas. Si se dispone de ejemplos de cémo resolver la tarea, se puede utilizar un sistema de aprendizaje que genera automaticamente dichos algoritmos. « En ocasiones el algoritmo para resolver la tarea es conocido pero su célculo es impracticable. Los ejemplos disponibles pueden permitir afron- tar soluciones parciales, a partir de dicho algoritmo, que respondan al tipo de casos presentados. Debido a que se pueden ejecutar con nuevas experiencias que propor- cionen més ejemplos de cémo realizar una tarea correctamente, estas técnicas permiten corregir sus errores previos en la realizacién de dicha tarea, Por la misma razon, se adaptan a los cambios del entorno sin que sea necesario recodificar el programa, con solo volverlos a ejecutar. Por tanto, se mejora notablemente la capacidad de mantenimiento del software. Motivaciones comerciales Este tipo de motivaciones tiene que ver con la clara tendencia actual del mercado de servicios y productos hacia la personalizacién de los mismos al cliente. Entre otras, se pueden citar: 8 InrRoDUCCION = La oferta de productos personalizados a un bajo coste (coches, ropa, ca- nales de televisién, contratos telefénicos, etc.) requiere un tratamiento automatizado de las necesidades y preferencias de cada cliente. La mo- tivacién es doble: la gran variedad de usuarios y la previsible evolucién de sus necesidades y preferencias a lo largo del tiempo. La posibilidad de seguir el comportamiento de miles/millones de usua- rics en un dmbito concreto permite descubrir tendencias y estereoti- pos que pueden ser aprovechados para ofrecer mejoras en el servicio. Una alternativa que ya esta utilizdndose frecuentemente en los servicios ofrecidos a través de Internet es la de proporcionar recomendaciones y filtros de informacién que facilitan el propio uso del servicio ofrecido. En el propio 4mbito del uso de los programas de ordenador, dada la velocidad con que surgen los nuevos entornos de trabajo, con sus multi- ples y sucesivas versiones, cabria preguntarse si no serfa mejor intentar desarrollar programas que se adaptaran a los gustos y necesidades del usuario, antes que obligarle a éste a adaptarse continuamente a las exigencias del software. Posiblemente, la mayorfa de las aplicaciones informaticas del futuro rea- lizardn algun tipo de mejora/adaptacién automatica. El tipo de técnicas tra- tadas en este libro permiten realizar dicha adaptacién o personalizacién au- tomaticamente. En cualquier caso, parece contradictorio que si realmente existen progra- mas capaces de adaptarse a las necesidades y preferencias del usuario su uso siga siendo poco frecuente. Motivaciones cientificas Si bien las actividades cientificas suponen un porcentaje muy pequefio de la actividad de algunos paises, su impacto es fundamental en la sociedad a medio-largo plazo. Y también hay un conjunto de motivaciones relacionadas con la ciencia en general que han supuesto un gran avance en algunos campos cientificos: = Una de las cualidades més definitorias de la inteligencia es la capacidad de aprender. Por tanto, jhasta qué punto podemos decir que un pro- grama es “inteligente” si no es capaz de adaptarse a las condiciones del 1.2 CONCEPTO DE APRENDIZAJE 9 entorno o de aprender de sus propios aciertos y errores? Esto esté inti- mamente relacionado con disciplinas cientificas cercanas a la psicologia (como la ciencia cognitiva). En concreto, el aprendizaje como ciencia tiene una doble vertiente: * ciencia de andlisis: estudia los procesos de aprendizaje del ser humano. * ciencia de sintesis: tiene por objeto los métodos que permiten construir sistemas que sean capaces de aprender. La evolucién del ser humano como ser inteligente en relacién con su entorno no se podria entender sin la capacidad a la que se denomina aprendizaje. Existen numerosas disciplinas cientificas que parten de una hipdtesis que explica algunos fenémenos naturales, y luego se realizan experi- mentos para contrastar la hipétesis. El andlisis de dichos experimentos no siempre es facil de realizar sin herramientas adecuadas. Las técnicas de AA permiten realizar andlisis de grandes cantidades de datos para poder extraer reglas o leyes generales, regularidades, patrones, etc. En otras disciplinas cientificas se dispone de numerosos datos pero no se conoce la relacién entre esos datos y los fendmenos que representan. Las técnicas de andlisis automético de datos provenientes del aprendizaje automético han permitido avanzar significativamente en dichos campos, como es el caso de la astronomia o de la gendmica. 1.2. Concepto de Aprendizaje En esta seccién se va a proporcionar una visién general de lo que sig- nifica aprendizaje automético y su contexto. Dado que no se conocen, con la profundidad suficiente, los mecanismos que controlan el aprendizaje hu- mano, todas las definiciones existentes parecen querer expresar los aspectos en los que se manifiesta la capacidad de aprender, més que los procesos in- ternos asociados a dicha capacidad. Es decir, se centran en su funcionalidad mas que en su estructura. Este desconocimiento hace que, como sefialaba Simon [Simon, 1983], pueda llegar a ser frustrante transferir el conocimiento 10 IntRopuccION y la experiencia a otra persona, ya que no se conocen los mecanismos in- ternos por los que se rige la adquisicién del conocimiento, no se sabe dénde esta dicho conocimiento, ni en qué lenguaje esta codificado. Algunas definiciones del concepto de aprendizaje que se han dado por personas relevantes del campo son las siguientes: = Aprender es construir o modificar representaciones de aquello con lo que se esté experimentando. [McCarthy, 1968] El aprendizaje denota cambios en el sistema que permiten que se realice la misma tarea mds eficiente y eficazmente la prézima vez |Simon, 1983] Aprender es un fenémeno que abarca muchas facetas como son: la ad- quisicién de conocimiento declarativo, el desarrollo de habilidades cog- nitivas a través de la prdctica, la organizacién del conoci-miento ad- quirido dentro de un entorno genérico, la representacién efectiva, y el descubrimiento de nuevos hechos y teortas por medio de la observacién y la experimentacién [Carbonell ef al., 1983] «= Aprender es hacer cambios titiles en nuestra mente (Minsky, 1985] Analizando las definiciones anteriores, llama la atencién Jo alejada que se encuentra la de Minsky, demasiado general para ser util, de la més apli- cada de McCarthy [McCarthy, 1968], donde el aspecto central es construir una representacién. Existen otras tantas definiciones que podrian haberse presentado, pero todas elias coinciden en hacer hincapié en algunos aspectos fundamentales que conviene precisar. Una cuestién comin esencial del aprendizaje es la capacidad de me- jorar. Dicha mejora puede suponer incrementar el conocimiento adquirido, realizar una tarea mas eficientemente o realizar nuevas tareas. La primera de las facetas sefialadas, la adquisicién de conocimiento, se entiende como una actividad de didlogo (restringida a un protocolo concreto) en la que un “agente” es informado de algin hecho o situacidn, o realiza preguntas que originan una reestructuracién del conocimiento disponible. La segunda y la tercera caracteristicas, la realizacién eficiente de tareas y la ampliacién del conjunto de tareas resueltas, tienen que ver con la interaccién con el medio y estén intimamente relacionadas con ja naturaleza funcional del conocimiento humano [Anderson, 1989]. 1,2 CONCEPTO DE APRENDIZAJE 11 Por otro lado, frente a la ya citada adquisicién del conocimiento, esté la adguisicién de habilidades, entendida como la mejora gradual del comporta- miento mediante la repeticién inconsciente, o practicamente inconsciente, de alguna actividad. Retomando el enfoque de McCarthy, el aspecto central del aprendizaje es el proceso de construccién de la representacién de alguna realidad. Como se veré més adelante, el formalismo de representacién empleado es un elemento definitivo en las capacidades de inferencia (operativas) de la estrate- gia de aprendizaje empleada. De hecho, los sistemas de aprendizaje requieren una eleccién adecuada del lenguaje en el que se describen los ejemplos pre- sentados y del lenguaje que sirve pera expresar el conocimiento aprendido (las hipétesis). El problema de la caracterizacién de la representacién més adecuada para cada tipo de problemas sigue siendo una cuestién de interés con muchas preguntas sin responder. Otro elemento implicito en las definiciones anteriores es la capacidad de memorizar. Este mecanismo es necesario para poder realizar mejor una. determinada tarea en ocasiones sucesivas. Asi, por ejemplo, el primer pro- grama real que se podia considerar como una herramienta para que un or- denador simulara el pensamiento se llamé Légico Teérico (LT) [Newell and Simon, 1956]. Este programa podfa demostrar los teoremas del Principia Ma- temdtica, la obra central sobre los fundamentos de la matematicas, escrita por Bertrand Russell y Alfred North Whitehead (1910, 12 y 13; volimenes 1, 2 y 3 respectivamente). LT realizaba lo que despectivamente se conoce como “aprendizaje memoristico”, conservando los teoremas demostrados, de forma que éstos, junto con los axiomas iniciales, se utilizaban ante nuevos problemas. Un aspecto relacionado muy interesante es el estudio de los procesos por los cuales ante nueva. informacién disponible, la memoria se descompone para almacenar los nuevos elementos disponibles en el contexto en el que éstos son relevantes (aquél en el que originalmente se reconocieron y explica- ton) [Schank, 1980] . También ha sido de gran ayuda estudiar Jos mecanismos alternativos que guian el proceso de recordar. En este sentido, los estudios de Schank indicaron que durante el proceso de comprensién del lenguaje se busca constantemente el nivel de anélisis aplicable més alto. Curiosamente, también es bastante frecuente el traer de le memoria situaciones parecidas a las que se plantean, no ya por la similitud en aspectos esenciales entre ambas, sino tam- bién por la correlacién de valores en caracteristicas muy poco significativas con respecto al objetivo implicado [Ross and Spalding, 1991]. Por ejemplo, 12 InTRODUCCION pensar que el tipo de comida de un restaurante concreto sera de elaboracién répida, ya que los colores chillones de su decoracién suelen aparecer en dicho tipo de restaurantes. Hoy en dfa, la actualizacién y recuperacién eficiente del conocimiento adquirido sigue siendo un aspecto critico en la mayorfa de las aplicaciones, especialmente aquellas cuya capacidad de razonamiento se basa en la organizacién y acceso al conocimiento relevante disponible, como es el caso de! Razonamiento Basado en Casos (Hammond, 1989]. Normalmente, cuando se habla de aprendizaje automatico, inconsciente- mente se tiende a suponer una situacion ideal en que un agente auténomo interacciona con su entorno y aprende basdndose en dicha interaccién. Sin embargo, salvando los primeros intentos fallidos de encontrar un mecanismo computacional genérico andlogo al de la mente humana con capacidad de aprender [Minsky and Papert, 1969], los problemas que hasta ahora se han resuelto tienen més que ver con solucionar problemas muy concretos en entor- nos reducidos y con unas condiciones de relacién entorno-sistema espectfficas. En este contexto, y dado que la capacidad de aprender esté supeditada a la capacidad de relacionarse con el entorno, incluso aquellos sistemas que se actualizan por mera introspeccién tienen que ser juzgados finalmente por algtin agente externo. Por tanto, dicho entorno y sus condiciones se destacan como otros elementos esenciales al aprendizaje. Tradicionalmente se han dis- tinguido dos situaciones a este respecto. Los algoritmos que mayor éxito y difusién han tenido desde un principio [Dietterich and Michalski, 1983] son aquéllos en los que se suponia que las entradas al sistema eran un conjunto de observaciones previamente clasificadas por alguna fuente externa, denomina- do aprendizaje supervisado. Posteriormente, técnicas de clasificacion anélogas a las utilizadas en el aprendizaje supervisado han sido aplicadas para resolver problemas mds genéricos en los que ya no se disponia de un conjunto de en- tradas etiquetado, conocido como aprendizaje no supervisado, (p.ej., [Fisher, 1987]). Por otro Jado, también debe distinguirse si dichas observaciones se han considerado como disponibles simulténeamente o bien secuencialmente, dado que el segundo caso, aunque es mds comin en situaciones reales, conlle- va, un mayor riesgo a la hora de establecer hipétesis validas y genéricas sobre tos datos observados. Otro aspecto més relacionado con el entorno es la velocidad con que ocurren los cambios en el entorno. El problema consiste en determinar si el sistema de aprendizaje es capaz de capturar, en el tiempo disponible, las regularidades observables en el entorno. En otras palabras, si se es capaz de aprender mas deprisa de lo que el entorno tarda en cambiar las condiciones 1.3 OBJETIVos 13 de partida de dicho aprendizaje. Referido al entorno, otra cuestién de interés es caracterizar las dreas diferentes en las que se han aplicado estos sistemas de aprendizaje [Langley, 1992]. Finalmente, en esta introduccién parece conveniente abrir una nueva pers- pectiva de andlisis de los sistemas de aprendizaje que tiene que ver con su capacidad de “autoreflexién”; es decir, de valorar lo aprendido, generalmente a través del cambio en la realizacién de la tarea que se quiere mejorar. Pa- rece que ninguna de las definiciones anteriormente enunciadas dice nada al respecto. Sin embargo, es un aspecto esencial para la correcta valoracién de las capacidades del sistema y para su posterior ampliacién. Parece eviden- te que “nada mejor que saber los limites de lo aprendido para poder seguir aprendiendo”. Considerando todos los aspectos anteriormente mencionados, una defini- cién que resume las modificaciones que caracterizan los sistemas de aprendi- zaje es la que en su dia enuncié Carbonell [Carbonell, 1986]: Un sistema se dice que aprende si puede modificar su compor- tamiento después de un conjunto de experiencias, de forma que pueda realizar la tarea con mayor precisién o mds eficientemente, o realizar tareas mds alld de sus capacidades previas El elemento clave de esta definicién genérica vuelve a ser la modifica- cién observable en el comportamiento del sistema. En ciertos casos, la modificacién del comportamiento estA muy lejos de asemejarse a lo que comtinmente se entiende por capacidad de aprender (p.ej. en un extremo es- tarian las grandes bases de datos). Surge pues una distincién entre lo que el sistema realmente realiza (p.ej. guardar nuevos datos en la base de datos) y el nivel de andlisis con el que se evaliia el sistema (capacidad de aprender). 1.3. Objetivos En esta seccién se describirdn los objetivos que se pueden perseguir a la hora de utilizar una técnica de aprendizaje automatico. Tradicionalmente, se han definido dos objetivos posibles de una tarea de aprendizaje: = Adquirir nuevos conceptos: a partir de ejemplos de un concepto se per- sigue generar una descripcién computacional de ese concepto que pueda ser utilizada. posteriormente por la computadora o por el humano para 14 InTRODUCCION la realizacién de otras tareas. Por ejemplo, se podria definir la siguien- te. tarea: partiendo de ejemplos de paginas Web que un usuario ha visitado, determinar un procedimiento que clasifique en interesantes 0 no-interesantes para ese usuario futuras paginas. Evidentemente, esta capacided de aprender se puede traducir en una tarea secuencial de correccién sucesiva de los conceptos aprendidos. De esta forma, nuevas paginas hardn que el propio concepto vaya evolucionando. En todos estos casos se entiende que la “correccién” se puede expresar mediante una escala de aproximaciones sucesivas a la mejor opcién disponible. Reducir los recursos requeridos: generalmente se traduce en necesitar menos tiempo, espacio, 0, de forma genérica, coste en la realizacién de una tarea. Por ejemplo, si se dispone de un sistema de planificacién de proyectos que permitiera generar automaticamente la secuencia de actividades a realizar en el proyecto, dependiendo de la tipologfa del mismo, as{ como la asignacién de recursos al proyecto, y esta operacién llevara mucho tiempo, se podrian aprender estrategias de planificacién que llevaran a soluciones més eficientes (uso mds racional de los recur- sos) en menos tiempo de cémputo. Como podré comprobarse en distintos algoritmos a lo largo de este texto, ambos objetivos son intercambiables. Es decir, en algunos casos, aunque se pretenda conseguir que un sistema sea capaz de mejorar su comportamiento con el tiempo (segundo tipo de objetivo), esto se puede conseguir adquiriendo nuevas formas de tomar decisiones (primer tipo de objetivo). También se observa que el tipo de objetivos tiene poco que ver con la complejidad de la estrategia aplicada, de forma que puede haber desde técnicas simples hasta muy complejas que cumplan cualquiera de los dos objetivos sefialados. 1.4. Perspectivas del Aprendizaje automati- co En esta seccién se van a tratar diferentes perspectivas del aprendizaje automéatico, o formas de analizar o entender este tema. La primera, la pers- pectiva biolégica, se centra en los mecanismos de adaptacién de los seres vivos. La segunda, la perspectiva computacional, percibe al AA como una. nueva forma de programacién, La tercera se centra en obtener, a partir del 1.4 PBRSPECTIVAS DEL APRENDIZAJE AUTOMATICO. 15 AA, técnicas que buscan descripciones de conceptos en enormes espacios de biisqueda. La tiltima se centra en el aspecto inferencial; qué tipo de inferencia se realiza para poder aprender. Perspectiva biolégica La evolucién es una caracterfstica intrinseca a todos los seres vivos, de tal manera que es una de las constantes en las multiples definiciones de lo que se entiende por un ser vivo. El término evolucién se asocia, en este contexto, con la capacidad de adaptacidn de un sistema (bioldégico) a los cambios pro- ducidos en su entorno. Esta capacidad de adaptacién en los seres vivos tiene dos escalas temporales que dan jugar a dos modelos diferentes de adaptacién. Por un lado, estan los procesos que ocurren a escala generacional; es decir, cuando la adaptacién se produce en generaciones sucesivas de individuos. A esta adaptacién se le da el nombre de evolucién. Los procesos evolutivos son los que han dado lugar a la enorme complejidad del mundo biolégico. Sin embargo, la escala temporal de estos procesos les hace ser demasiado lentos cuando los cambios en el entorno se producen bruscamente. Asf, en el caso de los seres vivos con capacidades motrices, el resultado de su autonomia les hace enfrentarse ante situaciones nuevas a. cada instante. El entorno en el que se encuentran varia a medida que el individuo se desplaza. Por ello, necesitan mecanismos que les permitan adaptarse a lo largo de su periodo de vida. Esto es lo que se conoce como aprendizaje. La Tabla 1.1 muestra la relacién entre evolucién y aprendizaje. Adaptacién biolégica Evolucién Aprendizaje Escala temporal Generaciones sucesivas Vida de un individuo Fundamentacién. Genética + Seleccién natural Sistema nervioso Sistema computacional Computacién evolutiva Redes de neuronas Tabla 1.1: Aprendizaje desde el punto de vista bioldgico. Ambos, evolucién y aprendizaje, constituyen los mecanismos biolégicos que permiten a los seres vivos adaptarse y evolucionar. Fl aprendizaje es una caracteristica de los seres vivos con sistema nervioso, y es el propio sistema nervioso el que les dota de esta caracteristica. La evolucién no ¢6: 16 INTRODUCCION aprendizaje, a més larga escala, y que es fijado en el material genético. Las leyes que lo gobiernan son las de la genética y Ia seleccién natural. Si se entiende a los seres vivos, de manera muy simplificada, como siste- mas que reaccionan de forma determinista ante determinados estimulos, se podrfa hacer una relacién entre ellos y los sistemas computacionales. De ma- nera, que, siguiendo mecanismos similares a los que rigen el campo bioldgico, puedan ser programados sistemas computacionales capaces de adaptarse de una forma parecida a como se entiende en el mundo de la biologia. Este es el enfoque biolégico del AA. Bajo este enfoque, tanto a los mecanismos de evolucién generacional, como a la adaptacién en el periodo de vida de un individuo producido por los sisternas nerviosos, se les conoce con el nombre de aprendizaje, y da lugar a dos grandes ramas, conocidas como aprendizaje genético (o computacién evolutiva, CE) y aprendizaje neuronal (o Redes de neuronas artificiales, RNA). En cuanto al punto de vista de las RNA, tratan de emular los procesos que tienen que ver con los sentidos, en la idea, ya apuntada, de que a par- tir de este bajo nivel de procesamiento puedan surgir, espontdéneamente, los comportamientos computacionales mds complejos, que conforman las carac- teristicas de los sistemas inteligentes. Estos procesos de percepcidn a nivel fisico se pueden simplificar definiéndolos como funciones que procesan la in- formacién de los estimulos recibidos. Asi, los procesos de percepcién, tales como reconocimiento de sonido, e im4genes, o el control de movimientos a nivel motriz, se pueden ver como una funcién que recibe unas determinadas entradas, que son los estimulos (imagenes, sonidos, olores, etc...), y producen una respuesta consistente en el proceso concreto de percepcién a realizar, clasificacién, reconocimiento, coordinacién y control. La caracteristica més importante de este tipo de procesos es su gran plasticidad, es decir la capa- cidad de modelar los procesos de percepcién en funcién de les necesidades concretas en cada momento. Esta capacidad de adaptacién es lo que conforma la tarea de aprendizaje. A nivel bioldgico, los procesos de percepeién se realizan casi fundamen- talmente en el sistema nervioso. El componente principal de los sistemas nerviosos de los seres vivos es el cerebro. As{f pues, la mayor parte de los procesos que se trata de modelizar se realizan en el cerebro. El estudio del cerebro es la principal fuente de inspiracién de las RNA. Se puede decir, pues, que el objetivo de las RNA es el de modelizar los procesos de percep- cién de los seres vivos a partir del estudio del funcionamiento de los sistemas: nerviosos centrales de los mismos. 1.4 PERSPECTIVAS DEL APRENDIZAIE AUTOMATICO iw En este punto hay que decir que las RNA son un campo del conocimiento abordado desde multiples puntos de vista. Principalmente, caben destacar el : puramente fisiolégico, y el puramente computacional, siendo lo més comin formas intermedias de abordar las RNA. Desde un punto de vista puramente sfisiolégico estan aquellos estudios de las RNA que tienen como objetivo la ayuda a la comprensién del funcionamiento neuronal a nivel biolégico. Des- de el punto de vista computacional, por el contrario, se trata de construir ‘artefactos que, a partir de caracteristicas similares a las de los seres con sis- temas nerviosos, sean de utilidad en aplicaciones industriales. Esta ultima perspectiva es la que se ha adoptado en este libro, siguiendo la linea general ‘del aprendizaje automatico. Desde este tiltimo punto de vista nos interesa construir sistemas capaces de, realizar tareas de reconocimiento, clasificacién, control, etc.. en su més ~~ amplio sentido, partiendo de conocimiento explicito que puede llegar a ser muy pequeiio o nulo, y siendo capaces de adquirir el conocimiento necesario de forma automética. Un nuevo paradigma de programacién Dada la creciente demanda de sistemas computacionales que resuelvan problemas complejos, adaptandose a las necesidades de los usuarios, o predi- ciendo el comportamiento del entorno, la Informatica requiere con urgencia herramientas que permitan afrontar este reto. El AA es uno de los cam- Pos mejor preparados para proporcionar una solucién eficiente al problema, en términos de esfuerzo de programacién y mantenimiento. La Informética tradicional entiende el proceso de construccidn de sistemas computaciona- les mediante variaciones del cldsico ciclo de anilisis, disefio, codificacién y mantenimiento, tal y como muestra Ja figura 1.1 de forma muy sucinta. Existen tareas complejas en las que, pese a que seria posible tedricamente Seguir ese ciclo, el esfuerzo necesario para poder tener en cuenta todas las Pposibles variaciones del problema superarfa con creces los recursos presupues- tados. Ejemplos de esas tareas son aquéllas en Jas que intervienen uno o més factores, tales como grandes cantidades de datos a analizar para tomar deci- siones, circunstancias del problema a resolver cambiantes, 0 incertidumbre. En estos casos, el AA plantea una solucién viable desde el punto de vista de jos recursos implicados, asf como de !a validez de la solucién. El ciclo de construccién de los sistemas computacionales utilizando técnicas de AA también tiene en cuenta la etapa de andlisis por parte del humano. Pero, en 18 InrRoDUCCIGN => Solucién Figura 1.1: Tarea clésica de programacién.. el caso del disefio, el humano no crea un modelo de cémo debe construirse el sistema computacional, sino que toma decisiones tales como: qué herramien- ta de AA utilizar, qué datos de entrada se le suministraran, con qué lenguaje se suministrardn dichos datos, qué valores se le daran a los parametros de la herramienta de AA, qué datos se le proporcionarén para medir su comporta- miento, etc. Es decir, se pasa del disefio orientado a la construccién al disefio orientado a la especificacién declarativa. A partir de entonces, el encargado de programar y mantener el programa es la herramienta de AA. Esto permite, entre otras cosas, la actualizacién permanente del programa y la adaptacién al entorno, que puede ser desde un humano a una central térmica. En este caso, para poder mantener el sistema, es necesario que el entorno o el humano proporcionen una critica de la solucién (puede ser simplemente decir que la solucién es vélida o no). La figura 1.2 muestra un esquema de la tarea de programacién utilizando una herramienta de AA. Un ejemplo de este tipo de tareas es la conduccién automética de vehicu- 1.4 PERSPECTIVAS DEL APRENDIZAJE AUTOMATICO 19 Figura 1.2: Tarea de programar utilizando una herramienta de AA. 20 INTRODUCCION los, Supéngase que una marca de automéviles desea construir un vehiculo que sea capaz de conducir auténomamente. Bajo el enfoque clasico de programa- cién, las personas construirian un modelo (disefio) de cémo debe funcionar el sistema, teniendo en cuenta la multitud de posibles situaciones diferentes que se puede encontrar. Por ejemplo, existen muchos tipos de vias por las que puede circular (calles, carreteras, autopistas), de situaciones atmosféricas (sol, nubes, llover, nevar), de condiciones de tréfico (atasco, denso, fluido), 0 de situaciones de trdfico (adelantamiento, paso libre, alguien o algo se cruza). A partir de estas especificaciones, se desea construir un sistema computacio- nal que sea capaz de, dadas como entrada las imégenes que pueda captar una cdmara con la misma visibilidad que la vista humana (de la persona al volante del veh{culo), tomar decisiones respecto a cudnto pisar el freno y/o el acelerador o cudnto girar el volante y en qué direccién. Esta tarea de programacién es realmente compleja y llevarfa una gran cantidad de tiempo y recursos humanos para poder desarrollarse vélidamen- te. En lugar de afrontar este reto de la forma tradicional, un grupo de la prestigiosa Universidad Carnegie Mellon realizé la serie de sistemas RALPH- ALVINN, que se comenta en la seccién 1.5 y que fueron capaces de conducir auténomamente una gran cantidad de kilémetros. Busqueda La tarea de aprendizaje en si puede plantearse como un problema de biisqueda. En general, se busca un elemento inicialmente desconocido a par- tir de una informacién parcial sobre el mismo. Se ha utilizado el término elemento desconocido en lugar del més concreto concepto desconocido ya que, como se verd en diversas ocasiones a lo largo de este texto, el resultado obte- nido por las diferentes estrategias no siempre puede asociarse a un concepto. Por ejemplo, en el capitulo, dedicado al aprendizaje deductivo (capitulo 4), se obtienen particularizaciones de un concepto conocido. En este caso, lo unico que se desconoce es qué particularizaciones concretas serdn titiles con respec- to al objetivo planteado. Por ejemplo, cuando el objetivo es reconocer copas lo mas répidamente posible a partir de una teoria completa sobre éstas, se aprenden descripciones que engloban los diferentes tipos de copas reconoci- dos hasta un momento dado, con lo que se busca reducir considerablemente el reconocimiento de dichos tipos. Un concepto se asocia generalmente a una regla de clasificacién: 1.4 PERSPECTIVAS DEL APRENDIZAJE AUTOMATICO 21 Una regla de clasificacién discrimina en un espacio de objetos aquéllos que la cumplen frente a los que no. Asi, el concepto de niimero primo se corresponde con: x €s primo, si y sdlo six es un entero yx es divisible tinicamente por si mismo y por la unidad. Una regla de clasificacién es una forma de describir un conjunto. Es muy itil ver los conceptos como conjuntos, ya que el cdlculo de la teorfa de conjun- tos permite trabajar y razonar sobre conceptos. De esta forma, para un con- junto de ejemplos J existen 2! subconjuntos posibles?; por lo tanto, habré 2H! posibles conceptos distintos sobre J. El conjunto de todos los subconjuntos sobre el dominio J es el conjunto de todos los diferentes conceptos sobre I. Si dos descripciones de conceptos se refieren al mismo subconjunto de instancias, entonces se dice que dichas descripciones son sinénimas, ya que describen el mismo concepto. Cada uno de los conceptos posibles considerados a lo largo del proceso de aprendizaje se denomina hipotesis (o conceptos parcialmente aprendidos).. Como es evidente, la complejidad del proceso de busqueda depende directa- mente del ntimero total de hipétesis consideradas. Este numero, salvo en el peor de los casos, no corresponde a los mencionados 2! casos posibles, sino que viene determinado por la complejidad del espacio de hipétesis, esto es, el mimero de combinaciones posibles que se pueden dar entre los elementos que definen dicho espacio. Para tener una idea de dicha complejidad, tal y como se estudiard més adelante, suponiendo que cada ejemplo se descibe utilizando conjunciones de n caracter{sticas binarias relativas a las instancias, se tiene un total de 2l/l = 2?" posibles conceptos. En las tareas de aprendizaje se suele partir de la existencia de un lenguaje de descripcidn de conceptos que restringe el espacio de busqueda; es decir, de un formato concreto de expresiones vdlidas. Asif, retomando el concepto de ntimero primo, éste podria definirse mediante la expresién: primo(x) <=» divisible(x, 1) A divisible(z, «) Como puede apreciarse, en este caso el lenguaje permite expresar sen- tencias con ciertos predicados (divisible) unidos mediante conjunciones (A). Si suponemos que el lenguaje sdlo permite expresiones conjuntivas, entonces ntinca se podrfa haber generado una, hipétesis disyuntiva como: ?Siendo |C| el cardinal del conjunto C, el mimero de elementos en el conjunto. 22 InTRODUCCION primo(x) => divisible(z, 1) V divisible(2, 2) Por el propio sentido no exeluyente de la disyuncién idgica (V), esta ex- presién es bastante mas general que la anterior, por lo que el conjunto que representa contiene muchos més elementos (incluye ios de la conjuncién). En definitiva: La consideracién de lenguajes més restringidos conlleva la buisque- da en espacios de descripcién de conceptos més reducidos. En la figura 1.3 se puede apreciar gréficamente la representacién median- te conjuntos del concepto AV B aprendido a partir de una serie de ejemplos representados por + y —. El sfmbolo + identifica a los ejemplos positivos, 0 casos concretos que si pertenecen a la definicién de A V B. El simbolo “—” representa a los ejemplos negatives, o casos clasificados como no pertenecien- tes a dicha definicién. Como puede observarse, el concepto aprendido abarca casos negativos aislados y fuera de éste aparecen algunos casos positivos también de forma esporédica. Estos ejemplos, estadisticamente poco signifi- cativos, representan los errores cometidos en la clasificacién. Este problema se enmarca dentro de lo que se conoce con el nombre de ruido (seccién 2.3): uno de Jos factores que condicionan los resultados de la tarea de aprendizaje. En relacién con todo esto, en el capitulo 2 se analizardn la busqueda como tarea genérica (seccién 2.5) y las bias (o sesgos, también denominadas “heuristicas”) como medio de restringir dicha biisqueda (seccién 2.3). Planteamiento inferencial del aprendizaje Si en lugar de considerar el tipo de objetivos de la tarea de aprendizaje (seccién 1.3) se valora el tipo de razonamiento realizado, se puede establecer una clasificacién de las distintas estrategias. Bajo esta perspectiva los sis- temas serin deductivos, inductivos, abductivos o analdgicos, segin sean las premisas y las conclusiones alcanzadas. Para distinguir facilmente las dis- tintas posibilidades se puede utilizar la Hamada ecuacién fundamental de inferencia {Michalski, 1994]: Pus=>C (1.1) La ecuacién 1.1 expresa que la premisa P, en combinacién con todo lo que es sabido de antemano, S, determina de una forma légica el consecuente

You might also like