ML - исправление падения в DTC - из за ранней инициализации критерия
This commit is contained in:
parent
4b02fb9c94
commit
13a1804dda
|
|
@ -4391,7 +4391,8 @@ begin
|
||||||
fMaxDepth := maxDepth;
|
fMaxDepth := maxDepth;
|
||||||
fMinSamplesSplit := minSamplesSplit;
|
fMinSamplesSplit := minSamplesSplit;
|
||||||
fMinSamplesLeaf := minSamplesLeaf;
|
fMinSamplesLeaf := minSamplesLeaf;
|
||||||
fCriterion := if criterion = nil then new GiniCriterion else criterion;
|
|
||||||
|
fCriterion := criterion;
|
||||||
|
|
||||||
fRandomSeed := ResolveRandomSeed(seed, fUserProvidedSeed);
|
fRandomSeed := ResolveRandomSeed(seed, fUserProvidedSeed);
|
||||||
fRng := new System.Random(fRandomSeed);
|
fRng := new System.Random(fRandomSeed);
|
||||||
|
|
@ -4437,6 +4438,9 @@ begin
|
||||||
// --- encode
|
// --- encode
|
||||||
var classes: array of integer;
|
var classes: array of integer;
|
||||||
var yEncArr := EncodeLabelsInt(yInt, classes);
|
var yEncArr := EncodeLabelsInt(yInt, classes);
|
||||||
|
|
||||||
|
if fCriterion = nil then
|
||||||
|
fCriterion := new GiniCriterion(classes.Length);
|
||||||
|
|
||||||
if classes.Length < 2 then
|
if classes.Length < 2 then
|
||||||
ArgumentError(ER_NEED_AT_LEAST_TWO_CLASSES);
|
ArgumentError(ER_NEED_AT_LEAST_TWO_CLASSES);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue