Dolphin: A Programmable Framework for Scalable Neurosymbolic Learning
<|reference_start|>Dolphin: A Programmable Framework for Scalable Neurosymbolic Learning: Neurosymbolic learning has emerged as a promising paradigm to incorporate symbolic reasoning into deep learning models. However, existing frameworks are limited in scalability with respect to both the training data and the complexity of symbolic programs. We propose Dolphin, a framework to scale neurosymbolic learning at a fundamental level by mapping both forward chaining and backward gradient propagation in symbolic programs to vectorized computations. For this purpose, Dolphin introduces a set of abstractions and primitives built directly on top of a high-performance deep learning framework like PyTorch, effectively enabling symbolic programs to be written as PyTorch modules. It thereby enables neurosymbolic programs to be written in a language like Python that is familiar to developers and compile them to computation graphs that are amenable to end-to-end differentiation on GPUs. We evaluate Dolphin on a suite of 13 benchmarks across 5 neurosymbolic tasks that combine deep learning models for text, image, or video processing with symbolic programs that involve multi-hop reasoning, recursion, and even black-box functions like Python eval(). Dolphin only takes 0.33%-37.17% of the time (and 2.77% on average) to train these models on the largest input per task compared to baselines Scallop, ISED, and IndeCateR+, which time out on most of these inputs. Models written in Dolphin also achieve state-of-the-art accuracies even on the largest benchmarks.<|reference_end|>
@article{naik2024dolphin:,
    title={Dolphin: A Programmable Framework for Scalable Neurosymbolic Learning},
    author={Aaditya Naik, Jason Liu, Claire Wang, Saikat Dutta, Mayur Naik, Eric
  Wong},
    journal={arXiv preprint arXiv:2410.03348},
    year={2024},
    archivePrefix={arXiv},
    eprint={2410.03348},
    primaryClass={cs.LG}
}