אנא אפשר JavaScript כדי להשתמש בתכונות הנגישות תכונות נגישות של אתרים על ידי UserWay
top of page
Nissim Elaluf

– Bi – אוקי ומה הלאה ?

עודכן: 24 בפבר׳




חלק שני ומסכם

במאמר האחרון הבנו את הבסיס של עולם הBI,

למדנו על הפוטנציאל הגלום בכל חברה בעולם שרק אוספים DATA ולא ידעו “מה עושים עם כל הטוב הזה”    

   אז מה למדנו ?

בשלב הראשון, על ידי שימוש בכלי BI ראינו שניתן לקבל תמונת מצב עדכנית ואמינה של העסק, תמונת מצב שמשקפת את כל הנתונים של כל השנים הקודמות, כבר יצרנו ערך של מודעות לעסק, ערך חשוב מאוד שעוזר בקבלת מידע זמין ורלוונטי לצורך קבלת החלטות בזמן אמת, כמו גם בכדי ליישם שינויים ושיפור ביצועים ותהליכים במחלקות השונות.

בשלב השני, בשלב ה Data mining החברות כבר מתחילות לשלב, גם ללמוד על העבר וגם להסיק על העתיד, למשל למצוא תשובות לשאלות כמו כמה לקוחות ירכשו מוצר מסוים אם ישנו לו את הצבע? אילו מוצרים בעוד שנתיים שלוש כבר לא יהיו רווחיים וכדאי כבר לשנות אסטרטגיה? מהו היחס של לקוחות חדשים מול לקוחות שנוטשים את האתר האם הוא צפוי להשתנות ולמה?

השלב הבא בתהליך עליו אפרט היום הוא למידת מכונה (Machine Learning) או בקיצור ML זהו תחום המקביל לכריית מידע עליו למדנו במאמר האחרון ויחד חולקים כלים ואלגוריתמים משותפים,

אם לא חייתם בשנים האחרונות במערה בטוח שמעתם על יכולות הבינה המלאכותית שמקנים למחשבים את היכולת להביס מומחים אנושיים בשחמט, במשחקי מחשב ואפילו בזיהוי מחלות.

אז איך זה קורה כל הקסם הזה?

הרעיון שעומד מאחורי למידת מכונה הוא לקחת קלט -שמורכב ממקרים שכבר קרו בעבר ובהם אנו יודעים מה הייתה התוצאה ולנסות ללמוד מהם, דוגמא מעולה ומאוד נפוצה שכולנו נחשפים אליה ביום יום היא סיווג מיילים, נרצה לדעת איזה מייל הוא מייל זבל ואיזה מייל הוא מייל מנמען אמיתי שבאמת יש צורך לקרוא אותו. הלמידה יכולה להתבצע לדוגמא ע״י אדם שיושב על מצבור מיילים ומסווג כל מייל לזבל ולא זבל. את הקלט הנ״ל נזין למכונה, שתנסה להבין מדוע מייל זה סווג כפי שסווג ומכאן שכל מייל חדש יעבור סיווג דומה ויוחלט האם המייל זבל או לא.

ומה המטרה אתם שואלים?

 המטרה המרכזית של למידת המכונה היא טיפול ממוחשב בנתונים מן העולם האמיתי עבור בעיה מסוימת, כאשר לא ניתן לכתוב תוכנה שתפתור זאת בדרך הרגילה – קרי: בעזרת משפטי if ולולאות for למשל, בעיית זיהוי שמומחה אנושי מסוגל לפתור, אך לא מסוגל לכתוב את הכללים לזיהוי בצורה מפורשת, או שהם משתנים עם הזמן ולא ניתנים לכתיבה מראש.

טכניקות של ML מסוגלות לפתור בעיות שלא היה ניתן לפתור בצורה אחרת: מזיהוי כתב יד, המלצות תוכן ופרסום לגולשים (“אנשים שקנו X גם קנו Y”), זיהוי פריצות אבטחה, ואפילו נהיגה של רכב אוטונומי.





את עולם ה-ML מחלקים בגסות ל-2 משפחות:

Supervised Learning – למידה מפוקחת

מצב בו יש לנו מאגר של נתונים ותוצאות (target value), שהושגו בצורה כזו או אחרת (מדידה, עבודה של מומחים, ראיונות,  תצפיות וכו’) – ואנו רוצים שהמחשב ינסה לחקות את התשובות.

דוגמה קלילה: אני רוצה לדעת את הערך של הרכב שלי. גם אם יש לי נתונים של אלפי רכבים מחירונים ועסקאות אמתיות שנסגרו (אתר יד 2?!) – זו תהיה משימה כמעט בלתי אפשרית לכתוב קוד בעזרת if ו-for שיבצע שיערוך של מחיר הרכב, ובצורה אמינה. למה ? כי יש כמות כמעט אינסופית של משתנים שעשויים להשפיע על המחיר,

