アマゾンセージメーカーの地理空間機能を使用して、齧歯類の被害を分析する
Using Amazon SageMaker's geospatial functionality to analyze rodent damage
ネズミやネズミなどのネズミは、数多くの健康リスクと関連しており、35以上の病気を広げることが知られています。ネズミの活動が活発な地域を特定することで、地方自治体や害虫駆除組織が効果的な介入計画を立て、ネズミを駆除することが可能です。
この記事では、Amazon SageMakerの地理空間機能を使用して、ネズミの集団を監視し、可視化する方法を紹介します。さらに、ネズミの被害が植生や水域に与える影響を可視化します。最後に、ネズミの目撃情報と報告された猿痘の症例数を地域と関連付け、可視化します。Amazon SageMakerは、データサイエンティストや機械学習(ML)エンジニアが地理空間データを使用してモデルを構築、トレーニング、展開する際に、より簡単でスケール可能なアクセス、目的に特化した処理操作の実行、事前学習済みのMLモデルの適用、および組み込みの可視化ツールの使用を容易にします。
ノートブック
まず、Amazon SageMaker Studioのノートブックを使用して、地理空間イメージを使用します。その手順は、Amazon SageMakerの地理空間機能を使い始めるにはで説明されています。
データアクセス
地理空間イメージには、地理空間解析やMLのためのデータエンリッチメントを簡単にするSageMakerの地理空間機能が事前インストールされています。この記事では、Sentinel-2の衛星画像と、オープンソースのNYCオープンデータからのネズミの活動と猿痘のデータセットを使用します。
- 「GoogleはニュースのためのAIを宣伝し、ジャーナリストは置き換えられないと主張する」
- アマゾンのキャッシュレス「手のひらで支払う」技術は手の振りだけで済みます
- ピンクのローバーが赤い惑星に取り組む、科学における女性の障壁
まず、ネズミの活動を使用して、ネズミの目撃情報と検査の緯度と経度を抽出します。次に、この位置情報に人が読める形式の住所を追加します。Amazon Location Serviceを使用して、地理座標(緯度、経度)を人が読める住所に変換する逆ジオコーディング操作を実行するために、SageMaker Studioのノートブックでベクトルエンリッチメントジョブ(VEJ)を作成します。以下のように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/'
}
}
)
エクスポートが完了すると、Amazon Simple Storage Service(Amazon S3)バケットに出力されたCSVファイルが表示されます。このファイルには、入力データ(経度と緯度座標)に加えて、その場所の住所番号、国、ラベル、自治体、地域、郵便番号が末尾に追加されます。
VEJによって生成された出力ファイルから、SageMakerの地理空間機能を使用して出力をベースマップにオーバーレイし、レイヤー化された可視化を提供することができます。SageMakerの地理空間機能は、Foursquare Studioによって提供される組み込みの可視化ツールを備えており、SageMakerノートブック内から直接使用することができます。以下では、ネズミの目撃情報を可視化し、各データポイントの人が読める住所も取得することができます。ネズミの目撃情報の各データポイントの住所情報は、ネズミの検査と処理の目的に役立ちます。
ネズミの感染が植生や水体に与える影響を分析する
植生や水体へのネズミの感染の影響を分析するために、各場所を植生、水、裸地に分類する必要があります。これらの地理空間の機能を使用してこの分析を行う方法を見てみましょう。
SageMakerの新しい地理空間の機能は、Sentinel-2やLandsat 8などの地理空間データへの簡単なアクセスを提供します。組み込みの地理空間データセットアクセスは、さまざまなデータプロバイダーやベンダーからのデータの収集と処理にかかる数週間の努力を省略します。また、これらの地理空間の機能は、地球表面の植生、水、裸地などの物理的な材料を識別するための事前トレーニング済みの土地利用土地被覆(LULC)セグメンテーションモデルを提供します。
このLULC MLモデルを使用して、ネズミの人口が植生や水体に与える影響を分析します。
以下のコードスニペットでは、まずニューヨーク市の関心領域の座標(aoi_coords
)を定義します。次に、Earth Observation Job(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の地理空間機能を使用して、齧歯類の目撃情報の詳細な住所を取得し、植生と水域への齧歯類の影響を可視化する方法を紹介しました。これにより、地元の自治体や害虫駆除組織が効果的な介入計画を立て、齧歯類を駆除することができます。また、組み込みの可視化ツールを使用して、地域の齧歯類の目撃情報とモンキーポックスの発生件数の相関関係を調べました。ベクトルエンリッチメントとEOJsを活用したSageMakerの地理空間機能は、大規模な地理空間データセットやモデルのトレーニング、推論の処理に関する課題を解決し、3Dアクセラレートされたグラフィックスと組み込みの可視化ツールを使用して予測と地理空間データをインタラクティブな地図上で迅速に探索する能力を提供します。
SageMakerの地理空間機能を利用する方法は2つあります:
- SageMaker Studio UIの一部としてのSageMakerの地理空間UIを介して
- SageMakerの地理空間イメージを使用したSageMakerノートブックを介して
詳細については、Amazon SageMakerの地理空間機能とAmazon SageMakerの地理空間機能の入門をご覧ください。また、SageMakerの地理空間機能に関するいくつかのサンプルノートブックが含まれているGitHubリポジトリもご覧ください。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles