Introduktion til TensorFlow
I denne artikel vil vi se en oversigt over TensorFlow Architecture. TensorFlow er et bibliotek på tværs af platforme, og der er nogle almindelige begreber som operationer, sessioner og beregningsgrafer. TensorFlow-servering gør nye algoritmer og eksperimenter let at implementere, mens de samme databasearkitektur og API'er bevares.
Hvad er Tensorflow-arkitektur?
Tensorflow er et ofte brugt bibliotek med dyb læring, der er bygget af Googles hjerneteam, der arbejdede på kunstig intelligens. Det blev udviklet som det kan bruges på flere CPU'er, GPU'er og kan også køre på mobile enheder og understøtter forskellige indpakningsklasser som python, C ++ eller Java og Tensors, som er objekter, der beskriver den lineære sammenhæng mellem vektorer, skalarer og andre tensorer .
Tensorer er intet andet end multidimensionelle arrays. For at forstå TensorFlow-arkitekturen og funktionerne skal vi først forstå nogle udtryk.
- Tensorflow servables
- Servable versioner
- Servable strømme
- Tensorflow Model
- Tensorflow-læssere
- Tensorflowkilder
- Tensorflow Manager
- Tensorflow Core
- Servable Life
- Batcher i Tensorflow-arkitektur
1. Tensorflow-servables
- Tensorflow-servables er almindelige objekter, der hovedsageligt bruges til at udføre beregning. Størrelsen på TensorFlow-servable er meget fleksibel. Servables er centrale, ukomplicerede enheder i TensorFlow-servering.
- En serviceenhed kan indeholde alt, som det kan indeholde tupler, opslagstabeller. Servable objekter kan være af enhver type og enhver grænseflade, på grund af disse funktioner er det meget fleksibelt og let at udføre fremtidige forbedringer, f.eks. Asynkrone driftsformer, streaming-resultater og eksperimentelle API'er.
2. Servable versioner
- Servable versioner bruges til at vedligeholde versioner af TensorFlow-servable. Det kan håndtere en eller flere versioner af Servables. Det kan hjælpe med at konfigurere de nye algoritmer, håndtere vægte og andre ændringer kan udføres, data kan indlæses.
- Det kan også ændre og administrere versioner, aktivere flere serviceversioner ad gangen.
3. Servable strømme
Det er en samling af forskellige versioner af Servables. Det gemmer det i en stigende rækkeversioner.
4. Tensorflowmodeller
- En TensorFlow-model kan indeholde en eller flere TensorFlow-servables. Det bruges hovedsageligt i maskinindlæringsopgaver, der kan indeholde mere end en algoritme, der indeholder forskellige vægte i henhold til model, opslagstabeller, metrics og tabelindlejringer.
- Det kan serveres på mange forskellige måder, så der er forskellige måder at tjene opslagstabellen på.
5. Tensorflow-læssere
- Tensorflow loader er en API, der administrerer TensorFlow Servables livscyklus. Det giver en fælles infrastruktur for nogle af indlæringsalgoritmerne.
- Den vigtigste anvendelse af TensorFlow-loader er at indlæse og losse servables ved hjælp af standardiserede loader-API'er.
6. Tensorflowkilder
- Kilder fungerer som et plugin-modul. Tensorflowkilde gør den grundlæggende håndtering af servable som fundet af servable, leverer serviceret efter anmodning.
- Hver reference kan give en eller flere betjenbare strømme ad gangen. Hver kilde tilvejebringer en loader-forekomst til håndtering af versionen af strømmen. Og hver servable stream indlæses på den version, der er baseret.
- Kilde har forskellige tilstande, der kan deles med forskellige versioner og til flere servables. Kan også håndtere opdatering eller skifte mellem versioner.
7. Tensorflow Managers
- Tensorflow manager håndterer levedygtige livscyklus fra servable.
- Indlæser Servable, Serving Servable, Unloading Servable.
- Manager får svar fra alle servicekilder og overvåger også alle versioner af den. Lederen kan også nægte eller udsætte uploaden.
- GetServableHandle () -funktionen giver en grænseflade, der hjælper med at håndtere ledelsesmæssige ting ved TensorFlow-servables.
8. Tensorflow Core
Tensorflow Core indeholder:
- Livscyklus, måling.
- Tensorflow servering kerne tager servables og læssere som et objekt.
9. Livet af en servabel
Hele proceduren forklares om, hvordan servable bruges, og hele levetiden for servable:
- Kilde oprette indlæssere til forskellige serviceversioner. Klientanmodning til manager og manager sendte de ønskede version af indlæserne, indlæses og serveres tilbage til klienten.
- Loader indeholder metadata, der kan bruges til at indlæse Servables. Tilbagekald bruges til at underrette manageren om de servable kildeversioner. Manageren følger en version af politikken, der hjælper med at konfigurere og beslutte, hvilken handling der skal bruges næste.
- Lederen kontrollerer også sikkerheden for læssere, hvis det er sikkert, vil det kun give de nødvendige ressourcer til læsseren og give tilladelse til at indlæse den nye version. Manageren leverer delbar på klientanmodning, eller den vil eksplicit anmode om en bestemt version eller kan anmode om direkte den seneste version, når denne manager returnerer et håndtag for at få adgang til servicebetjent.
- Dynamic manager håndterer de servable versioner, anvender versionpolitikken og beslutter, at versionen eller den nyeste version skal indlæses. Den dynamiske manager tildeler hukommelse til læsseren. Loader indleder TensorFlow-grafen og opdaterer vægterne på TensorFlow-grafen.
- Når en klient anmoder om det servable og kontrollerer den version, som klienten anmoder om, returnerer Dynamic manager denne handler med den anmodede version af Servable.
10. Batcher i Tensorflow Arkitektur
- Batching er en procedure til håndtering af flere anmodninger til en enkelt anmodning.
- Ved at bruge denne procedure kan vi reducere omkostningerne ved at udføre konklusioner, især accelerationen af hardware som GPU, TPU.
- Tensorflow servable indeholder en Batcher-widget ved hjælp af denne widget kan klienter let batch deres flere specifikke inferensanmodninger til en enkelt batch-anmodning. Så de kan køre denne procedure effektivt.
Konklusion - TensorFlow Arkitektur
Tensorflow-arkitektur repræsenterer et decentraliseret system. Det viser, hvordan forskellige komponenter fungerer og tjener deres roller i et decentraliseret system. Serverer på klientens anmodning og bruger batching af flere operationer parallelt. Nogle af de bedste funktioner i TensorFlow-arkitektur er batching af operationer, hardwareacceleration og dynamiske managerindstillinger, læssere, kilder, servable strømme.
Anbefalede artikler
Dette er en guide til TensorFlow Arkitektur. Her diskuterer vi Hvad er TensorFlow og nogle af de bedste funktioner i TensorFlow Arkitektur. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -
- Introduktion til tensorflow med karakteristisk
- TensorFlow vs Spark | Top 5 sammenligning
- Theano vs Tensorflow - Topforskelle
- TensorFlow Alternativer | Top 11