Ditulis oleh: Sean Morgan (Two Six Labs), Yan Facai (Alibaba), Moritz Kröger (RWTH Aachen University), Tzu-Wei Sung (National Taiwan University), Dheeraj Rajaram Reddy (Manipal University)


Apa yang dimaksud dengan SIG Addons?

Dengan diperkenalkannya TensorFlow 2.0, kami telah membuat Special Interest Group (SIG) baru yang dikenal sebagai TensorFlow Addons. Grup ini mengatur repositori kontribusi yang sesuai dengan pola API yang sudah mapan, tetapi mengimplementasikan fungsionalitas baru yang tidak tersedia di TensorFlow inti. Sebagai contoh, fungsionalitas baru ini bisa berupa algoritme baru dari makalah yang diterbitkan atau fungsionalitas yang hilang untuk prapemrosesan dan pemfilteran data. Lihat di Github: https://github.com/tensorflow/addons
Sebagai SIG yang dikelola komunitas, Addons memungkinkan pengguna untuk memasukkan ekstensi baru ke ekosistem TensorFlow secara berkelanjutan. Repositori mengikuti pendekatan modular dengan subpaket dan submodul yang dikelola oleh anggota komunitas yang ditunjuk. Mulai sekarang, subpaket ini meliputi:
  • tfa.activations
  • tfa.callbacks
  • tfa.image
  • tfa.layers
  • tfa.losses
  • tfa.metrics
  • tfa.optimizers
  • tfa.rnn
  • tfa.seq2seq
  • tfa.text
Tujuan lain dari komunitas TensorFlow Addons adalah menyediakan dokumentasi dan contoh untuk semua fungsionalitas melalui Google Colab Notebooks. Ini akan membantu developer baru dan penggemar machine learning untuk tidak hanya memahami fungsi, tetapi juga akan memberikan pendekatan praktik terbaik dan contoh implementasi.
TensorFlow Addons menggunakan empat platform untuk organisasi dan komunikasi:

Pindah dari tf.contrib

Tujuan project ini mungkin terdengar sangat familier, dan Addons memang tempat landing untuk banyak tf.contrib yang telah dipindahkan dari repositori TensorFlow sentral. Dalam beberapa tahun terakhir, banyak kode di tf.contrib menjadi tidak terpakai, tidak terawat, rumit, dan sangat sulit digunakan karena dokumentasinya. Banyak API khusus dibuat di tf.contrib ini sehingga semakin mempersulit integrasi fungsionalitasnya ke dalam kode Anda. Dengan memindahkan algoritme yang paling relevan ke TensorFlow-Addons dan membersihkannya, sebagian besar kode yang Anda gunakan di tf.contrib juga akan tersedia di addons.. Selain itu, banyak fungsionalitas baru sudah menjadi bagian dari TF-Addons dan ada banyak lagi yang direncanakan.

Cara menginstal

TensorFlow Addons menyediakan paket pip untuk macOS dan Linux, dengan rencana untuk mendukung Windows dan Anaconda di masa mendatang. Cobalah sekarang dalam rilis tensorflow-2.0 terbaru:
pip install tensorflow-addons
Untuk menggunakan TensorFlow-addons dalam kode Python, Anda bisa mengimpor paket dengan:
import tensorflow as tf
import tensorflow_addons as tfa

Keberlanjutan Repositori

Untuk memastikan bahwa TensorFlow Addons tidak menjadi kuburan kode tidak terpakai, pengelola subpaket dan submodul dihadirkan untuk mengatur bagian repositori. Pengelola ini memiliki tanggung jawab berikut:
  • Secara berkala meninjau dan membuang kode lama dan tidak terpakai
  • Mengelola kandidat yang lulus untuk TensorFlow Core
  • Memastikan kesesuaian API dan kualitas pengujian/kode
  • Mengelola Masalah
  • Meninjau Perubahan
Informasi lebih lanjut dan detail tentang sistem pengelola proxy bisa dilihat di RFC yang baru saja diterima mengenai keberlanjutan Addons:
https://github.com/tensorflow/community/blob/master/rfcs/20190308-addons-proxy-maintainership.md
Kami berharap bahwa kehadiran pengelola dan tinjauan periodik akan menjaga kualitas repositori ini, menjadikan TensorFlow Addons sebagai bagian dari ekosistem TensorFlow yang penting dan sangat berguna untuk tahun-tahun mendatang.

Cara Berkontribusi

Berkontribusi untuk TensorFlow Addons adalah cara yang bagus untuk membuat Anda familier dengan kemajuan terbaru di bidang ML, serta sarana untuk membiasakan diri dengan praktik terbaik TF2.
Langkah awal yang baik bagi kontributor baru adalah membaca dokumen CONTRIBUTING.md di repositori GitHub TensorFlow Addons. Dokumen ini menjelaskan proses peninjauan, gaya coding, dan cara menyiapkan lingkungan pengembangan Anda. Setelah familier dengan struktur umum repositori ini, Anda bisa melihat ke bagian masalah dan memilih masalah yang ingin Anda selesaikan. Masalah yang diberi label help wanted dan good first issue adalah tempat yang bagus untuk memulai. Kami juga mendorong kontribusi contoh dan praktik terbaik yang bisa dibuat menggunakan Google Colab.

Silakan tulis komentar di masalah yang sesuai atau buka masalah baru sebelum Anda mulai bekerja untuk menghindari beberapa kontribusi atau pekerjaan yang tidak selaras dengan roadmap. Setelah itu, cukup cabangkan repositori Addons, terapkan kode Anda dan buka permintaan pull setelah Anda selesai. Salah satu pengelola akan meninjau perubahan Anda dan menggabungkannya ke cabang master setelah selesai.

Contoh TFA

Lihat cara mengintegrasikan addons secara mulus dengan TensorFlow inti:

https://github.com/tensorflow/addons/blob/master/examples/losses_triplet.ipynb