Las Redes Neuronales Recurrentes (RNN, por sus siglas en inglés) son un tipo de redes neuronales que poseen una característica fundamental: su capacidad para procesar secuencias de datos de longitud arbitraria. A diferencia de las redes neuronales tradicionales, como los perceptrones, que requieren una estructura fija en cuanto a la cantidad de entradas y salidas, las RNN pueden adaptarse a secuencias dinámicas. Esta flexibilidad las convierte en una herramienta esencial para tareas como la transcripción de voz a texto, la traducción automática, la generación de textos manuscritos, la predicción de precios bursátiles, y el análisis de melodías, por mencionar solo algunas aplicaciones.

En particular, las RNNs son muy utilizadas en el campo de la visión por computadora, en tareas como la clasificación de videos o la descripción automática de imágenes (conocido como "captioning"), donde se les pide generar una descripción verbal para una imagen dada. El principio subyacente que las hace efectivas en este tipo de aplicaciones es su capacidad de "recordar" información a lo largo del tiempo, lo que les permite detectar patrones en secuencias y establecer relaciones entre eventos que ocurren con intervalos de tiempo. Esta "memoria" es clave para entender por qué las RNNs son tan poderosas: pueden capturar dependencias a largo plazo, lo que se traduce en una capacidad de inferencia más precisa en contextos donde el orden y la temporalidad son fundamentales.

El aspecto más característico de las RNNs son los lazos o "loops" en su estructura, los cuales permiten que la información persista y se utilice en pasos posteriores. Estos lazos están diseñados para reconocer patrones dentro de secuencias de datos, como secuencias textuales, genomas, escritura a mano, palabras habladas, o series temporales numéricas obtenidas de sensores. En resumen, las RNNs son perfectas para tareas en las que se debe considerar el tiempo y la secuencia de los eventos. A diferencia de las redes neuronales tradicionales, que se enfocan principalmente en entradas fijas, las RNNs integran una dimensión temporal, lo que les permite contextualizar y aprovechar la información de eventos pasados para hacer predicciones o generar salidas más precisas.

El proceso de entrenamiento de las RNNs se basa en una extensión del algoritmo de retropropagación, conocido como retropropagación a través del tiempo (BPTT). Este método ajusta los pesos de la red no solo en función de los errores actuales, sino también tomando en cuenta cómo los errores se propagan a través del tiempo. Al igual que la retropropagación tradicional en redes de alimentación hacia adelante, la BPTT calcula los errores de cada capa y ajusta los pesos, pero esta vez con la complicación añadida de tener que manejar la influencia de pasos temporales previos.

Cabe destacar que la capacidad de las RNNs para capturar dependencias a largo plazo no es ilimitada. De hecho, una de las principales dificultades a las que se enfrentan es el problema del desvanecimiento o explosión del gradiente, que puede dificultar el aprendizaje cuando las dependencias temporales son demasiado largas. Para mitigar estos problemas, se han desarrollado variantes de las RNNs, como las LSTM (Long Short-Term Memory), que están diseñadas específicamente para preservar la información a lo largo de secuencias más largas y mejorar la capacidad de las RNNs para modelar dependencias temporales de largo plazo.

Aunque las LSTM son una de las soluciones más efectivas, en algunos casos las RNNs más simples pueden ser suficientes para tareas de corto alcance, como la predicción de la siguiente palabra en una secuencia de texto o la clasificación de patrones en datos secuenciales que no requieren mucha memoria. Por lo tanto, la elección entre una RNN tradicional y una LSTM depende en gran medida de la naturaleza de la tarea y de la longitud de las dependencias temporales involucradas.

Lo que es importante entender además de los aspectos técnicos descritos anteriormente es que las RNNs no solo se aplican a datos temporales o secuenciales. Su capacidad para manejar dependencias a largo plazo puede ser aprovechada en una amplia gama de tareas, desde la predicción de series temporales en el análisis financiero hasta la mejora en la precisión de sistemas de reconocimiento de voz. Además, es esencial que el lector comprenda que la elección de la arquitectura de red debe hacerse cuidadosamente según la complejidad de la tarea en cuestión y las características del conjunto de datos.

