希氏異構周斌:在醫療領域,為何我們需要一台深度學習超算平台
主講導師|周斌
本文編輯|師僥
本文為希氏異構人工智慧首席科學家周斌博士在智東西公開課旗下超級公開課NVIDIA專場進行線上主講的全程內容。這是超級公開課NVIDIA專場的第八講,周斌博士帶來的主題為《如何利用最強GPU搭建醫療人工智慧計算平台》的講解,這也是希氏異構首次解密醫療圖像AI領域最強超級計算機。
周斌是異構智能中國區總裁,同時也是異構智能和希氏醫療的合資公司——希氏異構醫療科技人工智慧的首席科學家,在山東大學信息科學與工程學院擔任教授,也是NVIDIA中國區唯一的CUDA Fellow以及NVIDIA深度學習學院講師。希氏異構是從事AI醫療領域的創業公司,專註於CT、超聲、皮膚、心電等醫療領域的AI應用技術研發,尤其是在消化內鏡AI技術方面。今年6月8日,希氏異構推出了專用於醫學圖像人工智慧技術的超算平台「神農一號」。
本文為周斌博士的主講實錄,共計6673字,預計8分鐘讀完。一起了解下周斌博士的主講提綱:
1、醫學AI的發展歷程
2、深度學習與GPU的平行運算
3、希氏異構醫學超算平台
4、AI賦能醫療,推動產業變革
主講實錄
周斌:大家晚上好,我是周斌,今天主講題目是《如何利用最強GPU搭建醫療人工智慧計算平台》。在正式開始之前,我先簡單的介紹一下自己。我是異構智能中國區總裁,同時也是異構智能和希氏醫療的合資公司——希氏異構醫療科技人工智慧的首席科學家,在山東大學信息科學與工程學院擔任教授,也是NVIDIA中國區唯一的CUDA Fellow以及NVIDIA深度學習學院的導師。我自己也一直從事與人工智慧相關的工作。
今天將圍繞醫療人工智慧相關的內容展開,包含如下幾個部分。第一,簡單回顧在醫學領域中人工智慧的發展歷程以及現階段需要解決的問題;第二,用最新的深度學習和GPU的並行平台該如何去搭建;第三,介紹我們在希氏異構研發完成的一台全國性能最高的醫療人工智慧深度學習超算平台的搭建;第四,如何利用AI來賦能醫療行業,推動產業變革。
AI是個非常火的話題,那麼AI的本質是什麼?工業革命實際是提供了解放人類體力的工具,利用外部的能源,獲得體力的倍增。而新一代的產業革命,是以AI、深度學習以及大數據為主的數據智能革命,是解放人類的腦力,通過使用一些能夠進行推算以及模仿生物行為的演算法和硬體系統,人可以真正讓大腦獲得解放,用智慧的方式去解決周邊的問題。
回顧一下人類對自然界的認識過程。首先是觀察,觀察需要有感測器,而感測器就是我們各種各樣的器官,比如眼睛接收視覺的信息,耳朵接收聽覺的信息,鼻子接收嗅覺的信息,手接收各種觸覺以及溫度感測器等等,這些感測器是我們的觀察器官,觀察獲得的信息會在神經系統匯總,其中包括大腦、小腦、脊髓等神經系統的匯總。通過大腦處理系統,生物體也是非常類似地對觀察到的數據進行逐步的抽象,形成認識,從而獲得對周邊世界的感知。
對於醫學的發展,有一個類似的過程:醫學是我們認識自身的過程,通過基礎的觀察,獲得某些病症和癥狀的數據;這些數據通過類似於人腦的匯總,包括一些醫療體系、醫療知識和疾病知識的匯總,最終統一出醫療診斷的結果。
對於醫學來說,醫學領域中最大的成本是醫療知識和醫生。醫生的培養要消耗大量的時間和精力成本,醫療知識的傳遞和積累是需要大量的時間成本。自從人類誕生以來,如何去治療疾病就成為我們知識積累最核心的問題之一,醫學領域中的醫生更是成為了最稀缺的資源。而醫生對於疾病知識的傳遞和積累以及對於癥狀的分析和理解是受限於我們的腦力的,人的腦力和人的思維效率總是有限,因此,目前好的醫生非常難得。
我們利用最新的計算機技術將新的AI應用到醫學,最核心的目的就是加速擴充人的腦力,讓AI能夠幫助醫生去解決一些以前大量消耗腦力的問題。而這些問題中最基本的一個問題是基礎診斷問題,當然,AI不能做到百分之百可靠的工作,人也一樣,人也無法做到百分之百可靠工作,但是當AI的識別鑒定能力和準確度達到人的水平甚至超過人的水平之後,就可以極大地解放我們的腦力,讓我們去關注真正用於創造性思維的那一部分。
醫學AI的發展經歷了從最基礎的單一學科和單一形態向多模式數據以及交叉學科的發展過程。隨著醫療影像和醫療數據採集手段的增加,數據變數的增加以及難度在增大,醫療診斷的價值也在逐漸地增大。因此,如何從複雜的多模式數據中獲得有效的診斷數據,是擺在醫學院面前一個最關鍵的問題。選擇醫療圖像是因為圖像手段是最直接也是獲取量最大的信息來源。
醫療AI的基本目的不是去複製人類醫生的技能,而是增加我們認識疾病的能力。我們認為醫學AI在AI和在醫學中,是一個工具型、輔助增強型的工作,而不是去徹底替代醫生的工作,尤其是在最近的一段時間,人工智慧的發展雖然日新月異,但是離著我們認為的真正強人工智慧還有很遠的距離,現階段基本都是弱人工智慧,這些人工智慧可能在單一的任務中表現能力會強過人類。我們也是通過這些單一任務工作讓AI來解放人類醫生。
提到醫學AI,就不得不提如何來去實現AI。簡單回顧一下人工智慧的歷史,是非常久遠的,中國古代周朝的時候有個故事,那時候是有一個人做了一個木偶,可以唱歌,跳舞,甚至給周王的妃子眉目傳情,我們理解這是中國人對最早期AI的一個想像。近代的AI是上個世紀四五十年代圖靈提出的,經過多年的發展,AI的實現方式多種多樣,而現階段最主要的實現方式是深度學習。
之所以選擇深度學習,是因為深度學習非常有效,在很多領域中可以極大地超越人類的表現能力。但有效的原因目前還無法從理論上直接去證明,對於任意三層的神經網路,只要它的寬度和規模足夠大,那麼它一定可以去逼近任意有限空間中的連續函數。
之所以深層的神經網路會表現得更好,是因為它的抽象能力和層次性更強,可以獲得對於特徵的自動提取。但是這些從理論上來講淺層次的神經網路是沒有理論突破的。反過來,這些問題我們可以拋在腦後,只需要知道深度學習在工程上非常有效就行。
這一代深度學習和人工智慧的爆發有三個最主要的因素:大數據、新的深度學習演算法以及超強算力。在2012年ImageNet比賽中,通過GPU訓練出來的AlexNet以極大的優勢來奪得當年的冠軍,代表深度學習能通過使用很強的計算能力系統最終獲得勝利,因此計算能力是進行深度學習的非常核心的因素。
深度學習雖然不是AI的全部,但是離開了大數據、超強的計算能力,就無法進行有效的深度學習。
深度學習可以涵蓋非常多的層面,最基礎的感知層如基礎數據獲取,到理解層如對一些已知的疾病病灶去判斷疾病類型和範圍等等,這些都可以做出較好的深度學習效果,現階段比較困難的問題是深度學習的決策,由於決策系統需要跟環境和對抗去相關的一些內容,因此從最基礎的感知到理解判斷識別再到最終的決策,這些都可以用深度學習完成。
深度學習的基本要素有大數據、演算法和算力,僅有數據和算力是不夠的,演算法是行業中特別重要的技術研發的關鍵,同樣的行業認知能力、經驗以及醫學知識在深度學習中同樣具有非常重要的位置。
這一代的深度學習最主要的優勢是對於數據特徵的自動學習,這依賴於大量的標籤數據,雖然目前也有一些新的學習方法,比如非監督和半監督學習方法能夠極大地減少對於標籤數據的依賴,但是依然需要足夠多和足夠好的行業標籤數據才能夠讓我們獲得對於行業數據特徵提取的效果。
因此希氏異構搭建了一台專門用於醫學人工智慧的超算平台,它的主要工作是通過搜集大量的高質量醫療數據,獲得對於特定問題的特徵理解和識別。
由於現階段我們依賴於大量的數據,因此必須要有足夠多的吞吐能力來處理我們的數據。舉個實例,我們大概處理了一百萬張原始的醫療影像數據,通過對這些醫療影像數據的分析,形成了一個非常有效的模型。如果用常規的訓練系統,對於這一百萬張的數據進行相關的有效的目標識別和提取,所需要的時間是非常長的,但是如果我們利用最新的GPU大規模並行平台,並且開發相關的底層解決方案,就可以壓縮到非常短的時間。
這個系統的本質是在做醫療領域中影像數據的分類,是通過利用了大量的GPU系統來獲得加速。底層的數據交換是利用了RDMA機制,可以獲得接近線性的加速比。
我們把這個平台叫做神農一號。它由64塊NVIDIA Tesla V100組成,分布於8個獨立的機箱,每個機箱有8塊Tesla V100,將這些系統放在若干個機櫃中,通過高速的InfiniBand進行互聯,從而組成一個非常強大的處理系統。
單顆Tesla V100的峰值深度學習操作能力非常高,最高可以超過100TFLPOS每秒。64顆V100組成的超算訓練平台訓練ImageNet模型只需要52分鐘,而使用單顆GPU訓練平台需要兩天左右的時間,這只是一個例子。在我們的系統中,我們的模型會比ImageNet複雜很多,通過這樣的模式可以極大地節省時間。同時通過我們自己研發的底層超算並行訓練軟體可以在超過1024個GPU系統上保持90%的線性加速效率。
上圖是機箱打開的具體情況,每一台機器有10個PCIE插槽,其中我們把八塊Tesla V100插入到PCIE 30x16卡槽上,而InfiniBand交換卡是插在另外的PCIE插槽上去。
這是超算平台的系統架構。上面一層由Mesos來開發的資源管理層,下面我們做了改進版的Caffe /TensorFlow求解器,這個求解器最大優勢是可以進行分散式的SDD求解,並且保證效率和結果。之後通過NVIDIA Docker進行統一管理多個節點上的不同鏡像以及通過RDMA進行底層的數據通信。
使用了資源管理調度系統,就意味著我們需要在多個結點上進行計算任務的有效調度。我們有一個主節點,這個主節點會運行基礎調度的調度器接收用戶發過來的任務。整體來說,在這個平台上可以進行多個任務的同時計算,通過Mesos底層進行資源的分配,在每一個節點上會有一個執行器,這個執行器負責將相關分割出來的子任務進行分析執行。
這是在Tesla V100 GPU上進行標準ImageNet分類的性能比對。主要是指每秒鐘Training端可以進行多少張圖片的吞吐速度。可以看到,對於ResNet來說,不同的Batch_size的吞吐效率也是不一樣的。一般意義上理解,Batch_size越大,吞吐效果越好。
我們為這個超算平台專門了開發了WebUI,通過網路可以將進行所有的基本訓練任務的提交,以及所有任務狀態的監控,同時實時地監控所有硬體的資源佔用情況。
這裡會實時地顯示所有的計算資源,包括Memory、CPU佔用率、GPU佔用率以及任務調度情況和網路情況。
這是一個基準的測試結果,通過標準的Resnet和GoogleNet訓練過程,可以看到在不同的GPU數量上,加速性能也很不錯,比如在最後32顆GPU上,獲得了27.6倍左右的加速比,整個效率也是不錯的。
最終通過這樣一台功能強大著名的超強的GPU伺服器訓練出針對於多種疾病的學習模型,比如消化道疾病等這些學習模型,目前對於消化道疾病的檢測準確度已經超過了95%,並且模型可以實時在每秒鐘6人的情況下同時執行。這對於在前端進行消化胃鏡檢測操作的醫生和病人都是一個極大的優勢。
很多人都問,作為一個創業公司,為什麼要選擇買那麼貴的GPU和伺服器來做這個事情呢。我們的超算訓練平台定義成為賦能醫療最基礎的工具,工欲善其事,必先利其器,工具對我們來說非常重要,我們可以在很短的時間內吞吐大量的醫療影像和醫療數據,獲得非常有競爭力的表現。
同樣地,通過訓練好的模型,把有經驗的醫生對疾病診斷的一些經驗和知識固化到模型中,同時可以推廣這個模型到很多不同的醫院中,尤其是水平不足的醫院,這樣可以有效地去改變資源分配不均的現狀,從而推動整個醫療產業的變革。
醫療產業是一個非常有價值的AI落地場景,我們期望通過AI技術能夠為萬物互聯的智聯網平台服務,解決很多大數據解析的工作,並真正地用人工智慧去為行業以及生活帶來更好的前景。我今晚的分享到這裡就結束了,謝謝大家。
提問環節
問題一
王昌淼-中科院-工程師
1,3D深度學習在醫學影像中的應用技巧和難點?
2,多GPU如何做交互來處理大的3D塊?
周斌:1、深度學習本身不太關注是幾維的數據,只是模型需要幾維的輸入而已。而三維深度學習可能輸入的基礎數據是三維的,對於醫療影像數據來說,三維深度學習是比較直接的過程,通常意義上,我們可以在二維上去完成,之後再進行三維的重建,從而獲得對於三維數據的分析結果。從本質上來說,這兩者差別不大。如果我們關注三維深度學習本身的相關性,比如做腦腫瘤或者某一個三維病灶的重建,同時又想用深度學習在三維空間中進行分析和識別,這時有一個重要的應用技巧,就是需要用三維卷積的方式來實現,三維卷積就相當於每個切片作為其中的一個通道,把它改變成一個三維的卷積即可。
2、關於多GPU進行交互,可以通過RDMA的方式來進行交互,如果底層系統支持得比較好,比如InfiniBand和RDMA可以有效地結合。一般來說,我們會把大的3D塊切分成若干個小的體數據,這些體數據交界的地方,我們稱之為邊界。邊界上要有一些重合以防止越界。一般情況,我們會進行體數據內部小塊的獨立傳輸,邊界進行交互,需要注意的技巧是進行數據傳輸計算的並發掩藏。
問題二
劉超-首聯科技-演算法負責人
1.GPU加速對深度學習效果顯著,醫學情況下獲取圖像解析度高,很可能是類似於切片的3D圖像 是否有適應這種運算和網路的庫或者模型來支持 ?
2.在未來,有沒可能對疾病的病理癌症細胞的癌變的檢測,進而建立起一套適應大多數人的系統,在針對個人的情況對這個主系統微調,來適配每一個病人,走個性化醫療方案。
周斌:1、很多斷層處理技術最終是需要進行切片的三維重建,在重建過程會形成一些3D圖像。可以用三維卷積運算在3D圖像進行識別、分割和檢測等操作。類似於二維,只不過增加了一維向量即可。對更底層來說,這種運算本身完全可以利用cuDNN這樣的基礎庫來做。至於網路模型,這就需要自己去適應性地修改了。
2、這個問題相對比較開放,也是比較專業的醫療問題,我認為這是完全可能的。疾病本身是人體對於外界環境變化的響應,不同的人由於基因的表達形式不同,對於同樣的影響因素可能表達出來的現象也不一樣,治療的方式也可能不一樣,比如同樣是感冒,分別有熱感和冷感,有的人流鼻涕,而有的人是咳嗽等等。個性化醫療會是一個非常好的方式,也是我們希望能夠實現的方式。
問題三
陳星強-心知科技-機器學習演算法工程師
1,醫療人工智慧平台如何處理大量DICOM數據的歸檔和調用問題?
2,醫療人工智慧平台如何實時監測數據處理過程中可能的突發問題,大規模的運算如何進行作業的有效管理?
周斌:1、這是一個非常專業的問題。目前在醫療影像數據中標準的格式就是DICOM。DICOM是保存了病人的信息以及檢測設備的信息和最終端的醫療影像。一般情況下,DICOM是一個非常規則化的數據格式,因此處理歸檔和調用是非常簡單的,有大量的解析模式可以自動解析。而對於歸檔,DICOM本身帶有檔案文件信息,因此我們可以直接以文件的模式保存即可。
2、醫療人工智慧平台在實時監測數據的處理過程中會有一些突發性的問題,這也是我們為什麼在整個平台設計中會設計監控的主節點的原因,這個主節點主要負責資源的調度,比如某一個節點出現了問題,我們可以進行及時的任務遷移以及一些檢查點的保存等模式。對於作業的有效管理,已經被研究得非常深入,目前有非常多的開源軟體可以實現,從基礎的調度上來講,有很多不同的調度演算法,而目前用的Mesos資源調度系統的是一個比較快捷和高效的調度系統。如果僅從硬體或者任務軟體執行的角度上來講,人工智慧平台監測數據處理過程還是比較直接的,只需要監測特定任務的執行工作情況即可。但是其他的突發問題,比如有一些搶佔性任務或者時效的問題,暫時不在我們平台設計的規格之內,尤其是實時監測數據,實時監測數據我們是通過前端來部署Inference系統來解決,而不是完全僅僅依靠後台雲端作業來解決。
問題四
宮政-中國信息通信研究院-ICT工程師
目前醫療影像的解析度一般在什麼程度,對人工智慧演算法的影響如何?如果使用4k的影像設備對智能識別的幫助會有多大?
周斌:對於醫療影像的解析度,由於不同採集方式的解析度差別是比較大的,比如我們現在常見的醫療影像,包括X光、CT、MRI、超聲等等,常規的比如超聲的解析度一般是比較低的,而一些新的手段,尤其是以MRI和CT為主的斷層掃描方式,它的解析度是比較高的。4k的影像數據對智能識別會有幫助,尤其是對於一些細小目標的識別會有很大的幫助。實際上,主要並不是在於它是多少k的點數據,而在於它的基礎解析度,基礎解析度代表對不同掃描對象的每一個像素單元所代表的幾何物理尺寸,幾何物理尺寸越精細,對智能識別的效果幫助就越大,可以獲得更多的細節信息,同時也可以有效地幫助我們去理解一些複雜的問題。
問題五
何銳-環宇智行-FPGA架構師
相對FPGA硬體加速的優勢,GPU的運算能力不足時可以怎樣擴展?
周斌:這是一個非常好的問題。FPGA作為一款可以進行硬體邏輯編程的軟體,它的性能有一定的優勢,而GPU最大的優勢是在於提供足夠好性能的同時,具有非常良好的編程和應用開發環境,相對應的庫和整個的生態都很充分,開發便捷、使用方便、調試也很方便。但是對FPGA來說,開發硬體的架構就會比較困難。當GPU計算能力不足時,第一個方式是採用多片GPU進行擴展,其中會涉及到並行化的問題。第二個方式是換最新最好的GPU,但這需要考慮到成本問題。另外,好的FPGA,它的成本也是非常高的,同時FPGA中的硬體加速單元相對來說是比較有限的,在開發過程中,資源上要非常謹慎。
新課預告
7月20日晚8點,超級公開課NVIDIA&百度聯合專場開講,百度AI技術生態部高級演算法工程師趙鵬昊主講,主題為《如何藉助GPU集群搭建AI訓練和推理平台》,將深度講解百度EasyDL定製化圖像識別,如何幫助零深度學習演算法基礎的用戶進行圖像分類和物體檢測。
往期課件獲取
第一講,NVIDIA大中華區高性能計算及Applied Deep Learning部門技術總監主講賴俊傑,主題為《如何搭建適合自己的深度學習平台》
第二講,NVIDIA高級系統架構師吳磊主講,主題為《如何為深度學習和HPC提供更高算力》
第三講,NVIDIA DLI認證講師侯宇濤主講,主題為《不需要寫代碼,如何用開源軟體DIGITS實現圖像分類》(線上實踐課程,無課件)
第四講,圖瑪深維首席科學家陳韻強、NVIDIA高級系統架構師付慶平共同主講,主題為《深度學習如何改變醫療影像分析》
第五講,NVIDIA DLI認證講師侯宇濤主講,主題為《手把手教你使用開源軟體DIGITS實現目標檢測》(線上實踐課程,無課件)
第六講,西安交大人工智慧與機器人研究所博士陶小語、NVIDIA高級系統架構師易成共同主講,主題為《智能監控場景下的大規模並行化視頻分析方法》
第七講,清華大學計算機系副教授都志輝、NVIDIA高級系統架構師易成共同主講,主題為《GPU加速的空間天氣預報》
第八講,希氏異構人工智慧首席科學家周斌主講,主題為《如何利用最強GPU搭建醫療人工智慧計算平台——醫學圖像AI領域最強超級計算機首次解密》
第九講,NVIDIA中國GPU應用市場總監侯宇濤主講,主題為《揭秘深度學習》
第十講,NVIDIA高級系統架構師張景貴主講,主題為《在你的桌面端通過NVIDIA雲端GPU開展深度學習》


※智東西早報:賽靈思收購AI晶元創企深鑒科技 蘋果無人車竊密工程師或無罪
TAG:智東西 |