אינטליגנציה של נתונים גנרטיביים

הבנה וחיזוי של איי חום עירוניים ב-Gramener באמצעות יכולות גיאו-מרחביות של Amazon SageMaker | שירותי האינטרנט של אמזון

תאריך:

זהו פוסט אורח שנכתב על ידי שרוואן קומאר ואבירת S מ-Gramener.

גראמנר, סטרייב החברה, תורמת לפיתוח בר קיימא על ידי התמקדות בחקלאות, ייעור, ניהול מים ואנרגיה מתחדשת. על ידי מתן הכלים והתובנות הדרושות לרשויות כדי לקבל החלטות מושכלות לגבי השפעה סביבתית וחברתית, גרמנר משחק תפקיד חיוני בבניית עתיד בר-קיימא יותר.

איי חום עירוניים (UHIs) הם אזורים בתוך ערים שחווים טמפרטורות גבוהות משמעותית מהאזורים הכפריים שמסביב. UHIs הם דאגה גוברת מכיוון שהם יכולים להוביל לבעיות סביבתיות ובריאותיות שונות. כדי להתמודד עם אתגר זה, Gramener פיתחה פתרון המשתמש בנתונים מרחביים ובטכניקות דוגמנות מתקדמות כדי להבין ולהפחית את השפעות ה-UHI הבאות:

  • אי התאמה בטמפרטורה - UHIs יכולים לגרום לאזורים עירוניים להיות חמים יותר מהאזורים הכפריים שמסביבם.
  • השפעה על הבריאות - טמפרטורות גבוהות יותר ב-UHIs תורמות לעלייה של 10-20% במחלות ובתמותה הקשורות לחום.
  • צריכת אנרגיה - UHIs מגבירים את דרישות מיזוג האוויר, מה שמביא לעלייה של עד 20% בצריכת האנרגיה.
  • איכות אוויר - UHIs מחמירים את איכות האוויר, מה שמוביל לרמות גבוהות של ערפיח וחלקיקים, מה שעלול להגביר בעיות נשימה.
  • השפעה כלכלית - UHIs יכולים לגרום לעלויות אנרגיה נוספות של מיליארדי דולרים, נזק לתשתיות והוצאות בריאות.

פתרון ה-GeoBox של Gramener מאפשר למשתמשים להתחבר ולנתח נתונים גיאו-מרחביים ציבוריים ללא מאמץ באמצעות ה-API החזק שלו, המאפשר שילוב חלק בתהליכי עבודה קיימים. זה מייעל את החקירה וחוסך זמן ומשאבים יקרים, ומאפשר לקהילות לזהות במהירות נקודות חמות של UHI. לאחר מכן, GeoBox הופך נתונים גולמיים לתובנות ניתנות לפעולה המוצגות בפורמטים ידידותיים למשתמש כמו רסטר, GeoJSON ו-Excel, מה שמבטיח הבנה ברורה ויישום מיידי של אסטרטגיות הפחתת UHI. זה מסמיך קהילות לקבל החלטות מושכלות וליישם יוזמות פיתוח עירוני בר קיימא, בסופו של דבר תמיכה באזרחים באמצעות שיפור איכות האוויר, צריכת אנרגיה מופחתת וסביבה קרירה ובריאה יותר.

פוסט זה מדגים כיצד פתרון ה-GeoBox של Gramener משתמש ביכולות גיאו-מרחביות של Amazon SageMaker לבצע ניתוח תצפית כדור הארץ ולפתוח תובנות UHI מתמונות לוויין. היכולות הגיאו-מרחביות של SageMaker הופכות את זה לפשוט עבור מדעני נתונים ומהנדסי למידת מכונה (ML) לבנות, לאמן ולפרוס מודלים באמצעות נתונים גיאו-מרחביים. היכולות הגיאו-מרחביות של SageMaker מאפשרות לך לשנות ולהעשיר ביעילות מערכי נתונים גיאו-מרחביים בקנה מידה גדול, ולהאיץ את פיתוח המוצר ואת הזמן עד לתובנה באמצעות מודלים של ML מאומנים מראש.