Finalmente, más allá de la comprensión técnica de cómo funcionan las RNNs, los lectores deben ser conscientes de los desafíos asociados con su entrenamiento, como la necesidad de grandes volúmenes de datos y de potencia computacional, así como los posibles problemas derivados de la falta de suficiente temporalidad en los datos. A pesar de estos retos, las RNNs y sus variantes, como las LSTM, continúan siendo herramientas extremadamente poderosas en el campo del aprendizaje automático.

¿Cómo funciona un autoencoder y cuáles son sus aplicaciones?

Un autoencoder es un tipo de red neuronal artificial diseñada para aprender representaciones de datos de manera no supervisada. La idea fundamental detrás de un autoencoder es la de reconstruir las entradas a partir de una representación comprimida o codificada. El proceso de reconstrucción está guiado por una función de pérdida que penaliza al modelo cuando la reconstrucción difiere de la entrada original. Esto lleva a que el autoencoder aprenda a representar los datos de forma eficiente, manteniendo solo las características más relevantes y descartando las irrelevantes.

El autoencoder típico consta de tres partes principales: la capa de entrada, la capa oculta y la capa de salida. La capa de salida tiene el mismo número de neuronas que la capa de entrada, lo que garantiza que la reconstrucción final tenga la misma dimensionalidad que los datos de entrada. Sin embargo, la capa oculta tiene una menor dimensionalidad, lo que se conoce como "autoencoder subcompleto". Este enfoque obliga al modelo a aprender únicamente las características esenciales de los datos y a eliminar el ruido o la información redundante. En la práctica, este tipo de autoencoder se utiliza comúnmente para tareas como la reducción de dimensionalidad y la compresión de datos. Un ejemplo común es su aplicación sobre el conjunto de datos MNIST, en el cual un autoencoder subcompleto aprende a representar los dígitos de manera compacta, conservando solo la información necesaria para clasificar correctamente cada número.

Los autoencoders pueden tener múltiples capas ocultas, lo que lleva a lo que se denomina "autoencoder apilado" o "autoencoder profundo", una variante de red neuronal artificial (ANN) con una estructura más compleja. Cuantas más capas ocultas tenga el autoencoder, mayor será su capacidad de aprendizaje. Sin embargo, un número excesivo de capas puede llevar a problemas de sobreajuste (overfitting), donde el modelo aprende a reconstruir perfectamente los datos de entrenamiento, pero no es capaz de generalizar a nuevos datos. Por lo tanto, el ajuste fino del autoencoder a menudo consiste en encontrar el número adecuado de capas ocultas para evitar el sobreajuste y mejorar la capacidad de generalización.

Un enfoque interesante al entrenar un autoencoder es dividir el proceso de aprendizaje en partes más simples y entrenar cada sección por separado antes de apilar las capas preentrenadas. Esto se puede hacer copiando los pesos y los sesgos ajustados de una instancia del autoencoder a otra, lo que permite un entrenamiento más eficiente. Esta estrategia es comúnmente utilizada en el preentrenamiento de redes neuronales profundas, donde un autoencoder se usa para aprender representaciones de datos no etiquetados antes de que se realice un entrenamiento supervisado en una red neuronal completa.

El autoencoder también se ha utilizado para tareas de clasificación de imágenes en ausencia de etiquetas. Por ejemplo, se pueden descargar miles de imágenes no etiquetadas de internet, como fotos de animales, y usar un autoencoder para clasificarlas de manera automática en categorías basadas en similitudes. Una vez que el autoencoder ha agrupado las imágenes en categorías, los pesos de las capas que realizaron esta clasificación pueden ser transferidos a otro modelo, donde esa información preentrenada se utiliza como base para un nuevo proceso de aprendizaje supervisado.

