醫(yī)療AI公司繞不開的選擇難題:開源框架與專用芯片

2020/05/13
82
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

有些問題的答案已經(jīng)沒有懸念。

就像程序員討論“什么才是世界上最好的語言?”這一終極命題一樣。在醫(yī)療 AI 領域,圍繞芯片和 AI 開源框架的討論也一直熱度不減。《后浪》視頻一夜刷屏。

其實在 AI 時代,芯片和開源框架也有諸多不斷趕超“前浪”的攪局者和顛覆者。為了搶占市場、營造生態(tài),科技巨頭也都推出了自己的開源深度學習框架,如 Google 的 TensorFlow、Amazon 的 MXNet、Facebook 的 Pytorch 和 Microsoft 的 CNTK 等。而在國內,也有百度飛獎、曠視 MegEngine 等框架進入越來越多開發(fā)者的視野。

但這個行業(yè)無時不刻都在洗牌中。有開發(fā)者向雷鋒網(wǎng) AI 掘金志表示,大名鼎鼎的 Caffe 因其靈活性等相對較差,導致用戶逐年流失。雖然 Caffe2 在一定程度上進行了改善,但是已經(jīng)錯過了重要的框架發(fā)展窗口期。新勢力也逐漸崛起。今年 4 月底,英偉達也與倫敦國王學院共同宣布了 Project MONAI 的開源 alpha 版本。MONAI 是 AI Medical Open Network 的縮寫。

這個框架針對醫(yī)療保健研究人員的需求進行了優(yōu)化,并且可以與 PyTorch 和 Ignite 等深度學習框架一起運行。這個框架推出之時,國內就有學者評價到,“為醫(yī)學影像研究者量身打造,是真正的良心之作。”當然,除了開源框架,AI 芯片也一直都是行業(yè)巨頭酣戰(zhàn)的領域,英特爾、英偉達以及眾多 AI 專用芯片公司的醫(yī)療 AI 相關產(chǎn)品層出不窮。

作為開源框架和芯片的“首席體驗官”,算法工程師們如何看待芯片、開源框架等領域的諸多選擇,我們采訪了四家主流醫(yī)療 AI 公司的技術人員。

AI 掘金志:你們會選擇哪種深度學習開源框架?Pytorch 還是 Caffe、TensorFlow?各家的優(yōu)缺點都有哪些?

柏視醫(yī)療董事長陸遙:快速驗證模型效果使用 Pytorch,工業(yè)化部署使用 TensorFlow。

TensorFlow:TensorFlow 提供全面的服務,無論是 Python,C++,JAVA,Go,甚至是 JavaScript,Julia,C#;TensorFlow 良好的文檔和社區(qū)支持,大大降低了學習成本;提供直觀的可視化計算圖;模型能夠快速的部署在各種硬件機器上,從高性能的計算機到移動設備,再到更小的更輕量的智能終端。但構建 TensorFlow 深度學習框架需要更復雜的代碼,還要重復地多次構建靜態(tài)圖。不過到2.0 以后,tensorflow 將 keras 融合進來,很多操作都簡化了。

Pytorch:Pytorch 的風格和 python 很像,使用的是動態(tài)圖,搭建模型比較快,方便調試,能夠很快驗證方法的有效性,新手上手快,而且?guī)熳銐蚝唵危?NumPy、SciPy 等可以無縫連接;設計簡單,動態(tài)地設計網(wǎng)絡,而無需定義靜態(tài)網(wǎng)絡圖,非常靈活。但 pytorch 在生產(chǎn)環(huán)境部署還不成熟。

Caffe:Caffe 是一個優(yōu)先考慮表達、速度和模塊化來設計的框架。支持 C、C++、Python 等接口以及命令行接口。但是,Caffe 不支持精細粒度網(wǎng)絡層,給定體系結構,對循環(huán)網(wǎng)絡和語言建模的總體支持相當差,必須用低級語言建立復雜的層類型,使用門檻很高。雖然開源比 Pytorch 和 Tensorflow 要早一點,早期的很多機器視覺的算法是基于 Caffe 框架,但是 Caffe 社區(qū)比較前兩個框架要小很多,更新迭代的也比較慢。

連心醫(yī)療算法經(jīng)理 Fisher:我們目前用的主要是 Tensorflow 以及依據(jù) Tensorflow 的 Keras 框架,選擇 Tensorflow 的主要原因是市場占有率大、社區(qū)支持好,而且最主要的是工業(yè)部署非常成熟。

