
TensorFlow Eklentileri , iyi kurulmuş API modellerine uyan ancak TensorFlow'da bulunmayan yeni işlevleri uygulayan bir katkı deposudur. TensorFlow çok sayıda operatörü, katmanı, ölçümü, kaybı ve optimize ediciyi yerel olarak destekler. Bununla birlikte, ML gibi hızlı hareket eden bir alanda, çekirdek TensorFlow'a entegre edilemeyen birçok ilginç yeni gelişme vardır (çünkü bunların geniş uygulanabilirliği henüz net değildir veya çoğunlukla topluluğun daha küçük bir alt kümesi tarafından kullanılmaktadır).
Kurulum
Kararlı Yapılar
En son sürümü yüklemek için aşağıdakileri çalıştırın:
pip install tensorflow-addons
Eklentileri kullanmak için:
import tensorflow as tf
import tensorflow_addons as tfa
gece kondular
Ayrıca TensorFlow'un en son kararlı sürümüne karşı oluşturulan pip paketi tfa-nightly
altında gecelik TensorFlow Eklentileri derlemeleri de vardır. Gecelik derlemeler daha yeni özellikler içerir, ancak sürümlü sürümlerden daha az kararlı olabilir.
pip install tfa-nightly
Kaynaktan Yükleme
Ayrıca kaynaktan da yükleyebilirsiniz. Bu, Bazel yapı sistemini gerektirir.
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
Temel Kavramlar
Alt Paketlerde Standartlaştırılmış API
Kullanıcı deneyimi ve proje sürdürülebilirliği, TF-Addons'daki temel kavramlardır. Bunları başarmak için, eklemelerimizin TensorFlow'un çekirdeğinde görülen yerleşik API modellerine uymasını istiyoruz.
GPU / CPU Özel İşlemleri
TensorFlow Addons'ın en büyük yararı, önceden derlenmiş işlemlerin olmasıdır. Bir CUDA 10 kurulumu bulunamazsa, operasyon otomatik olarak bir CPU uygulamasına geri dönecektir.
Vekil Bakım
Eklentiler, alt paketleri ve alt modülleri bölümlere ayırmak için tasarlanmıştır, böylece bunlar, bu bileşende uzmanlığa ve kazanılmış menfaat sahibi kullanıcılar tarafından korunabilir.
Alt paket bakımı, yalnızca yazma izni olan kullanıcıların sayısını sınırlandırmak için önemli katkı yapıldıktan sonra verilecektir. Katkılar, sorun kapatma, hata düzeltmeleri, dokümantasyon, yeni kod veya mevcut kodu optimize etme şeklinde gelebilir. Alt modül bakımı, depoya yazma izinlerini içermeyeceğinden, giriş için daha düşük bir engelle verilebilir.
Daha fazla bilgi için bu konudaki RFC'ye bakın.
Alt Paketlerin Periyodik Değerlendirmesi
Bu deponun doğası göz önüne alındığında, alt paketler ve alt modüller, zaman geçtikçe topluluk için giderek daha az yararlı hale gelebilir. Depoyu sürdürülebilir kılmak için, her şeyin hala depoya ait olduğundan emin olmak için iki yılda bir kodumuzun incelemelerini gerçekleştireceğiz. Bu incelemeye katkıda bulunan faktörler şunlar olacaktır:
- Aktif bakıcıların sayısı
- OSS kullanım miktarı
- Kodla ilişkilendirilen sorun veya hataların miktarı
- Şimdi daha iyi bir çözüm varsa
TensorFlow Eklentilerindeki işlevsellik üç gruba ayrılabilir:
- Önerilen : bakımlı API; kullanımı teşvik edilmektedir.
- Cesareti kırıldı : daha iyi bir alternatif var; API geçmiş nedenlerle saklanır; veya API bakım gerektiriyor ve kullanımdan kaldırılacak bekleme süresidir.
- Kullanımdan kaldırıldı : riski size ait olacak şekilde kullanın; silinecek konu.
Bu üç grup arasındaki durum değişikliği şöyledir: Önerilen <-> Önerilmez -> Kullanımdan Kaldırıldı.
Bir API'nin kullanımdan kaldırıldı olarak işaretlenmesi ile silinmesi arasındaki süre 90 gün olacaktır. Mantık şu şekildedir:
TensorFlow Addons'ın aylık olarak yayınlanması durumunda, bir API silinmeden önce 2-3 sürüm olacaktır. Sürüm notları kullanıcıyı yeterince uyarabilir.
90 gün, bakımcılara kodlarını düzeltmeleri için bolca zaman verir.
Katkı
TF-Addons, topluluk tarafından yönetilen bir açık kaynak projesidir. Bu nedenle, proje genel katkılara, hata düzeltmelerine ve belgelere bağlıdır. Nasıl katkıda bulunacağınızla ilgili kılavuz için lütfen katkı yönergelerine bakın. Bu proje, TensorFlow'un davranış kurallarına bağlıdır . Katılarak, bu kodu korumanız beklenir.
Topluluk
- Genel Posta Listesi
- SIG Aylık Toplantı Notları
- Posta listemize katılın ve toplantıya takvim davetleri alın