PyTorch - Pendahuluan

PyTorch didefinisikan sebagai pustaka pembelajaran mesin sumber terbuka untuk Python. Ini digunakan untuk aplikasi seperti pemrosesan bahasa alami. Ini awalnya dikembangkan oleh kelompok penelitian kecerdasan buatan Facebook, dan perangkat lunak Pyro Uber untuk pemrograman probabilistik yang dibangun di atasnya.

Awalnya, PyTorch dikembangkan oleh Hugh Perkins sebagai pembungkus Python untuk LusJIT berdasarkan kerangka kerja Torch. Ada dua varian PyTorch.

PyTorch mendesain ulang dan mengimplementasikan Torch dengan Python sambil berbagi pustaka C inti yang sama untuk kode backend. Pengembang PyTorch menyetel kode back-end ini untuk menjalankan Python secara efisien. Mereka juga mempertahankan akselerasi perangkat keras berbasis GPU serta fitur ekstensibilitas yang membuat Torch berbasis Lua.

fitur

Fitur utama PyTorch disebutkan di bawah ini -

Easy Interface- PyTorch menawarkan API yang mudah digunakan; karena itu dianggap sangat sederhana untuk dioperasikan dan dijalankan dengan Python. Eksekusi kode dalam kerangka ini cukup mudah.

Python usage- Library ini dianggap Pythonic yang terintegrasi dengan mulus dengan tumpukan data science Python. Dengan demikian, ini dapat memanfaatkan semua layanan dan fungsi yang ditawarkan oleh lingkungan Python.

Computational graphs- PyTorch menyediakan platform luar biasa yang menawarkan grafik komputasi dinamis. Jadi, pengguna dapat mengubahnya selama waktu proses. Ini sangat berguna saat developer tidak mengetahui berapa banyak memori yang diperlukan untuk membuat model jaringan neural.

PyTorch dikenal memiliki tiga tingkat abstraksi seperti yang diberikan di bawah ini -

  • Tensor - Larik n-dimensi imperatif yang berjalan pada GPU.

  • Variabel - Node dalam grafik komputasi. Ini menyimpan data dan gradien.

  • Modul - Lapisan jaringan saraf yang akan menyimpan status atau bobot yang dapat dipelajari.

Keuntungan dari PyTorch

Berikut ini adalah keunggulan PyTorch -

  • Sangat mudah untuk men-debug dan memahami kodenya.

  • Ini mencakup banyak lapisan sebagai Torch.

  • Ini mencakup banyak fungsi kerugian.

  • Ini dapat dianggap sebagai ekstensi NumPy ke GPU.

  • Ini memungkinkan membangun jaringan yang strukturnya bergantung pada komputasi itu sendiri.

TensorFlow vs. PyTorch

Kami akan melihat perbedaan utama antara TensorFlow dan PyTorch di bawah ini -

PyTorch TensorFlow

PyTorch terkait erat dengan kerangka kerja Torch berbasis lua yang secara aktif digunakan di Facebook.

TensorFlow dikembangkan oleh Google Brain dan secara aktif digunakan di Google.

PyTorch relatif baru dibandingkan dengan teknologi kompetitif lainnya.

TensorFlow bukanlah hal baru dan dianggap sebagai fitur yang bisa dibawa oleh banyak peneliti dan profesional industri.

PyTorch mencakup semuanya dengan cara yang imperatif dan dinamis.

TensorFlow menyertakan grafik statis dan dinamis sebagai kombinasi.

Grafik komputasi di PyTorch ditentukan selama runtime.

TensorFlow tidak menyertakan opsi waktu proses apa pun.

PyTorch menyertakan fitur penerapan untuk kerangka kerja seluler dan tersemat.

TensorFlow berfungsi lebih baik untuk framework tersemat.