Pytorch 現(xiàn)在研究人員用的比較多,最主要的優(yōu)點是其動態(tài)圖的實現(xiàn)方案,對于測試等非常友好。但是,在工業(yè)部署上,和 Tensorflow 還是有一定差距。目前,這兩個框架選擇的人比較多。

Caffe 用的人已經(jīng)在逐漸減少,主要還是其靈活性等相對較差,雖然 Caffe2 在一定程度上進行了改善,但是已經(jīng)錯過了重要的框架發(fā)展窗口期。

聯(lián)影智能研發(fā)科學家:相比其他兩個,Pytorch 在算法實現(xiàn)靈活度更強,比較貼近機器學習研發(fā)工程師。同時學術界對 Pytorch 的支持也較為強大,整個圈子比較活躍。因為我們部署這塊都是采用內部開發(fā)的部署框架,所以我們更為看中訓練研發(fā)階段框架的靈活性和高效性。

匯醫(yī)慧影算法總監(jiān)劉鵬飛:Pytorch 上手難度低,調試方便,代碼寫起來比較 pythonic,但目前對部署的支持相對較弱,TensorFlow 對部署支持比較好,但相對上手難度高,調試困難。

Caffe 是第一代深度學習框架,雖然仍然用于成熟模型部署,但基于 Caffe 的模型研發(fā)成本比較高,比如,很多情況下用戶需要自己實現(xiàn)反向傳播代碼,不適用于快速模型開發(fā)和迭代。

AI 掘金志:如何評價國內的開源框架,如百度飛槳、曠視 MegEngine 等?

柏視醫(yī)療董事長陸遙:國內的開源框架,比如百度的飛槳和最近推出的清華大學 Jittor、曠視的 MegEngine 和華為的 MindSpore,這都是很好的嘗試,但是國內開源框架都面臨和 Caffe 一樣的問題,使用者較少,資源比 Pytorch、Tensorflow 少很多,和 Pytorch 和 Tensorflow 框架的兼容性不好,在這些框架上做開發(fā)的難度相對比較大。

因此,國內這些框架的社區(qū)還是比較小。百度在飛槳的推廣上做了很多的工作,可能也發(fā)現(xiàn)在通用框架上,和這些國外成熟框架競爭所面臨的困境。

近期推出的影像 AI 專用框架,是一個不錯的想法,因為 Pytorch 和 Tensorflow 這類框架是針對通用性設計的,在細分領域并不算非常好。如果影像 AI 這一塊,飛槳能做的足夠出色,吸引更多的研發(fā)者進來,做好生態(tài),也能形成自己的社區(qū),希望國內開源框架的生態(tài)越做越好。

連心醫(yī)療算法經(jīng)理 Fisher:我們一直和飛槳有合作,在春節(jié)期間還一起推出了新冠肺炎的檢測模型。最近除了百度,華為以及曠視等也都推出了自己的框架,百度應該是國內開發(fā)最早、發(fā)展最成熟的框架。國內框架的優(yōu)點是中文的支持友好,和企業(yè)直接合作較多以及硬件的直接融合開發(fā)等,但是致命的缺點在于其學術界的缺位。

放眼最新的論文,其開源的代碼基本都是 Tensorflow 以及 PyTorch 的實現(xiàn)。當然如果是比較火熱的論文,框架一般也都會及時把相應的代碼跟上,但是如果不是大熱的論文,都需要自己再復現(xiàn)一下論文。在目前工程師基本都要掌握 Tensorflow 和 Pytorch 兩種框架的情景下,讓他們再去掌握第三種框架是缺乏動力的。

聯(lián)影智能研發(fā)科學家:基本沒有太多接觸,主要還是基于飛槳的應用以及開源代碼,資料這方面比較少,暫時沒有 Pytorch 和 Tensorflow 生態(tài)圈龐大。所以無論上手,學習,成本都會相應增高。

AI 掘金志:如何評價英偉達剛剛開源的醫(yī)療 AI 專用框架 MONAI?是否會取代 Pytorch 在醫(yī)療界的位置?

柏視醫(yī)療董事長陸遙:MONAI 使用 PyTorch 深度學習框架,旨在提供一種開源、標準化程度高、用戶友好、可復現(xiàn)性好、易于集成、高質量的、針對醫(yī)療領域特定優(yōu)化的深度學習框架。

從長期來看,這是趨勢,但需要吸引更加多的開發(fā)者加入,壯大社區(qū)的力量。它和飛槳影像 AI 是一個思路,走的是細分領域,依托于英偉達自身的硬件基礎,在醫(yī)療 AI 影像上,可以做出更出色的性能。在醫(yī)療 AI 領域,和 Pytorch 兼容,減少 Pytorch 用戶遷移到 MONAI 的難度,提高用戶對 MONAI 的使用率,可以實現(xiàn)和 Pytorch 共同發(fā)展。

