Articulo de referencia

Sistema clasificador de aprendizaje

Visualización en 2D de reglas LCS que aprenden a aproximarse a una función 3D. Cada elipse azul representa una regla individual que cubre parte del espacio de soluciones. (Adapt...

Visualización en 2D de reglas LCS que aprenden a aproximarse a una función 3D. Cada elipse azul representa una regla individual que cubre parte del espacio de soluciones. (Adaptado de imágenes tomadas de XCSF [1] con autorización de Martin Butz)

Los sistemas clasificadores de aprendizaje , o LCS , son un paradigma de métodos de aprendizaje automático basados ​​en reglas que combinan un componente de descubrimiento (por ejemplo, típicamente un algoritmo genético en computación evolutiva ) con un componente de aprendizaje (realizando aprendizaje supervisado , aprendizaje de refuerzo o aprendizaje no supervisado ). [2] Los sistemas clasificadores de aprendizaje buscan identificar un conjunto de reglas dependientes del contexto que almacenan y aplican colectivamente el conocimiento de manera fragmentada para hacer predicciones (por ejemplo , modelado de comportamiento , [3] clasificación , [4] [5] minería de datos , [5] [6] [7] regresión , [8] aproximación de funciones , [9] o estrategia de juego ). Este enfoque permite dividir los espacios de soluciones complejos en partes más pequeñas y simples para el aprendizaje de refuerzo que se encuentra dentro de la investigación de inteligencia artificial.

Los conceptos fundacionales detrás de los sistemas clasificadores de aprendizaje surgieron de los intentos de modelar sistemas adaptativos complejos , utilizando agentes basados ​​en reglas para formar un sistema cognitivo artificial (es decir, inteligencia artificial ).

Metodología

La arquitectura y los componentes de un sistema de clasificación de aprendizaje determinado pueden ser bastante variables. Es útil pensar en un LCS como una máquina que consta de varios componentes que interactúan. Se pueden agregar o quitar componentes, o modificar/intercambiar los componentes existentes para adaptarse a las demandas de un dominio de problema determinado (como bloques de construcción algorítmicos) o para hacer que el algoritmo sea lo suficientemente flexible como para funcionar en muchos dominios de problemas diferentes. Como resultado, el paradigma LCS se puede aplicar de manera flexible a muchos dominios de problemas que requieren aprendizaje automático . Las principales divisiones entre las implementaciones de LCS son las siguientes: (1) Arquitectura de estilo Michigan vs. Arquitectura de estilo Pittsburgh, [10] (2) aprendizaje de refuerzo vs. aprendizaje supervisado , (3) aprendizaje incremental vs. aprendizaje por lotes, (4) aprendizaje en línea vs. aprendizaje fuera de línea , (5) aptitud basada en la fuerza vs. aptitud basada en la precisión, y (6) mapeo de acción completo vs. mapeo de mejor acción. Estas divisiones no son necesariamente excluyentes entre sí. Por ejemplo, XCS, [11] el algoritmo LCS más conocido y mejor estudiado, es de estilo Michigan, fue diseñado para aprendizaje de refuerzo pero también puede realizar aprendizaje supervisado, aplica aprendizaje incremental que puede ser en línea o fuera de línea, aplica aptitud basada en precisión y busca generar un mapeo de acción completo.

Elementos de un algoritmo LCS genérico

Un esquema paso a paso que ilustra un ciclo de aprendizaje de un sistema de clasificación de aprendizaje de estilo Michigan genérico que realiza un aprendizaje supervisado

Teniendo en cuenta que el LCS es un paradigma de aprendizaje automático basado en la genética, más que un método específico, a continuación se describen los elementos clave de un algoritmo LCS genérico y moderno (es decir, posterior a XCS). Para simplificar, centrémonos en la arquitectura de estilo Michigan con aprendizaje supervisado. Vea las ilustraciones de la derecha que describen los pasos secuenciales involucrados en este tipo de LCS genérico.

Ambiente

El entorno es la fuente de datos sobre la que aprende un LCS. Puede ser un conjunto de datos de entrenamiento finito y sin conexión (característico de un problema de minería de datos , clasificación o regresión) o un flujo secuencial en línea de instancias de entrenamiento en vivo. Se supone que cada instancia de entrenamiento incluye una cierta cantidad de características (también denominadas atributos o variables independientes ) y un único punto final de interés (también denominado clase , acción , fenotipo , predicción o variable dependiente ). Parte del aprendizaje de LCS puede implicar la selección de características , por lo tanto, no todas las características en los datos de entrenamiento necesitan ser informativas. El conjunto de valores de características de una instancia se conoce comúnmente como estado . Para simplificar, supongamos un dominio de problema de ejemplo con características booleanas / binarias y una clase booleana / binaria . Para los sistemas de estilo Michigan, se entrena una instancia del entorno en cada ciclo de aprendizaje (es decir, aprendizaje incremental). Los sistemas de estilo Pittsburgh realizan aprendizaje por lotes, donde los conjuntos de reglas se evalúan en cada iteración sobre gran parte o la totalidad de los datos de entrenamiento.

Regla/clasificador/población

Una regla es una relación dependiente del contexto entre valores de estado y alguna predicción. Las reglas suelen adoptar la forma de una expresión {IF:THEN} (por ejemplo, { IF 'condition' THEN 'action'} o, como un ejemplo más específico, {IF 'red' AND 'octagon' THEN 'stop-sign'} ). Un concepto fundamental tanto en el aprendizaje automático basado en reglas como en el LCS es que una regla individual no es en sí misma un modelo, ya que la regla solo es aplicable cuando se cumple su condición. Piense en una regla como un "modelo local" del espacio de soluciones.

Las reglas se pueden representar de muchas maneras diferentes para manejar diferentes tipos de datos (por ejemplo, binarios, de valor discreto, ordinales, de valor continuo). Dados los datos binarios, LCS aplica tradicionalmente una representación de regla ternaria (es decir, las reglas pueden incluir un 0, 1 o '#' para cada característica en los datos). El símbolo 'no importa' (es decir, '#') sirve como un comodín dentro de la condición de una regla, lo que permite que las reglas y el sistema en su conjunto generalicen las relaciones entre las características y el punto final de destino que se va a predecir. Considere la siguiente regla (#1###0 ~ 1) (es decir, condición ~ acción). Esta regla se puede interpretar como: SI la segunda característica = 1 Y la sexta característica = 0 ENTONCES la predicción de clase = 1. Diríamos que la segunda y la sexta característica se especificaron en esta regla, mientras que las otras se generalizaron. Esta regla y la predicción correspondiente solo son aplicables a una instancia cuando la condición de la regla se satisface por la instancia. Esto se conoce más comúnmente como coincidencia. En los LCS de estilo Michigan, cada regla tiene su propia aptitud, así como una serie de otros parámetros de regla asociados con ella que pueden describir la cantidad de copias de esa regla que existen (es decir, la numerosidad ), la edad de la regla, su precisión o la precisión de sus predicciones de recompensa y otras estadísticas descriptivas o experienciales. Una regla junto con sus parámetros a menudo se denomina clasificador . En los sistemas de estilo Michigan, los clasificadores están contenidos dentro de una población [P] que tiene un número máximo de clasificadores definido por el usuario. A diferencia de la mayoría de los algoritmos de búsqueda estocástica (por ejemplo, algoritmos evolutivos ), las poblaciones de LCS comienzan vacías (es decir, no hay necesidad de inicializar aleatoriamente una población de reglas). En cambio, los clasificadores se introducirán inicialmente en la población con un mecanismo de cobertura.

En cualquier LCS, el modelo entrenado es un conjunto de reglas/clasificadores, en lugar de una sola regla/clasificador. En el LCS de estilo Michigan, toda la población de clasificadores entrenados (y, opcionalmente, compactados) forma el modelo de predicción.

Pareo

Uno de los elementos más críticos y que a menudo consumen más tiempo de un LCS es el proceso de coincidencia. El primer paso en un ciclo de aprendizaje de LCS toma una única instancia de entrenamiento del entorno y la pasa a [P] donde se lleva a cabo la coincidencia. En el paso dos, cada regla en [P] ahora se compara con la instancia de entrenamiento para ver qué reglas coinciden (es decir, son contextualmente relevantes para la instancia actual). En el paso tres, todas las reglas coincidentes se mueven a un conjunto de coincidencias [M]. Una regla coincide con una instancia de entrenamiento si todos los valores de característica especificados en la condición de la regla son equivalentes al valor de característica correspondiente en la instancia de entrenamiento. Por ejemplo, suponiendo que la instancia de entrenamiento es (001001 ~ 0), estas reglas coincidirían: (###0## ~ 0), (00###1 ~ 0), (#01001 ~ 1), pero estas reglas no (1##### ~ 0), (000##1 ~ 0), (#0#1#0 ~ 1). Tenga en cuenta que en la comparación, el punto final o la acción especificados por la regla no se tienen en cuenta. Como resultado, el conjunto de comparación puede contener clasificadores que propongan acciones conflictivas. En el cuarto paso, dado que estamos realizando un aprendizaje supervisado, [M] se divide en un conjunto correcto [C] y un conjunto incorrecto [I]. Una regla de comparación va al conjunto correcto si propone la acción correcta (según la acción conocida de la instancia de entrenamiento); de lo contrario, va a [I]. En el aprendizaje de refuerzo LCS, en este caso se formaría un conjunto de acciones [A], ya que no se conoce la acción correcta.

Cubierta

En este punto del ciclo de aprendizaje, si ningún clasificador llegó a [M] o [C] (como sería el caso cuando la población comienza vacía), se aplica el mecanismo de cobertura (quinto paso). La cobertura es una forma de inicialización de población inteligente en línea . La cobertura genera aleatoriamente una regla que coincide con la instancia de entrenamiento actual (y en el caso del aprendizaje supervisado, esa regla también se genera con la acción correcta. Suponiendo que la instancia de entrenamiento es (001001 ~ 0), la cobertura puede generar cualquiera de las siguientes reglas: (#0#0## ~ 0), (001001 ~ 0), (#010## ~ 0). La cobertura no solo garantiza que en cada ciclo de aprendizaje haya al menos una regla coincidente correcta en [C], sino que cualquier regla inicializada en la población coincidirá con al menos una instancia de entrenamiento. Esto evita que LCS explore el espacio de búsqueda de reglas que no coinciden con ninguna instancia de entrenamiento.

Actualizaciones de parámetros/asignación de créditos/aprendizaje

En el sexto paso, los parámetros de cualquier regla en [M] se actualizan para reflejar la nueva experiencia obtenida de la instancia de entrenamiento actual. Dependiendo del algoritmo LCS, se pueden realizar varias actualizaciones en este paso. Para el aprendizaje supervisado, podemos simplemente actualizar la precisión/error de una regla. La precisión/error de la regla es diferente a la precisión/error del modelo, ya que no se calcula sobre todos los datos de entrenamiento, sino solo sobre todas las instancias con las que coincidió. La precisión de la regla se calcula dividiendo la cantidad de veces que la regla estaba en un conjunto correcto [C] por la cantidad de veces que estaba en un conjunto coincidente [M]. La precisión de la regla se puede considerar como una "precisión local". La aptitud de la regla también se actualiza aquí y, por lo general, se calcula como una función de la precisión de la regla. El concepto de aptitud se toma directamente de los algoritmos genéticos clásicos . Tenga en cuenta que existen muchas variaciones sobre cómo LCS actualiza los parámetros para realizar la asignación de créditos y el aprendizaje.

Subsunción

En el séptimo paso, se aplica típicamente un mecanismo de subsunción . La subsunción es un mecanismo de generalización explícito que fusiona clasificadores que cubren partes redundantes del espacio de problemas. El clasificador que subsume absorbe efectivamente al clasificador subsumido (y aumenta su numerosidad). Esto solo puede suceder cuando el clasificador que subsume es más general, igual de preciso y cubre todo el espacio de problemas del clasificador que subsume.

Descubrimiento de reglas/algoritmo genético

En el octavo paso, LCS adopta un algoritmo genético (AG) altamente elitista que seleccionará dos clasificadores parentales en función de la aptitud (supervivencia del más apto). Los padres se seleccionan de [C] normalmente mediante selección de torneo . Algunos sistemas han aplicado la selección de ruleta o la selección determinista, y han seleccionado de forma diferente las reglas parentales de [P] (selección panmíctica) o de [M]). Ahora se aplican operadores de cruce y mutación para generar dos nuevas reglas de descendencia. En este punto, tanto las reglas parentales como las de descendencia se devuelven a [P]. El algoritmo genético LCS es altamente elitista ya que en cada iteración de aprendizaje se conserva la gran mayoría de la población. El descubrimiento de reglas se puede realizar alternativamente mediante algún otro método, como un algoritmo de estimación de distribución , pero un AG es, con mucho, el enfoque más común. Los algoritmos evolutivos como el AG emplean una búsqueda estocástica, lo que convierte a LCS en un algoritmo estocástico. LCS busca explorar inteligentemente el espacio de búsqueda, pero no realiza una búsqueda exhaustiva de combinaciones de reglas y no garantiza que converja en una solución óptima.

Supresión

El último paso en un ciclo de aprendizaje LCS genérico es mantener el tamaño máximo de la población. El mecanismo de eliminación seleccionará clasificadores para su eliminación (usualmente mediante selección con ruleta). La probabilidad de que se seleccione un clasificador para su eliminación es inversamente proporcional a su aptitud. Cuando se selecciona un clasificador para su eliminación, su parámetro de numerosidad se reduce en uno. Cuando la numerosidad de un clasificador se reduce a cero, se lo elimina por completo de la población.

Capacitación

LCS repetirá estos pasos repetidamente durante una cantidad de iteraciones de entrenamiento definida por el usuario o hasta que se cumplan algunos criterios de finalización definidos por el usuario. Para el aprendizaje en línea, LCS obtendrá una instancia de entrenamiento completamente nueva en cada iteración del entorno. Para el aprendizaje fuera de línea, LCS repetirá un conjunto de datos de entrenamiento finito. Una vez que llegue a la última instancia del conjunto de datos, volverá a la primera instancia y repetirá el ciclo del conjunto de datos nuevamente.

Compactación de reglas

Una vez que se completa el entrenamiento, la población de reglas inevitablemente contendrá algunas reglas deficientes, redundantes e inexpertas. Es común aplicar una compactación de reglas o una heurística de condensación como paso de posprocesamiento. Esta población de reglas compactada resultante está lista para ser aplicada como un modelo de predicción (por ejemplo, hacer predicciones en instancias de prueba) y/o para ser interpretada para el descubrimiento de conocimiento .

Predicción

Independientemente de si se ha aplicado o no la compactación de reglas, el resultado de un algoritmo LCS es una población de clasificadores que se pueden aplicar para hacer predicciones sobre instancias no vistas previamente. El mecanismo de predicción no es parte del ciclo de aprendizaje LCS supervisado en sí, sin embargo, desempeñaría un papel importante en un ciclo de aprendizaje LCS de aprendizaje de refuerzo. Por ahora, consideramos cómo se puede aplicar el mecanismo de predicción para hacer predicciones sobre datos de prueba. Al hacer predicciones, los componentes de aprendizaje LCS se desactivan para que la población no continúe aprendiendo de los datos de prueba entrantes. Se pasa una instancia de prueba a [P] donde se forma un conjunto de coincidencias [M] como de costumbre. En este punto, el conjunto de coincidencias se pasa de manera diferente a una matriz de predicción. Las reglas en el conjunto de coincidencias pueden predecir diferentes acciones, por lo tanto, se aplica un esquema de votación. En un esquema de votación simple, la acción con los "votos" de apoyo más fuertes de las reglas coincidentes gana y se convierte en la predicción seleccionada. No todas las reglas obtienen un voto igual. Más bien, la fuerza del voto para una sola regla es comúnmente proporcional a su numerosidad y aptitud. Este esquema de votación y la naturaleza de cómo los LCS almacenan el conocimiento sugieren que los algoritmos LCS son implícitamente aprendices de conjunto .

Interpretación

Las reglas LCS individuales son típicamente expresiones IF:THEN legibles por humanos. Las reglas que constituyen el modelo de predicción LCS pueden clasificarse por diferentes parámetros de regla e inspeccionarse manualmente. También se han propuesto estrategias globales para guiar el descubrimiento de conocimiento utilizando estadísticas y gráficos. [12] [13] Con respecto a otros enfoques avanzados de aprendizaje automático, como redes neuronales artificiales , bosques aleatorios o programación genética , los sistemas de clasificación de aprendizaje son particularmente adecuados para problemas que requieren soluciones interpretables.

Historia

Primeros años

John Henry Holland fue mejor conocido por su trabajo de popularización de algoritmos genéticos (AG), a través de su innovador libro "Adaptación en sistemas naturales y artificiales" [14] en 1975 y su formalización del teorema de esquema de Holland . En 1976, Holland conceptualizó una extensión del concepto de AG a lo que llamó un "sistema cognitivo", [15] y proporcionó la primera descripción detallada de lo que se conocería como el primer sistema clasificador de aprendizaje en el artículo "Sistemas cognitivos basados ​​​​en algoritmos adaptativos". [16] Este primer sistema, llamado Sistema cognitivo uno (CS-1) fue concebido como una herramienta de modelado, diseñada para modelar un sistema real (es decir, el entorno ) con dinámica subyacente desconocida utilizando una población de reglas legibles para humanos. El objetivo era que un conjunto de reglas realizara un aprendizaje automático en línea para adaptarse al entorno en función de recompensas/pagos poco frecuentes (es decir, aprendizaje de refuerzo) y aplicar estas reglas para generar un comportamiento que coincidiera con el sistema real. Esta implementación temprana y ambiciosa fue considerada más tarde como demasiado compleja y arrojó resultados inconsistentes. [2] [17]

A partir de 1980, Kenneth de Jong y su estudiante Stephen Smith adoptaron un enfoque diferente para el aprendizaje automático basado en reglas con (LS-1) , donde el aprendizaje se consideraba un proceso de optimización fuera de línea en lugar de un proceso de adaptación en línea. [18] [19] [20] Este nuevo enfoque era más similar a un algoritmo genético estándar, pero desarrolló conjuntos de reglas independientes. Desde entonces, los métodos LCS inspirados en el marco de aprendizaje en línea introducido por Holland en la Universidad de Michigan se han denominado LCS estilo Michigan , y los inspirados por Smith y De Jong en la Universidad de Pittsburgh se han denominado LCS estilo Pittsburgh . [2] [17] En 1986, Holland desarrolló lo que se consideraría el LCS estilo Michigan estándar para la próxima década. [21]

Otros conceptos importantes que surgieron en los primeros días de la investigación de LCS incluyeron (1) la formalización de un algoritmo de brigada de cubos (BBA) para la asignación de créditos/aprendizaje, [22] (2) la selección de reglas principales de un 'nicho ambiental' común (es decir, el conjunto de coincidencias [M]) en lugar de de toda la población [P], [23] (3) la cobertura , primero introducida como un operador de creación , [24] (4) la formalización de un conjunto de acciones [A], [24] (5) una arquitectura de algoritmo simplificada, [24] (6) la aptitud basada en la fuerza , [21] (7) la consideración de problemas de aprendizaje de un solo paso o supervisados ​​[25] y la introducción del conjunto correcto [C], [26] (8) la aptitud basada en la precisión [27] (9) la combinación de lógica difusa con LCS [28] (que luego generó un linaje de algoritmos LCS difusos ), (10) el fomento de largas cadenas de acciones y jerarquías predeterminadas para mejorar el rendimiento en problemas de varios pasos, [29] [30] [31] (11) el examen del aprendizaje latente (que más tarde inspiró una nueva rama de los sistemas de clasificación anticipatoria (ACS) [32] ), y (12) la introducción de la primera técnica de asignación de créditos similar al aprendizaje Q. [33] Si bien no todos estos conceptos se aplican en los algoritmos LCS modernos, cada uno de ellos fue un hito en el desarrollo del paradigma LCS.

La revolución

El interés en los sistemas de clasificación de aprendizaje se revitalizó a mediados de la década de 1990 en gran medida debido a dos eventos; el desarrollo del algoritmo Q-Learning [34] para el aprendizaje de refuerzo , y la introducción de arquitecturas LCS de estilo Michigan significativamente simplificadas por Stewart Wilson. [11] [35] El Sistema Clasificador de Nivel Cero (ZCS) de Wilson [35] se centró en aumentar la comprensibilidad algorítmica basada en la implementación LCS estándar de Hollands. [21] Esto se hizo, en parte, eliminando la licitación de reglas y la lista de mensajes internos, esenciales para la asignación de créditos BBA original, y reemplazándola con una estrategia híbrida BBA/ Q-Learning . ZCS demostró que una arquitectura LCS mucho más simple podía funcionar tan bien como las implementaciones originales, más complejas. Sin embargo, ZCS todavía sufría inconvenientes de rendimiento, incluida la proliferación de clasificadores demasiado generales.

En 1995, Wilson publicó su artículo de referencia, "Aptitud del clasificador basada en la precisión" en el que introdujo el sistema clasificador XCS . [11] XCS tomó la arquitectura simplificada de ZCS y añadió una aptitud basada en la precisión, un GA de nicho (que actúa en el conjunto de acciones [A]), un mecanismo de generalización explícito llamado subsunción y una adaptación de la asignación de créditos de Q-Learning . XCS se popularizó por su capacidad de alcanzar un rendimiento óptimo mientras desarrollaba clasificadores precisos y máximamente generales, así como por su impresionante flexibilidad de problemas (capaz de realizar tanto aprendizaje de refuerzo como aprendizaje supervisado ). XCS más tarde se convirtió en el algoritmo LCS más conocido y estudiado y definió una nueva familia de LCS basados ​​en la precisión . ZCS, alternativamente, se convirtió en sinónimo de LCS basado en la fuerza . XCS también es importante porque cerró con éxito la brecha entre LCS y el campo del aprendizaje de refuerzo . Tras el éxito de XCS, los LCS se describieron más tarde como sistemas de aprendizaje de refuerzo dotados de una capacidad de generalización. [36] El aprendizaje por refuerzo normalmente busca aprender una función de valor que trace una representación completa del espacio de estados/acción. De manera similar, el diseño de XCS lo impulsa a formar una representación completa y precisa del espacio de problemas (es decir, un mapa completo ) en lugar de centrarse en nichos de alto rendimiento en el entorno (como fue el caso con LCS basado en la fuerza). Conceptualmente, los mapas completos no solo capturan lo que debe hacer, o lo que es correcto, sino también lo que no debe hacer, o lo que es incorrecto. De manera diferente, la mayoría de los LCS basados ​​en la fuerza, o los LCS de aprendizaje supervisado exclusivamente, buscan un conjunto de reglas de generalizaciones eficientes en forma de un mejor mapa de acción (o un mapa parcial ). Desde entonces, se han examinado con mayor detalle las comparaciones entre la aptitud basada en la fuerza frente a la precisión y los mapas completos frente a los mejores de acción. [37] [38]

Tras el XCS

XCS inspiró el desarrollo de toda una nueva generación de algoritmos y aplicaciones LCS. En 1995, Congdon fue el primero en aplicar LCS a investigaciones epidemiológicas de enfermedades en el mundo real [39] seguido de cerca por Holmes, quien desarrolló BOOLE++ , [40] EpiCS , [41] y más tarde EpiXCS [42] para la clasificación epidemiológica . Estos primeros trabajos inspiraron el interés posterior en aplicar algoritmos LCS a tareas de minería de datos complejas y a gran escala personificadas por aplicaciones bioinformáticas . En 1998, Stolzmann introdujo sistemas de clasificación anticipatoria (ACS) que incluían reglas en forma de "condición-acción-efecto", en lugar de la clásica representación "condición-acción". [32] ACS fue diseñado para predecir las consecuencias perceptivas de una acción en todas las situaciones posibles en un entorno. En otras palabras, el sistema desarrolla un modelo que no solo especifica qué hacer en una situación dada, sino que también proporciona información de lo que sucederá después de que se ejecute una acción específica. Esta familia de algoritmos LCS es la más adecuada para problemas de varios pasos, planificación, aceleración del aprendizaje o desambiguación del aliasing perceptual (es decir, donde la misma observación se obtiene en estados distintos pero requiere acciones diferentes). Butz luego persiguió esta familia anticipatoria de LCS desarrollando una serie de mejoras al método original. [43] En 2002, Wilson introdujo XCSF , agregando una acción calculada para realizar la aproximación de funciones. [44] En 2003, Bernado-Mansilla introdujo un Sistema Clasificador Supervisado (UCS) , que especializó el algoritmo XCS para la tarea de aprendizaje supervisado , problemas de un solo paso y formación de un conjunto de mejores acciones. UCS eliminó la estrategia de aprendizaje de refuerzo a favor de una aptitud de reglas simple basada en la precisión, así como las fases de aprendizaje de exploración/explotación, características de muchos aprendices de refuerzo. Bull introdujo un sistema de clasificación mínima basado en precisión (YCS) [45] y un sistema de clasificación mínima basado en fuerza (MCS) [46] para desarrollar una mejor comprensión teórica del marco de LCS. Bacardit introdujo GAssist [47] y BioHEL [48] , sistemas de clasificación mínima de estilo Pittsburgh diseñados para la minería de datos y la escalabilidad a grandes conjuntos de datos en bioinformática.aplicaciones. En 2008, Drugowitsch publicó el libro titulado "Diseño y análisis de sistemas clasificadores de aprendizaje" que incluye un examen teórico de los algoritmos LCS. [49] Butz introdujo la primera visualización de reglas de aprendizaje en línea dentro de una GUI para XCSF [1] (ver la imagen en la parte superior de esta página). Urbanowicz amplió el marco UCS e introdujo ExSTraCS, diseñado explícitamente para el aprendizaje supervisado en dominios de problemas ruidosos (por ejemplo, epidemiología y bioinformática). [50] ExSTraCS integró (1) conocimiento experto para impulsar la cobertura y el algoritmo genético hacia características importantes en los datos, [51] (2) una forma de memoria a largo plazo denominada seguimiento de atributos, [52] que permite un aprendizaje más eficiente y la caracterización de patrones de datos heterogéneos, y (3) una representación de reglas flexible similar a la representación de lista de atributos discreta-continua mixta de Bacardit. [53] Tanto Bacardit como Urbanowicz exploraron estrategias estadísticas y de visualización para interpretar las reglas LCS y realizar el descubrimiento de conocimiento para la minería de datos. [12] [13] Browne e Iqbal exploraron el concepto de reutilizar bloques de construcción en forma de fragmentos de código y fueron los primeros en resolver el problema de referencia del multiplexor de 135 bits al aprender primero bloques de construcción útiles de problemas de multiplexor más simples. [54] ExSTraCS 2.0 se introdujo más tarde para mejorar la escalabilidad del LCS de estilo Michigan, resolviendo con éxito el problema de referencia del multiplexor de 135 bits por primera vez de manera directa. [5] El problema del multiplexor de n bits es altamente epistático y heterogéneo , lo que lo convierte en una tarea de aprendizaje automático muy desafiante .

Variantes

Sistema de clasificación de aprendizaje al estilo Michigan

Los sistemas de aprendizaje automático de estilo Michigan se caracterizan por una población de reglas en la que el algoritmo genético opera a nivel de reglas individuales y la solución está representada por toda la población de reglas. Los sistemas de estilo Michigan también aprenden de forma incremental, lo que les permite realizar tanto aprendizaje de refuerzo como aprendizaje supervisado, así como aprendizaje en línea y fuera de línea. Los sistemas de estilo Michigan tienen la ventaja de ser aplicables a una mayor cantidad de dominios de problemas y los beneficios únicos del aprendizaje incremental.

Sistema de clasificación de aprendizaje al estilo de Pittsburgh

Los sistemas de clasificación de estilo Pittsburgh se caracterizan por una población de conjuntos de reglas de longitud variable, donde cada conjunto de reglas es una solución potencial. El algoritmo genético normalmente opera a nivel de un conjunto de reglas completo. Los sistemas de estilo Pittsburgh también pueden desarrollar de manera única listas de reglas ordenadas, así como emplear una regla predeterminada. Estos sistemas tienen la ventaja natural de identificar conjuntos de reglas más pequeños, lo que hace que estos sistemas sean más interpretables con respecto a la inspección manual de reglas.

Sistemas híbridos

También se han propuesto sistemas que buscan combinar las fortalezas clave de ambos sistemas.

Ventajas

  • Adaptables: Pueden aclimatarse a un entorno cambiante en el caso del aprendizaje en línea.
  • Modelo libre: Hacen suposiciones limitadas sobre el entorno o los patrones de asociación dentro de los datos.
    • Pueden modelar patrones subyacentes complejos, epistáticos, heterogéneos o distribuidos sin depender de conocimientos previos.
    • No hacen suposiciones sobre el número de características predictivas y no predictivas en los datos.
  • Aprendizaje en conjunto: no se aplica ningún modelo único a una instancia dada que proporcione una predicción universal. En cambio, un conjunto de reglas relevantes y a menudo contradictorias aporta un "voto" que puede interpretarse como una predicción difusa.
  • Aprendiz estocástico: el aprendizaje no determinista es ventajoso en problemas de gran escala o de alta complejidad donde el aprendizaje determinista o exhaustivo se vuelve intratable.
  • Implícitamente multiobjetivo: las reglas evolucionan hacia la precisión con presiones implícitas y explícitas que fomentan la máxima generalidad/simplicidad. Esta presión de generalización implícita es exclusiva de LCS. Efectivamente, las reglas más generales aparecerán con mayor frecuencia en los conjuntos de coincidencias. A su vez, tienen una oportunidad más frecuente de ser seleccionadas como progenitoras y transmitir sus reglas más generales (genomas) a la descendencia.
  • Interpretables: En beneficio de la minería de datos y el descubrimiento de conocimientos, las reglas LCS individuales son lógicas y pueden convertirse en declaraciones IF:THEN interpretables por humanos. También se han introducido estrategias efectivas para permitir el descubrimiento de conocimientos globales que identifiquen características significativas y patrones de asociación a partir de la población de reglas en su conjunto. [12]
  • Aplicación flexible
    • Problemas de uno o varios pasos
    • Aprendizaje supervisado, reforzado o no supervisado
    • Clasificación de clases binarias y multiclases
    • Regresión
    • Características discretas o continuas (o alguna combinación de ambos tipos)
    • Dominios problemáticos limpios o ruidosos
    • Conjuntos de datos equilibrados o desequilibrados.
    • Admite datos faltantes (es decir, valores de características faltantes en instancias de entrenamiento)

Desventajas

  • Disponibilidad limitada de software: hay un número limitado de implementaciones de LCS accesibles y de código abierto, y aún menos que estén diseñadas para ser fáciles de usar o accesibles para los profesionales del aprendizaje automático.
  • Interpretación: si bien los algoritmos LCS son ciertamente más interpretables que algunos programas de aprendizaje automático avanzados, los usuarios deben interpretar un conjunto de reglas (a veces, grandes conjuntos de reglas para comprender el modelo LCS). Los métodos para la compactación de reglas y las estrategias de interpretación siguen siendo un área de investigación activa.
  • Pruebas de convergencia y teoría: existe un volumen relativamente pequeño de trabajo teórico detrás de los algoritmos LCS. Esto probablemente se deba a su relativa complejidad algorítmica (aplicación de una serie de componentes que interactúan) así como a su naturaleza estocástica.
  • Sobreajuste: como cualquier aprendizaje automático, LCS puede sufrir sobreajuste a pesar de las presiones de generalización implícitas y explícitas.
  • Parámetros de ejecución: los LCS suelen tener muchos parámetros de ejecución que se deben tener en cuenta u optimizar. Normalmente, la mayoría de los parámetros se pueden dejar en manos de los valores predeterminados determinados por la comunidad, con la excepción de dos parámetros críticos: el tamaño máximo de la población de reglas y el número máximo de iteraciones de aprendizaje. Es probable que la optimización de estos parámetros dependa en gran medida del problema.
  • Notoriedad: A pesar de su antigüedad, los algoritmos LCS aún no son muy conocidos, ni siquiera en las comunidades de aprendizaje automático. Como resultado, rara vez se los tiene en cuenta en comparación con otros enfoques de aprendizaje automático establecidos. Esto probablemente se deba a los siguientes factores: (1) LCS es un enfoque algorítmico relativamente complicado, (2) LCS, el modelado basado en reglas es un paradigma de modelado diferente a casi todos los demás enfoques de aprendizaje automático. (3) Las implementaciones de software LCS no son tan comunes.
  • Costoso en términos computacionales: si bien son ciertamente más factibles que algunos enfoques exhaustivos, los algoritmos LCS pueden ser costosos en términos computacionales. Para problemas de aprendizaje lineal simples, no es necesario aplicar un LCS. Los algoritmos LCS son más adecuados para espacios de problemas complejos o espacios de problemas en los que existe poco conocimiento previo.

Dominios problemáticos

  • Control adaptativo
  • Minería de datos
  • Diseño de ingeniería
  • Selección de funciones
  • Aproximación de funciones
  • Jugabilidad
  • Clasificación de imágenes
  • Manejo del conocimiento
  • Diagnóstico médico
  • Modelado
  • Navegación
  • Mejoramiento
  • Predicción
  • Consultando
  • Robótica
  • Enrutamiento
  • Inducción de reglas
  • Programación
  • Estrategia

Terminología

El nombre, "Sistema Clasificador de Aprendizaje (LCS)", es un poco engañoso ya que hay muchos algoritmos de aprendizaje automático que "aprenden a clasificar" (por ejemplo, árboles de decisión , redes neuronales artificiales ), pero no son LCS. El término "aprendizaje automático basado en reglas ( RBML )" es útil, ya que captura más claramente el componente "basado en reglas" esencial de estos sistemas, pero también se generaliza a métodos que no se consideran LCS (por ejemplo , aprendizaje de reglas de asociación o sistemas inmunes artificiales ). Términos más generales como "aprendizaje automático basado en genética" e incluso "algoritmo genético" [39] también se han aplicado para referirse a lo que se definiría más característicamente como un sistema clasificador de aprendizaje. Debido a su similitud con los algoritmos genéticos , los sistemas clasificadores de aprendizaje de estilo Pittsburgh a veces se denominan genéricamente "algoritmos genéticos". Más allá de esto, algunos algoritmos LCS, o métodos estrechamente relacionados, han sido denominados "sistemas cognitivos", [16] "agentes adaptativos", " sistemas de producción " o genéricamente como "sistema clasificador". [55] [56] Esta variación en la terminología contribuye a cierta confusión en el campo.

Hasta la década de 2000, casi todos los métodos de sistemas de clasificación de aprendizaje se desarrollaron teniendo en cuenta los problemas de aprendizaje de refuerzo. Como resultado, el término "sistema de clasificación de aprendizaje" se definió comúnmente como la combinación del aprendizaje de refuerzo de "prueba y error" con la búsqueda global de un algoritmo genético. Desde entonces, el interés en las aplicaciones de aprendizaje supervisado, e incluso en el aprendizaje no supervisado, ha ampliado el uso y la definición de este término.

Véase también

Referencias

  1. ^ ab Stalph, Patrick O.; Butz, Martin V. (1 de febrero de 2010). "JavaXCSF: El sistema clasificador de aprendizaje XCSF en Java". ACM SIGEVOlution . 4 (3): 16– 19. doi :10.1145/1731888.1731890. ISSN  1931-8499. S2CID  16861908.
  2. ^ abc Urbanowicz, Ryan J.; Moore, Jason H. (22 de septiembre de 2009). "Sistemas de clasificación de aprendizaje: una introducción completa, revisión y hoja de ruta". Revista de evolución artificial y aplicaciones . 2009 : 1– 25. doi : 10.1155/2009/736398 . ISSN  1687-6229.
  3. ^ Dorigo, Marco (1995). "Alecsys y el AutonoMouse: Aprendiendo a controlar un robot real mediante sistemas clasificadores distribuidos". Machine Learning . 19 (3): 209– 240. doi : 10.1007/BF00996270 . ISSN  0885-6125.
  4. ^ Bernadó-Mansilla, Ester; Garrell-Guiu, Josep M. (1 de septiembre de 2003). "Sistemas clasificadores basados ​​en aprendizaje preciso: modelos, análisis y aplicaciones a tareas de clasificación". Computación evolutiva . 11 (3): 209– 238. doi :10.1162/106365603322365289. ISSN  1063-6560. PMID  14558911. S2CID  9086149.
  5. ^ abc Urbanowicz, Ryan J.; Moore, Jason H. (3 de abril de 2015). "ExSTraCS 2.0: descripción y evaluación de un sistema de clasificación de aprendizaje escalable". Inteligencia evolutiva . 8 ( 2–3 ): 89–116 . doi :10.1007/s12065-015-0128-8. ISSN  1864-5909. PMC 4583133 . PMID  26417393. 
  6. ^ Bernadó, Ester; Llorà, Xavier; Garrell, Josep M. (7 de julio de 2001). "XCS y GALE: un estudio comparativo de dos sistemas de clasificación de aprendizaje en minería de datos". En Lanzi, Pier Luca; Stolzmann, Wolfgang; Wilson, Stewart W. (eds.). Avances en sistemas de clasificación de aprendizaje . Lecture Notes in Computer Science. Vol. 2321. Springer Berlin Heidelberg. págs. 115–132. doi :10.1007/3-540-48104-4_8. ISBN. 9783540437932.
  7. ^ Bacardit, Jaume; Butz, Martin V. (1 de enero de 2007). "Minería de datos en sistemas de clasificación de aprendizaje: comparación de XCS con GAssist". En Kovacs, Tim; Llorà, Xavier; Takadama, Keiki; Lanzi, Pier Luca; Stolzmann, Wolfgang; Wilson, Stewart W. (eds.). Sistemas de clasificación de aprendizaje . Apuntes de clase en informática. Vol. 4399. Springer Berlin Heidelberg. págs. 282–290. CiteSeerX 10.1.1.553.4679 . doi :10.1007/978-3-540-71231-2_19. ISBN .  9783540712305.
  8. ^ Urbanowicz, Ryan; Ramanand, Niranjan; Moore, Jason (1 de enero de 2015). "Minería de datos de punto final continua con ExSTraCS". Actas de la publicación complementaria de la Conferencia anual de 2015 sobre computación genética y evolutiva . GECCO Companion '15. Nueva York, NY, EE. UU.: ACM. págs.  1029– 1036. doi :10.1145/2739482.2768453. ISBN 9781450334884.S2CID11908241  .
  9. ^ Butz, MV; Lanzi, PL; Wilson, SW (1 de junio de 2008). "Aproximación de funciones con XCS: condiciones hiperelipsoidales, mínimos cuadrados recursivos y compactación". IEEE Transactions on Evolutionary Computation . 12 (3): 355– 376. doi :10.1109/TEVC.2007.903551. ISSN  1089-778X. S2CID  8861046.
  10. ^ Introducción al aprendizaje automático basado en reglas: una guía práctica, Ryan J. Urbanowicz y Will Browne, consulte las páginas 72-73 para comparar la arquitectura estilo Michigan con la arquitectura estilo Pittsburgh.
  11. ^ abc Wilson, Stewart W. (1 de junio de 1995). "Aptitud de clasificadores basada en precisión". Evol. Comput . 3 (2): 149– 175. CiteSeerX 10.1.1.363.2210 . doi :10.1162/evco.1995.3.2.149. ISSN  1063-6560. S2CID  18341635. 
  12. ^ abc Urbanowicz, RJ; Granizo-Mackenzie, A.; Moore, JH (1 de noviembre de 2012). "Una secuencia de análisis con descubrimiento de conocimiento guiado por visualización y estadística para sistemas de clasificación de aprendizaje de estilo Michigan". Revista IEEE Computational Intelligence . 7 (4): 35– 45. doi :10.1109/MCI.2012.2215124. ISSN  1556-603X. PMC 4244006 . PMID  25431544. 
  13. ^ ab Bacardit, Jaume; Llorà, Xavier (2013). "Minería de datos a gran escala utilizando aprendizaje automático basado en genética". Wiley Interdisciplinary Reviews: Minería de datos y descubrimiento de conocimiento . 3 (1): 37– 61. doi :10.1002/widm.1078. S2CID  43062613.
  14. ^ Holland, John (1975). Adaptación en sistemas naturales y artificiales: un análisis introductorio con aplicaciones a la biología, el control y la inteligencia artificial. Michigan Press. ISBN 9780262581110.
  15. ^ Holland JH (1976) Adaptación. En: Rosen R, Snell F (eds) Progreso en biología teórica, vol. 4. Academic Press, Nueva York, págs. 263-293
  16. ^ ab Holland JH, Reitman JS (1978) Sistemas cognitivos basados ​​en algoritmos adaptativos Reimpreso en: Computación evolutiva. El registro fósil. En: David BF (ed) IEEE Press, Nueva York 1998. ISBN 0-7803-3481-7 
  17. ^ ab Lanzi, Pier Luca (8 de febrero de 2008). "Sistemas de clasificación de aprendizaje: entonces y ahora". Inteligencia evolutiva . 1 (1): 63– 82. doi :10.1007/s12065-007-0003-3. ISSN  1864-5909. S2CID  27153843.
  18. ^ Smith S (1980) Un sistema de aprendizaje basado en algoritmos adaptativos genéticos. Tesis doctoral, Departamento de Ciencias de la Computación, Universidad de Pittsburgh
  19. ^ Smith S (1983) Aprendizaje flexible de heurísticas de resolución de problemas mediante búsqueda adaptativa. En: Octava conferencia conjunta internacional sobre inteligencia artificial. Morgan Kaufmann, Los Altos, págs. 421-425
  20. ^ De Jong KA (1988) Aprendizaje con algoritmos genéticos: una descripción general. Mach Learn 3:121–138
  21. ^ abc Holland, John H. "Escapando de la fragilidad: las posibilidades de los algoritmos de aprendizaje de propósito general aplicados a sistemas paralelos basados ​​en reglas". Aprendizaje automático (1986): 593-623.
  22. ^ Holland, John H. (1 de enero de 1985). Propiedades de la Bucket Brigade. Hillsdale, NJ, EE. UU.: L. Erlbaum Associates Inc., págs.  1–7 . ISBN 978-0805804263. {{cite book}}: |journal=ignorado ( ayuda )
  23. ^ Booker, L (1 de enero de 1982). El comportamiento inteligente como adaptación al entorno de tareas (tesis). Universidad de Michigan.
  24. ^ abc Wilson, SW "Crecimiento del conocimiento en un animal artificial. Actas de la Primera Conferencia Internacional sobre Algoritmos Genéticos y sus Aplicaciones". (1985).
  25. ^ Wilson, Stewart W. (1987). "Sistemas clasificadores y el problema animat". Aprendizaje automático . 2 (3): 199– 228. doi : 10.1007/BF00058679 . ISSN  0885-6125.
  26. ^ Bonelli, Pierre; Parodi, Alexandre; Sen, Sandip; Wilson, Stewart (1 de enero de 1990). NEWBOOLE: Un sistema GBML rápido . San Francisco, CA, EE. UU.: Morgan Kaufmann Publishers Inc., págs. 153-159. ISBN 978-1558601413. {{cite book}}: |journal=ignorado ( ayuda )
  27. ^ Frey, Peter W.; Slate, David J. (1991). "Reconocimiento de letras utilizando clasificadores adaptativos de estilo Holland". Aprendizaje automático . 6 (2): 161– 182. doi : 10.1007/BF00114162 . ISSN  0885-6125.
  28. ^ Valenzuela-Rendón, Manuel. "El sistema clasificador difuso: un sistema clasificador para variables que varían continuamente". En ICGA , pp. 346-353. 1991.
  29. ^ Riolo, Rick L. (1 de enero de 1988). Estudios empíricos de jerarquías predeterminadas y secuencias de reglas en sistemas de clasificación de aprendizaje (tesis). Ann Arbor, MI, EE. UU.: Universidad de Michigan.
  30. ^ RL, Riolo (1 de enero de 1987). "Rendimiento de la brigada de cubos. I. Secuencias largas de clasificadores". Algoritmos genéticos y sus aplicaciones: Actas de la Segunda Conferencia Internacional sobre Algoritmos Genéticos: 28-31 de julio de 1987 en el Instituto Tecnológico de Massachusetts, Cambridge, MA .
  31. ^ RL, Riolo (1 de enero de 1987). "Rendimiento de la brigada de cubos. II. Jerarquías predeterminadas". Algoritmos genéticos y sus aplicaciones: Actas de la Segunda Conferencia Internacional sobre Algoritmos Genéticos: 28-31 de julio de 1987 en el Instituto Tecnológico de Massachusetts, Cambridge, MA .
  32. ^ ab W. Stolzmann, "Sistemas clasificadores anticipatorios", en Actas de la 3.ª Conferencia Anual de Programación Genética, págs. 658-664, 1998.
  33. ^ Riolo, Rick L. (1 de enero de 1990). Planificación anticipada y aprendizaje latente en un sistema clasificador. Cambridge, MA, EE. UU.: MIT Press. pp.  316– 326. ISBN 978-0262631389. {{cite book}}: |journal=ignorado ( ayuda )
  34. ^ Watkins, Christopher John Cornish Hellaby. "Aprender de las recompensas retrasadas". Tesis doctoral, Universidad de Cambridge, 1989.
  35. ^ ab Wilson, Stewart W. (1994-03-01). "ZCS: Un sistema clasificador de nivel cero". Computación evolutiva . 2 (1): 1– 18. CiteSeerX 10.1.1.363.798 . doi :10.1162/evco.1994.2.1.1. ISSN  1063-6560. S2CID  17680778. 
  36. ^ Lanzi, PL (2002). "Sistemas clasificadores de aprendizaje desde una perspectiva de aprendizaje por refuerzo". Soft Computing . 6 ( 3– 4): 162– 170. doi :10.1007/s005000100113. ISSN  1432-7643. S2CID  39103390.
  37. ^ Kovacs, Timothy Michael Douglas. Una comparación de la aptitud física basada en la fuerza y ​​la precisión en sistemas de aprendizaje y de clasificación . 2002.
  38. ^ Kovacs, Tim (2002). "Dos visiones de los sistemas clasificadores". Avances en el aprendizaje de sistemas clasificadores . Apuntes de clase en informática. Vol. 2321. págs.  74– 87. doi :10.1007/3-540-48104-4_6. ISBN 978-3-540-43793-2.
  39. ^ ab Congdon, Clare Bates. "Una comparación de algoritmos genéticos y otros sistemas de aprendizaje automático en una tarea de clasificación compleja a partir de la investigación de enfermedades comunes". Tesis doctoral, Universidad de Michigan, 1995.
  40. ^ Holmes, John H. (1 de enero de 1996). "Un enfoque de aprendizaje automático basado en la genética para el descubrimiento de conocimientos en datos clínicos". Actas del Simposio Anual de Otoño de la AMIA : 883. ISSN  1091-8280. PMC 2233061 . 
  41. ^ Holmes, John H. "Descubrimiento del riesgo de enfermedad con un sistema de clasificación de aprendizaje". En ICGA , págs. 426-433. 1997.
  42. ^ Holmes, John H. y Jennifer A. Sager. "Descubrimiento de reglas en datos de vigilancia epidemiológica utilizando EpiXCS: un enfoque computacional evolutivo". En Conferencia sobre Inteligencia Artificial en Medicina en Europa , págs. 444-452. Springer Berlin Heidelberg, 2005.
  43. ^ Butz, Martin V. "Exploración de sesgos en un sistema de clasificación de aprendizaje anticipatorio". En International Workshop on Learning Classifier Systems , págs. 3-22. Springer Berlin Heidelberg, 2001.
  44. ^ Wilson, Stewart W. (2002). "Clasificadores que aproximan funciones". Natural Computing . 1 ( 2– 3): 211– 234. doi :10.1023/A:1016535925043. ISSN  1567-7818. S2CID  23032802.
  45. ^ Bull, Larry. "Un sistema de clasificación de aprendizaje simple basado en la precisión". Informe técnico del grupo de sistemas de clasificación de aprendizaje UWELCSG03-005, Universidad del Oeste de Inglaterra, Bristol, Reino Unido (2003).
  46. ^ Bull, Larry. "Un sistema clasificador de aprendizaje basado en resultados simple". En International Conference on Parallel Problem Solving from Nature , págs. 1032-1041. Springer Berlin Heidelberg, 2004.
  47. ^ Peñarroya, Jaume Bacardit. "Aprendizaje automático basado en genética de Pittsburgh en la era de la minería de datos: representaciones, generalización y tiempo de ejecución". Tesina doctoral, Universitat Ramon Llull, 2004.
  48. ^ Bacardit, Jaume; Burke, Edmund K.; Krasnogor, Natalio (12 de diciembre de 2008). "Mejora de la escalabilidad del aprendizaje evolutivo basado en reglas". Computación memética . 1 (1): 55– 67. doi :10.1007/s12293-008-0005-4. ISSN  1865-9284. S2CID  775199.
  49. ^ Drugowitsch, Jan (2008). Diseño y análisis de sistemas de clasificación de aprendizaje - Springer . Estudios en inteligencia computacional. Vol. 139. doi :10.1007/978-3-540-79866-8. ISBN 978-3-540-79865-1.
  50. ^ Urbanowicz, Ryan J., Gediminas Bertasius y Jason H. Moore. "Un sistema de clasificación de aprendizaje de estilo Michigan extendido para aprendizaje supervisado flexible, clasificación y minería de datos". En la Conferencia internacional sobre resolución paralela de problemas de la naturaleza , págs. 211-221. Springer International Publishing, 2014.
  51. ^ Urbanowicz, Ryan J., Delaney Granizo-Mackenzie y Jason H. Moore. "Uso de conocimientos expertos para guiar la cobertura y la mutación en un sistema clasificador de aprendizaje de estilo Michigan para detectar epistasis y heterogeneidad". En International Conference on Parallel Problem Solving from Nature , págs. 266-275. Springer Berlin Heidelberg, 2012.
  52. ^ Urbanowicz, Ryan; Granizo-Mackenzie, Ambrose; Moore, Jason (1 de enero de 2012). "Seguimiento de atributos vinculados a instancias y retroalimentación para sistemas clasificadores de aprendizaje supervisado de estilo Michigan". Actas de la 14.ª conferencia anual sobre computación genética y evolutiva . GECCO '12. Nueva York, NY, EE. UU.: ACM. pp.  927– 934. doi :10.1145/2330163.2330291. ISBN . 9781450311779.S2CID 142534  .
  53. ^ Bacardit, Jaume; Krasnogor, Natalio (1 de enero de 2009). "Una representación de lista de atributos discreta y continua mixta para dominios de clasificación a gran escala". Actas de la 11.ª conferencia anual sobre computación genética y evolutiva . GECCO '09. Nueva York, NY, EE. UU.: ACM. pp.  1155– 1162. CiteSeerX 10.1.1.158.7314 . doi :10.1145/1569901.1570057. ISBN .  9781605583259.S2CID10906515  .
  54. ^ Iqbal, Muhammad; Browne, Will N.; Zhang, Mengjie (1 de agosto de 2014). "Reutilización de bloques de construcción de conocimiento extraído para resolver problemas booleanos complejos a gran escala". IEEE Transactions on Evolutionary Computation . 18 (4): 465– 480. doi :10.1109/tevc.2013.2281537. S2CID  525358.
  55. ^ Booker, LB; Goldberg, DE; Holland, JH (1989-09-01). "Sistemas clasificadores y algoritmos genéticos" (PDF) . Inteligencia Artificial . 40 (1): 235– 282. doi :10.1016/0004-3702(89)90050-7. hdl : 2027.42/27777 .
  56. ^ Wilson, Stewart W. y David E. Goldberg. "Una revisión crítica de los sistemas clasificadores". En Actas de la tercera conferencia internacional sobre algoritmos genéticos , págs. 244-255. Morgan Kaufmann Publishers Inc., 1989.

Videotutorial

  • Aprendiendo sistemas clasificadores en pocas palabras - (2016) Conozca el interior de un algoritmo LCS básico para aprender sus componentes y cómo funcionan.

Páginas web

  • Centro de LCS y GBML
  • Grupo de investigación sobre clasificadores de aprendizaje de la UWE
  • Dinámica de predicción
Obtenido de "https://es.wikipedia.org/w/index.php?title=Sistema_clasificador_del_aprendizaje&oldid=1248495184"