From c66ab1e81efc1cc537128e6206b99c599cbb3771 Mon Sep 17 00:00:00 2001 From: Alexandre Storelli Date: Thu, 7 Mar 2019 11:31:08 +0100 Subject: [PATCH 1/2] get rid of zerorpc postinstall for electron. yay! --- package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/package.json b/package.json index fc10df8..6356f74 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,7 @@ "description": "Distinguish ads, talk and music in radios", "main": "post-processing.js", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", - "postinstall": "install-app-deps" + "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [ "adblock", From 9f8162f37fe28b5cfab164b68720d6b239aa82eb Mon Sep 17 00:00:00 2001 From: Alexandre Storelli Date: Wed, 20 Mar 2019 19:38:01 +0100 Subject: [PATCH 2/2] add performance tests for ML part, commented out in production --- predictor-ml/ml.js | 1 + predictor-ml/mlpredict.py | 8 +++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/predictor-ml/ml.js b/predictor-ml/ml.js index b995d2f..efb6f2d 100644 --- a/predictor-ml/ml.js +++ b/predictor-ml/ml.js @@ -151,6 +151,7 @@ class MlPredictor extends Writable { try { var results = JSON.parse(res); //log.debug("results=" + JSON.stringify(results)) + //log.debug("perf: nwin=" + results.nwin + " pre=" + results.timings.pre + " tf=" + results.timings.tf + " post=" + results.timings.post + " total=" + results.timings.total); } catch(e) { log.error(self.canonical + " could not parse json results: " + e + " original data=|" + res + "|"); return callback(err); diff --git a/predictor-ml/mlpredict.py b/predictor-ml/mlpredict.py index cb65849..736cd3e 100644 --- a/predictor-ml/mlpredict.py +++ b/predictor-ml/mlpredict.py @@ -177,9 +177,9 @@ class MlPredictor(object): logger.debug("ceps.shape " + str(ceps.shape) + " nnXLen " + str(nnXLen) + " nnXStep " + str(nnXStep) + " nwin " + str(nwin)) X = np.empty([nwin, nnXLen, mfccNceps]) - #t3 = timer() for i in range(nwin): X[i,:,:] = ceps[i*nnXStep:(i*nnXStep+nnXLen),:] + #t3 = timer() predictions = self.model.predict(X, verbose=debug) @@ -195,6 +195,7 @@ class MlPredictor(object): logger.debug("confidence " + str(confidence)) logger.debug("rms " + str(rms)) + #t5 = timer() result = json.dumps({ 'type': predclass, 'data': predictions.tolist(), @@ -203,11 +204,12 @@ class MlPredictor(object): 'rms': rms, 'mem': process.memory_info().rss, 'lenpcm': len(self.pcm), - #'timings': {'mfcc': str(t2-t1), 'inference': str(t4-t3)} + #'timings': {'pre': str(t3-t0), 'tf': str(t4-t3), 'post': str(t5-t4), 'total': str(t5-t0)}, + 'nwin': nwin }) logger.info("audio predicted probs=" + result) - + #logger.info("pre=%s ms tf=%s ms post=%s ms total=%s ms" % (t3-t0, t4-t3, t5-t4, t5-t0)) return result def exit(self):