MONAI 在計算效率、并行化訓練和部署,以及醫(yī)療特定任務的支持上應該會有更好的效果,而 Pytorch 是一個更基礎通用的框架。二者各有所長,未來應該是相互促進的關系。連心醫(yī)療算法經(jīng)理 Fisher:簡單的總結就是,不會。

首先,我們要搞清楚 MONAI 是什么,它在 Github 上的解釋是:MONAI is a PyTorch-based, open-source framework for deep learning in healthcare imaging。也就是說,首先它和 Pytorch 并不是排他的關系,MONAI 就是基于 Pytorch 構建的,包括官方的一些例子,都是會引入 Torch,也就沒有了什么取代。

在我看來,MONAI 更像是一個基于 Pytorch 的醫(yī)療圖像數(shù)據(jù)處理庫,針對醫(yī)療圖像增添了許多圖像處理的方法,彌補了 Pytorch 對于醫(yī)療圖像的支持不足。

AI 掘金志:你們購買哪個廠商的服務器?為什么?

柏視醫(yī)療董事長陸遙:服務器的選購主要是考慮成本以及售后服務,在滿足基本配置要求的前提下,選用價格成本較低,售后服務較為完善的服務器供應商。NVIDIA 提供一站式解決方案,且計算性能優(yōu)秀,是很好的選擇。連心醫(yī)療算法經(jīng)理 Fisher:目前,我們服務器供應商有多家,其中 DELL 的機器較多,主要的原因還是 DELL 在端機上成熟的解決方案、穩(wěn)定的品質。

聯(lián)影智能研發(fā)科學家:目前購買過 AMAX、NVIDIA DGX 系列,前者用于部署、后者用于訓練,各有好處。NVIDIA DGX 在整體解決方案上更為成熟,技術支持也會好些。

匯醫(yī)慧影算法總監(jiān)劉鵬飛:服務器基本就是 NVIDIA GPU + Intel CPU。用戶基數(shù)大,社區(qū)比較成熟,遇到問題可以很容易找到解決方案。

AI 掘金志:主要用哪家廠商的 AI 芯片?

柏視醫(yī)療董事長陸遙:英偉達。連心醫(yī)療算法經(jīng)理 Fisher:據(jù)我所知,在端側基本只能用英偉達的芯片,因為各家的框架都是構建于 CUDA 之上,而只有英偉達的卡才可以使用 CUDA。聯(lián)影智能研發(fā)科學家:現(xiàn)在市面主流還是 NVIDIA,無論是 CUDA 還是深度學習,NVIDIA 的顯卡對各個框架的支持都很好,而且可以兼容三維渲染、并行編程,這方面較其他芯片來說優(yōu)勢目前還是很大的。

匯醫(yī)慧影算法總監(jiān)劉鵬飛:這兩家的 AI 芯片我們都在用,目前實時性要求比較高應用主要還是基于 NVIDIA 芯片,計算量相對少的應用一般基于英特爾的芯片。

AI 掘金志:英偉達的硬件和軟件包,有哪些優(yōu)勢?尤其是 CUDA

柏視醫(yī)療董事長陸遙:英偉達系列顯卡最早能夠支持諸如 Tensorflow 、Pytorch 一類的深度學習框架的部署,技術起步早,國內外相關的研究者比較多,技術生態(tài)比較成熟。

英偉達還有專門針對深度學習優(yōu)化的工具 tensorRT,能夠更好地結合深度學習框架與顯卡硬件資源之間的優(yōu)勢,充分發(fā)揮顯卡的計算性能。CUDA 很好地封裝了一些對顯卡硬件資源調度和使用的 API 接口,能夠讓研發(fā)人員方便高效地對顯卡的計算資源進行利用,上手難度較低。

連心醫(yī)療算法經(jīng)理 Fisher:正如上邊所說,雖然有一些解決方案也可以不用 CUDA 而使用 OpenCL,但是基本工業(yè)界只有 CUDA 這一個選項,這主要是其統(tǒng)一的開發(fā)套件、非常豐富的庫以及 NVCC 所具備的 PTX 代碼生成以及離線編譯等更成熟的編譯器特性。另外,眾多的開源框架也都是建立在 CUDA 之上。

聯(lián)影智能研發(fā)科學家:CUDA 有很長的一段發(fā)展歷史,沉淀比較多,資料也比較多,優(yōu)勢很大。特別是現(xiàn)在除了 CUDA C,還有 Thrust 這種 C++庫,選擇余地大。另外,CUDNN 也可以和 CUDA 一起兼容,所以除了深度學習,還可以做其他 GPGPU 并行編程,整體就非常方便。

