Commit Graph

125 Commits

Author SHA1 Message Date
Alexander Camuto
40887133ab fix: pav integration test (#42) 2022-10-09 11:41:10 +01:00
Jason Morton
390507ab20 feat: cli subcommands (#41)
Co-authored-by: Alexander Camuto <45801863+alexander-camuto@users.noreply.github.com>
2022-10-09 10:21:03 +01:00
Alexander Camuto
11cdafd27f fix: benchmark ezkl imports (#40) 2022-10-08 15:46:37 +01:00
Jason Morton
0d7b6940ba rename crate (#39)
Adjust crate name uses internally to ezkl.
2022-10-08 01:46:13 -04:00
Jason Morton
676c7b2040 feat: integration tests (#38)
* add integration tests that run the command-line tool.
2022-10-07 18:38:12 -04:00
Jason Morton
3ae716760b fix inputs (#37)
cli now takes floats as inputs, convert examples to floats.
2022-10-07 16:07:52 -04:00
Jason Morton
53d6264be7 chore: update readme (#36)
* Update the readme for the rename and library vs cli usage.
2022-10-07 14:21:45 -04:00
Alexander Camuto
58ad46d74b fix: sigmoid OOR issues (#35)
* OOR example

* An mnist with max pooling

* clean up scaling

* Update ezkl.rs

* cleanup further

* Update ezkl.rs

* trace out values

* bits and scale as cli params

* input ex

* relusig example

* add default pair for lookups

* fix sigmoid scaling

* Update README.md

* better logging of unknown funcs

* fix sigmoid tests

* defaults for bits and scale

* cli flag for k and default k

Co-authored-by: Jason Morton <jason.morton@gmail.com>
2022-10-07 13:49:42 -04:00
Alexander Camuto
ed8d95b44f chore: title screen for cli (#34) 2022-10-06 01:36:18 +01:00
Alexander Camuto
3ef3c468c8 fix: conv rescaling and unknown values for fixed tensors (#33)
Co-authored-by: jason <jason.morton@gmail.com>
2022-10-05 23:21:14 +01:00
Alexander Camuto
51baa073fa feat: debug display of onnx model (#31) 2022-10-04 17:22:28 +01:00
Jason Morton
29df95f19c feat: load a model entirely from an onnx file and build circuit at runtime (#25)
Co-authored-by: Alexander Camuto <alexander.camuto@st-hughs.ox.ac.uk>
2022-10-04 14:49:03 +01:00
Alexander Camuto
78878e3f69 refactor: eltwise as layer (#29) 2022-09-30 18:01:17 +01:00
Alexander Camuto
815a5cd324 chore: documentation (#28)
* val and var tensor docstrings

* doc strings for tensor ops

* layer doc strings

* consistent interfaces for io and eltwise

* io docstrings

* cleanup

* onnx docs

* rm IOConfig and replace with VarTensor methods

* phrasing
2022-09-28 13:46:02 -04:00
Alexander Camuto
7a51bee68c feat: benchmarks for relu, affine, cnvrl (#24)
* feat: benchmarks for varying size affine and conv layers

* relu benchmark

* cleanup

* fix mlp ex
2022-09-25 17:43:06 -04:00
Alexander Camuto
50a95f5cf2 refactor: fully dynamic conv layers (#22)
* chore: cleaner handling of 1D inputs/kernels

* fully dynamic conv

TODO: fix 1D kernel assignments

* support for 1D io

* mc enum test

* rmv visibility on helper functions
2022-09-23 09:26:17 -04:00
Alexander Camuto
041b25e09f chore: split tensor types for legibility (#21) 2022-09-22 11:52:06 +01:00
Alexander Camuto
76ec430dc5 chore: cleanup layers and update readme (#20)
* cleanup eltwise and conv

* phrasing
2022-09-20 14:57:49 -04:00
Alexander Camuto
55df4c63e6 feat: eltwise modular inputs and onnx model loading (#14)
Co-authored-by: jason <jason.morton@gmail.com>
2022-09-19 21:28:51 +01:00
Alexander Camuto
3a57438ee0 refactor: modular layers (#13)
* cleanup naming

* Update input.rs

* io layer

* fixed and advice layers

* working conv example

* cleanup

* fix value / prev assigned bug

* cleanup

* layer trait

* layer impl for affine and cnvrl

* reintegrate biases

* kernel length checks

* fix conv example shapes
2022-09-16 13:18:42 -04:00
Alexander Camuto
c62fd0a892 feat: tensors for multi-dimensional data (#12)
* feat: tensor types of arbitrary dims

* remove unused affine1d funcs

* restore forward

* tensor eltwise

* fix: lookup table mismatch

* iterator traits on tensor

* conv with tensors

* replace assign helper with enum map

* remove conv generics

* Delete all.txt

* fix slicing for tensors with singular dims

* allow single dim kernels

* rm matmul

* Update affine1d.rs

* proper 2d indexing for images and kernels

* indexing fixed

* Update mod.rs

* conv2d mnist example using tensors

* Update main.rs

* Update kernel.rs

* fix affine 1D

* infer affine out dim from weights

* cleanup

* conv2d new public input

* larger out dim
2022-09-07 15:52:47 -04:00
Alexander Camuto
63a0f40588 refactor: examples, subpackages (#10)
* refactor: move examples into own folder

* Delete mlp.rs

* Update lib.rs

* preliminary subfolders

* Update eltwise.rs

* Delete mlprescale.rs

* Update README.md

* Update README.md

Co-authored-by: Jason Morton <jason.morton@gmail.com>
2022-09-02 19:29:02 -04:00
Jason Morton
6725f3795d fix test to remove expr 2022-09-01 12:31:17 -04:00
Jason Morton
c9047741c8 Merge branch 'main' of github.com:jasonmorton/halo2deeplearning 2022-08-31 14:45:34 -04:00
Jason Morton
70c8c4833b No cnst gen exp (#9)
Remove constant generic expressions and add reusable lookup tables.  Both help with verification.
2022-08-31 14:36:44 -04:00
Alexander Camuto
506931e221 chore: range loop, clone, closure cleanups (#8)
* chore: range loop, clone, closure cleanups

* Delete attention.rs

* chore: cleanup affine1d
2022-08-31 12:27:36 -04:00
Jason Morton
11434e92a7 em 2022-08-28 21:52:37 -04:00
Jason Morton
2c8a9e3eb8 Merge pull request #6 from jasonmorton/ac/clippy-chore
chore: remove clippy warnings
2022-08-28 11:49:16 -04:00
Alexander Camuto
898f0dbde3 Update README.md 2022-08-28 17:09:11 +02:00
Alexander Camuto
2a8b2d121e chore: added cargo lock to ignore as a library not an app 2022-08-28 17:02:12 +02:00
Alexander Camuto
9b00e052bb chore: remove clippy warnings 2022-08-28 04:00:45 +02:00
jason
0d0584723d change casting 2022-08-24 22:21:57 -04:00
jason
0a95929c53 merge 2022-08-24 22:18:52 -04:00
Jason Morton
b6fda21ecc Merge pull request #5 from jasonmorton/pse
Switch to PSE fork
2022-08-24 17:45:53 -04:00
jason
d4eac86bbe pub mod 2022-08-24 17:42:12 -04:00
jason
6bfed9028f port to pse working 2022-08-24 14:42:05 -04:00
jason
0590760d75 change branch for 20% memory reduction 2022-08-24 10:30:47 -04:00
jason
9bad9cf905 lookup name 2022-08-23 15:30:55 -04:00
jason
c808268bbc adjusting 2022-08-22 16:12:59 -04:00
jason
5bd5f55ea6 mcnfl 2022-08-22 15:45:14 -04:00
Jason Morton
cffb22f096 Update README.md 2022-08-19 09:26:13 -04:00
Jason Morton
8075741536 pub mods 2022-08-18 19:42:50 -04:00
Jason Morton
fc0203ccdd Merge pull request #4 from jasonmorton/add-license-1
Create LICENSE
2022-08-15 10:08:03 -04:00
Jason Morton
870c5e2510 Create LICENSE 2022-08-15 09:44:25 -04:00
Jason Morton
edc8738f37 comment out 2022-08-10 09:29:07 -04:00
Jason Morton
3e1f332e52 changing repo 2022-08-01 17:42:19 -04:00
Jason Morton
65caa87146 workign on layer trait 2022-07-27 15:34:36 -04:00
Jason Morton
85ef55471e rm 2022-07-23 18:21:56 -04:00
Jason Morton
76fa35db73 badge 2022-07-23 18:12:55 -04:00
Jason Morton
08d60e27bb Merge pull request #3 from jasonmorton/phw_cleanup
Phw cleanup
2022-07-23 18:04:43 -04:00