Una variante del autoencoder es el Variational Autoencoder (VAE). A diferencia de los autoencoders tradicionales, que producen una única representación codificada para cada entrada, los VAEs generan múltiples representaciones y toman su media y desviación estándar. Este enfoque permite la creación de datos sintéticos. Por ejemplo, en situaciones donde no se pueden utilizar datos reales debido a restricciones de privacidad, como en el caso de datos de salud sensibles, los VAEs pueden generar datos artificiales que son estadísticamente similares a los reales. Este tipo de autoencoder ha demostrado ser especialmente útil para la generación de imágenes sintéticas, como los dígitos manuscritos mostrados en la figura 70, los cuales podrían parecer escritos por una persona real, aunque fueron generados artificialmente.

Además de sus aplicaciones en el procesamiento de imágenes y la reducción de dimensionalidad, los autoencoders pueden ser de gran ayuda en tareas de preprocesamiento y reducción de ruido en grandes volúmenes de datos. Esto es especialmente relevante en campos como la visión por computadora, la biología computacional y la detección de anomalías, donde se requiere una representación comprimida y eficiente de los datos sin perder la información clave. La capacidad de los autoencoders para extraer patrones subyacentes y reducir el ruido los convierte en herramientas poderosas para mejorar la precisión y eficiencia de otros modelos de aprendizaje automático.

Es importante destacar que, aunque los autoencoders ofrecen potentes capacidades de aprendizaje no supervisado, requieren una cuidadosa configuración para evitar problemas como el sobreajuste. La elección del número adecuado de capas ocultas, el tipo de regularización y las técnicas de optimización son factores clave para que el autoencoder sea efectivo en tareas de generalización y no solo en la reconstrucción perfecta de los datos de entrenamiento. Además, el uso de técnicas de transferencia de aprendizaje y preentrenamiento puede acelerar significativamente el proceso de construcción de modelos más complejos y reducir la necesidad de grandes cantidades de datos etiquetados.

¿Cómo funciona el aprendizaje por refuerzo y qué desafíos presenta?

El aprendizaje por refuerzo (RL, por sus siglas en inglés) se basa en un principio sencillo pero potente: un agente aprende a través de la experiencia, evaluando sus acciones en función de las recompensas y penalizaciones que recibe. En su forma básica, el agente asigna valores a las posibles acciones basándose en las recompensas acumuladas, y busca maximizar estos valores para llegar a su objetivo. Este proceso se organiza en una tabla de valores Q, donde cada celda refleja la calidad de una acción en un estado determinado. A medida que el agente interactúa con su entorno, actualiza esta tabla, eligiendo las acciones con los valores Q más altos, lo que en un entorno estático lleva a un comportamiento eficaz para alcanzar el objetivo.

Sin embargo, cuando el mundo en el que opera el agente es dinámico, las condiciones pueden cambiar. Un modelo aprendido puede volverse subóptimo, lo que obliga a la necesidad de volver a aprender. Esto plantea una cuestión importante: el aprendizaje debe ser flexible, permitiendo tanto la explotación del conocimiento acumulado como la exploración de nuevas acciones. Para ello, se introduce un parámetro de exploración, conocido como 𝜖, en la ecuación de Bellman, que regula la probabilidad de elegir una acción al azar frente a una acción óptima determinada por la tabla Q.

Este balance entre exploración y explotación es esencial, ya que permite que el agente se adapte a un entorno en constante cambio. Un ejemplo destacado de este enfoque es el uso de RL para optimizar políticas fiscales, un caso en el que los objetivos contradictorios de mejorar la igualdad y aumentar la productividad deben ser gestionados simultáneamente. Este tipo de aplicaciones demuestra la versatilidad del aprendizaje por refuerzo, no solo en tareas complejas sino también en la resolución de dilemas multidimensionales.

