11 個 AI 和機器學習模型的開源框架

danny_2018發表於2018-08-13

本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃

過去十年中人工智慧的飛速增長刺激了當今就業市場對AI和ML技能的巨大需求。從金融到醫療保健,現在幾乎所有行業都在使用基於ML的技術。本文將介紹一系列可用於構建機器學習模型的最佳框架和庫。

1. TensorFlow

TensorFlow是Google開發的一款開源軟體庫,專為深度學習或人工神經網路而設計。TensorFlow允許你可以使用流程圖建立神經網路和計算模型。它是可用於深度學習的最好維護和最為流行的開源庫之一。TensorFlow框架可以使用C++也可以使用Python。其他類似的基於Python的深度學習框架包括TheanoTorch,Lasagne,Blocks,MXNet,PyTorch和Caffe。你可以使用TensorBoard進行簡單的視覺化並檢視計算流水線。其靈活的架構允許你輕鬆部署在不同型別的裝置上。不利的一面是,TensorFlow沒有符號迴圈,不支援分散式學習。此外,它還不支援Windows。

2. Theano

Theano是一個專為深度學習而設計的Python庫。你可以使用該工具定義和評估數學表示式,包括多維陣列。針對GPU進行了優化,該工具具有與NumPy整合,動態C程式碼生成和符號區分等功能。但是,為了獲得高度的抽象,該工具必須與Keras,Lasagne和Blocks等其他庫一起使用。Theano支援Linux,Mac OS X和Windows等平臺。

3.Torch

Torch是一款針對ML演算法且又簡單易用的開源計算框架。該工具提供了高效的GPU支援,N維陣列,數值優化例程,線性代數例程以及用於索引、切片和置換的例程。基於Lua的指令碼語言,該工具帶有大量預先訓練好的模型。這款靈活高效的ML研究工具支援諸如Linux,Android,Mac OS X,iOS和Windows等主流平臺。

4.Caffe

Caffe是一款深受歡迎的用於構建應用程式的深度學習工具。該工具是賈揚清在加州大學伯克利分校讀博士期間為他的一個專案而建立的,具有良好的Matlab / C ++ / Python介面。該工具允許你在不編寫程式碼的情況下使用文字快速將神經網路應用於問題。Caffe不完全地支援多GPU訓練。該工具支援Ubuntu,Mac OS X和Windows等作業系統。

5.Microsoft CNTK

Microsoft Cognitive Toolkit是具有C#/C++/Python介面支援的最快的深度學習框架之一。此款開源框架帶有強大的C++ API,比TensorFlow更快、更準確。該工具還支援內建資料讀取器的分散式學習。它支援諸如前饋,CNN,RNN,LSTM和序列到序列等演算法。該工具支援Windows和Linux。

6.Keras

用Python編寫的Keras是一個開源庫,旨在簡化新DL模型的建立。這種高階神經網路API可以在TensorFlow,Microsoft CNTK等深度學習框架之上執行。該工具以其使用者友好性和模組化而聞名,因而非常適合快速原型開發。該工具針對CPU和GPU進行了優化。

7. scikit-learn

scikit-learn是一個開源的Python庫,專為機器學習而設計。基於諸如NumPy,SciPy和matplotlib等庫的scikit-learn可用於資料探勘和資料分析。scikit-learn配備了各種ML模型,包括線性和邏輯迴歸器、SVM分類器和隨機森林。該工具可用於多個ML任務,如分類,迴歸和聚類。scikit-learn支援Windows和Linux等作業系統。缺點是,GPU的效率不高。

8. Accord.NET

Accord.NET是用C#編寫的ML框架,專為構建生產級計算機視覺、計算機試聽、訊號處理和統計應用程式而設計。它是一個文件記錄良好的ML框架,可以輕鬆實現音訊和影像處理。Accord.NET可用於數值優化、人工神經網路和視覺化。它支援Windows。

9. Spark MLlib

Apache Spark的MLIib是一個ML庫,可用於Java,Scala,Python和R語言。因為是專為處理大規模資料而設計的,所以此強大的庫具有許多演算法和實用工具,如分類、迴歸和聚類。該工具在Python和R庫中與NumPy互動操作。它可以輕鬆插入到Hadoop工作流程中。

10. Azure ML Studio

Azure ML Studio是面向資料科學家的現代雲平臺。它可以用於在雲中開發ML模型。 藉助廣泛的建模選項和演算法,Azure非常適合構建較大的ML模型。此服務為每個帳戶提供10GB的儲存空間。它可以與R和Python程式一起使用。

11.Amazon Machine Learning

Amazon Machine Learning (AML) 是一個ML服務,提供用於建立ML模型的工具和嚮導。藉助視覺化輔助功能和易用的分析功能,AML旨在讓開發人員更方便地使用ML。AML可以連線到儲存在Amazon S3、Redshift或RDS中的資料。

機器學習框架具有易於理解和編碼的預構建元件,因而一個好的ML框架能夠降低定義ML模型的複雜性。讓我們藉助這些開源ML框架,幫助輕鬆快速地構建ML模型。

譯文連結:http://www.codeceo.com/article/11-frameworks-for-ai-and-ml.html
英文原文:11 Open-Source Frameworks for AI and Machine Learning Models
翻譯作者:碼農網 – 小峰
轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]

相關文章