Masinõppe süsteemi TensorFlow 2.0 väljalaskmine

Esitletud tähtis masinõppe platvormi väljaanne TensorFlow 2.0, mis pakub valmislahendusi erinevatele sügava masinõppe algoritmidele, lihtsat programmeerimise liidest mudelite loomiseks Pythonis ning madala taseme liidest C++-s, mis võimaldab juhtida arvutusgraafide koostamist ja täitmist. Süsteemi kood on kirjutatud C++ ja Pythonis ning GNU Üldine Avaliku litsentsi alusel. on Apache litsentsi all.

Platvorm on algselt välja töötanud Google Braini meeskond ja seda kasutatakse Google'i teenustes kõne äratundmiseks, nägude tuvastamiseks fotodel, piltide sarnaste määramiseks, rämpsposti filtreerimiseks Gmailis, uudiste valimiseks Google Newsis ja tõlgete organiseerimiseks tähenduse põhjal. Masinõppe jaotatud süsteeme saab luua tavapärasel riistvaral, tänu TensorFlow sisseehitatud toele arvutuste hajutamiseks mitmele CPU-le või GPU-le.

TensorFlow pakub valmis algoritmide teeki, mis on realiseeritud andmevoo graafide kaudu (data flow graphs). Selliste graafide sõlmed viivad läbi matemaatilisi operatsioone või sisendi/väljundi punkte, samas kui graafi servad esindavad mitmemõõtmelisi andmevorme (tensors), mis voolavad sõlmede vahel.
Sõlmed võivad olla seotud arvutusseadmetega ja töötada asünkroonselt, töötledes samal ajal kõiki sobivaid tense, mis võimaldab sõlmede samaaegset toimimist närvivõrgus, sarnaselt neuronite samaaegse aktiveerimisega ajus.

Uue versiooni ettevalmistamisel keskenduti eelkõige lihtsustamisele ja kasutusmugavusele. Mõned uuendused:

  • Mudelite loomiseks ja koolitamiseks on ette nähtud uus kõrgema taseme API Keras, mis pakub mitmeid mudelite loomise liidese variante (Sequential, Functional, Subclassing), võimaldades nende kohest käivitamist ilma eelneva kompileerimiseta ja lihtsa vigade leidmise mehhanismiga;
  • Lisatud API tf.distribute.Strategy jaotatud õpetamise korraldamiseks jaotatud õppimine mudelid, mille puhul on minimaalne olemasoleva koodi muutmine. Lisaks on võimalik arvutuste jagamine mitmele GPU-le, on olemas eksperimentaalne tugi, mis võimaldab jagada õppeprotsessi mitmele sõltumatule töötlejale ja kasutada TPU-d (Tensori töötlemise seade);
  • Deklaratiivse graafimudeli asemel, mida täidetakse tf.Session abil, on võimalus kirjutada tavalisi funktsioone Python keeles, mis kutsumise kaudu tf.function võivad muutuda graafideks ja seejärel kaugelt täidetud, serialiseeritud või optimeeritud jõudluse suurendamiseks;
  • Additiivne tõlkija AutoGraph, mis muudab Python käsu voogu TensorFlow väljenditeks, mis võimaldab kasutada Python koodi tf.function-kategooriaga, tf.data, tf.distribute ja tf.keras funktsioonides;
  • SavedModelis on ühtlustatud mudelite vahetamise formaat ja lisatud tugi mudelite oleku salvestamiseks ja taastamiseks. Nüüd saavad TensorFlow jaoks kokku pandud mudelid töötada TensorFlow Lite (mobiilseadmetes), TensorFlow JS (brauseris või Node.js-is), TensorFlow Serving ja TensorFlow Hub;
  • Ühtlustatud API-d tf.train.Optimizers ja tf.keras.Optimizers, arvutuste jaoks on sisse toodud uus klass compute_gradients. GradientTape;
  • GPU-de kasutamisel on jõudlus oluliselt paranenud.
    Mudelite õppekiirus NVIDIA Volta ja Turing süsteemides on tõusnud kuni kolme korda;
  • Tehtud API on suurem puhastus: paljusid funktsioone on ümber nimetatud või eemaldatud, globaalsed muutujad abifunktsioonides on eemaldatud. Uue API absl-py on välja pakutud tf.app, tf.flags, tf.logging asemel. Vanade API-de jätkuvaks kasutamiseks on loodud module compat.v1.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster