Hal Penting untuk Diketahui Tentang Tensorflow 2.0



Aplikasi Deep Learning telah mengubah banyak hal. Beberapa yang memberi harapan untuk masa depan yang lebih cerah, dan beberapa yang menimbulkan kecurigaan. Namun, bagi para pengembang, pertumbuhan aplikasi pembelajaran yang mendalam telah membuat mereka lebih bingung dalam memilih yang terbaik di antara begitu banyak kerangka belajar yang mendalam di luar sana.

TensorFlow adalah salah satu kerangka kerja pembelajaran mendalam yang ada dalam pikiran. Ini bisa dibilang kerangka belajar mendalam yang paling populer di luar sana. Tidak ada yang membenarkan pernyataan itu lebih baik daripada fakta bahwa Tensorflow digunakan oleh orang-orang seperti Uber, Nvidia, Gmail di antara perusahaan-perusahaan besar lainnya untuk mengembangkan aplikasi pembelajaran mendalam yang canggih.

Tetapi saat ini, saya sedang dalam pencarian untuk menemukan apakah itu memang kerangka pembelajaran terbaik yang mendalam. Atau mungkin menemukan apa yang membuatnya menjadi yang terbaik dari semua kerangka kerja yang bersaing dengannya.

Inilah Semua Tentang TensorFlow 2.0


Sebagian besar pengembang dan ilmuwan data lebih suka menggunakan Python dengan TensorFlow. TensorFlow berjalan tidak hanya di Windows, Linux dan Mac, tetapi juga sistem operasi iOS & Android.

TF menggunakan grafik perhitungan statis untuk operasi. Ini berarti bahwa pengembang pertama-tama menentukan grafik, menjalankan semua perhitungan, membuat perubahan pada arsitektur jika perlu dan kemudian melatih kembali model. Secara umum, banyak konsep pembelajaran mesin dan pembelajaran mendalam dapat diselesaikan dengan menggunakan matriks multi-dimensi. Inilah yang dilakukan Tensorflow 2.0 yang membantu menggambarkan hubungan linear antara objek geometri. Tensor adalah unit primitif di mana kita dapat menerapkan operasi matriks dengan mudah dan efektif.

import tensorflow as TF const1 = TF.constant([[05,04,03], [05,04,03]]); const2 = TF.constant([[01,02,00], [01,02,00]]); result = TF.subtract(const1, const2); print(result) 

Output dari kode di atas akan terlihat seperti ini:

 TF.Tensor([[04 02 03] [04 02 03]]) 

Seperti yang Anda lihat saya berikan di sini dua konstanta dan saya telah mengurangi satu nilai dari yang lain dan mendapat objek Tensor dengan mengurangi dua nilai. Juga, dengan Tensorflow 2.0 tidak perlu membuat sesi sebelum menjalankan kode.

Satu hal yang perlu diketahui sebelum bekerja dengan TensorFlow 2.0 adalah Anda harus banyak kode dan juga Anda tidak hanya perlu melakukan operasi aritmatika dengan TensorFlow. Ini lebih tentang melakukan penelitian pembelajaran yang mendalam, membangun prediktor AI, pengklasifikasi, model generatif, jaringan saraf, dan sebagainya. Tentu, TF membantu dengan yang terakhir, tetapi tugas-tugas penting seperti mendefinisikan arsitektur jaringan saraf, mendefinisikan volume untuk output dan input data, semua harus dilakukan dengan pemikiran manusia yang cermat.

Cara tercepat untuk melatih model AI ini adalah tensor processing unit (TPUs) yang diperkenalkan oleh Google pada tahun 2016. TPU menangani masalah pelatihan jaringan saraf dalam beberapa cara.

Kuantisasi - Ini adalah alat yang ampuh yang menggunakan bilangan bulat 8-bit untuk menghitung prediksi jaringan saraf. Misalnya, ketika Anda menerapkan kuantisasi ke model pengenalan gambar seperti Inception v3, Anda akan mengkompres sekitar seperempat dari ukuran asli dari 91MB ke 23MB.

Pemrosesan Paralel - Pemrosesan paralel pada unit pengali Matriks adalah cara yang terkenal untuk meningkatkan kinerja operasi matriks besar melalui pemrosesan Vektor. Mesin dengan dukungan pemrosesan vektor dapat memproses hingga ratusan dan ribuan elemen operasi dalam satu siklus clock tunggal.

CISC - TPU bekerja pada desain CISC yang berfokus pada penerapan instruksi tingkat tinggi yang menjalankan tugas tingkat tinggi seperti mengalikan dan menambahkan berkali-kali dll. TPU menggunakan sumber daya berikut untuk melakukan tugas-tugas kompleks:

  • Matrix Multiplier Unit (MXU): 65.536 unit multiply-and-add 8-bit untuk operasi matriks.
  • Unified Buffer (UB): SRAM 24MB yang berfungsi sebagai register.
  • Activation Unit (AU): Fungsi aktivasi bawaan.

