המסע של מודרניזציה של TorchVision - זיכרונות של מפתח TorchVision - 3 PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

המסע של מודרניזציה של TorchVision - זיכרונות של מפתח TorchVision - 3

המסע של מודרניזציה של TorchVision - זיכרונות של מפתח TorchVision - 3

עבר זמן מה מאז שפרסמתי לאחרונה ערך חדש על זיכרונות TorchVision סדרה. חשבתי, בעבר שיתפתי חדשות בבלוג הרשמי של PyTorch והלאה טויטר, חשבתי שזה יהיה רעיון טוב לדבר יותר על מה שקרה במהדורה האחרונה של TorchVision (v0.12), מה יוצא בגרסה הבאה (v0.13) ומה התוכניות שלנו ל-2022H2. היעד שלי הוא ללכת מעבר לספק סקירה כללית של תכונות חדשות, אלא לספק תובנות לאן אנחנו רוצים לקחת את הפרויקט בחודשים הבאים.

TorchVision v0.12 היה מהדורה נכבדה עם מיקוד כפול: א) עדכן את מדיניות ההוצאה משימוש ותרומת המודל שלנו כדי לשפר את השקיפות ולמשוך תורמים נוספים לקהילה וב) להכפיל את מאמצי המודרניזציה שלנו על ידי הוספת ארכיטקטורות מודלים, מערכי נתונים וטכניקות ML חדשות פופולריות.

עדכון המדיניות שלנו

המפתח לפרויקט קוד פתוח מוצלח הוא שמירה על קהילה בריאה ופעילה התורמת לו ומניעה אותה קדימה. לפיכך מטרה חשובה עבור הצוות שלנו היא להגדיל את מספר התרומות לקהילה, עם החזון לטווח ארוך של לאפשר לקהילה לתרום תכונות גדולות (דגמים חדשים, טכניקות ML וכו') בנוסף לשיפורים המצטברים הרגילים (תיקוני באגים/מסמכים). , תכונות קטנות וכו').

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

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

מודרניזציה של TorchVision

זה לא סוד שבמהדורות האחרונות שלנו יעד היה להוסיף ל-TorchVision את כל ההגדלות, ההפסדים, השכבות, כלי ההדרכה והארכיטקטורות החדשות הדרושים כדי שהמשתמשים שלנו יוכלו לשחזר בקלות תוצאות SOTA באמצעות PyTorch. TorchVision v0.12 המשיך במסלול הזה:

  • התורמים לקהילת הרוקסטאר שלנו, הו יה וז'יקיאנג וואנג, תרמו את FCOS ארכיטקטורה שהיא מודל זיהוי אובייקט חד-שלבי.

  • Nicolas Hug הוסיף תמיכה בזרימה אופטית ב-TorchVision על ידי הוספת רַפסוֹדָה אדריכלות.

  • Yiwen Song הוסיפה תמיכה עבור שנאי חזון (ViT) ואני הוספתי את ConvNeXt ארכיטקטורה יחד עם משקולות משופרות מאומנות מראש.

  • סוף סוף עם לעזור של הקהילה שלנו, הוספנו 14 סיווג חדש ו 5 זרימה אופטית חדשה מערכי נתונים.

  • כרגיל, המהדורה הגיעה עם מספר שיפורים קטנים יותר, תיקוני באגים ושיפורי תיעוד. כדי לראות את כל התכונות החדשות ואת רשימת התורמים שלנו, בדוק את הערות גרסה v0.12.

TorchVision v0.13 ממש מעבר לפינה, עם שחרורו צפוי בתחילת יוני. זוהי מהדורה גדולה מאוד עם מספר משמעותי של תכונות חדשות ושיפורי API גדולים.

סיום מודרניזציות וסגירת הפער מ-SOTA

