Memilih antara TensorFlow atau Theano sebagai pendukung untuk Keras

20

Keras mendukung TensorFlow dan Theano sebagai backend: apa pro / kontra dari memilih satu versus yang lain, selain fakta bahwa saat ini tidak semua operasi diimplementasikan dengan backend TensorFlow?

Franck Dernoncourt
sumber
4
Kembali ke ini. Saya pikir saya akan mengubah pendapat saya hari ini: D
Dawny33
@ Dawny33 terima kasih saya akan menonton untuk jawaban yang diperbarui :-)
Franck Dernoncourt

Jawaban:

9

Jika saya diberi pilihan, saya akan pergi dengan Theano .

Alasan:

  • Implementasi RNN dan API yang canggih, yang sayangnya tidak dimiliki TensorFlow, dan masih memiliki jalan panjang . Dan di sebuah domain di mana RNN adalah tren kemarahan, Theano memiliki keunggulan besar di sana.
  • Berbagai implementasi yang sangat luas . TensorFlow memiliki jalan panjang untuk mengejar ketinggalan. Banyak model ML baru-baru ini telah dilakukan dengan bantuan Theano, jadi itu adalah sesuatu seperti standar ketika datang ke jaringan saraf.
  • Dioptimalkan dan ditingkatkan perulangan : Pemindaian Theano adalah cara yang luar biasa untuk perulangan di jaringan saraf, yang memanfaatkan kerangka kerja pengurangan peta yang mengagumkan. Tapi, saya cukup yakin TensorFlow akan memperbaiki ini karena penciptanya Jeff Dean adalah ayah dari Peta Reduce. Namun, seperti yang sekarang; itu Theano
  • Keunggulan besar dalam analitik video.

Namun, TensorFlow mendukung antarmuka cpp dan Python yang mungkin menjadi keuntungan dengan komunitas cpp. Tapi, ketika datang ke ML dan produk-produk ilmu data, Python telah menjadi standar, sehingga tidak akan menjadi IMO yang besar

Namun, penyebaran model dan kemudahan penggunaan dalam produksi adalah tempat TensorFlow memiliki keunggulan nyata. Karena menggunakan Eigen untuk penyebaran yang ditingkatkan dan mudah, itu akan menjadi kesayangan bagi para insinyur. Jika kompatibel dengan Windows, maka Anda akan melihat migrasi yang sangat besar. Tapi, saya sudah terbiasa dengan overhead Python, saya bisa menunggu sampai lebih dipoles.

Jadi, Theano untuk saat ini. Saya bisa dengan senang hati menunggu TensorFlow untuk mengejar ketinggalan.

Jika Anda menggunakan jaringan saraf kompleksitas sederhana ke rata-rata, ikuti dengan Tensorflow. Jika belajar mendalam, maka Theano.

Dawny33
sumber
1
Mengingat peningkatan TensorFlow selama 1,5 tahun terakhir, apakah Anda sekarang memiliki pendapat yang berbeda?
Seanny123
1
@ Seanny123 saya yakin begitu. Tidak punya waktu untuk menuliskannya sebagai jawaban: D. Akan menulis dalam waktu dekat :). [PS Tidak Terkait: Checkout Pytorch juga]
Dawny33
8

Diumumkan pada 2017-09-28 bahwa Theano akan dihentikan:

Dari https://groups.google.com/forum/#!topic/theano-users/7Poq8BZutbY (Yoshua Bengio):

Setelah hampir sepuluh tahun pengembangan, kami menyesal mengumumkan bahwa kami akan mengakhiri pengembangan Theano kami setelah rilis 1.0, yang akan jatuh tempo dalam beberapa minggu ke depan. Kami akan melanjutkan perawatan minimal agar tetap berfungsi selama satu tahun, tetapi kami akan berhenti secara aktif mengimplementasikan fitur-fitur baru. Theano akan terus tersedia setelah itu, sesuai perikatan kami terhadap perangkat lunak open source, tetapi MILA tidak berkomitmen untuk menghabiskan waktu untuk pemeliharaan atau dukungan setelah jangka waktu tersebut.

Jadi TensorFlow adalah pilihan yang lebih baik.

Franck Dernoncourt
sumber