stripe/rainier
Bayesian inference in Scala.
解決的問題
Rainier 提供了一個基於馬爾可夫鏈蒙特卡洛(MCMC)的高性能 Scala API,用於貝葉斯推論。它允許使用者建立具有連續參數的生成模型,從觀測資料中推斷後驗分佈,進而用於預測與決策。
工作原理
Rainier 使用靜態的、類似 TensorFlow 的計算圖,結合自動微分與快速的 CPU 執行。它完全以純 Scala 實作,為數值計算產生最佳化、非包裝、JIT 友好的 JVM 位元碼。推論透過類似 Stan 和 PyMC3 的哈密頓蒙特卡洛(HMC)採樣器變體來執行。
適用對象
在 JVM 生態系統(如使用 Spark 或 Hadoop 集群)中工作的開發人員與資料科學家,需要一個高性能的貝葉斯推論庫,適用於資料可放入單一機器記憶體的模型。
主要亮點
- 透過最佳化 JVM 位元碼實現高性能 CPU 執行。
- 純 Scala 實作,外部相依性極少,無 JNI 庫。
- 帶自動微分的靜態計算圖。
- 积極預計算資料以加速執行。
- 可輕鬆部署至 Spark 或 Hadoop 集群。
相關
- 專案
- 專案
- 專案
- 專案