中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
只需幾個(gè)小操作,就能讓transformer模型推理速度加3.5倍
機(jī)器之心報(bào)道
編輯:澤南

你在用 PyTorch 寫(xiě) transformer 嗎?請(qǐng)關(guān)注下這個(gè)項(xiàng)目。


大多數(shù)關(guān)于在生產(chǎn)中部署 Transformer 類(lèi)模型的教程都是基于 PyTorch 和 FastAPI 構(gòu)建的。兩者都是很好的工具,但在推理方面的性能不是很好。

而如果你花費(fèi)時(shí)間進(jìn)行研究,可以在 ONNX Runtime 和 Triton 推理服務(wù)器上構(gòu)建一些更好的東西。與普通 PyTorch 相比,推理速度通常會(huì)快 2 到 4 倍。

如果你想要在 GPU 上獲得一流的性能,那么只有一種可能的組合:Nvidia TensorRT 和 Triton。與普通 PyTorch 相比,最終可以獲得 5 倍的推理速度。有時(shí)它甚至能將推理速度提高 10 倍。

然而 TensorRT 并不是以簡(jiǎn)單易用著稱的,對(duì)于 Transformer 模型更是如此,它需要使用特定的技巧。


然后,如果你花一些時(shí)間,你可以在 ONNX Runtime 和 Triton 推理服務(wù)器上構(gòu)建一些東西。與普通 Pytorch 相比,你的推理速度通常會(huì)快 2 到 4 倍。

近日,Hugging Face 發(fā)布了一款名為 Infinity 的商業(yè)產(chǎn)品,可以以非常高的性能進(jìn)行推理(與 PyTorch + FastAPI 部署相比,速度非??欤2恍业氖?,根據(jù)該公司產(chǎn)品總監(jiān)的說(shuō)法,即使對(duì)于部署在一臺(tái)機(jī)器上的單個(gè)模型,這也是一種付費(fèi)產(chǎn)品,成本為 2 萬(wàn)美元(沒(méi)有公開(kāi)的具體規(guī)模信息)。

在 GitHub 上有一個(gè)項(xiàng)目 Transformer-deploy,它是一種基于企業(yè)級(jí)軟件的開(kāi)源替代版:

  • 推理服務(wù)器:Nvidia Triton(它接受查詢,傳輸給引擎,并添加對(duì)推理有用的功能,如動(dòng)態(tài)批處理或多推理引擎調(diào)度)

  • 推理引擎:Microsoft ONNX Runtime(用于 CPU 和 GPU 推理)和 Nvidia TensorRT(僅限 GPU)


我們似乎不費(fèi)吹灰之力,就可以輕松匹敵極少數(shù) HF Infinity 公共基準(zhǔn)。

但事實(shí)上,現(xiàn)在仍然有機(jī)會(huì)進(jìn)一步加快推理性能,AFAIK 尚未被任何其他 OSS 項(xiàng)目利用:對(duì)所有 Transformer 模型的 GPU 量化!

如下是對(duì) Roberta-base、seq len 256、batch 32、MNLI 數(shù)據(jù)集的測(cè)試結(jié)果:


  • 源代碼:https://github.com/ELS-RD/transformer-deploy/blob/main/demo/quantization/quantization_end_to_end.ipynb

  • 項(xiàng)目 GitHub:https://github.com/ELS-RD/transformer-deploy


執(zhí)行 GPU 量化需要修改模型源代碼(在矩陣乘法等代價(jià)高昂的操作上添加一些稱為 QDQ 的特定節(jié)點(diǎn)),這既容易出錯(cuò),又很枯燥,并且是件自己給自己挖坑的事。對(duì)此,項(xiàng)目作者已經(jīng)為多個(gè)模型手動(dòng)完成了這項(xiàng)工作。在作者看來(lái),只需修補(bǔ)模型模塊抽象語(yǔ)法樹(shù)(也就是源代碼)就可以自動(dòng)完成這項(xiàng)工作。

從用戶端看,在 GPU 上執(zhí)行模型的基本量化看起來(lái)就像這樣:


如基準(zhǔn)測(cè)試結(jié)果所示,要獲得比普通 PyTorch 快 4.5 倍的模型,在 MNLI 數(shù)據(jù)集上的準(zhǔn)確率需要犧牲 0.4 個(gè)百分點(diǎn),這在許多情況下是一個(gè)合理的權(quán)衡。如果不希望損失準(zhǔn)確度,加速也可以降到 3.2 倍左右。當(dāng)然,實(shí)際應(yīng)用時(shí)的 trade-off 取決于模型、數(shù)據(jù)集等,但它給出了一個(gè)基本概念。與該項(xiàng)目的先前版本相比,這是一個(gè)很大的改進(jìn)。

成倍加速的背后,transformer 的源代碼被解析為 AST,像 matmul 或 LayerNorm 這樣的算子被一個(gè)量化器包裝,線性層被它們的量化版本替換,一些不支持的 TensorRT 算子被替換等等。然后還有一部分新的源代碼替換。

作者表示,他們目前已經(jīng)成功測(cè)試了 ALBERT、BERT(包括 miniLM)、DistilBERT、Roberta(包括 Camembert、XLM-R、DistilRoberta 等)、Electra 的推理。對(duì)于任何可以導(dǎo)出為 ONNX 格式的 transformer 模型,它應(yīng)該都是開(kāi)箱即用的,或者只需很少的努力。

關(guān)于 CPU 的推理、量化非常容易,且也是由 Transformer-deploy 項(xiàng)目支持的。但是在極端情況下,transformer 的性能會(huì)變得非常差(如沒(méi)有批處理、非常短的序列和蒸餾模型時(shí))。另外如使用基于上代英特爾 CPU 的實(shí)例,如 C6 或 M6,與像 Nvidia T4 這樣的廉價(jià) GPU 相比,在 AWS 上的性價(jià)比會(huì)很低。

綜上所述,在 Transformer 推理上,除非你對(duì)慢速推理感到滿意并采用小實(shí)例,否則并不推薦使用 CPU 推理。

參考鏈接:https://www.reddit.com/r/MachineLearning/comments/rr17f9/p_45_times_faster_hugging_face_transformer/

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
RetinaFace MXNet模型轉(zhuǎn)ONNX轉(zhuǎn)TensorRT
【雜談】當(dāng)前模型量化有哪些可用的開(kāi)源工具?
H100推理飆升8倍!英偉達(dá)官宣開(kāi)源TensorRT-LLM,支持10 模型
NLP界“威震天”襲來(lái)!英偉達(dá)1小時(shí)成功訓(xùn)練BERT,83億參數(shù)打造史上最大語(yǔ)言模型
TensorRT(1)
Facebook致力人工智能 開(kāi)源PyTorch1.0 AI框架
更多類(lèi)似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服