Вопрос об извлечении моделей, исследованных TPOT, которые получили более низкую оценку - PullRequest
0 голосов
/ 28 мая 2019

Когда я заканчивал модель, основанную на TPOT, мне было любопытно узнать об исследуемых моделях. Я обнаружил, что с помощью этого:

models_tested = pd.DataFrame(tpot.evaluated_individuals_).transpose()

Если я отсортирую этот dataFrame по внутреннему_cv_score, я смогу увидеть верхнюю модель в позиции индекса 0, а также cv_score для других протестированных моделей. Например:

models_tested.sort_values(['internal_cv_score'], ascending=False)[3:6]

Возвращает это для моделей с 3 по 6: Screen Shot 2019-05-28 at 11 29 32 AM

Затем я могу выбрать, например, модель 5 следующим образом:

models_tested.index[5]

, который возвращает строку:

'LassoLarsCV(SelectPercentile(SelectFwe(LassoLarsCV(input_matrix, LassoLarsCV__normalize=True), SelectFwe__alpha=0.016), SelectPercentile__percentile=79), LassoLarsCV__normalize=True)'

Есть ли способ "преобразовать" это определение модели (str) в реальную модель? Есть ли в TPOT какая-либо функция, которая хранит внутри себя метод подбора для этой конкретной модели, чтобы получить его CV?

...