構建于 PyTorch 之上,Facebook 母公司開源 Bean Machine
Meta(前身為 Facebook)近日在 GitHub 平臺發布一個名為 Bean Machine 的新項目,Meta 將 Bean Machine 定義為概率編程系統,能夠使人工智能模型中的不確定性更容易表示和學習。
Bean Machine 能夠用于開發特定領域的概率模型,并使用自動、不確定性感知學習算法自動學習模型中尚未觀察到的屬性。根據 Meta 的說法,Bean Machine 與其他機器學習方法相比,提供的優勢包括:
不確定性估計:
- 預測是通過概率分布形式被可靠的不確定性度量來量化的。分析師不僅可以了解系統的預測,還可以了解其他可能預測的相對可能性。
表達性:
- 能夠輕松的在源代碼中直接編碼豐富的模型,這允許人們將模型的結構與問題的結構相匹配。
可解釋性:
- 由于模型與領域匹配,因此可以查詢模型的中間學習屬性。這意味著用戶不僅可以使用“黑匣子”,還可以解釋為何會做出特定的預測,進而可以在模型開發過程中幫助開發者。
深度學習中包含兩種不確定性,即認知不確定性和偶然不確定性(Epistemic Uncertainty & Aleatoric Uncertainty)。認知不確定性可以描述由于訓練數據并不合適導致模型不知道的內容,而偶然不確定性是由觀察的自然隨機性產生的不確定性。只要有足夠的訓練樣本,認知上的不確定性就會減少,但即使提供更多的數據,也無法減少偶然不確定性。
Bean Machine 對預測進行了量化,以概率分布的形式對不確定性進行可靠的衡量,這也使得開發者對 Bean Machine 的使用變得簡單而直觀 —— 無論是編寫模型,還是對其學習策略進行高級修補。
Bean Machine 建立在 Meta 的 PyTorch 機器學習框架和 Bean Machine Graph(BMG)之上,其中 BMG 是一個定制的 C++ 后端。感興趣的用戶可以訪問項目頁面,了解更多詳情。不過需要注意的是,Bean Machine 目前仍處于測試階段,API 可能會隨著項目的發展而產生變化。
本文轉自OSCHINA
本文標題:構建于 PyTorch 之上,Facebook 母公司開源 Bean Machine
本文地址:https://www.oschina.net/news/174746/meta-releases-bean-machine