diff options
author | Jean-Marc Valin <jmvalin@jmvalin.ca> | 2017-07-14 15:46:35 -0400 |
---|---|---|
committer | Jean-Marc Valin <jmvalin@jmvalin.ca> | 2017-07-14 15:46:35 -0400 |
commit | dac3cf312471782418e5e2bdb38a7c4269ba9cee (patch) | |
tree | 61082ffedd80af5a6261ad4a6b97a857220d1dec | |
parent | a628dd5ea79469893a187a80939382f59fe398a9 (diff) | |
download | opus-dac3cf312471782418e5e2bdb38a7c4269ba9cee.tar.gz |
Compensate for probability bias from the RNN
-rw-r--r-- | src/analysis.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/analysis.c b/src/analysis.c index 64292205..eb7b1afe 100644 --- a/src/analysis.c +++ b/src/analysis.c @@ -829,9 +829,11 @@ static void tonality_analysis(TonalityAnalysisState *tonal, const CELTMode *celt /* Probability of speech or music vs noise */ info->activity_probability = frame_probs[1]; - info->music_prob = frame_probs[0]; + /* It seems like the RNN tends to have a bias towards speech and this + warping of the probabilities compensates for it. */ + info->music_prob = frame_probs[0] * (2 - frame_probs[0]); - /*printf("%f %f\n", frame_probs[0], frame_probs[1]);*/ + /*printf("%f %f %f\n", frame_probs[0], frame_probs[1], info->music_prob);*/ #ifdef MLP_TRAINING for (i=0;i<25;i++) printf("%f ", features[i]); |