溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

熱門的Python庫有哪些

發(fā)布時間:2021-11-23 11:59:37 來源:億速云 閱讀:188 作者:iii 欄目:大數(shù)據(jù)

本篇內(nèi)容介紹了“熱門的Python庫有哪些”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

1、Typer

https://github.com/tiangolo/typer

熱門的Python庫有哪些

您不一定總是需要編寫 CLI 應(yīng)用程序,但這樣做可以省不少事。在 FastAPI取得巨大成功之后,tiangolo使用了相同的原理為我們帶來了 Typer:一個新的庫,使您可以利用Python 3.6+的類型提示功能來編寫命令行界面。

該設(shè)計的確使Typer脫穎而出。除了確保代碼已正確記錄之外,您還可以輕松進行CLI界面的驗證。通過使用類型提示,您可以在Python編輯器(如VS Code)中獲得自動補全功能,這將提高您的生產(chǎn)率。

為了增強其功能,Typer內(nèi)核是基于Click的,而Click則是眾所周知,并且經(jīng)過了嚴格的測試。這意味著它可以利用其所有好處,如社區(qū)和插件,同時以更少的樣板代碼從簡單開始,并根據(jù)需要變得復(fù)雜。

Typer文檔確實很有幫助,并且應(yīng)該成為其他項目的典范。絕對不能錯過!

2. Rich

https://github.com/willmcgugan/rich

順著CLI的主題,誰說終端應(yīng)用程序必須是純白色,或者如果您是真正的黑客,則必須是綠色,是黑色?

是否要在終端輸出中添加顏色和樣式?毫不費力地顯示漂亮的進度條?Markdown?表情符號?Rich可以實現(xiàn)上述所有功能。查看下面示例截圖可以進一步了解:

熱門的Python庫有哪些

Dear PyGui可以在沒有陡峭的學習曲線的情況下使用,并且可以在Windows 10(DirectX 11),Linux(OpenGL 3)和MacOS(Metal)上運行。

4. PrettyErrors

https://github.com/onelivesleft/PrettyErrors

大道至簡,這是一個值得讓您思考的庫:以前沒人想過這是怎么回事?

PrettyErrors只做一件事并且做得很好。在支持彩色輸出的終端中,它將隱秘的堆棧軌跡轉(zhuǎn)換成更適合用微弱的人眼解析的東西。無需再掃描整個屏幕來查找異常的原因……您現(xiàn)在就可以一目了然!

5. Diagrams

https://github.com/mingrammer/diagrams

我們程序員喜歡用代碼解決問題。但是有時,我們需要向其他同事解釋復(fù)雜的架構(gòu)設(shè)計。傳統(tǒng)上,我們使用GUI工具,在其中我們可以處理圖表和可視化以放入演示文稿和文檔。但這不是唯一的方法。

Diagrams使您無需任何設(shè)計工具即可直接在Python代碼中繪制云系統(tǒng)架構(gòu)。它包含的圖標支持多個云提供商(包括AWS,Azure,GCP)。這使創(chuàng)建箭頭和組非常容易。真的,只有幾行代碼!

熱門的Python庫有哪些

基于代碼的圖表的最好之處是什么?您可以通過git使用版本控制來掌控進度!

6. Hydra 和 OmegaConf

https://hydra.cc/ 
https://github.com/omry/omegaconf

在進行機器學習項目的研究和實驗時,總是有無數(shù)的設(shè)置可以嘗試。在非平凡解的應(yīng)用程序中,配置管理會變得相當復(fù)雜,非常快。有一種結(jié)構(gòu)化的方式來處理這種復(fù)雜性不是很好嗎?

Hydra是一種工具,可讓您以可組合的方式構(gòu)建配置,并從命令行或配置文件覆蓋某些部分。

為了說明可以通過該庫簡化的一些常見任務(wù),假設(shè)有一個我們正在嘗試的模型的基本體系結(jié)構(gòu),以及它的多種變體。使用Hydra,可以定義基本配置,然后運行多個作業(yè),并進行以下更改:

python train_model.py variation=option_a,option_b
├── variation
│   ├── option_a.yaml
│   └── option_b.yaml
├── base.yaml
└── train_model.py

Hydra 的表親 OmegaConf 為分層配置系統(tǒng)的基礎(chǔ)提供了一致的API,并支持YAML,配置文件,對象和CLI參數(shù)等不同來源。

這是21世紀進行配置管理的必備條件!

7. PyTorch Lightning

https://github.com/PyTorchLightning/PyTorch-lightning

每一種提高數(shù)據(jù)科學團隊生產(chǎn)力的工具都值得鼓勵。沒有理由讓從事數(shù)據(jù)科學項目的人每次都重新發(fā)明輪子,反復(fù)思考如何更好地組織其項目中的代碼,使用維護得不好的“ PyTorch 樣板”,或者使用更高級別的抽象功能。

PyTorch Lightning 通過將科學與工程分離而有助于提高生產(chǎn)率。從某種意義上說,它使您的代碼更簡潔,有點像 TensorFlow 的 Keras。但是它仍然是PyTorch,您可以訪問所有常用的API。

該庫可幫助團隊利用圍繞組織的軟件工程的良好實踐和明確的組件職責來構(gòu)建可輕松擴展,以在多個GPU,TPU和CPU上進行訓練高質(zhì)量代碼。

