狠狠操夜夜甜|人妻在线中文字幕亚洲无码不卡av|一区二区欧美亚洲|日躁夜躁狠狠躁2001|亚洲,超碰,欧美|18AV成人电影|午夜成人免费在线|婷婷激情网深爱五月|色欲综合成人在线|在线美女搞黄大片

中企動(dòng)力 > 頭條 > python統(tǒng)計(jì)學(xué)

網(wǎng)站性能檢測(cè)評(píng)分

注:本網(wǎng)站頁(yè)面html檢測(cè)工具掃描網(wǎng)站中存在的基本問(wèn)題,僅供參考。

python統(tǒng)計(jì)學(xué)

2017年最流行的十大Python庫(kù) 企業(yè)視頻課程

img

橋雨

關(guān)注

年末是你需要思考過(guò)去一年的成就的時(shí)候。對(duì)于程序員來(lái)說(shuō),這通常是回顧今年發(fā)布的或者最近流行的開源庫(kù),因?yàn)樗鼈兪墙鉀Q特定問(wèn)題的絕佳工具。

在過(guò)去的兩個(gè)多年中,我們都會(huì)在博客中選取我們認(rèn)為在Python社區(qū)最有用的庫(kù)。今年也是如此。

這一次,這份列表基本都是機(jī)器學(xué)習(xí)(ML)的庫(kù)。請(qǐng)非ML庫(kù)的作者而且能夠諒解,這都怪我們的偏見(jiàn)。希望在讀到本文的人能評(píng)論并提出一些被我們忽略的偉大的庫(kù)幫助我們矯正它。

那么,讓我們開始盤點(diǎn)吧!

1. Pipenv

鏈接:https://github/pypa/pipenv

我們?yōu)榻衲昴瓿醢l(fā)布的這個(gè)工具排到榜首,它有能力影響每個(gè)Python開發(fā)者的工作流程,它已經(jīng)成為Python管理依賴項(xiàng)的官方推薦工具。

https://packaging.python.org/tutorials/managing-dependencies/#installing-pipenv

Pipenv最初是由Kenneth Reitz創(chuàng)立的一個(gè)周末項(xiàng)目,旨在將其他包管理者(如npm或yarn)的創(chuàng)意帶入Python中。不再去安裝virtualenv,virtualenvwrapper,管理requirements.txt文件,并確保對(duì)依賴項(xiàng)的依賴版本的再現(xiàn)性(https://kennethreitz.org/essays/a-better-pip-workflow)。使用Pipenv,你可以在Pipfile中指定所有的依賴關(guān)系(通常使用命令添加,刪除或更新依賴關(guān)系)。該工具可以生成一個(gè)Pipfile.lock文件,使你的構(gòu)建deterministic,幫助你避免那些因?yàn)槟悴恢朗欠裥枰哪:蕾嚠a(chǎn)生的難以捕捉的bug。

當(dāng)然,Pipenv還有很多其他的特性,并且它的文檔非常好,所以一定要看一下,并且在你所有的Python項(xiàng)目中使用它,就像我們?cè)赥ryolabs中做的那樣。

2. PyTorch

鏈接:http://pytorch.org/

說(shuō)到今年流行,尤其是在深度學(xué)習(xí)(DL)社區(qū)流行的庫(kù),那就要提到今年Facebook推出的DL框架PyTorch。

PyTorch構(gòu)建并改進(jìn)了流行的Torch框架,與Lua不同它是基于Python的。由于最近幾年人們大多轉(zhuǎn)向使用Python進(jìn)行數(shù)據(jù)科學(xué)研究,它是讓DL更容易接近的重要一步。

最值得注意的是,PyTorch已經(jīng)成為眾多研究人員的首選框架之一,因?yàn)樗鼘?shí)現(xiàn)了動(dòng)態(tài)計(jì)算圖(Dynamic Computational Graph)范式。當(dāng)使用TensorFlow,CNTK或MXNet等其他框架編寫代碼時(shí),必須首先定義計(jì)算圖。該圖指定了我們的代碼運(yùn)行的所有操作,這些操作稍后會(huì)被編譯并可能被框架優(yōu)化,以便能夠在GPU上并行運(yùn)行得更快。這個(gè)范式被稱為靜態(tài)計(jì)算圖,因?yàn)槟憧梢岳酶鞣N優(yōu)化,而且這個(gè)圖形一旦建成,就有可能運(yùn)行在不同的設(shè)備上(因?yàn)閳?zhí)行與構(gòu)建分離)。然而,在自然語(yǔ)言處理等許多任務(wù)中,工作的量通常是可變的:在將圖像提供給算法之前,可以將圖像調(diào)整為固定的分辨率,但不能對(duì)可變長(zhǎng)度的句子進(jìn)行相同的處理。這是PyTorch和動(dòng)態(tài)圖的亮點(diǎn),通過(guò)在代碼中使用標(biāo)準(zhǔn)的Python控制指令,圖在執(zhí)行時(shí)被定義,給了你很多這對(duì)于一些任務(wù)來(lái)說(shuō)必不可少的自由。

