-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #327 from andreasgrv/docs
Improve Documentation
- Loading branch information
Showing
19 changed files
with
126 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
""" | ||
cirkit: a python framework to build, learn and reason about probabilistic circuits and tensor networks. | ||
Use the menu on the left to navigate through the library structure and access the documentation for every module. | ||
""" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
""" | ||
This module contains code that makes the symbolic representations concrete - i.e. it translates the symbolic computational graph to a computational graph with parameters that supports back-propagation. | ||
The backend decides data type precision, folding and how parameters are allocated in the computational graph. | ||
We currently support PyTorch as a backend. | ||
""" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
""" | ||
This module implements abstract symbolic representations of circuits. | ||
These symbolic representations need compiling to some backend before they can be executed or used to perform inference with. | ||
More specifically, the module defines operations on circuits, circuit components and the computational graph that defines the computed function. | ||
The parameters are symbolically defined but not materialised/allocated in memory. | ||
While data types are defined here, they are abstract (int, real, complex); the precision is decided at compile time based on the backend. | ||
""" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
""" | ||
This module contains functions to build circuit structures out of templates for different data modalities. | ||
For example, you can build a circuit from a region graph for image data. | ||
""" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
""" | ||
This module contains helper functions and classes. | ||
""" |
This file was deleted.
Oops, something went wrong.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
.md-header__title { | ||
visibility: hidden; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
--- | ||
hide: | ||
- toc | ||
- navigation | ||
- title | ||
--- | ||
|
||
<div class="grid" markdown> | ||
|
||
|
||
<div markdown> | ||
# Building efficient and trustworthy AI | ||
**cirkit** is a framework for building, learning and reasoning about **probabilistic machine learning** models, such as [circuits](https://arxiv.org/abs/2409.07953) and [tensor networks](https://arxiv.org/abs/1708.00006), which are **tractable** and **expressive**. | ||
</div> | ||
|
||
|
||
* ⚡ **Exact and Efficient Inference** : Automatically compile tractable models to efficient computational graphs that run on the GPU. | ||
* **Compatible**: Seamlessly integrate your circuit with deep learning models; run on any device compatible with PyTorch. | ||
* **Modular and Extensible**: Support for user-defined layers and parameterizations that extend the symbolic language of cirkit. | ||
* **Templates for Common Cases**: Templates for constructing circuits by mixing layers and structures with a few lines of code. | ||
|
||
|
||
</div> | ||
|
||
<h1>Getting Started</h1> | ||
|
||
<div class="grid cards" markdown> | ||
|
||
- :fontawesome-solid-screwdriver-wrench:{ .lg .middle } __Build a circuit...__ | ||
|
||
--- | ||
[:octicons-arrow-right-24: from region graphs](https://github.com/april-tools/cirkit/blob/main/notebooks/region-graphs-and-parametrisation.ipynb) | ||
|
||
<!-- | ||
[:octicons-arrow-right-24: with different layers :fontawesome-solid-layer-group:{.lg}](#) | ||
---> | ||
|
||
- :fontawesome-solid-gears:{ .lg .middle } __Learn a circuit...__ | ||
|
||
--- | ||
[:octicons-arrow-right-24: for distribution estimation :fontawesome-solid-chart-area:{.lg}](https://github.com/april-tools/cirkit/blob/main/notebooks/learning-a-circuit.ipynb) | ||
|
||
[:octicons-arrow-right-24: for tensor compression :fontawesome-solid-file-zipper:](https://github.com/april-tools/cirkit/blob/main/notebooks/compression-cp-factorization.ipynb) | ||
|
||
[:octicons-arrow-right-24: ... all of the above, with PICs :fontawesome-solid-camera:](https://github.com/april-tools/cirkit/blob/main/notebooks/learning-a-circuit-with-pic.ipynb) | ||
|
||
<!-- | ||
[:octicons-arrow-right-24: as a (generative) multi-class classifier](#) | ||
---> | ||
|
||
- :material-scale-balance:{ .lg .middle }__Advanced reasoning...__ | ||
|
||
--- | ||
[:octicons-arrow-right-24: with squared circuits $($:fontawesome-solid-plug-circle-minus:{.lg}$)^2$](https://github.com/april-tools/cirkit/blob/main/notebooks/sum-of-squares-circuits.ipynb) | ||
|
||
[:octicons-arrow-right-24: with logic circuits :fontawesome-solid-square-binary:{.lg}...](https://github.com/april-tools/cirkit/blob/main/notebooks/logic-circuits.ipynb) | ||
|
||
</br> | ||
...to enforce constraints in neural nets | ||
|
||
<!-- | ||
- :fontawesome-solid-code-merge:{ .lg .middle } __Integrate with other PyTorch libraries...__ | ||
--- | ||
[:octicons-arrow-right-24: ZUKO: normalising flows](#) | ||
---> | ||
|
||
</div> |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../notebooks/compilation-options.ipynb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../notebooks/compression-cp-factorization.ipynb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../notebooks/learning-a-circuit-with-pic.ipynb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../notebooks/learning-a-circuit.ipynb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../notebooks/logic-circuits.ipynb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../notebooks/region-graphs-and-parametrisation.ipynb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../notebooks/sum-of-squares-circuits.ipynb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters