יחידה 6 / 11

הכנת נתונים והנדסת תכונות: טיפול בנתונים אקטואריים עם בינה מלאכותית

רווחים:

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

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

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

בעיות אופייניות של נתונים אקטואריים

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

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

הטבלה הבאה מסכמת בעיות טיפוסיות ואת הגישה הנכונה:

בעיה

גישה שגויה

גישה נכונה

ערך חסר

מלא את כולם בממוצע

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

חריג

מחיקה אוטומטית

הבחנה בין שגיאת נתונים לבין ליד אמיתי

חשיפה

סופר את כל הפוליסות למשך שנה

חשב חשיפה חלקית

חוסר עקביות בקטגוריה

להתעלם

התאם עם מילון סטנדרטי

נזק חוזר

לא שם לב

בטל כפילות עם שדות מפתח

הנדסת תכונות: הפקת ידע מנתונים

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

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

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

הסכנה הכי ערמומית: דליפות נתונים והטיה מרומזת

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

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

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

כיצד להשתמש ב-AI בהכנת נתונים

1) בדיקת איכות נתונים:

תפקידך: עוזר לאיכות נתונים. יש לך תשואת פוליסה אקטוארית. עמודות: policy_id, start_date, end_date,age, region, vehicle_age, premium, claim_count, claim_amount.תן לי רשימת בדיקה ושרטוט קוד של Python (פנדה):- ספירת ערכים חסרים לפי עמודה.- סמן ערכים בלתי סבירים (פרמיה שלילית, גיל<16 או >100, חשבו שבריר שנות התחלה. DOEL חשיפה בהתחלה. מחק; פשוט תדווח על זה כדי שאוכל להחליט.

2) גזירת תכונה:

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

3) בדיקת נזילות:

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

4) נורמליזציה של חשיפה:

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

הנחיה חלשה / הנחיה חזקה

הנחיה חלשה:

נקו את הנתונים והכינו אותם לדגם.

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

הנחיה עוצמתית:

תפקידך: עוזר הכנת נתונים אקטואריים. מילון נתונים: מדיניות_מזהה (זהות), תאריך התחלה/סיום (תקופת פוליסה), גיל (צפי 16-90), פרמיה (חייבת להיות >0), מספר_תביעות (>=0), סכום_תביעה (>=0). משימה: 1) כתוב כלל סבירות עבור כל עמודה ודווח על הפרות עבור קוד חשיפה שונה (מחיקת קוד 3). חסר 'גיל' (מחק). / ממוצע / קטגוריה נפרדת) נוכח עם פלוס מינוס; השאירו לי את ההחלטה.4) התריעו אם יש עמודה שעלולה להוות סיכון לדליפה. מחיקה אוטומטית של כל רשומה; אני אאשר כל החלטה.

שלושה מיני תיקים

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

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

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

טעויות נפוצות

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

לסיכום

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

משימת יישום

הכן מילון נתוני מדיניות אנונימי קטן (5-7 עמודות, טווח סביר של כל אחת מהן). בקש מה-AI של (א) את כלל הסבירות ואת קוד דיווח ההפרה עבור כל עמודה, (ב) חישוב חשיפה חלקית, (ג) הצעות ל-3 תכונות חדשות לנסות. לאחר מכן הוסף משתנה "מלכודת דליפה" מכוונת לרשימה (למשל "פיצוי ששולם") ובדקו אם ה-AI תופס אותו כדליפה.

רשימת בדיקה

  • [ ] האם ניתחתי מדוע לפני מחיקת חסרים וחריגים?
  • [ ] האם שברתי ונורמלתי את החשיפה בצורה נכונה?
  • [ ] האם כתבתי את ההצדקה האקטוארית לכל תכונה חדשה שנגזרה?
  • [ ] האם תהיתי אם כל משתנה אכן קיים (דליפה) בזמן החיזוי?
  • [ ] האם סרקתי לאיתור הטיה מרומזת בתכונות נגזרות?
  • [ ] האם אין לי AI מחק אוטומטית רשומות כלשהן ואישרתי כל החלטה בעצמי?