יותר

מבחן המשמעות של מורן I באמצעות סימולציה של מונטה קרלו?

מבחן המשמעות של מורן I באמצעות סימולציה של מונטה קרלו?


חישבתי את השאריות של המודל שלי ומדדתי את של מורן עבור השאריות של המודל.

איך אוכל לקבוע באופן פרגמטי את המשמעות של מורן I באמצעות הדמיית מונטה קרלו?


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

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

שינוי כזה הוא א תְמוּרָה. ל נ נקודות נתונים, יש n! = n * (n-1) * (n-2) * ... * (2) * (1) תמורות. ל נ הרבה יותר גדול מ -10 בערך, זה יותר מדי כדי ליצור. בדרך כלל אין ביטוי אנליטי פשוט להפצת התמורה המלאה. לפיכך, אנו נוהגים לנקוט בדגימה מתוך מכלול התמורות באופן אקראי, ולתת לכולם משקל שווה. התפלגות הסטטיסטיקה האוטוקרלציה במדגם גדול דיו (בדרך כלל כוללת לפחות 500 תמורות) מתקרבת להתפלגות האמיתית. זהו החלק "מונטה קרלו" בחישוב.

במקרה של מורן I, ערך חיובי גדול הוא עדות למתאם חיובי וערך שלילי גדול הוא עדות למתאם שלילי. אתה יכול לבדוק את אחד מהם או את שניהם על ידי איתור הערך האמיתי של I (עבור הנתונים כפי שנצפו) בתוך התפלגות התמורות. ערך p הוא החלק של התפלגות התמורה (לְרַבּוֹת הערך הנצפה של I) שהוא קיצוני יותר מהנתון שנצפה.

הדוגמאות הבאות ימחישו. בשניהם נוצרו נתונים ברשת 5 על 8. המשקולות פרופורציונליות ל- 1 עבור תאים המשתפים צד, ל- sqrt (1/2) = 0.7071 עבור תאים המשתפים פינה בלבד, ו- 0 אחרת. העמודה השמאלית ממפה את הנתונים (הצהוב גבוה מהאדום); העמודה האמצעית מציגה היסטוגרמות של הנתונים; והעמודה הימנית מציגה את חלוקת התמורה המשוערת של ה- I של מורן (באמצעות מדגם של 10,000). הקווים המנוקדים האדומים האנכיים מציגים את הערכים האמיתיים של מורן I בנתונים.

במקרה של נתונים המיוצרים על ידי מנגנון המשרה התאמה אוטומטית כלשהי (השורה העליונה), ערך זה קרוב לקצוות הגבוהים יותר של ההתפלגות: רק 4.53% שווים או עולים עליו. לעתים קרובות זה ייחשב כראיה משמעותית להתאמה אוטומטית חיובית. במקרה של נתונים שנוצרו עם מנגנון אקראי גרידא (השורה התחתונה), ה- I של מורן נמצא כמעט באמצע ההתפלגות (כמעט בדיוק בערכו הממוצע -1/39 = -0.026). איש לא יבלבל זאת עם תוצאה משמעותית. בדוגמאות אלה, אם כן, מבחן התמורה מבצע כמתוכנן.

שימו לב להתפלגות מוטה מאוד של הנתונים המקושרים אוטומטית. זה נעשה בכוונה. נתונים מוטים כאלה אינם תואמים את ההנחות (המרומזות) המשמשות כדי להצדיק פרשנויות סטנדרטיות של מורן I. (התפלגות האפסים העקומה מעידה על כך: הפרשנויות הסטנדרטיות מניחות שאין להן בכלל מוטה.) בדיוק במקרים כאלה מבחן תמורה מניב תוצאות מהימנות יותר ממבחן "משומר" המבוסס על הפניית "ציון Z" להתפלגות נורמלית.

לבדיקת שאריות מודל, בכל איטרציה בדרך כלל היית מתיר את השאריות, מחזיר את המודל ומחשב את ה- I של מורן מאותם שאריות חדשות.


הפניות

פיליפ גוד, מבחני השערות חלופיות, פרמטריות ובוטסטראפ. מהדורה שלישית (2005), ספרינגר.


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

# # אני של מורן # https://en.wikipedia.org/wiki/Moran's_I # # מיקומי נתונים. # x <- 1: 8 # x- קואורדינטות של נקודות y <- 1: 5 # y- קואורדינטות של נקודות # # מטריצת משקולות. # ind <- expand.grid (i = 1: אורך (x), j = 1: אורך (y)) f <- פונקציה (i, j) {u <- min (3, sum (abs (ind [i) ,] - ind [j,]))) c (0, 1, sqrt (1/2), 0) [u + 1]} w <- מטריצה ​​(0.0, nrow (ind), nrow (ind)) עבור (i ב 1: nrow (ind)) עבור (j ב 1: nrow (ind)) w [i, j] <- f (i, j) w <- w / sum (w) # # I של מורן. מורן <- פונקציה (x, משקולות) {n <- אורך (x) z <- as.vector ((x - ממוצע (x)) / sd (x)) as.vector (z% *% משקלים% *% (z * sqrt (n / (n-1)))}} # # מבחן ערעור (כולל עלילה). # ppt <- פונקציה (z, w, N = 1e4, ...) {stat <- moran (z, w) sim <- לשכפל (N, moran (לדוגמא (z, אורך (z)), w)) p. ערך <- ממוצע ((הכל <- c (stat, sim))> = stat) היסט (sim, sub = הדבקה ("p =", עגול (עמ 'ערך, 4)), xlim = טווח (הכל), ...) abline (v = stat, col = "# 903030", lty = 3, lwd = 2) return (p.value)} # # תצפיות מדומות. # set.seed (17) par (mfrow = c (2,3)) # לגרום להתאמה אוטומטית באמצעות מגמה בסיסית. z <- מטריצה ​​(rexp (אורך (x) * אורך (y), חיצוני (x, y ^ 2)), אורך (x)) תמונה (יומן (z), ראשי = "נתונים מתואמים אוטומטית") היסט (z) ppt (z, w, main = "Null Distribution of Moran's I", xlab = "I") # צור נתונים ללא תלות במיקום. z <- מטריצה ​​(rnorm (אורך (x) * אורך (y), 0, 1/2), אורך (x)) תמונה (z, main = "נתונים לא מתואמים") היסט (z) ppt (z, w, main = "הפצה אפסית של ה- I של מורן", xlab = "I")

צפו בסרטון: הבלגן של קרלו