Un algoritmo adaptativo es un algoritmo que cambia su comportamiento en el momento de su ejecución, [1] basándose en la información disponible y en un mecanismo de recompensa definido a priori (o criterio). Dicha información podría ser la historia de datos recibidos recientemente, información sobre los recursos computacionales disponibles u otra información adquirida en tiempo de ejecución (o conocida a priori ) relacionada con el entorno en el que opera.
Entre los algoritmos adaptativos más utilizados se encuentra el de mínimos cuadrados medios (LMS) de Widrow-Hoff , que representa una clase de algoritmos estocásticos de descenso de gradiente utilizados en el filtrado adaptativo y el aprendizaje automático. En el filtrado adaptativo, el LMS se utiliza para imitar un filtro deseado al encontrar los coeficientes de filtro que se relacionan con la producción del mínimo cuadrado medio de la señal de error (diferencia entre la señal deseada y la real).
Por ejemplo, la partición estable , que no usa memoria adicional, es O ( n lg n ) pero dada la memoria O ( n ), puede ser O ( n ) en el tiempo. Tal como lo implementa la biblioteca estándar de C ++ , stable_partition
es adaptable y, por lo tanto, adquiere tanta memoria como puede obtener (hasta lo que necesitaría como máximo) y aplica el algoritmo utilizando esa memoria disponible. Otro ejemplo es el género adaptativo , cuyo comportamiento cambia según la clasificación previa de su entrada.
Un ejemplo de un algoritmo adaptativo en sistemas de radar es el detector de tasa constante de falsas alarmas (CFAR).
En el aprendizaje automático y la optimización , muchos algoritmos son adaptables o tienen variantes adaptativas, lo que generalmente significa que los parámetros del algoritmo, como la tasa de aprendizaje, se ajustan automáticamente de acuerdo con las estadísticas sobre la optimización hasta el momento (por ejemplo, la tasa de convergencia ). [2] Los ejemplos incluyen recocido simulado adaptativo , coordinar descenso de adaptación , en cuadratura adaptativa , AdaBoost , Adagrad , Adadelta, RMSprop , y Adam . [3]
En la compresión de datos , los algoritmos de codificación adaptativa como la codificación Adaptive Huffman o la Predicción por coincidencia parcial pueden tomar un flujo de datos como entrada y adaptar su técnica de compresión en función de los símbolos que ya han encontrado. [4]
En el procesamiento de señales , el códec Adaptive Transform Acoustic Coding (ATRAC) utilizado en las grabadoras MiniDisc se denomina "adaptativo" porque la longitud de la ventana (el tamaño de un "fragmento" de audio) puede cambiar según la naturaleza del sonido que se comprime, para intentar para lograr la estrategia de compresión con el mejor sonido.
Ver también
Referencias
- ^ Anthony Zaknich (25 de abril de 2005). Principios de filtros adaptativos y sistemas de autoaprendizaje . Springer Science & Business Media. ISBN 978-1-85233-984-5.
- ^ Buen amigo, Ian ; Bengio, Yoshua ; Courville, Aaron (2016). Aprendizaje profundo . Prensa del MIT. ISBN 978-0-26203561-3.
- ^ Murphy, Kevin (2021). Aprendizaje automático probabilístico: una introducción . Aprendizaje automático probabilístico: una introducción . Prensa del MIT . Consultado el 10 de abril de 2021 .
- ^ Ze-Nian Li; Mark S. Drew; Jiangchuan Liu (9 de abril de 2014). Fundamentos de Multimedia . Springer Science & Business Media. ISBN 978-3-319-05290-8.