Skip to content

Question: How to replicate AAAI-22 ILP experiments using this repository? #112

@simogiovannini

Description

@simogiovannini

Question: How to replicate AAAI-22 ILP experiments using this repository?

Background

I'm trying to replicate the experiments from the AAAI-22 paper "Neuro-Symbolic Inductive Logic Programming with Logical Neural Networks" by Sen et al., specifically:

  • Gridworld experiments (Section 5.1)
  • Knowledge Base Completion experiments (Section 5.2)

However, I'm having difficulty understanding how to implement these using the current LNN repository.

Current Understanding

The paper describes an Inductive Logic Programming (ILP) approach where:

  1. Rules are learned from data using templates
  2. LNN-pred operator combines base predicates with learnable weights (Section 4.1)
  3. Constraint learning uses the double description method (Section 4.5)

The current repository (or at least the current documentation) appears to focus on:

  • Logical inference with predefined rules
  • Manual rule definition

Specific Questions

1. Template System (Section 4)

# Paper describes templates like:
# R(X,Z) ← P(X,Y) ∧ Q(Y,Z) where P ∈ {A,B}, Q ∈ {C}
  • Is there a way to define rule templates with predicate domains?
  • How do I specify which predicates can fill each slot?

2. LNN-pred Operator (Section 4.1)

# Paper equation:
# ψ(V(x)) = 1 - relu1(β - Σ_P∈L(V) w_P ψ(P(x)))
  • Is this operator implemented? I couldn't find it in the codebase
  • Should I implement it as a custom _ConnectiveNeuron?

3. Constraint Learning (Section 4.5)
The paper uses the Minkowski-Weyl theorem with double description method:

z = Υμ + Γλ  where μ,λ0, 1ᵀλ = 1
  • Is this implemented beyond the basic PrimalDual optimizer?
  • The paper mentions using it to ensure LNN parameters satisfy constraints

4. Experimental Setup

For Gridworld:

  • How do I set up a template that learns from reward signals?
  • How do I generate facts from grid states?

For KBC:

  • How do I implement chain rule learning (multi-hop paths)?
  • The paper uses a mixture over all possible paths - is this supported?

Questions

  1. Is the current LNN repository designed to support ILP experiments from the AAAI-22 paper?
  2. Is there supplementary code or examples for the paper's experiments?
  3. Are there any recommended starting points or examples for rule learning (vs. rule reasoning)?

Thank you for your time and for this excellent work on neuro-symbolic AI.


Related Paper: [Neuro-Symbolic Inductive Logic Programming with Logical Neural Networks (AAAI-22)](https://ojs.aaai.org/index.php/AAAI/article/view/20735)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions