Лучшее, что вы можете здесь сделать - это поиск в документах или использование других надежных ресурсов, которые являются обычными и наиболее подходящими настройками или эвристиками для поиска параметров каждого алгоритма. Точное знание того, какое значение необходимо установить для каждого из параметров, требует хорошего понимания того, что они делают.
Вот некоторые соображения по поводу тех, которыми вы поделились:
max_depth : Теоретически оно может быть таким же большим, как количество обучающих выборок, что, конечно, приведет к полному переоснащению. Тем не менее, сохранение его слишком низким может привести к недостаточной комплектации вашей модели. Поэтому, как правило, вы хотите держать этот в довольно небольших диапазонах, таких как тот, который вы использовали.
max_features : Это в основном ограничивает количество функций, которые нужно посмотреть для определения каждого разбиения дерева. В случае большого количества функций рекомендуется ограничить их значение, иначе по умолчанию у вас будет max_features=n_features
. Хотя, возможно, вместо указания диапазона здесь вы можете выполнить поиск по этим рекомендуемым практическим правилам подходам, предлагаемым в документах:
- max_features : int, float или {«Auto», «sqrt», «log2»}
- Если «auto», то max_features = sqrt (n_features).
- Если «sqrt», то max_features = sqrt (n_features) .
- Если «log2», то max_features = log2 (n_features).
В общем, я бы посоветовал вам внимательно посмотреть, что каждый из них делает, и следовать предложениям из надежных ресурсов. Обратите внимание, что в документах вы также предложили значения для нескольких параметров.