torchlogic is a pytorch framework for developing Neuro-Symbolic AI systems
based on Weighted Lukasiewicz Logic that we denote as Neural Reasoning Networks.
The design principles of the torchlogic provide computational efficiency for Neuro-Symbolic AI through
GPU scaling.
- Neural == Symbolic: Symbolic operations should not deviate computationally from Neural operations and leverage PyTorch directly
- Masked Tensors: Reasoning Networks use tensors and masking to represent any logical structure and leverage GPU optimized computations
- Neural -> Symbolic Extension: Symbolic operations in torchlogic are PyTorch Modules and can therefore integrate with existing Deep Neural Networks seamlessly
With these principles, torchlogic and Neural Reasoning Networks are able to extend and integrate with our current state-of-the-art technologies that leverage advances in Deep Learning. Neural Reasoning Networks developed with torchlogic can scale with multi-GPU support. Finally, those familiar with PyTorch development principles will have only a small step in skill building to develop with torchlogic.
The API reference and additional documentation for torchlogic are available on through the </link/to/documentation> site. The current code is in an Alpha state so there may be bugs and the functionality is expanding quickly. We'll do our best to keep the documentation up to date with the latest changes to our API reflected there.
There are several tutorials demonstrating how to use the R-NRN algorithm in multiple use cases.
To understand the basic of the torchlogic framework and Neural Reasoning Networks check out the Data Science section, which gives an introduction to some of the models developed so far using torchlogic.