Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Addon TensorFlow




TensorFlow Addons è un repository di contributi conforme a modelli API consolidati, ma implementa nuove funzionalità non disponibili nel core TensorFlow. TensorFlow supporta nativamente un gran numero di operatori, livelli, metriche, perdite e ottimizzatori. Tuttavia, in un campo in rapido movimento come ML, ci sono molti nuovi sviluppi interessanti che non possono essere integrati nel core TensorFlow (perché la loro ampia applicabilità non è ancora chiara, o è utilizzata principalmente da un sottogruppo più piccolo della comunità).

Installazione

Build stabili

Per installare la versione più recente, eseguire quanto segue:

 pip install tensorflow-addons
 

Per utilizzare i componenti aggiuntivi:

 import tensorflow as tf
import tensorflow_addons as tfa
 

Build notturni

Ci sono anche build notturne di additivi TensorFlow sotto il pacchetto pip tfa-nightly , che è costruito contro l'ultima versione stabile di TensorFlow. Le build notturne includono funzionalità più recenti, ma potrebbero essere meno stabili rispetto alle versioni con versione.

 pip install tfa-nightly
 

Installazione da sorgente

Puoi anche installare dalla fonte. Ciò richiede il sistema di build 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
 

Concetti principali

API standardizzata all'interno dei pacchetti secondari

L'esperienza dell'utente e la manutenibilità del progetto sono concetti chiave di TF-Addons. Per raggiungere questi obiettivi, richiediamo che le nostre aggiunte siano conformi ai modelli API consolidati visti nel core TensorFlow.

Operazioni personalizzate GPU / CPU

Un grande vantaggio di TensorFlow Addons è che ci sono operazioni precompilate. Se non viene trovata un'installazione CUDA 10, l'operazione tornerà automaticamente all'implementazione della CPU.

Mantenimento del proxy

Addons è stato progettato per compartimentare sotto-pacchetti e sottomoduli in modo che possano essere mantenuti dagli utenti che hanno esperienza e un interesse acquisito in quel componente.

La manutenzione dei pacchetti secondari sarà concessa solo dopo aver apportato un contributo sostanziale al fine di limitare il numero di utenti con autorizzazione di scrittura. I contributi possono presentarsi sotto forma di chiusure di problemi, correzioni di errori, documentazione, nuovo codice o ottimizzazione di codice esistente. La manutenzione del sottomodulo può essere concessa con una barriera inferiore per l'ingresso poiché ciò non includerà le autorizzazioni di scrittura per il repository.

Per ulteriori informazioni, consultare RFC su questo argomento.

Valutazione periodica dei pacchetti secondari

Data la natura di questo repository, sotto-pacchetti e sottomoduli possono diventare sempre meno utili alla comunità col passare del tempo. Al fine di mantenere sostenibile il repository, eseguiremo revisioni semestrali del nostro codice per assicurarci che tutto rientri ancora nel repository. I fattori che contribuiranno a questa recensione saranno:

  1. Numero di manutentori attivi
  2. Quantità di utilizzo OSS
  3. Quantità di problemi o bug attribuiti al codice
  4. Se è ora disponibile una soluzione migliore

La funzionalità all'interno degli addon TensorFlow può essere classificata in tre gruppi:

  • Consigliato : API ben mantenuta; l'uso è incoraggiato.
  • Scoraggiato : è disponibile un'alternativa migliore; l'API è conservata per motivi storici; oppure l'API richiede manutenzione ed è il periodo di attesa che deve essere deprecato.
  • Obsoleto : utilizzare a proprio rischio; soggetto da cancellare.

Il cambio di stato tra questi tre gruppi è: Consigliato <-> Scoraggiato -> Obsoleto.

Il periodo tra un'API contrassegnata come obsoleta e in fase di eliminazione sarà di 90 giorni. La logica è:

  1. Nel caso in cui TensorFlow Addons rilasci mensilmente, ci saranno 2-3 rilasci prima che un'API venga eliminata. Le note di rilascio potrebbero fornire all'utente un avviso sufficiente.

  2. 90 giorni offre ai manutentori ampio tempo per correggere il loro codice.

contribuire

TF-Addons è un progetto open source guidato dalla comunità. Pertanto, il progetto dipende da contributi pubblici, correzioni di errori e documentazione. Consulta le linee guida per il contributo per una guida su come contribuire. Questo progetto aderisce al codice di condotta di TensorFlow . Partecipando, si prevede di mantenere questo codice.

Comunità

Licenza

Licenza Apache 2.0