Оценки дерева ВСЕГДА смещены?


9

Я делаю домашнюю работу по деревьям принятия решений, и один из вопросов, на которые я должен ответить, это «Почему оценки построены из предвзятых деревьев, и как мешки помогают уменьшить их дисперсию?».

Теперь я знаю, что переоснащенные модели, как правило, имеют очень низкий уклон, потому что они пытаются уместить все точки данных. И у меня был скрипт на Python, который подгонял дерево к некоторому набору данных (с одной функцией. Это была просто синусоида, с некоторыми отклонениями, рисунок ниже). Итак, я подумал: «Хорошо, если я переоценил данные, могу ли я сместить нулевое значение?». И оказалось, что даже при глубине 10000 есть еще несколько точек, через которые кривая не проходит.

введите описание изображения здесь

Я пытался найти почему, но я не мог найти объяснение. Я предполагаю, что могут быть некоторые деревья, которые отлично пройдут все точки, и что те, которые я получил, были просто "неудачей". Или что другой набор данных мог бы дать мне непредвзятый результат (может быть, идеальная синусоида?). Или даже это, возможно, разрезы, сделанные в начале, сделали невозможным дальнейшие разрезы, чтобы полностью разделить все точки.

Итак, принимая во внимание этот набор данных (поскольку он может отличаться для других), мой вопрос: возможно ли переопределить дерево до точки, где смещение стремится к нулю, или всегда будет некоторое смещение, даже если на самом деле маленький? И если всегда есть хоть какой-то уклон, почему это происходит?

PS Я не знаю, может ли это быть уместно, но я использовал DecisionTreeRegressorfrom sklearnдля подгонки модели к данным.


3
Добро пожаловать на наш сайт! Обратите внимание, что нет необходимости добавлять «спасибо заранее» в ваш вопрос, лучше всего выразить свою благодарность, подождать, пока вы не получите некоторые ответы, и принять (зеленая галочка) тот, который помог вам больше всего! Если вы еще этого не сделали, почему бы не посмотреть наш тур, чтобы увидеть, как работает этот сайт?
Серебряная рыба

3
Рассмотрим функцию y = 0, и вы пытаетесь подобрать y = f (x), где x принимает некоторые случайные значения. Является ли оценка дерева решений предвзятым в этом, по общему признанию, случае?
jbowman

Ответы:


10

Модель дерева решений не всегда более предвзята, чем любая другая модель обучения.

X[0,1]

YX

YXI<.5(X)+N(0,1)

YXX

YXX+N(0,1)

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

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

Итак, чтобы узнать, является ли модель предвзятой, вам необходимо знать, каков истинный механизм данных, лежащий в основе. В реальных жизненных ситуациях вы просто никогда не узнаете об этом, поэтому вы никогда не сможете сказать, является ли модель в реальной жизни предвзятой или нет. Иногда мы думаем, что мы совершенно правы в течение долгого времени, но затем возникает предвзятость с более глубоким пониманием (гравитация Ньютона к гравитации Эйнштейна является, по крайней мере, апокрифическим примером).

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


0

Тот факт, что некоторые точки в ваших данных все еще не прогнозируются, может быть вызван неустранимой ошибкой. Теория состоит в том, что в машинном обучении есть приводимая и неустранимая ошибка. Идея неснижаемой ошибки заключается в том, что независимо от того, насколько хороша ваша модель, она никогда не будет идеальной. Это связано с несколькими причинами. Во-первых, независимо от того, насколько надежны ваши тренировочные функции, всегда будет какая-то скрытая функция, влияющая на вывод, который не включает ваши тренировочные данные. Другая причина заключается в том, что почти во всех данных есть некоторые выбросы. Вы всегда можете попытаться сделать свои модели максимально устойчивыми к выбросам, но независимо от того, как сильно вы стараетесь, выбросы всегда будут существовать. (Это не означает, что вы не должны думать о выбросах при создании моделей). И последняя деталь: вы не

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.