אנחנו ממשיכים את שלנו מסע מודרניזציה של הספרייה על ידי הוספת הפרימיטיבים הדרושים, ארכיטקטורות המודל וכלי השירות של מתכונים כדי לייצר תוצאות SOTA עבור משימות מפתח של Computer Vision:

  • בעזרת Victor Fomin, הוספתי טכניקות חשובות חסרות של Data Augmentation כגון AugMix, ריצוד בקנה מידה גדול וכו' טכניקות אלו אפשרו לנו לסגור את הפער מ-SOTA ולייצר משקלים טובים יותר (ראה להלן).

  • בעזרת Aditya Oke, Hu Ye, Yasine Alouini ו-Abhijit Deo, הוספנו אבני בניין נפוצות חשובות כגון DropBlock שכבה, MLP לחסום, את סגור & דואו אובדן וכו'. לבסוף עבדתי עם Shen Li כדי לתקן בעיה ארוכת שנים ב- PyTorch's SyncBatchNorm שכבה שהשפיעה על דגמי הגילוי.

  • הו יה בתמיכתו של Joao Gomes הוסיף סווין שנאי יחד עם משקולות משופרות מאומנות מראש. הוספתי את EfficientNetV2 ארכיטקטורה וכמה אופטימיזציות ארכיטקטוניות לאחר הנייר על יישום RetinaNet, FasterRCNN ו-MaskRCNN.

  • כפי שדיברתי קודם בבלוג PyTorch, השקענו מאמץ משמעותי בשיפור המשקולות המאומנות מראש על ידי יצירת משקל משופר מתכון לאימון. זה אפשר לנו לשפר את הדיוק שלנו מודלים לסיווג ב-3 נקודות דיוק, השגת SOTA חדש עבור ארכיטקטורות שונות. מאמץ דומה בוצע עבור איתור ופילוח, שם שיפרנו את הדיוק של הדגמים בלמעלה מ-8.1 mAP בממוצע. לבסוף יוסואה מייקל M עבד עם לורה גוסטפסון, מאנאט סינגהנד ואהרון אדקוק כדי להוסיף תמיכה של הִתנוֹעֲעוּת, קבוצה של משקולות חדשות ומדויקות ביותר המאומנות מראש עבור ViT ו-RegNets.

API חדש לתמיכה בריבוי משקלים

כמו שאני דנו בעבר בבלוג PyTorch, TorchVision הרחיבה את מנגנון בונה הדגמים הקיים שלה כדי לתמוך במספר משקלים מאומנים מראש. ה-API החדש תואם לאחור באופן מלא, מאפשר ליצור מודלים בעלי משקלים שונים ומספק מנגנונים לקבלת מטא-נתונים שימושיים (כגון קטגוריות, מספר פרמטרים, מדדים וכו') והטרנספורמציות של מסקנות מקדימות של המודל. יש משוב ייעודי בעיה ב- Github כדי לעזור לנו לגהץ את כל הקצוות הגסים שלנו.

תיעוד מחודש

ניקולס האג הוביל את מאמצי הארגון מחדש של תיעוד דגם של TorchVision. המבנה החדש מסוגל לעשות שימוש בתכונות המגיעות מ-Multi-weight Support API כדי להציע תיעוד טוב יותר למשקולות המאומנות מראש ולשימוש בהן בספרייה. צעקה ענקית לחברי הקהילה שלנו על עוזר לנו לתעד את כל הארכיטקטורות בזמן.

חשבנו שמפת הדרכים המפורטת שלנו לשנת 2022H2 עדיין לא הושלמה, הנה כמה פרויקטים מרכזיים שאנו מתכננים לעבוד עליהם כעת:

  • אנו עובדים בשיתוף פעולה הדוק עם Haoqi Fan וכריסטוף Feichtenhofer מ סרטון PyTorch, להוסיף את שנאי ראייה רב-קנה מידה משופר ארכיטקטורת (MViTv2) ל-TorchVision.

  • פיליפ מאייר וניקולס האג עובדים על גרסה משופרת של API של ערכות נתונים (v2) אשר משתמש צינורות TorchData ו-Data. פיליפ מאייר, ויקטור פומין ואני גם עובדים על הרחבת התוכנית שלנו הופך את ה-API (v2) לתמוך לא רק בתמונות אלא גם בתיבות תוחמות, מסכות פילוח וכו'.

  • לבסוף הקהילה עוזרת לנו לשמור על TorchVision רענן ורלוונטי על ידי הוספת ארכיטקטורות וטכניקות פופולריות. Lezwon Castelino עובד כעת עם Victor Fomin כדי להוסיף את SimpleCopyPaste הגדלה. Hu Ye עובד כעת כדי להוסיף את ארכיטקטורת DeTR.

אם תרצו להשתתף בפרויקט, אנא פנו אלינו נושאים ראשונים טובים ו דרושה עזרה רשימות. אם אתה ותיק PyTorch/Computer Vision ותרצה לתרום, יש לנו מספר פרויקטים מועמדים לחדשים מפעילי, אבדות, augmentations ו מודלים.

אני מקווה שמצאת את המאמר מעניין. אם אתה רוצה ליצור קשר, פנה אליי לינקדין or טויטר.

בול זמן:

עוד מ דטומבוקס