對于python這么簡單易學(xué)還優(yōu)美的語言來說會得到大家的喜愛是很正常的,智能時代的來臨也讓python有了更多可以展示的機(jī)會,那么對于0基礎(chǔ)的學(xué)員來說想要學(xué)習(xí)python的話也是不難的,下面粵嵌科技的小編就來和大家說下python常用的數(shù)據(jù)庫有哪些?
Scikit-learn
你剛開始學(xué)機(jī)器學(xué)習(xí)嗎?如果你需要一個涵蓋了特征工程,模型訓(xùn)練和模型測試所有功能的程序庫,scikit-learn是你的選擇!這個的免費(fèi)軟件提供了機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘所需要的所有工具。它是目前Python機(jī)器學(xué)習(xí)的標(biāo)準(zhǔn)庫。要使用任何成熟的機(jī)器學(xué)習(xí)算法都推薦使用這個庫。
這個程序庫支持分類和回歸,實現(xiàn)了基本所有的經(jīng)典算法(支持向量機(jī),隨機(jī)森林,樸素貝葉斯等等)。程序庫的設(shè)計讓遷移算法十分容易,使用不同的算法做實驗非常輕松。這些經(jīng)典算法可用性很強(qiáng),能用于大量不同的情況。
但這并不是Scikit-learn的全部功能,它同樣可以用來做降維,聚類等等任何你所能想到的。由于它構(gòu)建在Numpy和Scipy之上(所有的數(shù)值計算都是由C語言來完成的),它的運(yùn)行速度也超快。
這些例子可以告訴你這個庫的功能,如果你想學(xué)習(xí)如何使用它,可以閱讀教程。
NLTK
NLTK不算是一個機(jī)器學(xué)習(xí)的程序庫,但它是做自然語言處理(NLP)必須的一個庫。除了用于文字處理的功能,例如聚類,分詞,詞干提取,標(biāo)記,解析等,它還包含了大量的數(shù)據(jù)集和其他關(guān)于詞法的資源(可用于模型訓(xùn)練)。
把所有這些打包在一起的好處就不用再多說了。如果你對NLP感興趣,可以看看這些教程!
Theano
Theano被廣泛應(yīng)用于工業(yè)界和學(xué)術(shù)界,它是所有深度學(xué)習(xí)架構(gòu)的鼻祖。Theano是用Python,結(jié)合Numpy實現(xiàn)的。你可以用它來構(gòu)建用多維數(shù)組實現(xiàn)神經(jīng)網(wǎng)絡(luò)。Theano會處理所有數(shù)學(xué)計算,你不需要知道底層的數(shù)學(xué)公式實現(xiàn)。
早在支持使用GPU進(jìn)行計算不像今天這樣普及的時候,Theano就已經(jīng)提供了對GPU計算的支持。這個程序庫目前已經(jīng)非常成熟,能夠支持很多不同類型的操作。這使得Theano可以在和其他庫比較的時候勝出。
目前關(guān)于Theano的問題是API不是很好用,對于新手來說上手困難。不過市面上已經(jīng)有了解決這個問題的封裝包,比如Keras, Blocks 和 Lasagne,都可以簡化Theano的使用。
TensorFlow
谷歌大腦團(tuán)隊為了內(nèi)部使用創(chuàng)造了TensorFlow,2015年將其開源化。設(shè)計初衷是取代他們已有的封閉機(jī)器學(xué)習(xí)框架DistBelief,據(jù)說該構(gòu)架太過于依賴Google的整體構(gòu)架,也不夠靈活,在分享代碼的時候非常不方便。
于是就有了TensorFlow。谷歌從以前的錯誤中吸取了教訓(xùn)。許多人認(rèn)為TensorFlow是Theano的改進(jìn)版,它提供了更靈活和好用的API。可以用于科研和工業(yè)界,同時支持使用大量的GPU進(jìn)行模型訓(xùn)練。TensorFlow支持的操作沒有Theano多,但是它的計算可視化比Theano好。
TensorFlow目前非常流行。如果今天這篇文章里面提到的名字你只聽說了一個,那很有可能是這個。每天都有新的提到TensorFlow的博文或?qū)W術(shù)文章發(fā)表。這個流行度提供了大量的用戶和教程,新人很容易上手。
Keras
Keras是一個提供更高層神經(jīng)網(wǎng)絡(luò)API的庫,它可以基于Theano或者TensorFlow。它擁有這兩個庫強(qiáng)大的功能卻又同時大大地簡化了使用難度。它將用戶的體驗放在首要地位,提供簡單的API和很有用的錯誤信息。
同時Keras的設(shè)計基于模塊,這就使得你能自由組合不同的模型(神經(jīng)層,成本函數(shù)等等),而且模型的可擴(kuò)展性很好,因為你只需要簡單的將新模塊跟已有的連起來即可。
有人覺得Keras太好用了,簡直就是在作弊。如果你開始用深度學(xué)習(xí),可以看看例子 和 文檔,對于你可以用它做什么有個數(shù)。如果你要學(xué)習(xí)使用它,可以從 這個教程開始。
兩個類似的庫有Lasagne 和 Blocks, 但它們只支持Theano。如果你試過了Keras但是你不喜歡它你可以試試這些其他的庫,也許它們更適合你。
PyTorch
還有一個有名的深度學(xué)習(xí)架構(gòu)是Torch,它是用Lua實現(xiàn)的。Facebook用Python實現(xiàn)了Torch,叫做PyTorch,并將它開源了。用這個庫你可以使用Torch使用的低層的庫,但是你可以使用Python而不是Lua。
PyTorch對查錯的支持很好,這是因為Theano和TensorFlow使用符號計算而PyTorch則不是。使用符號計算就表明在一行代碼被解釋的時候,一個操作(x+y)并不會被執(zhí)行,在那之前,它必須先被編譯(解釋成CUDA或者C語言)。這就讓用Theano和TensorFlow的時候很難查錯,因為很難把報錯跟當(dāng)前的代碼聯(lián)系起來。這樣做有它的好處,不過查錯簡單不在其中。
以上就是粵嵌科技的小編給大家整理的關(guān)于python的數(shù)據(jù)庫的內(nèi)容了,如果說你是0基礎(chǔ)想要學(xué)習(xí)python的話,那么粵嵌科技?xì)g迎大家來我們公司的python培訓(xùn)班進(jìn)行實地考察,也可以點(diǎn)擊我們文章下面的獲取試聽資格按鈕來獲取我們的python課程免費(fèi)試聽資格,在試聽中可以更加深入的了解我們粵嵌科技。