חילוץ ודירוג פיצ'רים לביצוע אחזקה חזויה – ללא צורך בכתיבת קוד!

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

באמצעות אותם ייצוגים קומפקטיים של הדאטה, נוכל להפריד הרבה יותר בקלות בין מצבים שונים שמאפיינים את התנהגות המכונה (בריאה או פגומה), ונוכל לנבא באמצעותם הרבה יותר בפשוט התנהגויות עתידיות של המכונה, בהתאם.
כאן המומחיות של צוות המהנדסים היא קריטית – התובנות לגבי אופי התנהגות המכונות, ויכולת הזיהוי של הפיצ'רים הטובים ביותר לתיאור המערכת, היא בידיים שלהם. כך ששלב חילוץ הפיצ'רים הינו שלב חשוב ביותר ומהווה למפתח לבניית אלגוריתם אחזקה חזויה מוצלח.
אבל כאמור זו לא משימה פשוטה, וב-MathWorks עומלים רבות על הנגשת תחום ה-AI לקהל מפתחים רחב ככל הניתן, גם עבור מפתחים שחדשים לחלוטין בתחום. בין היתר, על ידי הנגשת AI על ידי פיתוח אינטארטיבי ללא צורך בכתיבת קוד / כתיבת קוד מינימלית. תוכלו לקרוא עוד על כך בבלוג שכתבנו בנושא כאן.
עבור חילוץ פיצ'רים, קיימת אפליקציה ייעודית לתחום האחזקה החזויה בשם Diagnostic Feature Designer, שבעיניי היא ממש מגניבה כי היא ממש מקלה על תהליך חילוץ ובחינה של פיצ'רים שונים, בין אם בתחום הזמן או התדר.
אפשר לבחור פיצ'רים ייחודיים לחלקי מכונות כמו מיסבים או מערכות של גלגלי שיניים למשל.
ומעבר לזה, האפליקציה מאפשרת לא רק לחלץ את הפיצ'רים אלא גם לבצע דירוג שלהם – כלומר להבין אילו פיצ'רים תרמו הכי הרבה לביצוע הניבויים, ואילו תרמו הכי פחות (ואולי מכאן נוכל לחשוב להסיר אותם מסט הפיצ'רים שלנו, כי הם מעלים את רמת הסיבוכיות של המודל שלנו ומרחיקים אותנו מביצוע ניבויים נכונים).
וכל זה…. רק בלחיצות כפתור, לא כותבים כלל.
תוכלו ללמוד עוד על היכולות של האפליקציה בסרטון הבא:
ייצוא הממצאים שקיבלנו באפליקציה גם הוא איננו דורש מאיתנו צורך בכתיבת קוד – קיימת האפשרות לייצא את הפיצ'רים שהצלחנו לחלץ מהדאטה ישירות לאפליקציות שימושיות אחרות לאימון מודל מתאים.
כך למשל, נוכל לייצא את הפיצ'רים שחולצו לאפליקציית Classification Learner, בה נוכל לבנות מודל סיווג לניבוי שאלות כמו למשל האם קיימת תקלה בחלק כלשהו במכונה? איזה חלק של המכונה פגום? וכן הלאה.
חשוב גם להבין שתהליך מציאת המודל המתאים ביותר הינו תהליך איטרטיבי בו עלינו לבדוק סוגי מודלים שונים וכן לבדוק קומבינציות שונות של היפרפרמטרים של המודל על מנת לאפטם את ביצועיו ולהצליח להפיק מודל שמספק אותנו בצורה טובה מבחינת אחוזי הדיוק שלו.
אפליקציית Classification Learner מאוד מקלה על תהליך הבחינה של מודלים שונים בגישה זו של ניסוי וטעיה, ועוזרת לנו להשיג את המודל המתאים ביותר לתיאור הקלט והפלט הרצוי בדאטה שלנו.
תוכלו לשמוע בסרטון הקצר הבא עוד על האפליקציה:
בהתאם למודל שקיבלנו, נוכל להתחיל לבצע ניבויים ולחזות את ההתנהגות העתידית של המכונה שלנו, ולדאוג לאחזקה הרצויה עבור הרכיב הספציפי שעומד להכשל בזמן המדויק והמתאים ביותר לביצוע פעולת התחזוקה הבאה.
למידע נוסף: