機器學習的5個最佳開源框架,AI入門應該先學哪個?

在本文中,我們來看看機器學習的一些最佳框架和庫。 這個列表是由我根據各種參數創建的,有些人肯定不會接受它,但它又是會因人而異。

這些框架中的每一個都是彼此不同的,並且需要花費很多時間來學習,在製作此列表時我們處理的是除基本功能之外的功能,用戶群和社區和支持是最重要的參數之一。 一些框架在數學上更加面向,因此更傾向於統計而不是神經網絡。 其中一些提供了豐富的線性代數工具; 有些主要只關注深度學習。

1、TensorFlow

TensorFlow是一個開源軟件庫,用於完成一系列任務的基於數據的編程,由Google Brain團隊開發,最初於2015年11月9日發佈,儘管穩定版本僅在今年4月27日發佈。它能夠非常有效地進行迴歸,分類,神經網絡等,甚至能夠在CPU和GPU上運行。由於其功能複雜,TensorFlow在早期階段很難掌握,因為用戶需要很好地理解Numpy數組。 Numpy是一個Python框架,有助於處理n維數組。

機器學習的5個最佳開源框架,AI入門應該先學哪個?

TensorFlow的優點:

靈活性:它是一個高度靈活的系統,為用戶提供可以同時提供的同一模型的多個模型和版本。這種靈活性有助於非自動遷移到更新版本。

可移植性:它可以在GPU,CPU,臺式機,服務器和移動計算平臺上運行。您可以在移動設備上部署經過培訓的模型作為產品的一部分,這就是它作為真正的可移植性功能的方式。

研究與開發

自動分化

性能佳

2、APACHE Spark

Spark是一個開源集群計算框架,最初是在伯克利實驗室開發的,最初於2014年5月26日發佈,主要用Scala,Java,Python和R.編寫,雖然是在加州大學伯克裡實驗室製作的,後來又被捐贈了 到Apache Software Foundation。

機器學習的5個最佳開源框架,AI入門應該先學哪個?

Spark核心基本上是這個項目的基礎,這也很複雜,但它不是擔心Numpy數組,而是讓你使用它自己的Spark RDD數據結構,任何知道大數據的人都可以理解它的用途。 作為用戶,我們還可以使用Spark SQL數據框。 憑藉所有這些功能,它可以為您創建密集和火花特徵標籤向量,從而帶來很多複雜性,以滿足ML算法的要求。

Spark ML的優點:

簡單性:來自R和Python等工具的數據科學家熟悉的簡單API

可擴展性:能夠在小型和大型機器上運行相同的ML代碼

端到端精簡

兼容性

3、Caffe

Caffe是BSD許可下的開源框架。 CAFFE(用於快速特徵嵌入的卷積體系結構)是由加州大學伯克利分校開發的深度學習工具,該框架主要用CPP編寫。 它支持許多不同類型的深度學習架構,主要關注圖像分類和分割。 它支持幾乎所有主要方案,並且是完全連接的神經網絡設計,它提供GPU以及基於CPU的加速,以及TensorFlow。

機器學習的5個最佳開源框架,AI入門應該先學哪個?

CAFFE主要用於學術研究項目和設計初創公司Prototypes。 甚至雅虎已經與Apache Spark集成了caffe來創建另一個偉大的深度學習框架CaffeOnSpark。

Caffe框架的優點:

Caffe是應用深度神經網絡解決問題的最快方法之一

支持開箱即用的GPU培訓

相當完善的Mat實驗室和python界面

通過設置單個標誌在GPU計算機上進行訓練,然後部署到商品群集或移動設備,在CPU和GPU之間切換。

速度使Caffe成為研究實驗和行業部署的理想選擇。

Caffe每天可以使用一個NVIDIA K40 GPU *處理超過60M的圖像。 這是用於推理的1 ms /圖像和用於學習的4 ms /圖像,更新的庫版本和硬件仍然更快。 我們相信Caffe是最快的修道院實施之一。

4、Torch

Torch也是一個機器學習開源庫,一個適當的科學計算框架。 它的製造商稱它為最簡單的ML框架,雖然它的複雜性相對簡單,它來自Lua編程語言界面的腳本語言界面。 其中只有數字(無int,short或double),沒有像其他語言那樣進一步分類。 因此它易於操作和功能。

Torch由Facebook AI Research Group,IBM,Yandex和Idiap Research Institute使用,它最近擴展了其對Android和iOS的使用。

機器學習的5個最佳開源框架,AI入門應該先學哪個?

Torch框架的優點:

Torch使用非常靈活

Torch提供高水平的速度和效率

提供大量預訓練模型

5、Scikit-Learn

Scikit-Learn是一個非常強大的免費使用Python的Python庫,廣泛用於構建模型。 它建立在許多其他庫的基礎上,即SciPy,Numpy和matplotlib,它也是統計建模技術最有效的工具之一,即分類,迴歸,聚類。

機器學習的5個最佳開源框架,AI入門應該先學哪個?

Scikit-Learn具有監督和無監督學習算法甚至交叉驗證等功能。 Scikit-learn主要用Python編寫,一些用Cython編寫的核心算法來實現性能。 支持向量機由LIBSVM周圍的Cython包裝器實現。

Sci-Kit學習的優點:

許多主要算法的可用性

對數據挖掘非常有效

支持大多數實際任務

廣泛用於複雜的任務

為什麼推薦TensorFlow ?

在中國,有很多公司都在使用 TensorFlow,比如京東、騰訊、小米、出門問問等公司,都在利用 TensorFlow 搭建自己的 AI、機器學習平臺。

所以,程序員或者是初學者,以及對代碼較感興趣的人,都可以學一學TensorFlow。

機器學習的5個最佳開源框架,AI入門應該先學哪個?

如果你想更加了解TensorFlow,或者說,如何讓自己使用Python開發的機器學習模型快捷低成本的跑起來,深度兼容TensorFlow?谷歌的另一款工具或許可以幫到你,也就是谷歌的AIY Projects項目。 AIY Vision Kit附帶的軟件運行三個基於TensorFlow的神經網絡。 其中一個基於谷歌的MobileNets平臺,能夠識別超過1,000個日常物品。 第二個可以在圖像中發現面部和表情。 最後一個是專門用於識別貓,狗和人的神經網絡。


分享到:


相關文章: