Introducción a TensorFlow

En este artículo, veremos un resumen de la arquitectura TensorFlow. TensorFlow es una biblioteca multiplataforma y hay algunos conceptos comunes como operaciones, sesiones y gráficos de cálculo. TensorFlow Serving hace que los nuevos algoritmos y experimentos sean fáciles de implementar al tiempo que conserva la misma arquitectura de base de datos y API.

¿Qué es la arquitectura Tensorflow?

Tensorflow es una biblioteca de aprendizaje profundo de uso común, creada por el equipo de cerebro de Google que estaba trabajando en Inteligencia Artificial. Fue desarrollado para que pueda usarse en múltiples CPU, GPU y también puede ejecutarse en dispositivos móviles y admite diferentes clases de envoltura como Python, C ++ o Java y Tensores, que son objetos que describen la relación lineal entre vectores, escalares y otros tensores. .

Los tensores no son más que matrices multidimensionales. Para comprender la arquitectura y las características de TensorFlow, primero debemos comprender algunos términos.

  1. Tensorflow Servables
  2. Versiones Servibles
  3. Streams Servibles
  4. Modelo de Tensorflow
  5. Cargadores Tensorflow
  6. Fuentes de Tensorflow
  7. Gerente de Tensorflow
  8. Tensorflow Core
  9. Vida de Servible
  10. Arquitectura de Batcher In Tensorflow

1. Tensorflow Servables

  • Los Servidores Tensorflow son objetos comunes que se utilizan principalmente para realizar cálculos. El tamaño del servidor TensorFlow es muy flexible. Los servidores son unidades centrales incompletas en el servicio TensorFlow.
  • Una unidad servible puede contener cualquier cosa como puede contener tuplas, tablas de búsqueda. Los objetos servibles pueden ser de cualquier tipo y cualquier interfaz, debido a estas características es muy flexible y fácil de realizar mejoras futuras, tales como modos de operaciones asincrónicas, resultados de transmisión y API experimentales.

2. Versiones servibles

  • Las versiones de servicio se utilizan para mantener versiones de servicio de TensorFlow. Puede manejar una o más versiones de Servables. Puede ayudar a configurar los nuevos algoritmos, manejar los pesos y se pueden hacer otros cambios, se pueden cargar los datos.
  • También puede cambiar y administrar versiones, habilitar múltiples versiones de servicio a la vez.

3. Corrientes servibles

Es una colección de diferentes versiones de Servables. Lo almacena en una secuencia creciente de versiones.

4. Modelos de Tensorflow

  • Un modelo TensorFlow puede contener uno o más Servables TensorFlow. Se utiliza principalmente en tareas de aprendizaje automático que pueden contener más de un algoritmo que contiene diferentes pesos según el modelo, tablas de búsqueda, métricas e incorporaciones de tablas.
  • Se puede servir de muchas maneras diferentes, de modo que hay diferentes formas de servir la tabla de búsqueda.

5. Cargadores de Tensorflow

  • Tensorflow loader es una API que gestiona el ciclo de vida de TensorFlow Servables. Proporciona una infraestructura común para algunos de los algoritmos de aprendizaje.
  • El uso principal del cargador TensorFlow es cargar y descargar Servables utilizando API de cargador estandarizadas.

6. Fuentes de Tensorflow

  • Las fuentes funcionan como un módulo de complemento. La fuente de Tensorflow hace el manejo básico del servidor como la búsqueda del servidor, proporciona el servidor a pedido.
  • Cada referencia puede proporcionar una o más secuencias de servicio a la vez. Cada fuente proporciona una instancia de cargador para manejar la versión de la secuencia. Y cada flujo de servicio se carga en la versión basada.
  • Las fuentes tienen diferentes estados que se pueden compartir con diferentes versiones y con múltiples servidores. También puede manejar actualizaciones o cambios entre versiones.

7. Gerentes de Tensorflow

  • El administrador de Tensorflow maneja el ciclo de vida de extremo a extremo del servidor.
  • Cargando Servable, Sirviendo Servable, Descargando Servable.
  • El administrador obtiene respuesta de todas las fuentes de servicio y también supervisa todas las versiones del mismo. El administrador también puede rechazar o posponer la carga.
  • La función GetServableHandle () proporciona una interfaz que ayuda a manejar las cosas gerenciales sobre TensorFlow Servables.

8. Tensorflow Core

Tensorflow Core contiene:

  • Ciclo de vida, métricas.
  • El núcleo de servicio Tensorflow toma los servidores y cargadores como un objeto.

9. La vida de un servidor

Todo el procedimiento se explica sobre cómo se utiliza el servidor y el ciclo de vida completo del servidor:

  • Fuente crear cargadores para diferentes versiones de servicio. La solicitud del cliente al gerente y al gerente envió a los cargadores la versión deseada, la carga y la entrega al cliente.
  • El cargador contiene metadatos que se pueden usar para cargar los Servables. La devolución de llamada se utiliza para notificar al administrador sobre las versiones de origen de servicio. El administrador sigue una política de versión que ayuda a configurar y decidir qué acción se necesita a continuación.
  • El administrador también verifica la seguridad de los cargadores, si es seguro, solo le dará los recursos necesarios al cargador y dará permiso para cargar la nueva versión. El administrador proporciona Severable en la solicitud del cliente, o solicitará una versión específica explícitamente o puede solicitar directamente la última versión después de que ese administrador devuelva un identificador para acceder al servidor.
  • El administrador dinámico maneja las versiones de servicio, aplica la política de versiones y decide la versión o la última versión que se debe cargar. El administrador dinámico asigna memoria al cargador. Loader inicia el gráfico TensorFlow y actualiza los pesos del gráfico TensorFlow.
  • Cuando un cliente solicita el servidor y comprueba la versión que el cliente está solicitando, el administrador dinámico devuelve ese controlador con la versión solicitada de servidor.

10. Batcher en la arquitectura de Tensorflow

  • El procesamiento por lotes es un procedimiento para manejar múltiples solicitudes en una sola solicitud.
  • Al utilizar este procedimiento, podemos reducir el costo de realizar inferencias, especialmente la aceleración de hardware como GPU, TPU.
  • El servidor Tensorflow contiene un widget Batcher, al usar este widget los clientes pueden procesar fácilmente sus múltiples solicitudes de inferencia específicas en una sola solicitud de lote. Para que puedan ejecutar este procedimiento de manera eficiente.

Conclusión - Arquitectura TensorFlow

Tensorflow Architecture representa un sistema descentralizado. Muestra cómo funcionan los diferentes componentes y cumplen sus funciones en un sistema descentralizado. Servir a pedido del cliente y usar lotes múltiples operaciones paralelas. Algunas de las mejores características de la arquitectura TensorFlow son las operaciones por lotes, la aceleración de hardware y las opciones dinámicas del administrador, los cargadores, las fuentes y las transmisiones servibles.

Artículos recomendados

Esta es una guía de la arquitectura TensorFlow. Aquí discutimos qué es TensorFlow y algunas de las mejores características de TensorFlow Architecture. También puede consultar nuestros otros artículos sugeridos para obtener más información:

  1. Introducción a Tensorflow con Característica
  2. TensorFlow vs Spark | Comparación de los 5 principales
  3. Theano vs Tensorflow: principales diferencias
  4. Alternativas de TensorFlow | Top 11

Categoría: