隨著itle="物聯(lián)網(wǎng)" target="_blank">物聯(lián)網(wǎng)和人工智能的發(fā)展,邊緣計算逐步走入了人們的視野,且其應用正在普及當中。當下,在IT和物聯(lián)網(wǎng)行業(yè)里,都在討論邊緣計算的概念。在中國,邊緣計算這個概念是在兩年半之前正式推出來的。
邊緣計算是發(fā)展趨勢。具體原因,第一是數(shù)據(jù)量的增長,因為數(shù)據(jù)量的增長不可能把所有數(shù)據(jù)都通過網(wǎng)絡傳到后端,代表帶寬增長的速度小于、慢于數(shù)據(jù)增長的速度。另外一方面,對于一些實時性要求比較高的應用場景,他們需要在邊緣對數(shù)據(jù)進行處理和判斷,尤其像工業(yè)類,或者自動駕駛、無人駕駛這樣一些領域。
第三,使用場景是在一些對于隱私保護要求比較高的場景,比如人的醫(yī)療信息,也是不允許、或者用戶不愿意把這些數(shù)據(jù)進行云端的分享,需要在本地進行存儲,所以,這些因素造成在物聯(lián)網(wǎng)應用里,邊緣計算是發(fā)展趨勢。
邊緣計算面臨挑戰(zhàn)
不管是消費端數(shù)據(jù),還是行業(yè)數(shù)字化產生的數(shù)據(jù),有越來越多的數(shù)據(jù)在邊緣產生,這直接擠壓到了存儲和帶寬的要求,隨之而來的邊緣大數(shù)據(jù)概念在過去兩年也提出來了。
傳統(tǒng)的物聯(lián)網(wǎng),更多的是線性思維,即物體產生數(shù)據(jù),通過互聯(lián)網(wǎng)傳到云端,分析產生價值,而今天的物聯(lián)網(wǎng)完全是三維立體的概念。而關于邊緣計算,業(yè)界已經有共識。首先是實時的運用,二是成本,三是分析和預測,過去的能力只能是分析已經發(fā)生的事件,怎么樣通過對發(fā)生事件的了解預測將來;四是精準性問題,甚至是信息安全、信息保密的問題。
要把人工智能真正推向邊緣并不是一個很簡單的事情,在今天來看也沒有一個一勞永逸的方案。對此,英特爾副總裁兼物聯(lián)網(wǎng)事業(yè)部中國區(qū)總經理陳偉博士表示:“我過去總是講,一個是量大,一個是碎片化,碎片化叫Fragmentization,很難解決,英特爾作為一個平臺化的公司,在這些方面,我們過去幾年確實做了持之以恒的努力。關于視頻技術方面,今天很簡單,就是從英特爾產的帶有顯核的GPU,加上我們最近的幾個加速器,像Movidius,還有Novana這些技術,還有FPGA,至少從硬件的角度來講,我們是可以根據(jù)應用去勾勒出一個功耗、成本最大化的優(yōu)化解決方案的,這些應用是和合作伙伴一起去優(yōu)化、研發(fā)的?!?/p>
陳偉博士,英特爾副總裁兼物聯(lián)網(wǎng)事業(yè)部中國區(qū)總經理
邊緣計算對IC設計的要求
邊緣計算有一些關鍵的技術點,這些關鍵的技術點對于芯片的發(fā)展路線圖設計至關重要。一個技術點是計算,尤其是AI的計算,在整個邊緣會越來越突出,而邊緣的設備和云端的設備是不一樣的,因為邊緣設備能夠承載的功耗,能夠支持的操作系統(tǒng),能夠提供的內存容量都是不一樣的,所以在邊緣這一側,算法要做一些特定的優(yōu)化,對工具也有特定要求。
對此,英特爾中國區(qū)物聯(lián)網(wǎng)事業(yè)部首席技術官兼首席工程師張宇博士表示:“像我們的Movidius、FPGA設計,引入到這里面,也有這樣的考量,因為他們的性能功耗比比通用處理器會有一個更好的體現(xiàn)?!?/p>
此外,邊緣計算還有一些其他關鍵的技術要素,比如在工業(yè)領域,要在確定的時間里得到一個確定的響應,我不可能給它很長的延時,所以需要一個TCC支持,這在我們的芯片設計時也會考慮進去。
張宇博士,英特爾中國區(qū)物聯(lián)網(wǎng)事業(yè)部首席技術官兼首席工程師
還有一些關鍵技術點,比如公共安全的使用場景,在工業(yè)機器人的使用環(huán)境里面,怎么保證機械手、機械臂不會對人身安全造成傷害,這些在我們的芯片設計里,也會把這些因素考慮進去。
總之,我們在做芯片設計,尤其是在邊緣芯片類設計的時候,會考慮它的計算要求,也會考慮它的數(shù)據(jù)連接的要求,也會考慮它的功能安全和信息安全等方面的要求。
陳偉表示,從宏觀的產品目標規(guī)劃來講,有幾位業(yè)界標桿人物加入了英特爾,我相信在視覺芯片方面,一定會加速我們的進展。
英特爾有幾個對外的事業(yè)部,有數(shù)據(jù)中心、物聯(lián)網(wǎng),還有存儲,他們不見得有自己的單獨產品目標,我們有些技術是分享的。就物聯(lián)網(wǎng)事業(yè)部來講,早期是一個嵌入式的事業(yè)部,當時的出發(fā)點是PC的芯片可以用到很多非PC的應用當中,比如取款機,我們有一個非常成熟的生態(tài)鏈,就是板卡上硬件的生態(tài)鏈。物聯(lián)網(wǎng)事業(yè)部將來的發(fā)展方向,會更加強調視覺,強調負載整合,但是這兩點都需要芯片技術的支撐。所以,第一,在CPU和GPU方面,一定是研發(fā)更適合于這兩個應用場景的芯片。
第二,我們會整合一些加速器,Movidius就被整合到英特爾IoT事業(yè)部里面來了,當然,不僅僅用于IoT應用場景,別的應用場景也可以用,但是主流,從產品的規(guī)劃是在IoT里面走的。根據(jù)這個戰(zhàn)略,我們會更自主地研發(fā)一些更適合于物聯(lián)網(wǎng)應用場景的芯片。
計算機視覺和
深度學習開發(fā)工具OpenVINO
靈活、多元、高質量的硬件是必要條件,今天,要用這些硬件直接應用到人工智能上,還有很多的壁壘,主要是怎樣能深度挖掘并充分利用硬件的能力,如計算、圖像分析和加速能力。
對于各種應用和挑戰(zhàn),英特爾推出了軟件SDK平臺——OpenVINO,OpenVINO于今年5月16號在全球發(fā)布,7月27號,推出了OpenVINO的視覺推理和神經網(wǎng)絡優(yōu)化工具套件。它包括模型的完善、模型的充實和插件的優(yōu)化,其目的是提供從邊緣到云的計算,基于視覺和深度學習,提升整體開發(fā)能力。
據(jù)張宇博士介紹,OpenVINO是英特爾給進行計算機視覺和深度學習應用開發(fā)的開發(fā)者提供的工具。人工智能、深度學習是當下的一個風口,AlphaGO的出現(xiàn)使大家感覺到人工智能新一輪的春天已經到來了,其實不僅僅是AlphaGO,如果我們看一下周圍會發(fā)現(xiàn),現(xiàn)在有很多基于機器學習、人工智能的應用正在服務于我們的生活。比如說大家比較熟悉的安防領域,通過對一些經過標注的視頻數(shù)據(jù)的訓練,我們已經可以從視頻里面分析出人、車、物等特征,我們能夠知道這個車的車型是什么,是哪款,它的顏色以及車標。
對于人,我們已經可以用刷臉的方式進行支付,準確度已經很高,除了對于視頻的分析,其實在自然語言處理等領域,人工智能已經得到很好的應用,現(xiàn)在市場上有非常多的智能音箱產品,比如谷歌推出了Google Home、亞馬遜推出了Alexa,百度推出了小度,小米也推出了小愛,這些都是人工智能的典型應用。
但是,從人工智能演進過程可以看到,從最早的人工智能的計算,不管是訓練還是推理,實際上都是發(fā)生在數(shù)據(jù)中心,這是因為深度學習需要大量的運算量,只有在數(shù)據(jù)中心運用一些通用處理器,才能提供如此巨大的計算并提供這些計算所需要的電力消耗。但是,近年來隨著人工智能技術的發(fā)展,無論算法還是芯片,人工智能都達到了一個很高的水平。
在算法方面,很多網(wǎng)絡壓縮的算法已經在被廣泛使用,從而使得人工智能的計算量在降低。同時還有很多用于人工智能的專用芯片以及FPGA使用,使得一些深度學習的運算可以從云端推送到邊緣,所以,像智能攝像機、智能網(wǎng)絡視頻存儲器、NVR等產品在市面上都涌現(xiàn)出來了。
同時可以看到,在整個系統(tǒng)端到端的網(wǎng)元里面,不同的網(wǎng)元所能提供的計算量是不一樣的,它能夠支撐的操作系統(tǒng)也各不相同,因此,有各自不同適用的芯片架構。比如在攝像機里,一個攝像機的功耗大概15瓦,從15瓦里能夠提供給做智能運算的能量有2~3瓦,對于這樣的使用場景,ASIC架構是最適宜的。
數(shù)據(jù)中心需要一定的靈活度,對于一些通用的處理器可能又是最適宜的,因此不同的網(wǎng)元有不同適宜的架構,不同的芯片往往有各自不同的開發(fā)方法,這樣對開發(fā)者而言就帶來一定的困擾,也就是說如果我為某一種芯片所開發(fā)的軟件換了一個架構以后,它可能是不適用的,這樣無形中就增加了開發(fā)的門檻。
張宇表示:“我跟很多從事人工智能應用開發(fā)的開發(fā)者交流,我們發(fā)現(xiàn),目前在進行人工智能開發(fā)的時候,還有很多的問題沒有解決,比如,我作為一個開發(fā)者,已經有了一個經過訓練完以后的網(wǎng)絡模型,但是由于我的推理平臺相對來說能力有限,我需要把現(xiàn)在網(wǎng)絡模型的一部分,而不是全部能夠下載到我的推理平臺之上,這是我的一個困擾。另外一個困擾是我現(xiàn)在一個訓練的模型,如果把它推送到一個推理平臺之上,我發(fā)現(xiàn)它的性能不高,我如何來提升這個性能?再或者,我在做深度學習、人工智能應用開發(fā)的時候,我所用到的框架并不被現(xiàn)在英特爾的一些架構所支持,比如Movidius或者是FPGA,我現(xiàn)在不能把它用起來,那么如何進行使用?這是我們發(fā)現(xiàn)開發(fā)者的一些困擾?!?/p>
我們推出的OpenVINO,實際上就是解決以上這些問題的,OpenVINO是一個可以加快高性能計算機視覺和深度學習視覺應用開發(fā)的一個工具套件,它能夠支持英特爾平臺的各種加速器,包括CPU、GPU、FPGA以及Movidius的VPU,來進行深度學習,同時它能夠直接支持異構的執(zhí)行。它使用的對象是軟件開發(fā)人員以及開發(fā)、監(jiān)控、零售、醫(yī)療、辦公自動化以及自動駕駛等領域的數(shù)據(jù)科學家。
OpenVINO工具套件的優(yōu)勢主要體現(xiàn)在:
首先,性能方面的提升,通過OpenVINO,可以很方便地使用英特爾的各種硬件加速資源,包括CPU、GPU、VPU、FPGA,這些資源能夠幫助大家提升你的深度學習算法在做推理時的性能,而且執(zhí)行的過程中是支持異構處理和異步執(zhí)行的,這樣能夠減少由于系統(tǒng)資源等待所占用的時間。
另外,OpenVINO使用了經過優(yōu)化的OpenCV和OpenVX,同時提供了很多應用示例,可以縮短開發(fā)時間。這些庫都支持異構執(zhí)行,如果編程的話,編寫一次,以后我可以通過異構接口支撐跑在其他的硬件平臺之上。
在深度學習方面,OpenVINO帶有模型優(yōu)化器、推理引擎以及超過20個預先訓練的模型,大家可以利用這些工具,快速實現(xiàn)自己基于深度學習的應用,而且OpenVINO使用了OpenCV、OpeenVX的基礎庫,大家可以利用這些基礎庫去開發(fā)自己特定的算法,實現(xiàn)自己的定制和創(chuàng)新。
用戶體驗
圖像處理的算法是非常多樣化的,除了人臉識別以外,還有車輛分析、結構化分析、行為分析等等。
宇視研發(fā)副總裁AI產品線總監(jiān)湯立波表示:“我看到這個領域里已經很難有一個場景只需要一種算法,絕大部分都是要多種算法融合。OpenVINO可用于不同的硬件平臺,可以加載不同的神經網(wǎng)絡,實際上就是可以加載不同的算法?!?/p>
據(jù)湯立波介紹,在與英特爾合作的過程中,在整個開發(fā)過程中,相互之間可以共享經驗、一同解決問題。在整個產品開發(fā)過程中,其實大量的過程并不是開發(fā)本身,而是解決問題的本身,所以,只有非常有經驗的企業(yè)才能夠做出一款穩(wěn)定、能夠快速解決問題的、用于產品化的芯片。