opencv/modules/ml
codingforfun 24e2e0d3f9 #11143 [FIX] Normalize node risk with sample weight sum
In case of regression trees, node risk is computed as sum of squared
error. To get a meaningfull value to compare with it needs to be
normalized to the number of samples in the node (or more generally to
the sum of sample weights in this node). Otherwise the sum of squared
error is highly dependend on the number of samples in the node and
comparision with `regressionAccuracy` parameter is not very meaningful.

After normalization `node_risk` means in fact sample variance for all
samples in the node, which makes much more sence and seams to be what
was originaly intended by the code given that node risk is later used as
a split termination criteria by
```
sqrt(node.node_risk) < params.getRegressionAccuracy()
```
2018-03-27 15:39:36 +02:00
..
doc Updated ml module interfaces and documentation 2015-02-17 11:46:14 +03:00
include/opencv2 Merge pull request #7371 from mshabunin:aruco-java-wrap 2016-10-01 15:38:59 +00:00
misc/python Adding of user-defined type conversions for python bindings inside module directories 2016-08-16 13:10:17 +03:00
src #11143 [FIX] Normalize node risk with sample weight sum 2018-03-27 15:39:36 +02:00
test Add JSON support. 2016-08-11 00:53:15 +08:00
CMakeLists.txt Add python and java support for ml module 2015-03-19 13:22:30 +03:00