Inleiding tot TensorFlow
In dit artikel zien we een overzicht van TensorFlow Architecture. TensorFlow is een platformonafhankelijke bibliotheek en er zijn enkele veelgebruikte concepten zoals bewerkingen, sessies en berekeningsgrafieken. TensorFlow Serving maakt nieuwe algoritmen en experimenten eenvoudig te implementeren met behoud van dezelfde database-architectuur en API's.
Wat is Tensorflow-architectuur?
Tensorflow is een veelgebruikte deep learning-bibliotheek, die is gebouwd door het Google-hersenteam dat werkte aan kunstmatige intelligentie. Het is ontwikkeld omdat het kan worden gebruikt op meerdere CPU's, GPU's en ook kan worden uitgevoerd op mobiele apparaten en ondersteunt verschillende wrapper-klassen zoals python, C ++ of Java en Tensors, objecten die de lineaire relatie tussen vectoren, scalars en andere tensoren beschrijven .
Tensoren zijn niets anders dan multidimensionale arrays. Om de TensorFlow-architectuur en -functies te begrijpen, moeten we eerst enkele termen begrijpen.
- Tensorflow-servables
- Servable-versies
- Servable Streams
- Tensorflow-model
- Tensorflow-laders
- Tensorflow Bronnen
- Tensorflow Manager
- Tensorflow Core
- Life of Servable
- Batcher in Tensorflow-architectuur
1. Tensorflow-servables
- Tensorflow Servables zijn veelvoorkomende objecten die voornamelijk worden gebruikt om berekeningen uit te voeren. De grootte van de TensorFlow-service is zeer flexibel. Servables zijn centrale niet-voltooide eenheden in TensorFlow-portie.
- Een service-eenheid kan van alles bevatten, zoals tuples, opzoektabellen. Servable-objecten kunnen van elk type en elke interface zijn, vanwege deze functies is het zeer flexibel en gemakkelijk om toekomstige verbeteringen aan te brengen, zoals asynchrone bewerkingsmodi, streamingresultaten en experimentele API's.
2. Servable-versies
- Servable-versies worden gebruikt voor het onderhouden van versies van TensorFlow servable. Het kan een of meer versies van Servables aan. Het kan helpen bij het configureren van de nieuwe algoritmen, omgaan met gewichten en andere wijzigingen kunnen worden aangebracht, gegevens kunnen worden geladen.
- Het kan ook versies wijzigen en beheren, meerdere bedienbare versies tegelijkertijd inschakelen.
3. Servable Streams
Het is een verzameling van verschillende versies van Servables. Het slaat het op in een toenemend aantal versies.
4. Tensorflow-modellen
- Een TensorFlow-model kan een of meer TensorFlow-servables bevatten. Het wordt voornamelijk gebruikt bij taken voor machinaal leren die meer dan één algoritme kunnen bevatten dat verschillende gewichten bevat, afhankelijk van het model, opzoektabellen, metrieken en tabelinbedding.
- Het kan op veel verschillende manieren worden geserveerd, zodat er verschillende manieren zijn om de opzoektabel te bedienen.
5. Tensorflow-laders
- Tensorflow loader is een API die de levenscyclus van TensorFlow Servables beheert. Het biedt een gemeenschappelijke infrastructuur voor sommige leeralgoritmen.
- Het belangrijkste gebruik van de TensorFlow-lader is het laden en lossen van servables met behulp van gestandaardiseerde lader-API's.
6. Tensorflow-bronnen
- Bronnen zijn werk als een plug-inmodule. Tensorflow source doet de basisafhandeling van servable, zoals het vinden van servable, servable op verzoek.
- Elke referentie kan een of meer bruikbare streams tegelijk bieden. Elke bron biedt een laadinstantie voor het verwerken van de versie van de stream. En elke onderhoudbare stream wordt geladen op basis van de versie.
- Bron heeft verschillende statussen die kunnen worden gedeeld met verschillende versies en met meerdere Servables. Kan ook omgaan met updates of schakelen tussen versies.
7. Tensorflow-managers
- Tensorflow manager verzorgt de end-to-end levenscyclus van onderhoudbaar.
- Laden Servable, Serving Servable, Losbaar Servable.
- Manager krijgt antwoord van alle beschikbare bronnen en bewaakt ook alle versies ervan. De manager kan de upload ook weigeren of uitstellen.
- De functie GetServableHandle () biedt een interface voor beheer van zaken met betrekking tot TensorFlow Servables.
8. Tensorflow Core
Tensorflow Core bevat:
- Levenscyclus, statistieken.
- Tensorflow serve core neemt servables en laders als een object.
9. Het leven van een bedienbare
De hele procedure wordt uitgelegd over hoe servable wordt gebruikt en de hele levenscyclus van servable:
- Bron maken laders voor verschillende uitvoerbare versies. Klantverzoek naar manager en manager stuurde de versie van de laders naar de client, laadde en diende terug naar de client.
- Loader bevat metagegevens die kunnen worden gebruikt om de servables te laden. Terugbellen wordt gebruikt om de manager op de hoogte te stellen van de versies van de te onderhouden bron. De manager volgt een versiebeleid dat helpt bij het configureren en beslissen welke actie vervolgens nodig is.
- De manager controleert ook de beveiliging van laders, als deze veilig is, zal alleen de benodigde middelen aan de lader worden gegeven en toestemming worden gegeven om de nieuwe versie te laden. De manager biedt Severable op verzoek van de klant, of hij vraagt expliciet om een specifieke versie of kan de nieuwste versie aanvragen nadat die manager een handle retourneert voor toegang tot de server.
- De Dynamic manager zorgt voor de servable-versies, past het versiebeleid toe en besluit dat de versie of de nieuwste versie moet worden geladen. De dynamische manager wijst geheugen toe aan de lader. Loader initieert de TensorFlow-grafiek en werkt de gewichten van de TensorFlow-grafiek bij.
- Wanneer een client om de servable vraagt en de versie controleert die de client aanvraagt, stuurt de Dynamic manager die handler terug met de gevraagde versie van Servable.
10. Batcher in Tensorflow-architectuur
- Batching is een procedure voor het verwerken van meerdere aanvragen in één aanvraag.
- Door deze procedure te gebruiken, kunnen we de kosten verlagen voor het uitvoeren van inferenties, met name de versnelling van hardware zoals GPU, TPU.
- Tensorflow servable bevat een Batcher-widget, met behulp van deze widget kunnen clients hun meerdere specifieke inferentieverzoeken eenvoudig in één batchverzoek verwerken. Zodat ze deze procedure efficiënt kunnen uitvoeren.
Conclusie - TensorFlow Architecture
Tensorflow Architecture vertegenwoordigt een gedecentraliseerd systeem. Het laat zien hoe verschillende componenten werken en hun rol vervullen in een gedecentraliseerd systeem. Dienen op verzoek van de klant en batchgewijs meerdere bewerkingen parallel gebruiken. Enkele van de beste functies in de TensorFlow-architectuur zijn batching van de bewerkingen, hardwareversnelling en dynamische manageropties, laders, bronnen, servicestreams.
Aanbevolen artikelen
Dit is een handleiding voor TensorFlow Architecture. Hier bespreken we Wat is TensorFlow en enkele van de beste functies in TensorFlow Architecture. U kunt ook onze andere voorgestelde artikelen doornemen voor meer informatie -
- Inleiding tot Tensorflow met karakteristiek
- TensorFlow vs Spark | Top 5 vergelijking
- Theano vs Tensorflow - Topverschillen
- TensorFlow Alternatieven | Top 11