圖靈獎得主力推:PyTorch 1.3 今天發布

2021-01-16 機器之心Pro

機器之心報導

參與:一鳴、思

今天凌晨,PyTorch 開發者大會在舊金山開幕,會上發布了最新版本 PyTorch1.3。本次更新最大的亮點在於對行動裝置的支持、挑戰傳統張量的「命名張量」,以及更好的性能改進。

今天,PyTorch1.3 發布了。圖靈獎得主,被譽為「深度學習三座山頭」之一的 LeCun 發推稱讚。

本次 PyTorch1.3 更新增加了很多的新特性,包括無縫行動裝置部署、量化模型以加速推斷、前端改進(如對張量進行命名和創建更乾淨的代碼)。PyTorch 官方同時還開源了很多新工具和庫。

在開發者大會上,PyTorch 官方表示甚至微軟都將其列入了支持的深度學習框架中。

PyTorch 1.3 項目地址:https://github.com/pytorch/pytorch/releases/tag/v1.3.0

茁壯成長的 PyTorch

由於 PyTorch 一直致力於滿足研究者的需求,因此它在不斷地進行版本迭代,現在已經成為開源社區僅次於 TensorFlow 的深度學習框架。

據 Facebook 博客透露,僅在 2019 年,在 ArXiv 平臺上引用 PyTorch 的論文數量就增長了 194%。2018 年,為整個項目貢獻了代碼的人數也增長了 50%,達到了 1200 人。而使用 PyTorch 進行算法開發的公司也越來越多,其中不乏 Uber 等大公司。

在 Reddit 中,研究者統計到:CVPR 2018-2019,用 PyTorch 的論文從 82 篇增長到 280 篇,TensorFlow 從 116 增長到 125;ACL 2018-2019,用 PyTorch 的論文數從 26 增長到 103,TensorFLow 從 34 到 33 反而降低了。其它機器學習頂會也有相似的趨勢,所以 PyTorch 搞定研究,TensorFlow 搞定業界?

當然,隨著 PyTorch 的發展,也有開發者表示他們了解的一些新型初創公司很多都將 PyTorch 作為框架。不過目前看起來,還是 TensorFlow 在模型部署等工程化操作上做得更完善一些。

PyTorch 1.3 是一個新的起點

PyTorch 1.3 的發布帶來了一系列重要的新特性,包括行動裝置的模型部署、Eager 模式的 8 比特整型量化和張量命名的能力。雖然它們目前都處於試驗階段,但看起來真的非常 Amazing。例如張量命名的能力,我們可以給每個張量的不同維度分別命名,例如將 BatchSize 維度命名為「B」,那麼就可以直接用「B」對這個維度的數值進行各種操作。

通過這一系列新特性,我們可以預想到 PyTorch 將會變得越來越好用。

PyTorch Mobile

近來,在邊緣設備上運行機器學習模型漸漸變得更重要了。此外,如聯邦學習那樣的模型也需要對於隱私保護的措施。為了讓行動裝置上的機器學習變得更高效,PyTorch1.3 做了很多改進。現在,它已經支持端到端的工作流,可以從 Python 直接部署到 ios 或安卓系統中。

主要支持的功能如下

支持在行動裝置上進行完整的 TorchScript 推斷;在 JCenter/CocoaPods 上建立了 LibTorch 代碼庫;對於安卓而言,PyTorch 進行了 Java 封裝,涵蓋了常用的推斷場景;在移動 CPU 上可以進行所有的前向計算;(反向傳播還不支持)優化了一些 float32 算子,用於 ARM CPU;(基於 Caffe2Go)優化了一些 int8 算子,用於 ARM CPU;(基於 QNNPACK)不專門為行動裝置創建新的框架,用戶可使用一樣的 API;TorchScript 格式的模型不需要任何格式轉換就可以在安卓/ios 上使用。

官方提供了一個教程:https://pytorch.org/mobile/

命名張量

康奈爾大學的 Sasha Rush 認為,儘管深度學習無處不在,但傳統張量的實現顯著是一個缺點,例如它暴露了私有張量的維度、基於絕對位置的 Broadcasting、在文檔中保存類型新型等等。他提出了一種命名張量,作為規避各種張量「陷阱」的方法。

深度學習框架中的「張量」不好用?也許我們需要重新定義 Tensor 了

如今在 PyTorch 1.3 中,我們可以通過命名直接訪問張量維度。如下傳統的張量,我們可以通過索引訪問不同的維度:

# Tensor[N, C, H, W]images = torch.randn(32, 3, 56, 56)images.sum(dim=1)images.select(dim=1, index=0)

但是一旦我們為張量命了名,那麼就可以直接通過名稱訪問張量的不同維度。

