8000 Release Version 2.11 · lwtnn/lwtnn · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Version 2.11

Compare
Choose a tag to compare
@dguest dguest released this 30 Nov 21:07
· 47 commits to master since this release

Warning: Installation with CMake doesn't work properly with this version! A fix is on the way!

Major Change: Templated Classes

The biggest change in this release is that all the core matrix classes are now templated. Thanks to @benjaminhuth, who implemented it as a way to make networks differentiable (with autodiff: https://github.com/autodiff/autodiff/). It might also be useful to lower the memory footprint of NNs by using float rather than double as the elements of Eigen matrices.

The new templated classes can be found in include/lwtnn/generic and in the lwt::generic:: namespace. To avoid breaking backward compatibility, all the old files still exist in the original location. Where possible these files contain wrappers on the new templated version. In most cases, building against these wrapper classes won't force you to include Eigen headers (as was the case before).

Major Addition: FastGraph

It turns out that looking up every input in a std::map<std::string,double> is really slow in some cases! This release adds a new interface, FastGraph which takes its inputs as std::vector<Eigen::VectorX<T>> (for scalar inputs) or std::vector<Eigen::MatrixX<T>> (for sequences), and returns an Eigen::VectorX<T>. The FastGraph interface is templated, so you can use any element type supported by Eigen.

Minor Fixes

There are quite a few fixes, mostly in the python converter code:

  • The keras converter now supports activation layers in sequences (#99)
  • For those using BUILTIN_EIGEN with CMake, bumped the version of Eigen from 3.2.9 to 3.3.7 (thanks @ductng). If you're not using BUILTIN_EIGEN this should have no effect on you.
  • Various compatibility fixes for newer versions of Keras, deprecated Travis settings, etc
  • lwtnn-split-keras-network.py no longer depends on keras
0