ייצור מערכות למידת מכונה: שאלות שכדאי לשאול
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
השיעור הזה מתמקד בשאלות שצריך לשאול לגבי הנתונים והמודל במערכות הייצור.
האם כל התכונות מועילות?
מומלץ לעקוב באופן שוטף אחרי המודל כדי להסיר תכונות שתורמות מעט או בכלל לא ליכולת החיזוי של המודל. אם נתוני הקלט של המאפיין הזה ישתנו באופן פתאומי, יכול להיות שההתנהגות של המודל תשתנה באופן פתאומי בדרכים לא רצויות.
כדאי לעיין גם בשאלה הקשורה הבאה:
- האם התועלת של התכונה מצדיקה את העלות של הוספת התכונה?
תמיד יש נטייה להוסיף עוד תכונות למודל. לדוגמה, נניח שמצאתם תכונה חדשה שהוספה שלה משפרת מעט את התחזיות של המודל. תחזיות טובות יותר במעט הן בהחלט טובות יותר מתחזיות גרועות במעט, אבל התכונה הנוספת מוסיפה לעומס התחזוקה.
האם מקור הנתונים מהימן?
כמה שאלות שאפשר לשאול לגבי מהימנות נתוני הקלט:
- האם האות תמיד יהיה זמין או שהוא מגיע ממקור לא מהימן? לדוגמה:
- האם האות מגיע משרת שמתרסק בעומס כבד?
- האם האות מגיע מאנשים שיוצאים לחופשה בכל אוגוסט?
- האם המערכת שמחשבת את נתוני הקלט של המודל משתנה לפעמים? אם כן:
- באיזו תדירות?
- איך תדעו מתי המערכת הזו תשתנה?
מומלץ ליצור עותק משלכם של הנתונים שאתם מקבלים מתהליך ה-upstream. לאחר מכן, אפשר לעבור לגרסה הבאה של נתוני המקור רק אם אתם בטוחים שזה בטוח.
האם המודל שלכם הוא חלק מלולאת משוב?
לפעמים מודל יכול להשפיע על נתוני האימון שלו. לדוגמה, התוצאות ממודלים מסוימים הופכות (באופן ישיר או עקיף) למאפייני קלט של אותו מודל.
לפעמים מודל יכול להשפיע על מודל אחר. לדוגמה, נניח שני מודלים לחיזוי מחירי מניות:
- מודל א', שהוא מודל חיזוי גרוע.
- דגם ב'.
מכיוון שמודל א' מכיל באגים, הוא מחליט בטעות לקנות מניות של חברת X.
הרכישות האלה גורמות לעלייה במחיר של מניה X. מודל ב' משתמש במחיר של מניית X כמאפיין קלט, ולכן מודל ב' יכול להגיע למסקנות שגויות לגבי הערך של מניית X. לכן, מודל ב' יכול לקנות או למכור מניות של נייר הערך X על סמך ההתנהגות הפגומה של מודל א'.
ההתנהגות של מודל ב', לעומת זאת, יכולה להשפיע על מודל א', ולגרום למצב של קדחת טוליפים או לירידה במחיר המניה של חברת X.
תרגול: בדיקת ההבנה
אילו שלושה מהמודלים הבאים חשופים ללולאת משוב?
מודל לחיזוי תנועה שמתבסס על גודל ההמונים בחוף כדי לחזות עומסי תנועה במוצאי הכבישים המהירים ליד החוף.
סביר להניח שחלק מהמבקרים בחוף יבססו את התוכניות שלהם על התחזית לתנועה. אם יש המון אנשים בחוף וצפוי עומס תנועה, יכול להיות שאנשים רבים יעשו תוכניות חלופיות. כתוצאה מכך, מספר המבקרים בחוף עשוי לרדת, וכתוצאה מכך התחזית של עומס התנועה תהיה נמוכה יותר, וכתוצאה מכך מספר המבקרים עשוי לעלות, והמחזור הזה יחזור על עצמו.
מודל להמלצות על ספרים שמציע רומנים שהמשתמשים עשויים לאהוב, על סמך הפופולריות שלהם (כלומר, מספר הפעמים שבהן הספרים נרכשו).
סביר להניח שהמלצות על ספרים יעודדו רכישות, והמכירות הנוספות האלה יועברו חזרה למודל כקלט, וכך יגברו הסיכויים להציע את אותם הספרים בעתיד.
מודל לדירוג אוניברסיטאות שמדרג את בתי הספר בין היתר לפי מידת הקבלה שלהם – אחוז התלמידים שהגישו בקשה ונכנסו.
הדירוגים של המודל עשויים לעורר עניין נוסף בבתי ספר עם הדירוגים הגבוהים ביותר, וכך להגדיל את מספר הבקשות שהם מקבלים. אם בתי הספר האלה ימשיכו לקבל את אותו מספר תלמידים, רמת הקבלה תהיה גבוהה יותר (אחוז הסטודנטים שיקבלו תשובה חיובית יקטן). כך יתחזקו הדירוגים של בתי הספר האלה, וכתוצאה מכך יגדל עוד יותר העניין של תלמידים פוטנציאליים, וכן הלאה…
מודל של תוצאות בחירות שמתבסס על סקר של 2% מהמצביעים אחרי סגירת הקלפיות, כדי לחזות את המנצח בבחירות לראשות העיר.
אם התחזית של המודל לא תפורסם עד לסגירת הקלפיות, לא תהיה לה השפעה על התנהגות הבוחרים.
מודל של ערך דיור שמתבסס על גודל (שטח במטרים רבועים), מספר חדרי שינה ומיקום גיאוגרפי כתכונות, ומאפשר לחזות את מחירי הבתים.
אי אפשר לשנות במהירות את המיקום, הגודל או מספר החדרים של בית בתגובה לחיזויים של מחירים, ולכן סביר להניח שלא תהיה לכך השפעה על מחירי הבתים. עם זאת, יכול להיות שיש קורלציה בין הגודל למספר חדרי השינה (סביר להניח שבבתים גדולים יש יותר חדרים), וייתכן שיהיה צורך להפריד ביניהם.
מודל של מאפייני פנים שמזהה אם אדם מחייך בתמונה. המודל הזה עובר אימון באופן קבוע על בסיס מסד נתונים של תמונות סטוק שמתעדכן באופן אוטומטי מדי חודש.
אין כאן לולאת משוב, כי התחזיות של המודל לא משפיעות על מסד הנתונים של התמונות. עם זאת, יש כאן חשש לגבי ניהול גרסאות של נתוני הקלט, כי לעדכונים החודשיים האלה יכולות להיות השפעות בלתי צפויות על המודל.
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-27 (שעון UTC).
[null,null,["עדכון אחרון: 2025-07-27 (שעון UTC)."],[[["\u003cp\u003eContinuously monitor models in production to evaluate feature importance and potentially remove unnecessary ones, ensuring prediction quality and resource efficiency.\u003c/p\u003e\n"],["\u003cp\u003eData reliability is crucial; consider data source stability, potential changes in upstream data processes, and create local data copies to control versioning and mitigate risks.\u003c/p\u003e\n"],["\u003cp\u003eBe aware of feedback loops where a model's predictions influence future input data, potentially leading to unexpected behavior or biased outcomes, especially in interconnected systems.\u003c/p\u003e\n"],["\u003cp\u003eRegularly assess your model by asking if features are truly helpful and if their value outweighs the costs of inclusion, aiming for a balance between prediction accuracy and maintainability.\u003c/p\u003e\n"],["\u003cp\u003eEvaluate if your model is susceptible to a feedback loop and take steps to isolate it if you find it is.\u003c/p\u003e\n"]]],[],null,["# Production ML systems: Questions to ask\n\nThis lesson focuses on the questions you should ask about your data\nand model in production systems.\n\nIs each feature helpful?\n------------------------\n\nYou should continuously monitor your model to remove features that contribute\nlittle or nothing to the model's predictive ability. If the input data for\nthat feature abruptly changes, your model's behavior might also abruptly\nchange in undesirable ways.\n\nAlso consider the following related question:\n\n- Does the usefulness of the feature justify the cost of including it?\n\nIt is always tempting to add more features to the model. For example,\nsuppose you find a new feature whose addition makes your model's predictions\nslightly better. Slightly better predictions certainly seem better than\nslightly worse predictions; however, the extra feature adds to your\nmaintenance burden.\n\nIs your data source reliable?\n-----------------------------\n\nSome questions to ask about the reliability of your input data:\n\n- Is the signal always going to be available or is it coming from an unreliable source? For example:\n - Is the signal coming from a server that crashes under heavy load?\n - Is the signal coming from humans that go on vacation every August?\n- Does the system that computes your model's input data ever change? If so:\n - How often?\n - How will you know when that system changes?\n\nConsider creating your own copy of the data you receive from the\nupstream process. Then, only advance to the next version of the upstream\ndata when you are certain that it is safe to do so.\n\nIs your model part of a feedback loop?\n--------------------------------------\n\nSometimes a model can affect its own training data. For example, the\nresults from some models, in turn, become (directly or indirectly) input\nfeatures to that same model.\n\nSometimes a model can affect another model. For example, consider two\nmodels for predicting stock prices:\n\n- Model A, which is a bad predictive model.\n- Model B.\n\nSince Model A is buggy, it mistakenly decides to buy stock in Stock X.\nThose purchases drive up the price of Stock X. Model B uses the price\nof Stock X as an input feature, so Model B can come to some false\nconclusions about the value of Stock X. Model B could, therefore,\nbuy or sell shares of Stock X based on the buggy behavior of Model A.\nModel B's behavior, in turn, can affect Model A, possibly triggering a\n[tulip mania](https://wikipedia.org/wiki/Tulip_mania) or a slide in\nCompany X's stock.\n\n### Exercise: Check your understanding\n\nWhich **three** of the following models are susceptible to a feedback loop? \nA traffic-forecasting model that predicts congestion at highway exits near the beach, using beach crowd size as one of its features. \nSome beachgoers are likely to base their plans on the traffic forecast. If there is a large beach crowd and traffic is forecast to be heavy, many people may make alternative plans. This may depress beach turnout, resulting in a lighter traffic forecast, which then may increase attendance, and the cycle repeats. \nA book-recommendation model that suggests novels its users may like based on their popularity (i.e., the number of times the books have been purchased). \nBook recommendations are likely to drive purchases, and these additional sales will be fed back into the model as input, making it more likely to recommend these same books in the future. \nA university-ranking model that rates schools in part by their selectivity---the percentage of students who applied that were admitted. \nThe model's rankings may drive additional interest to top-rated schools, increasing the number of applications they receive. If these schools continue to admit the same number of students, selectivity will increase (the percentage of students admitted will go down). This will boost these schools' rankings, which will further increase prospective student interest, and so on... \nAn election-results model that forecasts the winner of a mayoral race by surveying 2% of voters after the polls have closed. \nIf the model does not publish its forecast until after the polls have closed, it is not possible for its predictions to affect voter behavior. \nA housing-value model that predicts house prices, using size (area in square meters), number of bedrooms, and geographic location as features. \nIt is not possible to quickly change a house's location, size, or number of bedrooms in response to price forecasts, making a feedback loop unlikely. However, there is potentially a correlation between size and number of bedrooms (larger homes are likely to have more rooms) that may need to be teased apart. \nA face-attributes model that detects whether a person is smiling in a photo, which is regularly trained on a database of stock photography that is automatically updated monthly. \nThere is no feedback loop here, as model predictions don't have any impact on the photo database. However, versioning of the input data is a concern here, as these monthly updates could potentially have unforeseen effects on the model. \n[Help Center](https://support.google.com/machinelearningeducation)"]]