PyNeuraLogic is a framework which combines relational and deep learning.
Project description
PyNeuraLogic
Documentation | Examples | Papers
PyNeuraLogic is a framework built on top of NeuraLogic which combines relational and deep learning.
General
Supported backends (WIP):
Getting started
Prerequisites
To use PyNeuraLogic, you need to have installed the following prerequisites.
Python >= 3.7
Java 1.8
Installation
To install PyNeuraLogic's latest release from the PyPI repository, use the following command.
$ pip install neuralogic
How to use
None of the following backends are included in PyNeuraLogic's installation. You have to install the ones that you are planning to utilize manually.
With PyTorch Geometric
With DyNet
import dynet as dy
from neuralogic import data
from neuralogic.dynet import NeuraLogicLayer
dataset = data.XOR # Use one of the default datasets in the project in the/datasets/ folder
layer = NeuraLogicLayer(dataset.weights) # Create an instance of NeuraLogicLayer with weights from the dataset
trainer = dy.AdamTrainer(layer.model, alpha=0.001)
for sample in dataset.samples: # Learn on each sample
dy.renew_cg(immediate_compute=False, check_validity=False)
label = dy.scalarInput(sample.target)
graph_output = layer.build_sample(sample)
loss = dy.squared_distance(graph_output, label)
loss.forward()
loss.backward()
trainer.update()
With Deep Graph Library
Development
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
neuralogic-0.0.6.tar.gz
(31.2 kB
view hashes)
Built Distribution
Close
Hashes for neuralogic-0.0.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 315ad8473ff06e599e5a72d6fbf5786fb04f17e63bc591e5b790a74158da1c48 |
|
MD5 | ca94f632cf9a9f26111702b18d528efb |
|
BLAKE2b-256 | 77f021a1f2a12ce046e50dda133faaefb3cf301d7ae9531437deff4d1c50cdc8 |