Сегодня загрязнение воздуха является знакомой экологической проблемой, которая вызывает тяжелые респираторные и сердечные заболевания, представляющие серьезную угрозу для здоровья. Кислотные дожди, разрушение озонового слоя и глобальное потепление также являются неблагоприятными последствиями загрязнения воздуха. Необходим интеллектуальный мониторинг и автоматизация, чтобы предотвратить серьезные проблемы со здоровьем и, в крайних случаях, опасные для жизни ситуации. Качество воздуха измеряется с помощью концентрации загрязняющих веществ в воздухе. Раннее выявление симптомов и контроль уровня загрязняющих веществ до того, как это станет опасным, имеет решающее значение. Процесс определения качества воздуха и аномалии веса загрязняющих веществ, а также быстрой диагностики первопричины является сложным, дорогостоящим и подверженным ошибкам.
Процесс применения решений на основе ИИ и машинного обучения (МО) для поиска аномалий в данных включает в себя большую сложность при приеме, обработке и подготовке данных в правильном формате, а затем оптимизации и поддержании эффективности этих моделей МО в течение длительных периодов времени. время. Это было одним из препятствий на пути быстрого внедрения и масштабирования возможностей машинного обучения.
В этом посте показано, как использовать интегрированное решение с Amazon Lookout для показателей и Пожарный шланг данных Amazon Kinesis чтобы преодолеть эти барьеры, быстро и легко получая потоковые данные и впоследствии обнаруживая аномалии в ключевых показателях эффективности, которые вас интересуют.
Lookout for Metrics автоматически обнаруживает и диагностирует аномалии (отклонения от нормы) в деловых и операционных данных. Это полностью управляемая служба машинного обучения, которая использует специализированные модели машинного обучения для обнаружения аномалий на основе характеристик ваших данных. Например, тренды и сезонность — это две характеристики метрик временных рядов, в которых обнаружение аномалий на основе пороговых значений не работает. Тенденции — это непрерывные изменения (увеличение или уменьшение) значения показателя. С другой стороны, сезонность — это периодические закономерности, которые возникают в системе, обычно повышаясь выше базового уровня, а затем снова уменьшаясь. Вам не нужен опыт машинного обучения, чтобы использовать Lookout for Metrics.
Мы демонстрируем распространенный сценарий мониторинга качества воздуха, в котором мы обнаруживаем аномалии концентрации загрязняющих веществ в воздухе. К концу этого поста вы узнаете, как использовать эти управляемые сервисы AWS для предотвращения проблем со здоровьем и глобального потепления. Вы можете применить это решение к другим вариантам использования для улучшения управления окружающей средой, например, для обнаружения аномалий в качестве воды, качества земли и моделей энергопотребления, и это лишь некоторые из них.
Обзор решения
Архитектура состоит из трех функциональных блоков:
- Беспроводные датчики, размещенные в стратегически важных точках, определяют уровень концентрации окиси углерода (CO), двуокиси серы (SO2) и двуокиси азота (NO2) в воздухе.
- Прием и хранение потоковых данных
- Обнаружение аномалий и уведомление
Решение обеспечивает полностью автоматизированный путь передачи данных от датчиков до уведомления, выдаваемого пользователю. Вы также можете взаимодействовать с решением с помощью пользовательского интерфейса Lookout for Metrics для анализа выявленных аномалий.
На следующей диаграмме показана архитектура нашего решения.
Предпосылки
Прежде чем приступить к решению, вам потребуются следующие предварительные условия. Для этого поста мы используем регион us-east-1.
- Загрузите скрипт Python (опубликовать.py) и файл данных из Репо GitHub.
- Откройте приложение
live_data.csv
файл в предпочитаемом вами редакторе и замените даты на сегодняшнюю и завтрашнюю дату. Например, если сегодняшняя дата 8 июля 2022 г., замените2022-03-25
2022-07-08
. Сохраняйте формат прежним. Это необходимо для имитации данных датчиков на текущую дату с помощью сценария симулятора IoT. - Создать Простой сервис хранения Amazon (Amazon S3) и папку с именем
air-quality
. Создайте подпапку внутриair-quality
названныйhistorical
, Для получения инструкций см. Создание папки. - Загрузить
live_data.csv
файл в корневой корзине S3 иhistorical_data.json
в исторической папке. - Создать Облако AWS9 среда разработки, которую мы используем для запуска программы-симулятора Python для создания данных датчика для этого решения.
Прием и преобразование данных с помощью AWS IoT Core и Kinesis Data Firehose
Мы используем поток доставки Kinesis Data Firehose для приема потоковых данных из Ядро Интернета вещей AWS и доставьте его на Amazon S3. Выполните следующие шаги:
- На консоли Kinesis Data Firehose выберите Создать поток доставки.
- Что касается Источник, выберите Прямой ПУТ.
- Что касается Направление, выберите Amazon S3.
- Что касается Название потока доставки, введите имя потока доставки.
- Что касается Ковш S3, введите сегмент, который вы создали в качестве предварительного условия.
- Введите значения для Префикс корзины S3 и Префикс вывода ошибки корзины S3.Одним из ключевых моментов, на который следует обратить внимание, является конфигурация пользовательского префикса, настроенного для места назначения Amazon S3. Этот шаблон префикса гарантирует, что данные создаются в корзине S3 в соответствии с иерархией префиксов, ожидаемой Lookout for Metrics. (Подробнее об этом далее в этом посте.) Дополнительные сведения о пользовательских префиксах см. Пользовательские префиксы для объектов Amazon S3.
- Что касается Буферный интервал, войти
60
. - Выберите Создать или обновить роль IAM.
- Выберите Создать поток доставки.
Теперь настраиваем AWS IoT Core и запускаем программу-симулятор качества воздуха. - На консоли AWS IoT Core, создать политику AWS IoT позвонил админ.
- На панели навигации под Маршрутизация сообщений, выберите Правила.
- Выберите Создать правило.
- Создайте правило с Действие Kinesis Data Firehose(пожарный шланг).
Это отправляет данные из сообщения MQTT в поток доставки Kinesis Data Firehose. - Выберите Создавай.
- Создайте вещь AWS IoT с именем
Test-Thing
и прикрепите созданную политику. - Загрузите сертификат, открытый ключ, закрытый ключ, сертификат устройства и корневой ЦС для AWS IoT Core.
- Сохраните каждый загруженный файл в
certificates
подкаталог, который вы создали ранее. - Загрузите publish.py в
iot-test-publish
папку. - В консоли AWS IoT Core на панели навигации выберите Настройки.
- Под Пользовательская конечная точка, скопируйте конечную точку.
Этот настраиваемый URL-адрес конечной точки AWS IoT Core является персональным для вашей учетной записи AWS и региона. - Замените
customEndpointUrl
URL-адрес пользовательской конечной точки AWS IoT Core, сертификаты с именем сертификата иYour_S3_Bucket_Name
с именем корзины S3.
Затем вы устанавливаете pip и AWS IoT SDK для Python. - Войдите в AWS Cloud9 и создайте рабочий каталог в своей среде разработки. Например:
aq-iot-publish
. - Создайте подкаталог для сертификатов в новом рабочем каталоге. Например:
certificates
. - Установите AWS IoT SDK для Python v2, выполнив следующую команду из командной строки.
- Чтобы протестировать конвейер данных, выполните следующую команду:
Вы можете увидеть полезную нагрузку на следующем снимке экрана.
Наконец, данные доставляются в указанную корзину S3 в префиксной структуре.
Данные файлов следующие:
{"TIMESTAMP":"2022-03-20 00:00","LOCATION_ID":"B-101","CO":2.6,"SO2":62,"NO2":57}
{"TIMESTAMP":"2022-03-20 00:05","LOCATION_ID":"B-101","CO":3.9,"SO2":60,"NO2":73}
Временные метки показывают, что каждый файл содержит данные для 5-минутных интервалов.
С помощью минимального кода мы получили данные датчика, создали входной поток из полученных данных и сохранили данные в корзине S3 в соответствии с требованиями Lookout for Metrics.
В следующих разделах мы более подробно рассмотрим конструкции в Lookout for Metrics и то, насколько просто настроить эти концепции с помощью консоли Lookout for Metrics.
Создать детектор
Детектор — это ресурс Lookout for Metrics, который отслеживает набор данных и выявляет аномалии с заданной частотой. Детекторы используют машинное обучение, чтобы находить закономерности в данных и различать ожидаемые вариации данных и законные аномалии. Чтобы улучшить свою производительность, детектор со временем узнает больше о ваших данных.
В нашем случае детектор анализирует данные с сенсора каждые 5 минут.
Чтобы создать детектор, перейдите в консоль Lookout for Metrics и выберите Создать детектор. Укажите имя и описание (необязательно) детектора, а также интервал в 5 минут.
Ваши данные по умолчанию зашифрованы с помощью ключа, которым владеет и управляет AWS. Вы также можете указать, хотите ли вы использовать ключ шифрования, отличный от того, который используется по умолчанию.
Теперь давайте направим этот детектор на данные, для которых вы хотите запустить обнаружение аномалий.
Создать набор данных
Набор данных сообщает детектору, где найти ваши данные и какие показатели анализировать на наличие аномалий. Чтобы создать набор данных, выполните следующие шаги:
- В консоли Amazon Lookout for Metrics перейдите к своему детектору.
- Выберите Добавить набор данных.
- Что касается Имявведите имя (например,
air-quality-dataset
). - Что касается Источник данных, выберите источник данных (для этого поста — Amazon S3).
- Что касается Детекторный режим, выберите свой режим (для этого поста Непрерывный).
С Amazon S3 вы можете создать детектор в двух режимах:
-
- Backtest – Этот режим используется для поиска аномалий в исторических данных. Необходимо, чтобы все записи были объединены в один файл.
- Непрерывный – Этот режим используется для обнаружения аномалий в оперативных данных. Мы используем этот режим в нашем случае использования, потому что мы хотим обнаруживать аномалии, когда мы получаем данные о загрязнителях воздуха от датчика мониторинга воздуха.
- Введите путь S3 для активной папки S3 и шаблон пути.
- Что касается Интервал источника данных, выберите 5-минутные интервалы.Если у вас есть исторические данные, из которых детектор может изучать закономерности, вы можете предоставить их во время этой конфигурации. Ожидается, что данные будут в том же формате, который вы используете для проведения ретроспективного тестирования. Предоставление исторических данных ускоряет процесс обучения модели машинного обучения. Если это недоступно, непрерывный детектор ожидает получения достаточного количества данных, прежде чем делать выводы.
- Для этого сообщения у нас уже есть исторические данные, поэтому выберите Использовать исторические данные.
- Введите путь S3
historical_data.json
. - Что касается Формат файла, наведите на Строки JSON.
На этом этапе Lookout for Metrics получает доступ к источнику данных и проверяет, может ли он анализировать данные. Если синтаксический анализ прошел успешно, выдается сообщение «Проверка прошла успешно» и вы переходите на следующую страницу, где вы настраиваете меры, измерения и временные метки.
Настройка показателей, измерений и временных меток
меры определите ключевые показатели эффективности, для которых вы хотите отслеживать аномалии. Вы можете добавить до пяти измерений на детектор. Поля, которые используются для создания KPI из исходных данных, должны иметь числовой формат. KPI в настоящее время могут быть определены путем агрегирования записей в пределах временного интервала путем выполнения SUM или AVERAGE.
Габаритные размеры: дать вам возможность нарезать и нарезать ваши данные, определяя категории или сегменты. Это позволяет отслеживать аномалии для подмножества всего набора данных, для которого применима конкретная мера.
В нашем случае мы добавляем три меры, которые вычисляют среднее значение объектов, видимых в 5-минутном интервале, и имеют только одно измерение, для которого измеряется концентрация загрязняющих веществ.
Каждая запись в наборе данных должна иметь отметку времени. Следующая конфигурация позволяет вам выбрать поле, представляющее значение метки времени, а также формат метки времени.
На следующей странице вы можете просмотреть все добавленные вами данные, а затем сохранить и активировать детектор.
Затем детектор начинает изучать данные, поступающие в источник данных. На этом этапе статус детектора меняется на Initializing
.
Важно отметить минимальный объем данных, который требуется, прежде чем Lookout for Metrics сможет начать обнаруживать аномалии. Дополнительные сведения о требованиях и ограничениях см. Следите за квотами показателей.
С минимальной конфигурацией вы создали свой детектор, направили его на набор данных и определили метрики, в которых вы хотите, чтобы Lookout for Metrics находил аномалии.
Визуализируйте аномалии
Lookout for Metrics предоставляет богатый пользовательский интерфейс для пользователей, которые хотят использовать Консоль управления AWS для анализа обнаруженных аномалий. Он также предоставляет возможность запрашивать аномалии через API.
Давайте рассмотрим пример аномалии, обнаруженной в нашем сценарии использования данных о качестве воздуха. На следующем снимке экрана показана аномалия концентрации CO в воздухе, обнаруженная в указанное время и дату, с оценкой серьезности 93. На нем также показан процентный вклад измерения в аномалию. В этом случае 100%-й вклад исходит от измерения идентификатора местоположения B-101.
Создавать оповещения
Lookout for Metrics позволяет отправлять оповещения по различным каналам. Вы можете настроить порог оценки серьезности аномалии, при котором должны срабатывать оповещения.
В нашем случае мы настраиваем оповещения для отправки Amazon Простая служба уведомлений (Amazon SNS), который, в свою очередь, отправляет SMS. На следующих снимках экрана показаны детали конфигурации.
Вы также можете использовать оповещение для запуска автоматизации с помощью AWS Lambda функции для управления операциями на основе API в AWS IoT Core.
Заключение
В этом посте мы показали вам, как легко использовать Lookout for Metrics и Kinesis Data Firehose, чтобы избавиться от недифференцированной тяжелой работы, связанной с управлением сквозным жизненным циклом создания приложений для обнаружения аномалий на основе машинного обучения. Это решение может помочь вам быстрее обнаруживать аномалии в ключевых бизнес-показателях и позволит вам сосредоточить свои усилия на росте и улучшении вашего бизнеса.
Предлагаем вам узнать больше, посетив Руководство разработчика Amazon Lookout for Metrics и опробуйте комплексное решение, поддерживаемое этими службами, с набором данных, соответствующим вашим бизнес-КПЭ.
Об авторе
Дхирадж Тхакур является архитектором решений в Amazon Web Services. Он работает с клиентами и партнерами AWS, предоставляя рекомендации по внедрению, миграции и стратегии корпоративного облака. Он увлечен технологиями и любит строить и экспериментировать в области аналитики и AI/ML.
- AI
- ай искусство
- генератор искусств ай
- искусственный интеллект
- Amazon Lookout для показателей
- искусственный интеллект
- сертификация искусственного интеллекта
- искусственный интеллект в банковском деле
- робот с искусственным интеллектом
- роботы с искусственным интеллектом
- программное обеспечение искусственного интеллекта
- Машинное обучение AWS
- блокчейн
- конференция по блокчейну
- Coingenius
- разговорный искусственный интеллект
- криптоконференция ИИ
- дал-и
- глубокое обучение
- google ai
- обучение с помощью машины
- Платон
- Платон Ай
- Платон Интеллектуальные данные
- Платон игра
- ПлатонДанные
- платогейминг
- масштаб ай
- синтаксис
- зефирнет