Commit graph

51 commits

Author SHA1 Message Date
Jean-Marc Valin
a93b09e241
Adding RTCD for compute_conv2d() 2023-11-17 14:20:09 -05:00
Jean-Marc Valin
4bfc0f8555
Adding RTCD for compute_activation() 2023-11-15 23:46:01 -05:00
Jean-Marc Valin
2e034f6f31
Adding RTCD for DNN code
Starting with compute_linear()
2023-11-15 23:45:32 -05:00
Jean-Marc Valin
61fb3b1689
Don't use reserved identifiers for include guards 2023-10-29 21:19:51 -04:00
Jean-Marc Valin
88c58cfaf3
nnet.h no longer needs to #include "vec.h" 2023-10-20 17:25:27 -04:00
Jean-Marc Valin
1032e47d3f
more cleanup 2023-10-20 15:13:43 -04:00
Jean-Marc Valin
7f0d456c4b
Remove unneeded functions in nnet.c 2023-10-20 15:05:14 -04:00
Jean-Marc Valin
828f2553d6
Remove references to kiss99 2023-10-16 22:13:19 -04:00
Jean-Marc Valin
35cb8d7f66
C implementation of FARGAN 2023-10-14 16:42:33 -04:00
Jean-Marc Valin
f0ec990dba
Switching to neural pitch estimator
Remove old pitch estimator and retrain all models
2023-10-06 03:14:56 -04:00
Jean-Marc Valin
27663d3641
Using a DenseNet for DRED 2023-10-02 01:43:44 -04:00
Jean-Marc Valin
33adba02c7
First version of pitch DNN C code
Totally untested -- most likely doesn't work
2023-10-01 03:59:17 -04:00
Jean-Marc Valin
966a2d22eb
Code for 2D convolution
Untested
2023-09-30 23:43:51 -04:00
Jean-Marc Valin
e62fd5c5c9
C implementation of FWGAN 2023-08-01 19:19:13 -04:00
Jean-Marc Valin
8cc769ea3a
Switch RDO-VAE decoder to LinearLayer 2023-07-28 02:21:12 -04:00
Jean-Marc Valin
ad057305f7
Make RDOVAE encoder use LinearLayer directly 2023-07-27 20:16:02 -04:00
Jean-Marc Valin
b1f94b1e92
Add compute_generic_dense()
And missing prototypes
2023-07-27 19:54:10 -04:00
Jean-Marc Valin
4171532c80
Add int8 type 2023-07-27 19:54:09 -04:00
Jean-Marc Valin
9d40e5cb08
Add loading for LinearLayer
Untested
2023-07-23 14:49:13 -04:00
Jean-Marc Valin
f5a68a41b0
Add generic linear layer
Should be able to handle all previous GRU variants and more.
2023-07-20 01:01:32 -04:00
Jean-Marc Valin
8423ef1de2
Remove unused code 2023-07-20 01:01:29 -04:00
Jean-Marc Valin
db48088e9f
Should fix some missing #include problems 2023-06-22 03:22:20 -04:00
Jean-Marc Valin
f867f61e8b Convert RDOVAE to blob format 2023-06-01 23:33:38 -04:00
Jean-Marc Valin
98da335009 Convert PLC weights to blob format 2023-05-22 03:32:53 -04:00
Jean-Marc Valin
ebbf5721a2 Use new model struct 2023-05-17 01:08:28 -04:00
Jean-Marc Valin
71c8a23fc1 Code for building a model struct 2023-05-16 23:15:49 -04:00
Jean-Marc Valin
cc714cc5b0 binary weights work in progress 2023-05-16 16:47:12 -04:00
Jan Buethe
e6390e34c7 removed compute_dense function (conflict with opus mlp) 2022-10-21 12:33:34 +00:00
Jan Buethe
c1b357ed47 first attempt of C implementation of fec encoder (not tested yet due to NEON/DOT_PROD not being separable) 2022-10-18 19:30:23 +02:00
Jean-Marc Valin
2f5b51c94a Avoiding symbol clashes with Opus 2022-01-24 23:21:31 -05:00
Jean-Marc Valin
57f5681987 Add swish activation support 2022-01-24 16:22:29 -05:00
Jean-Marc Valin
3a47548536 Using KISS99 (taken from Daala) as RNG 2021-11-10 17:58:51 -05:00
Jean-Marc Valin
51ef273e06 Using 8-bit recurrent weights for GRU B 2021-09-02 02:33:55 -04:00
Jean-Marc Valin
8bdbbfa18d Support for sparse GRU B input matrices
Only on the C side, no sparse GRU B training yet
2021-07-16 03:07:26 -04:00
Jean-Marc Valin
c74330e850 Pre-compute GRU B conditioning
Adapted from PR: https://github.com/mozilla/LPCNet/pull/134
by zhuxiaoxu <zhuxiaoxu@ainirobot.com>
but had to be reworked due to previous weight quantization changes.
2021-07-15 16:06:56 -04:00
Jean-Marc Valin
7d8b00f11d Sampling directly from the logit
Avoids having to compute a sigmoid
2021-07-10 01:59:49 -04:00
Jean-Marc Valin
7cef98ec8c Minor optimization: merging all 3 embeddings 2021-07-10 01:59:49 -04:00
Jean-Marc Valin
006556036a Cleaning up the sparse GRU
It no longer overwrites its input vector
2021-07-10 01:59:49 -04:00
Jean-Marc Valin
d332100808 Representing output pdf as binary probability tree
Saves on the MDense/softmax computation since we only need to compute
8 values instead of 256.
2021-07-10 01:59:49 -04:00
Jean-Marc Valin
5571ef1b8e minor optimization: removing some copying 2021-06-26 01:27:03 -04:00
Jean-Marc Valin
1707b960de cleanup, add signed-unsigned biases 2021-01-16 02:11:21 -05:00
Jean-Marc Valin
40b309d92b WIP: 8-bit SIMD for GRU B 2021-01-16 02:11:21 -05:00
Jean-Marc Valin
bce779886d WIP: signed*unsigned arithmetic 2021-01-16 02:11:20 -05:00
Jean-Marc Valin
11736ca9e3 WIP: 8-bit mul 2021-01-16 02:11:19 -05:00
Jean-Marc Valin
4de3e53a73 Adding some sparse GRU support
Still need to properly dump as sparse.
2018-11-28 18:49:19 -05:00
Jean-Marc Valin
732fce9ab2 Pre-computing GRU_A's input contribution. 2018-11-28 14:05:36 -05:00
Jean-Marc Valin
040aa437c3 Simper GRU implementation just for reset_after. 2018-11-28 12:37:18 -05:00
Jean-Marc Valin
575d8d6fa4 Adding sampling 2018-11-26 11:04:41 -05:00
Jean-Marc Valin
94ac0841df Precomputing sizes 2018-11-24 15:47:48 -05:00
Jean-Marc Valin
d4046036a9 Dump Conv1D (didn't check weight ordering at all) 2018-11-24 11:32:01 -05:00