GPT
S

siglip-base-patch16-224

קוד פתוח

googleapache-2.02023-09-30

  • transformers
  • pytorch
  • safetensors
  • siglip
  • zero-shot-image-classification

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

  • 203Mפרמטרים
  • 1.5 GBמשקל הקבצים
  • 1,854,284הורדות בחודש
  • 91לייקים

מה זה

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

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

מתאים ל

  • סיווג תמונות דינמי

    מאפשר לסווג תמונות לפי קטגוריות טקסטואליות משתנות בלי לאמן מודל ייעודי לכל תגית.

  • חיפוש תמונות לפי טקסט

    מייצר וקטורים תואמים לטקסט ולתמונה ומאפשר שליפה ממאגרים לפי תיאור חופשי באנגלית.

  • סינון תוכן אוטומטי

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

איפה זה נופל

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

שאלות
נפוצות

האם אפשר להעביר לו תוויות בעברית לסיווג?

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

איך מחשבים את ההסתברות של כל תווית מתוך הפלט?

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

איך מריצים

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

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

from transformers import pipeline

pipe = pipeline("zero-shot-image-classification", model="google/siglip-base-patch16-224")
print(pipe("שלום"))

הרישיון

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

  • שימוש מסחרי
  • שינוי הקוד
  • הפצה מחדש
  • שימוש בפטנטים

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