Nul
Udgivelsen af PyTorch 1.0 beta var en del af de store nyheder i sidste uge, er machine learning (ML) oktober fest, sammen med hurtigt.ai, Neuton, og MLFlow. Med AI er, hvad det er i dag, og machine learning kraftoverførsel en god del af, hvad der foregår der, såsom nyheder medføre krusninger uden for ML-fællesskabet.
Også: Facebook open-source AI ramme PyTorch 1.0 frigivet
I sidste uge ‘ s Gnist AI Summity Europa, havde vi chancen for at diskutere med nogle af de rock stjerner af dette fællesskab. MLFlow ‘s nye version blev præsenteret i Databricks CEO Matei Zaharia’ s keynote, og PyTorch 1.0, som blev præsenteret i Facebook AI Forskning Ingeniør Soumith Chintala ‘ s keynote.
Chintala er skaberen, og projektet føre til PyTorch, en af de øverste machine learning rammer. Efter sin keynote, ZDNet fanget op med Chintala om en række emner, der spænder fra Facebook ‘ s motivation og strategi for PyTorch, til detaljerne for at bruge det.
Hvor mange machine learning rammer skal verden?
Det lyder måske som en triviel spørgsmål at stille, men vi følte, at vi var nødt til at få det ud af den måde: Hvad var tanken bag Facebook at deltage og investere ressourcer i sin egen ML ramme med PyTorch? Især i betragtning af, at der er en anden ML ramme, støttet af Facebook, Caffe2.
For cloud-leverandører som AWS, Google eller Microsoft, der er et meget klart incitament: Jo mere folk bruger deres ML rammer, jo mere beregning og lagring ressourcer, der i sidste ende vil hælde mod deres respektive skyer. Men hvad stakes gør Facebook har i dette spil? Hvorfor dedikere de ressourcer, — human-og ellers — nødvendige for at udvikle og vedligeholde ikke én, men to ML rammer, og hvor er det hen?
Også: Hurtig.ai-software kan radikalt demokratisere AI
Den tænkning, der ligger bag, det var ikke frem, som du måske tror, sagde Chintala. Han og PyTorch hold satte sig for at bygge dette er simpelthen fordi de er stædig og ville have noget skåret ud til deres behov:
“Google’ s TensorFlow blev udgivet i 2015. Vi har prøvet at bruge det, men var ikke super tilfreds med det. Før dette, forsøgte vi Caffe1, Theano, og Fakkel. På det tidspunkt var vi bruger Fakkel og Caffe1 for forskning og produktion. Området har ændret sig meget, og vi følte, at et nyt værktøj, som var nødvendigt. Lignede ingen andre var ved at bygge det, er ikke den måde, vi troede, at der vil blive behov for i fremtiden.
Så vi følte, at vi skulle bygge det. Vi viste, at det for nogle mennesker, og de kunne lide det. Der er en stærk open source-kultur i Facebook, så åbner vi indkøbt det, og det tog fart. Men målet var for det meste at gøre os selv lykkelige. Det var ikke fordi vi ikke ønsker at stole på Google eller Microsoft.”