當(dāng)然,PyTorch也為你計(jì)算梯度(就像你期望從任何現(xiàn)代的DL框架中獲得的那樣),速度非???,而且是可擴(kuò)展的,所以為什么不試試呢?

3. caffe2

鏈接:https://caffe2.ai/

這可能聽(tīng)起來(lái)很瘋狂,但Facebook今年也發(fā)布了另一個(gè)很棒的DL框架。

原來(lái)的Caffe框架已被大眾使用多年,以無(wú)與倫比的性能和久經(jīng)考驗(yàn)的代碼庫(kù)而聞名。然而,最近DL的趨勢(shì)使這個(gè)框架在某些方面停滯不前。Caffe2是將Caffe帶入“現(xiàn)代世界”的嘗試。

它支持分布式訓(xùn)練,部署(即使在移動(dòng)平臺(tái)上),最新的CPU并且支持CUDA的硬件。雖然PyTorch可能更適合研究,但Caffe2適合在Facebook上看到的大規(guī)模部署。

另外,請(qǐng)看看近期的ONNX。你可以在PyTorch中構(gòu)建和訓(xùn)練模型,同時(shí)使用Caffe2進(jìn)行部署!

4. Pendulum

鏈接:https://github/sdispater/pendulum

去年,Arrow被列入榜單,它旨在通過(guò)使用Python的datetime讓你生活輕松一些。而今年,我們輪到Pendulum了。

Pendulum的優(yōu)點(diǎn)之一是它是Python標(biāo)準(zhǔn)datetime類嵌入式的替代品,因此可以輕松地將其與現(xiàn)有代碼集成,并且只有在實(shí)際需要時(shí)才使用它的功能。者已經(jīng)特別注意確保正確地處理時(shí)區(qū),默認(rèn)每個(gè)實(shí)例的timezone-aware和UTC。你也將得到一個(gè)擴(kuò)展timedelta,使datetime算法更簡(jiǎn)單。

與其他現(xiàn)有的庫(kù)不同,它努力使API具有可預(yù)測(cè)的行為,所以你知道會(huì)發(fā)生什么。如果你正在做任何與datetimes有關(guān)的重要工作,這會(huì)讓你更快樂(lè)?。ú榭锤啵篽ttps://pendulum.eustace.io/docs/)。

5. Dash

https://plot.ly/products/dash/

如果你正在做數(shù)據(jù)科學(xué),你會(huì)使用Python生態(tài)系統(tǒng)中的優(yōu)秀工具,比如Pandas和scikit-learn。并在工作流程使用Jupyter Notebooks,這對(duì)你和你的同事來(lái)說(shuō)非常棒。但是,你如何與那些不知道如何使用這些工具的人分享這項(xiàng)工作呢?你如何建立一個(gè)界面,使人們可以輕松地使用數(shù)據(jù),可視化過(guò)程?過(guò)去,你需要一個(gè)前端團(tuán)隊(duì),用Javascript知識(shí)來(lái)構(gòu)建這些GUI。但現(xiàn)在不用了。

今年宣布的Dash是一個(gè)用于構(gòu)建Web應(yīng)用程序的Python開源庫(kù),尤其是那些充分利用數(shù)據(jù)可視化的Web應(yīng)用程序。它建立在Flask,Plotly.js和React的基礎(chǔ)上,并提供了抽象,使你不必學(xué)習(xí)這些框架,更高效的研發(fā)。這些應(yīng)用程序可以在瀏覽器中呈現(xiàn)并響應(yīng),因此在移動(dòng)設(shè)備中也能使用。

了解更多關(guān)于Dash:https://plot.ly/dash/gallery

6.PyFlux

Python中有許多庫(kù)用來(lái)做數(shù)據(jù)科學(xué)和ML,但是當(dāng)你的數(shù)據(jù)點(diǎn)是隨著時(shí)間的推移而變化的度量(例如股票價(jià)格,從儀表中獲得的度量等等)時(shí),這樣的庫(kù)就很少了。

PyFlux是一個(gè)專門為時(shí)間序列而開發(fā)的 Python開源庫(kù)。時(shí)間序列研究是統(tǒng)計(jì)學(xué)和計(jì)量經(jīng)濟(jì)學(xué)的一個(gè)分支,目標(biāo)可以描述時(shí)間序列的表現(xiàn)(依據(jù)隱藏組件或特征),也能預(yù)測(cè)時(shí)間序列未來(lái)的表現(xiàn)。

PyFlux允許用于時(shí)間序列建模的概率方法,并且已經(jīng)實(shí)現(xiàn)了幾個(gè)像GARCH這樣的現(xiàn)代時(shí)間序列模型。

7.Fire

https://github/google/python-fire

通常情況下,你需要為自己的項(xiàng)目制作命令行界面(CLI)。除了傳統(tǒng)的argparse,Python中還有click或docopt可用。谷歌今年宣布的Fire,在解決同樣的問(wèn)題上提出了不同的方法。

