שְׁאֵלָה:
כיצד ניתן להפיק את פתרון רגרסיית הרכס?
user34790
2013-09-04 20:49:13 UTC
view on stackexchange narkive permalink

יש לי כמה בעיות בגזירת הפיתרון לרגרסיית הרכס.

אני מכיר את פתרון הרגרסיה ללא מונח הסדרה:

$$ \ beta = (X ^ TX) ^ {- 1} X ^ Ty. $$

אך לאחר הוספת המונח L2 $ \ lambda \ | \ beta \ | _2 ^ 2 $ לפונקציית העלות, כיצד הפיתרון הופך ל

$$ \ beta = (X ^ TX + \ lambda I) ^ {- 1} X ^ Ty. $$

חָמֵשׁ תשובות:
whuber
2015-08-04 00:10:55 UTC
view on stackexchange narkive permalink

בואו נבנה על מה שאנחנו יודעים, כלומר, בכל פעם שמטריצת המודל $ n \ times p $ היא $ X $, התגובה $ n $ -ווקטור היא $ y $, והפרמטר $ p $ - וקטור הוא $ \ beta $, הפונקציה האובייקטיבית

$$ f (\ beta) = (y - X \ beta) ^ \ prime (y - X \ beta) $$

(שהוא סכום הריבועים של שאריות) ממוזער כאשר $ \ beta $ פותר את המשוואות הרגילות

$$ (X ^ \ prime X) \ beta = X ^ \ prime y . $$

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

$$ (y - X \ beta) ^ \ prime (y - X \ beta) + \ lambda \ beta ^ \ prime \ beta $$

עבור קבוע שאינו שלילי $ \ lambda $. זהו סכום הריבועים של השאריות בתוספת מכפיל מסכום הריבועים של המקדמים עצמם (מה שמבהיר שיש לו מינימום גלובלי). מכיוון ש $ \ lambda \ ge 0 $, יש לו שורש ריבועי חיובי $ \ nu ^ 2 = \ lambda $.

שקול את המטריצה ​​$ X $ המוגדלת עם שורות המקבילות ל- $ \ nu $ פי $ p \ times p $ מטריצת זהות $ I $:

$$ X _ {*} = \ pmatrix {X \\ \ nu I} $$

כאשר הווקטור $ y $ מורחב באופן דומה עם $ p $ אפסים בסוף ל- $ y _ {*} $, מוצר המטריצה ​​בפונקציה האובייקטיבית מוסיף $ p $ תנאים נוספים של הטופס $ (0 - \ nu \ beta_i) ^ 2 = \ lambda \ beta_i ^ 2 $ למטרה המקורית. לכן

$$ (y _ {*} - X _ {*} \ beta) ^ \ prime (y _ {*} - X _ {*} \ beta) = (y - X \ beta) ^ \ prime (y - X \ beta) + \ lambda \ beta ^ \ prime \ beta. $$

מצורת הביטוי ביד שמאל, המיידיות שהמשוואות הרגילות הן

$$ (X _ {*} ^ \ prime X _ {*}) \ beta = X _ {*} ^ \ prime y _ {*}. $$

מכיוון שצירפנו אפסים לסוף $ y $ הצד הימני זהה ל- $ X ^ \ prime y $. בצד שמאל $ $ \ nu ^ 2 I = \ lambda I $ מתווסף ל- $ X ^ \ prime X $ המקורי. לכן המשוואות הרגילות החדשות מפשטות ל

$$ (X ^ \ prime X + \ lambda I) \ beta = X ^ \ prime y. $$


מלבד היותך חסכוני מבחינה רעיונית - אין צורך במניפולציות חדשות בכדי להפיק תוצאה זו - היא גם חסכונית מבחינה חישובית: התוכנה שלך לביצוע ריבועי מינימום רגילים תעשה גם רגרסיה של הרכס ללא כל לשנות כל דבר שהוא. (בכל זאת יכול להיות מועיל בבעיות גדולות להשתמש בתוכנות המיועדות למטרה זו, מכיוון שהיא תנצל את המבנה המיוחד של $ X _ {*} $ כדי להשיג תוצאות ביעילות למרווח צפוף של $ \ lambda $, מה שמאפשר לך לחקור כיצד התשובות משתנות עם $ \ lambda $.)

