Home Машинное обучение Анализ заражения грызунами с помощью геопространственных возможностей Amazon SageMaker | DeepTech

Анализ заражения грызунами с помощью геопространственных возможностей Amazon SageMaker | DeepTech

0
Анализ заражения грызунами с помощью геопространственных возможностей Amazon SageMaker
 | DeepTech

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

В этом посте мы покажем, как отслеживать и визуализировать популяцию грызунов с помощью геопространственных возможностей Amazon SageMaker. Затем мы визуализируем воздействие заражения грызунами на растительность и водоемы. Наконец, мы сопоставляем и визуализируем количество зарегистрированных случаев оспы обезьян с наблюдениями за грызунами в регионе. Amazon SageMaker упрощает специалистам по обработке данных и инженерам по машинному обучению (МО) создание, обучение и развертывание моделей с использованием геопространственных данных. Инструмент упрощает доступ к источникам геопространственных данных, запускает специально созданные операции обработки, применяет предварительно обученные модели машинного обучения и использует встроенные инструменты визуализации быстрее и в нужном масштабе.

Блокнот

Сначала мы используем записную книжку Amazon SageMaker Studio с геопространственным изображением, выполнив действия, описанные в разделе Начало работы с геопространственными возможностями Amazon SageMaker.

Доступ к данным

Геопространственное изображение поставляется с предустановленными геопространственными возможностями SageMaker, которые упрощают обогащение данных для геопространственного анализа и машинного обучения. Для нашего поста мы используем спутниковые снимки Sentinel-2 и активность грызунов и набор данных по обезьяньей оспес из открытых источников открытые данные Нью-Йорка.

Во-первых, мы используем активность грызунов и извлекаем широту и долготу наблюдений и осмотров грызунов. Затем мы дополняем эту информацию о местоположении удобочитаемыми уличными адресами. Мы создаем задание векторного обогащения (VEJ) в блокноте SageMaker Studio для выполнения операции обратного геокодирования, чтобы можно было преобразовать географические координаты (широту, долготу) в удобочитаемые адреса с помощью Amazon Location Service. Мы создаем VEJ следующим образом:

import boto3
import botocore
import sagemaker
import sagemaker_geospatial_map

region = boto3.Session().region_name
session = botocore.session.get_session()
execution_role = sagemaker.get_execution_role()

sg_client= session.create_client(
    service_name="sagemaker-geospatial",
    region_name=region
)
response = sg_client.start_vector_enrichment_job(
    ExecutionRoleArn=execution_role,
    InputConfig={
        'DataSourceConfig': {
            'S3Data': {
                'S3Uri': 's3://<bucket>/sample/rodent.csv'
            }
        },
        'DocumentType': 'CSV'
    },
    JobConfig={
        "ReverseGeocodingConfig": { 
         "XAttributeName": "longitude",
         "YAttributeName": "latitude"
      }
    },
    Name="vej-reversegeo",
)

my_vej_arn = response('Arn')

Визуализация активности грызунов в регионе

Теперь мы можем использовать геопространственные возможности SageMaker для визуализации наблюдений за грызунами. После завершения VEJ мы экспортируем результат задания в корзину Amazon S3.

sg_client.export_vector_enrichment_job(
    Arn=my_vej_arn,
    ExecutionRoleArn=execution_role,
    OutputConfig={
        'S3Data': {
            'S3Uri': 's3://<bucket>/reversegeo/'
        }
    }
)

Когда экспорт будет завершен, вы увидите выходной CSV-файл в своей корзине Amazon Simple Storage Service (Amazon S3), который состоит из ваших входных данных (координаты долготы и широты) вместе с дополнительными столбцами: номер адреса, страна, ярлык, муниципалитет, район, почтовый индекс и регион этого местоположения, добавленные в конце.

Из выходного файла, сгенерированного VEJ, мы можем использовать геопространственные возможности SageMaker для наложения вывода на базовую карту и обеспечения многоуровневой визуализации для облегчения совместной работы. Геопространственные возможности SageMaker обеспечивают встроенный инструментарий визуализации на основе Номер-студио Foursquare, который по умолчанию работает из записной книжки SageMaker с помощью SDK для геопространственных карт SageMaker. Ниже мы можем визуализировать наблюдения грызунов, а также получить удобочитаемые адреса для каждой из точек данных. Информация об адресах каждой из точек наблюдения за грызунами может быть полезна для инспекции и лечения грызунов.

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

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

Новые геопространственные возможности в SageMaker упрощают доступ к геопространственным данным, таким как Sentinel-2 и Landsat 8. Встроенный доступ к наборам геопространственных данных экономит недели усилий, которые в противном случае были бы потрачены на сбор и обработку данных от различных поставщиков данных и поставщиков. Кроме того, эти геопространственные возможности предлагают предварительно обученную модель сегментации земельного покрова (LULC) для идентификации физического материала, такого как растительность, вода и голая земля, на поверхности земли.

Мы используем эту модель LULC ML для анализа воздействия популяции грызунов на растительность и водоемы.

В следующем фрагменте кода мы сначала определяем координаты области интереса (aoi_coords) Нью-Йорка. Затем мы создаем задание по наблюдению за Землей (EOJ) и выбираем операцию LULC. SageMaker загружает и предварительно обрабатывает данные спутниковых изображений для EOJ. Затем SageMaker автоматически запускает вывод модели для EOJ. Время выполнения EOJ будет варьироваться от нескольких минут до часов в зависимости от количества обработанных изображений. Вы можете следить за состоянием EOJ, используя get_earth_observation_job функцию и визуализировать ввод и вывод EOJ на карте.

