Jean-Marc Valin
|
d533e4024d
|
Fix DCT normalization
|
2018-12-10 11:22:13 -05:00 |
|
Jean-Marc Valin
|
a02d9c85e5
|
reduce memory use of training code
|
2018-12-09 22:48:46 -05:00 |
|
Jean-Marc Valin
|
2facc08bb4
|
Avoid rounding the prediction multiple times
|
2018-12-09 21:20:36 -05:00 |
|
Jean-Marc Valin
|
3e71248298
|
Fix compile
|
2018-12-09 16:00:49 -05:00 |
|
Jean-Marc Valin
|
0fb031a921
|
Produce at least ~14 hours of augmented speech
|
2018-12-09 15:48:12 -05:00 |
|
Jean-Marc Valin
|
3dcbb012a0
|
Add variable gain and response
|
2018-12-09 15:48:12 -05:00 |
|
Jean-Marc Valin
|
f933725677
|
Chopping silence from the training data
|
2018-12-09 15:48:11 -05:00 |
|
Jean-Marc Valin
|
407eec127c
|
make dump_data output LPC as converted from features
|
2018-12-09 15:45:34 -05:00 |
|
Jean-Marc Valin
|
e0d2b105a2
|
Compute LPC from features
|
2018-12-07 18:16:19 -05:00 |
|
Jean-Marc Valin
|
1dcd57323f
|
Do proper saturation
|
2018-12-06 16:27:08 -05:00 |
|
Jean-Marc Valin
|
771cc7868a
|
Support for plain AVX with no FMA
|
2018-12-04 07:58:13 -05:00 |
|
Jean-Marc Valin
|
91d90676e1
|
Remove the need for useless exc and pred files
|
2018-12-01 12:05:23 -05:00 |
|
Jean-Marc Valin
|
b05f950e38
|
Using the right name: s/gemm/sgemv/
|
2018-11-30 10:56:44 -05:00 |
|
Jean-Marc Valin
|
c395a68b7d
|
moving code around
|
2018-11-30 10:46:32 -05:00 |
|
Jean-Marc Valin
|
05f4851dcd
|
Making the code work even without AVX2/FMA
|
2018-11-30 10:32:04 -05:00 |
|
Jean-Marc Valin
|
1956467d79
|
Add AVX2/FMA to gcc options
|
2018-11-30 01:55:23 -05:00 |
|
Jean-Marc Valin
|
d7f0abcd19
|
Delaying the softmax() to avoid the pow()
Now at 5x real-time, with all the low-hanging fruit done.
|
2018-11-29 20:09:36 -05:00 |
|
Jean-Marc Valin
|
faf3fe3d24
|
gemm_accum16() doesn't need a multiple of 16 columns (just lines).
|
2018-11-29 19:50:09 -05:00 |
|
Jean-Marc Valin
|
7ee79b63df
|
Add AXV versions of exp(), tanh() and sigmoid()
Now 3x faster than real-time
|
2018-11-29 19:43:59 -05:00 |
|
Jean-Marc Valin
|
d961d009a0
|
Managing to actually use sparse matrices
Now 2x real-time!
|
2018-11-28 20:20:17 -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
|
ec671ed90e
|
Quick and dirty AVX2 implementation of gemm_accum
Brings us very close to real-time
|
2018-11-28 14:57:22 -05:00 |
|
Jean-Marc Valin
|
15fb1b3c77
|
Moving GRU_A's condition computation to the frame rate network
Completes optimizations from Section 3.6 of the LPCNet paper.
|
2018-11-28 14:13:59 -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
|
6c2f7e58fd
|
compiling synthesis
|
2018-11-27 15:08:04 -05:00 |
|
Jean-Marc Valin
|
36a0bf8c75
|
Wow, managed two bugs in a 25-character line
|
2018-11-27 14:50:38 -05:00 |
|
Jean-Marc Valin
|
c7b978b923
|
Fix reset_after GRU
|
2018-11-27 14:37:10 -05:00 |
|
Jean-Marc Valin
|
3c694db226
|
Better rounding
|
2018-11-27 13:11:41 -05:00 |
|
Jean-Marc Valin
|
0ddfdfc7c0
|
Add deemphasis
|
2018-11-27 12:34:39 -05:00 |
|
Jean-Marc Valin
|
5ac0ac7acc
|
Add code for copying the LPC
|
2018-11-27 11:44:04 -05:00 |
|
Jean-Marc Valin
|
e25a585de8
|
Match Python boundary condition
|
2018-11-27 00:23:26 -05:00 |
|
Jean-Marc Valin
|
4ccfbdff04
|
Frame network seems to be working
|
2018-11-26 18:41:54 -05:00 |
|
Jean-Marc Valin
|
538f25565a
|
Starting to actually test this -- fix a few OOB reads
|
2018-11-26 16:02:49 -05:00 |
|
Jean-Marc Valin
|
8d62ba067e
|
...
|
2018-11-26 15:39:06 -05:00 |
|
Jean-Marc Valin
|
c0e8f37c8b
|
Cleaning up the API
|
2018-11-26 13:12:17 -05:00 |
|
Jean-Marc Valin
|
575d8d6fa4
|
Adding sampling
|
2018-11-26 11:04:41 -05:00 |
|
Jean-Marc Valin
|
91c9524af3
|
Getting there
|
2018-11-26 02:49:25 -05:00 |
|
Jean-Marc Valin
|
4cf177412b
|
More plumbing
|
2018-11-26 02:33:49 -05:00 |
|
Jean-Marc Valin
|
7119eaf33b
|
Plumbing for the frame rate network
|
2018-11-25 17:20:24 -05:00 |
|
Jean-Marc Valin
|
70fdf47471
|
Copyright headers
|
2018-11-25 13:15:19 -05:00 |
|
Jean-Marc Valin
|
60c97b9723
|
Proper ordering for MDense weights
|
2018-11-24 16:19:02 -05:00 |
|
Jean-Marc Valin
|
141830ce5a
|
Fixing includes
|
2018-11-24 16:00:30 -05:00 |
|
Jean-Marc Valin
|
37fbcaee0b
|
mdense max size
|
2018-11-24 15:51:08 -05:00 |
|
Jean-Marc Valin
|
94ac0841df
|
Precomputing sizes
|
2018-11-24 15:47:48 -05:00 |
|
Jean-Marc Valin
|
c025744e34
|
Fix conv1d, default to size 384
|
2018-11-24 15:30:17 -05:00 |
|
Jean-Marc Valin
|
66486004ba
|
Implement MDense
|
2018-11-24 12:23:11 -05:00 |
|
Jean-Marc Valin
|
d4046036a9
|
Dump Conv1D (didn't check weight ordering at all)
|
2018-11-24 11:32:01 -05:00 |
|
Jean-Marc Valin
|
477d08734d
|
Dump embedding
|
2018-11-23 23:33:35 -05:00 |
|
Jean-Marc Valin
|
d93239e955
|
Using non-cudnn version of the GRU for the weights
Not sure how the layout of the CuDNN version is
|
2018-11-23 20:07:42 -05:00 |
|