kNN weights of material-specific regressors should not be used for global regressors.
When using kNN classifiers for prediction and setting the global-classifier-threshold, the 'wrong' weights are used for those classifiers that exceed the theshold. Currently, the weights of the material-specific regressors are used although the global regressor is used for prediction. Current version with threshold at 4 degrees SAM: - SAM values like `[0.2, 1.75, 2.23, 4.56, 8.56, 12.34]`) - classification map `[32, 34, 56, 1, 1, 1]` - weights `[wMAT, wMAT, wMAT, wMAT, wMAT, wMAT]` # wMAT = weight of material specific classifier But it should be: - SAM values like `[0.2, 1.75, 2.23, 4.56, 8.56, 12.34]`) - classification map `[32, 34, 56, 1, 1, 1]` - weights `[wMAT, wMAT, wMAT, wGLOB, 0, 0]` # wGLOB = weight of global classifier which should only count once The worst case effect of this is: - SAM values like `[3.97, 20.54, 21.54, 22.54]`) - classification map `[32, 1, 1, 1]` - weights `[0.66, 0.025, 0.024, 0.023]` # wMAT = weight of material specific classifier - => Here, the global regressor is nearly ignored due to the very small weights of regressors 2, 3, 4, i.e., the prediction result is mainly computed from a regressor that does not really match well. This might result in bad predictions. But also an over-weighting of the global regressor is possible: - SAM values like `[3.97, 4.01, 4.02, 4.03]`) - classification map `[32, 1, 1, 1]` - weights `[0.66, 0.67, 0.68, 0.69]` - => Here, the global regressor accounts for three quarters of the prediction result and the improvement of the material-specific regressor is gone.
issue