Я хочу знать, является ли процесс, описанный ниже, действительным / приемлемым и доступно ли любое обоснование.
Идея: контролируемые алгоритмы обучения не предполагают базовых структур / распределений данных. В конце дня они выводят точечные оценки. Я надеюсь как-то количественно оценить неопределенность оценок. Теперь процесс построения модели ML по своей природе является случайным (например, в выборке для перекрестной проверки для настройки гиперпараметра и в подвыборке в стохастическом GBM), поэтому конвейер моделирования даст мне разные выходные данные для одних и тех же предикторов с каждым другим начальным числом. Моя (наивная) идея состоит в том, чтобы запускать этот процесс снова и снова, чтобы придумать распределение прогноза, и я могу, надеюсь, сделать заявления о неопределенности прогнозов.
Если это имеет значение, наборы данных, с которыми я работаю, обычно очень малы (~ 200 строк).
Имеет ли это смысл?
Чтобы уточнить, я на самом деле не запускаю данные в традиционном смысле (то есть я не перевыбор данных). Один и тот же набор данных используется в каждой итерации, я просто использую случайность в xval и стохастической GBM.
Ответы:
Мне кажется, такой же хороший подход, как и любой другой, для количественной оценки неопределенностей в прогнозах. Просто убедитесь, что вы повторяете все шаги моделирования (для GBM, который будет настройкой параметров) с нуля в каждой загрузочной повторной выборке. Также может быть полезно начать ранжирование значимости для количественной оценки неопределенности в рейтинге.
Я обнаружил, что иногда интервалы не содержат фактического прогноза, особенно при оценке вероятности. Увеличение минимального количества наблюдений в каждом терминальном узле обычно решает это, по крайней мере, в данных, с которыми я работал.
Конформное прогнозирование кажется полезным подходом для количественной оценки достоверности прогнозов для новых данных. До сих пор я только поцарапал поверхность, и другие, вероятно, более подходят, чтобы высказать свое мнение по этому поводу.
В моем ответе на этот пост есть грубый R-код о поиске интервала прогнозирования GBM.
Надеюсь это поможет!
источник
Вы можете разделить вашу неопределенность в отношении прогноза на термины «отклонения» и «отклонения». Термин смещения относится к неправильной спецификации модели: если вы подходите линейной модели для нелинейной функции, вы всегда получите некоторую ошибку. Термин «отклонение» относится к ошибке в оценке параметров модели. Вы подходите к учету дисперсионной части неопределенности, пока не можете оценить смещение.
Как предполагает @ErikL, конформное предсказание является теоретически обоснованным подходом, который принимает идею, очень похожую на бутстрап. Конформное прогнозирование с использованием реконструкции модели с использованием новой точки учитывает как смещение, так и дисперсию, тогда как для регрессии им требуются значительные вычислительные ресурсы. Вы можете попробовать это с Python, используя нонконформистскую библиотеку .
источник
Нет, это кажется плохой идеей. Во-первых, как отметил Алексей, есть предвзятость и дисперсия. Даже для лучшего выбора параметров вы не можете избежать дисперсии. Ваш метод даже не пытается решить эту проблему. Есть еще одна очень важная проблема: некоторые и, вероятно, большинство ошибок вашей модели связаны с данными, а не с присущей модели случайностью. (Не говоря уже о том, что некоторые модели, такие как обычная линейная регрессия, вообще не являются случайными, а для случайных моделей степень случайности варьируется от модели к модели)
Я предлагаю вам проверить ваш подход на некоторых простых смоделированных данных и на какой-то модели, которую вы знаете. Я уверен, что по причинам, которые я описал, ваша оценочная ошибка будет намного меньше реальной ошибки (или ваше распределение будет гораздо более узким).
Для оценки распределения ошибок вы можете использовать старый добрый перекрестный контроль.
источник
Я думаю об этой проблеме сейчас. Вот мои выводы:
(1) Дельта-метод
(2) Повторная выборка начальной загрузки
(3) Байесовский метод
(4) Оценка средней дисперсии (MVE)
Идея состоит в том, чтобы попытаться оценить два источника изменчивости прогноза: неопределенность из оценки параметров модели и неустранимую ошибку.
Вот несколько ссылок:
Подходы машинного обучения для оценки интервала прогнозирования для выходных данных модели, Дурга Л. Шреста, Дмитрий П. Соломатин, 2006 г.
Сравнение некоторых оценок ошибок для моделей нейронных сетей, Роберт Тибширани, 1995 г.
Комплексный обзор интервалов прогнозирования на основе нейронных сетей и новых Авансы, Аббас Хосрави, Даг Крейтон, 2011
Надеюсь, что это поможет и исправить меня, что-либо из вышеперечисленного неуместно. Я хотел бы услышать больше от других.
источник