סקירת פתרונות

Geobox שואפת לנתח ולחזות את אפקט UHI על ידי רתימת מאפיינים מרחביים. זה עוזר להבין כיצד שינויי תשתית ושימושי קרקע מוצעים יכולים להשפיע על דפוסי UHI ומזהה את גורמי המפתח המשפיעים על UHI. מודל אנליטי זה מספק הערכות מדויקות של טמפרטורת פני הקרקע (LST) ברמה גרעינית, ומאפשר לגראמנר לכמת שינויים באפקט UHI בהתבסס על פרמטרים (שמות של אינדקסים ונתונים בשימוש).

Geobox מאפשרת למחלקות העיר לבצע את הפעולות הבאות:

  • הסתגלות משופרת לאקלים תכנון - החלטות מושכלות מפחיתות את ההשפעה של אירועי חום קיצוניים.
  • תמיכה בהרחבת שטח ירוק – יותר שטחים ירוקים משפרים את איכות האוויר ואיכות החיים.
  • שיתוף פעולה בין-מחלקתי משופר - מאמצים מתואמים משפרים את ביטחון הציבור.
  • היערכות אסטרטגית לשעת חירום – תכנון ממוקד מפחית את הפוטנציאל למקרי חירום.
  • שיתוף פעולה שירותי בריאות – שיתוף פעולה מוביל להתערבויות בריאותיות יעילות יותר.

זרימת עבודה של פתרון

בחלק זה, אנו דנים כיצד הרכיבים השונים עובדים יחד, החל מרכישת נתונים וכלה במודלים מרחביים וחיזוי, המשמשים את הליבה של פתרון UHI. הפתרון עוקב אחר זרימת עבודה מובנית, עם התמקדות עיקרית בטיפול ב-UHI בעיר בקנדה.

שלב 1: צינור נתונים

הלוויין Landsat 8 לוכד תמונות מפורטות של אזור העניין כל 15 יום בשעה 11:30, ומספק תצוגה מקיפה של הנוף והסביבה של העיר. מערכת רשת מוקמת בגודל רשת של 48 מטר באמצעות ספריית Supermercado Python של Mapbox ברמת זום 19, המאפשרת ניתוח מרחבי מדויק.

צינור נתונים

שלב 2: ניתוח חקרני

שילוב של שכבות תשתית ונתוני אוכלוסייה, Geobox מאפשר למשתמשים להמחיש את התפלגות המשתנה של העיר ולהפיק תובנות מורפולוגיות עירוניות, המאפשרות ניתוח מקיף של מבנה העיר והתפתחותה.

כמו כן, תמונות Landsat משלב 1 משמשות להפקת תובנות כמו מדד צמחיית ההבדלים המנורמלים (NDVI) ומדד ההפרשים המובנים המנורמלים (NDBI), עם נתונים מותאמים בקפידה לרשת של 48 מטרים לצורך עקביות ודיוק.

ניתוח חקרני

נעשה שימוש במשתנים הבאים:

  • טמפרטורת פני הקרקע
  • כיסוי אתר בנייה
  • NDVI
  • כיסוי אבני בניין
  • NDBI
  • אזור בנייה
  • אלבאדו
  • ספירת בניינים
  • אינדקס מים מנורמל שונה (MNDWI)
  • גובה בניין
  • מספר הקומות ושטח הרצפה
  • יחס שטח רצפה

שלב 3: מודל אנליטיקה