一個可以幫助數(shù)據(jù)科學團隊的初級成員產(chǎn)生更好結(jié)果的庫,但是,由于整體生產(chǎn)力的提高,而且沒有放棄控制權(quán),更有經(jīng)驗的成員會喜歡它。

8. Hummingbird

https://github.com/microsoft/hummingbird

熱門的Python庫有哪些

并非所有的機器學習都是深度學習。通常,您的模型由scikit-learn中實現(xiàn)的更傳統(tǒng)的算法(例如,Random Forest)組成,或者您使用諸如流行的LightGBM和XGBoost之類的梯度增強方法。

但是,深度學習領(lǐng)域正在發(fā)生許多進步。像PyTorch這樣的框架正在以驚人的速度發(fā)展,并且硬件設(shè)備已經(jīng)過優(yōu)化,可以更快地運行張量計算并降低功耗。如果我們可以利用所有這些工作來更快、更高效地運行傳統(tǒng)方法,那豈不是很好嗎?

這是Hummingbird的用武之地。微軟提供的這個新庫可以將訓練有素的傳統(tǒng)ML模型編譯為張量計算。這很棒,因為它使您無需重新設(shè)計模型。

到目前為止,Hummingbird支持轉(zhuǎn)換為PyTorch,TorchScript,ONNX和TVM,以及各種ML模型和矢量化器。推理API也與Sklearn范例非常相似,可讓您重用現(xiàn)有代碼,但將實現(xiàn)更改為Hummingbird生成的代碼。這是一個值得關(guān)注的工具,因為它獲得了對模式模型和格式的支持!

9. HiPlot

https://github.com/facebookresearch/hiplot

幾乎每個數(shù)據(jù)科學家在職業(yè)生涯中的某個時候都曾處理過高維數(shù)據(jù)。不幸的是,人腦沒有足夠的連線直觀地處理這種數(shù)據(jù),因此我們必須訴諸其他技術(shù)。

今年初,F(xiàn)acebook發(fā)布了HiPlot,這是一個庫,可使用并行繪圖和其他圖形方式來表示信息,從而幫助發(fā)現(xiàn)高維數(shù)據(jù)中的相關(guān)性和模式。該概念已在其發(fā)布博客文章中進行了解釋,但基本上,它是一種可視化和過濾高維數(shù)據(jù)的好方法。

HiPlot具有交互性,可擴展性,您可以從標準Jupyter筆記本電腦或通過其自己的服務(wù)器使用它。

10. Scalene

https://github.com/emeryberger/scalene

隨著Python庫生態(tài)系統(tǒng)變得越來越復(fù)雜,我們發(fā)現(xiàn)自己正在編寫越來越多的依賴C擴展和多線程的代碼。在衡量性能時,這成為一個問題,因為CPython內(nèi)置的探查器無法正確處理多線程和本機代碼。

那就是Scalene進行救援的時候。Scalene是用于Python腳本的CPU和內(nèi)存探查器,能夠正確處理多線程代碼并區(qū)分運行Python和本機代碼所花費的時間。無需修改代碼,只需要在命令行中使用scalene運行腳本,腳本就會為您生成文本或HTML報告,顯示代碼每一行的CPU和內(nèi)存使用情況。

熱門的Python庫有哪些

榮譽提名:

  • Norfair

https://github.com/tryolabs/norfair

Norfair是一個可定制的輕量級Python庫,用于實時2D對象跟蹤。使用Norfair,您只需幾行代碼就可以為任何檢測器添加跟蹤功能。

  • quart

https://gitlab.com/pgjones/quart/

一個兼容Flask API的異步Web框架。一些現(xiàn)有的Flask擴展程序甚至可以直接使用!

  • alibi-detect

https://github.com/SeldonIO/alibi-detect

監(jiān)視生產(chǎn)模型中的異常值和分布漂移,以獲取表格數(shù)據(jù),文本,圖像和時間序列。

  • einops

https://github.com/arogozhnikov/einops

einops于2020年普及,可讓您編寫張量操作以獲得可讀且可靠的代碼,并支持numpy,PyTorch,TensorFlow等。

  • stanza

https://github.com/stanfordnlp/stanza

斯坦福提供的支持60多種語言的自然語言處理工具。針對不同任務(wù)的多個可用的預(yù)訓練模型。

  • datasets

https://github.com/huggingface/datasets

來自HuggingFace的輕量級可擴展庫,可輕松共享和訪問數(shù)據(jù)集和自然語言處理(NLP)等評估指標

  • pytorch-forecasting

https://github.com/jdb78/pytorch-forecasting

借助神經(jīng)網(wǎng)絡(luò)簡化了針對實際案例和研究的時間序列預(yù)測。

  • sktime

https://github.com/alan-turing-institute/sktime

提供了專用的時間序列算法和scikit-learn兼容工具,用于構(gòu)建,調(diào)整和評估組合模型。還要檢查其配套的sktime-dl軟件包,以獲取基于深度學習的模型。

  • netron

https://github.com/lutzroeder/netron

神經(jīng)網(wǎng)絡(luò),深度學習和機器學習模型的可視化工具。支持的格式比我所知道的還要多。

  • pycaret

https://github.com/pycaret/pycaret

包裝了幾個常見的ML庫,使您的工作效率大大提高,節(jié)省了數(shù)百行代碼。

  • tensor-sensor

https://github.com/parrt/tensor-sensor

“熱門的Python庫有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI