|
@@ -320,7 +320,8 @@ espresso.Reader = class {
|
|
|
obj.outputs = [{ name: 'outputs', value: top }];
|
|
obj.outputs = [{ name: 'outputs', value: top }];
|
|
|
obj.chain = [];
|
|
obj.chain = [];
|
|
|
switch (type) {
|
|
switch (type) {
|
|
|
- case 'convolution': {
|
|
|
|
|
|
|
+ case 'convolution':
|
|
|
|
|
+ case 'deconvolution': {
|
|
|
this._weights(obj, data, [data.C, data.K, data.Nx, data.Ny]);
|
|
this._weights(obj, data, [data.C, data.K, data.Nx, data.Ny]);
|
|
|
if (data.has_biases) {
|
|
if (data.has_biases) {
|
|
|
obj.inputs.push(this._initializer('biases', data.blob_biases, 'float32', [data.C]));
|
|
obj.inputs.push(this._initializer('biases', data.blob_biases, 'float32', [data.C]));
|
|
@@ -332,6 +333,11 @@ espresso.Reader = class {
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
|
|
+ case 'batchnorm': {
|
|
|
|
|
+ obj.inputs.push(this._initializer('params', data.blob_batchnorm_params, 'float32', [4, data.C]));
|
|
|
|
|
+ delete data.blob_batchnorm_params;
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
case 'inner_product': {
|
|
case 'inner_product': {
|
|
|
this._weights(obj, data, [data.nC, data.nB]);
|
|
this._weights(obj, data, [data.nC, data.nB]);
|
|
|
if (data.has_biases) {
|
|
if (data.has_biases) {
|