שלב זה כולל שלושה מודולים, המשתמשים במודלים של ML על נתונים כדי לקבל תובנות לגבי LST והקשר שלו עם גורמים משפיעים אחרים:

  • מודול 1: סטטיסטיקה אזורית וצבירה – נתונים סטטיסטיים אזוריים ממלאים תפקיד חיוני בחישוב סטטיסטיקה באמצעות ערכים מרסטר הערכים. זה כולל חילוץ נתונים סטטיסטיים עבור כל אזור על סמך רסטר האזור. אגרגציה מתבצעת ברזולוציה של 100 מטר, המאפשרת ניתוח מקיף של הנתונים.
  • מודול 2: דוגמנות מרחבית - Gramener העריך שלושה מודלים של רגרסיה (אפקטים קבועים ליניאריים, מרחביים ומרחביים) כדי לגלות את המתאם בין טמפרטורת פני הקרקע (LST) ומשתנים אחרים. בין המודלים הללו, מודל האפקט הקבוע המרחבי הניב את הערך הממוצע הגבוה ביותר בריבוע R, במיוחד עבור מסגרת הזמן שנפרשה בין 2014 ל-2020.
  • מודול 3: חיזוי משתנים - כדי לחזות משתנים בטווח הקצר, גרמנר השתמש בטכניקות החלקה אקספוננציאלית. תחזיות אלו סייעו בהבנת ערכי LST עתידיים והמגמות שלהם. בנוסף, הם התעמקו בניתוח קנה מידה ארוך טווח על ידי שימוש בנתוני Representative Concentration Pathway (RCP8.5) כדי לחזות ערכי LST לאורך תקופות ממושכות.

מודל אנליטיקס

רכישת ועיבוד נתונים מראש

כדי ליישם את המודולים, גרמנר השתמש במחברת הגאו-מרחבית של SageMaker סטודיו SageMaker של אמזון. ליבת המחברת הגיאו-מרחבית מותקנת מראש עם ספריות גיאו-מרחביות נפוצות, המאפשרות הדמיה ועיבוד ישירים של נתונים גיאו-מרחביים בתוך סביבת המחברת Python.

Gramener השתמש במערכי נתונים שונים כדי לחזות מגמות LST, כולל הערכת בנייה ונתוני טמפרטורה, כמו גם תמונות לוויין. המפתח לפתרון UHI היה שימוש בנתונים מהלוויין Landsat 8. לוויין הדמיית כדור הארץ הזה, מיזם משותף של USGS ונאס"א, שימש מרכיב בסיסי בפרויקט.

עם SearchRasterDataCollection API, SageMaker מספק פונקציונליות נבנית במיוחד כדי להקל על אחזור תמונות לוויין. Gramener השתמש ב-API זה כדי לאחזר נתוני לוויין של Landsat 8 עבור פתרון UHI.

השמיים SearchRasterDataCollection API משתמש בפרמטרי הקלט הבאים:

  • ארן - שם המשאב של אמזון (ARN) של אוסף נתוני הרסטר המשמש בשאילתה
  • תחום עניין – מצולע GeoJSON המייצג את אזור העניין
  • מסנן טווח זמן – טווח הזמן של עניין, מסומן כ {StartTime: <string>, EndTime: <string>}
  • מסנני נכסים – ניתן לשלב גם מסנני מאפיינים משלימים, כגון מפרטים לכיסוי ענן מרבי מקובל

הדוגמה הבאה מדגימה כיצד ניתן לבצע שאילתות בנתוני Landsat 8 באמצעות ה-API:

search_params = {
    "Arn": "arn:aws:sagemaker-geospatial:us-west-2:378778860802:raster-data-collection/public/gmqa64dcu2g9ayx1", # NASA/USGS Landsat
    "RasterDataCollectionQuery": {
        "AreaOfInterest": {
            "AreaOfInterestGeometry": {
                "PolygonGeometry": {
                    "Coordinates": coordinates
                }
            }
        },
        "TimeRangeFilter": {
            "StartTime": "2014-01-01T00:00:00Z",
            "EndTime": "2020-12-31T23:59:59Z",
        },
        "PropertyFilters": {
            "Properties": [{"Property": {"EoCloudCover": {"LowerBound": 0, "UpperBound": 20.0}}}],
            "LogicalOperator": "AND",
        }
    },
}

response = geospatial_client.search_raster_data_collection(**search_params)

