Respuesta

12

Existen métodos evolutivos que están explícitamente dirigidos a resolver el problema de aprendizaje de refuerzo. El subcampo generalmente recibe el nombre de Learning Classifier Systems (LCS) u, ocasionalmente, de Aprendizaje automático basado en genética (GBML).

Aparte de eso, no estoy seguro de que su pregunta tenga una respuesta muy bien definida. Básicamente se reduce a "¿qué es el aprendizaje automático?" No hay un canon en el que todos hayamos acordado cómo responder esa pregunta. Para algunos, EC podría ser una parte de ese subcampo. Para otros, no lo es. Acabo de probar un puñado de libros de texto ML de mi estante, y aproximadamente la mitad contenía material sobre métodos evolutivos. Sospecho que hace 15 años esa fracción habría sido más alta, pero las modas cambian, y el aprendizaje automático es ahora casi un subcampo de las estadísticas. Los métodos de EC no se adaptan muy bien a ese molde.

+0

Esta es la mejor respuesta hasta el momento, pero seguiré buscando ... ¡Gracias por la excelente respuesta! –

5

El cálculo evolutivo, o algoritmos evolutivos, son algoritmos de optimización que, cuando se aplican a una red neuronal (como la neuroevolución) pueden clasificarse como una forma de aprendizaje de refuerzo, aunque funcionan de forma diferente a la habitual algoritmo de aprendizaje de refuerzo.

Generalmente, en algoritmos evolutivos como algoritmos genéticos o estrategia de evolución, tiene una población completa de individuos para optimizar. Para cada uno de esos individuos, se utiliza una función de calidad para determinar su "aptitud" (como en "supervivencia del más apto"), y los mejores individuos se seleccionan para la próxima generación. Esos "padres" se duplican aleatoriamente, se modifican, se mutan o incluso se recombinan entre sí: cómo se hace exactamente esto es algo diferente en cada uno de los diferentes algoritmos. Finalmente, esos nuevos padres mutados y/o recombinados forman la población para la próxima generación, y el proceso comienza de nuevo, hasta que se alcanza cierta calidad deseada, o la calidad se nivela.

En el caso de la neuroevolución, los individuos son redes neuronales, que están mutadas al cambiar aleatoriamente los pesos (mientras que en las redes neuronales clásicas los pesos se actualizan según reglas matemáticas muy precisas) o incluso alteran su topología, y la calidad de los individuos está determinada por su desempeño en los datos de entrenamiento.

Lo sentimos, no hay referencias científicas duras aquí, pero tal vez esto todavía ayudó a aclarar un poco las cosas.

+0

gracias por la respuesta, pero el problema principal es la clasificación de los algoritmos evolutivos en relación con el aprendizaje de refuerzo en una referencia confiable –

+1

No estoy de acuerdo. RL requiere interacción con el entorno a través de secuencias de estados y acciones. Los algoritmos evolutivos simplemente no se ajustan a este molde. – danelliottster

5

La principal diferencia entre el aprendizaje de refuerzo [1] y el cálculo evolutivo [2] es que RL en el sentido original se aplica a un agente en un entorno, aprendiendo una política (también vea el artículo de Wikipedia en reinforcement learning), mientras que EC es un término más genérico para una clase de algoritmos de búsqueda que utiliza métodos inspirados en la "evolución" para optimizar la búsqueda. No clasificaría EC como aprendizaje automático en absoluto, y no he encontrado una fuente que lo haga.

[1] aprendizaje Refuerzo: Una introducción - RS Sutton, Barto AG - 1998 - Cambridge University Press

[2] ¿Qué es la computación evolutiva? - DB Fogel - Spectrum, IEEE, 2000

+0

buena respuesta, pero he visto una presentación de una universidad donde dice que uno de los métodos ML es evolutivo. plus see here: http://local.wasp.uwa.edu.au/~derek/files/ncca/talks/ecg/research/html/ec.html Dice "Algunos autores clasifican a EC como un tipo específico de ML" , lo que necesitamos es alguna referencia, precisamente, hablando de esto –

+0

Como nota aparte [1] menciona que RL puede usarse para abordar problemas de planificación que es un uso común de la computación evolutiva. – danelliottster

0

Entonces, ¿dónde está el cálculo evolutivo? ¿Es un método de aprendizaje de refuerzo? ¿O un método separado de aprendizaje automático? o tal vez ninguno?

Veo EC y ML como distintos entre sí. Sin embargo, hay algunas aplicaciones excelentes por ahí cuando se usan en conjunto. Aunque esta ha sido una pequeña área de investigación durante bastante tiempo, creo que hay algunas frutas de bajo perfil en el área de la combinación de EC y ML. Creo que muchas personas no tienen la paciencia para ver esas ideas.

Cuestiones relacionadas