יופי נוסף של דרך זו להסתכל על דברים הוא כיצד זה יכול לעזור לנו להבין רגרסיה של הרכס . כשאנחנו רוצים להבין באמת רגרסיה, זה כמעט תמיד עוזר לחשוב על זה גאומטרית: העמודים של $ X $ מהווים $ p $ וקטורים במרחב וקטורי אמיתי של מימד $ n $. על ידי צירוף של $ \ nu I $ ל- $ X $, ובכך מאריך אותם מ- $ n $ -ווקטורים ל- $ n + p $ -ווקטורים, אנו משבצים $ \ mathbb {R} ^ n $ לחלל גדול יותר $ \ mathbb { R} ^ {n + p} $ על ידי הכללת כיוונים אורתוגונליים הדומים $ p $ "דמיוניים". העמודה הראשונה של $ X $ ניתנת למרכיב דמיוני קטן בגודל $ \ nu $, ובכך מאריכה אותה ומעבירה אותה מהשטח שנוצר על ידי העמודות המקוריות $ p $. העמודות השנייה, השלישית, ..., $ p ^ \ text {th} $ מאורכות באופן דומה ומועברות מהחלל המקורי באותה הכמות $ \ nu $ - אך הכל בכיוונים חדשים שונים. כתוצאה מכך, כל קולינאריות הקיימת בעמודות המקור תיפתר מיד . יתר על כן, ככל שה $ \ nu $ גדול יותר, כך הווקטורים החדשים הללו מתקרבים יותר לכיוונים הדמיוניים של $ p $: הם הופכים ליותר ויותר אורטונמלים. כתוצאה מכך, הפיתרון של המשוואות הרגילות יתאפשר מייד והוא יהפוך במהירות ליציב מבחינה מספרית כאשר $ \ nu $ יגדל מ- $ 0 $.

תיאור זה של התהליך מרמז על גישה חדשנית ויצירתית להתמודד עם הבעיות שרכס רגרסיה תוכנן לטפל. למשל, באמצעות כל אמצעי שהוא (כגון פירוק השונות שתוארו על ידי בלסלי, קוה וולש בספרם משנת 1980 על אבחון רגרסיה פרק 3), ייתכן שתוכל לזהות תת-קבוצות של כמעט קולינאריות עמודות של $ X $, כאשר כל תת-קבוצה כמעט אורתוגונלית לכל אחת מהן. אתה צריך לצרף רק כמה שורות ל- $ X $ (ואפסים ל- $ y $) מכיוון שיש אלמנטים בקבוצה הגדולה ביותר, ומקדישים מימד "דמיוני" חדש להעתקת כל אלמנט בקבוצה הרחק מאחיה: אתה לא לא צריך $ p $ ממדים דמיוניים כדי לעשות זאת.

