Menu
CoddyTech

התבוננות בספרות

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

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

עשר תמונות מטושטשות של ספרות אפורות בשתי שורות, המרכזים של עשר קבוצות שהאלגוריתם k-means מצא בסריקות: 9, 1 או 8 מטושטשת, 7, 6, 2, 0, 3, 4, 5 ו-1 דקה

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

רשת בגודל 8 על 8 המציגה את פיזור הפיקסלים של הספרות 7; ככל שהצבע כחול כהה יותר, הפיזור גדול יותר: פיזור גבוה לאורך הפס העליון והקו היורד, 0.0 לאורך הקצה השמאלי ובפינה הימנית התחתונה

spread = X[y == 7].std(axis=0)
print((spread == 0).sum())

זה מדפיס 15: חמישה עשר פיקסלים ריקים בכל 7. פיקסל שאינו משתנה לעולם לא אומר למודל דבר.

challenge icon

אתגר

בינוני

התחילו לחקור. קוד הפתיחה טוען את הסריקות לתוך X, את הספרות לתוך y, ומגדיר תרשים.

  1. מצאו את הפיזור של כל פיקסל בכל הסריקות. הדפיסו את השורה, העמודה והפיזור (2 ספרות אחרי הנקודה העשרונית) של הפיקסל הפעיל ביותר, ולאחר מכן את מספר הפיקסלים שנשארים ריקים בכל הסריקות.
  2. ציירו אותם כתמונה בגודל 8 על 8 באמצעות ax, cmap="Blues", ועם סרגל צבעים. הציגו אותה.

עבור הספרה 1 בלבד:

Busiest pixel: row 6, column 5 (spread 6.53)
Blank in every scan: 12 pixels

תמונה בגודל 8 על 8 שכותרתה היכן הכותבים חלוקים, עם סרגל צבעים: הפיזור של כל פיקסל בספרה 1, כאשר השורות והעמודות ממוספרות מ-0 עד 7: שתי רצועות כהות במרכז, שבהן הכותבים מציבים את הקו במקומות שונים, ושוליים בהירים משמאל ומימין

שלכם כוללת את כל 1,797 הסריקות. Coddy מתאר את התמונה שלכם. היכן הכותבים חלוקים יותר מכול?

נסו בעצמכם

import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_digits

# 1,797 סריקות של ספרות בכתב יד: 64 פיקסלים בכל אחת (8 על 8, ערכי דיו מ-0 עד 16) והספרה שנכתבה
digits = load_digits()
X = digits.data
y = digits.target

fig, ax = plt.subplots()
ax.set_title("Where Writers Disagree")

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

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

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

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