【深度学习】PyTorch深度学习技术生态
PyTorch
Author:louwill
Machine Learning Lab
? ? ?
隨著近幾年的大力發(fā)展,PyTorch逐漸成為主流的深度學(xué)習(xí)框架。相應(yīng)的PyTorch技術(shù)生態(tài)也逐漸豐富和完善。本文重點(diǎn)回顧和盤點(diǎn)PyTorch的技術(shù)生態(tài),包含大量的工具庫,遍布AI各個(gè)領(lǐng)域和方向。
Pytorch Lightning
Pytorch Lightning是一款基于Pytorch的輕量級(jí)高級(jí)計(jì)算框架,相較于Pytorch而言最大特征是簡潔易用,相當(dāng)于Pytorch版本的Keras框架。
地址:https://www.pytorchlightning.ai/
Libtorch
Libtorch可以看作是C++版本的PyTorch,在Python環(huán)境下對(duì)訓(xùn)練好的模型進(jìn)行轉(zhuǎn)換之后,我們需要C++環(huán)境下的PyTorch來讀取模型并進(jìn)行編譯部署。這種C++環(huán)境下的PyTorch就是libtorch。
地址:https://pytorch.org/cppdocs/
Detectron2
Detectron2是Facebook AI (FAIR) 發(fā)布的下一代目標(biāo)檢測算法框架。Detectron2是對(duì)Detectron項(xiàng)目的重構(gòu),也是maskrcnn-benchmark的替代框架。
地址:https://github.com/facebookresearch/detectron2
Transformers
Transformers是一款基于PyTorch的自然語言處理SOTA模型庫。Transformers提供了數(shù)千種經(jīng)過預(yù)訓(xùn)練的模型,能夠處理各種NLP問題,例如文本分類、信息提取、問答系統(tǒng),文本摘要,機(jī)器翻譯和文本生成等。
地址:https://github.com/huggingface/transformers
ONNX runtime
ONNX Runtime是一種跨平臺(tái)深度學(xué)習(xí)訓(xùn)練和推理機(jī)加速器,與深度學(xué)習(xí)框架,可以兼容TensorFlow、Keras和PyTorch等多種深度學(xué)習(xí)框架。ONNX (Open Neural Network Exchange) 是一種用于表示深度學(xué)習(xí)模型的開放格式,ONNX定義了一組通用的運(yùn)算符、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型的構(gòu)建塊以及一種通用的文件格式,使AI開發(fā)人員可以將模型與各種框架、工具和編譯器一起使用。
地址:https://github.com/microsoft/onnxruntime
PyTorch Geometric
PyTorch Geometric (PyG) 是一款基于PyTorch的圖神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)擴(kuò)展庫。PyG對(duì)已發(fā)表或者常用的圖神經(jīng)網(wǎng)絡(luò)和數(shù)據(jù)集都進(jìn)行了集成,因而是當(dāng)前最流行和廣泛使用的GNN庫。
地址:https://github.com/rusty1s/pytorch_geometric
PyTorch3D
PyTorch3D是一款基于PyTorch將深度學(xué)習(xí)與3D進(jìn)行結(jié)合的研究框架。3D數(shù)據(jù)比2D圖像更為復(fù)雜,在處理諸如Mesh R-CNN和C3DPO之類的項(xiàng)目時(shí),需要用3D數(shù)據(jù)進(jìn)行表示,在批處理和速度方面的諸多挑戰(zhàn)。?PyTorch3D開發(fā)出許多用于3D深度學(xué)習(xí)的有用的運(yùn)算符和抽象,并希望與社區(qū)共享以推動(dòng)這一領(lǐng)域的新穎研究。
地址:https://pytorch3d.org/
Ray
Ray為構(gòu)建分布式機(jī)器學(xué)習(xí)應(yīng)用提供簡單和通用式的API。Ray打包了Tune、RLlib、RaySGD和Ray Serve等多款機(jī)器學(xué)習(xí)庫。
地址:https://github.com/ray-project/ray
skorch
從名稱就可以看出來,skorch是一款綜合scikit-learn和PyTorch的機(jī)器學(xué)習(xí)庫,可以實(shí)現(xiàn)scikit-learn和PyTorch高效兼容。
地址:https://github.com/skorch-dev/skorch
PySyft
PySyft是用于安全和私有深度學(xué)習(xí)的Python庫。PySyft使用聯(lián)合學(xué)習(xí),差分隱私和加密計(jì)算(例如PyTorch和TensorFlow等主要深度學(xué)習(xí)框架中的多方計(jì)算 (MPC) 和同態(tài)加密 (HE) 將模型訓(xùn)練中的私人數(shù)據(jù)進(jìn)行解耦。
地址:https://github.com/OpenMined/PySyft
Pyro
Pyro是一款基于PyTorch作為后端的通用概率編程語言 (PPL)。
地址:http://pyro.ai/
fastai
fastai使用當(dāng)前深度學(xué)習(xí)最佳實(shí)踐簡化了神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程,并且在速度和精度上都非常可觀。fastai作為一款深度學(xué)習(xí)庫,可為從業(yè)人員提供高級(jí)組件,這些組件可以快速輕松地提供標(biāo)準(zhǔn)深度學(xué)習(xí)領(lǐng)域中的最新結(jié)果,并為研究人員提供可以混合和匹配以構(gòu)建的低級(jí)組件新方法。
地址:https://docs.fast.ai/
Horovod
Horovod可以為PyTorch提供分布式深度學(xué)習(xí)訓(xùn)練框架。Horovod最初由Uber開發(fā),旨在使分布式深度學(xué)習(xí)變得快速且易于使用,使模型訓(xùn)練時(shí)間從幾天和幾周縮短到數(shù)小時(shí)和數(shù)分鐘。使用Horovod可以將現(xiàn)有的訓(xùn)練腳本規(guī)模進(jìn)行擴(kuò)大,使其僅用幾行Python代碼就可以在數(shù)百個(gè)GPU上運(yùn)行。
地址:http://horovod.ai/
AllenNLP
AllenNLP幾乎可以針對(duì)幾乎所有NLP問題設(shè)計(jì)深度學(xué)習(xí)模型,并且可以輕松地在云端或筆記本電腦上運(yùn)行。
地址:https://allennlp.org/
Albumentations
Albumentations是一款用于計(jì)算機(jī)視覺圖像增強(qiáng)的高級(jí)庫。基于Albumentations的圖像增強(qiáng)效果入下圖所示。
地址:https://github.com/albumentations-team/albumentations
DeepSpeed
DeepSpeed是一個(gè)深度學(xué)習(xí)優(yōu)化庫,它使分布式訓(xùn)練變得容易和高效。
地址:https://www.deepspeed.ai/
Flair
Flair是一款非常容易上手的PyTorch?NLP SOTA框架。
地址:https://github.com/flairNLP/flair
ParlAI
ParlAI是一款跨多個(gè)任務(wù)共享,訓(xùn)練和評(píng)估對(duì)話模型的一體化的機(jī)器學(xué)習(xí)平臺(tái)。
地址:https://parl.ai/
PyTorch Metric Learning
PyTorch Metric Learning能夠讓你以最輕松的方式在你的機(jī)器學(xué)習(xí)代碼中融入深度度量學(xué)習(xí),并且容易模塊化、高度的靈活性和可拓展性。PML 9大模塊如下圖所示。
地址:https://kevinmusgrave.github.io/pytorch-metric-learning/
BoTorch
BoTorch是一個(gè)基于PyTorch的高效貝葉斯優(yōu)化框架。
地址:https://botorch.org/
?
隨著PyTorch逐漸流行以及越來越多的開發(fā)者加入,基于PyTorch的深度學(xué)習(xí)技術(shù)生態(tài)也逐漸豐富和完善。本文限于篇幅,就僅羅列部分具有代表性和流行性的技術(shù)框架。
往期精彩回顧適合初學(xué)者入門人工智能的路線及資料下載機(jī)器學(xué)習(xí)及深度學(xué)習(xí)筆記等資料打印機(jī)器學(xué)習(xí)在線手冊深度學(xué)習(xí)筆記專輯《統(tǒng)計(jì)學(xué)習(xí)方法》的代碼復(fù)現(xiàn)專輯 AI基礎(chǔ)下載機(jī)器學(xué)習(xí)的數(shù)學(xué)基礎(chǔ)專輯 本站qq群704220115,加入微信群請(qǐng)掃碼: 與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的【深度学习】PyTorch深度学习技术生态的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信公众号页面模版怎么添加文章推荐功能
- 下一篇: 【深度学习】网络架构设计:CNN bas