כדי לעבד נתוני לוויין בקנה מידה גדול, השתמש Gramener עיבוד אמזון SageMaker עם המיכל הגיאו-מרחבי. SageMaker Processing מאפשר קנה מידה גמיש של אשכולות מחשוב כדי להכיל משימות בגדלים שונים, מעיבוד גוש עיר בודד ועד לניהול עומסי עבודה בקנה מידה פלנטרי. באופן מסורתי, יצירה וניהול ידני של אשכול מחשוב עבור משימות כאלה היו יקרות וגם גוזלות זמן, במיוחד בשל המורכבות הכרוכה בסטנדרטיזציה של סביבה המתאימה לטיפול בנתונים גיאו-מרחביים.

כעת, עם המכולה הגיאו-מרחבית המיוחדת ב- SageMaker, ניהול והרצה של אשכולות לעיבוד גיאו-מרחבי הפך לפשוט יותר. תהליך זה דורש מאמץ קידוד מינימלי: אתה פשוט מגדיר את עומס העבודה, מציין את המיקום של הנתונים הגיאו-מרחביים ב שירות אחסון פשוט של אמזון (Amazon S3), ובחר את המיכל הגיאו-מרחבי המתאים. לאחר מכן, SageMaker Processing מספק אוטומטית את משאבי האשכול הדרושים, ומאפשרת ריצה יעילה של משימות גיאו-מרחביות בקנה מידה שנעים מרמת העיר לרמת היבשת.

תהליך

SageMaker מנהלת באופן מלא את התשתית הבסיסית הנדרשת לעבודת העיבוד. הוא מקצה משאבי אשכול למשך התפקיד ומסיר אותם עם סיום העבודה. לבסוף, התוצאות של עבודת העיבוד נשמרות בדלי S3 המיועד.

ניתן להגדיר עבודת SageMaker Processing באמצעות התמונה הגיאו-מרחבית באופן הבא מתוך המחברת הגיאו-מרחבית:

from sagemaker import get_execution_role
from sagemaker.sklearn.processing import ScriptProcessor
from sagemaker.processing import ProcessingInput, ProcessingOutput

execution_role_arn = get_execution_role()

geospatial_image_uri = '081189585635.dkr.ecr.us-west-2.amazonaws.com/sagemaker-geospatial-v1-0:latest'
processor = ScriptProcessor(
    command=['python3'],
    image_uri=geospatial_image_uri,
    role=execution_role_arn,
    instance_count=20,
    instance_type='ml.m5.xlarge',
    base_job_name='geospatial-processing-spectral-indices'
)

הפרמטר instance_count מגדיר בכמה מופעים עבודת העיבוד צריכה להשתמש, וה-instance_type מגדיר באיזה סוג מופע יש להשתמש.

הדוגמה הבאה מראה כיצד מופעלת סקריפט Python באשכול עבודות העיבוד. כאשר מופעלת פקודת ההפעלה, האשכול מופעל ומספק אוטומטית את משאבי האשכול הדרושים:

processor.run(
    code='calculate_variables.py',
    inputs=[
        ProcessingInput(
            source=s3_manifest_url,
            destination='/opt/ml/processing/input_data/',
            s3_data_type="ManifestFile",
            s3_data_distribution_type="ShardedByS3Key"
        ),
    ],
    outputs=[
        ProcessingOutput(
            source='/opt/ml/processing/output_data/',
            destination=s3_output_prefix_url
        )
    ]
)

מודלים מרחביים ותחזיות LST

בעבודת העיבוד, מחושבים מגוון משתנים, כולל זוהר ספקטרלי העליון של האטמוספירה, טמפרטורת הבהירות והחזרה מ-Landsat 8. בנוסף, מחושבים משתנים מורפולוגיים כגון יחס שטח קומה (FAR), כיסוי אתר בנייה, כיסוי אבני בניין וערך האנטרופיה של שאנון.

הקוד הבא מדגים כיצד ניתן לבצע חשבון פס זה:

def calculate_ndvi(nir08, red): 
    return (nir08 - red) / (nir08 + red) 
 
def calculate_ndbi(swir16, nir08): 
    return (swir16 - nir08) / (swir16 + nir08) 
 
def calculate_st(bt): 
    return ((bt * 0.00341802) + 149.0) - 273 
 