NCHW = [『N』, 『C』, 『H』, 『W』]images = torch.randn(32, 3, 56, 56, names=NCHW)images.sum('C')images.select('C', index=0)

量化

在構建機器學習應用時,合理利用服務端與設備端計算資源都顯得極為重要。為了支持在伺服器和邊緣設備上更高效地部署模型,現在 PyTorch 1.3 支持使用 Eager 模式 Python API 進行 8-bit 模型量化。這種 8-bit 的整型量化方法可以在較低精度的條件下實現計算與存儲佔用,從而大大降低所需計算資源。

目前實驗階段的量化方法能支持後訓練量化、動態量化和訓練期間的量化。PyTorch 在後端會利用當前最優的量化核,即用於 x86 CPU 的 FBGEMM 和用於 ARM CPU 的 QNNPACK。重要的是,儘管後端會根據硬體選擇不同的量化核,但它們共享相同的 API。

PyTorch 相關新工具

Captum

隨著模型變得逐漸複雜起來,為模型交互開發相關的方法也就變得很重要了。為了解決這個問題,今天的 PyTorch 開發者大會主要發布了一個名為 Captum 的工具,用於幫助開發者理解模型生成的特定輸出。

Captum 提供了 SOTA 級別的工具,用於幫助開發者理解特定的神經元和層的重要性,同時對這些層或神經元對模型的影響進行預測。這個工具的算法包括:整合梯度、傳導率、SmoothGrad 和 VarGrad,以及 DeepLift。

以下為示例代碼,用於展示在 ResNet 中,每個像素點的可視化屬性。

noise_tunnel = NoiseTunnel(integrated_gradients)attributions_ig_nt, delta = noise_tunnel.attribute(input, n_samples=10, nt_type='smoothgrad_sq', target=pred_label_idx)_ = viz.visualize_image_attr_multiple(["original_image", "heat_map"],["all", "positive"], np.transpose(attributions_ig_nt.squeeze().cpu().detach().numpy(), (1,2,0)), np.transpose(transformed_img.squeeze().cpu().detach().numpy(), (1,2,0)), cmap=default_cmap, show_colorbar=True)

本圖中,特徵屬性使用整合梯度(integrated gradient)進行計算,並通過右圖展示出來。

CRYPTEM

基於雲平臺或 MLaaS 平臺的 ML 實戰應用經常面臨一系列安全和隱私方面的挑戰。特別是,這些平臺的用戶並不希望共享未加密的數據,這很可能會阻礙用戶進一步獲得 ML 工具帶來的好處。為了解決這個問題,ML 社區正探索一系列的技術方法,它們的成熟度各不相同,其包括同態加密、安全多方計算、可信執行環境、設備端計算和差分隱私等等。

為了更好地理解這些技術如何應用到模型之上,PyTorch 團隊發布了 CrypTen 工具,它是一種社區驅動的研究平臺,用來解決隱私保護領域的機器學習問題。

最後除了這些重大新特性,PyTorch 還有更多提升,包括 Python 子語言 TorchScript 的完善、C++前端的優化、TensorBoard 支持的更新等等。不管怎麼樣,PyTorch 肯定是越來越好用的,大家也可以快快更新呀。

參考連結:

https://ai.facebook.com/blog/pytorch-13-adds-mobile-privacy-quantization-and-named-tensors/https://www.reddit.com/r/MachineLearning/comments/dg0a5i/d_pytorch_dominates_research_tensorflow_dominates/https://www.reddit.com/r/MachineLearning/comments/dg2lb6/n_pytorch_130_mobile_support_named_tensors/https://app.releasly.co/releases/pytorch/pytorch/1_3_0

