您的位置:首頁>正文

被詬病不實用的超級電腦,在深度學習時代會改變嗎?

在中學課本裡, 我們都學到過“超級電腦”這個概念, 在印象裡它通常和神州五號、航空母艦等等高科技設備出現在同一個章節, 屬於國家科研能力的體現, 更是在國際科技戰備的賽點。

現在這麼多年過去了, 一回神中國超級電腦的代表作已經從天河進化成了神威·太湖之光, 並且通過對地震、海浪等等自然現象的精確模擬兩次獲得了戈登貝爾獎。

據稱, 戈登貝爾獎是超算領域的最高獎項, 在獎項評選標準中更多會考慮到超算項目的實際應用性。 過去三十年中, 這一獎項一直被美國和日本壟斷, 直到最近兩年才被中國蟬聯。

說實在的, 大多數人的印象中, 中國超算經過這麼多年的發展, 還實現了“零的突破”, 可在IT領域中, 我們似乎更多的受益於互聯網、移動終端的發展。

超級電腦既然都那麼厲害了, 那為什麼我們在生活中還見不到它的身影呢?

地震?海浪?超算到底能幹嘛

擁有這種疑問的人不是少數, 超級電腦這幾年開始頻繁的受到一種質疑:強大的算力究竟有什麼用?耗費這麼多科研經費和資源, 是不是只是為了刷排名而沒有實用價值?

其實人們會產生這種疑問是很正常的, 超級電腦從研發到生產以至於後期的運維, 成本都非常之高。 研發時凝聚的高精尖科研力量自不必提, 產品上光是CPU/GPU就有幾千個, 占地面積要達到上千平方米。 使用起來更是電老虎, 以天河二號為例, 滿負荷運行的情況下, 一天的電費就需要30萬。 而大量的計算還會讓超級電腦發熱, 如何降溫還成了個大問題。

所以, 這麼昂貴的超級電腦都用來做什麼了呢?

以去年神威·太湖入圍戈登貝爾的幾個項目為例, 他們分別是“千萬核可擴展全球大氣動力學全隱式模擬”、“高解析度海浪數值模擬”和“鈦合金微結構演化相場類比”。

em……沒錯, 除去軍事應用外, 超級電腦通常會被應用于天文、氣象、基礎物理、化學等等方面的研究。 乍一聽起來,

的確離人們的現實生活太遠了。 畢竟現在整個世界都還沒用出現什麼突破以往物理定律的新發現, 雖然能發射火箭, 可普通人還不能進行一次太空旅行, 至於天氣預報倒是比以前準確了不少, 可也沒出現過超算成功預測並避開自然災害的情況。

用超級電腦玩網遊, 是一種怎樣的體驗?

計算這件事, 在大資料遍地的今天並不少見, 既然超級電腦的計算能力那麼強, 為什麼不把交通大資料、金融大資料這些東西都放到上面去算呢?

首先, 我們要對超算能力這件事有一個正確的認識。 由於超級電腦集成了大量CPU, 它所擅長的也是CPU最擅長的工作——浮點運算。 由於電腦使用的是二進位, 所以在處理1.01這種帶小數點的小數時,

只能用科學計數法來表示。 這樣就避免了小數運算時的有窮性, 可以對無窮大和無窮小的數值進行運算。

超級電腦最擅長的就是依靠並聯的CPU們對浮點數計算進行並行運算。 可以承受其他電腦無法承受的計算峰值。 一個CPU算一道題需要5個小時, 用五個CPU把這道題拆解開來分別計算, 就只需要一個小時。 一些在普通電腦上要跑一個禮拜的專案, 拿到超級電腦上可能兩分鐘就完成了。

所以現在我們知道了,超算的最大作用,是為某一種特定形式的計算節約時間。而在日常生活中,也許我們面對的問題並不是浮點數計算,比如區塊鏈應用的就是單一hash的運算;又或者像電商、遊戲大廠,它們面臨的不是高計算量,而是快速頻繁的資料併發吞吐。

