En smygtitt på TorchVision v0.11 - Memoirs of a TorchVision -utvecklare - 2

En smygtitt på TorchVision v0.11 - Memoirs of a TorchVision -utvecklare - 2

En smygtitt på TorchVision v0.11 – Memoirs of a TorchVision-utvecklare – 2 PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.
En smygtitt på TorchVision v0.11 - Memoirs of a TorchVision -utvecklare - 2

De senaste veckorna har varit superupptagna i "PyTorch Land" när vi frenetiskt förbereder releasen av PyTorch v1.10 och TorchVision v0.11. I denna andra delen av serien, jag kommer att täcka några av de kommande funktionerna som för närvarande ingår i releasegrenen av TorchVision.

Varning: Även om den kommande utgåvan är packad med många förbättringar och bugg/test/dokumentationsförbättringar, lyfter jag här fram nya "användarvända" funktioner på domäner som jag personligen är intresserad av. Efter att ha skrivit blogginlägget märkte jag också en partiskhet mot funktioner som jag granskat, skrivit eller följt deras utveckling på nära håll. Att täcka (eller inte täcka) en funktion säger ingenting om dess betydelse. Åsikter som uttrycks är enbart mina egna.

Nya modeller

Den nya versionen är fullspäckad med nya modeller:

  • Kai Zhang har lagt till en implementering av RegNet arkitektur tillsammans med förtränade vikter för 14-varianter som nära återger originalpapperet.
  • Jag har nyligen lagt till en implementering av EfficientNet-arkitektur tillsammans med förtränade vikter för varianterna B0-B7 tillhandahållna av Luke Melas-Kyriazi och Ross Wightman.

Nya dataökningar

Några nya dataförstärkningstekniker har lagts till i den senaste versionen:

  • Samuel Gabriel har bidragit TrivialAugment, en ny enkel men mycket effektiv strategi som verkar ge överlägsna resultat till AutoAugment.
  • Jag har lagt till RandAugment metod för automatiska förstoringar.
  • Jag har tillhandahållit en implementering av Mixup och CutMix omvandlas i referenser. Dessa kommer att flyttas i transformationer vid nästa utgåva när deras API har slutförts.

Nya operatörer och lager

Ett antal nya operatörer och lager har inkluderats:

Referenser / Träningsrecept

Även om förbättringen av våra referensskript är en kontinuerlig ansträngning, här är några nya funktioner som ingår i den kommande versionen:

Andra förbättringar

Här är några andra anmärkningsvärda förbättringar som lagts till i releasen:

  • Alexander Soare och Francisco Massa har utvecklat en FX-baserat verktyg som gör det möjligt att extrahera godtyckliga mellanfunktioner från modellarkitekturer.
  • Nikita Shulga har lagt till stöd för CUDA 11.3 till TorchVision.
  • Zhongkai Zhu har fixat beroendefrågor av JPEG lib (det här problemet har orsakat stor huvudvärk för många av våra användare).

Pågående och nästa

Det finns många spännande nya funktioner under utveckling som inte kom med i den här utgåvan. Här är några:

  • Moto Hira, Parmeet Singh Bhatia och jag har utarbetat en RFC, som föreslår en ny mekanism för Modellversionering och för hantering av metadata kopplade till förtränade vikter. Detta kommer att göra det möjligt för oss att stödja flera förtränade vikter för varje modell och bifoga tillhörande information såsom etiketter, förbearbetningstransformationer etc till modellerna.
  • Jag arbetar för närvarande med att använda primitiverna som lagts till av "Batterier ingår” projekt för att förbättra noggrannheten i vår förutbildade modeller. Målet är att uppnå klassens bästa resultat för de mest populära förtränade modellerna från TorchVision.
  • Philip Meier och Francisco Massa arbetar på en spännande prototyp för TorchVisions nya dataset och Trans API.
  • Prabhat Roy arbetar med att utöka PyTorch Core's AveragedModel klass för att stödja medelvärdesberäkning av buffertarna förutom parametrar. Avsaknaden av denna funktion rapporteras vanligtvis som bugg och vilja möjliggöra många nedströmsbibliotek och ramverk för att ta bort deras anpassade EMA-implementationer.
  • Aditya Oke skrev ett verktyg vilket tillåter plotta resultaten av Keypoint-modeller på originalbilderna (funktionen kom inte till releasen eftersom vi blev översvämmade och inte kunde granska den i tid 🙁 )
  • Jag bygger en prototyp FX-verktyg som syftar till att detektera kvarvarande anslutningar i godtyckliga modellarkitekturer och modifiera nätverket för att lägga till regulariseringsblock (som t.ex. StochasticDepth).

Slutligen finns det några nya funktioner i vår eftersläpning (PRs kommer snart):

Jag hoppas att du tyckte att sammanfattningen ovan var intressant. Alla idéer om hur man kan anpassa formatet på bloggserien är mycket välkomna. Slå på mig LinkedIn or Twitter.

Tidsstämpel:

Mer från Datumbox