GPT
M

mobilevit-small

קוד פתוח

appleother2022-05-30

  • transformers
  • pytorch
  • tf
  • coreml
  • mobilevit

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

  • 64.7 MBמשקל הקבצים
  • 9,913הורדות בחודש
  • 94לייקים

מה זה

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

במבחני ImageNet-1k הגרסה הזו הגיעה לדיוק של 78.4 אחוזים ב־top-1 ו־94.1 אחוזים ב־top-5 עם 5.6 מיליון פרמטרים. בהשוואה לגרסאות הקטנות יותר בסדרה, כמו XXS שמסתפקת ב־69 אחוזים או XS עם 74.8 אחוזים, מקבלים כאן קפיצה מורגשת ביכולת הזיהוי במחיר של עוד כמה מגה-בייטים בודדים בזיכרון.

מתאים ל

  • סיווג מקומי במכשיר נייד

    משקל של פחות מ־65 מגה מאפשר להריץ אותו ישירות על המכשיר בלי חיבור לרשת ובלי עלויות שרת.

  • סינון וקטלוג תמונות בשרת

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

  • בסיס למודל מותאם אישית

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

איפה זה נופל

הקלט מחייב סדר פיקסלים של BGR ולא RGB, ואם שוכחים את זה מקבלים תוצאות שגויות לגמרי. בנוסף, הוא אומן רק על 1,000 המחלקות של ImageNet ברזולוציה של 256 על 256 פיקסלים. אם אתם צריכים לזהות עצמים שאינם ברשימה המקורית, תידרשו לאמן אותו מחדש, והוא לא מתאים לזיהוי מיקום של אובייקטים אלא רק לתיוג של התמונה כולה.

שאלות
נפוצות

האם אפשר להריץ אותו ישר על תמונות שצולמו בטלפון?

לא ישירות. המודל דורש עיבוד מקדים שכולל שינוי גודל ל־288 על 288, חיתוך מרכזי ל־256 על 256, נרמול ערכים לטווח של 0 עד 1, והמרה לסדר ערוצים של BGR במקום RGB הרגיל.

איזו גרסה בסדרה כדאי לבחור לפרויקט?

אם המגבלה בזיכרון קיצונית, גרסאות ה־XXS או ה־XS תופסות פחות מ־3 מיליון פרמטרים. הגרסה הזו מציעה דיוק עדיף משמעותית של 78.4 אחוזים, ומשקל הקובץ שלה עדיין קטן מספיק לרוב המוחלט של המכשירים.

איך מריצים

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

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

from transformers import pipeline

pipe = pipeline("image-classification", model="apple/mobilevit-small")
print(pipe("שלום"))

הרישיון

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

הרישיון המלא בעמוד המודל ↗