Pull to refresh

Comments 5

Обычно эту задачу решают так: кроме целевой переменной предсказывают еще и разброс для каждой точки (те у нас два предикта - центр распределения и дисперсия).

Где взять целевую переменную разброса?

Вы можете включить разброс в функцию потерь. Наивная реализация такая: пусть наша модель предсказывает дисперсию и центральную оценку (распределение) для каждой точки. Пусть наша функция потерь будет равна сумме z-score для всех точек (сумме расстояний от центральной оценки до точки разметки, деленных на оценку стандартного отклонения). Мы минимизируем нашу функцию потерь градиентным спуском. Получаем оценку центра и оценку дисперсии. Есть готовые библиотеки.

Коллега, заинтересовался вашей статьей, особенно после слов:

Но вот оценка принадлежности к интервалу имеет смысл. То есть вероятность принадлежности к интервалу [v-\epsilon, v+\epsilon]вполне может быть оценена и будет иметь вполне определённый смысл.

Тут полностью согласен - без доверительного интервала регрессия теряет половину смысла. А учитывая, что непараметрические методы регрессии далеко не совершенны, а параметрические методы применять можем далеко не всегда, проблема имеет место, да. Найти способ достоверного построения доверительного интервала, без привязки к закону распределения исходных данных - это было бы замечательно.

Но вот дальше у меня возник ряд мыслей по прочтению статьи. Я не математик, а инженер, и поэтому выскажусь в более прикладном плане.

Вот что мы понимаем под задачей регрессии? Оценить параметры уравнения модели, интерпретировать их, построить с помощью модели прогноз и оценить достоверность прогноза. Наличие уравнения и интерпретация его параметров - это же ключевой момент. Я здесь регрессии как таковой не вижу - нет ни уравнения, ни прогноза.

Далее, вы рассматриваете довольно специфическую функцию на заданном интервале. Собственно, таких функций в регрессионном анализе, как правило, и не рассматривается. Мы же не хотим уйти в задачу интерполяции? Есть, конечно, сложные виды зависимостей при анализе временных рядов, но там модели авторегрессии, это уже другой коленкор.

Вы взяли в качестве примера по сути некую реализацию случайной функции и с помощью вашего алгоритма нашли средние значения и оценили разброс относительно средних. ОК, хорошо. Но хотелось бы понять: для решения каких задач вы видите возможность применения своего алгоритма?

Если для непараметрической регрессии, то хотелось бы видеть уравнение, и главное - прогноз с доверительным интервалом.

Если для временных рядов - то вскрытие структуры этого временного ряда и опять же - прогноз. Если предполагается в этом случае определение какого-либо тренда, то оценка величины интервала времени, на котором этот тренд сохраняется. Любопытно было бы сравнить результаты вашего алгоритма с моделями авторегрессии.

Ну и, конечно же - как влияет изменение закона распределения на результаты.

Самое главное - нужен разбор применения алгоритма на примере практической задачи, с реально существующими, а не абстрактными данными. Это очень важно. Нужно, чтобы специалисты видели и могли оценить возможности вашего алгоритма.

То что я описал не применимо к временным рядам. По крайней мере напрямую. Поэтому сравнивать с авторегрессией неуместно -- это совершенно разные задачи. У меня же шла речь о классических задачах регрессии, когда по заданной обучающей выборке мы пытаемся предсказать некую непрерывную величину. Никакой привязки ко времени тут не предполагается.
Согласен, что пример на реальных данных был бы уместен. Я использовал предложенный алгоритм на своих рабочих задачах. И, к сожалению, не могу опубликовать здесь результаты. Возможно позже сделаю пример на каком-нибудь открытом датасете.

Sign up to leave a comment.

Articles