Programmering

Hvorfor virksomheder skifter fra TensorFlow til PyTorch

En underkategori af maskinlæring, dyb læring bruger flerlagsneurale netværk til at automatisere historisk vanskelige maskinopgaver - såsom billedgenkendelse, naturlig sprogbehandling (NLP) og maskinoversættelse - i målestok.

TensorFlow, der kom ud af Google i 2015, har været den mest populære open source dyb læringsramme for både forskning og forretning. Men PyTorch, der kom ud af Facebook i 2016, har hurtigt fanget op takket være samfundsdrevne forbedringer i brugervenlighed og implementering til et bredere udvalg af brugssager.

PyTorch ser særligt stærk adoption i bilindustrien - hvor den kan anvendes til pilot autonome køresystemer fra f.eks. Tesla og Lyft niveau 5. Rammen bruges også til indholdsklassificering og anbefaling i medievirksomheder og til at hjælpe med at understøtte robotter i industrielle applikationer.

Joe Spisak, produktleder for kunstig intelligens hos Facebook AI, fortalte, at selvom han har været tilfreds med stigningen i virksomhedens adoption af PyTorch, er der stadig meget arbejde, der skal gøres for at få bredere adoption af industrien.

”Den næste bølge af vedtagelse kommer med muliggørelse af livscyklusstyring, MLOps og Kubeflow-rørledninger og samfundet omkring det,” sagde han. "For dem tidligt på rejsen er værktøjerne ret gode ved hjælp af administrerede tjenester og nogle open source med noget som SageMaker hos AWS eller Azure ML for at komme i gang."

Disney: Identificering af animerede ansigter i film

Siden 2012 har ingeniører og dataforskere hos mediegiganten Disney bygget det, virksomheden kalder Content Genome, en vidensgraf, der samler indholdsmetadata til at drive maskinindlæringsbaseret søge- og personaliseringsapplikationer på tværs af Disneys enorme indholdsbibliotek.

“Disse metadata forbedrer værktøjer, der bruges af Disney-fortællere til at producere indhold; inspirere iterativ kreativitet i historiefortælling; strømbrugeroplevelser gennem anbefalingsmotorer, digital navigation og indholdsopdagelse og muliggør forretningsinformation, ”skrev Disney-udviklerne Miquel Àngel Farré, Anthony Accardo, Marc Junyent, Monica Alfaro og Cesc Guitart i et blogindlæg i juli.

Før det kunne ske, måtte Disney investere i et enormt projekt til annotering af indhold og henvende sig til sine dataforskere for at træne en automatiseret tagging-pipeline ved hjælp af dyb læringsmodeller til billedgenkendelse for at identificere enorme mængder af billeder af mennesker, tegn og placeringer.

Disney-ingeniører startede ved at eksperimentere med forskellige rammer, herunder TensorFlow, men besluttede at konsolidere omkring PyTorch i 2019. Ingeniører skiftede fra et konventionelt histogram af orienterede gradienter (HOG) -funktionsbeskrivelser og den populære supportvektormaskiner (SVM) -model til en version af objektdetekteringsarkitekturen kaldte regioner med nedviklede neurale netværk (R-CNN). Sidstnævnte var mere befordrende for at håndtere kombinationerne af live action, animationer og visuelle effekter, der er almindelige i Disney-indhold.

”Det er vanskeligt at definere, hvad der er et ansigt i en tegneserie, så vi skiftede til dyb læringsmetoder ved hjælp af en objektdetektor og brugte transferlæring,” forklarede Disney Research engineer Monica Alfaro til. Efter kun et par tusinde ansigter blev behandlet, identificerede den nye model allerede bredt ansigt i alle tre brugssager. Det trådte i produktion i januar 2020.

”Vi bruger kun en model nu til de tre typer ansigter, og det er dejligt at køre til en Marvel-film som Avengers, hvor den skal genkende både Iron Man og Tony Stark eller enhver karakter iført en maske,” sagde hun.

Da ingeniørerne har at gøre med så store mængder videodata for at træne og køre modellen parallelt, ville de også køre på dyre, højtydende GPU'er, når de skiftede til produktion.

Skiftet fra CPU'er tillod ingeniører at træne og opdatere modeller hurtigere. Det fremskyndede også fordelingen af ​​resultater til forskellige grupper på tværs af Disney, hvilket reducerede behandlingstiden ned fra cirka en time til en film med en længde til at få resultater på mellem fem og ti minutter i dag.

"TensorFlow-objektdetektoren bragte hukommelsesproblemer i produktion og var vanskelig at opdatere, mens PyTorch havde den samme objektdetektor og Faster-RCNN, så vi begyndte at bruge PyTorch til alt," sagde Alfaro.

At skifte fra en ramme til en anden var overraskende enkel for ingeniørholdet også. ”Ændringen [til PyTorch] var let, fordi det hele er indbygget, du tilslutter kun nogle funktioner og kan starte hurtigt, så det er ikke en stejl indlæringskurve,” sagde Alfaro.

Da de mødte problemer eller flaskehalse, var det pulserende PyTorch-samfund klar til at hjælpe.