匯醫(yī)慧影算法總監(jiān)劉鵬飛:對于性能要求比較高的場景,英偉達硬件軟件包是比較有優(yōu)勢的。CUDA、TensorRT 等工具都是經(jīng)過高度優(yōu)化,執(zhí)行速度上有比較明顯的優(yōu)勢。

AI 掘金志:英特爾 Xeon 系列 AI 芯片在醫(yī)療領域應用頗多,其明顯大于 GPU 的顯存,是否在 CT、MRI 和病理這類比較大的圖像處理上更有優(yōu)勢?

柏視醫(yī)療董事長陸遙:醫(yī)療 AI 專用芯片,具有非常巨大的市場空間,人工智能技術的快速發(fā)展,讓 AI 算法在醫(yī)療領域已經(jīng)得到了行業(yè)認可,但醫(yī)療行業(yè)有其行業(yè)特點:數(shù)據(jù)量大、高維度、多模態(tài),顯存更大的芯片能夠加速 AI 算法落地復雜的醫(yī)療環(huán)境。對醫(yī)療 AI 專用芯片的選擇,內存是考慮因素之一,同時計算力也是一個考量的因素,在這點上英偉達更有優(yōu)勢。

所以選擇上,看個人更看重哪個因素。英特爾的醫(yī)療 AI 專用芯片技術起步比較晚,在技術生態(tài)環(huán)境上暫時比不上英偉達,研發(fā)人員對英特爾系列的 AI 芯片的應用有一定的上手難度。對英特爾芯片的應用,很多技術人員還處于摸索階段。從研發(fā)效率和穩(wěn)定性來考慮。目前,選擇英偉達的芯片是大多數(shù)的選擇。更大顯存對醫(yī)療 AI 領域確實有著一定的優(yōu)勢。隨著技術的發(fā)展,使用英特爾的醫(yī)療 AI 專用芯片做部署環(huán)境也是可以考慮的技術路線之一。

連心醫(yī)療算法經(jīng)理 Fisher:從我個人角度來看,硬件是服務于項目的,而項目中硬件只是制約的一部分因素,更重要的是開發(fā)效率。誠然,顯存是會讓算法有更多的可能性,但是開發(fā)效率會是工程上更關注的部分。如果沒有良好的社區(qū)支持以及市場支持,再好的硬件也只能是和一些特定廠商的定制硬件選項而不是廣泛的工程選擇。就像顯卡上 NVIDIA 和 AMD 的競爭,由于 CUDA 的存在以及已經(jīng)發(fā)展起來的良好社區(qū),如果想要進行科學計算,那么可以說,英偉達是唯一的選項。

匯醫(yī)慧影算法總監(jiān)劉鵬飛:據(jù)我所知,目前英特爾的 AI 芯片主要應用在推理階段。在訓練階段,大家基本還是使用 NVIDIA GPU。另外,對 3D 醫(yī)療圖像來說,Intel OpenVino 目前還有一些常用算子沒有完全支持。

英偉達

英偉達

NVIDIA(中國大陸譯名:英偉達,港臺譯名:輝達),成立于1993年,是一家美國跨國科技公司,總部位于加利福尼亞州圣克拉拉市,由黃仁勛、克里斯·馬拉科夫斯基(Chris Malachowsky)和柯蒂斯·普里姆(Curtis Priem)共同創(chuàng)立。公司早期專注于圖形芯片設計業(yè)務,隨著公司技術與業(yè)務發(fā)展,已成長為一家提供全棧計算的人工智能公司,致力于開發(fā)CPU、DPU、GPU和AI軟件,為建筑工程、金融服務、科學研究、制造業(yè)、汽車等領域的計算解決方案提供支持。

NVIDIA(中國大陸譯名:英偉達,港臺譯名:輝達),成立于1993年,是一家美國跨國科技公司,總部位于加利福尼亞州圣克拉拉市,由黃仁勛、克里斯·馬拉科夫斯基(Chris Malachowsky)和柯蒂斯·普里姆(Curtis Priem)共同創(chuàng)立。公司早期專注于圖形芯片設計業(yè)務,隨著公司技術與業(yè)務發(fā)展,已成長為一家提供全棧計算的人工智能公司,致力于開發(fā)CPU、DPU、GPU和AI軟件,為建筑工程、金融服務、科學研究、制造業(yè)、汽車等領域的計算解決方案提供支持。收起

查看更多

相關推薦