進入機器學習和AI並不是一件容易的事。 鑑於目前可用的大量資源,許多有抱負的專業人士和愛好者發現很難建立適當的進入該領域的途徑。 該領域正在不斷髮展,我們必須跟上這一快速發展的步伐。
為了應對今天如此勢不可擋的進化和創新的速度,保持更新和了解ML所取得的進展的一個好方法是通過為許多開源項目做出貢獻來與社區合作。 高級專業人員每天使用的工具。
今天,我們討論關於Python,機器學習和AI的十大開源項目。
1. TensorFlow:
TensorFlow是一個開源軟件庫,它使用數據流圖進行數值計算。 節點表示圖中的數學運算,而圖表邊表示在它們之間流動的多維數據陣列(張量)。
這種靈活的體系結構允許其用戶部署計算,而無需將代碼重寫到桌面,服務器或移動設備中的一個或多個CPU或GPU。 TensorFlow還包括一個名為TensorBoard的數據可視化工具包。
由Google開源的兩款AIY套件讓個人可以輕鬆獲得人工智能。 這兩個套件專注於計算機視覺和語音助理,是一個小型自組裝紙板箱,配有所需的所有組件。
如果你想更加了解TensorFlow,或者說想實踐一下人工智能項目,谷歌的另一款工具或許可以幫到你,也就是谷歌的AIY Projects項目。 AIY Vision Kit附帶的軟件運行三個基於TensorFlow的神經網絡。 其中一個基於谷歌的MobileNets平臺,能夠識別超過1,000個日常物品。 第二個可以在圖像中發現面部和表情。 最後一個是專門用於識別貓,狗和人的神經網絡。
2. Scikit-learn:
Scikit-learn for machine learning是Python中的一個模塊,它建立在SciPy之上。 該項目於2007年由David Cournapeau作為Google Summer of Code項目啟動,從那時起,已經有許多人做出了貢獻。 它目前由一個志願者團隊維護。
3. Keras:
用Python編寫的Keras是一個高級神經網絡API,能夠在TensorFlow或Theano之上運行。 它的開發主要集中在實現快速實驗。
如果您需要深度學習庫,可以使用Keras:
通過用戶友好性,模塊化和可擴展性,可以輕鬆快速地進行原型設計。
支持卷積網絡,循環網絡以及兩者的組合。
在CPU和GPU上無縫運行。
4. PyTorch:
PyTorch是Python中的一個包,為用戶提供以下功能:
憑藉強大的GPU加速,計算Tensor
在基於tape的自動編程系統上構建深度神經網絡
可以重用Python包,如NumPy,SciPy和Cython,以在需要時擴展PyTorch。
5. Theano:
Theano是一個用Python編寫的庫,允許用戶定義,優化和評估有效涉及多維數組的數學表達式。 它可以為了執行有效的符號區分使用GPU。
6. Gensim:
Gensim是Python中的一個庫,用於文檔索引主題建模和大型語料庫的相似性檢索。 目標受眾是信息檢索(IR)和自然語言處理(NLP)社區。
特徵:
所有算法都是w.r.t. 語料庫大小與記憶無關。
直觀的接口
易於插入自己的輸入語料庫/數據流(簡單的流API)
使用其他向量空間算法(平凡轉換API)輕鬆擴展
非常流行的算法的高效多核實現,例如潛在Dirichlet分配(LDA),隨機投影(RP)等等。
分佈式計算:在計算機集群上,能夠運行潛在語義分析和潛在Dirichlet分配.
7. Caffe:
Caffe是一個深入學習的框架,牢記表達,速度和模塊化。 該框架由伯克利AI研究(BAIR)/伯克利視覺與學習中心(BVLC)以及社區貢獻者開發。
8. Chainer:
Chainer是一個基於Python的深度學習框架框架,旨在實現靈活性。 它基於逐個運行的方法(a.k.a.動態計算圖)提供自動差異化API以及面向對象的高級API來構建和訓練神經網絡。
它使用CuPy還支持CUDA / cuDNN進行高性能訓練和推理。
9. Statsmodels:
Statsmodels是Python中的一個包,用於統計計算為其用戶提供Scipy的補充,包括描述性統計,估計以及統計模型的推斷。
10. Shogun:
Shogun是機器學習工具箱,為用戶提供各種統一和高效的機器學習(ML)方法。 工具箱非常無縫地允許多個數據表示,算法類以及通用工具的組合。
閱讀更多 引力空間站 的文章