Допустим, у меня есть некоторые данные, а затем я подгоняю данные с помощью модели (нелинейная регрессия). Затем я вычисляю R-квадрат ( ).
Когда R-квадрат отрицательный, что это значит? Значит ли это, что моя модель плохая? Я знаю, что диапазон может быть [-1,1]. Когда равен 0, что это также означает?
regression
goodness-of-fit
r-squared
curve-fitting
RockTheStar
источник
источник
Ответы:
может быть отрицательным, это просто означает, что:R2
Для людей, которые говорят, что находится между 0 и 1, это не так. Хотя отрицательное значение для чего-либо со словом «квадрат» может звучать так, как будто оно нарушает правила математики, это может произойти в модели R 2 без перехвата. Чтобы понять почему, нам нужно посмотреть, как рассчитывается R 2 .R2 R2 R2
Это немного долго. Если вы хотите получить ответ, не понимая его, переходите к концу. В противном случае я попытался написать это простыми словами.
Во- первых, давайте определим 3 переменные: , T S S и Е S S .RSS TSS ESS
Расчет RSS :
Для каждой независимой переменной мы имеем зависимую переменную y . Мы строим линейную линию наилучшего соответствия, которая предсказывает значение y для каждого значения x . Давайте называть значения у линии предсказывает у . Ошибка между тем, что предсказывает ваша линия, и фактическимзначением y, может быть вычислена как вычитание. Все эти различия возводятсяквадрат и суммируются, что дает Остаточная сумма квадратов R S S .x y y x y y^ y RSS
Полагая , что в уравнение,RSS=∑(y−y^)2
Расчет TSS :
Мы можем рассчитать среднее значение , которое называется ˉ уy y¯ . Если мы , то это просто горизонтальная линия через данные, потому что она постоянна. Что мы можем сделать с этим, однако, вычесть ˉ y (среднее значение y ) из каждого фактического значения y . Результат в квадрат и суммируются, что дает общую сумму квадратов Т S S .y¯ y¯ y y TSS
Подставляя это в уравнениеTSS=∑(y−y¯)2
Расчет ESS :
Различия между у (значения у предсказанной линия) и среднее значениеy^ y возводятсяквадрат и суммируются. Это Разъяснение сумма квадратов, которая равна Е( у - ˉ у )2y¯ ∑(y^−y¯)2
Помните, что , но мы можем добавить + у - у в нее, потому что она отменяет вне. Таким образом, Т S S = Σ ( у - у + у -TSS=∑(y−y¯)2 +y^−y^ . Расширение этих скобок, мы получаемTSS=Σ(у - у )2+TSS=∑(y−y^+y^−y¯)2 TSS= ∑ ( у- у^)2+ 2 * Σ (у- у^) ( у^- у¯) + ∑ ( у^- у¯)2
Когда, и только тогда , когда линия вычерчивается с перехватом, следующий всегда верно: . Таким образом, Т S S = Σ ( у - у ) 2 + Σ ( у - ˉ у ) 2 , который можно заметить только означает , что Т S S = R S S +2 ∗ ∑ (у- у^) ( у^- у¯) = 0 TSS= ∑ ( у- у^)2+ ∑ ( у^- у¯)2 . Если мы разделим все члены на T S S и переставим, получим 1 - R S STSS= RSS+ESS TSS .1 - RSSTSSзнак равноESSTSS
Вот важная часть :
определяется как то, насколько дисперсия объясняется вашей моделью (насколько хороша ваша модель). В форме уравнения это R 2 = 1 - R S Sр2 . Выглядит знакомо? Когда линия построена с пересечением, мы можем заменить это какR2=ESSр2= 1 - R SSTSS . Поскольку числитель и демонинатор являются суммами квадратов,R2должен быть положительным.р2знак равноESSTSS р2
НО
Когда мы не указываем перехват, не обязательно равен 0 . Это означает , что Т S S = R S S + Е S S + 2 * Σ ( у - у ) ( у - ˉ у ) .2 ∗ ∑ (у- у^) ( у^- у¯) 0 TSS= R SS+ ESS+ 2 ∗ ∑ ( у- у^) ( у^- у¯)
Разделив все члены на , получим 1 - R S STSS .1 - R SSTSS= ESS+ 2 ∗ ∑ ( у- у^) ( у^- у¯)TSS
Наконец, подставим , чтобы получить . На этот раз в числителе есть термин, который не является суммой квадратов, поэтому он может быть отрицательным. Это сделало быR2отрицательным. Когда это произойдет? 2*Σ(у - у )( у - ˉ у )будет отрицательнымкогдау - у отрицателен и у - ˉ у положителен, или наоборот. Это происходиткогда горизонтальная линия ˙ у фактически объясняет данные лучшечем линии наилучшего соответствия.р2= ESS+ 2 ∗ ∑ ( у- у^) ( у^- у¯)TSS р2 2 ∗ ∑ ( у- у^) ( у^- у¯) Y- у^ Y^- у¯ Y¯
Вот преувеличенный пример отрицательного значения (Источник: Университет Хьюстон Клир Лейк)р2
Проще говоря:
Вы также спрашивали о .р2= 0
Я рекомендую вам сделать это через это. Если вы посчитали это полезным, вы также должны подтвердить ответ fcop здесь, на который я должен был сослаться, потому что это было давно.
источник
Пока ни один из ответов не является полностью правильным, поэтому я попытаюсь дать представление о R-Squared. Я дал более подробное объяснение этого в своем блоге здесь "Что такое R-Squared"
Сумма в квадрате Ошибка
Цель обычной регрессии по методу наименьших квадратов состоит в том, чтобы получить линию, которая минимизировала ошибку суммы в квадрате. Линия по умолчанию с минимальной квадратической ошибкой является горизонтальной линией через среднее значение. По сути, если вы не можете сделать лучше, вы можете просто предсказать среднее значение, и это даст вам минимальную квадратическую ошибку
R-Squared - это способ измерения, насколько лучше, чем средняя линия, которую вы сделали, на основе суммы квадратов ошибок. Уравнение для R-Squared является
Теперь SS Regression и SS Total являются суммами квадратов. Оба из них всегда положительны. Это означает, что мы берем 1 и вычитаем положительное значение. Таким образом, максимальное значение R-Squared имеет положительное значение 1, а минимальное - отрицательную бесконечность. Да, это правильно, диапазон R-квадратов находится между -infinity и 1, а не -1 и 1 и не 0 и 1
Что такое ошибка в квадрате суммы
Сумма квадрата ошибки - это ошибка в каждой точке, ее возведение в квадрат и сложение всех квадратов. Для общей ошибки он использует горизонтальную линию через среднее значение, потому что это дает наименьшую сумму квадратов ошибки, если у вас нет никакой другой информации, т.е. вы не можете выполнить регрессию.
Как уравнение именно это
Теперь с регрессом наша цель состоит в том, чтобы сделать лучше, чем среднее. Например, эта линия регрессии даст меньшую квадратическую ошибку, чем при использовании горизонтальной линии.
Уравнение для квадрата ошибки регрессии это
В идеале, у вас должна быть нулевая ошибка регрессии, т.е. ваша линия регрессии будет идеально соответствовать данным. В этом случае вы получите значение R-Squared 1
Отрицательный R в квадрате
Вся информация выше довольно стандартная. А как насчет отрицательного R-Squared?
Что ж, получается, что нет причины, по которой ваше уравнение регрессии должно давать меньшую квадратическую ошибку, чем среднее значение. Обычно считается, что если вы не можете сделать лучший прогноз, чем среднее значение, вы просто используете среднее значение, но ничто не заставляет это быть причиной. Например, вы можете предсказать медиану для всего.
На практике при обычной регрессии с наименьшим квадратом наиболее распространенным временем получения отрицательного значения R-квадрата является форсирование точки, через которую должна пройти линия регрессии. Обычно это делается установкой перехвата, но вы можете провести линию регрессии через любую точку.
Когда вы делаете это, линия регрессии проходит через эту точку и пытается получить ошибку минимальной суммы в квадрате, все еще проходя через эту точку.
По умолчанию в уравнениях регрессии в качестве точки, через которую проходит линия регрессии, используются среднее значение x и среднее значение y. Но если вы проведете его через точку, которая находится далеко от того места, где обычно находится линия регрессии, вы можете получить ошибку квадрата суммы, которая выше, чем при использовании горизонтальной линии
На изображении ниже обе линии регрессии были вынуждены иметь точку пересечения y, равную 0. Это вызвало отрицательный R-квадрат для данных, которые сильно смещены от начала координат.
Для верхнего набора точек, красных, линия регрессии является наилучшей из возможных линий регрессии, которая также проходит через начало координат. Просто случается, что эта линия регрессии хуже, чем при использовании горизонтальной линии, и, следовательно, дает отрицательный R-квадрат.
Неопределенный R-Squared
Существует один особый случай, о котором никто не упомянул, где вы можете получить неопределенный R-Squared. То есть, если ваши данные полностью горизонтальны, то ваша общая квадратичная ошибка равна нулю. В результате у вас будет ноль, деленный на ноль в уравнении R-квадрата, который не определен.
источник
Как отмечает предыдущий комментатор, r ^ 2 находится между [0,1], а не [-1, + 1], поэтому нельзя быть отрицательным. Вы не можете возвести в квадрат значение и получить отрицательное число. Возможно, вы смотрите на корреляцию? Это может быть между [-1, + 1], где ноль означает, что нет никакой связи между переменными, -1 означает, что есть прекрасная отрицательная связь (когда одна переменная увеличивается, другая уменьшается), и +1 - это абсолютно положительный отношения (обе переменные идут вверх или вниз соответственно).
Если вы действительно смотрите на r ^ 2, то, как описывает предыдущий комментатор, вы, вероятно, видите скорректированное значение r ^ 2, а не фактическое значение r ^ 2. Подумайте, что означает статистика: я преподаю статистику по поведенческим наукам, и самый простой способ научить моих учеников значению r ^ 2 - это «% дисперсии объяснено». Таким образом, если у вас r ^ 2 = 0,5, модель объясняет 50% вариации зависимой (исходной) переменной. Если у вас отрицательный r ^ 2, это будет означать, что модель объясняет отрицательный% переменной результата, что не является интуитивно разумным предложением. Однако скорректированное значение r ^ 2 учитывает размер выборки (n) и количество предикторов (p). Формула для расчета здесь, Если у вас очень низкое значение r ^ 2, то получить отрицательные значения достаточно просто. Конечно, отрицательно скорректированное значение r ^ 2 не имеет более интуитивного значения, чем обычное значение r ^ 2, но, как говорит предыдущий комментатор, это просто означает, что ваша модель очень плохая, если не просто бесполезная.
источник