Programování

Proč podniky přecházejí z TensorFlow na PyTorch

Hluboké učení, podkategorie strojového učení, využívá vícevrstvé neuronové sítě k automatizaci historicky náročných strojních úkolů - jako je rozpoznávání obrázků, zpracování přirozeného jazyka (NLP) a strojový překlad - ve velkém.

TensorFlow, který se z Googlu objevil v roce 2015, je nejpopulárnějším otevřeným zdrojovým rámcem hlubokého učení pro výzkum i podnikání. Ale PyTorch, který se objevil z Facebooku v roce 2016, se rychle dostal do minulosti, a to díky vylepšením v komunitě zaměřeným na snadné použití a nasazení pro širší škálu případů použití.

PyTorch zaznamenává obzvláště silné přijetí v automobilovém průmyslu - kde jej lze použít na pilotní systémy autonomního řízení od společností Tesla a Lyft úrovně 5. Rámec se také používá pro klasifikaci obsahu a doporučení v mediálních společnostech a na podporu robotů v průmyslových aplikacích.

Joe Spisak, vedoucí produktové oblasti pro umělou inteligenci společnosti Facebook AI, uvedl, že ačkoliv ho potěšilo zvýšení podnikové adopce PyTorch, je třeba udělat ještě mnoho práce, aby bylo dosaženo širšího přijetí v oboru.

"Další vlna přijetí přijde s umožněním správy životního cyklu, MLOps a potrubí Kubeflow a komunitou kolem toho," řekl. "Pro ty, kteří jsou na začátku cesty, jsou nástroje docela dobré, protože pro začátek využívají spravované služby a nějaký otevřený zdroj s něčím jako SageMaker v AWS nebo Azure ML."

Disney: Identifikace animovaných tváří ve filmech

Od roku 2012 staví inženýři a datoví vědci mediálního giganta Disney to, co společnost nazývá Content Genome, znalostní graf, který spojuje metadata obsahu a umožňuje vyhledávací a personalizační aplikace založené na strojovém učení v masivní knihovně Disneyho obsahu.

"Tato metadata vylepšují nástroje, které používají vypravěči Disney k výrobě obsahu; inspirovat iterativní kreativitu při vyprávění; posílit uživatelské zkušenosti prostřednictvím doporučovacích modulů, digitální navigace a zjišťování obsahu; a umožnit business intelligence, “napsali vývojáři Disney Miquel Àngel Farré, Anthony Accardo, Marc Junyent, Monica Alfaro a Cesc Guitart v červencovém příspěvku na blogu.

Než se to mohlo stát, musel Disney investovat do rozsáhlého projektu anotace obsahu a obrátil se na své datové vědce, aby vycvičili automatizovaný kanál značení pomocí modelů hlubokého učení pro rozpoznávání obrázků k identifikaci obrovského množství obrázků lidí, postav a míst.

Inženýři společnosti Disney začali experimentováním s různými rámci, včetně TensorFlow, ale rozhodli se konsolidovat kolem PyTorch v roce 2019. Inženýři přešli od konvenčního deskriptoru funkcí histogramu orientovaných přechodů (HOG) a modelu populárních podpůrných vektorových strojů (SVM) k verzi architektura detekce objektů dabovaná regiony s konvolučními neuronovými sítěmi (R-CNN). Ten druhý byl příznivější pro zpracování kombinací živých akcí, animací a vizuálních efektů běžných v obsahu Disney.

"Je obtížné definovat, co je tvář v karikatuře, a tak jsme se přesunuli k metodám hlubokého učení pomocí detektoru objektů a použili přenosové učení," vysvětlila Monica Alfaro z Disney Research Engineer. Poté, co bylo zpracováno jen několik tisíc tváří, nový model již obecně identifikoval tváře ve všech třech případech použití. Do výroby byla uvedena v lednu 2020.

"Nyní používáme pouze jeden model pro tři typy tváří, a to je skvělé pro film Marvel, jako je Avengers, kde je třeba rozpoznat Iron Mana a Tonyho Starka nebo jakoukoli postavu s maskou," řekla.

Protože se inženýři zabývají tak velkým objemem video dat, aby mohli trénovat a provozovat model paralelně, chtěli při přechodu do výroby běžet také na drahých a výkonných GPU.

Přechod od procesorů umožnil inženýrům rychleji trénovat a aktualizovat modely. Rovněž to zrychlilo distribuci výsledků do různých skupin napříč Disney, čímž se zkrátil čas zpracování z celovečerního filmu na zhruba hodinu a dnes se výsledky dostanou mezi pět až deset minut.

"Detektor objektů TensorFlow přinesl problémy s pamětí ve výrobě a bylo obtížné jej aktualizovat, zatímco PyTorch měl stejný detektor objektů a Faster-RCNN, takže jsme začali používat PyTorch pro všechno," řekl Alfaro.

Tento přechod z jednoho rámce na druhý byl překvapivě jednoduchý i pro inženýrský tým. "Změna [na PyTorch] byla snadná, protože je to vše vestavěné, připojíte pouze některé funkce a můžete začít rychle, takže to není strmá křivka učení," řekl Alfaro.

Když se setkali s jakýmikoli problémy nebo úzkými místy, byla k dispozici živá komunita PyTorch.