def indices_calc(data): 
    with concurrent.futures.ThreadPoolExecutor() as executor: 
        ndvi_future = executor.submit(calculate_ndvi, data.sel(band="SR_B5"), data.sel(band="SR_B4")) 
        ndbi_future = executor.submit(calculate_ndbi, data.sel(band="SR_B6"), data.sel(band="SR_B5")) 
        st_future = executor.submit(calculate_st, data.sel(band="ST_B10")) 
 
        ndvi = ndvi_future.result() 
        ndbi = ndbi_future.result() 
        st = st_future.result() 
 
    ndvi.attrs = data.attrs 
    ndbi.attrs = data.attrs 
    st.attrs = data.attrs 
 
    return ndvi, ndbi, st 

לאחר חישוב המשתנים, מתבצעות סטטיסטיקות אזוריות כדי לצבור נתונים לפי רשת. זה כרוך בחישוב סטטיסטיקה המבוססת על ערכי העניין בכל אזור. עבור חישובים אלה נעשה שימוש בגודל רשת של כ-100 מטר.

def process_iteration(st, ndvi, ndmi, date, city_name): 
    datacube['st'] = (st.dims, st.values) 
    datacube['ndvi'] = (ndvi.dims, ndvi.values) 
    datacube['ndmi'] = (ndmi.dims, ndmi.values) 
    df = datacube.groupby("id").mean().to_dataframe().reset_index() 
    merged_grid = hexgrid_utm.join(df, on='id', how='left', lsuffix='_')[['id', 'hex_id', 'geometry', 'st', 'ndvi', 'ndmi']] 
    merged_grid.to_file(f"{DATA}/{city_name}/{city_name}_outputs_{date}.geojson", driver='GeoJSON') 
    print("Working on:", date) 
 
def iterative_op(city_json, st, ndvi, ndmi, city_name): 
    with concurrent.futures.ThreadPoolExecutor() as executor: 
        futures = [ 
            executor.submit(process_iteration, st[i], ndvi[i], ndmi[i], date, city_name) 
            for i, _ in enumerate(city_json.time) 
            for date in city_json.date 
        ] 
        for future in concurrent.futures.as_completed(futures): 
            future.result() 
 
    print('Process completed') 

לאחר צבירה של הנתונים, מבצעים מודלים מרחביים. גרמנר השתמש בשיטות רגרסיה מרחביות, כגון רגרסיה ליניארית ואפקטים קבועים מרחביים, כדי להסביר את התלות המרחבית בתצפיות. גישה זו מקלה על יצירת מודלים של הקשר בין משתנים ל- LST ברמת מיקרו.

הקוד הבא ממחיש כיצד ניתן להפעיל דוגמנות מרחבית כזו:

features = [ 
    'ndvi', 
    'ndbi', 
    'st', 
    'build_count', 
    'bbc' 
] 
 
def compute_spatial_weights(df, k=8): 
    knn = KNN.from_dataframe(df, k=k) 
    return df[features].apply(lambda y: weights.spatial_lag.lag_spatial(knn, y)).rename(columns=lambda c: 'w_' + c) 
 
def ordinary_least_squares(df_year, spatial=False): 
    formula = f"lst ~ {' + '.join(features)}"  
    if spatial: 
        df_year = df_year.join(compute_spatial_weights(df_year)) 
        formula += f" + {' + '.join(['w_' + f for f in features])}"  
     
    return smf.ols(formula, data=df_year).fit() 
 
def process(df, year): 
    df_year = pd.merge(df[df['year'] == year].fillna(0), grids[['idx', 'name']], on='idx') 
    ols_model = ordinary_least_squares(df_year) 
    ols_spatial_model = ordinary_least_squares(df_year, spatial=True) 
    ols_spatial_fe_model = ordinary_least_squares(df_year, spatial=True) 
     
    return { 
        'year': year, 
        'ols_model': ols_model, 
        'ols_spatial_model': ols_spatial_model, 
        'ols_spatial_fe_model': ols_spatial_fe_model, 
        'ols_r2': [ols_model.rsquared, ols_spatial_model.rsquared, ols_spatial_fe_model.rsquared] 
    } 