המחבר האחרון של הספר הוא וולש, ולא וולשי.
וואו, זה פשוט העיף את דעתי.האם קיים דיון כלשהו לגבי מה קורה כאשר זה כללי מחוץ למודלים ליניאריים, כלומר ל- GLM?העונש לא אמור להיות זהה לרגרסיה של הרכס ... אך פרשנות זו מרמזת על כך שהיא עדיין תהיה אומדן שימושי פוטנציאלי!
@Cliff זו הצעה מעניינת מאוד.אולם עם זאת, אומדני GLM תלויים בצורה מסובכת יותר ב- $ X $ ולא ניתן בדרך כלל לחשוב על האומדים שלהם בצורה $$ \ hat \ beta = g (X) \ cdot h (y) $$ כפי שהם עבור OLS(כאשר $ g (X) = (X ^ \ prime X) ^ {- 1} X ^ \ prime $ ו- $ h (y) = y $), יתכן שיהיה קשה ליצור קשר שימושי בין הטלת פונקצית עונשושינוי העמודות של $ X $.בפרט, לא ברור כיצד יהיה צורך להגדיל את הערכים ב- $ y $ על מנת לגרום לכך לעבוד.
כן, ייקח מחשבה כדי לנסות לקבוע מה העונש, אבל אני לא כל כך מודאג מכך.גם הרעיון במה $ y _ * $ להשתמש אינו בדרך כלל קל ... למעט אולי במקרה של רגרסיה לוגיסטית, שבה נוכל להוסיף * שניים * $ y _ * $;אחד מ 0 ואחד של 1.הגדלה זו תהיה גרסה כללית יותר של "אומדן הדו-ממדי +2" (יש שם נכון יותר לאומדן זה עליו אני מחסיר, וזה בעצם כאשר אתה מעריך $ p $ מהתפלגות בינומית באמצעות האחורימתכוון כאומדן עם מדים קודמים ב- $ p $).
@Mark תודה על התיקון.אתה יכול לדעת שאני הולך מהזיכרון ... :-).
@whuber כיצד זה יעבוד אם היו גם משקולות תצפית?האם יש להשתמש ב- ystar מוגבר = c (y * sqrt (משקולות), rep (0, p)) ו- Xstar = rbind (X * sqrt (משקולות), sqrt (lambda) * diag (1, p)) או שהמשקולות תצפית משפיעות גם על חלק ה- sqrt (lambda) * diag (1, p) במטריצה המשתנה המוגברת?
@Tom קשה לראות כיצד משקולות תצפית ישפיעו על התצפיות המוגברות, מכיוון שהאחרונים תואמים ל * משתנים * ולא לתצפיות.
הא תודה הגיוני!אז מה שכתבתי נכון אז, נכון?
@whuber אולי כדאי גם לציין שהמתכון הזה להתאמת מודלים של רגרסיה שנענשה על הרכס, משתרע גם על ריבועי פחות ריבועים ברכס רגרסיה שנענשה, ואני מאמין גם למודעות רגרסיות לא נגטיביות (קישור זהות) רכס פואיסון נענש רגרסיה אם תקע מטריצה משתנה מוגברת זו וקטור אובסיבילתוך nnls ו- nnpois (בחבילת addreg) או nnlm (באמצעות סטייה של קולבק-לייבלר, בחבילת NNLM).עבור רגרסיה של רכס התמזג לא נגטיבי (https://stats.stackexchange.com/questions/327412/is-there-a-fused-version-ridge-regression) זה לא נראה עובד לצערי
@whuber בנוגע לשימוש באותו מתכון בכדי להתאים לרכס של דגמי פואסון שנרכשו על ידי הרכס. פרסמתי כאן שאלה חדשה, למקרה שאתה מעוניין - https://stats.stackexchange.com/questions/405198/nonnegative-identity-link-poisson-regression-עם-רכס-עונש
johnny
2013-09-04 21:14:32 UTC
view on stackexchange narkive permalink

די בשינוי פונקציית ההפסד על ידי הוספת העונש. במונחי מטריצה, פונקציית ההפסד הריבועית הראשונית הופכת ל $$ (Y - X \ beta) ^ {T} (YX \ beta) + \ lambda \ beta ^ T \ beta. $$ גזירה ביחס $ \ beta $ מובילה ל המשוואה הרגילה $$ X ^ {T} Y = \ שמאל (X ^ {T} X + \ lambda I \ ימין) \ beta $$ מה שמוביל לאומדן הרכס.

איך הנגזרת של $ \ lambda \ beta ^ T \ beta $ שווה ל- $ \ lambda I \ beta $
@user34790 זה לא. זה שווה ל- $ 2 \ lambda \ beta $. אבל השניים מבטלים עם שניות דומות בתנאים האחרים. כמובן שגורם $ I $ הוא כמו גורם 1 באלגברה "רגילה", אתה יכול להכפיל אותו בכל מקום שתרצה מבלי לשנות דבר.
@bill: כאן אתה צריך $ I $ כדי לקבל מטריצה של הממד הנכון, כך שהתוספת עובדת עם $ X ^ TX $: $ \ lambda $ הוא רק סקלר
pthesling
2015-08-03 23:19:41 UTC
view on stackexchange narkive permalink

הגזירה כוללת חשבון מטריצה, שיכול להיות די מייגע. ברצוננו לפתור את הבעיה הבאה: \ begin {משוואה} \ min_ \ ביתא (Y- \ beta ^ TX) ^ T (Y- \ beta ^ TX) + \ lambda \ beta ^ T \ beta \ end {משוואה}

שים לב ש \ התחל {משוואה} \ frac {\ חלקי (Y- \ beta ^ TX) ^ T (Y- \ beta ^ TX)} {\ partial \ beta} = - 2X ^ T ( Y- \ beta ^ TX) \ end {equation} ו- \ begin {equation} \ frac {\ partial \ lambda \ beta ^ T \ beta} {\ partial \ beta} = 2 \ lambda \ beta. \ End {משוואה} יחד נגיע לתנאי ההזמנה הראשונה \ begin {משוואה} X ^ TY = X ^ TX \ beta + \ lambda \ beta. \ End {equation} בידוד $ \ beta $ מניב את הפתרון: \ begin {משוואה} \ beta = (X ^ TX + \ lambda I) ^ {- 1} X ^ T Y. \ end {משוואה}

Jann Goschenhofer
2017-03-12 17:47:31 UTC
view on stackexchange narkive permalink

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

אנו מתחילים בפונקציה של קריטריון שנענש שונה מפונקציית הקריטריון OLS הקלאסית על ידי מונח העונשין שלה בקיץ האחרון:

קריטריון $ {Ridge} = \ sum_ {i = 1} ^ {n} (y_i-x_i ^ T \ beta) ^ 2 + \ lambda \ sum_ {j = 1} ^ p \ beta_j ^ 2 $

היכן

  • $ p = $ כמות המשתנים המשתנים ששימשה במודל
  • $ x_i ^ T \ beta = $ המנבא הליניארי הסטנדרטי שלך
  • הסיכום הראשון מייצג מחדש את ה- MSE (הפרדה בריבוע של התחזית מהערך בפועל) שאנחנו רוצים למזער כרגיל
  • הסיכום השני מייצג את העונש שאנו מיישמים על המקדמים. הנה אנחנו בהקשר הרכס שמשמעותו מדד מרחק אוקלידיאני ולכן דרגת 2 במונח העונשין. במקרה של עיבוד לאסו אנו מיישמים דרגה 1 ומניבים אומדן שונה לחלוטין.

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

$ Criterion_ {Ridge} = (y-X \ beta) ^ T (y-X \ beta) + \ lambda \ beta ^ T \ beta $

$ = y ^ Ty - \ beta ^ TX ^ Ty - y ^ TX \ beta + \ beta ^ Tx ^ TX \ beta + \ lambda \ beta ^ T \ beta $

$ = y ^ Ty - \ beta ^ TX ^ Ty - \ beta ^ TX ^ Ty + \ beta ^ TX ^ TX \ beta + \ beta ^ T \ lambda I \ beta $ כאשר $ I $ היא מטריצת הזהות

$ = y ^ Ty - 2 \ beta ^ TX ^ Ty + \ beta ^ T (X ^ TX + \ lambda I) \ beta $

כעת אנו מחפשים את $ \ beta $ שמצמצם את הקריטריון שלנו. בין השאר אנו משתמשים בכלל הבידול של המטריצה ​​$ \ frac {\ partial x ^ TAx} {\ partial x} = (A + A ^ T) x \ overset {\ text {A symmetric}} {=} 2Ax $ אשר נוכל להחיל כאן כ- $ (X ^ TX + \ lambda I) \ ב \ mathbb {R} ^ {n \ times n} $:

$ \ frac {\ partial Criterion_ {Ridge}} {\ partial \ beta} = -2X ^ Ty + 2 (X ^ TX + \ lambda I) \ beta \ overset {!} {=} 0 $

$ (X ^ TX + \ lambda I) \ beta = X ^ Ty $

$ \ overset {\ text {et voilà}} {\ Rightarrow} \ hat \ beta = (X ^ TX + \ lambda I) ^ {- 1} X ^ Ty $

@Jahn, אתה יכול בבקשה להסביר איך $$ y ^ TX \ beta $$ הפך $$ \ beta ^ TX ^ Ty $$?אני חושב שרק החלתם להעביר את זה, נכון.אבל, אתה לא יכול להחיל רק טרנספורמציה על מונח אחד מבלי להחיל אותו על כל המשוואה.מה חסר לי כאן?
@theateist סקלר מועבר הוא אותו סקלר.
Davor Josipovic
2017-01-23 01:07:37 UTC
view on stackexchange narkive permalink

ישנם כמה דברים חשובים שחסרים בתשובות שניתנו.

  1. הפתרון עבור $ \ beta $ נגזר מהתנאי הדרוש ממעלה ראשונה: $ \ frac {\ partial f_ {ridge} (\ beta, \ lambda)} {\ חלקי \ beta} = 0 $ שמניב $ \ beta = (X ^ TX + \ lambda I) ^ {- 1} X ^ TY $. אך האם זה מספיק? כלומר, הפתרון הוא מינימום גלובלי רק אם $ f_ {ridge} (\ beta, \ lambda) $ הוא קמור לחלוטין. ניתן להראות שזה נכון.

  2. דרך נוספת להסתכל על הבעיה היא לראות את המקבילה בין $ f_ {ridge} (\ beta, \ lambda) $ ו- $ f_ {OLS} (\ beta) = (Y- \ beta ^ TX) ^ T (Y- \ beta ^ TX) $ מוגבל ל- $ || \ beta || ^ 2_2 \ leq t $. OLS מייצג ריבועים קטנים יותר רגילים. מנקודת מבט זו $ f_ {ridge} (\ beta, \ lambda) $ היא רק הפונקציה הלגראנגית המשמשת למציאת המינימום הגלובלי של הפונקציה האובייקטיבית הקמורה $ f_ {OLS} (\ beta) $ מוגבלת בפונקציה הקמורה $ || בטא || ^ 2_2 $.

הסבר טוב על הנקודות הללו והגזירה של $ \ beta $ ניתן למצוא בהערות ההרצאה המשובחות האלה: http: //math.bu.edu/people/cgineste/classes/ma575/p/w14_1.pdf



שאלה ותשובה זו תורגמה אוטומטית מהשפה האנגלית.התוכן המקורי זמין ב- stackexchange, ואנו מודים לו על רישיון cc by-sa 3.0 עליו הוא מופץ.
Loading...