相關焦點

  • PyTorch Hub發布!一行代碼調用最潮模型,圖靈獎得主強推
    圖靈獎得主Yann LeCun強烈推薦,無論是ResNet、BERT、GPT、VGG、PGAN還是MobileNet等經典模型,只需輸入一行代碼,就能實現一鍵調用。厲不厲害!Facebook官方博客表示,PyTorch Hub是一個簡易API和工作流程,為復現研究提供了基本構建模塊,包含預訓練模型庫。
  • PyTorch Hub:圖靈獎得主 Yann LeCun 強推!一行代碼輕鬆復現主流...
    圖靈獎得主 Yann LeCun 強烈推薦關於 PyTorch Hub可復現性是許多研究領域的基本要求,包括基於機器學習技術的研究領域。[所有者] 發布模型PyTorch Hub 可通過添加一個簡單的 hubconf.py 文件,實現將預訓練模型 (模型定義和預訓練權重) 發布到 GitHub 存儲庫。
  • 圖靈獎得主LeCun親授,深度學習課程在線發布|資源
    而這次的課程,是由圖靈獎得主、深度學習三巨頭之一、AI大牛Yann LeCun及紐約大學助理教授Alfredo Canziani共同教授的。大佬的親授,往往是令人期待的。那麼該課程都有哪些內容呢?(相關資源可在文末獲取。)
  • 這7位圖靈獎得主
    這7位圖靈獎得主,竟然今日才入選ACM Fellow,他們可是程式設計師「祖師爺」7位圖靈獎得主計算機科學許多基礎研究的關鍵是ACM研究員。要知道,ACM—美國計算機協會是世界著名的重要計算機組織,會員是其重要榮譽之一。計算機領域的諾貝爾獎由ACM頒發。今天(2021年1月14日),當ACM新選出的研究員名單公布時,七位靈魂獎得主的名單令人驚訝。
  • 圖靈獎得主Edmund Clarke感染新冠逝世
    【新智元導讀】2007年圖靈獎得主愛德蒙·克拉克(Edmund M. Clarke)因感染新冠肺炎於當地時間12月22日不幸去世。當地時間12月22日,2007年圖靈獎得主愛德蒙·克拉克(Edmund M.
  • 圖靈獎得主David Patterson為你解惑
    在主論壇上,圖靈獎得主David Patterson將帶來宗師課《體系結構創新加速人工智慧》。人工智慧已經成為新一輪產業變革的核心驅動力,正在對世界經濟、社會進步和人類生活產生極其深刻的影響。本屆開發者日包含 1 場主論壇、多場分論壇、高峰對話、黑客松、Demoday、公開課等活動,為業界呈現最豐盛的人工智慧技術分享盛宴。在活動期間,大會也將進行上海白玉蘭開源開放研究院揭牌、發布《人工智慧開源開放報告》、WAIC 雲帆獎。
  • 24位圖靈獎得主聯名支持拜登,科學界拋棄川普?
    這是54年來,首次圖靈獎得獎者聚集在一起支持同一位候選人。「2020創新之源大會將於9月22日在中關村軟體園召開,詳細信息見文末海報,歡迎報名!」24位圖靈獎得主支持拜登,移民政策損害美國利益「圖靈獎」通常被稱為是計算機的諾貝爾獎,每年會把獎頒給對計算機領域做出持久和重大技術貢獻的人。
  • 2007年圖靈獎得主愛德蒙·克拉克因感染新冠肺炎不幸去世
    打開APP 2007年圖靈獎得主愛德蒙·克拉克因感染新冠肺炎不幸去世 新智元 發表於 2021-01-14 10:36:07 【
  • 2019圖靈獎得主,AI教父Yann LeCun訪臺
    也因此,在 2019 年,他與 Geoffrey Hinton、Yoshua Bengio 一道共同獲得了圖靈獎。對於楊立昆先生此次訪臺,TVBS新聞臺在採訪威盛電子嵌入式事業部總經理吳億盼時,她表示:「我們這一次看到楊立昆來訪其實是非常榮幸的事情,他是這次圖靈獎的得主。圖靈獎是什麼呢?它相當於計算機科學的諾貝爾獎。」
  • 圖靈獎得主Edmund Clarke感染新冠逝世,教計算機自己檢查...
    新智元報導  來源:外媒  編輯:LQ  【新智元導讀】2007年圖靈獎得主愛德蒙·克拉克(Edmund  當地時間12月22日,2007年圖靈獎得主愛德蒙·克拉克(Edmund M. Clarke)因感染新冠肺炎不幸去世,享年75歲。  他的兒子James Clarke在推特上發布了這一消息。在推文中,James Clarke說:「今天,我的父親愛德蒙·M·克拉克因為新冠肺炎去世了。他是2007年圖靈獎獲得者。
  • 圖靈獎得主教出來的圖靈班到底多牛?
    而圖靈班,作為北大傾全院之力培養的「寶貝疙瘩」,卻還有很多人沒聽說它的大名。不過也正常,畢竟還年輕嘛。接下來,就由超模君來給大家講講北大的這個「小寶貝兒」——圖靈班。師資雄厚我們知道,在北大,學霸多如狗,學神滿地走。可是強中自有強中手,北大也有霸中霸。
  • 首位圖靈獎女性得主Frances Allen逝世
    打破這個局面的首位圖靈獎女性得主Frances Allen最近與世長辭,享年88歲。Frances Allen是首位獲得有「計算機界諾貝爾獎」之稱的美國圖靈獎(ACM Turing Award)的女性,同時是IBM首名女性員工,致力改善編譯器,奠定現代計算機編譯技術,也是程序開發基礎之一,讓編寫程序得以在硬體執行。
  • 突發:24位圖靈獎得主聯合署名支持拜登競選
    時值川普與拜登雙方競選局勢日趨緊張之際,一份由24位圖靈獎得主共同籤署的文件曝光。 文件內容顯示,24位圖靈獎獲得者共同籤署了信件,以支持前副總統拜登在11月的美國總統競選。24位圖靈獎獲得者籤署了這封信,以支持前副總統拜登(Joe Biden)競選美國總統、美國和參議員卡馬拉·哈裡斯(Kamala Harris)為副總統。這是史上第一次圖靈獎得主群體(以這種方式)公開支持美國總統候選人。 信息技術已經徹底全球化。計算機科學吸引了很多有才華的學生,他們中的不少人移民來到了美國,成為創新者和行業領袖。
  • 圖靈獎得主姚期智開始籌備一支VC基金
    9月23日,據晚點LatePost消息,圖靈獎得主姚期智近期正在籌備一支VC基金,第一期基金規模在5至10億美元之間,將專注人工智慧姚期智,全球頂尖的計算機理論科學家,2000年圖靈獎獲得者,美國國家科學院外籍院士、美國藝術與科學學院外籍院士、中國科學院院士、中央研究院院士、香港科學院創院院士,清華大學交叉信息研究院院長,清華大學高等研究中心教授,香港中文大學博文講座教授,清華大學-麻省理工學院,香港中文大學理論計算機科學研究中心主任
  • 圖靈獎得主姚期智:深度學習、神經網絡、密碼學……人工智慧絕對是...
    本次大會共邀請到海內外近600位重磅嘉賓,涵蓋產學研用多個領域,包括7位圖靈獎得主、1位諾貝爾獎得主、39位院士在內的200多位專家學者以及國內外頂尖人工智慧企業領袖。在為期3天的活動中,他們將分享關於行業發展和人類未來的最新思考。
  • 華人著名計算機科學家劉炯朗逝世,圖靈獎得主姚期智為其得意...
    圖靈獎唯一華人得主姚期智為其得意門生。 消息稱,臺灣清華大學前校長劉炯朗7日因病過世,享壽86歲。 他是即時系統、電子設計自動化、離散數學等領域的開山祖師爺之一,更被列為國際知名學會IEEE及ACM雙會士及雙教育獎得主,不僅學術成就驚人,更是培育英才,桃李滿天下。 1998-2002年間,他放棄美國籍而返臺擔任國立清華大學校長。
  • 7位圖靈獎得主當選,新晉多位華人,2020 ACM Fellow公布
    在 95 名入選者中,包括多位華人,如杜克大學教授陳怡然、浙大教授任奎等,更有多名圖靈獎得主當選,可謂星光熠熠。群星閃耀:七位圖靈獎得主當選 ACM Fellow此外,在眾多當選者中,還有七位圖靈獎得主,他們分別是:1976 年圖靈獎得主 Michael O. Rabin機構:哈佛大學當選理由:提出非確定性自動機、概率自動駕,對可計算性和計算複雜性理論做出了貢獻。1980 年圖靈獎得主 C.
  • 這7位圖靈獎得主才入選ACM Fellow,他們可是程式設計師「祖師爺」
    7位圖靈獎得主、計算機科學多項基礎研究的關鍵大牛,竟然今日才成ACM Fellow……要知道,ACM——美國計算機協會,全世界最知名、重要的計算機組織,而Fellow(會士)則是成員的最重要榮譽之一。並且計算機領域的「諾貝爾獎」,也由ACM評選和頒發。
  • 圖靈獎得主John Hennessy將來CNCC做特邀報告
    2017年圖靈獎得主John Hennessy 確定將來CNCC2020做特邀報告,將會就第四代計算機體系結構的終結與新的前進道路展開論述。在業內人士的期待中,2017年度圖靈獎獲得者John Hennessy確定為大會特邀講者。自從第一臺電子計算機問世以來,大約65年過去了。前三代計算機已經成為過去,而以多核通用微處理器為主的第四代計算機正處於衰敗期。
  • 騰訊、百度、華為、諾獎得主、圖靈獎獲得者都「來」了……線上智博會重慶開幕
    今天(15日),2020 線上中國國際智能產業博覽會在重慶開幕,主題為「智能化:為經濟賦能、為生活添彩」。開幕式暨峰會上,諾貝爾獎、圖靈獎得主等世界知名科學家、相關國際組織負責人、有關國家政府機構代表、友好城市市長等將通過AR、MR、VR、全息投影等新一代視聽技術線上「參會」,與國內業界重要嘉賓一道,分享全球大數據智能化最新成果、未來趨勢、發展願景。