而把計算任務部署到超算上,又面臨著不少的成本,除去使用費用不說,由於超算只提供編譯平臺,使用者還要自己去熟悉系統。而且目前的超級電腦雖然大多為學術機構所有,但是一想到要把自己使用者的資料拿到別人的機子上計算,總覺得有點怪怪的……

所以,超算並不是不能用來處理我們日常、商業中遇到的計算問題,而是很多本來不是超算最擅長的,綜合使用成本而言,沒有必要使用超算。

用超算訓練AI,會不會是超算民用的第一步?

不過一個好消息是,隨著深度學習的普及和發展,超算的計算能力或許可以被更多人應用起來。

眾所周知,深度學習的神經網路層數更深,每個神經元之間互相連接,形成了一個非常複雜的結構。而每個神經元中又都需要Sigmoid函數這類複雜的數學計算,加上圖像識別、語音辨識這類工作本身資料訓練集就很大,最後就集結成了一種非常可怕的計算量。

這幾年深度學習的發展,離不開計算能力的發展。英偉達之所以能靠賣GPU超過同行,最大的原因就是深度學習對計算能力的依賴。

那麼,超級電腦能不能應用在深度學習上呢?答案是肯定的。

在今年年初的德撲人機大賽中,打贏了人類牌手的Libratus就是一個在超級電腦上訓練的AI。Libratus甚至沒有搭建神經網路,光學習了遊戲規則,利用強化學習自我博弈就超越了人類水準。

在國內,百度旗下的深度學習開源平臺PaddlePaddle也支援超算應用,甚至還入選了今年的ASC超算大賽總決賽。計算性能的超越讓一些以往不可能的事情成為可能,比如上面那個德撲的案例,不應用神經網路、單純靠強化學習的自我博弈在沒有超算的情況下可能要花費無法想像的時間,而有了超算後,這件事情就成為了可能。

同理,一些大量資料、長時間的深度學習/深度強化學習模型訓練都可以在超電腦上完成。不過,這個領域中的超級電腦的競爭對手也不少。

首先就是晶片廠商們,英偉達、IBM、高通等等廠商都在爭先恐後的研發著適用於深度學習的晶片。早在3年前,IBM推出的TrueNorth就已經集成了54億個矽電晶體,計算能力已經接近當年的超級電腦,功耗卻只有65毫瓦。英偉達也曾推出過集成8個GPU的“超算系統”,計算能力也可以滿足大部分人的需求。

其次就是雲服務供應商,也就是上述晶片廠商的客戶們。他們不光花重金搭建起來能力超群的分散式運算系統,還貼心的和TensorFlow、caffe等等深度學習框架合作,讓演算法可以無縫部署在系統上。阿裡雲在今年推出的異構計算產品最高可提供每秒75萬億次的算力,雖然比起超級電腦還差的遠,但性價比卻不低。

最後,還有一大批以研究演算法為主的技術供應商。他們雖然不能提供算力,卻可以通過種種方式壓縮演算法模型,讓演算法模型在更低算力的硬體中也能運行。比如西雅圖的一個創業團隊,就在一直嘗試用二值化神經網路調整模型精度,試圖在能耗和成果中找到一個平衡。

加上在深度學習上,高成本、軟體環境複雜、資料隱私擔憂等等問題仍然有待解決。綜合看來超級電腦仍然不是最好的解決方案。

讓人哭笑不得的是,很多人認為深度學習帶來的高強度計算要求會推進超級電腦的商業化、民用應用,結果反而是帶動了其他算力供應商的發展,給超級電腦造就了更多的競爭對手。

即使我們暫時還不能在生活場景中享受到超算帶來的益處,但超算在天文、物理、軍工上帶來的貢獻仍然是巨大的,如果沒有超算,在研發火箭、衛星時幾乎無法進行模擬計算。而超算帶來的快速、高精度的模擬,為這些高精尖技術的研發節約了無法估計金錢和時間成本。或許,等我們能在火星上觀光的那天,就會切實體會到超算帶來的福利吧。

所以現在我們知道了,超算的最大作用,是為某一種特定形式的計算節約時間。而在日常生活中,也許我們面對的問題並不是浮點數計算,比如區塊鏈應用的就是單一hash的運算;又或者像電商、遊戲大廠,它們面臨的不是高計算量,而是快速頻繁的資料併發吞吐。

