Aprendizaje por refuerzo de lógica neuronal: una introducción

El aprendizaje por refuerzo de lógica neuronal es un algoritmo que combina la programación lógica con métodos de aprendizaje por refuerzo profundo. La programación lógica se puede utilizar para expresar el conocimiento de una manera que no depende de la implementación, haciendo que los programas sean más flexibles, comprimidos y comprensibles. Permite separar el conocimiento del uso, es decir, se puede cambiar la arquitectura de la máquina sin cambiar los programas o su código subyacente.

Algoritmos de aprendizaje de refuerzo profundono son interpretables ni generalizables. Estos algoritmos aprenden soluciones y no el camino para encontrar la solución. Los algoritmos DRL también utilizan redes neuronales profundas, lo que dificulta la interpretación de las políticas aprendidas. Por lo tanto, las soluciones no son interpretables, ya que los humanos no pueden entender cómo se aprendió o logró la respuesta. Este es un gran inconveniente de los algoritmos DRL. Otro inconveniente de los algoritmos ML o RL es que no son generalizables. Es decir, si el algoritmo se entrena para un entorno específico, el rendimiento una vez que el entorno se modifica aunque sea ligeramente será muy malo. Por lo tanto, los algoritmos no pueden funcionar bien en nuevos dominios. Pero en los problemas del mundo real, los entornos de entrenamiento y prueba no siempre son los mismos. Por lo tanto, la generalización es una condición necesaria para que cualquier algoritmo funcione bien.

En NLRL el agente debe aprender los predicados auxiliares inventados por sí mismo, junto con los predicados de acción. Los predicados se componen de declaraciones verdaderas basadas en los ejemplos y el entorno dado. Todos los conjuntos de cláusulas posibles se componen de una combinación de predicados. Una array de deducción se construye de manera que una combinación deseable de predicados que forman una cláusula satisfaga todas las restricciones. Para decidir el verdadero valor de cada cláusula y lograr el resultado ideal con la cláusula más adecuada, se asignan pesos a cada predicado. Los pesos no se asignan directamente a toda la política. Estos pesos se actualizan en función de los valores reales de las cláusulas, por lo que se alcanza la mejor cláusula posible con el mejor peso y el mayor valor de verdad. Los parámetros a entrenar están involucrados en el proceso de deducción. El algoritmo entrena la política basada en reglas parametrizada mediante gradiente de política. Cada acción se representa como un átomo. El agente se inicializa con una valoración de 0-1 para predicados base y pesos aleatorios para todas las cláusulas para un predicado intencional. Los pesos se actualizan a través del método de enstringmiento directo. Para cada paso del enstringmiento de reenvío, primero obtenemos el valor de todas las cláusulas para todas las combinaciones de constantes usando la array de deducción. Luego, el valor de cada átomo intensional se actualiza de acuerdo con una función de deducción. Por lo tanto, se obtienen los valores de todas las acciones y se elige la mejor acción en consecuencia como en cualquier algoritmo RL. Los pesos se actualizan a través del método de enstringmiento directo. Para cada paso del enstringmiento de reenvío, primero obtenemos el valor de todas las cláusulas para todas las combinaciones de constantes utilizando la array de deducción. Luego, el valor de cada átomo intensional se actualiza de acuerdo con una función de deducción. Por lo tanto, se obtienen los valores de todas las acciones y se elige la mejor acción en consecuencia como en cualquier algoritmo RL. Los pesos se actualizan a través del método de enstringmiento directo. Para cada paso del enstringmiento de reenvío, primero obtenemos el valor de todas las cláusulas para todas las combinaciones de constantes utilizando la array de deducción. Luego, el valor de cada átomo intensional se actualiza de acuerdo con una función de deducción. Por lo tanto, se obtienen los valores de todas las acciones y se elige la mejor acción en consecuencia como en cualquier algoritmo RL.

La estructura básica del algoritmo NLRL es muy similar a cualquier algoritmo RL profundo. Pero los estados y acciones se representan como átomos y tuplas. La conversión de estado a átomo se puede realizar manualmente o a través de una red neuronal. Estas representaciones aseguran que el algoritmo sea generalizable y también interpretable ya que la lógica para lograr la solución se aprende a diferencia de la solución directamente que no se puede generalizar. Dado que las redes neuronales se utilizan en Deep RL, este algoritmo también es resistente a datos faltantes, mal clasificados o incorrectos.

Publicación traducida automáticamente

Artículo escrito por poojasrinivas y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *