La Programación lógica inductiva (ILP, por sus siglas en inglés) es un subcampo de lainteligencia artificial simbólica que usa programación lógica como representación uniforme para ejemplos, hipótesis y conocimiento previo.
La programación lógica inductiva es particularmente útil en bioinformática y procesamiento del lenguaje natural .
Gordon Plotkin y Ehud Shapiro sentaron las bases teóricas iniciales para el aprendizaje automático inductivo en un entorno lógico.
El término Programación lógica inductiva se introdujo por primera vez[5] en un artículo de Stephen Muggleton en 1991.
El término " inductivo " aquí se refiere a la inducción filosófica (es decir, que sugiere una teoría para explicar los hechos observados) en lugar de matemática (es decir, que demuestra una propiedad para todos los miembros de un conjunto bien ordenado).
Los ejemplos positivos y negativos se dan como una conjunción
Una hipótesis correcta h es una proposición lógica que satisface los siguientes requisitos.
[9] La " necesidad " no impone una restricción a h, pero prohíbe cualquier generación de hipótesis mientras los hechos positivos sean explicables sin ella.
La "suficiencia " es lo que requiere cualquier hipótesis generada h para explicar todos los ejemplos positivos
La " consistencia débil " prohíbe la generación de cualquier hipótesis h que contradiga el conocimiento básico B.
La "consistencia fuerte " también prohíbe la generación de cualquier hipótesis h que sea inconsistente con los ejemplos negativos
, dado el conocimiento de fondo B ; esto implica "Consistencia débil "; Si no se dan ejemplos negativos, ambos requisitos coinciden.
Džeroski[10] requiere solo "Suficiencia " (que llama "Completitud") y "Consistencia fuerte ".
El enfoque de Plotkin[11][12] de "generalización general menos relativa (rlgg) " a la programación lógica inductiva se utilizará para obtener una sugerencia sobre cómo definir formalmente la relación hija dau .
La cláusula Horn resultante es la hipótesis h obtenida por el enfoque rlgg.
Ignorando los hechos del conocimiento de fondo, la cláusula lee informalmente "
Con respecto a los requisitos anteriores, La "Necesidad " se cumplió porque el predicado dau no aparece en el conocimiento de fondo.
La "suficiencia " se satisface con la hipótesis calculada h, ya que, junto con
La "Consistencia débil " es satisfecha por h, ya que h se mantiene en la estructura Herbrand (finita) descrita por el conocimiento de fondo; lo mismo pasa con la "Consistencia fuerte".
, no se puede aprender utilizando el enfoque anterior, ya que la variable y ocurre solo en el cuerpo de la cláusula; los literales correspondientes se habrían eliminado en el cuarto paso del enfoque.
Para superar este defecto, ese paso tiene que modificarse de modo que pueda parametrizarse con diferentes heurísticas de post-selección literales .
Históricamente, la implementación de GOLEM se basa en el enfoque rlgg.
Un sistema ILP está completo si y solo si para cualquier teoría lógica de entrada
Los sistemas ILP modernos como Progol,[6] Hail[15] e Imparo[16] encuentran una hipótesis H utilizando el principio de la vinculación inversa para las teorías B, E, H :
, generalizan la negación de la teoría del puente F con la anti-vinculación.
[17] Sin embargo, la operación del anti-vinculación, dado que es altamente no determinista es computacionalmente más costosa.
Por lo tanto, se puede realizar una búsqueda alternativa de hipótesis utilizando la operación de la subsunción inversa (anti-subsunción), que es menos no determinista que la anti-vinculación.