Udgivelse af maskinlæringssystem TensorFlow 2.0

Introduceret betydelig udgivelse af maskinlæringsplatform TensorFlow 2.0, som giver færdige implementeringer af forskellige dybe maskinlæringsalgoritmer, en simpel programmeringsgrænseflade til at bygge modeller i Python og en lav-niveau grænseflade til C++ sproget, der giver dig mulighed for at styre konstruktionen og udførelsen af ​​beregningsgrafer. Systemkoden er skrevet i C++ og Python og distribueret af under Apache-licensen.

Platformen blev oprindeligt udviklet af Google Brain-teamet og bruges i Google-tjenester til talegenkendelse, identifikation af ansigter på fotografier, bestemmelse af ligheden mellem billeder, bortfiltrering af spam i Gmail, udvælgelse nyheder i Google Nyheder og organisere oversættelse under hensyntagen til betydningen. Distribuerede maskinlæringssystemer kan oprettes på standardhardware takket være TensorFlows indbyggede understøttelse til fordeling af beregninger på tværs af flere CPU'er eller GPU'er.

TensorFlow giver et bibliotek af færdige numeriske beregningsalgoritmer implementeret gennem dataflowgrafer. Noder i sådanne grafer implementerer matematiske operationer eller input/outputpunkter, mens grafens kanter repræsenterer multidimensionelle dataarrays (tensorer), der flyder mellem noder.
Noder kan tildeles til computerenheder og udføres asynkront, samtidig med at alle tesorer, der er egnede til dem, behandles på én gang, hvilket gør det muligt at organisere den samtidige drift af noder i et neuralt netværk analogt med den samtidige aktivering af neuroner i hjernen.

Hovedfokus ved udarbejdelsen af ​​den nye version var på forenkling og brugervenlighed. Nogle innovationer:

  • En ny API på højt niveau er blevet foreslået til opbygning og træning af modeller Keras, som giver flere grænseflademuligheder til at bygge modeller (sekventiel, funktionel, underklassificering) med mulighed for at øjeblikkelig implementering (uden præ-kompilering) og med en simpel fejlfindingsmekanisme;
  • Tilføjet API tf.distribute.Strategy til organisation distribueret læring modeller med minimale ændringer af eksisterende kode. Ud over muligheden for at sprede beregninger på tværs flere GPU'er, eksperimentel support er tilgængelig til at opdele læringsprocessen i flere uafhængige processorer og muligheden for at bruge cloud TPU (Tensor-behandlingsenhed);
  • I stedet for en deklarativ model for at konstruere en graf med udførelse gennem tf.Session, er det muligt at skrive almindelige funktioner i Python, som ved hjælp af et kald til tf.function kan konverteres til grafer og derefter fjernafvikles, serialiseres eller optimeres for forbedret ydeevne;
  • Tilføjet oversætter Autograf, som konverterer en strøm af Python-kommandoer til TensorFlow-udtryk, hvilket tillader Python-kode at blive brugt i funktionerne tf.function-decorated, tf.data, tf.distribute og tf.keras;
  • SavedModel forener modeludvekslingsformatet og tilføjer understøttelse til lagring og gendannelse af modeltilstande. Modeller kompileret til TensorFlow kan nu bruges i TensorFlow Lite (på mobile enheder), TensorFlow JS (i browser eller Node.js), TensorFlow-servering и TensorFlow Hub;
  • tf.train.Optimizers og tf.keras.Optimizers API'erne er blevet forenet; i stedet for compute_gradients er en ny klasse blevet foreslået til beregning af gradienter Gradient tape;
  • Markant øget ydeevne ved brug af GPU.
    Hastigheden af ​​modeltræning på systemer med NVIDIA Volta og Turing GPU'er er steget op til tre gange;

  • Udført Større API-oprydning, mange kald omdøbt eller fjernet, understøttelse af globale variabler i hjælpemetoder stoppet. I stedet for tf.app, tf.flags, tf.logging foreslås en ny absl-py API. For at fortsætte med at bruge den gamle API er compat.v1-modulet blevet forberedt.

Kilde: opennet.ru

Tilføj en kommentar