Lanzamento do sistema de aprendizaxe automática TensorFlow 2.0

Presentado liberación significativa da plataforma de aprendizaxe automática TensorFlow 2.0, que ofrece implementacións preparadas de varios algoritmos de aprendizaxe automática profunda, unha interface de programación sinxela para construír modelos en Python e unha interface de baixo nivel para a linguaxe C++ que permite controlar a construción e execución de gráficos computacionais. O código do sistema está escrito en C++ e Python e distribuído por baixo a licenza Apache.

A plataforma foi desenvolvida orixinalmente polo equipo de Google Brain e utilízase nos servizos de Google para o recoñecemento de voz, identificar rostros en fotografías, determinar a semellanza de imaxes, filtrar o spam en Gmail, selección noticias en Google News e organizando a tradución tendo en conta o significado. Os sistemas de aprendizaxe automática distribuídos pódense crear en hardware estándar, grazas ao soporte integrado de TensorFlow para distribuír cálculos en varias CPU ou GPU.

TensorFlow ofrece unha biblioteca de algoritmos de cálculo numérico preparados implementados a través de gráficos de fluxo de datos. Os nós destes gráficos implementan operacións matemáticas ou puntos de entrada/saída, mentres que os bordos do gráfico representan matrices de datos multidimensionais (tensores) que flúen entre nós.
Os nodos pódense asignar a dispositivos informáticos e executarse de forma asíncrona, procesando simultaneamente todos os tesores axeitados para eles á vez, o que permite organizar o funcionamento simultáneo dos nodos nunha rede neuronal por analoxía coa activación simultánea de neuronas no cerebro.

O foco principal na preparación da nova versión foi a simplificación e a facilidade de uso. Algúns innovacións:

  • Propúxose unha nova API de alto nivel para construír e adestrar modelos Keras, que ofrece varias opcións de interface para construír modelos (Secuencial, Funcional, Subclasificación) coa capacidade de implementación inmediata (sen compilación previa) e cun mecanismo de depuración sinxelo;
  • Engadida API tf.distribuír.Estratexia para organización aprendizaxe distribuída modelos con cambios mínimos no código existente. Ademais da posibilidade de repartir os cálculos varias GPU, hai soporte experimental dispoñible para dividir o proceso de aprendizaxe en varios procesadores independentes e a capacidade de usar a nube TPU (Unidade de procesamento de tensores);
  • En lugar dun modelo declarativo de construción dun gráfico con execución a través de tf.Session, é posible escribir funcións ordinarias en Python, que, mediante unha chamada a tf.function, poden converterse en gráficos e, a continuación, executarse, serializar ou optimizar remotamente. para mellorar o rendemento;
  • Engadiuse tradutor Autográfico, que converte un fluxo de comandos de Python en expresións TensorFlow, o que permite que o código Python se use dentro das funcións tf.function-decorated, tf.data, tf.distribute e tf.keras;
  • SavedModel unifica o formato de intercambio de modelos e engade compatibilidade para gardar e restaurar os estados do modelo. Agora pódense usar os modelos compilados para TensorFlow TensorFlow Lite (en dispositivos móbiles), TensorFlow JS (no navegador ou Node.js), TensorFlow Serving и TensorFlow Hub;
  • Unificáronse as API tf.train.Optimizers e tf.keras.Optimizers; en lugar de compute_gradients, propúxose unha nova clase para calcular gradientes Cinta degradada;
  • O rendemento aumenta significativamente ao usar GPU.
    A velocidade do adestramento do modelo en sistemas con GPU NVIDIA Volta e Turing aumentou ata tres veces;

  • Levado a cabo Limpeza importante da API, moitas chamadas renomeadas ou eliminadas, detívose o soporte para variables globais nos métodos auxiliares. En lugar de tf.app, tf.flags, tf.logging, proponse unha nova API absl-py. Para seguir usando a antiga API, preparouse o módulo compat.v1.

Fonte: opennet.ru

Engadir un comentario