aoi_coords = (
    (
            (
              -74.13513011934334,
              40.87856296920188
            ),
            (
              -74.13513011934334,
              40.565792636343616
            ),
            (
              -73.8247144462764,
              40.565792636343616
            ),
            (
              -73.8247144462764,
              40.87856296920188
            ),
            (
              -74.13513011934334,
              40.87856296920188
            )
    )
)

eoj_input_config = {
    "RasterDataCollectionQuery": {
        "RasterDataCollectionArn": "arn:aws:sagemaker-geospatial:us-west-2:378778860802:raster-data-collection/public/nmqj48dcu3g7ayw8",
        "AreaOfInterest": {
            "AreaOfInterestGeometry": {
                "PolygonGeometry": {
                    "Coordinates": aoi_coords
                }
            }
        },
        "TimeRangeFilter": {
            "StartTime": "2023-01-01T00:00:00Z",
            "EndTime": "2023-02-28T23:59:59Z",
        },
        "PropertyFilters": {
            "Properties": ({"Property": {"EoCloudCover": {"LowerBound": 0, "UpperBound": 2.0}}}),
            "LogicalOperator": "AND",
        },
    }
}
eoj_config = {
  "LandCoverSegmentationConfig": {}
}

response = geospatial_client.start_earth_observation_job(
    Name="eoj-rodent-infestation-lulc-example",
    InputConfig=eoj_input_config,
    JobConfig=eoj_config,
    ExecutionRoleArn=execution_role,
)
eoj_arn = response("Arn")
eoj_arn

Map = sagemaker_geospatial_map.create_map()
Map.set_sagemaker_geospatial_client(sg_client)

Map.render()

time_range_filter = {
    "start_date": "2023-01-01T00:00:00Z",
    "end_date": "2023-02-28T23:59:59Z",
}


config = {"preset": "singleBand", "band_name": "mask"}
output_layer = Map.visualize_eoj_output(
    Arn=eoj_arn, config=config, time_range_filter=time_range_filter
)

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

Визуализация случаев оспы обезьян и сопоставление с данными о грызунах

Чтобы визуализировать связь между случаями оспы обезьян и наблюдениями за грызунами, мы добавляем набор данных оспы обезьян и Файл geoJSON для границ района Нью-Йорка. См. следующий код:

nybb = pd.read_csv("./nybb.csv")
monkeypox = pd.read_csv("./monkeypox.csv")
dataset = Map.add_dataset({
    "data": nybb
}, auto_create_layers=False)
dataset = Map.add_dataset({
    "data": monkeypox
}, auto_create_layers=False)

В блокноте SageMaker Studio мы можем использовать инструмент визуализации на базе Foursquare для добавления слоев на карту и добавления диаграмм. Здесь мы добавили данные об обезьяньей оспе в виде диаграммы, чтобы показать количество случаев обезьяньей оспы в каждом из районов. Чтобы увидеть взаимосвязь между случаями оспы обезьян и наблюдениями за грызунами, мы добавили границы района в виде полигонального слоя и добавили слой тепловой карты, который представляет активность грызунов. Пограничный слой района окрашен в соответствии с диаграммой данных по оспе обезьян. Как мы видим, район Манхэттена демонстрирует высокую концентрацию наблюдений за грызунами и регистрирует наибольшее количество случаев оспы обезьян, за ним следует Бруклин.

Это подтверждается простым статистическим анализом расчета корреляции между концентрацией наблюдений за грызунами и случаями оспы обезьян в каждом районе. Расчет дал значение r 0,714, что подразумевает положительную корреляцию.

r = np.corrcoef(borough_stats('Concentration (sightings per square km)'), borough_stats('Monkeypox Cases'))

Заключение

В этом посте мы продемонстрировали, как вы можете использовать геопространственные возможности SageMaker для получения подробных адресов наблюдений грызунов и визуализации воздействия грызунов на растительность и водоемы. Это может помочь местным властям и организациям по борьбе с вредителями эффективно планировать мероприятия и уничтожать грызунов. Мы также сопоставили наблюдения грызунов со случаями оспы обезьян в этом районе с помощью встроенного инструмента визуализации. Используя векторное обогащение и EOJ вместе со встроенными инструментами визуализации, геопространственные возможности SageMaker устраняют проблемы обработки крупномасштабных наборов геопространственных данных, обучения моделей и логических выводов, а также обеспечивают возможность быстрого изучения прогнозов и геопространственных данных на интерактивной карте с использованием ускоренной 3D-графики и встроенных инструментов визуализации.

Вы можете начать работу с геопространственными возможностями SageMaker двумя способами:

Дополнительные сведения см. на страницах геопространственных возможностей Amazon SageMaker и Начало работы с геопространственными возможностями Amazon SageMaker. Также посетите наш репозиторий GitHubв котором есть несколько примеров записных книжек о геопространственных возможностях SageMaker.


Об авторах

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

Кларисса Вигаль — старший технический менеджер по работе с клиентами в AWS, который помогает клиентам ускорить переход к облачным технологиям. Вне работы Кларисса любит путешествовать, ходить в походы и читать научно-фантастические триллеры.

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

LEAVE A REPLY

Please enter your comment!
Please enter your name here