A medida que el aprendizaje por refuerzo se combina con otras técnicas de aprendizaje automático, como las redes neuronales artificiales, surgen nuevas variantes como el aprendizaje profundo por refuerzo (Deep Q-Learning). Este enfoque ha producido resultados asombrosos en campos como los juegos de mesa. Los algoritmos AlphaGo y AlphaZero, entrenados para jugar Go, ajedrez y shogi, lograron victorias históricas sobre campeones mundiales, demostrando el poder del aprendizaje profundo combinado con RL. Estos algoritmos no solo aprenden a partir de juegos previos, sino que son capaces de jugar miles de partidas entre ellos mismos, aprendiendo y mejorando a medida que avanzan. En versiones más avanzadas, como MuZero, ni siquiera se les enseñan las reglas del juego; en su lugar, descubren por sí mismos cómo construir un modelo de su entorno y cómo jugar de manera óptima a partir de la interacción con su entorno.

Otro avance relevante en el campo de la inteligencia artificial es AlphaFold, un sistema que utiliza redes neuronales profundas para predecir la estructura tridimensional de las proteínas. Este sistema ha alcanzado un nivel de precisión sin precedentes, marcando un hito en la biología estructural y demostrando una vez más la capacidad de RL y el aprendizaje profundo para abordar problemas complejos.

No obstante, aunque el aprendizaje por refuerzo puede parecer un método intuitivo basado en recompensas y penalizaciones, tiene limitaciones fundamentales. La principal dificultad radica en la falta de retroalimentación detallada sobre cómo mejorar. En el aprendizaje tradicional, como en la educación humana, se suele proporcionar retroalimentación continua sobre los errores y logros. Sin embargo, en RL, las recompensas solo se asignan una vez que se alcanza el objetivo, lo que en tareas complejas puede resultar ineficaz. A menudo, los agentes deben esperar largos períodos para recibir una recompensa o, en algunos casos, nunca alcanzan un objetivo que se percibe como alcanzable.

Una estrategia común para mitigar este problema es la ingeniería de recompensas, o “modelado de recompensas”, que implica premiar no solo el logro final, sino también los pasos intermedios que son importantes para alcanzar ese logro. Por ejemplo, en una tarea que implique alcanzar un objetivo en una pendiente, el agente puede ser recompensado por moverse hacia la dirección correcta, incluso si no alcanza el objetivo de inmediato. No obstante, este enfoque requiere conocimiento previo sobre las características de la tarea, lo que puede no siempre estar disponible.

Otra forma de abordar la escasez de recompensas es permitir que el agente aprenda de los intentos fallidos. Almacenando experiencias pasadas, es posible aplicar un aprendizaje fuera de la política (off-policy), donde el agente aprende no solo de sus éxitos, sino también de sus fracasos. Un ejemplo de esto es el método de Hindsight Experience Replay (HER), que permite al agente imaginar qué habría pasado si sus intentos fallidos hubieran sido diferentes. Este enfoque extiende la capacidad del aprendizaje por refuerzo al permitir que el agente aprenda no solo de sus acciones exitosas, sino también de los escenarios en los que no logró el objetivo.

No obstante, uno de los desafíos fundamentales del aprendizaje por refuerzo es la enorme cantidad de posibles acciones que un agente debe explorar. Incluso tareas relativamente simples, como conducir un automóvil, implican una enorme cantidad de decisiones en cada momento. Cada situación genera un espacio de estado vasto, lo que hace prácticamente imposible para los sistemas actuales explorar todas las acciones posibles. Esto lleva a la búsqueda de métodos que puedan reducir de manera efectiva el espacio de búsqueda.

Un enfoque interesante en este contexto es el Aprendizaje por Refuerzo Inverso (Inverse Reinforcement Learning, IRL). En lugar de definir manualmente una función de recompensa para una tarea, el IRL intenta derivar una función de recompensa aproximada a partir de los comportamientos observados de un agente, como un ser humano. Por ejemplo, en el contexto de la conducción autónoma, un sistema IRL podría aprender a partir de los datos de conducción humana para inferir las recompensas asociadas con comportamientos correctos, como detenerse en un semáforo rojo o evitar peatones, sin necesidad de definir explícitamente cada acción correcta.

