Используя пакет randomForest в R, я смог обучить случайный лес, который минимизировал общую частоту ошибок. Однако я хочу тренировать два случайных леса, которые сначала сводят к минимуму ложноположительную скорость (~ 0), а затем общую частоту ошибок, и одну, которая сначала максимизирует чувствительность (~ 1), а затем общую ошибку. Еще одна проблема заключается в том, что: с учетом ложной положительной скорости и чувствительности, тренируйте два разных случайных леса, которые удовлетворяют одному из этапов соответственно, а затем минимизируют общую частоту ошибок. Кто-нибудь знает, есть ли пакет r или пакет python или любое другое программное обеспечение, которое делает это и/или как это сделать? Спасибо за помощь.случайный лес с заданным ложным положительным и чувствительным
1
A
ответ
0
Это обходное решение, которое стоит попробовать. (Извините, что я не хватает репутации, чтобы положить его в качестве комментария.)
Как
- чувствительность = TP/(TP + FN)
- специфичностью = TN/(TN + FP)
- ER = (TP + TN)/(TP + FN + TN + FP)
(нотации от Sensitivity_and_specificity)
Если вы дублировать некоторые положительные/отрицательные образцы (или увеличение веса), ER будет приближать чувствительность/специфичность.
Итак, если вы хотите максимизировать чувствительность, то вы можете пробовать/дублировать некоторые положительные образцы в наборе данных, а затем обучать свой RF на нем. Для максимизации специфики вы можете сделать то же самое на отрицательных образцах.
0
Вы можете сделать сетку serarch над параметрами 'regularazation', чтобы наилучшим образом соответствовать вашему целевому поведению.
Параметры интереса:
- максимальная глубина
- ряд особенностей