Menu
CoddyTech

ספרות בכתב יד

חלק מהיחידה למידה מונחית במסלול ה-Machine Learning של Coddy. שיעור 57 מתוך 58.

מכונת המיון של הדואר קוראת את ספרות המיקוד בכתב יד מתוך הסריקות בגודל 8 על 8 שפגשת בשיעור Digits at a Glance, load_digits:

עשרים ספרות בכתב יד בשתי שורות, 0 עד 9 מאת שני כותבים שונים, מצוירות כסריקות אפורות קטנות ומפוקסלות; כמה מהן דומות מאוד לספרות אחרות

שני מועמדים רוצים את המשרה: k-NN, עם ערך k שהמהנדס מציע, ויער אקראי של 100 עצים.

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

challenge icon

אתגר

קשה

התוכנית קוראת את k של המהנדס; קוד הפתיחה מכין תרשים עם כותרת.

  1. הפרד רבעון בדיקה מרובד, random_state=0.
  2. בצע אימות צולב ל-k-NN עם k הזה וליער של 100 עצים (random_state=0), עם 5 קיפולים, על שורות האימון. הדפס את הממוצע של כל אחד מהם (3 ספרות אחרי הנקודה העשרונית) ואת המנצח.
  3. אמן את המנצח והדפס את הדיוק שלו בבדיקה.
  4. הדפס את הטעות הגדולה ביותר במטריצת הבלבול של הבדיקה, ואז צייר את המטריצה על ax והצג אותה.

עבור מכונה אחרת ו-3:

k-NN: CV accuracy 0.979
Random forest: CV accuracy 0.968
Winner: k-NN
Test accuracy: 0.976
Most confused: 7 read as 2 (3 times)

לאחר מכן Coddy מציג את המטריצה שלך.

נסו בעצמכם

import matplotlib.pyplot as plt
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split, cross_val_score
from sklearn.neighbors import KNeighborsClassifier
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import confusion_matrix, ConfusionMatrixDisplay

digits = load_digits()
X = digits.data
y = digits.target
k = int(input())

fig, ax = plt.subplots()
ax.set_title("Test Digits")

# כתבו את הקוד שלכם למטה
quiz iconבחנו את עצמכם

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

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

תרגלו בעצמכם: קומפיילר Python אונליין