|
時(shí)隔半年不到,PyTorch 已經(jīng)從之前的 1.0 升級(jí)到 1.1 版本了。剛剛,F(xiàn)acebook 在年度開發(fā)者大會(huì) F8 上宣布正式發(fā)布 PyTorch 1.1 版本,這是對(duì) PyTorch 1.0 的一次大的功能升級(jí)。 PyTorch 產(chǎn)品經(jīng)理 Joe Spisak 接受外媒 ZDNet 采訪時(shí),談及了新推出的訓(xùn)練 AI 系統(tǒng)時(shí)”跨 GPU 分割神經(jīng)網(wǎng)絡(luò)“功能,他表示:“(神經(jīng)網(wǎng)絡(luò))模型越來(lái)越大,它們真得非常大,而且訓(xùn)練一個(gè)模型的成本也非常高。在很多情況下,其 GPU 占比超過(guò) 16GB。例如,我們內(nèi)部最新開發(fā)的神經(jīng)網(wǎng)絡(luò)模型超過(guò) 10GB,其參數(shù)數(shù)量基本超過(guò) 10 億個(gè)?!?/span> 雖然 BERT 效果驚人,但其所需要的計(jì)算量也非常大。例如,BERT-Large 模型有 24 層、2014 個(gè)隱藏單元,它們?cè)谟?33 億詞量的數(shù)據(jù)集上需要訓(xùn)練 40 個(gè) Epoch。 為了解決這類問(wèn)題,PyTorch 1.1 增加了跨 GPU 分割神經(jīng)網(wǎng)絡(luò)的能力,成為”分片 “(sharding)模型。此前,PyTorch 允許開發(fā)人員將不同處理器中的訓(xùn)練數(shù)據(jù)分割,這在并行處理計(jì)算領(lǐng)域稱為” 數(shù)據(jù)并行 “(data parallelism)。神經(jīng)網(wǎng)絡(luò)分割使得” 指令并行“成為可能,因此神經(jīng)網(wǎng)絡(luò)可以實(shí)現(xiàn)多指令、多數(shù)據(jù)的模式。 ”一般來(lái)講,這些模型均位于一個(gè) GPU 中,開發(fā)人員處理分布式并行數(shù)據(jù),這意味著,他們可以對(duì)數(shù)據(jù)集進(jìn)行分割,然后在系統(tǒng)上復(fù)制模型。一旦訓(xùn)練這種較大規(guī)模的模型,模型本身就必須切分??梢詫⒛硞€(gè)模型層或子圖神經(jīng)網(wǎng)絡(luò)放在一個(gè)節(jié)點(diǎn)上,然后將另一個(gè)子圖神經(jīng)網(wǎng)絡(luò)切換到另一個(gè)計(jì)算單元上。“ 分片完成后,PyTorch 中的算法在模型訓(xùn)練時(shí)會(huì)將其結(jié)合起來(lái)。 實(shí)際上,跨 GPU 分割模型僅是 PyTorch 此次升級(jí)的其中一項(xiàng)新功能。 ▌PyTorch 1.1 有什么新功能? 該框架主要有四大更新,總結(jié)起來(lái)如下:
使用 TensorBoard 進(jìn)行一級(jí)原生的可視化和模型調(diào)試。TensorBoard 是一個(gè)用于檢查和理解訓(xùn)練腳本、張量和圖神經(jīng)網(wǎng)絡(luò)的 Web 應(yīng)用程序套件。PyTorch 現(xiàn)在通過(guò)一個(gè)簡(jiǎn)單的 “from torch.utils.tensorboard import SummaryWriter” 命令原生支持 TensorBoard。
對(duì)即時(shí)(JIT)編譯進(jìn)行改進(jìn)。這些改進(jìn)包括修復(fù)各種 bug 一級(jí) TorchScript 中的擴(kuò)展功能,例如對(duì)字典、用戶類和屬性的支持。
支持布爾張量,更好地支持自定義遞歸神經(jīng)網(wǎng)絡(luò)(RNN)。
改進(jìn)了 CNN 等場(chǎng)景模型的性能,增加了對(duì)多設(shè)備模塊的支持,包括在使用分布式數(shù)據(jù)并行(DDP,Distributed Data Parallel)的同時(shí)跨 GPU 分割模型的能力,并支持在每次迭代中不適用所有參數(shù)的模塊(例如控制流程,如自適應(yīng) softmax 等)。 值得注意的是,PyTorch 1.1 不再支持 CUDA 8.0。 ▌生態(tài)的深度支持 PyTorch 升級(jí)新框架都不開生態(tài)社區(qū)的支持。 例如,在 2018 年 5 月在 F8 開發(fā)者大會(huì)上首次公布的 PyTorch 1.0 ,就與 Facebook 的 Caff2、ONNX 進(jìn)行了更深入的整合。 而此次,F(xiàn)acebook 表示:還將繼續(xù)與社區(qū)合作,開發(fā)共同項(xiàng)目和工具,旨在支持 ML 工程師滿足從改進(jìn)模型理解到使用 AutoML 方法進(jìn)行自動(dòng)調(diào)整等各種需求。其中包括已經(jīng)在生產(chǎn)規(guī)模部署的 Facebook 開源資源,以及與 Google 等公司合作的產(chǎn)品和服務(wù),主要有四方面:
BoTorch 是一個(gè)建立在 PyTorch 之上的貝葉斯優(yōu)化庫(kù)。
Ax 是一個(gè)用于管理自適應(yīng)實(shí)驗(yàn)的機(jī)器學(xué)習(xí)平臺(tái),它使研究人員和工程師能夠系統(tǒng)地探索大型配置空間,以優(yōu)化機(jī)器學(xué)習(xí)模型、基礎(chǔ)架構(gòu)和產(chǎn)品。
PBG 是一個(gè)分布式系統(tǒng),用于創(chuàng)建具有數(shù)十億實(shí)體和數(shù)萬(wàn)億邊的非常大的圖神經(jīng)網(wǎng)絡(luò)的嵌入。(AI 科技大本營(yíng)此前報(bào)道)
Google AI Platform Notebooks 是 Google Cloud Platform 提供的全新托管的 JupyterLab 服務(wù)。數(shù)據(jù)科學(xué)家可以快速創(chuàng)建運(yùn)行 JupyterLab 的虛擬機(jī),并預(yù)裝最新版本的 PyTorch。它還與 BigQuery、Cloud Dataproc、Cloud Dataflow 和 AI Factory 等 GCP 服務(wù)緊密集成,可以在不離開 JupyterLab 的情況下輕松執(zhí)行完整的機(jī)器學(xué)習(xí)構(gòu)建。 此外,F(xiàn)acebook 將與 fast.ai 展開更緊密的合作。 去年,雙方聯(lián)合發(fā)布了 fastai 1.0,一個(gè)基于 PyTorch 構(gòu)建的開源深度學(xué)習(xí)庫(kù)。目前,包括斯坦福 NLP、加州伯克大學(xué) CV 課程正基于 PyTorch 進(jìn)行授課。今年,F(xiàn)acebook 表示,將在牛津大學(xué) Andrew Trask 和 OpenMined 推出深度學(xué)習(xí)入門課程的基礎(chǔ)上,贊助新的 Udacity 課程。Facebook 還將提供獎(jiǎng)學(xué)金,以支持學(xué)生在 Udacity 完整的 Nanodegree 課程中繼續(xù)接受教育。 相關(guān)鏈接: https://pytorch.org/ https://github.com/pytorch/pytorch/releases https://ai./blog/pytorch-adds-new-dev-tools-as-it-hits-production-scale/ (本文為AI科技大本營(yíng)原創(chuàng)文章,轉(zhuǎn)載請(qǐng)微信聯(lián)系 1092722531) ◆ CTA核心技術(shù)及應(yīng)用峰會(huì) ◆ 5月25-27日,由中國(guó)IT社區(qū)CSDN與數(shù)字經(jīng)濟(jì)人才發(fā)展中心聯(lián)合主辦的第一屆CTA核心技術(shù)及應(yīng)用峰會(huì)將在杭州國(guó)際博覽中心隆重召開,峰會(huì)將圍繞人工智能領(lǐng)域,邀請(qǐng)技術(shù)領(lǐng)航者,與開發(fā)者共同探討機(jī)器學(xué)習(xí)和知識(shí)圖譜的前沿研究及應(yīng)用。 |
|
|
來(lái)自: taotao_2016 > 《AI》