La aplicación de estos enfoques avanzados está en constante expansión y promete revolucionar la manera en que las máquinas aprenden a realizar tareas complejas. Desde juegos hasta aplicaciones prácticas como la conducción autónoma, la robótica o incluso la biología, el aprendizaje por refuerzo sigue demostrando ser una herramienta poderosa para mejorar la toma de decisiones autónoma en entornos cambiantes y complejos. Sin embargo, el desarrollo y la aplicación de estos métodos aún presentan desafíos significativos que requieren no solo avances técnicos, sino también un entendimiento profundo de las dinámicas de recompensa y aprendizaje.

¿Cómo los Modelos Evolutivos y el Principio de Energía Libre Contribuyen a la Comprensión de la Adaptación en Sistemas Inteligentes?

Los sistemas complejos, tanto biológicos como artificiales, han encontrado formas eficientes de adaptarse y sobrevivir en sus entornos. Un enfoque clave para comprender estos procesos es el uso de modelos, que no solo nos permiten observar cómo interactúan estos sistemas con su ambiente, sino también cómo desarrollan estrategias óptimas para su funcionamiento. Entre las diversas metodologías empleadas en este sentido, la computación evolutiva y el principio de energía libre se destacan por su capacidad para imitar y mejorar procesos biológicos a través de modelos matemáticos y algoritmos.

El concepto de computación evolutiva se basa en principios biológicos como la variación, la herencia y la selección, que permiten la adaptación de poblaciones de organismos a sus entornos. En un contexto más moderno, estos principios se implementan mediante algoritmos genéticos para resolver problemas complejos. Estos algoritmos emulan el proceso evolutivo natural, en el que la "supervivencia del más apto" se convierte en el motor del cambio y la mejora de soluciones. Por ejemplo, el famoso experimento de Robert Axelrod (1984) en el que agentes informáticos participaron en el dilema del prisionero, ilustró cómo la cooperación podría surgir de un proceso evolutivo. Inicialmente, los agentes adoptaban estrategias defectivas, pero con el tiempo y a través de la evolución, emergieron estrategias cooperativas que, al ser más exitosas, lograron propagarse en la población. Este experimento mostró que, incluso en situaciones aparentemente adversas, los modelos evolutivos pueden producir soluciones cooperativas eficaces.

La computación evolutiva ha encontrado aplicaciones en una vasta gama de problemas, desde la optimización de robots suaves hasta tareas complejas de clasificación y predicción, como la predicción del clima o la estructura de proteínas. Un ejemplo destacado es el uso de estos algoritmos en el diseño de antenas para la nave espacial NASA ST5, donde la forma de la antena fue optimizada para producir el mejor patrón de radiación. Estos avances ilustran cómo los modelos evolutivos no solo imitan la biología, sino que también mejoran las capacidades de los sistemas inteligentes en áreas clave de la tecnología moderna.

Sin embargo, los modelos no se limitan solo a la optimización de estrategias o formas, sino que también juegan un papel crucial en la comprensión de la función cognitiva en seres biológicos. En este sentido, el principio de energía libre, propuesto por Karl Friston, ofrece una explicación fascinante de cómo los cerebros humanos y otros sistemas biológicos mantienen su homeostasis. Según este principio, el cerebro no solo procesa información sensorial, sino que también construye y actualiza constantemente un modelo interno del mundo. Este modelo no es estático; es un constructo dinámico que el cerebro ajusta continuamente para maximizar la probabilidad de que las percepciones sensoriales coincidan con las predicciones del modelo. El objetivo es minimizar la sorpresa, o lo que en términos de teoría de la información se conoce como la "entropía de Shannon", que mide la incertidumbre sobre un evento o símbolo. Cuanto más predecible es un estímulo en función del contexto, menor es la sorpresa que genera.

