Начнем с того, что r2_score()
метрика может быть сколь угодно низкой. Оно не должно быть между -1 и 1 и не соответствует коэффициенту корреляции Пирсона.В этом случае оценка ~ -10 означает, что модель работает значительно хуже, чем модель, которая выводит средние значения (соответствующие оценке r2, равной 0).
Выбранный r2_score()
является точной предварительной метрикой.для вашей модели.Вывод выглядит странно не потому, что есть проблема с метрикой, а потому что есть проблема с моделью.В текущем состоянии улучшение r2_score()
, вероятно, улучшит любую другую интересную метрику.Возможно, вас также заинтересует сходство между метриками в вашем наборе тестов и метриками в вашем наборе поездов - чем больше они похожи, тем выше вероятность того, что ваша модель будет хорошо обобщена (согласно гипотезе многообразия или любой другойрамки, избегающие бесплатных теорем обеда).В зависимости от предполагаемого применения, вы можете заботиться о худшем случае - может не иметь значения, если у вас есть r2 0,999, если в худшем случае автомобиль с самостоятельным вождением ошибочно принимает пешехода за безопасное местоводить.Возможно, вас заинтересует широкий диапазон калибровочных баллов - если ваша модель предсказывает сильный паттерн с хорошей точностью, но остатки демонстрируют сильное смещение в модели, что-то может очень хорошобыть не в порядке.В целом, качество модели сильно зависит от ее предполагаемого применения, и ваши показатели должны отражать ваши конечные цели.Используя в качестве примера для изученных структур индекса , иногда обобщение - это плохо, а вовсе не то, что вам нужно.
В вашем подходе существует несколько потенциальных проблем.Я не совсем уверен в металлургии, но многие проблемы химии имеют хаотическую динамику взаимодействия и нелегко моделируются наивным подходом , который просто накладывает модель на входные данные (наивное здесь не подразумевается отрицательно -наивный подход часто является хорошей отправной точкой и может полностью удовлетворить существующие требования.
Как правило, большая часть преимуществ, которые вы найдете, будет в разработке функций. В случае химических проблем это может включать в себя получение результатов из стандартных решений проблемы (которых явно недостаточно, поскольку вы идете прямо к машинному обучению), и рассматриваете их как функции в вашей нейронной сети.Идея состоит в том, что, хотя ни одна отдельная модель не является идеальной, они часто достаточно хороши и ошибочны по-разному, так что нейронная сеть способна выяснить, как объединить их вместе, чтобы получить лучший ответ.Это тип техники ансамбля.
Какие визуализации / анализ данных вы сделали?У вас есть представление о том, какие особенности соответствуют выходу, который вы пытаетесь предсказать?Возможно даже, что у вашего входа недостаточно информации, чтобы предсказать желаемый результат.Вы изучили данные, прежде чем сбросить значения NaN?Принесет ли лучший метод вменения дополнительный выигрыш?Ваша модель закодирована нормально. Понимание ваших данных - это, пожалуй, самая важная задача.
У Scikit-learn могут возникнуть проблемы с оптимизацией сетей с небольшим количеством узлов на каждом уровне.Процедура поиска в сетке и перекрестная проверка, помогающие определить оптимальные параметры, могут существенно улучшить вашу модель.Решение может быть чувствительным к допускам и другим подобным параметрам.