Technologie Blue River: Roboty zabíjející plevele

Společnost Blue River Technology navrhla robota, který využívá honosnou kombinaci digitálního vyhledávání cest, integrovaných kamer a počítačového vidění k postřiku plevelů herbicidem a ponechává plodiny osamocené v téměř reálném čase, což pomáhá farmářům efektivněji chránit drahé a potenciálně škodlivé pro životní prostředí herbicidy.

Společnost se sídlem v Sunnyvale v Kalifornii upoutala pozornost výrobce těžkých zařízení John Deere v roce 2017, kdy byla získána za 305 milionů dolarů, s cílem integrovat tuto technologii do svého zemědělského vybavení.

Vědci z Blue River experimentovali s různými rámci hlubokého učení, zatímco se pokoušeli trénovat modely počítačového vidění, aby rozpoznali rozdíl mezi plevelem a plodinami, což je obrovská výzva, když máte co do činění s rostlinami bavlny, které se neblaze podobají plevelům.

Byli navrženi vysoce vyškolení agronomové, kteří provádějí úkoly ručního označování obrazů a trénují konvoluční neuronovou síť (CNN) pomocí PyTorch „k analýze každého snímku a vytvoření pixelové mapy toho, kde jsou plodiny a plevele,“ Chris Padwick, ředitel počítače vize a strojové učení ve společnosti Blue River Technology, napsal v blogu v srpnu.

"Stejně jako jiné společnosti jsme zkusili Caffe, TensorFlow a poté PyTorch," řekl Padwick. "Funguje to pro nás docela dobře." Neměli jsme vůbec žádné hlášení o chybě ani blokující chybu. Na distribuovaných výpočtech skutečně svítí a je snadněji použitelný než TensorFlow, což pro datové paralelismy bylo docela komplikované. “

Padwick říká, že popularita a jednoduchost rámce PyTorch mu dává výhodu, pokud jde o rychlý nábor nových zaměstnanců. Padwick tedy sní o světě, kde „se lidé rozvíjejí v jakémkoli ohledu. Někteří jako Apache MXNet nebo Darknet nebo Caffe pro výzkum, ale ve výrobě musí být v jednom jazyce a PyTorch má vše, co potřebujeme, abychom byli úspěšní. “

Datarock: Cloudová analýza obrazu pro těžební průmysl

Australský startup Datarock, založený skupinou geologů, aplikuje technologii těžebního vidění na těžební průmysl. Přesněji řečeno, jeho modely hlubokého učení pomáhají geologům analyzovat základní ukázky vrtání rychleji než dříve.

Typicky by geolog tyto vzorky centimetr po centimetru póroval, aby posoudil mineralogii a strukturu, zatímco inženýři by hledali fyzické rysy, jako jsou poruchy, zlomeniny a kvalita hornin. Tento proces je jak pomalý, tak náchylný k lidské chybě.

"Počítač může vidět kameny jako inženýr," řekl Brenton Crawford, provozní ředitel společnosti Datarock. "Pokud to vidíte na obrázku, můžeme trénovat model, který jej analyzuje stejně jako člověka."

Podobně jako Blue River, Datarock používá ve výrobě variantu modelu RCNN, přičemž vědci se v raných fázích obracejí k technikám rozšiřování dat, aby shromáždili dostatek tréninkových dat.

"Po počátečním období zjišťování se tým pustil do kombinování technik k vytvoření pracovního postupu zpracování obrazu pro snímky jádra cvičení." To zahrnovalo vývoj řady modelů hlubokého učení, které by mohly zpracovávat surové obrázky do strukturovaného formátu a segmentovat důležité geologické informace, “napsali vědci v příspěvku na blogu.

Díky technologii Datarock mohou klienti získat výsledky za půl hodiny, na rozdíl od pěti nebo šesti hodin, které jsou zapotřebí k ručnímu zaznamenání nálezů. To osvobodí geology od pracnějších částí jejich práce, řekl Crawford. Avšak „když automatizujeme věci, které jsou obtížnější, dostaneme určité zpětné působení a musíme vysvětlit, že jsou součástí tohoto systému, abychom mohli trénovat modely a dosáhnout toho, aby se smyčka zpětné vazby otáčela.“

Stejně jako mnoho společností, které trénují modely počítačového vidění s hlubokým učením, Datarock začal s TensorFlow, ale brzy přešel na PyTorch.

"Na začátku jsme použili TensorFlow a narazilo by to na nás ze záhadných důvodů," řekl Duy Tin Truong, vedoucí strojového učení v Datarocku. "PyTorch a Detecton2 byly v té době vydány a vyhovovaly našim potřebám, takže po několika testech jsme zjistili, že je snazší ladit a pracovat s méně paměti, takže jsme provedli konverzi," řekl.

Datarock také oznámil čtyřnásobné zlepšení inferenčního výkonu z TensorFlow na PyTorch a Detectron2 při spuštění modelů na GPU - a 3x na CPU.

Truong jako důvod pro přechod uvedl rostoucí komunitu PyTorch, dobře navržené rozhraní, snadné použití a lepší ladění a poznamenal, že ačkoliv „jsou z hlediska rozhraní zcela odlišné, pokud znáte TensorFlow, je docela snadné přepnout , zvláště pokud znáte Pythona. “