GPT
S

StreetCLIP

קוד פתוח

geolocalcc-by-nc-4.02023-01-26

  • transformers
  • pytorch
  • clip
  • zero-shot-image-classification
  • geolocalization

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

  • 77טוקנים בהקשר
  • 1.6 GBמשקל הקבצים
  • 10,060הורדות בחודש
  • 110לייקים

מה זה

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

בבדיקות מול מודלים ייעודיים שנבנו במיוחד למשימה, הוא מוביל בעיקר בטווחים הרחבים. במבחן IM2GPS הוא מדייק בטווח של 2,500 קילומטר ב־88.2% מהמקרים, ובמבחן IM2GPS3K הוא מגיע ל־61.3% דיוק ברדיוס של 750 קילומטר, שזה שיפור ישיר על פני CLIP רגיל. עם זאת, כשמסתכלים על דיוק עירוני קרוב של 25 קילומטר, מודלים מפוקחים ישנים כמו TransLocator עדיין עוקפים אותו בפער ניכר.

מתאים ל

  • סינון תמונות לפי מדינה

    שיוך אוטומטי של תצלומי חוץ לאזורים גיאוגרפיים בעולם ללא צורך באימון מותאם אישית.

  • מיון תשתיות וכבישים

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

  • סיווג צמחייה עירונית

    קישור בין מראה של צמחייה וסוגי קרקע בצילומי חוץ לבין אזורי אקלים מתאימים.

איפה זה נופל

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

בנוסף, הדיוק ברמת הרחוב נמוך למדי. ברדיוס של 25 קילומטר הוא פוגע רק ב־28.3% מהמקרים במבחן IM2GPS. הוא מתאים לזיהוי מדינה או חבל ארץ, אבל לא מסוגל לאתר כתובת מדויקת מתוך תמונה אקראית, והכרטיס אוסר במפורש שימוש בו לאיתור תמונות פרטיות של אנשים.

שאלות
נפוצות

האם המודל מחזיר נקודת ציון של קווי אורך ורוחב?

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

האם אפשר להשתמש בו לזיהוי מיקום של תמונות בישראל?

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

האם ניתן להכניס שמות מקומות בעברית?

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

איך מריצים

המשקל הכולל יושב על 1.6 גיגה בייט, כך שאפשר להריץ אותו בלי בעיה על מעבד גרפי ביתי פשוט עם 6 עד 8 גיגה זיכרון, או אפילו על מעבד רגיל אם השיהוי של כמה שניות לתמונה לא שובר אתכם. השימוש נעשה ישירות דרך ספריית transformers בפייתון עם פקודות CLIP סטנדרטיות.

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

from transformers import pipeline

pipe = pipeline("zero-shot-image-classification", model="geolocal/StreetCLIP")
print(pipe("שלום"))

הרישיון

הרישיון הוא cc-by-nc-4.0. המשמעות ברורה וחד משמעית, מותר להשתמש במודל, לשנות אותו ולפתח עליו רק לצורכי מחקר, לימוד ופרויקטים פנימיים ללא כוונת רווח. אסור לשלב אותו במוצר מסחרי, באפליקציה בתשלום או במערכת שמייצרת הכנסה.

  • שינוי הקוד
  • חובת ייחוס
  • שימוש מסחרי: לא

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