אז מה נעשה? נשתמש ב-Domain Knowledge (בקיצור DK) על מנת למצוא, או לפחות לנחש את ה-features (תכונות) שמסבירות את מחיר הרכב. דגם ושנת ייצור הם features חזקים מאוד, מספר מקומות ונפח מנוע הם features בינוניים וצבע הרכב או מי היה הבעלים (רופא או נהג מונית) – הם features זניחים או אפילו עשויים לעוות את התוצאה.

לאחר מכן נבחר אלגוריתם למידה (מתוך מבחר אלגוריתמים שיש בתחום) ונפעיל אותו על כ80% מהנתונים שלנו. הוא ירכיב מודל חיזוי, ע”פ כל מיני שיטות מתמטיות / סטטיסטיות – שניתן לבסוף להריץ על כל רכב שנרצה: נשלח לו פרטים של רכב – ונקבל תשובה של הערכת מחיר.

בשאר הנתונים הנותרים שלא השתמשנו בהם ללמידה – נשתמש בהמשך לשם ביקורת: ונבדוק עד כמה אמין המודל שבנינו. יש עוד כלים רבים לשיפור מודל החיזוי – מדובר בד”כ בתהליך חזרתי ומשמעותי של שיפורים.

Unsupervised Learning – למידה לא מפוקחת

פה אין מורה או מפקח שמדריך ומאמן את המכונה, המכונה מקבלת מקבץ של מקרים ואנו מצפים מהמכונה ללמוד לבד מה הקשר בין המקרים, ולזהות דפוסי התנהגות.

אוקי אז אחרי כל זה מה כבר יש לשפר ?

יש לנו אפשרות לפתור בעיות על ידי קוד, וגם על ידי אימון מכונה ושיפור מתמיד של התוצאות,

מה צריך יותר ?

מה כבר יש בשלב המתקדם של AI (בינה מלאכותית – Artificial Intelligence) שחסר לנו?

אז לא תופתעו אם אגיד לכם שAI כבר משחק במגרש אחר לגמרי…(אני אפילו לא יודע אם יש ביטוי כזה)

המטרה כעת היא לדמות את אופן המחשבה האנושי ולהציג יכולות זהות ואף טובות יותר.

כלומר היכולת ללמוד כמעט כל דבר, היכולת להשתמש בשפה, היכולת לנמק מחשבות, היכולת להגיע לרעיונות מקוריים וכו..

הצורך עולה כי בעצם ישנן שלוש מגמות בשנים האחרונות.

1.    גידול מטורף בהיקף הDATA,

2.    שיפור מתמיד ביכולות העיבוד שלו

3.    המצאת עוד ועוד מקורות של DATA כבר לא רק טרנזקציות מתוך מערכות הERP של החברה, מה עם קול, טקסט, תמונות, סרטונים ? מה עם תנודות העין שלנו מול המסך ומדידת זמן של המבט שלנו שמופנה לכל נקודה ונקודה?!

בואו ניקח לדוגמא בעיית זיהוי תמונה – אדם או חיה,

אם היינו רוצים לפתור את זה באמצעות ML supervise (אני מזכיר – למידה מפוקחת שמשתפרת על ידי אימון של המכונה) אז היינו צריכים להגדיר משתנים כמו: האם יש לעצם זנב או לא, האם יש לעצם בתמונה כנפיים ואם כן באיזה צבע הן? היינו צריכים להגדיר את כל המשתנים ולהגדיר להם תכונות, ואז באמצעות ML לזהות הקשרים שיתמכו בתובנה שיש לפנינו חיה או אדם. וזה כבר יותר מורכב יש מאות אם לא אלפי תכונות שמבדילות אדם וחיה בתמונה.

אז מה עושים? במקרה של ‘AI מבוסס רשתות נוירונים’ מלמדים את המערכת בדיוק כמו שהמוח לומד: שכבה אחרי שכבה

מתחילים בשכבה שבוחנת את הפיקסלים של התמונה. המערכת לומדת לזהות הבדלים בין קווים ובין צבעים. לאחר מכן היא עוברת למושגים מופשטים יותר – זיהוי של רגל, עיניים או זנב

זהו מודל הבנוי על סדרה של פעולות שלבסוף מזהה את המכלול. ככל שמעמיקים עוד בשכבות, יכולת הזיהוי של אובייקטים שונים גבוהה יותר.

================================================================ 

אז לסיכום בשני המאמרים האחרונים סקרנו את ה BuzzzWords העיקריים

אך משום שאני בא מעולם הBI להבא אכתוב בתוך הScope שלי

יהיו מאמרים בנושא כלי BI , מושגים בסיסיים , פתרון בעיות נפוצות, Dax/Mdax

SSAS/SSIS ותהליכי ETL, דשבורדים ויזואליזציות והכנת דוחות ועוד מענה על שאלות נפוצות בתחום

אם יש נושא ספציפי או שאלה ספציפית מוזמנים לכתוב לי בפרטי או בתגובות.

מקווה שקיבלתם ערך 🙂

Comments


bottom of page