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 |
|
Jean-Marc Valin
|
b0c61158f7
|
More meaningful names
|
2018-11-23 19:51:34 -05:00 |
|
Jean-Marc Valin
|
b9cd61be8b
|
Work in progress translation to C
|
2018-11-23 19:43:58 -05:00 |
|
Jean-Marc Valin
|
8caaa5e917
|
Output directly to 16-bit (raw) PCM
|
2018-11-07 03:26:10 -05:00 |
|
Jean-Marc Valin
|
cf926d11e0
|
Project name is LPCNet
|
2018-10-25 19:19:06 -04:00 |
|
David Rowe
|
bf04b53a44
|
Cleanup
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
2018-10-25 16:19:45 -04:00 |
|
Jean-Marc Valin
|
db7569c3da
|
moving hyper-parameters to new_lpcnet_model() arguments
more cleaning up too
|
2018-10-24 14:57:34 -04:00 |
|
Jean-Marc Valin
|
5ff58fa117
|
remove import that no longer exists
|
2018-10-24 14:09:05 -04:00 |
|
Jean-Marc Valin
|
92281bbe31
|
s/CELPNet/LPCNet/
|
2018-10-23 23:10:41 -04:00 |
|
Jean-Marc Valin
|
7c28191b60
|
Rename the current files to use the LPCNet name since they're no longer WaveNet
|
2018-10-22 13:40:54 -04:00 |
|
Jean-Marc Valin
|
97dcf52a01
|
Remove no longer used files (old wavenet and LPCNet implementations)
|
2018-10-22 13:40:11 -04:00 |
|
Jean-Marc Valin
|
3122b6b3bc
|
most promising model for now
|
2018-10-21 02:45:22 -04:00 |
|
Jean-Marc Valin
|
f9fe6c0ed8
|
clear pitch features in testing too
|
2018-10-21 02:45:22 -04:00 |
|