Het AI-team van Facebook verplaatst al zijn machine learning-modelimplementatie naar het PyTorch-framework en standaardiseert het framework voor ontwikkeling, zei het bedrijf woensdag tijdens zijn F8 jaarlijkse ontwikkelaarsevenement, dit jaar virtueel gehouden.
“We zijn nu op het punt beland waarop we al onze workloads op PyTorch standaardiseren”, zei de CTO van het AI-team, Mike Schroepfer, tijdens een persconferentie.
In een soort strijd van de onderzoekers tegen de ontwikkelaars, kwam de beslissing pas nadat Schroepfer en het team op het idee kwamen van Facebook AI's hoofd onderzoek, Yann LeCun, volgens Schroepfer.
“Ik heb een lange tijd een slepend en slepend debat gehad met Yann LeCun”, legt Schroepfer uit.
“Misschien is AI zoiets als, ik maak er een prototype van met een 3D-printer, en als we eenmaal weten wat we willen, gieten we het in beton, en dus hebben we een totaal aparte gereedschapsketen voor productie” om prestatieredenen. LeCun, aan de andere kant, had erop aangedrongen dat één tool zowel voor onderzoek als voor productie zou kunnen werken.
Het meningsverschil heeft betrekking op de geschiedenis van PyTorch, dat in 2016 door Facebook werd geïntroduceerd.
PyTorch is een bibliotheek met machine learning-functies die gedeeltelijk in de programmeertaal Python zijn geschreven, maar met veel C++. Het is aangepast vanuit een bestaand framework, Torch, als alternatief voor frameworks zoals Theano, Caffe en Google's TensorFlow. De software heeft momenteel een stabiele build van 1.8.1.
Ook: Facebook F8 Refresh: Alle belangrijke aankondigingen
De primaire waarde van PyTorch is van oudsher de gebruikerservaring, merkte Schroepfer op, om eenvoudig te bouwen en te debuggen. Dat won het loyaliteit van onderzoekers zoals LeCun die neurale netwerken snel willen herzien, testen en opnieuw herzien. Het was echter langzamer dan veel programmeertools die speciaal zijn gebouwd voor de hoogste prestaties.
Dus, ondanks zijn waarde voor onderzoek, had Facebook een mix van frameworks gebruikt voor onderzoek en productie, zei Schroepfer, waarbij Caffe 2 de op één na meest voorkomende in gebruik was binnen het bedrijf. Er zijn ook verschillende “domeinspecifieke frameworks” in gebruik geweest, zei hij.
Het bleek, zei Schroepfer, dat ondanks dat PyTorch niet altijd de snelste bibliotheek is, “productie-ingenieurs gebruik willen maken van de nieuwste onderzoeken.” Steeds meer problemen werden door de onderzoekers opgelost, legde hij uit.
Grote AI-modellen voor spraakherkenning of natuurlijke taalverwerking zijn “meestal bovenop PyTorch gebouwd”, merkte Schroepfer op, niet alleen bij Facebook, maar ook bij andere bedrijven en in de academische wereld. “Vaak hebben ze GitHub-repositories in PyTorch.”
Ook: Hoge energie: Facebook's AI-goeroe LeCun verbeeldt AI's volgende grens
Momenteel wordt 93% van de AI-modellen van Facebook geïmplementeerd met PyTorch.
Het punt van standaardisatie is volgens Schroepfer om de AI-ontwikkeling en implementatie van Facebook in een verscheidenheid aan applicaties te versnellen door het grootste deel van de inspanning van het bedrijf in één bibliotheek samen te vouwen.
Ingenieurs bij Facebook “hebben nu deze toolbox met ultramoderne modellen binnen handbereik die ik veel sneller in productie kan nemen omdat ze zijn gebouwd op dezelfde toolchain die ik gebruik om websites te bouwen en te verzenden tegen een miljard gebruikers”, zei hij.
“Wat je zag toen je dit soort consolidatie in een enkele tool kreeg, is gewoon een enorme verbuiging in het vermogen van mensen om hun werk gedaan te krijgen en aan het werk te gaan .”
Toegevoegd Schroepfer: “Naarmate de industrie dit soort tools verder standaardiseert, zal het ons vermogen om niet alleen onderzoekspapers over dit soort dingen te schrijven, alleen maar verder versnellen, maar deze tools ook in de wereld krijgen om echte mensen te helpen. ”
Onder de motorkap moesten Schroepfer en team dingen doen om PyTorch te helpen.
Ze voeren bijvoorbeeld een programma uit met de naam TorchScript dat runtime-optimalisatie mogelijk maakt. “Laat me code schrijven zoals ik wil in Python, maar als ik het correct label, kunnen we deze echt coole optimizer op de achtergrond draaien om het efficiënter te maken.”
“We hebben hier langzaam het gat gedicht”, zei hij over PyTorch die werd versterkt.
“Ik ben verrast door het resultaat dat deze tool, die begon met gebruiksgemak, experimenten en behendigheid, zijn weg naar productie heeft gevonden”, zei Schroepfer.
“Yann had gelijk, ik had ongelijk”, zei hij.
Gevraagd of Facebook AI de voordelen van diversiteit zou verliezen door te standaardiseren, verduidelijkte Schroepfer dat onderzoek nog steeds kan spelen met alle nieuwe dingen die het wil.
“Onze onderzoeksteams hebben veel vrijheid om te experimenteren, en ze experimenteren altijd met nieuwe technologieën, en zo is PyTorch in de eerste plaats ontstaan”, zei hij.
Verwante onderwerpen:
Ontwikkelaar Digitale Transformatie CXO Internet of Things Innovatie Enterprise Software