而把計算任務部署到超算上,又面臨著不少的成本,除去使用費用不說,由於超算只提供編譯平臺,使用者還要自己去熟悉系統。而且目前的超級電腦雖然大多為學術機構所有,但是一想到要把自己使用者的資料拿到別人的機子上計算,總覺得有點怪怪的……

所以,超算並不是不能用來處理我們日常、商業中遇到的計算問題,而是很多本來不是超算最擅長的,綜合使用成本而言,沒有必要使用超算。

用超算訓練AI,會不會是超算民用的第一步?

不過一個好消息是,隨著深度學習的普及和發展,超算的計算能力或許可以被更多人應用起來。

眾所周知,深度學習的神經網路層數更深,每個神經元之間互相連接,形成了一個非常複雜的結構。而每個神經元中又都需要Sigmoid函數這類複雜的數學計算,加上圖像識別、語音辨識這類工作本身資料訓練集就很大,最後就集結成了一種非常可怕的計算量。

這幾年深度學習的發展,離不開計算能力的發展。英偉達之所以能靠賣GPU超過同行,最大的原因就是深度學習對計算能力的依賴。

那麼,超級電腦能不能應用在深度學習上呢?答案是肯定的。

在今年年初的德撲人機大賽中,打贏了人類牌手的Libratus就是一個在超級電腦上訓練的AI。Libratus甚至沒有搭建神經網路,光學習了遊戲規則,利用強化學習自我博弈就超越了人類水準。

在國內,百度旗下的深度學習開源平臺PaddlePaddle也支援超算應用,甚至還入選了今年的ASC超算大賽總決賽。計算性能的超越讓一些以往不可能的事情成為可能,比如上面那個德撲的案例,不應用神經網路、單純靠強化學習的自我博弈在沒有超算的情況下可能要花費無法想像的時間,而有了超算後,這件事情就成為了可能。

同理,一些大量資料、長時間的深度學習/深度強化學習模型訓練都可以在超電腦上完成。不過,這個領域中的超級電腦的競爭對手也不少。

首先就是晶片廠商們,英偉達、IBM、高通等等廠商都在爭先恐後的研發著適用於深度學習的晶片。早在3年前,IBM推出的TrueNorth就已經集成了54億個矽電晶體,計算能力已經接近當年的超級電腦,功耗卻只有65毫瓦。英偉達也曾推出過集成8個GPU的“超算系統”,計算能力也可以滿足大部分人的需求。

其次就是雲服務供應商,也就是上述晶片廠商的客戶們。他們不光花重金搭建起來能力超群的分散式運算系統,還貼心的和TensorFlow、caffe等等深度學習框架合作,讓演算法可以無縫部署在系統上。阿裡雲在今年推出的異構計算產品最高可提供每秒75萬億次的算力,雖然比起超級電腦還差的遠,但性價比卻不低。

最後,還有一大批以研究演算法為主的技術供應商。他們雖然不能提供算力,卻可以通過種種方式壓縮演算法模型,讓演算法模型在更低算力的硬體中也能運行。比如西雅圖的一個創業團隊,就在一直嘗試用二值化神經網路調整模型精度,試圖在能耗和成果中找到一個平衡。

加上在深度學習上,高成本、軟體環境複雜、資料隱私擔憂等等問題仍然有待解決。綜合看來超級電腦仍然不是最好的解決方案。

讓人哭笑不得的是,很多人認為深度學習帶來的高強度計算要求會推進超級電腦的商業化、民用應用,結果反而是帶動了其他算力供應商的發展,給超級電腦造就了更多的競爭對手。

即使我們暫時還不能在生活場景中享受到超算帶來的益處,但超算在天文、物理、軍工上帶來的貢獻仍然是巨大的,如果沒有超算,在研發火箭、衛星時幾乎無法進行模擬計算。而超算帶來的快速、高精度的模擬,為這些高精尖技術的研發節約了無法估計金錢和時間成本。或許,等我們能在火星上觀光的那天,就會切實體會到超算帶來的福利吧。

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示