ברוכים הבאים ליחידת הלימוד "עיבוד מקדים של נתונים" בקורס כריית מידע (20595). יחידה זו היא אבן יסוד קריטית בתהליך כריית הנתונים. נתונים גולמיים, כפי שהם נאספים, כמעט לעולם אינם מוכנים לניתוח ישיר. הם עלולים להיות חלקיים, רועשים, לא עקביים, או פשוט גדולים ומורכבים מדי. עיבוד מקדים של נתונים הוא השלב שבו אנו מכינים את הנתונים לניתוח יעיל ומדויק, ובכך מבטיחים את איכות תוצאות כריית המידע.
חשיבותו של עיבוד מקדים
השלב המקדים של עיבוד נתונים הוא לרוב השלב הצורך את מירב המאמץ בפרויקט כריית מידע, אך הוא הכרחי להצלחת הפרויקט. נתונים באיכות ירודה יובילו לתובנות שגויות, מודלים לא מדויקים והחלטות עסקיות גרועות. לכן, הבנה מעמיקה של הטכניקות השונות לעיבוד מקדים היא חיונית.
מדוע נתונים גולמיים אינם מתאימים?
- איכות נתונים ירודה: נתונים יכולים להיות חלקיים (חסרים ערכים), רועשים (מכילים שגיאות או חריגים), או לא עקביים (סתירות בנתונים).
- מורכבות וגודל: מאגרי נתונים גדולים ומורכבים דורשים הפחתה וטרנספורמציה כדי להיות ניתנים לטיפול על ידי אלגוריתמי כרייה.
- השפעה על ביצועים: נתונים לא מעובדים עלולים להאט משמעותית את תהליך כריית המידע ולפגוע ביעילות האלגוריתמים.
שלבי עיבוד הנתונים המקדים
תהליך עיבוד הנתונים המקדים כולל ארבעה שלבים עיקריים, שלעתים קרובות מתבצעים באופן איטרטיבי:
ניקוי נתונים (Data Cleaning)
הסרת רעש, טיפול בערכים חסרים, זיהוי ותיקון חריגים וסתירות.
אינטגרציה של נתונים (Data Integration)
שילוב נתונים ממקורות שונים למאגר נתונים אחיד ועקבי.
טרנספורמציה של נתונים (Data Transformation)
שינוי צורת הנתונים כדי שיתאימו יותר לניתוח, כגון נורמליזציה או אגרגציה.
רדוקציה של נתונים (Data Reduction)
הפחתת נפח הנתונים או מספר המאפיינים מבלי לאבד מידע קריטי.
ניקוי נתונים (Data Cleaning)
ניקוי נתונים הוא תהליך קריטי שמטרתו לשפר את איכות הנתונים על ידי טיפול בבעיות נפוצות.
טיפול בערכים חסרים
ערכים חסרים הם בעיה נפוצה בנתונים. דרכי טיפול כוללות:
- התעלמות: מחיקת שורות או עמודות עם ערכים חסרים (יעיל רק אם מעט ערכים חסרים).
- מילוי ידני: אפשרי עבור מערכי נתונים קטנים.
- מילוי אוטומטי: שימוש בערך קבוע (למשל 0, "לא ידוע"), ממוצע, חציון, שכיח, או מודל חיזוי (למשל רגרסיה).
טיפול בנתונים רועשים
רעש הוא שגיאה אקראית או שונות בנתונים. דרכי טיפול:
- Binning: קיבוץ ערכים ל"סלים" (bins) והחלפתם בערך המייצג את הסל (ממוצע, חציון).
- רגרסיה: שימוש במודל רגרסיה כדי להחליק את הנתונים.
- זיהוי חריגים: זיהוי והסרה או החלקה של נקודות נתונים חריגות.
אינטגרציה וטרנספורמציה של נתונים
אינטגרציה של נתונים (Data Integration)
שילוב נתונים ממקורות הטרוגניים שונים (מסדי נתונים, קבצים שטוחים) למאגר נתונים אחיד. אתגרים כוללים:
- בעיות סכמה: שמות שונים לאותה ישות, או אותו שם לישויות שונות.
- זיהוי ישויות: קביעה אם אובייקטים ממקורות שונים הם למעשה אותו אובייקט.
- זיהוי ופתרון כפילויות: טיפול בנתונים כפולים שנוצרו כתוצאה מהשילוב.
טרנספורמציה של נתונים (Data Transformation)
שינוי צורת הנתונים כדי שיתאימו יותר לניתוח. טכניקות נפוצות:
- החלקה (Smoothing): הסרת רעש (כמו ב-binning).
- אגרגציה (Aggregation): סיכום נתונים (למשל, סכום מכירות חודשי).
- נורמליזציה (Normalization): סקאלינג של נתונים לטווח מסוים (למשל, [0,1] או ממוצע 0 וסטיית תקן 1).
- בניית מאפיינים (Attribute Construction): יצירת מאפיינים חדשים ממאפיינים קיימים.
רדוקציה של נתונים (Data Reduction)
הפחתת נפח הנתונים תוך שמירה על שלמות המידע. מטרתה לשפר את יעילות וביצועי אלגוריתמי הכרייה.
הפחתת ממדים (Dimensionality Reduction)
הפחתת מספר המאפיינים (עמודות) במערך הנתונים.
- בחירת מאפיינים (Feature Selection): זיהוי והסרה של מאפיינים לא רלוונטיים או מיותרים.
- מיצוי מאפיינים (Feature Extraction): יצירת מאפיינים חדשים (ממדים נמוכים יותר) מצירוף של מאפיינים קיימים (למשל, PCA).
הפחתת כמותיות (Numerosity Reduction)
הפחתת מספר הרשומות (שורות) במערך הנתונים.
- דגימה (Sampling): בחירת תת-קבוצה מייצגת של הנתונים.
- אגרגציה: סיכום נתונים ליצירת רשומות חדשות (למשל, קוביות נתונים).
שאלות לדיון
- תאר מצב שבו נתונים חסרים עלולים להוביל למסקנות שגויות, והצע שתי דרכים שונות לטיפול בהם, תוך ציון היתרונות והחסרונות של כל דרך.
- הסבר מדוע אינטגרציה של נתונים ממקורות שונים היא אתגר מורכב, ותן דוגמה לשני סוגי בעיות שעלולות להתעורר בתהליך זה.
- השווה בין נורמליזציה לבין אגרגציה כשיטות לטרנספורמציה של נתונים. מתי נבחר להשתמש בכל אחת מהן?
- הסבר את הרעיון שמאחורי הפחתת ממדים. מדוע היא חשובה, ומהם הסיכונים הפוטנציאליים הכרוכים בה?
נקודות לתשובת מודל
- חשיבות עיבוד מקדים: הכרחי לאיכות תוצאות כריית מידע; טיפול בנתונים חלקיים, רועשים, לא עקביים, גדולים ומורכבים.
- ניקוי נתונים:
- חסרים: מחיקה, מילוי ידני/אוטומטי (ממוצע, חציון, שכיח, מודל). יתרונות/חסרונות לכל שיטה (אובדן מידע, הטיה).
- רעש/חריגים: Binning, רגרסיה, זיהוי חריגים (הסרה/החלקה).
- אינטגרציה: שילוב ממקורות הטרוגניים; אתגרים: סכמות שונות, זיהוי ישויות, כפילויות.
- טרנספורמציה: שינוי צורת הנתונים.
- נורמליזציה: סקאלינג לטווח מוגדר (למשל [0,1]), חשוב לאלגוריתמים רגישים לסקאלה.
- אגרגציה: סיכום נתונים, הפחתת נפח, יצירת תובנות ברמה גבוהה יותר.
- בניית מאפיינים: יצירת מאפיינים חדשים משופרים.
- רדוקציה: הפחתת נפח/ממדים תוך שמירה על מידע.
- הפחתת ממדים: בחירת מאפיינים (הסרת לא רלוונטיים), מיצוי מאפיינים (PCA). יתרונות: מהירות, הפחתת רעש, מניעת "קללת הממדים". סיכונים: אובדן מידע.
- הפחתת כמותיות: דגימה, אגרגציה.
- "זבל נכנס, זבל יוצא": הדגשת הקשר הישיר בין איכות הנתונים המעובדים לאיכות התוצאות הסופיות.