En los sistemas biológicos, este principio de minimizar la sorpresa tiene un impacto directo en cómo interactuamos con el mundo y cómo tomamos decisiones. La sorpresa es, en efecto, un indicativo de error en el modelo predictivo, y la capacidad del cerebro para reducir este error es fundamental para mantener una percepción coherente del entorno. Este enfoque no solo ayuda a entender la cognición humana, sino que también se ha aplicado a la inteligencia artificial, donde los algoritmos pueden ser diseñados para maximizar la precisión de las predicciones de modelos complejos.

Es importante señalar que la implementación de estos principios no se limita solo al desarrollo de algoritmos en la informática. También tienen implicaciones filosóficas y científicas significativas sobre cómo entendemos la cognición, la percepción y el comportamiento. La adopción de modelos como representación interna de la realidad abre un campo de investigación sobre la relación entre la mente y el mundo exterior, y cómo la adaptación continua a través de la evolución o el aprendizaje puede ser vista como un proceso de refinamiento de estos modelos. La idea central es que, en última instancia, tanto los sistemas biológicos como los artificiales buscan reducir la discrepancia entre lo que predicen sus modelos y lo que realmente experimentan.

Los avances en este campo sugieren que los modelos de comportamiento, adaptabilidad y percepción son fundamentales no solo para replicar las funciones cerebrales humanas, sino también para mejorar los sistemas de inteligencia artificial. Por lo tanto, el estudio y desarrollo de algoritmos basados en la evolución y la minimización de la sorpresa no solo tiene aplicaciones prácticas inmediatas, sino que también podría proporcionar nuevos enfoques sobre cómo modelar la cognición en máquinas y en seres vivos.

¿Cómo los modelos y la minimización de sorpresas explican el comportamiento adaptativo?

La cuestión de cuántas observaciones individuales son necesarias para determinar de manera inequívoca un símbolo dentro de un conjunto dado de símbolos está estrechamente relacionada con la noción de información. Para seleccionar la letra "h" de un alfabeto de 26 letras, por ejemplo, se necesitan cinco observaciones consecutivas de la forma: “la letra está en la primera mitad del alfabeto”, “la letra está en la segunda mitad de la primera mitad del alfabeto”, “la letra está en la primera mitad de la segunda mitad de la primera mitad del alfabeto”, y así sucesivamente. Este procedimiento permite reducir la incertidumbre hasta identificar sin ambigüedades un solo símbolo.

En este contexto, si asumimos que todas las letras tienen la misma probabilidad de aparecer en un mensaje (lo cual, en realidad, no sucede en los lenguajes naturales), entonces la probabilidad de que aparezca una letra en particular sería 1/26. Para distinguir inequívocamente entre 26 letras, se requiere un conjunto mínimo de 5 observaciones binarias (es decir, una serie de respuestas "sí/no" o "1/0"), lo que corresponde a una relación de 25 = 32. Este conjunto es redundante, ya que provee más opciones de las necesarias, pero es suficiente para la tarea de identificación.

El código ASCII, por ejemplo, utiliza números binarios con siete dígitos, lo que permite representar 128 símbolos diferentes (27 = 128). La fórmula general para el tamaño del conjunto de símbolos es 2𝐼 = 𝑁, donde 𝐼 es el número de observaciones y 𝑁 es el número de símbolos en el alfabeto. En este contexto, el número de observaciones necesarias puede expresarse como 𝐼 = 𝑙𝑜𝑔2 𝑁. Esta fórmula describe la cantidad de información contenida en un solo símbolo y su valor de sorpresa. Cuanto más frecuente es un símbolo en un mensaje, menor es su valor de sorpresa, mientras que los símbolos raros tienen un alto valor de sorpresa.

Esta idea permitió a Shannon formular la entropía como una medida de la incertidumbre promedio con la que se elegiría una letra en un mensaje. La entropía se expresa como:

𝐼 = − ∑𝑛 𝑖=0 𝑝𝑖 𝑙𝑜𝑔2 𝑝𝑖

