#14 · Primary category: Optimization & Heuristic Algorithms
fast-wavenet
Speedy Wavenet generation using dynamic programming :zap:
Project last updated:06/20/17
GitHub Stars
1.8K
Forks
303
Contributors
7
License
GPL-3.0
Why we included this project
For anyone building autoregressive models on causal dilated convolutions, WaveNet-style speech synthesis being the classic example, this repo shows a concrete way to speed up sample-by-sample generation. A naive implementation recomputes a growing binary tree of convolutions for each output, which scales as O(2^L); here the redundant work gets cached so a single generation step drops to O(L). The authors explain the algorithm clearly enough to reimplement in your own stack, and they include a working TensorFlow example plus timing experiments that show when the speedup actually pays off, since the naive path can win for small models thanks to GPU parallelization. It is research code rather than a packaged product, so treat it as a reference implementation and a guide for your own engineering. The idea generalizes beyond audio, applying anywhere you need to run causal dilated convolutional networks quickly over streaming data.
Articles for this project
No articles for this project yet.
To suggest a topic or contribute an article, contact us.
Related projects in this category
scikit-opt
Genetic Algorithm, Particle Swarm Optimization, Simulated Annealing, Ant Colony Optimization Algorithm,Immune Algorithm, Artificial Fish Swarm Algorithm, Differential Evolution and TSP(Traveling salesman)
ceres-solver
A large scale non-linear optimization library
FLAML
A fast library for AutoML and tuning. Join our Discord: https://discord.gg/Cppx2vSPVP.
sunfish
Sunfish: a Python Chess Engine in 111 lines of code
POT
POT : Python Optimal Transport