Pull to refresh

Comments 13

интересно было бы увидеть МЛ в связке с ранжированием в поисковой выдаче и оценке выдачи со стороны пользователя
Тема иинтересная, но по статье мне показалось, что возможности не очень богатые, я так понял прогноз работает просто по историческим данным того же параметра, а было бы интересно строить прогноз одного параметра по состоянию группы других параметров.
Любой инструмент решает какие-то одни задачи и не решает другие, это не серебряная пуля и даже не осиновый кол. Elasticsearch можно использовать как Data Lake и уже на основе этих данных, при помощи внешнего инструмента, строить прогнозы на базе тех алгоритмов, которые вам нужны.
ух ты, прям недавно что-то такое вынужден был писать на коленке…

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

Кстати, вот у вас на картинках видно, что в месте восходящего-нисходящего тренда (большой градиент) у вас заметное «истончение» коридора допустимых значений…

Так вот, у меня получились более лучшие результаты, когда «ширину коридора» я откладывал в обе стороны от локальной производной, а не просто вверх и вниз. Тогда коридор получался ширше и не выкидывались паразитные алёрты. Только надо повозиться с нормировкой по осям…
Интересно было бы увидеть, как результаты алгоритма интегрируются в рабочий процес, чтобы картина в голове целиком сложилась.
Каждый из описанных подходов машинного обучения может работать «на лету», т.е. при обнаружении аномалии отправлять уведомление кому следует. Если ваша задача обеспечивать информационную безопасность — вы собираете в индексы Elasticsearch событийные логи с серверов, рабочих станций. На данные из этих индексов натравливаете ML, устанавливаете критичность аномалий, по которым хотите получать уведомления и вуаля. Например, в случае непрерывного анализа логов Windows мы обнаружили, что пользователь вдруг начал логиниться слишком часто на разные рабочие станции, а это подозрительно. Плюс тут же можно проводить постмортем-анализ и выявлять вторжения.

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

Конечно, Elasticsearch ещё можно использовать как Data Lake для разрозненных данных, чтобы как-то их анализировать. Вручную всё просматривать никаких глаз не хватит.
Интересная статья, но я не до конца понимаю, как всё это волшебным образом работает.
Прежде всего, для тех, кто не знает, исходный код можно скачать с гитхаба github.com/elastic/ml-cpp.

По этой ссылке можно посмотреть математический аппарат алгоритмов машинного обучения.

Насколько я понял, там описывается Bayesian Learning? Но он должем быть supervised, пользователь сначала помечает какие существующие данные аномальные, а какие нет. Алгоритм потом находит аномалии уже в новых данных. ELK же в статье ищет аномалии без учителя? Вы можете показать библиотеку на питоне, которая делает тоже самое? IsolationForest, SVC, sklearn.naive_bayes?

Потом, вы говорите о прогнозе аномалий на период до 8 недель. Как такое вообще возможно? Time-Series анализ обычно предсказывает только вариативность данных и только на пару шагов вперёд и они не могут так красиво облегать синусоиду. Это должен быть конус как в ARIMA. Вы можете показать пример с другими данными без цикличности?
Да скачать можно, но функционал ML в Elastic Stack от этого бесплатным не станет.

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

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

Вот так это может выглядеть.
image

А можно ли подклюить в Эластик какой-то свой алгоритм ML?

Sign up to leave a comment.