Array sistolik - Array sistolik didasarkan pada arsitektur baru MXU yang juga disebut jantung TPU. MXU membaca nilai satu kali tetapi menggunakannya untuk banyak operasi berbeda tanpa menyimpannya kembali ke register. Ini menggunakan kembali input berkali-kali untuk menghasilkan output. Array ini disebut sistolik karena data mengalir melalui chip dalam gelombang dengan cara yang sama seperti jantung kita memompa darah. Ini meningkatkan fleksibilitas operasional dalam pengkodean dan menawarkan tingkat kepadatan operasi yang jauh lebih tinggi.


Seperti yang Anda lihat, semua poin utama TPU ini membantu menganalisis dan menangani data secara efektif. Selain itu, ia menyediakan dataset TensorFlow yang dapat digunakan pengembang untuk melatih beberapa solusi AI yang dirancang khusus dan untuk pekerjaan penelitian lebih lanjut.

Juga sesuai dengan pembaruan terbaru, Cerebras Systems (perusahaan kecerdasan buatan baru) meluncurkan chip semikonduktor terbesar berdasarkan model TPU. Dalam chip ini, Anda dapat menemukan prosesor terbesar yang pernah dibuat yang dirancang untuk memproses, melatih, dan menangani aplikasi AI. Chip raksasa itu sama dengan ukuran iPad dan menampung 1,2 Triliun transistor.

Salah satu keuntungan terbesar TensorFlow dibandingkan kerangka kerja pembelajaran dalam lainnya adalah dalam hal skalabilitas. Tidak seperti kerangka kerja lain seperti PyTorch, TensorFlow dibangun untuk inferensi skala besar dan pelatihan yang didistribusikan. Namun, ini juga dapat digunakan untuk bereksperimen dengan model pembelajaran mesin baru dan optimisasi. Fleksibilitas ini juga memungkinkan pengembang untuk menerapkan model pembelajaran dalam pada lebih dari satu CPU / GPU dengan TensorFlow.

Kompatibilitas lintas platform


TensorFlow 2.0 kompatibel di semua platform OS utama seperti Windows, Linux, macOS, iOS dan Android. Selain itu, Keras juga dapat digunakan dengan TensorFlow sebagai antarmuka.

Skalabilitas perangkat keras


TensorFlow 2.0 dapat digunakan pada berbagai mesin perangkat keras, dari perangkat seluler hingga komputer skala besar dengan pengaturan rumit. Ini dapat digunakan pada gamut mesin perangkat keras seperti perangkat seluler dan komputer dengan pengaturan yang kompleks. Ini dapat menggabungkan API yang berbeda untuk membangun arsitektur pembelajaran dalam skala besar seperti CNN atau RNN.

Visualisasi


Kerangka kerja TensorFlow didasarkan pada perhitungan grafik dan menyediakan alat visualisasi yang praktis untuk tujuan pelatihan. Alat visualisasi ini, yang disebut TensorBoard memungkinkan pengembang untuk memvisualisasikan pembangunan jaringan saraf, yang pada gilirannya memfasilitasi visualisasi yang mudah dan penyelesaian masalah.

Debugging


Tensorflow memungkinkan pengguna mengeksekusi bagian grafik untuk pengenalan dan pengambilan data diskrit di tepi, sehingga memberikan metode debugging yang rapi.

Kemampuan Grafik Dinamis untuk Penggunaan Mudah


TensorFlow menggunakan fitur yang disebut "Eksekusi yang cepat" yang memfasilitasi kemampuan grafik dinamis untuk penggunaan yang mudah. Ini memungkinkan menyimpan grafik sebagai buffer protokol yang kemudian dapat digunakan untuk sesuatu yang berbeda dari infrastruktur hubungan python, katakanlah, Java.

Mengapa TensorFlow Akan Terus Bertumbuh?


TensorFlow memiliki tingkat pertumbuhan tercepat di antara semua kerangka kerja pembelajaran mendalam lainnya yang ada saat ini. Ini memiliki aktivitas GitHub tertinggi di antara semua repositori lainnya di bagian pembelajaran mendalam, dan jumlah awal tertinggi juga.

Dalam survei tahunan pengembang Stack Overflow 2019, TensorFlow terpilih sebagai kerangka pembelajaran dalam yang paling populer, kerangka kerja kedua yang paling populer, Torch / PyTorch jauh, jauh sekali.

Statistik ini cukup untuk membuktikan dominasi TensorFlow. Tetapi untuk berapa lama itu akan mempertahankan pertumbuhan ini? apakah itu akan melebihi popularitasnya saat ini? Dengan perkenalan dan penerimaan yang luar biasa dari TensorFlow 2.0, yang terakhir tampaknya mungkin.

Source: https://habr.com/ru/post/id466833/


All Articles