משימה 3: מרכז ההודעות
איך ניתוח טקסטים עוזר למיין במהירות הודעות קצרות לשלושה תחומים: רפואה, ציוד ולוגיסטיקה.
1. פתיחת המשימה
אתם מוצבים כקפרלים מומחי נתונים במרכז ההודעות המבצעי.
בכל יום נכנסות למערכת הודעות קצרות מיחידות שונות. חלק מההודעות קשורות לעזרה רפואית, חלק לתקלות בציוד, וחלק ללוגיסטיקה: מים, אוכל, מחסן, משלוחים ונהגים.
הבעיה: אם קוראים הכול ידנית, הודעות חשובות עלולות להתעכב. מצד שני, מודל אוטומטי עלול לטעות. לכן המשימה שלכם היא לבנות מערכת מיון ראשונית, לבדוק אותה בזהירות, ולהסביר לגנרל ו׳ מה היא יודעת לעשות ומה אסור לתת לה לעשות לבד.
2. פקודת המשימה מגנרל ו׳
רב״ט,
מרכז ההודעות חייב לעבוד מהר יותר. אני רוצה לבדוק האם אפשר לבנות מודל פשוט שמקבל טקסט קצר ומציע לאיזה תחום להעביר אותו:
medicalequipmentlogistics
המודל אינו מחליף אדם. הוא כלי סינון ראשוני. ההחלטה הסופית נשארת אצל בעל תפקיד אנושי.
בסיום המשימה תכינו דוח קצר: איכות המודל, סוגי טעויות, והמלצות לפני שימוש אמיתי.
3. נתוני המשימה
קובץ הנתונים: mission_3_messages_text_classification_he.csv
| עמודה | תיאור | שימוש |
|---|---|---|
message_id | מספר הודעה | עמודה טכנית |
message_text | טקסט ההודעה באנגלית | המאפיין הטקסטואלי המרכזי |
message_category | הקטגוריה הנכונה | משתנה מטרה |
source_unit | יחידת מקור מדומה | הקשר, לא המאפיין המרכזי |
reported_priority | עדיפות שדווחה על ידי השולח | רקע לדיון |
הטקסטים באנגלית בכוונה, כדי לתרגל ניקוי טקסט באנגלית ושימוש ב-English stop words.
4. דוגמאות להודעות
בפועל הודעות יכולות להיות קצרות, רועשות ולא מסודרות.
5. זרימת העבודה ב-Orange
אפשר להוסיף גם Corpus Viewer, Word Cloud ו-Predictions.
6. Text Preprocessing
במודול Preprocess Text הפעילו את השלבים הבאים:
- lowercase — להפוך את כל האותיות באנגלית לאותיות קטנות.
- remove URLs — להסיר קישורים.
- remove punctuation — להסיר סימני פיסוק.
- keep letters and numbers — להשאיר אותיות וספרות.
- remove English stop words — להסיר מילים נפוצות כמו the, is, at, for, and, to.
- Bag of Words — להפוך את הטקסט לטבלת מילים-מאפיינים.
תשובה 1. למה צריך לנקות טקסט לפני שמפעילים מודל?
7. מבט ראשון על הנתונים
פתחו את הנתונים בעזרת Corpus Viewer או Data Table. קראו 10–15 הודעות.
תשובה 2. תנו דוגמה אחת לכל קטגוריה.
תשובה 3. אילו מילים נראות לכם שימושיות להבחנה בין הקטגוריות?
8. בדיקה חשובה: לא להאמין למילה אחת
יש מילים שמופיעות בכמה קטגוריות. לכן המודל צריך להסתכל על קבוצת מילים, ולא על מילה אחת בלבד.
תשובה 4. מצאו מילה שמופיעה בכמה קטגוריות ואינה מספיקה לבדה כדי להחליט.
9. Bag of Words
חברו את Bag of Words אחרי Preprocess Text. עכשיו כל הודעה הופכת לשורה בטבלה, והמילים הופכות למאפיינים.
תשובה 5. מה המשמעות של “שק מילים”? מה אנחנו מאבדים בגישה הזאת?
10. Logistic Regression
חברו Logistic Regression. המודל צריך לנבא את message_category.
לאחר מכן חברו Test & Score. השתמשו ב-cross validation.
תשובה 6. רשמו את איכות המודל: Accuracy / CA ו-AUC, אם AUC מוצג.
תשובה 7. האם איכות כזאת מספיקה למיון אוטומטי בלי אדם? נמקו.
11. Confusion Matrix
פתחו את Confusion Matrix. בדקו אילו קטגוריות המודל מבלבל.
תשובה 8. איזו קטגוריה מזוהה הכי טוב?
תשובה 9. אילו שתי קטגוריות מתבלבלות הכי הרבה? למה זה יכול לקרות?
תשובה 10. מה מסוכן יותר: לשלוח הודעה רפואית ללוגיסטיקה, או הודעת לוגיסטיקה לרפואה? הסבירו.
12. Predictions: בדיקת הודעות חדשות
בדקו כמה הודעות חדשות. אפשר גם להמציא הודעות משלכם.
| הודעה חדשה | קטגוריה שהמודל חזה |
|---|---|
| urgent transport needed to clinic after training accident | |
| generator delivery delayed because driver is missing | |
| water boxes and food packs are missing from storage |
13. דוח סופי לגנרל ו׳
כתבו דוח קצר. המטרה היא לא לתאר את כל הכפתורים ב-Orange, אלא לתת מסקנה ניהולית.
1. עד כמה המודל שימושי?
2. אילו קטגוריות חייבות בדיקה אנושית במיוחד?
3. שלוש המלצות לפני שימוש אמיתי:
14. מה חזרנו עליו במשימה הזאת?
- טקסט כנתונים;
- ניקוי טקסט;
- stop words;
- Bag of Words;
- Logistic Regression;
- הערכת מודל;
- Confusion Matrix;
- מחיר טעות ואחריות אנושית.
🎁 סיום המשימה
סיימתם את המשימה? מעולה. חזרו לעמוד הראשי, סמנו את המשימה כהושלמה, וקבלו את תג האנליסטים.