לחשוב · לתכנת · ללמוד
למידת מכונה ולמידת חיזוק
באמצעות בניית משחקים
לתלמידי כיתות י״א–י״ב במגמת הנדסת תוכנה, במסלול למידת מכונה ולמידת חיזוק
הספר מלווה את תוכנית הלימודים במגמת הנדסת תוכנה במסלול למידת מכונה ולמידת חיזוק, המיועד לתלמידי כיתות י״א–י״ב.
אתר הקורס וחומרי ליווי
הקורס זמין גם באתר „תכנות באינטרנט” של גלעד מרקמן, וכולל סרטונים, מצגות ודוגמאות קוד. הקישורים הבאים מובילים למדורי הקורס ולחומרי הליווי המתאימים לכל חלק בספר.
א · פייתוןיסודות התכנות וסביבת העבודה
ב · pygameחומרי הקורס המקוריים: Pygame ומשחקים
ג · למידת מכונהנתונים, אימון ורשתות נוירונים עם PyTorch
ד · למידת חיזוקMDP, מדיניות ולמידה מתוך תגמולים
מחברות ודוגמאות קוד
באתר הקורס יש מחברות Colab נוספות ודוגמאות קוד. קישורים ספציפיים מופיעים בדפי השיעורים, בפרקים המתאימים בספר ובמחברות הליווי.
מאגרי הקוד של גלעד מרקמן ב־GitHub · מחברות פייתון של האוניברסיטה הפתוחה
בחלק א עובדים ב־Colab. ההתקנה המקומית של פייתון ו־VS Code תשמש בהמשך, בחלק ב. מחברות וחומרי ליווי נוספים מקושרים בראש הפרקים המתאימים.
תוכן העניינים
חלק א — פייתון
- א.1 — מהי פייתון?
- א.2 — סביבת העבודה: Google Colab
- א.3 — פקודות בסיסיות
- א.4 — מחרוזות — עבודה עם טקסט
- א.5 — תנאים ובקרת זרימה
- א.6 — לולאות
- א.7 — פונקציות
- א.8 — רשימות — List
- א.9 — tuple
- א.10 — שוויון, זהות והעתקה
- א.11 — מילונים — dict
- א.12 — קבוצות — set
- א.13 — פונקציות מתקדמות
- א.14 — חריגות — טיפול בשגיאות בזמן ריצה
- א.15 — רקורסיה
- א.16 — חיפוש, מיון ויעילות
- א.17 — טבלאות גיבוב
- א.18 — מחלקות
- א.19 — ירושה והכלה
- א.20 — קבצים — קריאה וכתיבה
- א.21 — NumPy — מערכים וחישובים
- א.22 — PyPlot — גרפים ותרשימים
- א.23 — תמונות כמערכים
- א.24 — Pandas — טבלאות וניתוח נתונים
חלק ב — pygame
- ב.1 — מעבר מ־Colab לעבודה מקומית
- ב.2 — מבנה הלולאה הראשית
- ב.3 — אירועים וסגירת החלון
- ב.4 — משטחים, שכבות וצבעים
- ב.5 — ציור צורות גאומטריות
- ב.6 — טעינה והצגה של תמונות
- ב.7 — אינטראקציה עם המשתמש: עכבר ומקלדת
- ב.8 — שעון, קצב פריימים ורענון המסך
- ב.9 — אנימציה פשוטה
- ב.10 — מלבני מיקום: pygame.Rect
- ב.11 — ספרייטים: pygame.sprite.Sprite
- ב.12 — גילוי התנגשויות
- ב.13 — קבוצות ספרייטים והתנגשויות בין קבוצות
חלק ג — למידת מכונה
כל פרק מוסיף צעד אחד: מן הנתונים והנגזרות, דרך אימון ונרמול, ועד רשתות וסיווג תמונות.
חלק ד — למידת חיזוק
- ד.1 — מבוא ללמידת חיזוק
- ד.2 — התקנת PyTorch במחשב האישי
- ד.3 — מודל סביבה–סוכן ו־MDP
- ד.4 — תכנון דינמי: Policy Iteration
- ד.5 — תכנון דינמי: Value Iteration
- ד.6 — מונטה קרלו — למידה מהתנסות
- ד.7 — מונטה קרלו באיקס עיגול — טבלת Q וקוד האימון
- ד.8 — Temporal Difference
- ד.9 — TD באיקס עיגול ו־AfterState
- ד.10 — למידת חיזוק עמוקה
- ד.11 — בנייה ואימון של DQN באיקס עיגול
- ד.12 — DDQN — ההבדל מ־DQN