Размер шрифта
-
+

Искусственный интеллект. Машинное обучение - стр. 51

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

Подходы к выявлению аномалий и выбросов:

-Статистические методы

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

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

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

При использовании Z-оценки для выявления аномалий обычно устанавливается определенный порог, за который значения считаются аномальными. Обычно принимается порог в 2 или 3 стандартных отклонения от среднего. Значения, превышающие этот порог, считаются потенциальными аномалиями и могут требовать дополнительного анализа или обработки. Z-оценка предоставляет аналитикам и исследователям информацию о том, насколько каждое наблюдение отличается от среднего значения в выборке, и помогает выявить потенциальные аномалии, которые могут быть важны для дальнейшего анализа данных.

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

Для этого мы можем использовать Z-оценку. Предположим, у нас есть столбец данных, содержащий цены продуктов. Мы можем вычислить Z-оценку для каждой цены, используя формулу:

После вычисления Z-оценок мы можем увидеть, что только цена 30 имеет Z-оценку превышающую 2, следовательно, она считается аномальной. Это может указывать на возможную ошибку в данных или наличие выброса в цене продукта,

который требует дополнительного исследования.

Рассмотрим пример кода на Python, который вычисляет Z-оценку для набора данных и идентифицирует аномальные значения:

```python

import numpy as np

# Пример данных о ценах продуктов

prices = [10, 12, 15, 9, 11, 30, 13, 14, 8, 11]

# Вычисляем среднее значение и стандартное отклонение

mean_price = np.mean(prices)

std_dev = np.std(prices)

# Определяем порог Z-оценки

threshold = 2

# Вычисляем Z-оценку для каждой цены

z_scores = [(price – mean_price) / std_dev for price in prices]

# Идентифицируем аномальные значения

anomalies = [price for price, z_score in zip(prices, z_scores) if abs(z_score) > threshold]

Страница 51