倍可親

回復: 1
列印 上一主題 下一主題

這家英國創企掌握了什麼,就敢叫板Intel和NVIDIA

[複製鏈接]

7492

主題

1萬

帖子

2萬

積分

貝殼光明大使

Rank: 6Rank: 6

積分
23113
跳轉到指定樓層
樓主
大千世界 發表於 2017-3-5 13:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  2017-03-04 04:36 1

  

  了解人工智慧領域的人都知道,圖像處理單元(GPU)常被用來運行機器學習程序。而GPU比較適合運行完整的程序,而Graphcore這家創業公司力爭要在晶元領域與英特爾和英偉達開始競爭。而他們提出的概念不是CPU,也不是GPU,而是IPU——智能處理單元。

  

  所有最新的機器學習框架的有一個共同點,不管是TensorFlow、MxNet、Caffe、Theano、Torch還是其他的框架,他們均使用計算圖像的概念來實現提取過程。圖像正是描述在機器學習系統中創建的模型的最好方法。這些計算圖像由用於描述頂點之間的通信路徑的「邊」(突觸)以及連接的計算單元的「頂點」(神經元)組成。

  

  與標量的CPU或矢量的GPU不同,Graphcore智能處理單元(IPU)是一個圖像處理器。這家英國公司已經於2016年獲得了3000萬美元的投資,投資者包括博世、三星等巨頭。

  著名科技媒體wired曾撰寫文章,介紹了Graphcore專為機器學習應用程序設計的Poplar軟體框架,是如何創建了機器學習的「計算圖」的。

  

  AlexNet數據集訓練的深度學習圖像

  該文介紹了Graphcore的軟體框架Poplar,並概述了AlexNet圖像的結構。隨後,為了更好地使大家理解,該公司的科研人員又在博客中詳述了該機器學習模型的工作原理。

  

  wired文章中看到的圖像,是從部署在IPU上的機器學習模型Poplar的內部圖像處理框架中生成的。Poplar本身由兩個關鍵組成部分組成:圖像編譯器(Graph Compiler)+圖像引擎(Graph Engine)

  在Poplar中,圖像允許你自己定義計算的過程,其中頂點數代表操作,邊數描述這些操作之間的通信。例如,如果要對2個數字求和,可以定義一個頂點,它具有2個數的輸入(要相加的數字),一些計算(2個數字相加的函數)和一個輸出(結果)。通常,頂點操作要複雜得多,由很多小程序(通常稱其為codelets)來定義。而圖像提取則非常具有吸引力,因為它不對計算結構做出假設,它將計算分解成組件塊,并行處理器(例如IPU)可以利用這些組件塊獲得高性能。

  Poplar使用這種簡便的圖像提取來構建出這些超大的圖像。圖像的程序化成像意味著我們可以根據所需的特定計算進行調整,以確保研究人員可以最有效地使用IPU資源。

  這也使得科研人員可以在Poplar中實現對庫的構建,並提供了常見的外部介面。就拿上面的加法器那個簡單的例子而言,我們可以寫一個用於添加數字的庫函數。如果我們將Poplar中不同大小的輸入可視化的話,看起來就像下面這張圖。注意,只有一個頂點類型可以重複使用,但頂點之間的連接可以形成更複雜的計算。

  

  Poplar圖像編譯器使得科研人員能夠有效地將這些圖像編譯到IPU圖像處理器中。Graphcore利用它構建圖像庫,特別是神經網路庫(POPNN)。POPNN包含了針對各種圖元的高度優化的頂點類型集合,包括諸如卷積,池化和全連接層等基元,他們可以被組合成各種複雜的機器學習模型。下圖是在MNIST上訓練的全連接網路。

  

  MNIST是一個非常簡單的計算機視覺數據集,在機器學習領域中,就類似於編程里的「hello world」那麼簡單。用於學習此數據集的簡單網路,有助於理解那些圖像。通過將圖像庫與TensorFlow等框架集成,在機器學習應用中,Graphcore採用能夠充分利用IPU性能的最簡單的方式。

  一旦使用圖像編譯器構建了一個機器學習模型的圖像,就需要去執行它,此功能由Poplar 圖像引擎提供。下圖展示的是向前推理通過Resnet的50層網路。

  

  ResNet是微軟開發的神經網路,該神經網路在2015ImageNet上獲得了分類競賽冠軍,該網路通過Graphcore神經網路圖像庫訓練之後用於分類圖像。圖像處理器,比如IPU,定義這些節段僅需一次,然後就可重複地調用它們。例如,conv4層集群總共執行六次,但只存在於圖中一次;每次調用使用具有不同網路權重數據的相同代碼。在圖中,我們可以看到大量的重用。圖像還證明了卷積層的形狀多樣性,如上所述,每個都具備一個圖像,以配合自然形狀的計算。

  

  圖像引擎使用由圖像編譯器構建的圖來創建並管理機器學習模型的執行。一旦被部署,圖像引擎便可提供用於調試和分析的工具,同時,它還能監視並響應應用程序中使用的IPU設備或設備。

  ResNet-50的計算圖形的圖像展示的是整個模型。這個大小級別,我們很難看出來單個頂點之間的連接,所以需要把圖像放大。

  

  

  

  IPU專門用於構建和執行所有不同類型的機器智能模型的計算圖像。IPU系統比CPU和GPU處理器訓練模型更快速,因為這些處理器不是為人工智慧的工作負載而專門設計的。

  相同的IPU硬體也可以用於部署用於推理或預測的優化模型。但最重要的是,理論上,Poplar與IPU的組合,比當今流行的深度學習演演算法應用更廣泛,它很有可能會引領未來機器學習的創新浪潮。

  來源:機器人圈

一直被朋友稱為小博士。其實就是書讀得多一些而已。

31

主題

950

帖子

2231

積分

五星貝殼精英

Rank: 4

積分
2231
沙發
雅安雄起 發表於 2017-3-6 23:03 | 只看該作者
我只能說我一句也沒看懂
回復 支持 反對

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 註冊

本版積分規則

關於本站 | 隱私權政策 | 免責條款 | 版權聲明 | 聯絡我們

Copyright © 2001-2013 海外華人中文門戶:倍可親 (http://big5.backchina.com) All Rights Reserved.

程序系統基於 Discuz! X3.1 商業版 優化 Discuz! © 2001-2013 Comsenz Inc.

本站時間採用京港台時間 GMT+8, 2024-4-28 06:05

快速回復 返回頂部 返回列表