首個ML的生物醫藥大型數據集,3行代碼就能運行丨哈佛MIT等出品

2021-01-14 量子位

蕭簫 編輯整理量子位 報導 | 公眾號 QbitAI

AlphaFold2出世、強力抗生素Halicin的預測……

機器學習,已經在生物醫藥這一大領域貢獻了不少成果。

然而,這一領域,此前甚至還沒有大規模的機器學習數據集?

無論是查找、處理數據,還是驗證模型效果,之前的研究,都只能在幾個小型數據集、或是已經被反覆研究的幾個任務上進行。

這極大地降低了ML在生物醫藥領域的應用進展。

為此,一群來自哈佛、MIT、斯坦福等機構的研究人員,開發出了第一個ML領域的生物醫藥大型數據集TDC,還附帶最新的模型評估方法。

這是個什麼樣的數據集?

TDC(Therapeutics Data Commons)數據集有三大特點:開源、大型、3行代碼搞定。

這一開源數據集,包含20+有意義的任務,和70多個高質量數據集。

涉及的範圍也非常廣,包含生物醫藥的各種研究方向,如靶蛋白發現、藥物動力學、安全性和藥物生產等。研究目標也不局限於小分子,還包括抗體、疫苗、miRNA等。

使用起來也非常簡便,只需要3行代碼,就能獲得ML-ready數據、使用TDC裡面的各種功能。

TDC解決問題的3層架構

生物醫藥領域涵蓋各種任務,每個任務都需要不同的數據結構來進行處理。

為此,TDC提出了一個三層式階級架構Central Dogma(中心法則)。

第一層,模型要解決哪類問題?

單實例預測(Single-instance prediction): 預測單個實體(比如分子,蛋白)的某些性質。多實例預測(Multi-instance prediction): 預測多個實體之間的某些性質(比如反應類型)生成(Generation): 已知一系列的實體,生成新的擁有某些性質的實體(比如優化後的分子)第二層,模型要學習什麼樣的任務?從生物醫藥角度來定義,任務包括設計新的抗體、識別個性化的組合療法、改善疾病診斷、尋找治療新疾病的方法。第三層,模型用什麼數據集來訓練?根據任務類型,從TDC已有的數據集中挑選數據,用於訓練模型。根據這三層架構,就能非常輕鬆地找到需要用的數據集。例如,想要檢索Z類問題中的學習任務Y,Y中需要用到數據集X,只需要三行代碼就能找到需要的結果。

TDC的數據集長啥樣TDC所包含的數據集和任務,大多是沒有用機器學習進行過系統研究、但又極具潛力的應用方向。

例如,ADMET性質預測。其中,ADMET包含一系列藥物指標,用於評估某種藥物分子在口服後,能否安全有效地到達指定靶點。

此前,已有部分研究機構進行過ADMET預測,但都基於非公開數據。TDC從各種小資料庫、期刊等公開資料中,收集整理了20多個藥廠目前在用的重要指標,並將所有數據進行了開源。準確預測這些指標,可以幫助藥企節省大量資源。又例如,對藥物進行精準組合。同種藥物,在不同個體間會產生不同影響,尤其是腫瘤方向的藥物。如果用機器學習,就能預測藥物在各種基因表達下的效果,目前TDC也已經包含了這樣的數據集。

此外,多藥物分子組合,往往比單藥物分子效果更好(drug synergy),如果能預測出兩個藥物分子的組合效應,能節省大量新藥研發的時間,TDC也已經處理了這樣的數據集。還有生物藥(Biologics)方向的任務。近幾年來,機器學習在小分子上已有許多應用,但在大分子生物藥上的應用不多。TDC也包含了6個生物藥方面的任務,包括抗體和抗原的親和力預測、多肽和MHC的親和力預測、miRNA和靶點的反應預測等。TDC的數據處理函數除了核心數據集以外,TDC還能進行簡單的數據處理,主要包括以下四點:模型評估:TDC提供了一個評估函數。只需3行代碼,就能評估TDC中的任務。數據分割:TDC提供了一些訓練和測試集的分割方法,用於模擬實際生物醫藥場景,如scaffold split等。數據處理:TDC提供可視化、標籤轉化,二值化等工具。分子生成任務:目的是讓產生的新藥物分子具有更好的性質。TDC收集了20多個有意義的任務,同樣只需要3行代碼,就能運行。

還可以刷新榜單排名此外,TDC還提供各種類型的榜單(Leaderboard),給機器學習研究者對比模型預測的效果。

