מערכות רשת לניתוח מרחבי

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

סקירה כללית ואתגרים בשימוש בניתוח מרחבי

ניתוח מרחבי עוזר להראות את הקשר בין ישויות (חנויות או בתים) לבין אירועים במרחב פיזי. ניתוח מרחבי שמשתמש בפני כדור הארץ כמרחב הפיזי נקרא ניתוח גיאו-מרחבי. ב-BigQuery יש תכונות ופונקציות גיאו-מרחביות שמאפשרות לבצע ניתוח גיאו-מרחבי בקנה מידה נרחב.

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

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

בדוגמאות שלמעלה, המעצבים של הניתוחים האלה נתקלים באתגרים הבאים:

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

במאמר הזה נסביר על כל אחת מהאפשרויות, נתאר שיטות מומלצות ונעזור לכם להימנע מטעויות נפוצות.

בעיות נפוצות בבחירת אזורים סטטיסטיים

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

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

מספרי מיקוד

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

אחת הבעיות בשימוש במיקודים היא שהם לא מיוצגים כמצולעים, ואין מקור מידע אחד נכון לגבי אזורי מיקוד. בנוסף, מיקודים לא מייצגים בצורה טובה התנהגות אנושית אמיתית. נתוני המיקוד הנפוצים ביותר בארה"ב הם מ-US Census Bureau TIGER/Line Shapefiles, שמכיל מערך נתונים שנקרא ZCTA5 (Zip Code Tabulation Area). קבוצת הנתונים הזו מייצגת קירוב של גבולות המיקוד שנגזרים ממסלולי משלוח הדואר. עם זאת, לחלק מהמיקודים שמייצגים בניינים בודדים אין גבולות בכלל. הבעיה הזו קיימת גם במדינות אחרות, ולכן קשה ליצור טבלת עובדות גלובלית אחת שמכילה קבוצה מוסמכת של גבולות מיקוד שאפשר להשתמש בה במערכות ובקבוצות נתונים שונות.

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

אזורים מוגדרים למפקד אוכלוסין, ערים ומחוזות

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

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

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

רשתות ברזולוציה אחת וברזולוציות מרובות

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

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

מערכות רשת S2 ו-H3

בקטע הזה מופיעה סקירה כללית של מערכות הרשת S2 ו-H3.

S2

S2 geometry היא מערכת רשת היררכית בקוד פתוח שפותחה על ידי Google ופורסמה לציבור בשנת 2011. אתם יכולים להשתמש במערכת הרשת S2 כדי לארגן נתונים מרחביים ולהוסיף אותם לאינדקס, על ידי הקצאת מספר שלם ייחודי של 64 ביט לכל תא. יש 31 רמות של רזולוציה. כל תא מיוצג כריבוע ומיועד לפעולות על גיאומטריות כדוריות (לפעמים נקראות geographies). כל ריבוע מחולק לארבעה ריבועים קטנים יותר. מעבר בין שכנים, כלומר היכולת לזהות תאי S2 שכנים, פחות מוגדרת היטב כי לריבועים יכולים להיות ארבעה או שמונה שכנים רלוונטיים, בהתאם לסוג הניתוח. הנה דוגמה לתאי רשת S2 ברזולוציות שונות:

דוגמה לתאי רשת S2.

ב-BigQuery נעשה שימוש בתאי S2 כדי להוסיף לאינדקס נתונים מרחביים, והוא חושף כמה פונקציות. לדוגמה, הפונקציה S2_CELLIDFROMPOINT מחזירה את מזהה התא S2 שמכיל נקודה על פני כדור הארץ ברמה נתונה.

H3

‫H3 היא מערכת רשת היררכית בקוד פתוח שפותחה על ידי Uber ומשמשת את Overture Maps. יש 16 רמות של רזולוציה. כל תא מיוצג כמשושה, וכמו ב-S2, לכל תא מוקצה מספר שלם ייחודי של 64 ביט. בדוגמה של המחשה של תאי H3 שמכסים את מפרץ מקסיקו, תאי H3 הקטנים יותר לא מוכלים באופן מושלם בתאים הגדולים יותר.

כל תא מחולק לשבעה משושים קטנים יותר. חלוקת המשנה לא מדויקת, אבל היא מתאימה לתרחישי שימוש רבים. לכל תא יש קצה משותף עם שישה תאים שכנים, מה שמקל על המעבר בין השכנים. לדוגמה, בכל רמה, יש 12 מחומשים, שבמקום זאת חולקים קצה עם חמישה שכנים במקום שישה. למרות שאין תמיכה ב-H3 ב-BigQuery, אתם יכולים להוסיף תמיכה ב-H3 ל-BigQuery באמצעות Carto Analytics Toolbox for BigQuery.

שתי הספריות, S2 ו-H3, הן בקוד פתוח וזמינות במסגרת רישיון Apache 2, אבל לספריית H3 יש תיעוד מפורט יותר.

HEALPix

שיטה נוספת למיפוי הכדור, שנפוצה בתחום האסטרונומיה, נקראת Hierarchical Equal Area isoLatitude Pixelation‏ (HEALPix). ‫HEALPix לא תלוי בעומק הפיקסלים ההיררכי, אבל זמן החישוב נשאר קבוע.

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

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

‫BigQuery לא תומך ב-HEALPix, אבל יש הרבה הטמעות במגוון שפות, כולל JavaScript, שמאפשרות להשתמש בו בקלות בפונקציות בהגדרת המשתמש (UDF) ב-BigQuery.

דוגמאות לתרחישים לדוגמה לכל אסטרטגיית הוספה לאינדקס

בקטע הזה מפורטות כמה דוגמאות שיעזרו לכם להחליט איזו מערכת רשת הכי מתאימה לתרחיש לדוגמה שלכם.

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

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

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

המאמרים הבאים