医疗机器学习
隨著大數據的深入應用,機器學習已經進入醫療領域。卡耐基梅隆大學(Carnegie Mellon University,CMU)計算機科學學院教授邢波(Eric Xing)正在主持CMU的一個機器學習和醫療中心,并受聘于一家專注于醫療大數據應用與推廣的中國企業——醫渡云(北京)技術有限公司(以下簡稱“醫渡云”),成為其首席技術顧問,協助其醫療大數據體系的技術脈絡梳理。近日,邢波與醫渡云CEO孫喆共同接受了CSDN記者的專訪,分享了對機器學習發展及其在醫療大數據領域的應用趨勢的觀點,并解讀了他與醫渡云公司合作的初衷和前景。
CMU機器學習和醫療中心由UPMC(匹茲堡大學醫學中心)和CMU共同投資建設,正在致力于基于自然語言處理,圖像和視頻分析,計算基因組學以及泛組學等使用多維異質數據源的精準個性化醫療和智慧醫院研發,以及包括移動和可穿戴設備,醫療數據隱私安全等應用于醫療行業的大數據技術。邢波認為,要用好大數據,人工智能和機器學習將是最主要的分析手段。預計在未來計算世界,人工智能計算和機器學習會占到全球計算資源上計算任務比重的80%到90%,所以有必要對人工智能和機器學習所需要計算框架和操作性框架重新做針對性的設計——CMU團隊開發Petuum,正是基于這樣的認識,希望能為人工智能和機器學習運算提供更有效的方式。
同時,邢波表示,算法也需要數據、工程的支持,這不是憑一種贏得接近理想化標準數據集測驗比賽的心態就能實現的。就醫療領域而言,他希望醫療機構愿意把數據共享給計算機專家創造一些新的功能,而計算機學家和機器學習學家也要有謙卑的心態,愿意接觸實際的問題——真正勝出的系統是勝在最后的整個工程,算法很重要,但不是唯一的東西。與醫渡云的合作,就是為了實現機器學習研究與應用的共贏,因為醫渡云希望與用最先進的機器學習和人工智能技術來幫助醫院提升新型臨床、科研及管理能力,這一點與UPMC/CMU的理念吻合。
談到前沿技術,盡管當前深度學習在數據科學界最為火爆,邢波團隊也將深度學習應用于醫療影像數據的理解和挖掘,但他認為未來深度學習仍只是眾多機器學習方法論中的一種。在他看來,深度學習面臨的一個主要的問題,是大部分人并不很清楚它在數學模型上的顯性形式,也就是說從業者其實并不是很清楚所設計的算法是不是真正決定性的,以一種可復制,可延展,可解釋,可理論證明的方式導致了問題的解決。他還表示,一些深度學習用例采用堆砌資源獲取比傳統模型更好的精度的“暴力”方式,并不符合成本效益,也不能產生很好的結果;機器學習平臺的構建,應當實現底層系統設計和上層應用的性質有較為細致的對接,需要并行化、容錯和減少通訊對機器學習問題精度的損耗,同時又不是簡單地增加重復性,或者擴大集群的規模。
此外,針對當前層出不窮的機器學習開源技術,邢波認為,開源的效果具有兩面性,開發者不應僅通過技術的發布者來的音量,話語權,或未經嚴格同行評議的單方宣示來判斷開源技術的好壞,而是要看技術是否能滿足自己的應用需求,這就需要開發者具備針對同類的技術和產品獨立鑒賞的能力,能夠進行跟蹤、理解原理和進行測試,而不是迷信領袖人物或者是大公司的意見,或者是接受一些媒體的誤導。
機器學習與醫療大數據
CSDN:目前CMU機器學習和醫療中心主要做哪些事情?
邢波:研發中心的功能還是做底層技術的研發,基本上先把整個醫療數據智能化的使用做了大致功能和方向的定義,包括:
然后在里面部署不同的研發團隊,針對不同的任務做早期的研發,并不是說本身是服務的提供者。長期的目標,通過研發產生可商業化的產品,由產品開發人成立公司,UPMC是主要的投資/測試/使用者。
CSDN:其中Petuum技術具體在哪些方向上有應用?
邢波: Petuum首先是下一代并行機器學運算的平臺和操作系統,它上面的垂直產品包含了機器學習庫,包含大概十幾種不同的模型和算法,我們主推的幾個大的功能模塊,其中一個是深度學習在視頻和時間序列上的應用,不僅僅是成熟的CNN圖象識別,還包括對時間序列數據的處理,如視頻的處理還沒有很好地解決,Petuum的深度學習模塊會在這方面有一些特殊的辦法。整個模塊是非常通用的,很難說是針對一個特殊的東西來做。
第二個,是自然語言處理,它還是處在預服務階段,目前并沒有在集中精力簽署客戶來定義具體的功能。我們對自然語言處理做了一個比較通用的設計,比如需要做一個很大的主題模型對文本做含義、Topic的讀取,需要對自然文本做word2vector或者document2vector,我們把這些東西都自動化,而且做一個高效的、大規模的計算平臺,最終實現自動文本聚類,異常信息探測,新聞編輯,閱讀服務等功能。
第三個,是大規模的推薦系統或者預測系統,諸如混合推薦,或者行為預測,或者其他的內容,需要高維稀疏分類器或者高維多點分類器。
基本上這三大模塊是我們目前比較專注的,還有其他的一些計劃正在實施。
CSDN:您在去年BDTC的演講中特別提到了Petuum和Hadoop的關系?
邢波: Petuum和Hadoop不應該是非此即彼的關系,而是相互補充、共生的關系。這里有兩層技術上的含義:
Hadoop或者Spark的源頭是基于傳統計算的大規模同步并行服務,最適合部署大規模數據庫,經典數據特征統計,和檢索系統,這不是Petuum的服務重點,這方面Hadoop或者Spark對企業而言是非常重要而優秀的平臺。Petuum則針對正在興起的在人工智能和機器學習計算大量需要的數學優化,概率模型,和高位隱特征系統的求解。這類計算的特點是需要對數據進行極多次,而非單次訪問,使用迭代收斂而非解析原理,計算過程和質量可通過目標方程監控。他們對于嚴格同步和微步糾錯的要求較低,但對于數據,參數的存儲,分割,訪問,通訊,變換,更新方式有較多,復雜要求。
從實際應用上,不需要做出卸載這個才能裝那個的選擇,可以在一個平臺上共存,可以相互使用對方的資源。并行計算或者大規模計算還有很多需要解決的問題,還沒到要做一家獨大的時候。
CSDN:像Spark已經關注和Yarn、Mesos等資源管理新項目的集成。
邢波: Petuum也同樣與Yarn和Mesos都有結合,盡可能使用它們的功能。它們所不能提供的功能,我們會做進一步的開發。我們采取的思路,是尊重整個生態環境,盡可能和其他模塊有很好的耦合。
CSDN:回到醫療大數據,Petuum很重視分析,那么未來數據分析中是不是機器學習會成為一種很普遍的技術?
邢波:對,這是我們做Petuum和成立這個公司最主要的基礎。進入到現在這個年代,大規模的集群、存儲、索引等技術比較完善,數據量越來越大,收集的范圍越來越廣,數據存儲已經不是最主要的問題,而是要把存下來的大數據用好,我認為人工智能和機器學習是最主要的分析手段,在未來計算機的世界里,人工智能計算和機器學習計算是主要的計算形式,我的預期是占到80%-90%,所以我覺得有必要對它所需要計算框架和操作性框架重新做針對性的設計,Petuum是因為這樣的緣故被開發出來,以后我希望Petuum有這樣比較獨特的視角,為機器學習和人工智能運算提供更有效的方式。
冷靜看待深度學習與開源技術
CSDN:您相信機器學習算法在未來大數據里占到80%-90%,但現在最火的是深度學習,您認為深度學習未來在機器學習里會占到多大的比例?
邢波:這個數字很難估計。我覺得跟需求以及機器學習學科的整個研究方向演化有很大的關系。深度學習現在可能占到40%、50%,以后它只是機器學習很多方法論中的一種,它可能對某一種問題,比如在語音和圖像里,特征抽取有很大的困難,需要高維轉換應用,深度學習有比較強的優勢。但有很多機器學習并不屬于這個范圍。即使是在語音和圖像的應用里,也不是只用深度學習,圖象最后一步分類還要用SVM或其他的分類器,深度學習在語音里也要跟HMM模型結合,它只是代表了一種比較核心的特征或者原始數據的處理方式,并不見得涵蓋了所有的機器學習的手段。另外還有很多機器學習的問題完全不用深度學習。我認為要說機器學習,不能再細分說哪個算法獨大,因為這是很動態的。
CSDN:業界有觀點認為深度學習可能會take over傳統的機器學習模型?
邢波:我覺得這種觀點是很不科學不專業的,是危險的,我更傾向于不要采取排他性的措詞。從純學術或者純技術的角度,沒有任何一個科學家或者工程師在現在預測某一種技術會在以后獨霸一個領域,這在任何一個領域里都沒有發生過,如果一個領域就變成一種技術,這個領域就死亡了。機器學習在我看來是數據科學里的數學,是一個基本的方法論,這個方法論里哪一種算法突然變成一個主流,這本身的正面意義都比負面意義要小很多。
CSDN:您怎么看待深度學習現在理論和實踐上的缺陷?
邢波:我自己其實很早就做過深度學習的一些基礎工作,也親身目睹經歷了這個技術的發展。深度學習只不過是一個古老技術的重新包裝,當然它在特定技術環節上有很大的突破,整個的訓練規模和模型的規模都變的很大。但理論的基礎有很多值得探討,遺憾的是很多使用者并沒有花工夫在這方面做應有的投入。
具體的問題,可以舉一兩個小例子,這些問題對于理解深度學習為什么work是很重要的。
大部分人并不清楚深度學習在數學模型上到底是什么樣的顯性形式,做深度學習只是當做模型形式的設計,通過深度的多層的網絡來設計特征之間的關系,或者迭代算法之間操作的流程,但并不是嚴格當做一個優化問題,并沒有把數學形式寫出來,雖然大家知道這是一個優化問題。這就造成了算法的盲目性和不可控性。這在工程上可能暫時不是一個致命的問題,但它有一個顯然的缺陷--在設計算法的時候,當目標和方程不是顯性的,算法是不是解決這個問題還是未知數。
現在對深度學習結果嚴格的評估并不成熟。現在深度學習評估基本的方法,有一定的設計與結果間的因果關系,但是并不是唯一對應的關系。比如圖像分類,整個算法里剛開始做了很多其他的東西,最后做一個圖像的東西,到底是因為前面某一步模型設計好了,還是算法做好了,還是數據應用對了,導致后面很遠的一步圖像分類做得更好,這并不能產生直接的因果關系。
算法的豐富程度也非常有限,基本上還是做Back Propagation,或者最近的一些(比如dropout),很有限的幾樣技術,并不是對它的數學行為、錯誤界定和收斂速度做過比較認真的分析。
CSDN:Google TensorFlow開源,有人做了Benchmark,它的表現不是很好,顯存占用很高,有評論說它是通過堆硬件的方式來取勝的。根據您的經驗,機器學習和深度學習系統要節省硬件開銷,應當從哪些方面著手做工作?
邢波:這實際上是Petuum積極倡導的思路,我們不想用硬件暴力或者資源堆砌的方式來解決大規模機器學習問題,這個固然可能做好,但首先有成本的問題,另外它不能總是產生很好的結果。我們希望把底層系統設計和上面解決任務的性質有一個比較細致的對接,能夠了解到并行化、容錯或者通訊里能夠減少對機器學習問題精度的損耗,同時又不是通過簡單地增加重復性,或者擴大集群的規模做,空間上還是很大的。
機器學習問題,包括容錯性、結構性和非均勻收斂性,對系統提供了很獨特的機遇,我們當然希望在解決這種大規模集群問題,這些問題能夠很好地被研究。TensorFlow或者最近發布的一些其他軟件包還不是在這個層面上做,他們的精力還是提供深度學習算法垂直功能本身開源的一些資源,鼓勵用戶區嘗試使用。這對他們公司內部也是很好的反饋渠道,能夠檢測他們研發的工作,也能增加他們的體驗度。我還沒有看到一個很系統的、全局性的系統和功能的對接,這不是他們的功能重點,用這個方向評價他們并不是很好。
CSDN:Google TensorFlow和微軟DMTK最近相繼開源,您認為這說明了什么?
邢波:開源是一個很好的工作方法,使得軟件或產品能夠有機會服務更大的人群,同時吸引自由開發者加入這個團隊。另一方面,小公司、自由開發者,或者學校的資源、話語權和大公司是不一樣的;能見度和推廣手段上的不對稱性,會在開源功能宣示中產生一定的引導性的作用,對公平發布不是有利的。在媒體音量分布不是很均勻的情況下,下層的使用者、開發者的獨立判斷能力很重要。國內的情況尤其復雜,很多技術媒體對于技術的判斷能力并不成熟,他們會傾向于比較大的公司,會無意中增加大公司話語權,從而對公眾的客觀判斷會產生一個比較負面的作用。
CSDN:開發者選擇不同開源技術,您認為有什么標準?
邢波:最主要的當然是要擺正需求,國內更重要的是要提升鑒賞力,先知道什么東西好,什么東西不好,形成一個獨立的判斷。這個鑒賞力不是產生于發布的人是誰,嗓門有多大,而是有能力自己看這個產品,或者測試它,對其他類似的資源和競爭對手有足夠的了解,要花一點時間,不光是跟蹤,而且要理解一些原理,能夠懂得怎么鑒賞一個公司。這是比較長期的一個任務,因為國內在機器學習或者人工智能的教育和輿論環境上還是有很多地方需要完善和進步的,現在傳播的理念并不是很理性。比如在國內用Google或者微軟的發布內容本身,而不是第三方客觀評估,來證明他們發布的東西好,導致循環邏輯,這是讓我吃驚的。這一點在國外至少我還沒有看到,Facebook上有很多人的評論這些發布,基本上首先持歡迎的態度,但是對于市場的表現都是很冷靜的,會通過測評來看哪一部分做得好。
與醫渡云合作
CSDN:您如何看待國內外醫療大數據應用的異同?哪些原因促使您選擇與醫渡云合作?
邢波:醫療大數據的機遇和活動剛剛開始,都是很早的階段。可能美國的需求開始的更早一些,美國醫療大數據的形態更多樣化,各種各樣的醫療數據的公司已經存在,提供了數據庫的形式和模塊,電子醫療數據是非常普遍的存在形式,數據的量非常大,安全、隱私監管的規則也比較全面。但美國還沒有形成全國比較統一的優化形式,不同的醫療數據庫之間并不是很兼容,對于往下游做醫療數據的應用會遇到非同質和形式的問題。
中國這方面剛剛開始,尚未形成醫療數據的板塊,下游的應用能夠在技術上執行度變的稍微容易一點。這一塊機遇和難點并存,機遇是因為有可能會形成全國統一的,標準化的數據形式,難點就是這種數據的傳輸、擁有和使用的規則不是很明朗。
醫療大數據應用,技術上的環節是市場面臨主要的挑戰,這一點美國和中國有不小的區別,美國在高科技和信息科學上是引領者,他有不少成熟的技術,主要的技術引擎是依靠了人工智能和機器學習的手段。比如我們在CMU成立了機器學習和醫療中心,是UPMC給CMU提供了很大的啟動經費成立一個學院,給予計算機學家機遇來定義工作的范圍和任務,也給予計算機科學家很大的話語權設計任務和目標,這在學術和工程方面的研發力度和深度是相當強勁的,也有很多工作成果發表,形式非常好。
中國的醫療大數據,怎么進行數據分析或者下一步的智能產品化,市場還是空白,至少目前對于怎么定義這些產品、需要什么樣的技術,我還沒有聽到成熟的見解。醫渡云是第一個跟我產生深度接觸探討這些問題的公司,并且脫離概念炒作階段,這對我們有很好的合作機遇。我們希望通過合作,一方面幫助醫渡云這樣的公司把產品做好。另一方面,希望給國內醫療大數據產業構建一個比較好的市場和科研環境,把任務、目標和技術上的脈絡梳理清楚。這是我個人的期望。
CSDN:在您的脈絡梳理之下,醫渡云采用了哪些新的技術?
邢波:我們正在針對電子醫療數據,包括醫生診斷筆記,常規生理病理檢測報告,專科數據,圖像數據等使用Petuum平臺開發自然語言處理、深度學習和其他人工智能功能的軟件。對于醫渡云,圍繞他們所面對的業務需求進行開發,用我們機器學習的軟件對接,提供解決方案,在具體數據的形式和問題的定義上,我們正在取得良好進展。
CSDN:除了底層基礎平臺的梳理,前面提到的智能醫生之類應用層技術有哪些規劃?
邢波:我們現在的整個合作層面還是很寬的,以應用為主,我們會有對某一種功能比如特定疾病診斷做針對性的研發,這個實際上是我們課題主要切入點,這樣可以定義的更嚴格,也更可評估,自動帶動底下平臺的開發,而不是先入為主地先用Petuum做平臺,然后做什么再說,這是本末倒置的。
醫渡云公司內部不僅從應用上,從技術和學術上也提出了很好的問題。一般我們講機器學習,對任務定義相對比較簡單,比如有診斷,診斷翻譯成機器學習語言就是分類;所謂特征識別,在機器學習里也有很簡單的對應關系。醫渡云又提出了相當新的思路,比如怎么來幫助醫生構架優良的診斷流程,怎么做很多治療方案,對疑難病癥產生解決方案。這在機器學習里是不存在嚴格的定義的,到底是什么樣的目標還需進一步研究。所以雙方合作并不僅僅是簡單的低端的應用開發,實際上也包含了很多開放問題的探索,這些探索也會產生比較實際的功能,而不是抽象的問題,這樣的合作不僅對我們兩邊的業務有很好的提升,對于CMU團隊的研究和技術的走向也有很正面的影響,為我的工程師和學生的研究提供了更多的機會。
孫喆:我們在影像和治療方案改進等方面,都跟邢波教授有比較深度的合作。
CSDN:需要CMU團隊有專門的算法工程師參與到醫渡云的調優工作嗎?
邢波:現在具體合作方式還在溝通中,我們都是抱著比較開放的心態,怎么對雙方有利怎么做。醫渡云對數據的安全采取了相當保守和謹慎的做法,盡可能的設計一個場景,使數據的流通能夠最小,使算法流通,能夠盡可能的靈活部署,不是要數據找算法、找軟件,而是軟件找數據,努力地把這方面做好。醫療數據非常敏感,必須得留在醫院,這在國內是很現實的問題。醫渡云與醫院是戰略合作關系,為醫院提供大數據服務。技術上要開放,但過程中,醫渡云團隊有一套立體化的數據安全解決方案,并已經搭建一個很好的技術環境,在底層把安全數據和服務的分離做好。
孫喆:醫渡云的技術團隊大部分來自互聯網企業,都是從百度、高德這樣的大公司出來的。他們已經有一套很成熟的在工程上應用的技術路徑和技術方案,我們最核心的技術方案都是來自本土,而不是直接引用國外的技術空降過來,中國的平臺一定是生長于中國,屬性是丟不掉的。我們也非常認同這一批互聯網公司出來的團隊,他們自身的技術能力,本身工程能力就非常強,是一個很好的積淀。邢波教授的定位更多幫我們梳理我們的技術路徑,我們也需要從全世界吸收,目前計劃將各個子領域中最優秀的技術引進到這個平臺上來。
CSDN:如何預估模型迭代頻率?目前的數據量能保持模型快速的更新嗎?
邢波:機器學習對數據的胃口總是無限的,越多越好,但是并不是只要到了無限才有用,這是一個動態平衡,目前我們計劃在建的過程中先使用少量的樣本數據,使它找對方向,產生一個有價值的初級結果,然后再把初等的原始算法放到真實大數據平臺上,在安全框架之內運行,做進一步的融合,大概兩步的解決方式。最簡單的當然是一步到位,但是這里有很多實際操作上的考量。
對于機器學習或者軟件工程師,這是一個機遇。很多機器學習人的心態是,我發明了一個很好的算法,你要給我數據來驗證這個算法,這不是共贏的心態,而是非常單方地把別人當成一個數據提供者。別人價值幾百萬或者上億的數據,憑什么給你來驗證價值還不明朗、甚至還一文不值的算法?你得先有意愿服務別人的需要,去展示你的理論和模擬結果,而不是什么都還沒有干就把數據要過來。
這種共贏的精神在合作里是相當重要的。目前很多研發人員仍懷抱一種通過贏得接近理想化標準數據集測驗比賽(比如ImageNet比賽)去展示成就,贏得承認的心態,這固然對機器學習有推動,但是它也給人一種奧運會比賽的錯覺,離實際解決問題還很遠,而且使人上癮,自我陶醉。因為在實際生活中像遞包或者戰場上送信需要的,并不是奧運會的跑步冠軍,而是包含諸多復雜局面的應對。機器學習也是要能夠按照需要的功能跑,而且達到要求。從醫院的角度,我們期望他們有一個開放的心態,有意愿把他們整個兒的數據共享給我們創造一些新的功能。從我們計算機學家和機器學習學家的方向,我也要把這個心態要謙卑,要有意愿接觸實際的問題,而不只是接觸Benchmark,那樣永遠贏不了,真正能勝出的系統是在最后的工程,算法很重要,但不是唯一的東西。
采訪嘉賓簡介
邢波,卡耐基梅隆大學計算機科學學院正教授,匹茲堡大學醫學院兼職教授,卡耐基梅隆大學機器學習和醫療中心主任。美國新澤西州立大學分子生物學與生物化學博士;美國加州大學伯克利分校(UC,Berkeley)計算機科學博士。主要研究興趣集中在機器學習、統計方法論的發展,及大規模計算系統和架構上,以解決在復雜系統中的高維、多峰和動態的潛在世界中的自動化學習、推理以及決策問題。
邢波目前正在進行的研究工作包括:
總結
- 上一篇: 云计算的力量
- 下一篇: 微软自拍:让黑科技拯救不会拍照的你