Я пытаюсь обучить случайный классификатор леса по очень несбалансированному набору данных с 2 классами (доброкачественный).Как использовать весовые коэффициенты для случайного классификатора леса в Orange?
Я видел и следовал коду предыдущего вопроса (How to set up and use sample weight in the Orange python package?) и пытался установить различные более высокие веса для экземпляров данных класса меньшинства, но классификаторы, которые я получаю, работают точно так же.
Мой код:
data = Orange.data.Table(filename)
st = Orange.classification.tree.SimpleTreeLearner(min_instances=3)
forest = Orange.ensemble.forest.RandomForestLearner(learner=st, trees=40, name="forest")
weight = Orange.feature.Continuous("weight")
weight_id = -10
data.domain.add_meta(weight_id, weight)
data.add_meta_attribute(weight, 1.0)
for inst in data:
if inst[data.domain.class_var]=='malign':
inst[weight]=100
classifier = forest(data, weight_id)
ли я что-то отсутствует?