Fire是一個(gè)開源的庫(kù),可以為任何Python項(xiàng)目自動(dòng)生成一個(gè)CLI。沒(méi)錯(cuò),是自動(dòng)的:你幾乎不需要編寫任何代碼或文檔來(lái)構(gòu)建你的CLI!想完成你的CLI,只需要調(diào)用一個(gè)Fire方法并把它傳遞給一個(gè)CLI:一個(gè)函數(shù),一個(gè)對(duì)象,一個(gè)類,一個(gè)字典,甚至你可以不傳遞任何參數(shù)(這會(huì)將你的整個(gè)代碼轉(zhuǎn)換為一個(gè)CLI)。這個(gè)庫(kù)可以為你節(jié)省很多時(shí)間。

8.imbalanced-learn

https://github/scikit-learn-contrib/imbalanced-learn

在一個(gè)完美世界的里,我們會(huì)有完美平衡的數(shù)據(jù)集,我們將它們都拿來(lái)將訓(xùn)練模型,多么美好??上КF(xiàn)實(shí)世界不是這樣的,某些任務(wù)更傾向于不平衡的數(shù)據(jù)。例如,在預(yù)測(cè)信用卡交易中的欺詐行為時(shí),你會(huì)預(yù)測(cè)絕大多數(shù)交易(+ 99.9%)實(shí)際上是合法的。如果我們簡(jiǎn)單的訓(xùn)練ML算法會(huì)出現(xiàn)令人沮喪的性能,所以在處理這些類型的數(shù)據(jù)集時(shí)需要特別小心。

幸運(yùn)的是,這是一個(gè)已經(jīng)被研究過(guò)的問(wèn)題,存在各種各樣解決的技術(shù)。Imbalanced-learn是一個(gè)Python包,它提供了關(guān)于這些技術(shù)的實(shí)現(xiàn)。它與scikit-learn兼容,是scikit-learn-contrib項(xiàng)目的一部分。

9. FlashText

https://github/vi3k6i5/flashtext

如果您需要搜索某些文本并將其替換為其他內(nèi)容(如大多數(shù)數(shù)據(jù)清理工作),則通常將其轉(zhuǎn)為正則表達(dá)式。他們能很好地完成這項(xiàng)工作,但是有時(shí)會(huì)發(fā)生這樣的情況:需要搜索的數(shù)以千計(jì)的內(nèi)容,正則表達(dá)式可能會(huì)非常緩慢。

為此,F(xiàn)lashText是一個(gè)更好的選擇。它使整個(gè)操作的運(yùn)行時(shí)間大大提高了。FlashText的優(yōu)點(diǎn)在于無(wú)論搜索條件有多少,運(yùn)行時(shí)都是一樣的,而正則表達(dá)式中運(yùn)行時(shí)幾乎是隨著條件數(shù)呈線性增長(zhǎng)。

FlashText證明了算法和數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)的重要性,即使對(duì)于簡(jiǎn)單的問(wèn)題,更好的算法也可以很容易地勝過(guò)最快的cpu運(yùn)行簡(jiǎn)單的實(shí)現(xiàn)。

10. Luminoth

https://luminoth.ai/

現(xiàn)在,圖像無(wú)處不在,理解它的內(nèi)容對(duì)于許多應(yīng)用程序來(lái)說(shuō)至關(guān)重要。值得慶幸的是,由于DL的進(jìn)步,圖像處理技術(shù)已經(jīng)進(jìn)步了很多。

Luminoth是一個(gè)使用TensorFlow和Sonnet構(gòu)建的用于計(jì)算機(jī)視覺(jué)的開源Python工具包。目前,它可以支持以Faster R-CNN模型的形式進(jìn)行對(duì)象檢測(cè)。

但是Luminoth不僅是一個(gè)特定模型的實(shí)現(xiàn)。它是被構(gòu)建為模塊化和可擴(kuò)展,所以可以直接定制現(xiàn)有的部分或者將其擴(kuò)展為新的模型來(lái)處理不同的問(wèn)題,盡可能多地復(fù)用代碼。它提供的工具可以輕松完成構(gòu)建DL模型所需的工程工作:將數(shù)據(jù)(在本例中為圖像)轉(zhuǎn)換合適的格式輸送到數(shù)據(jù)管道(TensorFlow的tfrecords)中,執(zhí)行數(shù)據(jù)增強(qiáng),在一個(gè)或多個(gè)gpu上運(yùn)行訓(xùn)練(使用大型數(shù)據(jù)集時(shí)必須進(jìn)行分布式培訓(xùn)),運(yùn)行評(píng)估度量,輕松地在TensorBoard中可視化 并用簡(jiǎn)單的API或?yàn)g覽器界面部署訓(xùn)練號(hào)的模型,以便人們使用。

此外,Luminoth直接與Google Cloud的ML Engine集成,所以即使你沒(méi)有強(qiáng)大的GPU,也可以使用命令在云端進(jìn)行訓(xùn)練。

本文為編譯文章,轉(zhuǎn)載請(qǐng)注明出處。

來(lái)源:atyun_com

來(lái)源網(wǎng)址:http://atyun/13563_2017最流行的十大python庫(kù).html

img

在線咨詢

建站在線咨詢

img

微信咨詢

掃一掃添加
動(dòng)力姐姐微信

img
img

TOP