מדריכים על למידת מכונה (Machine Learning)

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

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

7 דברים שאתה חייב לדעת כשאתה עובד עם ספריית Numpy של Python

ספריית Numpy של Python מאפשרת לעבוד עם מערכים רב-מימדיים, ומספקת פונקציות מתמטיות לעבודה עם המערכים.

14 פעולות שאתה צריך להכיר כשאתה עובד עם Pandas של Python

Pandas היא ספרייה של Python המשמשת לניתוח של מידע. במדריך זה ריכזתי עבורכם את המושגים והפקודות השימושיים ביותר.

Python pandas library

10 דברים שאתה חייב לדעת כשאתה מייצר תרשימים באמצעותmatplotlib של python

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

python matplotlib logo

הכנת הנתונים ללמידת מכונה באמצעות SciKit-Learn

SciKit-Learn היא ספרייה פופולרית של Python במדריכים אילה אני משתמש בספרייה רק כדי לעבד את הנתונים הגולמיים לפני למידת מכונה שנעשה בפועל באמצעות TensorFlow

ספריית SciKit-Learn ללמידת מכונה באמצעות python

רגרסיה לינארית באמצעות Keras

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

ספריית keras ללמידת מכונה

הבחנה בין קבוצות באמצעות למידת מכונה

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

הצגת מסד הנתונים באופן השוואתי באמצעות seaborn

Confusion matrix ומדדים להערכת המודל

אחרי שסיימנו לפתח את המודל במדריך הקודם השאלה היא עד כמה הוא טוב. תשובה אחת שראינו משתמשת במדד "דיוק" (accuracy). הבעיה עם המדד accuracy שהוא יודע להעריך באופן כללי עד כמה המודל הוא מדויק אבל הוא לא יודע להגיד לנו אילו שגיאות המודל עשה. כדי לזהות את השגיאות משתמשים ב- Confusion matrix ומדדים להערכת המודל (model evaluation metrics).

שמירת וטעינת מודל Keras

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

זיהוי ספרות שכתב אדם באמצעות בינה מלאכותית

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

זיהוי ספרות כתובות ביד באמצעות בינה מלאכותית

ייצוא מודל בינה מלאכותית לשימוש בדפדפן

מדריך זה מסביר כיצד לייצא מודל של בינה מלאכותית שנכתב באמצעות ספריית Keras לדפדפן באמצעות tensorflowjs. המדריך מלווה מדריכים קודמים בסדרת "למידת המכונה" שבהם פיתחנו אפליקציה שמאפשרת למחשב לזהות ספרות שכתובות בכתב יד.

ייצוא מודל Keras ל-tensorflowjs לצורך שימוש באפליקציה בדפדפן

זיהוי ספרות שכתב אדם על ידי בינה מלאכותית - פיתוח המודל

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

בחירת המודל המשמש ללמידת מכונה

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

היכונו לעידן המכונות החושבות, למידת מכונה בדפדפן באמצעות ספריית TensorFlow.js

גוגל שיחררו את ספריית TensorFlow.js  שמאפשרת לעשות למידת מכונה (Machine Learning, ML)  בדפדפן. זה פותח עולם חדש ומלהיב של אפשרויות למתכנתי אינטרנט מפני שניתן מעכשיו לשלב יישומים של בינה מלאכותית שכתובים ב-JavaScript בתוך דפי האינטרנט שאנחנו כותבים.

דוגמה ללמידת מכונה בדפדפן באמצעות tensorflow.js

חיזוי טמפרטורות באמצעות למידת מכונה

חיזוי של סדרות נתונים מציב אתגר גדול בפני למידת מכונה בגלל שהמחשב צריך לזכור את התוצאות שחושבו בשלבים הקודמים של תהליך הלמידה דבר שאינו אפשרי ברשת נוירונית רגילה (feed forward network). כדי לטפל בבעייה ניתן להשתמש בסוג מיוחד של למידת מכונה, RNN - Recurrent Neural Networks. המדריך מדגים חיזוי טמפרטורות שנתיים בעתיד באמצעות למידת מכונה באמצעות ספריית keras.

חיזוי טמפרטורות באמצעות למידת מכונה

מבוא לעיבוד שפה באמצעות Gensim ו-Word2Vec

Gensim היא חבילה של פייתון לעיבוד שפה (Natural Language processing) באמצעות למידת מכונה. Word2Vec הם אלגוריתמים שמייצרים וקטורים ממילים כדי שהמחשב יוכל לבצע את הפעולות החשבוניות החיוניות ללמידת מכונה.

word2vec מוצא קשר בין מילים לדוגמה מלך פחות גבר ועוד אישה שווה למלכה

תקציר מאמר וויקיפדיה באמצעות פייתון

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

ניתוח סנטימנט של טקסט בעברית

ניסיון לפתור את אחת מבעיות היסוד של הדמוקרטיה והקפיטליזם שהיא מה רוצה ההמון באמצעות מחשב וספריות של פייתון שעושות אנליזת סנטימנט sentiment analysis

ניתוח סנטימנט של טקסט בעברית

 

הוסף תגובה חדשה

 

= 8 + 7