shithub: opus

Download patch

ref: 60c97b97239d916124f898603cabe7142b41dca0
parent: 141830ce5a85c006d0b6df196a7cee839c8d4c3c
author: Jean-Marc Valin <jmvalin@jmvalin.ca>
date: Sat Nov 24 11:19:02 EST 2018

Proper ordering for MDense weights

--- a/dnn/dump_lpcnet.py
+++ b/dnn/dump_lpcnet.py
@@ -85,9 +85,9 @@
     name = self.name
     print("printing layer " + name + " of type " + self.__class__.__name__)
     weights = self.get_weights()
-    printVector(f, weights[0], name + '_weights')
-    printVector(f, weights[1], name + '_bias')
-    printVector(f, weights[1], name + '_factor')
+    printVector(f, np.transpose(weights[0], (1, 2, 0)), name + '_weights')
+    printVector(f, np.transpose(weights[1], (1, 0)), name + '_bias')
+    printVector(f, np.transpose(weights[2], (1, 0)), name + '_factor')
     activation = self.activation.__name__.upper()
     max_mdense_tmp = max(max_mdense_tmp, weights[0].shape[0]*weights[0].shape[2])
     f.write('const MDenseLayer {} = {{\n   {}_bias,\n   {}_weights,\n   {}_factor,\n   {}, {}, {}, ACTIVATION_{}\n}};\n\n'
--