Gramener השתמש בהחלקה אקספוננציאלית כדי לחזות את ערכי LST. החלקה אקספוננציאלית היא שיטה יעילה לחיזוי סדרות זמן המיישמת ממוצעים משוקללים על נתוני עבר, כאשר המשקולות יורדות באופן אקספוננציאלי לאורך זמן. שיטה זו יעילה במיוחד בהחלקת נתונים לזיהוי מגמות ודפוסים. על ידי שימוש בהחלקה אקספוננציאלית, זה הופך להיות אפשרי לדמיין ולחזות מגמות LST בדיוק רב יותר, מה שמאפשר תחזיות מדויקות יותר של ערכים עתידיים בהתבסס על דפוסים היסטוריים.

כדי להמחיש את התחזיות, Gramener השתמש במחברת הגיאו-מרחבית של SageMaker עם ספריות גיאו-מרחביות בקוד פתוח כדי לכסות תחזיות מודל על מפת בסיס ומספקת מערכי נתונים גיאו-מרחביים להדמיה שכבות ישירות בתוך המחברת.

ראיה

סיכום

פוסט זה הדגים כיצד Gramener מעצימה לקוחות לקבל החלטות מונעות נתונים עבור סביבות עירוניות מקיימות. עם SageMaker, גרמנר השיגה חיסכון משמעותי בזמן בניתוח UHI, והפחיתה את זמן העיבוד משבועות לשעות. יצירת תובנה מהירה זו מאפשרת ללקוחותיה של Gramener לאתר אזורים הדורשים אסטרטגיות הפחתת UHI, לתכנן באופן יזום פרויקטים של פיתוח עירוני ותשתית כדי למזער את UHI, ולקבל הבנה הוליסטית של גורמים סביבתיים להערכת סיכונים מקיפה.

גלה את הפוטנציאל של שילוב נתוני תצפית על כדור הארץ בפרויקטי הקיימות שלך עם SageMaker. למידע נוסף, עיין ב התחל עם היכולות הגאו-מרחביות של Amazon SageMaker.


על הכותבים

אבישק מיטל הוא אדריכל פתרונות עבור צוות המגזר הציבורי העולמי עם Amazon Web Services (AWS), שם הוא עובד בעיקר עם שותפי ISV בתעשיות המספק להם הדרכה ארכיטקטונית לבניית ארכיטקטורה ניתנת להרחבה ויישום אסטרטגיות להנעת אימוץ שירותי AWS. הוא נלהב למודרניזציה של פלטפורמות מסורתיות ואבטחה בענן. מחוץ לעבודה, הוא חובב טיולים.

ינוש וושיץ הוא אדריכל פתרונות בכיר ב-AWS, המתמחה ב-AI/ML. עם למעלה מ-15 שנות ניסיון, הוא תומך בלקוחות ברחבי העולם במינוף AI ו-ML לפתרונות חדשניים ובניית פלטפורמות ML ב-AWS. המומחיות שלו משתרעת על למידת מכונה, הנדסת נתונים ומערכות מבוזרות ניתנות להרחבה, מתוגברת על ידי רקע חזק בהנדסת תוכנה ומומחיות בתעשייה בתחומים כגון נהיגה אוטונומית.

שרוואן קומאר הוא מנהל בכיר להצלחת לקוחות ב-Gramener, עם ניסיון של עשור באנליטיקה עסקית, אוונגליסטית נתונים ויצירת קשרי לקוחות עמוקים. הוא מחזיק בבסיס איתן בניהול לקוחות, ניהול חשבונות בתחום של ניתוח נתונים, AI ו-ML.

אבירט ס הוא מדען נתונים גיאו-מרחביים ב-Gramener, הממנף AI/ML כדי לפתוח תובנות מנתונים גיאוגרפיים. המומחיות שלו טמונה בניהול אסונות, חקלאות ותכנון עירוני, כאשר הניתוח שלו מוביל לתהליכי קבלת החלטות.

ספוט_ימג

המודיעין האחרון

ספוט_ימג