lansare semnificativă a platformei de învățare automată , care oferă implementări gata făcute ale diverselor algoritmi de învățare profundă, o interfață de programare simplă pentru construirea modelelor în Python și o interfață de nivel scăzut pentru C++, permițând gestionarea construirii și execuției grafurilor computaționale. Codul sistemului este scris în limbajele C++ și Python și sub licența Apache.
Platforma a fost inițial dezvoltată de echipa Google Brain și este folosită în serviciile Google pentru recunoașterea vorbirii, detectarea fețelor în fotografii, determinarea similitudinii imaginilor, filtrarea spamului în Gmail, știrilor în Google News și organizarea traducerii având în vedere sensul. Sistemele distribuite de învățare automată pot fi construite pe echipamente standard, datorită suportului încorporat în TensorFlow pentru dispersarea calculelor pe mai multe CPU sau GPU.
TensorFlow oferă o bibliotecă de algoritmi gata făcuți pentru calcule numerice, implementați prin grafuri de flux de date (data flow graphs). Nodurile din aceste grafuri implementează operații matematice sau puncte de intrare/ieșire, în timp ce muchiile grafului reprezintă array-uri multidimensionale de date (tenzori) care curg între noduri.
Nodurile pot fi legate de dispozitive de calcul și pot fi executate asincron, procesând simultan toate tenzorii care se potrivesc cu ele, ceea ce permite organizarea activității simultane a nodurilor într-o rețea neurală, analog cu activarea simultană a neuronilor în creier.
Atenția principală în pregătirea noii versiuni a fost acordată simplificării și ușurinței de utilizare. :
- Pentru construirea și antrenarea modelelor a fost propus un nou API de nivel înalt , care oferă mai multe opțiuni de interfețe pentru construirea modelelor (Secvențial, Funcțional, Subclassing) cu posibilitatea de (fără compilare prealabilă) și cu un mecanism simplu de depanare;
- A fost adăugat API pentru organizarea modelelor cu modificări minime ale codului existent. Pe lângă posibilitatea de a dispersa calculele pe , este disponibilă o suport experimental pentru dispersarea procesului de învățare pe mai multe procesatoare independente și posibilitatea de a folosi (unitate de procesare a tensului);
- În locul modelului declarațional de construcție a graficului executat prin tf.Session, a fost introdusă posibilitatea de a scrie funcții obișnuite în limbajul Python, care prin apelarea tf.function pot fi transformate în grafice și apoi executate la distanță, serializate sau optimizate pentru a crește performanța;
- A fost adăugat traducătorul , care transformă fluxul de comenzi Python în expresii TensorFlow, ceea ce permite utilizarea codului în limbajul Python în cadrul funcțiilor decorate cu tf.function, tf.data, tf.distribute și tf.keras;
- În SavedModel s-a unificat formatul de schimb al modelelor și a fost adăugat suportul pentru salvarea și restaurarea stării modelelor. Modelele construite pentru TensorFlow pot fi acum utilizate în (pe dispozitive mobile), (în browser sau Node.js), și ;
- API-urile tf.train.Optimizers și tf.keras.Optimizers au fost unificate, în loc de compute_gradients pentru calcularea gradientelor a fost propusă o nouă clasă ;
- Performanța utilizării GPU-ului a crescut semnificativ.
Rata de învățare a modelelor pe sisteme cu GPU NVIDIA Volta și Turing a crescut de până la trei ori; - o curățare majoră a API-ului, multe apeluri au fost redenumite sau eliminate, suportul pentru variabile globale în metodele auxiliare a fost întrerupt. În loc de tf.app, tf.flags, tf.logging a fost propus un nou API absl-py. Pentru a continua utilizarea vechiului API, a fost pregătit modul compat.v1.
Sursa: opennet.ro
