2023-12-10|閱讀時間 ‧ 約 23 分鐘

Apple Machine Learning Framework - MLX

最近 Apple 為自家晶片推出一項機器學習的框架,稱做「MLX」。

雖然說是新框架,但其中還是跟 NumPy, PyTorch, Jax 和 ArrayFire 相似,但最大的不同在於因為是 Apple 自行設計,在 M 系列晶片的「統一記憶體」上能直接計算資料。

在 GitHub 上,官方主要提出以下主要功能:

  1. API:用法非常類似於 NumPy 與 PyTorch,也同時有齊全的 C++ API,因此可以用簡單的語法建立複雜的模型。
  2. 可組合函數轉換:能自動在微分、轉換向量、算圖上自動最佳化函數。
  3. 動態圖像建構:MLX 會自動動態 Build,但更改參數時也不會讓 Build 變慢,可讓 Debug 時更簡單。
  4. 支援多裝置:可以在任何支援的裝置上執行,目前有 CPU 和 GPU。
  5. 統一記憶體:正如前面提到的,MLX 陣列是存在共享記憶體,因此不用在多個記憶體裝置上移動資料。

在 GitHub 上,官方也提供簡單的範例,可讓開發者測試。連結

包含:

  1. Transformer language model
  2. Meta 的 LLaMA 以及經過 fine-tuning 的 LoRA
  3. Stable Diffusion
  4. OpenAI 的 Whisper
分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.