במאמר הקצר הזה, נחקור אישורי הלוואות באמצעות מגוון כלים וטכניקות. נתחיל בניתוח נתוני הלוואות וניישם רגרסיה לוגיסטית לחיזוי תוצאות הלוואות. נבנה על זה ונשלב את BERT לעיבוד שפה טבעית כדי לשפר את דיוק החיזוי. כדי לפרש את החיזויים, נשתמש במסגרות ההסבר SHAP ו-LIME, ונספק תובנות לגבי חשיבות המאפיינים והתנהגות המודל. לבסוף, נחקור את הפוטנציאל של עיבוד שפה טבעית דרך LangChain לאוטומציה של חיזויי הלוואות, באמצעות כוחה של בינה מלאכותית ידידותית.
קובץ המחברת ששימש במאמר הזה זמין ב-GitHub.
הקדמה
במאמר הזה, נחקור טכניקות שונות לאישורי הלוואות, באמצעות מודלים כמו רגרסיה לוגיסטית ו-BERT, וניישם את SHAP ו-LIME לפירוש המודל. נחקור גם את הפוטנציאל של שימוש ב-LangChain לאוטומציה של חיזויי הלוואות עם בינה מלאכותית ידידותית.
צור חשבון ב-SingleStore Cloud
מאמר קודם הראה את השלבים ליצירת חשבון חינם ב-SingleStore Cloud. נשתמש ב-רמת השיתוף החינמית וניקח את השמות המוגדרים כברירת מחדל עבור סביבת העבודה ומסד הנתונים.
ייבא את המחברת
נוריד את המחברת מ-GitHub (הקישור מופיע לעיל).
מתוך לוח הניווט השמאלי בפתח ה-SingleStore Cloud, נבחר ב-DEVELOP > Data Studio.
בפינה העליונה הימנית של הדף, נבחר ב-New Notebook > Import From File. נשתמש במדריך כדי לאתר ולייבא את המחברת שהורדנו מ-GitHub.
הרצת המחברת
לאחר שנוודא שאנחנו מחוברים לחלל העבודה שלנו ב-SingleStore, נריץ את התאים אחד אחרי השני.
נתחיל בהתקנת הספריות הנדרשות ובייבוא התלותות, ולאחר מכן נטען את נתוני ההלוואות מקובץ CSV המכיל כמעט 600 שורות. מאחר שיש כמה שורות חסרות נתונים, נDrop את השורות החסרות לניתוח הראשוני, ונצמצם את מערך הנתונים לאזור 500 שורות.
לאחר מכן, נמשיך להכין את הנתונים ונפריד בין התכונות לבין משתני היעד.
ויזואליזציות יכולות לספק תובנות נהדרות לגבי הנתונים, ונبدأ ביצירת מפה חום המראה את הקורלציה בין תכונות מספריות בלבד, כפי שמוצג באיור 1.
איור 1: מפה חום
אנחנו יכולים לראות שה-סכום ההלוואה וה-הכנסה של המגיש קשורים זה לזה באופן חזק.
אם נצייר את ה-סכום ההלוואה מול הכנסה של המגיש, נוכל לראות שרוב נקודות הנתונים נמצאות בצד השמאלי התחתון של התרשים, כפי שמוצג באיור 2.
איור 2: תרשים פיזור
אז, ההכנסות בדרך כלל נמוכות מאוד ויישומי ההלוואה הם גם לסכומים די קטנים.
אנחנו יכולים גם ליצור גרף זוגי עבור סכום ההלוואה, הכנסת המבקש ו-הכנסת השותף להלוואה, כפי שמוצג באיור 3.
איור 3: גרף זוגי
ברוב המקרים, ניתן לראות שהנקודות נוטות להצטבר יחד ובדרך כלל יש מעט ערכים חריגים.
כעת נבצע הנדסת מאפיינים. נזהה את הערכים הקטגוריים ונהפוך אותם לערכים מספריים וכן נשתמש בקידוד one-hot במידת הצורך.
לאחר מכן, ניצור מודל באמצעות רגרסיה לוגיסטית כיוון שישנן רק שתי תוצאות אפשריות: או שהבקשה תאושר או שתידחה.
אם נמחיש את חשיבות המאפיינים, נוכל לבצע תצפיות מעניינות, כפי שמוצג באיור 4.
איור 4: חשיבות מאפיינים
לדוגמה, ניתן לראות ש-היסטוריית אשראי היא כמובן מאוד חשובה. עם זאת, מצב משפחתי ו-מגדר גם הם חשובים.
כעת נבצע תחזיות באמצעות דוגמת בדיקה אחת.
ניצור סיכום בקשת הלוואה באמצעות ייצוגים דו-כיווניים ממירי טרנספורמרים (BERT) עם דוגמת הבדיקה. דוגמת פלט:
BERT-Generated Loan Application Summary
applicant : mr blobby income : $ 7787. 0 credit history : 1. 0 loan amount : $ 240. 0 property area : urban area
Model Prediction ('Y' = Approved, 'N' = Denied): Y
Loan Approval Decision: Approved
באמצעות הסיכום שנוצר על ידי BERT, ניצור ענן מילים כפי שמוצג באיור 5.
ניתן לראות ששם המבקש, הכנסה והיסטוריית אשראי הם גדולים ובולטים יותר.
דרך נוספת שבה נוכל לנתח את הנתונים לדוגמה שלנו היא באמצעות הסברים אדיטיביים של שקליי (SHAP). באיור 6 נוכל לראות בצורה ויזואלית את התכונות החשובות.
איור 6: SHAP
גרף הכוח של SHAP הוא דרך נוספת שבה נוכל לנתח את הנתונים, כפי שמוצג באיור 7.
איור 7: גרף כוח
נוכל לראות כיצד כל תכונה תורמת לניבוי מסוים לדוגמה שלנו על ידי הצגת ערכי SHAP בצורה ויזואלית.
ספרייה מאוד שימושית נוספת היא הסברים מודליים-אגנוסטיים מקומיים (LIME). התוצאות עבור זה ניתן לייצר במחברת המצורפת למאמר זה.
בהמשך, ניצור מטריצת בלבול (איור 8) עבור מודל הרגרסיה הלוגיסטית שלנו וניצור דוח סיווג.
איור 8: מטריצת בלבול
התוצאות המוצגות באיור 8 הן מעט מעורבות, אך דוח הסיווג מכיל תוצאות טובות:
Accuracy: 0.84
Precision: 0.83
Recall: 0.98
F1-score: 0.90
Classification Report:
precision recall f1-score support
N 0.91 0.49 0.64 43
Y 0.83 0.98 0.90 109
accuracy 0.84 152
macro avg 0.87 0.74 0.77 152
weighted avg 0.85 0.84 0.82 152
בסך הכל, אנו יכולים לראות ששימוש בכלים ובטכניקות קיימים של למידת מכונה נותן לנו דרכים רבות לנתח את הנתונים ולמצוא קשרים מעניינים, במיוחד ברמת הדוגמה הבודדת.
בהמשך, נשתמש ב-LangChain ו-LLM ונראה אם נוכל גם לבצע תחזיות הלוואה.
לאחר שנגדיר ונקנפג את LangChain, נבדוק אותו עם שני דוגמאות, אך נגביל את כמות הנתונים כדי שלא נעבור את מגבלות הטוקנים והקצב. הנה הדוגמה הראשונה:
query1 = (
"""
Build a loan approval model.
Limit your access to 10 rows of the table.
Use your model to determine if the following loan would be approved:
Gender: Male
ApplicantIncome: 7787.0
Credit_History: 1
LoanAmount: 240.0
Property_Area_Urban: 1
Limit your reply to either 'Approved' or 'Denied'.
"""
)
result1 = run_agent_query(query1, agent_executor, error_string)
print(result1)
במקרה הזה, הבקשה אושרה במקור הנתונים המקורי.
הנה דוגמה שניה:
query2 = (
"""
Build a loan approval model.
Limit your access to 10 rows of the table.
Use your model to determine if the following loan would be approved:
Gender: Female
ApplicantIncome: 5000.0
Credit_History: 0
LoanAmount: 103.0
Property_Area_Semiurban: 1
Limit your reply to either 'Approved' or 'Denied'.
"""
)
result2 = run_agent_query(query2, agent_executor, error_string)
print(result2)
במקרה זה, היישום נדחה במידע המקורי.
בעזרת השאילות האלה, אולי נקבל תוצאות אינסימינטיות. זה יכול להיות בגלל הגבלה במספר המידע שניתן להשתמש בו. אנחנו יכולים גם להשתמש במצב הפרופורציונלי ב-LangChain כדי לראות את השלבים המשמשים לבניית מודל לאישור הלוואות, אבל יש מידע לא מספק ברמה המקורית הזו על השלבים הפיזיים ליצירת המודל הזה.
צריך עוד עבודה עם AI הדיבורי, בגלל שבמדינות רבות יש חוקים להון הוגן ואנחנו צריכים הסבר מפורט על מה שה-AI אושר או דחה בקשה להלוואה מסויימת.
סיכם
היום, כל כך הרבה כלים וטכניקות חזקים מעלים את ה-ML (ממחשבת המונית) עבור הבנה עמוקה יותר של המידע ומודלי התחזיות הלוואות. AI, דרך מודלים המדיה הגדולים (LLMs) והפרמטרים המודרניים, מעניק פוטנציאל רב להשתמש בהם כדי להשתמש במנגנונים המקודמים או אפילו להחליף אותם. אך עבור הבט הגדול יותר בהמשך במשמעויות של AI וכדי להגיד אמת עם חוקי ההון הוגנים והחוקים הזולתיים במדינות רבות, חשוב להבין את ההגיון והתהליך ההחלטות של AI.
Source:
https://dzone.com/articles/building-predictive-analytics-for-loan-approvals