Soumith Chintala er et Forsknings-Ingeniør på Facebook AI Forskning og skaberen af PyTorch. Hans motivation for at skabe det? At have noget, der virker i forhold til hans behov.
Chintala nu arbejder fuld tid på PyTorch, og hans team er der noget mellem 10 og 15 personer. Selv om intellektuel nysgerrighed og udtalelser kan tage skridt til at skabe PyTorch, det forklarer ikke, hvorfor Facebook kan tildele disse folk til at arbejde på PyTorch i det lange løb. Eller gør det?
Også: Opstart bruger AI og machine learning til real-time baggrundstjek
Chintala os tage er, at nogle mennesker ville have til at være tildelt på noget som dette alligevel. Hvis PyTorch ikke var blevet skabt, den anden mulighed ville være at justere nogle af de eksisterende rammer, som ville ende med at kræve de samme ressourcer. Men så, hvad om Caffe2? Hvorfor opretholde 2 ML rammer?
Machine Learning i Facebook AI Forskning og produktion
Første off, PyTorch er nu officielt en Facebook ML ramme til at styre dem alle. PyTorch 1.0 markerer foreningen af PyTorch og Caffe2. Gå fremad, Chintala forklaret, valg var at bruge PyTorch for den forreste ende, og Caffe2 til back-end. Dette betyder, at der ikke sker ændringer for brugere af tidligere versioner af PyTorch, men Caffe2 forreste ende vil blive forældet, og folk bliver nødt til at skifte til PyTorch.
Også: Facebook fremskridt inden for computer vision hjælp hashtagged billeder
Dette har at gøre med filosofi og mål i hver ramme. PyTorch var henvendt til forskere, der har brug for fleksibilitet. Caffe2 var rettet mod kører i produktion i stor skala-noget som 300 billioner slutninger om dagen, som Chintala er angivet. Som du kan forestille dig, at sammenlægge de to var ingen let sag:
“Det er ikke bare en sammenlægning af to codebases, men to projekter og filosofier. Det sværeste var stadig den tekniske, men kultur var en tæt andenplads. Det var for det meste om, hvordan de rammer, der udvikler sig, og hvilke behov de henvender sig til.
Ved produktion skala, kode, har forskellige behov og egenskaber, så når du opbygger for forskning, hvor du ønsker alle at være i stand til at udtrykke deres ideer og være så kreativ som muligt,” Chintala sagde.
Facebook AI Forskning har mere end 100 forskere, der arbejder på forskellige projekter. Open source og publicering er nøglen til dens filosofi, ifølge Chintala.
Denne skelnen blev også udtalt, når man diskuterer infrastruktur folk på Facebook AI Forskning (FAIR) brug. FAIR beskæftiger mere end 100 mennesker. Chintala bemærkede, at du kan se folk, der laver forskning på deres bærbare computere, og at han personligt bruger lokal disk til opbevaring en masse, da det gør det lettere for ham at arbejde med filer. Men det er virkelig afhænger af projektet.
“Vi bruger også Hive, Presto, og Spark. Nogle projekter virkelig skubbe grænserne for skala, og for dem, vi bruger organisatoriske infrastruktur,” Chintala sagde.
Også: 10 måder AI vil påvirke virksomheden i 2018 TechRepublic
En anden ting, som FAIR gør en masse, ifølge Chintala, er offentliggøre. Ikke bare kode, men også forskning papirer og data:
“I grundlæggende forskning, du er nødt til at arbejde sammen med kammerater i fællesskab, ellers får du siloed. Du tror måske, du arbejder på noget fantastisk, og så udgive det fem år senere, og indse, at det er forfærdeligt. Vi har fokus på at åbne datasæt, og udgiv med det samme. Og vi skal også udnytte graf strukturer, til en vis grad.
For eksempel, vi bruger Wikipedia til spørgsmål at svare. Dens struktur er grafen, og der også er struktureret version, DBpedia. Vi gør en masse forskning på dialog og spørgsmål at besvare. For disse vi bruger sms-datasæt, og vi syntetiserer vores egen. I vision, vi bruger i stor skala vision datasæt.
Et andet eksempel er, hvordan vi bruger hashtags til at forbedre oversættelse. Vi kan have billeder med mange hashtags at beskrive den samme ting på forskellige sprog, og vi integrere billeder og hashtags i en graf, struktur og derefter arbejde på oversættelsen. Selvom vi gør sådanne ting, en masse, jeg ikke kan huske at have arbejdet med Facebook ‘s sociale graf”.
Lavt niveau, højt niveau, og påståelig åbenhed
På Gnist AI-Topmødet scene, Chintala viste mange af detaljerne i arbejdet med PyTorch. Hvad gjorde indtryk på os var, at der for det utrænede øje, mange af koden fragmenter, der Chintala anvendes syntes ganske rå og lavt niveau. Men det er tilsigtet, og der er højere niveau genveje så godt, som Chintala forklaret.
Lad os tage opbygning af et neuralt netværk, for eksempel. I PyTorch, dette gøres via en funktion, der ser en smule rodet. Men ifølge Chintala, dette er, hvad folk ønsker:
“Dette er en af de største årsager til, hvorfor folk bruger PyTorch. Denne funktion beskriver et neuralt netværk. Det kan ikke være godt struktureret, men det er, hvor folk får deres udtryksfuldhed fra. Vores målgruppe er godt bekendt med dette, og de ønsker at bruge det på denne måde.
Lad os sige, at du ønsker at opbygge en tilbagevendende neurale netværk, og du har nogle tidsserier, du skal bruge. I andre rammer, du skal bruge en API, kan du konstruere en tidsserie, osv. I PyTorch, skal du blot bruge en for-løkke. Brugere finder denne mere intuitiv, fordi der ikke er nogen ekstra skridt for – du skal bare skrive koden.”
Ikke alt skal være lav-niveau, dog. Chintala påpegede, at for state of the art-modeller, såsom ResNet50, der er one-liners, at indkapsle dem og kan bruges i koden. PyTorch også leveres med en bred vifte af pre-uddannet modeller (“model zoo”), out-of-the-box fordelt kapaciteter og integration med probabilistisk programmering, maskinoversættelse, natural language processing, og meget mere.
Også: AI betyder en levetid på uddannelse CNET
Lejlighedsvis, kan disse ser bedragerisk enkle. Kunne dette være et problem? For eksempel, når fremvisning PyTorch er indvinding til distribueret dyb læring, det var svært at tro, at alle de praktiske grynet detaljer kan varetages af én linje kode: Hvor er de datasæt kommer fra, på hvilken node bliver hver del, og så videre.
I dette tilfælde, Chintala forklaret, at brugerne kan gribe ind på et lavere niveau og finjustere data læssemaskiner, for eksempel. Men tanken her var, at det i 90 procent af de tilfælde, der er en struktureret, godt dannet mønster for, hvordan de fleste mennesker gør fordelt dyb læring, og den one-liner er bygget til at udnytte dette. Og det synes at fungere godt, i betragtning af den næsten perfekt lineær skalering i grafen Chintala fælles.
Dette er, hvordan du opretter et neuralt netværk i PyTorch. Det kan synes lavt niveau til dig, men det er præcis, hvordan dens skabere ville have det til at være.
Så på trods af det faktum, at PyTorch er stædig, det ser ud som dens skabere har forsøgt at finde en balance med evnen til at rumme forskellige brugsmønstre, i det mindste til en vis grad. Som Chintala bemærkes, at et af målene var at gøre PyTorch en pakke nogen i Python økosystem kan bruge, uanset hvad, de kan bruge i øjeblikket.
Også: Hvordan Facebook skalaer AI
Hele Python økosystem kan bruges er PyTorch løfte. I virkeligheden, at der er en mekanisme, der kaldes nul-hukommelse kopi i stedet for at lette dette:
“Vi har ikke den ‘ikke opfundet her’ syndrom. Du kan tage en PyTorch tensor, og slut det til NumPy. Det virker ved at skabe en NumPy struct i C, og derefter direkte ved hjælp af en markør på det. Alt du behøver at gøre er et meget billigt, næsten gratis, drift – forespørgsel C struct. I NumPy mange mange ting er gjort i C, og vi bruger det også.”
Dette kan synes som en trivialitet, men det går til at vise den tænkning, der ligger bag PyTorch. Højt og lavt niveau, meninger og åbenhed hænger sammen, eller en balancegang. I alle retfærdighed, meget af open source-udvikling, forskning og Facebook selv for den sags skyld, gå lignende fine linjer. Dette kan hjælpe verden med at drage fordel af den nyeste forskning inden for RETFÆRDIG, samt FAIR forskerne holde op til dato, med det bredere samfund.
Tidligere og relaterede dækning:
Hvad er AI? Alt, hvad du behøver at vide
En executive guide til kunstig intelligens, fra machine learning og generelt AI til neurale netværk.
Hvad er dyb læring? Alt, hvad du behøver at vide
Den lowdown på en dyb læring: fra hvordan det relaterer til det bredere felt af machine learning igennem til, hvordan du kommer i gang med det.
Hvad er machine learning? Alt, hvad du behøver at vide
Denne vejledning forklarer, hvad machine learning er, hvordan det er relateret til kunstig intelligens, hvordan det fungerer, og hvorfor det er vigtigt.
Hvad er cloud computing? Alt, hvad du behøver at vide om
En introduktion til cloud computing-lige fra det grundlæggende op til IaaS og PaaS, hybrid, offentlige og private cloud.
Relaterede historier:
Der er ingen rolle for AI eller data videnskab: dette er en holdindsats Start Slægt bringer splint af håb for AI i robotteknologi AI: udsigt fra Chief Data Videnskab Kontor Salesforce-introer Einstein Stemme, en AI stemme assistent for virksomheder er det ikke Det job AI er ødelæggende for at genere mig, det er dem, der er voksende
Relaterede Emner:
Open Source
Digital Transformation
CXO
Tingenes Internet
Innovation
Virksomhedens Software
0