Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Complementos de TensorFlow




TensorFlow Addons es un repositorio de contribuciones que se ajustan a patrones API bien establecidos, pero implementan nuevas funcionalidades que no están disponibles en el núcleo de TensorFlow. TensorFlow admite de forma nativa una gran cantidad de operadores, capas, métricas, pérdidas y optimizadores. Sin embargo, en un campo de rápido movimiento como ML, hay muchos desarrollos nuevos e interesantes que no pueden integrarse en el núcleo de TensorFlow (porque su amplia aplicabilidad aún no está clara, o es utilizada principalmente por un subconjunto más pequeño de la comunidad).

Instalación

Construcciones estables

Para instalar la última versión, ejecute lo siguiente:

 pip install tensorflow-addons
 

Para usar complementos:

 import tensorflow as tf
import tensorflow_addons as tfa
 

Construcciones nocturnas

También hay compilaciones nocturnas de complementos de TensorFlow bajo el paquete pip tfa-nightly , que se basa en la última versión estable de TensorFlow. Las versiones nocturnas incluyen características más nuevas, pero pueden ser menos estables que las versiones versionadas.

 pip install tfa-nightly
 

Instalar desde la fuente

También puede instalar desde la fuente. Esto requiere el sistema de compilación Bazel .

 git clone https://github.com/tensorflow/addons.git
cd addons

# If building GPU Ops (Requires CUDA 10.0 and CuDNN 7)
export TF_NEED_CUDA=1
export CUDA_HOME="/path/to/cuda10" (default: /usr/local/cuda)
export CUDNN_INSTALL_PATH="/path/to/cudnn" (default: /usr/lib/x86_64-linux-gnu)

# This script links project with TensorFlow dependency
python3 ./configure.py

bazel build build_pip_pkg
bazel-bin/build_pip_pkg artifacts

pip install artifacts/tensorflow_addons-*.whl
 

Conceptos básicos

API estandarizada dentro de subpaquetes

La experiencia del usuario y la capacidad de mantenimiento del proyecto son conceptos centrales en TF-Addons. Para lograr esto, requerimos que nuestras adiciones se ajusten a los patrones API establecidos vistos en el núcleo de TensorFlow.

GPU / CPU Custom-Ops

Un beneficio importante de los complementos de TensorFlow es que hay operaciones precompiladas. Si no se encuentra una instalación de CUDA 10, la operación recurrirá automáticamente a una implementación de CPU.

Mantenimiento Proxy

Addons ha sido diseñado para compartimentar subpaquetes y submódulos para que puedan ser mantenidos por usuarios que tienen experiencia y un interés personal en ese componente.

El mantenimiento del subpaquete solo se otorgará después de que se haya realizado una contribución sustancial para limitar el número de usuarios con permiso de escritura. Las contribuciones pueden venir en forma de cierres de problemas, correcciones de errores, documentación, código nuevo u optimización del código existente. El mantenimiento del submódulo se puede otorgar con una barrera inferior para la entrada, ya que esto no incluirá permisos de escritura para el repositorio.

Para obtener más información, consulte el RFC sobre este tema.

Evaluación periódica de subpaquetes

Dada la naturaleza de este repositorio, los subpaquetes y submódulos pueden volverse cada vez menos útiles para la comunidad a medida que pasa el tiempo. Para mantener el repositorio sostenible, realizaremos revisiones semestrales de nuestro código para asegurarnos de que todo siga perteneciendo al repositorio. Los factores contribuyentes a esta revisión serán:

  1. Número de mantenedores activos
  2. Cantidad de uso de OSS
  3. Cantidad de problemas o errores atribuidos al código
  4. Si ahora hay una mejor solución disponible

La funcionalidad dentro de los complementos de TensorFlow se puede clasificar en tres grupos:

  • Sugerido : API bien mantenida; Se recomienda su uso.
  • Desalentado : hay una mejor alternativa disponible; la API se mantiene por razones históricas; o la API requiere mantenimiento y es el período de espera en desuso.
  • En desuso : uso bajo su propio riesgo; sujeto a ser eliminado.

El cambio de estado entre estos tres grupos es: Sugerido <-> Desalentado -> Desaprobado.

El período entre que una API se marque como obsoleta y se elimine será de 90 días. La razón fundamental es:

  1. En el caso de que TensorFlow Addons se lance mensualmente, habrá 2-3 versiones antes de que se elimine una API. Las notas de la versión podrían dar al usuario suficiente advertencia.

  2. 90 días les da a los mantenedores suficiente tiempo para arreglar su código.

Contribuyendo

TF-Addons es un proyecto de código abierto liderado por la comunidad. Como tal, el proyecto depende de contribuciones públicas, correcciones de errores y documentación. Consulte las pautas de contribución para obtener una guía sobre cómo contribuir. Este proyecto se adhiere al código de conducta de TensorFlow . Al participar, se espera que respete este código.

Comunidad

Licencia

Licencia Apache 2.0