TensorFlow — Google Brain jamoasi tomonidan ishlab chiqilgan va 2015-yilda ochiq manba sifatida taqdim etilgan, mashinali o’qitish va chuqur neyron tarmoqlarni qurish uchun mo’ljallangan kutubxona. U Google’ning ichki, avvalgi “DistBelief” tizimining o’rnini bosish uchun yaratilgan.
Google Brain jamoasi tomonidan yaratilishi
TensorFlow’gacha Google o’zining ichki mashinali o’qitish infratuzilmasi uchun DistBelief nomli tizimdan foydalangan, ammo bu tizim moslashuvchanlik jihatidan cheklangan edi. TensorFlow uni almashtirish uchun yaratilib, keyinchalik Google tomonidan ochiq manba sifatida chop etildi, bu esa tashqi tadqiqotchilar va kompaniyalarga ham foydalanish imkonini berdi.
Hisoblash grafigi modeli
TensorFlow nomi uning ichki ishlash printsipidan kelib chiqadi — ma’lumotlar “tensor” (ko’p o’lchamli massiv) sifatida, hisoblashlar esa grafik tugunlari orqali oqib o’tadi. Dastlabki versiyalarda dasturchi avval to’liq hisoblash grafigini e’lon qilishi, so’ngra uni maxsus “session” orqali bajarishi kerak edi — bu yondashuv samarali, ammo debug qilish uchun noqulay hisoblangan.
TensorFlow 2.0’dagi o’zgarishlar
2019-yilda chiqarilgan TensorFlow 2.0 “eager execution” rejimini standart qilib belgiladi, unda kod odatiy Python kabi darhol bajariladi, alohida grafik qurish bosqichisiz. Bu o’zgarish TensorFlow’ni PyTorch‘ning intuitiv dasturlash uslubiga yaqinlashtirdi va uni yangi dasturchilar uchun ancha qulayroq qildi.
Keras bilan birlashishi
TensorFlow 2.0’dan boshlab, Keras — yuqori darajali, sodda API — TensorFlow’ning rasmiy asosiy interfeysiga aylandi. Bu birlashish dasturchiga past darajadagi TensorFlow imkoniyatlariga ehtiyoj bo’lmaganda, Keras orqali ancha qisqa kod bilan neyron tarmoq qurish imkonini beradi.
PyTorch bilan raqobat
TensorFlow ishlab chiqarish (production) muhitlarida, ayniqsa mobil va chekka qurilmalarga (TensorFlow Lite orqali) joylashtirishda kuchli o’rin tutadi, PyTorch esa tadqiqot hamjamiyati orasida ko’proq mashhur. So’nggi yillarda ikkala kutubxona ham bir-birining kuchli tomonlarini o’zlashtirib, farq asta-sekin kamayib bormoqda.
Bog’liq tushunchalar
Google, Mashinali o’qitish, Keras, PyTorch, Neyron tarmoq, Python, Chuqur o’rganish