Beberapa kerangka kerja yang banyak digunakan yang tersedia untuk pembelajaran mendalam adalah Aliran Tensor, Obor Py, Keras, Theano, CNTK, DL4J, Kafe, Jaringan MX, Chainer, Soneta, Swift, ONNX, Gluon, MATLAB, DayungDayung dan sebagainya
Saat memilih kerangka kerja untuk model pembelajaran mendalam Anda, Anda harus mempertimbangkan beberapa poin dasar tentang kerangka kerja seperti:
- Mudah dipahami dan dikodekan
- Open source
- Dukungan komunitas yang baik
- Didokumentasikan dengan baik
- Performa yang baik pada kumpulan data besar
- Harus mampu mengimplementasikan model kompleks seperti CNN, RNN, LSTM dll.
- Perhitungan gradien otomatis
- Harus mengonsumsi lebih sedikit sumber daya
- Dukungan CUDA
Semua kerangka kerja ini bersifat open source, efisien, dan mendukung CUDA. Daripada menulis ratusan baris kode, kita dapat menggunakan salah satu kerangka kerja ini dan membangun model pembelajaran mendalam dengan cepat.
Saya tidak akan menjelaskan secara rinci semua kerangka kerja deep learning. Saya hanya akan menuliskan beberapa poin dasar tentang kerangka kerja tersebut.
TensorFlow
- Dikembangkan oleh Tim Google Brain
- Kerangka kerja pembelajaran mendalam yang paling banyak digunakan hingga saat ini
- Mendukung banyak bahasa seperti Python, C++ dan R
- Dukungan komunitas terbesar dibandingkan dengan kerangka kerja lainnya
- Didokumentasikan dengan baik
- Paling cocok untuk mengimplementasikan model saraf tipe CNN, RNN, LSTM
- Dukungan untuk beberapa perangkat seperti CPU dan GPU
- Tersedia di desktop dan seluler
- Untuk detail lebih lanjut tentang TensorFlow, silakan kunjungi postingan saya ini.
Keras
- Ditulis dalam Python dan dapat berjalan di atas TensorFlow, Theano dan CNTK.
- Sangat cocok untuk pemula karena Anda tidak perlu berurusan dengan pustaka tingkat rendah tidak seperti TensorFlow.
- Untuk detail lebih lanjut tentang Keras, silakan kunjungi postingan saya ini.
PyTorch
- Dikembangkan oleh Facebook AI Group
- Pesaing kuat TensorFlow milik Google
- BantuanWindows, Linux dan macOS
Caffe
- Dikembangkan oleh Yangqing Jia saat menempuh pendidikan Ph.D di Universitas Claifornia, Berkeley.
- Dirilis di bawah lisensi BSD 2-Klausul
- Mendukung C, C++, Python, MATLAB
- Mendukung Windows, Linux dan macOS
CNTK
- Toolkit Kognitif Microsoft
- Mendukung Python, C#, Java dan C++
- Mendukung Windows dan Linux
MX Net
- Dikembangkan oleh Apache Software Foundation
- Dirilis di bawah Lisensi Apache 2.0
- Ditulis dalam C++, Python, R, Julia, JavaScript, Scala, Go, Perl
- Mendukung Windows, Linux dan macOS
- Diucapkan sebagai mix-net
DL4J
- Eclipse Deeplearning4j adalah kerangka kerja pemrograman pembelajaran mendalam yang ditulis untuk Java dan Java Virtual Machine (JVM).
- Ditulis dalam Java, Scala, CUDA, C, C++, Python, Clojure
- Mendukung Linux, macOS, Windows, Android
- Dikembangkan oleh Institut Algoritma Pembelajaran Montreal (MILA), Universitas Montreal
- Dirilis di bawah Lisensi BSD 3-Klausul
- Ditulis dalam Python dan CUDA