BlockBeats haberi, 3 Mart'ta, geliştirici Manjeet Singh (GitHub: maderix), Claude Opus ile iş birliği yaparak Apple'ın gizli özel API'lerini tersine mühendislik yoluyla M4 çipindeki Apple Neural Engine (ANE) üzerinde geri yayılım içeren bir sinir ağı eğitimi gerçekleştirdi. ANE, Apple'ın çıkarım için tasarladığı bir hızlandırıcıdır ve resmi olarak eğitim yeteneği açılmamıştır; geliştiriciler yalnızca CoreML çerçevesi aracılığıyla çıkarım işlevlerine dolaylı olarak erişebilir.
Bu proje, CoreML’i atlayarak _ANEClient`, `_ANECompiler` ve diğer 40’tan fazla özel sınıfı IOKit çekirdek sürücüsüne doğrudan eşler ve bellekte doğrudan model derlemeyi sağlayan _ANEInMemoryModelDescriptor arayüzünü keşfeder — bu, her ağırlık güncellemesinde yeniden derleme gerektirdiğinden eğitim için kritik bir özelliktir. Şu anda tek bir transformer katmanının (dim=768, seq=512) eğitimi gerçekleştirilmiştir; M4 üzerinde her adımda 9,3 ms sürmekte, ANE kullanımı %11,2 (1,78 TFLOPS, teorik maksimum 15,8 TFLOPS). İleri ve geri yayılım için girdi gradyanları ANE üzerinde hesaplanırken, ağırlık gradyanları ve Adam optimizasyon algoritması CPU üzerinde tamamlanmaktadır.
Proje, ANE'nin temel hesaplama primitiflerinin matris çarpımı değil, konvolüsyon olduğunu keşfetti; 1x1 konvolüsyon ile matris çarpımı ifade edilerek yaklaşık 3 katlık bir verimlilik artışı elde edilebiliyor. CoreML'i atlayarak doğrudan çağrı yapıldığında ek 2-4 katlık bir artış sağlanıyor; Apple'ın "38 TOPS" olarak açıkladığı veri yanıltıcıdır. Proje şu anda erken aşamada: yalnızca tek katmanlı eğitim destekleniyor, sentetik veriler kullanılıyor ve işlemi yeniden başlatmakla atlanabilen yaklaşık 119 adet derleme sonrası kaynak sızıntısı var; çok katmanlı eğitim ve gerçek veri desteği halen geliştiriliyor. Proje MIT lisansı altında açık kaynak kodlu olarak yayınlandı ve 5 gün içinde yaklaşık 2.800 yıldız topladı.
