[en] Working with Deep Learning and neural networks there are mainly 2 stages: training and inference. Most researchers work on the first one to achieve models that solve better increasingly varied and complex problems but once solved they must be given applicability. Organizations that work with neural networks and use them within their processes need to use them for inference, where these networks spend most of their life until they are renewed. It is in this case, when different aspects that are not contemplated in the training those that gain a strategic relevance for the organizations as: the management of the resources to be able to dimension its infrastructure, the response time imposed by the requirements of its model of business, etc. A crucial aspect is the capacity of these organizations about the infrastructure since the companies that have it need to optimize the use to obtain the best performance adapting to the characteristics of their machines. On the other hand, in the Cloud world there are infinite resources available where their management has a direct impact on the costs of using these services. The trend is to use more and more infrastructure in the Cloud for all the advantages that this entails. This project studies tools that facilitate the use of neural networks in productive environments, helping with the deployment of possible architectures both in local infrastructure and hosted in public Cloud based on virtualization in containers. This virtualization is carried out through the image of TensorFlow Serving's Docker, with which an environment architecture governed by Kubernetes is later proposed for a local environment and its alternative counterpart in the Cloud within the services offered by Amazon Web Services.

[es] Cuando se trabaja con Deep Learning y redes neuronales principalmente existen 2 etapas: entrenamiento e inferencia. La mayoría de los investigadores trabajan sobre la primera para lograr modelos que resuelvan mejor problemas cada vez más variados y complejos pero una vez resuelto se les debe dar aplicabilidad. Las organizaciones que trabajan con redes neuronales y las utilizan dentro de sus procesos requieren utilizarlas para inferencia, donde estas redes pasan el mayor tiempo de su vida útil hasta ser renovadas. Es en este caso, cuando distintos aspectos que no se contemplan en el entrenamiento ganan una relevancia estratégica para las organizaciones como: la gestión de los recursos para poder dimensionar su infraestructura, los tiempos de respuesta impuestos por los requerimientos de su modelo de negocio, etc. Un aspecto crucial es la capacidad de estas organizaciones respecto a la infraestructura ya que las empresas que la posean necesitan optimizar el uso para obtener el mejor rendimiento adaptándose a las características de sus máquinas. Por contra, en el mundo Cloud se dispone de recursos infinitos donde la gestión de los mismos tiene una repercusión directa en los costes de la utilización de estos servicios. La tendencia es cada vez más utilizar infraestructura en Cloud por todas las ventajas que ello supone. En este proyecto se estudian herramientas que facilitan el uso de redes neuronales en entornos productivos, ayudando con el despliegue de posibles arquitecturas tanto en infraestructura local como alojada en Cloud público basadas en la virtualización en contenedores. Esta virtualización se lleva a cabo mediante la imagen de Docker de TensorFlow Serving, con el cual posteriormente se propone una arquitectura de entorno gobernada por Kubernetes para un entorno local y su alternativa homóloga en Cloud dentro de los servicios ofrecidos en Amazon Web Services.