Эндрю Нг Машинное обучение-10-Обнаружение аномалий

машинное обучение
Эндрю Нг Машинное обучение-10-Обнаружение аномалий

Продюсер: Ю Эр Хат
Автор: Питер
Редактор: Питер

Эндрю Нг Машинное обучение-10-Обнаружение аномалий

«В черном есть белое, а в белом — черное. Нет абсолютно белого, и нет абсолютно черного. Черное может дополнять белое, а белое может отражать черное. Все можно преобразить».

На этой неделе я в основном объяснил проблему обнаружения аномалий в машинном обучении, в том числе:

  1. возникает проблема
  2. Гауссово распределение
  3. Сценарии использования алгоритма
  4. Восемь методов обнаружения аномалий без присмотра
  5. Обнаружение аномалий и контролируемое обучение
  6. Выбор функции

Обнаружение аномалий Обнаружение новизны

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

Обнаружение аномалии – этоМетоды выявления необычных паттернов, которые не соответствуют ожидаемому поведению., также известный как обнаружение выбросов.

Есть также много приложений в бизнесе, таких какОбнаружение сетевых вторжений(выявление особых шаблонов в сетевом трафике, которые потенциально могут инициировать взлом),Мониторинг состояния системы, обнаружение мошенничества с транзакциями по кредитным картам, обнаружение отказов оборудования, идентификация рисковЖдать

проблемная мотивация

Обнаружение аномалий в основном используется в алгоритмах обучения без учителя.. Вывод проблемы:通过飞机的检测开始.

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

Предполагая, что имеется m двигателей, данные будут следующими:

x(1),x(2),,x(m)х ^ {(1)}, х ^ {(2)},…, х ^ {(м)}

Нарисуйте следующую схему:

Для заданного набора данных необходимо обнаружитьxtestx_{test}Является ли оно ненормальным, то есть какова вероятность того, что эти тестовые данные не принадлежат этому набору данных.

Как видно из приведенного рисунка, вероятность принадлежности к этой группе в синем кружке высока, и чем отдаленнее вероятность, тем ниже вероятность принадлежности к этой группе.

ifp(x){<εanomaly=εnormalif \quad p(x) \begin{cases} < \varepsilon & anomaly \\=\varepsilon & normal \end{cases}

Два других примера применения обнаружения аномалий:

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

Гауссово распределение

Распределение гауссов также называется нормальным распределением. Распределение удовлетворяет:

xN(мю,о2)x \sim N\left(\mu, \sigma^{2}\right)

Функция плотности вероятности:

p(x,мю,о2)=12число Пиоexp((xмю)22о2)p\left(x, \mu, \sigma^{2}\right)=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{(x-\mu)^{2}}{2 \sigma^{2}}\right)

значитмю\muза:

мю=1mi=1mx(i)\mu=\frac{1}{m} \sum_{i=1}^{m} x^{(i)}

дисперсияо2\sigma^2за :

о2=1mi=1m(x(i)мю)2\sigma^{2}=\frac{1}{m} \sum_{i=1}^{m}\left(x^{(i)}-\mu\right)^{2}

Примером распределения Гаусса является

когда среднеемю\muв то же время

  • Чем больше квадрат дисперсии, тем более коротким является график.
  • Чем меньше квадрат дисперсии, тем выше график.

сцены, которые будут использоваться

Обычно существует три сценария использования алгоритмов обнаружения аномалий:

  1. Требуется при разработке функцийОтфильтруйте аномальные данные, чтобы предотвратить какое-либо влияние на результаты нормализации и другой обработки
  2. правильнонет вывода тегахарактерные данныесделать скрининг, найти аномальные данные
  3. При выполнении бинарной классификации данных объектов с помеченными выходными данными из-за обучения некоторых категорийОчень мало образцов, и классы сильно несбалансированы., вы также можете рассмотреть возможность использования неконтролируемого алгоритма обнаружения выбросов, чтобы сделать

алгоритм

Конкретный процесс алгоритма

  1. Для заданного набора данных:

    x(1),x(2),...,x(m)x^{(1)},x^{(2)},...,x^{(m)}

    Рассчитать для каждой функциимю;о2\mu;\sigma^2оценочная стоимость

  2. Расчетные значения для двух параметров:

    мюj=1mi=1mxj(i)\mu_j=\frac{1}{m}\sum\limits_{i=1}^{m}x_j^{(i)}

    оj2=1mi=1m(xj(i)мюj)2\sigma_j^2=\frac{1}{m}\sum\limits_{i=1}^m(x_j^{(i)}-\mu_j)^2

  1. Расчет с распределением Гауссаp(x)p(x)

p(x)=Πj=1np(xj;мюj;оj2)=Πj=1n12число Пиоjexp((xjмюj)22оj2)p(x)=\Pi^n_{j=1}p(x_j;\mu_j;\sigma^2_j)=\Pi^n_{j=1}\frac{1}{\sqrt{2 \pi} \sigma_j} \exp \left(-\frac{(x_j-\mu_j)^{2}}{2 \sigma^{2}_j}\right)

  1. Обучающий набор из двух функций и нечастичный случай функции

  1. Трехмерный график представляет функцию плотности,zzОси оцениваются по значениям двух признаковp(x)p(x)значение

когдаp(x)>εp(x) > \varepsilonКогда прогноз является нормальными данными, в противном случае это ненормально

Дизайн исключительных алгоритмов

Когда мы разрабатываем систему обнаружения аномалий, начнем с помеченных (аномальных или нормальных) данных.

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

Восемь методов обнаружения аномалий без присмотра

  1. Технология обнаружения аномалий на основе статистики
    1. MAскользящая средняя
    2. 3—Sigma(критерий Лайды)
  2. Обнаружение аномалий на основе плотности
  3. Кластерное обнаружение аномалий
  4. Обнаружение аномалий на основе кластеризации K-средних
  5. One Class SVMобнаружение аномалий
  6. Isolation Forestобнаружение аномалий
  7. PCA+MDобнаружение аномалий
  8. AutoEncoderаномальное обнаружение

Обнаружение аномалий и контролируемое обучение

Обнаружение аномалий также использует помеченные данные, как и в обучении с учителем. Сравнение между ними:

аномальное обнаружение контролируемое обучение
Очень небольшое количество форвардных классов (необычные данныеy=1y=1), большое количество отрицательных классов (y=0y=0) Существует большое количество положительных и отрицательных классов одновременно.
Много разных исключений, очень сложно. Алгоритм обучается на очень небольшом количестве данных прямого класса. Существует достаточно экземпляров прямого класса, которые можно использовать для обучения алгоритма, и экземпляры прямого класса, встречающиеся в будущем, могут быть очень похожи на экземпляры в обучающем наборе.
Аномалии, с которыми мы столкнемся в будущем, могут сильно отличаться от тех, которые уже известны.
Например: Обнаружение мошенничества Производство (например, авиационных двигателей) Обнаружение работоспособности компьютеров в центрах обработки данных Например: почтовый фильтр, прогноз погоды, классификация опухолей.

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

Выбор функции

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

Некоторые аномальные данные могут отображаться вышеp(x)p(x)Значение , обрабатывается алгоритмом как обычные данные. Благодаря анализу ошибок добавляются новые функции для получения новых алгоритмов, которые помогают нам лучше обнаруживать аномалии.

Приобретение новых функций: объединение исходных функций для получения новых функций.

использованная литература

  1. Ли Ханг - Статистические методы обучения
  2. Восемь методов обнаружения аномалий без присмотра