Siguiendo este enfoque, Karl Friston utilizó esta formalización para expresar la sorpresa de una entrada sensorial basada en una predicción del modelo, formulándola como −𝑙𝑜𝑔2𝑝(𝑠|𝑚). Friston propuso que las acciones de los sistemas anticipatorios, como el cerebro, están siempre dirigidas a minimizar esta sorpresa, o al menos a mantenerla por debajo de un límite máximo, conocido como energía libre. Según su teoría, los agentes biológicos autoorganizados resisten una tendencia hacia el desorden al minimizar la entropía de sus estados sensoriales en relación con las predicciones del modelo. En otras palabras, minimizar la entropía es equivalente a reducir la sorpresa con el tiempo.

Un ejemplo claro es el de un pez en el agua. Si consideramos todos los posibles estados que un pez podría experimentar (fuera del agua, en el aire, en la luna, etc.), la cantidad de estados posibles es considerablemente mayor que los estados en los que el pez se encuentra realmente (dentro del agua). Por lo tanto, la distribución de los estados del pez tiene baja entropía, lo que implica que el pez evita situaciones sorprendentes, como estar fuera del agua. Sin embargo, el pez no evalúa la sorpresa directamente, ya que esto implicaría conocer todos los posibles estados en los que podría encontrarse. En cambio, utiliza un modelo que es una abstracción evolutiva del mundo. Este modelo no puede abarcar todos los estados posibles, pero sí permite al pez evaluar las divergencias entre sus entradas sensoriales y la representación de su mundo generada por su modelo.

Es este error de predicción del modelo el que Friston describe como energía libre. El pez intenta minimizar esta energía libre ajustando su modelo (es decir, aprendiendo) o actuando para llevarse a sí mismo o a su entorno a un estado que se ajuste a las predicciones del modelo (por ejemplo, volviendo al agua). Este proceso de minimización de energía libre es una forma en que los organismos resisten el desorden y la sorpresa, ajustando su modelo o actuando sobre el entorno.

Los modelos que utilizan los organismos pueden expresarse en términos de distribuciones probabilísticas, lo que se alinea con la Hipótesis del Cerebro Bayesiano. Según esta hipótesis, el cerebro es una máquina de inferencia que calcula probabilidades y ajusta sus representaciones del mundo para minimizar las sorpresas. La divergencia entre las distribuciones previstas por el modelo y las que se median a través de las entradas sensoriales puede expresarse utilizando medios estadísticos, como la divergencia de Kullback-Leibler, y su minimización puede formularse como un descenso de gradiente de la energía libre.

Aunque el principio de energía libre explica la alineación entre las predicciones del modelo y las entradas sensoriales, no aborda directamente el propósito de esta alineación. A nivel más general, este propósito puede verse como la supervivencia del organismo que posee el modelo. Sin embargo, las entradas sensoriales no siempre están directamente relacionadas con la supervivencia. Por ejemplo, tocar una estufa caliente puede ser doloroso, pero no siempre letal. El dolor es solo una señal indirecta de que los objetos calientes pueden ser perjudiciales, pero no proporciona una señal clara de selección evolutiva.

Por ello, se ha propuesto que la evolución se complementa con principios adicionales que brindan señales más locales y universales para dirigir las acciones o mantener la homeostasis de los sistemas complejos. Uno de estos principios es el concepto de empoderamiento, que ha sido propuesto en el ámbito de la robótica y los agentes artificiales. El empoderamiento mide los grados de libertad o las opciones que un agente tiene para controlar su entorno basado en su modelo del mundo actual. Este concepto diferencia entre el valor de empoderamiento de un estado específico del agente y los valores de todos los posibles estados según su modelo, ponderados por su probabilidad. El agente utiliza esta diferencia para orientar sus acciones hacia aquellos estados que aumentan su empoderamiento, es decir, que le proporcionan más control y mayores posibilidades de acción.

El empoderamiento, en resumen, es un principio universal que guía a los agentes a seleccionar acciones que incrementen su espacio de posibilidades, ayudando a los organismos a tomar decisiones basadas en el control de su entorno.