10 個值得一試的開源深度學習框架
本周早些時候 Google 開源了 TensorFlow(GitHub),此舉在深度學習領域影響巨大,因為 Google 在人工智能領域的研發成績斐然,有著雄厚的人才儲備,而且 Google 自己的 Gmail 和搜索引擎都在使用自行研發的深度學習工具。
無疑,來自 Google 軍火庫的 TensorFlow 必然是開源深度學習軟件中的明星產品,登陸 GitHub 當天就成為最受關注的項目,當周獲得評星數就輕松超過 1 萬個。
對于希望在應用中整合深度學習功能的開發者來說,GitHub 上其實還有很多不錯的開源項目值得關注,首先我們推薦目前規模人氣最高的 TOP3:
一、Caffe。源 自加州伯克利分校的 Caffe 被廣泛應用,包括 Pinterest 這樣的 web 大戶。與 TensorFlow 一樣,Caffe 也是由 C++ 開發,Caffe 也是 Google 今年早些時候發布的 DeepDream 項目(可以識別喵星人的人工智能神經網絡)的基礎。
二、Theano。2008 年誕生于蒙特利爾理工學院,Theano 派生出了大量深度學習 Python 軟件包,最著名的包括 Blocks 和 Keras。
三、Torch。Torch 誕生已經有十年之久,但是真正起勢得益于去年 Facebook 開源了大量 Torch 的深度學習模塊和擴展。Torch 另外一個特殊之處是采用了不怎么流行的編程語言 Lua(該語言曾被用來開發視頻游戲)。
除了以上三個比較成熟知名的項目,還有很多有特色的深度學習開源框架也值得關注:
四、Brainstorm。來自瑞士人工智能實驗室 IDSIA 的一個非常發展前景很不錯的深度學習軟件包,Brainstorm 能夠處理上百層的超級深度神經網絡——所謂的公路網絡 Highway Networks。
五、Chainer。 來自一個日本的深度學習創業公司 Preferred Networks,今年 6 月發布的一個 Python 框架。Chainer 的設計基于 define by run 原則,也就是說,該網絡在運行中動態定義,而不是在啟動時定義,這里有 Chainer 的詳細文檔。
六、Deeplearning4j。 顧名思義,Deeplearning4j 是”for Java”的深度學習框架,也是首個商用級別的深度學習開源庫。Deeplearning4j 由創業公司 Skymind 于 2014 年 6 月發布,使用 Deeplearning4j 的不乏埃森哲、雪弗蘭、博斯咨詢和 IBM 等明星企業。
DeepLearning4j 是一個面向生產環境和商業應用的高成熟度深度學習開源庫,可與 Hadoop 和 Spark 集成,即插即用,方便開發者在 APP 中快速集成深度學習功能,可應用于以下深度學習領域:
-
人臉/圖像識別
-
語音搜索
-
語音轉文字(Speech to text)
-
垃圾信息過濾(異常偵測)
-
電商欺詐偵測
七、Marvin。是普林斯頓大學視覺工作組新推出的 C++ 框架。該團隊還提供了一個文件用于將 Caffe 模型轉化成語 Marvin 兼容的模式。
八、ConvNetJS。這是斯坦福大學博士生 Andrej Karpathy 開發瀏覽器插件,基于萬能的 JavaScript 可以在你的游覽器中訓練神經網絡。Karpathy 還寫了一個 ConvNetJS 的入門教程,以及一個簡潔的瀏覽器演示項目。
九、MXNet。出自 CXXNet、Minerva、Purine 等項目的開發者之手,主要用 C++ 編寫。MXNet 強調提高內存使用的效率,甚至能在智能手機上運行諸如圖像識別等任務。
十、Neon。由創業公司 Nervana Systems 于今年五月開源,在某些基準測試中,由 Python 和 Sass 開發的 Neon 的測試成績甚至要優于 Caffeine、Torch 和谷歌的 TensorFlow。