雖然TDC提供的每個數據集都能作為基準,但如果要真正評估一個機器學習模型,就要求其必須在一系列數據集和任務上達到更好的效果。因此,TDC圍繞各種有意義的生物醫療問題,合併了各種子基準、形成基準組合。所有的衡量標準和訓練、測試、分割的方式的設計目的,都是為了模擬實際生物醫藥的應用場景。團隊簡介TDC的開發和維護團隊,由多個高校和機構的研究人員共同組成。主要的5位開發者,分別是來自哈佛的黃柯鑫、喬治亞理工學院的符天凡、MIT的高文昊、CMU的趙越、斯坦福的Yusuf Roohani。此外,還有他們的5位導師,也在這次數據集開發中做出了不少貢獻。

目前,TDC數據集還在不斷地更新和完善中,作者黃柯鑫表示,還會不斷地更新如CRISPR、臨床試驗等方向的其他數據。

相關焦點

  • 哈佛出品,10行代碼訓練「藥神」模型
    這款名為DeepPurpose的工具包,不僅包含COVID-19的生物測定數據集,還有56種前沿的AI模型。作為一個基於PyTorch的工具包,DeepPurpose只需要不到10行代碼,就能訓練出AI「藥神」模型。
  • 哈佛出品,10行代碼訓練「藥神」模型
    蕭簫 編輯整理量子位 報導 | 公眾號 QbitAI最近,來自哈佛大學等機構的研究人員,開發出了一個AI「藥神」工具包,為加速新冠疫情下的新藥研發助力。這款名為DeepPurpose的工具包,不僅包含COVID-19的生物測定數據集,還有56種前沿的AI模型。
  • 1行代碼實現Python數據分析:圖表美觀清晰,自帶對比功能丨開源
    現在,GitHub上一位博主告訴你:不用學,用sweetviz就行。這是一個基於Python編寫的數據分析軟體,只要掌握3種函數用法,一行Python代碼就能實現數據集可視化、分析與比較。我們以Titanic數據集為例,輸入一行代碼:一個1080p的清晰網頁界面就出現在了眼前。
  • 「兩會」僑聲音(3)丨潮流發電、人臉識別、生物醫藥…… 他們關注...
    「兩會」僑聲音(3)丨潮流發電、人臉識別、生物醫藥…… 他們關注高科技 2020-01-13 22:35 來源:澎湃新聞·澎湃號·政務
  • 【重磅消息】MIT和哈佛共建CRISPR-Cas9全球專利技術共享平臺丨醫...
    Broad此次做出回應並提交了22項專利,其中包括 13項美國專利和10項歐洲專利,涉及10個專利家族。Broad表示,這一提交也代表了哈佛大學、麻省理工學院和洛克菲勒大學的聯合專利所有者的意見。
  • 如何在Keras中訓練大型數據集
    在本文中,我們將討論如何使用Keras在不適合內存的大數據集上訓練我們的深度學習網絡。介紹深度學習算法優於所有其他算法,能夠在大多數問題上產生最先進的結果。深度學習算法成功的主要原因是數據集的大小越來越大。現在,深度學習算法在大型數據集上進行訓練,這些數據集甚至不適合內存。問題是:如何在如此龐大的數據集上訓練我們的模型?
  • 十行代碼就能搞定深度學習?飛槳框架高層API,輕鬆玩轉AI
    、數據加載、模型組網、模型訓練、模型評估、模型保存等場景,高層 API 均可以通過 1~3 行代碼實現。相比傳統方法動輒幾十行的代碼量,高層 API 只需要十來行代碼,就能輕鬆完成一個 MNIST 分類器的實現。以極少的代碼就能達到與基礎 API 同樣的效果,大幅降低了深度學習的學習門檻。如果是初次學習深度學習框架,使用飛槳高層 API,可以「凡爾賽」說出「好煩哦,飛槳高層 API 怎麼這麼快就完成開發了,我還想多寫幾行代碼呢!」
  • Facebook 被 MIT 教授起訴
    他們的核心技術之一,是包含在編譯器中的一套算法,這些算法具有很大潛力,它允許複雜的數學函數在 CPU 上就能高效運行,不需要使用 GPU 這樣的專門硬體;還允許研究科學家使用比通常大得多的數據集,可以用在醫療保健、癌症篩查、電子商務等方面,讓人工智慧應用降低花費和硬體成本,更加普及。亞歷山大·茲拉特斯基早先是 MIT 的博士後,作為第一個正式員工加入了神經魔法。
  • 生物醫藥龍頭股有哪些 2018生物醫藥龍頭股一覽
    目前創新型生物醫藥類企業資源受市場追捧,直接帶動了PE/VC機構對於這類企業的投資熱情。對於下一階段的投資重點,醫療投資基金紛紛將目標投向創新型醫療健康企業。而隨著標的估值的提高,相關基金也在謀求差異化的競爭模式。那麼,生物醫藥龍頭股有哪些呢?我們一起來看看吧。生物醫藥概念股有哪些?
  • 提高數據處理效率,一行代碼開啟Pandas四倍速!
    但Pandas也有缺點:處理大數據集的速度非常慢。在默認設置下,Pandas只使用單個CPU內核,在單進程模式下運行函數。這不會影響小型數據,因為程式設計師可能都不會注意到速度的變化。但對於計算量繁雜的大數據集來說,僅使用單內核會導致運行速度非常緩慢。有些數據集可能有百萬條甚至上億條數據,如果每次都只進行一次運算,只用一個CPU,速度會很慢。
  • 谷歌推出新框架:只需5行代碼,就能提高模型準確度和魯棒性
    曉查 發自 凹非寺量子位 出品 | 公眾號 QbitAI今天,谷歌推出了新開源框架——神經結構學習(NSL),它使用神經圖學習方法,來訓練帶有圖(Graph)和結構化數據的神經網絡,可以帶來更強大的模型。現在,通過TensorFlow就能獲取和使用。NSL有什麼用?
  • Julia數據統計教程,代碼圖解全都有,昆士蘭大學出品,免費閱讀
    在Quora上「Julia做數據統計有多好」的問題下,威斯康星大學麥迪遜分校的Yibo Liu同學評價說,用Julia做線性編程,不僅運行快,還能在Jupyter裡實時修改查看運行結果。那麼如何用Julia來做數據統計呢?這本免費開放閱讀的《Julia數據統計》不可錯過。
  • 一行代碼安裝,TPU也能運行PyTorch,修改少量代碼即可快速移植
    現在福利來了,一個叫做Pytorch Lightning的項目,可以讓你幾乎修改代碼的情況下用上TPU。Pytorch Lightning已經上傳到PyPI,因此只需一行代碼就能安裝這個軟體。準備數據集階段分為下載圖片、轉換、分割數據集、打包四個步驟。二者代碼大致相同,只是將PyTorch代碼組織為4個函數:prepare_data:此函數負責處理下載數據,確保使用多個GPU時,不會下載多個數據集或對數據進行雙重操作。
  • 30行代碼,就能讓20噸的發電機原地爆炸?
    30行代碼,就能讓20噸的發電機原地爆炸? AI新媒體量子位 發表於 2020-11-23 11:22:16 只需要30行代碼(約140KB的文件),就能讓20噸的發電機原地爆炸? 這一幕確實發生在了美國愛達荷州的測試場地上。
  • 10行Python代碼也能實現,親測好用!
    大數據文摘出品編譯:朱一輝、雪清、小魚短短10行代碼就可以實現目標檢測?!本文作者和他的團隊構建了一個名為ImageAI 的Python庫,集成了現今流行的深度學習框架和計算機視覺庫。本文將手把手教你構建自己的第一個目標檢測應用,而且文摘菌已經幫你踩過坑了,親測有效!
  • Keras 之父講解 Keras:幾行代碼就能在分布式環境訓練模型 |...
    我們有一組 10 秒短視頻組成的數據集,視頻內容是人從事各種活動。一個深度學習模型將會觀察這些視頻的每一幀畫面,進行理解,然後你可以用簡短的自然語言問它視頻內容。 InceptionV3 CNN 會內置預訓練的權重,這一點很重要,因為以目前的視頻輸入,靠我們自己是無法學習到有趣的視覺特徵的。我們需要利用現有的、在大型數據集上學習到的視覺特徵。這個例子裡是 ImageNet。在深度學習裡,這是一個常見的舉措,而 Keras 使它變得更方便。問題的編碼更加簡單。
  • CMU大佬分享三類優質數據集:綜合、CV和NLP
    UCI Machine Learning Repository 地址:https://archive.ics.uci.edu/ml/index.php 這是一個很經典的ML數據集網站,在ML的paper當中經常會遇到基於這些數據集做的實驗。
  • 資源| MIT自然語言處理數據集和語料庫集合
    論文:https://arxiv.org/abs/1611.09830 數據:https://github.com/Maluuba/newsqa SQuAD:超過 100,000 個問題和其機器理解文本的數據集,由史丹福大學推出,2016。
  • MIT初創公司發布全球首個光子AI晶片原型!丨獨家專訪
    但是在那個時候,他們在實驗室開發的整個光子計算系統佔據了半個實驗室。(來源:Lightelligence)在視頻演示中,團隊在這個原型產品上成功用光子晶片運行了Google Tensorflow 自帶的卷積神經網絡模型來處理 MNIST 數據集。
  • 谷歌大腦提出AutoML-Zero,只會數學運算就能找到AI算法|開源
    AutoML Zero能發現什麼AutoML是一種實現從數據集到機器學習模型的自動化方法,讓你無需高深專業知識,就能自動部署ML模型。雖說是自動,但現階段的AutoML還要對搜索空間進行很大的限制,這使我們在使用AutoML的時候仍然需要一些專業知識去設計神經網絡的層。