Как определить выбросы на основе регрессии с логарифмическим масштабом?

Вопрос или проблема

Я сталкиваюсь с проблемой, когда мне нужно обнаружить выбросы в сборе данных. Цель состоит в том, чтобы выявлять выбросы по переменной Y на основе ее связи с переменной X.
Для этого я сделал следующее:

  1. Построил график в логарифмическом масштабе

  2. Провел регрессию между двумя переменными с использованием следующей функции def exponential_function(x, a, b): return b * (x ** a). Таким образом, переменная Y имеет теоретическую оценку на основе переменной X.

  3. Я рассчитал остатки с логарифмическими значениями и нормализовал их, чтобы определить выбросы. Я считал, что чем дальше точка данных от своей оценки, тем больше вероятность того, что она будет считаться выбросом.

На данный момент я решил, что только 5% нормализованных остатков считаются выбросами -95-й процентиль- (вы можете видеть их на картинке красным цветом).

Мои вопросы:

**1. Какие самые распространенные методы обнаружения выбросов по регрессиям на основе логарифмической шкалы?

  1. Существует ли какой-либо другой надежный метод для определения выбросов, который не основывается на количестве точек данных? – то есть не основанный на процентилях. Например, если моя выборка содержит только 100 точек данных, но они все “близки к оценке”, я не хочу, чтобы код заставлял считать, что есть 5 выбросов из-за 95-го процентиля, а чтобы он сообщил мне, что выбросов не обнаружено, поскольку все они разумны и близки к оценке.**

Спасибо заранее!

[![введите описание изображения здесь][1]][1]
[1]: https://i.sstatic.net/BHQZOKLz.png

Ответ или решение

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

1. Наиболее распространенные методы для обнаружения выбросов в логарифмических регрессионных моделях:

  • Анализ остатков:

    • После построения модели регрессии и получения предсказанных значений Y можно вычислить остатки (разность между фактическими значениям и предсказанными). В вашем случае остатки должны быть определены в логарифмическом масштабе.
    • Для оценки выбросов можно использовать графики остатков, такие как Q-Q Plot, для визуализации нормальности остатков.
  • Стандартные отклонения:

    • Вы можете установить порог для остатков, основываясь на стандартном отклонении. Например, значения, превышающие 2 или 3 стандартных отклонения от среднего остатка, могут быть рассмотрены как выбросы.
  • Метод Бернаули:

    • Данный метод основан на сравнении остатков с предопределенной пороговой значимостью на основе нормального распределения, чтобы выявить аномальные наблюдения.
  • Махаланобисовое расстояние:

    • Для определения того, насколько каждый наблюдаемый элемент удален от среднего значения, можно использовать это расстояние. Оно помогает в понимании, насколько каждое наблюдение отклоняется от центральной точки многомерного распределения.

2. Более надежные методы определения выбросов, не основанные на количестве данных:

  • Бутстреп:

    • Вы можете использовать метод бутстрепа для оценки устойчивости своих оценок и выявления аномалий. Он позволяет вам повторно выборочно отбирать подмножества ваших данных и оценивать модель на этих подмножествах. Это может помочь в установлении отсутствия аномалий в данных.
  • Соседские методы и локальные подходы:

    • Методы, такие как LOF (Local Outlier Factor), которые оценивают каждую точку, основываясь на ее плотности относительно соседей, могут помочь выявить выбросы в зависимости от локальной структуры данных.
  • Статистические тесты:

    • Проведение брутто-тестов на выбросы, таких как тесты Кука или тесты на основе различных нарушений, может дать более надежные результаты, чем простое указание на процентиль.
  • Использование машинного обучения:

    • Алгоритмы, такие как Isolation Forest или One-Class SVM, могут быть обучены для определения выбросов, основываясь на сложных паттернах в данных, без необходимости жесткого порогового определения выборок.

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

Оцените материал
Добавить комментарий

Капча загружается...