MLX - Framework array mirip NumPy untuk Apple Silicon
(github.com/ml-explore)- Framework array buatan tim riset machine learning Apple, dirancang untuk menjalankan machine learning secara efisien dan fleksibel di Apple Silicon
- Menyediakan Python API yang hampir sama dengan NumPy, serta API C++ yang juga menawarkan semua fungsinya
- Perbedaan dengan NumPy
- Composable function transformations: MLX memiliki transformasi fungsi yang dapat dikombinasikan untuk diferensiasi otomatis, vektorisasi otomatis, dan optimasi graph komputasi
- Lazy Computation: komputasi di MLX bersifat lazy. Array hanya dimaterialisasi saat dibutuhkan
- Multi-device: dapat menjalankan operasi di semua perangkat yang didukung (CPU, GPU, ...)
- Penyusunan graph dinamis: graph komputasi MLX dibangun secara dinamis. Mengubah shape argumen fungsi tidak memperlambat kecepatan kompilasi, dan debugging menjadi sederhana serta intuitif
- Terinspirasi dari framework seperti PyTorch, Jax, dan ArrayFire
- Perbedaan paling menonjol antara framework tersebut dan MLX adalah Unified Memory Model
- Array MLX disimpan di shared memory. Operasi pada array MLX dapat dilakukan di semua jenis perangkat yang didukung tanpa melakukan penyalinan data
- Jenis perangkat yang saat ini didukung adalah CPU dan GPU
- Menyertakan berbagai contoh
- Pelatihan model bahasa Transformer
- Pembuatan teks skala besar dengan LLaMA dan fine-tuning dengan LoRA
- Membuat gambar dengan Stable Diffusion
- Pengenalan suara dengan OpenAI's Whisper
2 komentar
Ini benar-benar terlihat bagus. Saya sering menangani data yang dinamis, jadi saat memakai JAX saya selalu kesulitan...
Oh, ini bagus. Saya akan mencobanya.