Blue River Technology: Ukrudtsdrabende robotter

Blue River Technology har designet en robot, der bruger en berusende kombination af digital vejfinding, integrerede kameraer og computersyn til at sprøjte ukrudt med herbicid, mens de efterlader afgrøder alene i næsten realtid, hvilket hjælper landmændene mere effektivt med at spare dyre og potentielt miljøskadelige herbicider.

Sunnyvale, Californien-baserede virksomhed fangede øjet hos producenten af ​​tungt udstyr John Deere i 2017, da det blev købt for $ 305 millioner med det formål at integrere teknologien i sit landbrugsudstyr.

Blue River-forskere eksperimenterede med forskellige dybe læringsrammer, mens de forsøgte at træne computersynsmodeller til at genkende forskellen mellem ukrudt og afgrøder, en enorm udfordring, når du har at gøre med bomuldsplanter, der ligner uheldig.

Højtuddannede agronomer blev udarbejdet til at udføre manuelle billedmærkningsopgaver og træne et konvolutionsneuralt netværk (CNN) ved hjælp af PyTorch "til at analysere hver ramme og fremstille et pixel-nøjagtigt kort over, hvor afgrøderne og ukrudtet er," Chris Padwick, direktør for computer vision og maskinindlæring hos Blue River Technology, skrev i et blogindlæg i august.

"Som andre virksomheder prøvede vi Caffe, TensorFlow og derefter PyTorch," fortalte Padwick. ”Det fungerer stort set ud af kassen for os. Vi har overhovedet ikke haft nogen fejlrapporter eller en blokerende fejl. På distribueret beregning skinner det virkelig og er lettere at bruge end TensorFlow, hvilket for dataparallelismer var ret kompliceret. ”

Padwick siger, at populariteten og enkelheden af ​​PyTorch-rammen giver ham en fordel, når det kommer til at øge nye ansættelser hurtigt. Når det er sagt, drømmer Padwick om en verden, hvor ”mennesker udvikler sig i det, de er komfortable med. Nogle kan lide Apache MXNet eller Darknet eller Caffe til forskning, men i produktionen skal det være på et enkelt sprog, og PyTorch har alt, hvad vi har brug for for at få succes. ”

Datarock: Cloudbaseret billedanalyse til minesektoren

Grundlagt af en gruppe geovidenskabere anvender den australske startup Datarock computervisionsteknologi til minesektoren. Mere specifikt hjælper dyb læringsmodeller geologer med at analysere borekerneprøvebilleder hurtigere end før.

Typisk ville en geolog pore over disse prøver centimeter for centimeter for at vurdere mineralogi og struktur, mens ingeniører ville se efter fysiske træk såsom fejl, brud og bjergkvalitet. Denne proces er både langsom og tilbøjelig til menneskelig fejl.

”En computer kan se klipper, som en ingeniør ville,” fortalte Brenton Crawford, COO for Datarock. "Hvis du kan se det på billedet, kan vi træne en model til at analysere den såvel som et menneske."

I lighed med Blue River bruger Datarock en variant af RCNN-modellen i produktion, hvor forskere henvender sig til dataforøgelsesteknikker for at indsamle nok træningsdata i de tidlige stadier.

”Efter den indledende opdagelsesperiode gik teamet i gang med at kombinere teknikker til at skabe en workflow til billedbehandling til drill core-billeder. Dette involverede udvikling af en række dybdelæringsmodeller, der kunne behandle rå billeder til et struktureret format og segmentere de vigtige geologiske oplysninger, ”skrev forskerne i et blogindlæg.

Ved hjælp af Datarocks teknologi kan klienter få resultater på en halv time i modsætning til de fem eller seks timer, det tager at logge fund manuelt. Dette frigør geologer fra de mere besværlige dele af deres job, sagde Crawford. Men "når vi automatiserer ting, der er sværere, får vi en vis tilbagekobling, og vi skal forklare, at de er en del af dette system for at træne modellerne og få den feedback-loop til at dreje."

Som mange virksomheder, der træner dyb læringscomputervisionsmodeller, startede Datarock med TensorFlow, men skiftede snart til PyTorch.

”I starten brugte vi TensorFlow, og det ville kollapse på os af mystiske grunde,” fortalte Duy Tin Truong, leder af maskinlæring hos Datarock. ”PyTorch og Detecton2 blev frigivet på det tidspunkt og passede godt ind i vores behov, så efter nogle tests så vi, at det var lettere at debugge og arbejde med og besatte mindre hukommelse, så vi konverterede,” sagde han.

Datarock rapporterede også en 4x forbedring i inferens ydeevne fra TensorFlow til PyTorch og Detectron2, når modellerne køres på GPU'er - og 3x på CPU'er.

Truong citerede PyTorchs voksende samfund, veldesignede grænseflade, brugervenlighed og bedre fejlretning som årsager til skiftet og bemærkede, at selvom “de er ret forskellige fra et interface-synspunkt, hvis du kender TensorFlow, er det ret nemt at skifte , især hvis du kender Python. ”