Uvod u Tensorflow
Tensorflow je softver i knjižnica otvorenog koda. Razvio ga je tim Google Brain, koji je sagradio istraživački tim za umjetnu inteligenciju na googleu 2010. Google ga je koristio za internu upotrebu nakon što je objavljen pod Apache2.0 Open source - 2015. U ovoj temi idemo na saznajte više o osnovama Tensorflowa.
Tensorflow je googleov mozak druge generacije sustava. Verzija 1 objavljena je 11. veljače 2017. Tensorflow 1.0 sada je imao Python API i API za java, a GO jezik je također dodan u verziju 1.0. Tensorflow operacije neuronske mreže izvedene na višedimenzionalnom nizu podataka, koji se naziva tenzor. Djeluje s Tenzorima. To je softverska knjižnica za dubinsko učenje i uglavnom radi za numeričko računanje koristeći grafikone protoka podataka.
Što su Tensorflow osnove?
Tenzori su objekti koji opisuju linearni odnos između vektora, skalara i ostalih tenzora. Tenzori nisu ništa drugo do višedimenzionalni niz.
Tensorflow pruža podršku za pisanje koda prema vašim zahtjevima i pristup različitim vrstama alata. Možemo napisati kod C ++ i nazvati C ++ kod sa pythona. Ili možemo napisati python kod i nazvati ga C ++.
Gledano iznad slike, najniži sloj koji podržava dva jezika prvo je jezik Python, a drugi jezik C ++. Možete ga napisati na bilo kojem jeziku u vašoj zoni komfora. Sadrži zbirku različitih matematičkih knjižnica koje pomažu u jednostavnom stvaranju matematičkih funkcija.
Također nudi podršku za obradu poput CPU-a, GPU-a, TPU-a, a također radi i na android mobitelima.
Tf.layers : - tf.layers se koristi za apstraktnu metodu tako da možete prilagoditi slojeve neuronskih mreža.
Tf.estimator : - najčešće se koristi API u tensorflowu je tf.estimator. To vam pomaže u stvaranju i obuci, testiranju vašeg modela.
Ugradnja Tensorflowa
- Prvo provjerite verziju svoje datoteke, ako nije najnovija, a zatim pokrenite sljedeću naredbu za nadogradnju pipa
pip install - nadogradnja pip
- Pokrenite ispod koda za instaliranje jednostavnije verzije Tensorflowa
pip instalacija tensorflow / conda ugradnja tensorflow (Anaconda)
- Ovo će instalirati Tensorflow s konfiguracijama koje podržava gpu.
pip instalirati Tensorflow-gpu
Primjer tf.estimatora za upotrebu klasifikatora po 3 retka koda
Import tensorflow as tf
classifier = tf.estimator.LinearClassifier(feature_columns)
classifier.train(input_fn=train_input_function, steps=2000)
predictions = classifier.predict(input_fn=predict_input_function)
Osnovni tipovi podataka Tensorflowa
Osnovni tipovi podataka u Tensorflow okviru (Tenzori)
Ispod je prikazana svaka dimenzija tenzora.
- Skalarno - o dimenzijski niz
- Vektor - 1 dimenzionalni niz
- Matrica - 2 dimenzionalni niz
- 3D tenzor - trodimenzionalni niz
- N - D tenzor - N-dimenzionalni niz
Stalni tenzori
Varijable
tf.Variable klasa, za stvaranje varijable u tensorflowu i pozivanje funkcije tf.get_variable
Inicijalizacija varijabli
Da inicijaliziramo varijable, pozivanjem tf.global_variables_initializer možemo inicijalizirati sve varijable.
Jednostavni primjer varijabilnih i matematičkih izraza
Normalan način
a = 3, 0, b = 8 * a +10
Tensorflow način
c = tf.Variable (tf.add (tf.multiply (X, a), b)
grafovi
Svaki redak našeg koda napisan u tensorflowu pretvara se u temeljni grafikon
Primjer:
- Čvorovi: Predstavlja matematičke operacije.
- Rubovi: predstavlja višedimenzionalni niz (tenzori) i pokazuje kako oni međusobno komuniciraju.
Tensorflow 2.0
- U drugoj verziji Tensorflowa usredotočili su se na to da API učini jednostavnijim i jednostavnijim za korištenje.
- API komponente se bolje integriraju s Kerasom, prema zadanim postavkama aktiviran je željni način izvršenja.
- Način čekanja: Eager izvedba je pokrenuto sučelje gdje se operacije izvršavaju odmah kako se zovu iz Pythona.
- Možemo koristiti željni način rada umjesto grafičkog. Možemo izračunati ono što trebamo izračunati i odmah možemo dobiti rezultate. To će Tensorflow učiniti jednostavnijim od Pytorcha
- Usredotočenost na uklanjanje duplikata API-ja.
Keras
- Tensorflow pruža API visoke razine za izgradnju i obuku modela dubokog učenja. Ovo nije uključeno u tensorflow, ali u najnovijem izdanju Keras je uvršten u Tensorflow 2.0.
- Jednostavan za korisnika: Keras nudi jednostavno, dosljedno sučelje za slučajeve uobičajene uporabe.
- Modularan i komponovan: Kerasovi modeli izrađeni su spajanjem građevnih blokova zajedno.
- Lako za proširenje: Stvaranje ili ažuriranje novih slojeva, mjernih podataka, gubitak funkcija
- Za upotrebu Kerasovih modela koristite tf.keras.
Tensorflow Lite
- Godine 2017. Google je objavio softver posebno izrađen za razvoj mobilnih uređaja, Tensorflow Lite.
- Tensorflow Lite (TFLite) lagano je rješenje za zaključivanje mobilnih uređaja.
- Također ga možemo koristiti za IOS i Android izradom C ++ API-ja, kao i Java omot klase za Android programere.
Popis algoritama koji Tensorflow podržava
1. Za regresiju
- Linearna regresija (tf.estimator. Linearna regresija)
- Regresija stabla za potiskivanje (tf.estimator. Pojačani regresor stabla)
2. Za razvrstavanje
- Razvrstavanje (tf.estimator. Linearni klasifikator)
- Kombinirano duboko učenje (tf.estimator. DNNLinearCombinedClassifier)
- Pojačani klasifikator stabala (tf.estimator. Pojačani klasifikator stabala)
Značajke Tensorflowa
- Tensorflow djeluje učinkovito s različitim vrstama matematičkih izraza koji uključuju višedimenzionalne nizove (tenzori)
- Također pruža podršku za neuronske mreže dubokog učenja i ostale koncepte strojnog učenja.
- Tensorflow može raditi na više CPU-a i GPU-a.
- Osigurava i vlastitu procesorsku snagu koja je tenzorska procesna jedinica.
Jedinica za obradu tenzora (TPU)
- Google je najavio svoju Tensor procesorsku jedinicu (TPU) specifičan za aplikaciju integrirani krug (Hardverski čip), izgrađen posebno za strojno učenje i prilagođen Tensorflowu.
- Godine 2017. Google je najavio drugu verziju Tensorflowa, kao i dostupnost TPU-ova u google oblaku.
- TPU je programirljivi AI akcelerator i izgrađen za korištenje ili pokretanje modela. Google upravlja TPU-ovima unutar svojih podatkovnih centara više od godinu dana.
Edge TPU
- Edge TPU je čip koji googles izrađuje za dizajnirane i pokrenute Tensorflow Lite modele strojnog učenja (ML) kako bi se izvodili na malim računalnim uređajima poput pametnih telefona.
- Velika skalabilnost za računanje ogromnih skupova podataka
- Također može trenirati i služiti modele u živom modelu. Prepisivanje koda nisam potrebno
Zaključak - Osnove Tensorflowa
Tensorflow je vrlo često korištena knjižnica dubokog učenja. To se uglavnom koristi u stvaranju neuronskih mreža, koje također koriste startup tvrtke, velike tvrtke.
Kao što je gore spomenuto, Google također koristi tensorflow u svoje interne svrhe, i dalje ga koristi u većini svih vrsta proizvoda poput Gmail i Google pretraživača.
Preporučeni članci
Ovo je vodič o osnovama Tensorflowa. Ovdje smo raspravljali o Instalaciji Tensorflowa sa značajkama i Popisom algoritama koji Tensorflow podržava. Možete pogledati i sljedeći članak da biste saznali više -
- Što je TensorFlow?
- TensorFlow alternative
- Uvod u Tensorflow
- Kako instalirati TensorFlow
- C ++ Vrste podataka