Zajawka TorchVision v0.11 – Wspomnienia dewelopera TorchVision – 2

Zajawka TorchVision v0.11 – Wspomnienia dewelopera TorchVision – 2

Rzut oka na TorchVision v0.11 – Wspomnienia programisty TorchVision – 2 PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Zajawka TorchVision v0.11 – Wspomnienia dewelopera TorchVision – 2

Ostatnie kilka tygodni było bardzo pracowite w „PyTorch Land”, ponieważ gorączkowo przygotowujemy wydanie PyTorch v1.10 i TorchVision v0.11. W tej drugiej odsłonie Serie, omówię niektóre z nadchodzących funkcji, które są obecnie zawarte w gałęzi wydania TorchVision.

Zrzeczenie się: Chociaż nadchodzące wydanie jest pełne licznych ulepszeń i ulepszeń dotyczących błędów/testów/dokumentacji, tutaj zwracam uwagę na nowe funkcje skierowane do użytkowników w domenach, które mnie osobiście interesują. Po napisaniu wpisu na blogu zauważyłem również stronniczość w stosunku do funkcji, które recenzowałem, pisałem lub uważnie śledziłem ich rozwój. Zakrywanie (lub nie zakrywanie) funkcji nie mówi nic o jej znaczeniu. Wyrażone opinie są wyłącznie moimi.

Nowe modele

Nowa wersja jest pełna nowych modeli:

  • Kai Zhang dodał implementację Architektura RegNet wraz z wytrenowanymi ciężarami dla Warianty 14 które ściśle odwzorowują oryginalny papier.
  • Niedawno dodałem implementację Architektura EfficientNet wraz z wytrenowanymi ciężarami dla wariantów B0-B7 dostarczonymi przez Luke'a Melas-Kyriazi i Rossa Wightmana.

Nowe rozszerzenia danych

Do najnowszej wersji dodano kilka nowych technik Data Augmentation:

  • Samuel Gabriel wniósł wkład Trywialne wzmocnienie, nowa prosta, ale bardzo skuteczna strategia, która wydaje się zapewniać lepsze wyniki niż autouzupełnianie.
  • dodałem RandAugment metoda w autoaugmentacjach.
  • Dostarczyłem implementację Mixup i CutMix przekształca się w referencjach. Zostaną one przeniesione w postaci transformacji w następnym wydaniu, gdy ich interfejs API zostanie sfinalizowany.

Nowi operatorzy i warstwy

Dodano szereg nowych operatorów i warstw:

Referencje / Przepisy szkoleniowe

Chociaż ulepszanie naszych skryptów referencyjnych jest ciągłym wysiłkiem, oto kilka nowych funkcji zawartych w nadchodzącej wersji:

  • Prabhat Roy dodał obsługę Wykładnicza średnia ruchoma w naszej recepturze klasyfikacji.
  • Zaktualizowałem nasze referencje do wsparcia Wygładzanie etykiet, który został niedawno wprowadzony przez Joela Schlossera i Thomasa J. Fana na rdzeniu PyTorch.
  • Uwzględniłem opcję wykonania Rozgrzewka szybkości uczenia się, przy użyciu najnowszych programów planujących LR opracowanych przez Ilqara Ramazanli.

Inne ulepszenia

Oto kilka innych znaczących ulepszeń dodanych w wydaniu:

  • Alexander Soare i Francisco Massa opracowali i Narzędzie oparte na FX co pozwala na wyodrębnienie dowolnych cech pośrednich z architektur modeli.
  • Nikita Shulga dodał obsługę CUDA 11.3 do TorchVision.
  • Zhongkai Zhu naprawił problemy z zależnościami biblioteki JPEG (ten problem przysporzył wielu naszym użytkownikom poważnych problemów).

W toku i następny

Wiele ekscytujących nowych funkcji jest niedopracowanych, które nie pojawiły się w tym wydaniu. Tu jest kilka:

  • Moto Hira, Parmeet Singh Bhatia i ja opracowaliśmy projekt RFC, który proponuje nowy mechanizm Wersje modelu oraz do obsługi metadanych związanych z wytrenowanymi wagami. Umożliwi nam to obsługę wielu wstępnie wytrenowanych wag dla każdego modelu i dołączanie powiązanych informacji, takich jak etykiety, przekształcenia wstępnego przetwarzania itp. do modeli.
  • Obecnie pracuję nad wykorzystaniem prymitywów dodanych przez „Baterie w zestawie”projekt w celu poprawy dokładności naszych wstępnie wytrenowane modele. Celem jest osiągnięcie najlepszych w swojej klasie wyników dla najpopularniejszych wstępnie wytrenowanych modeli dostarczanych przez TorchVision.
  • Philip Meier i Francisco Massa pracują nad ekscytującym prototypem nowego TorchVision Dataset i Przekształca się API.
  • Prabhat Roy pracuje nad rozszerzeniem PyTorch Core AveragedModel klasa wspierająca uśrednianie buforów oprócz parametrów. Brak tej funkcji jest często zgłaszany jako błąd i będzie włącz liczne biblioteki podrzędne i frameworki do usuwania ich niestandardowych implementacji EMA.
  • Aditya Oke napisał narzędzie co pozwala wykreślanie wyników modeli Keypoint na oryginalnych obrazach (funkcja nie dotarła do wydania, ponieważ zostaliśmy zalani i nie mogliśmy przejrzeć jej na czas 🙁 )
  • buduję prototyp narzędzia FX który ma na celu wykrywanie połączeń rezydualnych w dowolnych architekturach modeli i modyfikowanie sieci w celu dodania bloków regularyzacji (takich jak StochasticDepth).

Wreszcie, w naszym backlogu pojawiło się kilka nowych funkcji (PR już wkrótce):

Mam nadzieję, że powyższe podsumowanie było dla Ciebie interesujące. Wszelkie pomysły na dostosowanie formatu serii blogów są mile widziane. Uderz mnie dalej LinkedIn or Twitter.

Znak czasu:

Więcej z Skrzynka odniesienia