Introdução ao TensorFlow
Neste artigo, veremos um esboço sobre a arquitetura TensorFlow. O TensorFlow é uma biblioteca de plataforma cruzada e existem alguns conceitos comuns, como operações, sessões e gráficos de computação. O TensorFlow Serving facilita a implantação de novos algoritmos e experimentos, mantendo a mesma arquitetura de banco de dados e APIs.
O que é a arquitetura Tensorflow?
O Tensorflow é uma biblioteca de aprendizado profundo comumente usada, criada pela equipe do cérebro do Google que trabalhava em Inteligência Artificial. Foi desenvolvido para que possa ser usado em várias CPUs, GPUs e também possa ser executado em dispositivos móveis e suporta diferentes classes de wrapper como python, C ++ ou Java e Tensores, objetos que descrevem a relação linear entre vetores, escalares e outros tensores. .
Os tensores nada mais são do que matrizes multidimensionais. Para entender a arquitetura e os recursos do TensorFlow, primeiro precisamos entender alguns termos.
- Servidores Tensorflow
- Versões de serviço
- Fluxos Servíveis
- Modelo Tensorflow
- Carregadeiras Tensorflow
- Fontes de fluxo tensor
- Gerenciador de fluxo de tensão
- Núcleo do Tensorflow
- Vida útil
- Arquitetura Batcher In Tensorflow
1. Servíveis Tensorflow
- Servidores Tensorflow são objetos comuns usados principalmente para executar cálculos. O tamanho do serviço TensorFlow é muito flexível. Servables são unidades centrais incompletas na veiculação do TensorFlow.
- Uma unidade útil pode conter qualquer coisa como tuplas, tabelas de pesquisa. Os objetos que podem ser servidos podem ser de qualquer tipo e qualquer interface, por causa desses recursos, é muito flexível e fácil de fazer melhorias futuras, como modos de operações assíncronos, resultados de streaming e APIs experimentais.
2. Versões úteis
- As versões de serviço são usadas para manter as versões do TensorFlow em serviço. Ele pode lidar com uma ou mais versões de Servables. Pode ajudar a configurar os novos algoritmos, lidar com pesos e outras alterações, os dados podem ser carregados.
- Ele também pode alterar e gerenciar versões, ativar várias versões de serviço por vez.
3. Fluxos Servíveis
É uma coleção de versões diferentes de Servables. Ele o armazena em uma sequência crescente de versões.
4. Modelos de fluxo tensor
- Um modelo TensorFlow pode conter um ou mais Servidores TensorFlow. Ele é usado principalmente em tarefas de aprendizado de máquina que podem conter mais de um algoritmo que contém pesos diferentes de acordo com o modelo, tabelas de pesquisa, métricas e incorporação de tabelas.
- Ele pode ser servido de várias maneiras diferentes, de forma que haja diferentes maneiras de servir a tabela de pesquisa.
5. Carregadeiras Tensorflow
- O carregador do Tensorflow é uma API que gerencia o ciclo de vida dos TensorFlow Servables. Ele fornece uma infraestrutura comum para alguns dos algoritmos de aprendizado.
- O principal uso do carregador TensorFlow é carregar e descarregar Servables usando APIs de carregador padronizadas.
6. Fontes de Tensorflow
- As fontes funcionam como um módulo de plug-in. A fonte Tensorflow realiza o manuseio básico de serviços, como a localização de serviços, fornece serviços sob solicitação.
- Cada referência pode fornecer um ou mais fluxos úteis por vez. Cada fonte fornece uma instância do carregador para manipular a versão do fluxo. E cada fluxo servível é carregado na versão com base.
- A origem tem estados diferentes que podem ser compartilhados com versões diferentes e com vários Servables. Também pode lidar com atualizações ou alterações entre versões.
7. Gerentes de fluxo de tensão
- O gerenciador de fluxo de tensão lida com o ciclo de vida útil de ponta a ponta.
- Carregando Servível, Servindo Servindo, Descarregando Servível.
- O gerenciador obtém resposta de todas as fontes úteis e também monitora todas as versões. O gerente também pode recusar ou adiar o upload.
- A função GetServableHandle () fornece uma interface que ajuda a lidar com assuntos gerenciais dos Servidores TensorFlow.
8. Núcleo do Tensorflow
O Tensorflow Core contém:
- Ciclo de vida, métricas.
- O núcleo de serviço do Tensorflow leva servables e carregadores como um objeto.
9. Vida de um servo
Todo o procedimento é explicado sobre como o serviço é usado e todo o ciclo de vida do serviço:
- A fonte cria carregadores para diferentes versões de serviço. A solicitação do cliente ao gerente e o gerente enviou a versão aspirada dos carregadores, carregou e serviu de volta ao cliente.
- O carregador contém metadados que podem ser usados para carregar os servables. O retorno de chamada é usado para notificar o gerente sobre as versões de origem servíveis. O gerente segue uma política de versão que ajuda a configurar e decidir que ação será necessária em seguida.
- O gerente também verifica a segurança dos carregadores, se for seguro, somente ele fornecerá os recursos necessários ao carregador e permitirá a carga da nova versão. O gerente fornece Gravável na solicitação do cliente, ou solicita uma versão específica explicitamente ou pode solicitar a versão mais recente direta depois que o gerente retornar um identificador para acessar o servidor.
- O gerenciador dinâmico lida com as versões úteis, aplica a política de versão e decide que a versão ou a versão mais recente precisa ser carregada. O gerenciador dinâmico aloca memória para o carregador. O Loader inicia o gráfico TensorFlow e atualiza os pesos do gráfico TensorFlow.
- Quando um cliente solicita o servable e verifica a versão que o cliente está solicitando, o gerenciador dinâmico retorna esse manipulador com a versão solicitada do Servable.
10. Batcher na arquitetura Tensorflow
- Lote é um procedimento para lidar com várias solicitações em uma única solicitação.
- Usando esse procedimento, podemos reduzir o custo de realizar inferências, especialmente a aceleração de hardware como GPU, TPU.
- O serviço Tensorflow contém um widget Batcher. Ao usar esse widget, os clientes podem facilmente agrupar suas múltiplas solicitações de inferência específicas em uma única solicitação de lote. Para que eles possam executar esse procedimento com eficiência.
Conclusão - Arquitetura TensorFlow
A arquitetura Tensorflow representa um sistema descentralizado. Ele mostra como os diferentes componentes funcionam e cumprem suas funções em um sistema descentralizado. Atendendo à solicitação do cliente e usando várias operações em lote paralelas. Alguns dos melhores recursos da arquitetura TensorFlow são agrupar as operações, aceleração de hardware e opções de gerenciador dinâmico, carregadores, fontes e fluxos de serviços.
Artigos recomendados
Este é um guia para a arquitetura TensorFlow. Aqui discutimos o que é o TensorFlow e alguns dos melhores recursos da arquitetura do TensorFlow. Você também pode consultar nossos outros artigos sugeridos para saber mais -
- Introdução ao Tensorflow com Característica
- TensorFlow vs Spark | Top 5 Comparação
- Theano vs Tensorflow - Principais diferenças
- Alternativas ao TensorFlow | 11 principais