Случайный лес, у.е. c для обучающей выборки и тестовой выборки - PullRequest
0 голосов
/ 10 июля 2020

Я пытаюсь настроить свой случайный классификатор леса. Когда я использую GridSearchCV, лучшие параметры - min_samples_split = 2, min_samples_leaf = 4, max_depth = None, что, на мой взгляд, определенно является перебором. Поэтому я рисую au c как для данных обучения, так и для данных тестирования:

AU C vs глубина

График показывает, что по мере увеличения max_depth будут увеличиваться как train_au c, так и test_au c; имеет ли этот график смысл? Потому что я думаю, что в какой-то момент, когда мы увеличим глубину, производительность данных тестирования фактически упадет на go.

Ответы [ 2 ]

0 голосов
/ 11 июля 2020

Вы правы, ожидая, что большие max_depth приведут к переобучению и, в конечном итоге, к снижению результатов теста. Однако, как показывает ваш график, этого не происходит с вашими данными до достижения глубины 14. Вы говорите, что оптимальным max_depth является None, то есть дерево с полной глубиной, что является довольно неожиданным. , но нам нужно больше узнать о ваших данных, пространстве поиска и т. д. c. сказать гораздо больше. См., Например, https://datascience.stackexchange.com/q/66350/55122. Итак, глядя на свой график, возможно, вы предпочтете глубину около 10, как потенциально более стабильную, хотя и немного менее производительную модель.

0 голосов
/ 10 июля 2020

Я думаю, вам нужно ограничить "max_depth", чтобы избежать переобучения. Это правило должно быть вашей интуицией. Поэтому мой совет: прочтите это https://medium.com/all-things-ai/in-depth-parameter-tuning-for-random-forest-d67bb7e920d. Может вам это поможет

...