新浪科技訊 北京時(shí)間1月26日消息,據(jù)國(guó)外媒體報(bào)道,從Fortran到arXiv.org,這些計(jì)算機(jī)編碼和平臺(tái)讓生物學(xué)、氣候科學(xué)和物理學(xué)等學(xué)科的發(fā)展達(dá)到了真正“日新月異”的速度。
2019年,事件視界望遠(yuǎn)鏡團(tuán)隊(duì)讓世界首次看到了黑洞的樣子。不過,研究人員公布的這張發(fā)光環(huán)形物體的圖像并不是傳統(tǒng)的圖片,而是經(jīng)過計(jì)算獲得的。利用位于美國(guó)、墨西哥、智利、西班牙和南極地區(qū)的射電望遠(yuǎn)鏡所得到的數(shù)據(jù),研究人員進(jìn)行了數(shù)學(xué)轉(zhuǎn)換,最終合成了這張標(biāo)志性的圖片。研究團(tuán)隊(duì)還發(fā)布了實(shí)現(xiàn)這一壯舉所用的編程代碼,并撰文記錄這一發(fā)現(xiàn),其他研究者也可以在此基礎(chǔ)上進(jìn)一步加以分析。
如果沒有能夠解決研究問題的軟件,以及知道如何編寫并使用軟件的研究人員,一臺(tái)計(jì)算機(jī)無論再?gòu)?qiáng)大,也是毫無用處的
這種模式正變得越來越普遍。從天文學(xué)到動(dòng)物學(xué),在現(xiàn)代每一項(xiàng)重大科學(xué)發(fā)現(xiàn)的背后,都有計(jì)算機(jī)的參與。美國(guó)斯坦福大學(xué)的計(jì)算生物學(xué)家邁克爾·萊維特因“為復(fù)雜化學(xué)系統(tǒng)創(chuàng)造了多尺度模型”與另兩位研究者分享了2013年諾貝爾化學(xué)獎(jiǎng),他指出,今天的筆記本電腦內(nèi)存和時(shí)鐘速度是他在1967年開始獲獎(jiǎng)工作時(shí)實(shí)驗(yàn)室制造的計(jì)算機(jī)的1萬倍?!拔覀兘裉齑_實(shí)擁有相當(dāng)可觀的計(jì)算能力,”他說,“問題在于,我們?nèi)匀恍枰伎??!?/p>
如果沒有能夠解決研究問題的軟件,以及知道如何編寫并使用軟件的研究人員,一臺(tái)計(jì)算機(jī)無論再?gòu)?qiáng)大,也是毫無用處的。如今的科學(xué)研究從根本上已經(jīng)與計(jì)算機(jī)軟件聯(lián)系在一起,后者已經(jīng)滲透到研究工作的各個(gè)方面。近日,《自然》(Nature)雜志將目光投向了幕后,著眼于過去幾十年來改變科學(xué)研究的關(guān)鍵計(jì)算機(jī)代碼,并列出了其中10個(gè)關(guān)鍵的計(jì)算機(jī)項(xiàng)目。
這臺(tái)CDC 3600型計(jì)算機(jī)于1963年交付給位于科羅拉多州博爾德的國(guó)家大氣研究中心,研究者在Fortran編譯器的幫助對(duì)其進(jìn)行了編程
語(yǔ)言先驅(qū):Fortran編譯器(1957年)
最初的現(xiàn)代計(jì)算機(jī)并不容易操作。當(dāng)時(shí)的編程實(shí)際上是手工將電線連接成一排排電路來實(shí)現(xiàn)的。后來出現(xiàn)了機(jī)器語(yǔ)言和匯編語(yǔ)言,允許用戶用代碼為計(jì)算機(jī)編程,但這兩種語(yǔ)言都需要對(duì)計(jì)算機(jī)的架構(gòu)有深入的了解,使得許多科學(xué)家難以掌握。
20世紀(jì)50年代,隨著符號(hào)語(yǔ)言的發(fā)展,特別是由約翰·巴克斯及其團(tuán)隊(duì)在加州圣何塞的IBM開發(fā)的“公式翻譯”語(yǔ)言Fortran,這種情況發(fā)生了變化。利用Fortran,用戶可以用人類可讀的指令來編程,例如x = 3 + 5。然后由編譯器將這些指令轉(zhuǎn)換成快速、高效的機(jī)器代碼。
不過,這一過程仍然很不容易。早期的程序員使用打孔卡來輸入代碼,而復(fù)雜的模擬可能需要數(shù)萬張打孔卡。盡管如此,新澤西州普林斯頓大學(xué)的氣候?qū)W家真鍋淑郎(Syukuro Manabe)還是指出,F(xiàn)ortran讓非計(jì)算機(jī)科學(xué)家也能編程,“這是我們第一次能夠自己給計(jì)算機(jī)編程”。他和同事們利用這種語(yǔ)言開發(fā)的氣候模型是最早取得成功的模型之一。
Fortran發(fā)展至今已經(jīng)到了第八個(gè)十年,它仍然廣泛應(yīng)用于氣候建模、流體動(dòng)力學(xué)、計(jì)算化學(xué)等學(xué)科,這些學(xué)科都涉及到復(fù)雜線性代數(shù)并需要強(qiáng)大的計(jì)算機(jī)來快速處理數(shù)字。Fortran生成的代碼速度很快,而且仍然有很多程序員知道如何編寫。古早的Fortran代碼庫(kù)仍然活躍在世界各地的實(shí)驗(yàn)室和超級(jí)計(jì)算機(jī)上?!耙郧暗某绦騿T知道他們?cè)谧鍪裁矗泵绹?guó)海軍研究院的應(yīng)用數(shù)學(xué)家和氣候模型師弗蘭克·吉拉爾多說,“他們非常注重內(nèi)存,因?yàn)樗麄儞碛械膬?nèi)存非常少?!?/p>
信號(hào)處理器:快速傅立葉變換(1965)
當(dāng)射電天文學(xué)家掃描天空時(shí),他們捕捉到的是隨時(shí)間變化的復(fù)雜信號(hào)雜音。為了理解這些無線電波的本質(zhì),他們需要看到這些信號(hào)作為頻率的函數(shù)時(shí)是什么樣的。一種名為“傅里葉變換”的數(shù)學(xué)過程可以幫到研究人員,但它的效率很低,對(duì)于一個(gè)大小為N的數(shù)據(jù)集需要N^2次計(jì)算。
默奇森寬視場(chǎng)陣列的部分夜景,這是一個(gè)建于澳大利亞西部的射電望遠(yuǎn)鏡陣列,使用快速傅里葉變換來收集數(shù)據(jù)
1965年,美國(guó)數(shù)學(xué)家詹姆斯·庫(kù)利和約翰·杜基想出了一種加速該過程的方法??焖俑道锶~變換(FFT)通過遞歸(一種通過重復(fù)將問題分解為同類的子問題而解決問題的編程方法)將計(jì)算傅里葉變換的問題簡(jiǎn)化為N log2(N)步。隨著N的增加,速度也會(huì)提高。對(duì)于1000個(gè)點(diǎn),速度提升大約是100倍;100萬個(gè)點(diǎn)則是5萬倍。
這個(gè)“發(fā)現(xiàn)”實(shí)際上是一個(gè)再發(fā)現(xiàn),因?yàn)榈聡?guó)數(shù)學(xué)家高斯在1805年就對(duì)此進(jìn)行了研究,但他從未發(fā)表過。而詹姆斯·庫(kù)利和約翰·杜基做到了,他們開啟了傅里葉變換在數(shù)字信號(hào)處理、圖像分析、結(jié)構(gòu)生物學(xué)等領(lǐng)域的應(yīng)用,成為應(yīng)用數(shù)學(xué)和工程領(lǐng)域的重大事件之一。FFT在代碼中的應(yīng)用已有很多次,近年一個(gè)流行的方案是FFTW,被認(rèn)為是世界上最快的FFT。#p#分頁(yè)標(biāo)題#e#
保羅·亞當(dāng)斯是加州勞倫斯伯克利國(guó)家實(shí)驗(yàn)室分子生物物理學(xué)和綜合生物成像部門的主任,他回憶稱,當(dāng)他在1995年改進(jìn)細(xì)菌蛋白質(zhì)凝膠的結(jié)構(gòu)時(shí),即使使用FFT和超級(jí)計(jì)算機(jī),也需要“很多個(gè)小時(shí),甚至數(shù)天”的計(jì)算?!叭绻跊]有FFT的情況下嘗試做這些,我不知道在現(xiàn)實(shí)中應(yīng)該如何做到,”他說,“那可能要花很長(zhǎng)時(shí)間?!?/p>
分子編目:生物數(shù)據(jù)庫(kù)(1965年)
數(shù)據(jù)庫(kù)是當(dāng)今科學(xué)研究中不可或缺的組成部分,以至于人們很容易忘記它們也是由軟件驅(qū)動(dòng)的。過去的幾十年中,數(shù)據(jù)庫(kù)資源的規(guī)模急劇膨脹,影響了許多領(lǐng)域,但或許沒有哪個(gè)領(lǐng)域的變化會(huì)比生物學(xué)領(lǐng)域更引人注目。
蛋白質(zhì)數(shù)據(jù)庫(kù)Protein Data Bank擁有超過17萬個(gè)分子結(jié)構(gòu)的檔案,包括這種細(xì)菌的“表達(dá)子”(expressome),其功能是結(jié)合RNA和蛋白質(zhì)合成的過程
今天,科學(xué)家所用的龐大基因組和蛋白質(zhì)數(shù)據(jù)庫(kù)源于美國(guó)物理化學(xué)家瑪格麗特·戴霍夫的工作,她也是生物信息學(xué)領(lǐng)域的先驅(qū)。20世紀(jì)60年代初,當(dāng)生物學(xué)家們致力于梳理蛋白質(zhì)的氨基酸序列時(shí),戴霍夫開始整理這些信息,以尋找不同物種之間進(jìn)化關(guān)系的線索。她與三位合著者于1965年發(fā)表了《蛋白質(zhì)序列和結(jié)構(gòu)圖譜》,描述了當(dāng)時(shí)已知的65種蛋白質(zhì)的序列、結(jié)構(gòu)和相似性。歷史學(xué)家布魯諾·斯特拉瑟在2010年寫道,這是第一個(gè)“與特定研究問題無關(guān)”的數(shù)據(jù)集,它將數(shù)據(jù)編碼在打孔卡中,這使得擴(kuò)展數(shù)據(jù)庫(kù)和搜索成為可能。
其他“計(jì)算機(jī)化”的生物數(shù)據(jù)庫(kù)緊隨其后。蛋白質(zhì)數(shù)據(jù)庫(kù)Protein Data Bank于1971年投入使用,如今詳細(xì)記錄了超過17萬個(gè)大分子結(jié)構(gòu)。加州大學(xué)圣地亞哥分校的進(jìn)化生物學(xué)家拉塞爾·杜利特爾在1981年創(chuàng)建了另一個(gè)名為Newat的蛋白質(zhì)數(shù)據(jù)庫(kù)。1982年,美國(guó)國(guó)立衛(wèi)生研究院(NIH)與多個(gè)機(jī)構(gòu)合作,成立了GenBank數(shù)據(jù)庫(kù),這是一個(gè)開放獲取的DNA序列數(shù)據(jù)庫(kù)。
這些數(shù)據(jù)庫(kù)資源在1983年7月證明了其存在價(jià)值。當(dāng)時(shí),由倫敦帝國(guó)癌癥研究基金會(huì)蛋白質(zhì)生物化學(xué)家邁克爾·沃特菲爾德領(lǐng)導(dǎo)的團(tuán)隊(duì),與杜利特爾的團(tuán)隊(duì)各自獨(dú)立報(bào)道了一個(gè)特殊的人類生長(zhǎng)因子序列與一種導(dǎo)致猴子出現(xiàn)癌癥的病毒蛋白質(zhì)之間的相似性。觀察結(jié)果顯示了一種病毒誘發(fā)腫瘤機(jī)制——通過模仿一種生長(zhǎng)因子,病毒會(huì)誘導(dǎo)細(xì)胞不受控制地生長(zhǎng)。美國(guó)國(guó)家生物技術(shù)信息中心(NCBI)前主任詹姆斯·奧斯特爾說:“這一結(jié)果讓一些對(duì)計(jì)算機(jī)和統(tǒng)計(jì)學(xué)不感興趣的生物學(xué)家頭腦里靈光一閃:我們可以通過比較序列來了解有關(guān)癌癥的一些情況?!?/p>
奧斯特爾還表示,這一發(fā)現(xiàn)標(biāo)志著“客觀生物學(xué)的到來”。除了設(shè)計(jì)實(shí)驗(yàn)來驗(yàn)證特定的假設(shè),研究人員還可以挖掘公共數(shù)據(jù)集,尋找那些實(shí)際收集數(shù)據(jù)的人可能從未想到的聯(lián)系。當(dāng)不同的數(shù)據(jù)集連接在一起時(shí),這種力量就會(huì)急劇增長(zhǎng)。例如,NCBI的程序員在1991年通過Entrez實(shí)現(xiàn)了這一點(diǎn);Entrez是一個(gè)可以讓研究人員在DNA、蛋白質(zhì)和文獻(xiàn)之間自由檢索和比對(duì)的工具。
預(yù)測(cè)領(lǐng)先者:大氣環(huán)流模式(1969年)
在第二次世界大戰(zhàn)結(jié)束時(shí),計(jì)算機(jī)先驅(qū)約翰·馮·諾伊曼開始將幾年前用于計(jì)算彈道軌跡和武器設(shè)計(jì)的計(jì)算機(jī)轉(zhuǎn)向天氣預(yù)測(cè)問題。真鍋淑郎解釋道,在那之前,“天氣預(yù)報(bào)只是經(jīng)驗(yàn)性的”,即利用經(jīng)驗(yàn)和直覺來預(yù)測(cè)接下來會(huì)發(fā)生什么。相比之下,馮·諾伊曼的團(tuán)隊(duì)“試圖基于物理定律進(jìn)行數(shù)值天氣預(yù)測(cè)”。
新澤西州普林斯頓的美國(guó)國(guó)家海洋和大氣管理局(NOAA)地球物理流體動(dòng)力學(xué)實(shí)驗(yàn)室的建模系統(tǒng)部門負(fù)責(zé)人Venkatramani Balaji表示,幾十年來,人們已經(jīng)熟知這些方程式。但早期的氣象學(xué)家無法實(shí)際解決這些問題。要做到這一點(diǎn),需要輸入當(dāng)前的條件,計(jì)算它們?cè)诙虝r(shí)間內(nèi)會(huì)如何變化,并不斷重復(fù)。這個(gè)過程非常耗時(shí),以至于在天氣狀況實(shí)際出現(xiàn)之前還無法完成數(shù)學(xué)運(yùn)算。1922年,數(shù)學(xué)家劉易斯·弗萊·理查森花了幾個(gè)月時(shí)間計(jì)算德國(guó)慕尼黑的6小時(shí)預(yù)報(bào)。根據(jù)一段歷史記載,他的結(jié)果是“極不準(zhǔn)確的”,包括“在任何已知的陸地條件下都不可能發(fā)生的”預(yù)測(cè)。計(jì)算機(jī)使這個(gè)問題變得很容易解決。
20世紀(jì)40年代末,馮·諾伊曼在普林斯頓高等研究院建立了天氣預(yù)報(bào)團(tuán)隊(duì)。1955年,第二個(gè)團(tuán)隊(duì)——地球物理流體動(dòng)力學(xué)實(shí)驗(yàn)室——開始進(jìn)行他所謂的“無限預(yù)測(cè)”,也就是氣候建模。
真鍋淑郎于1958年加入氣候建模團(tuán)隊(duì),開始研究大氣模型;他的同事柯克·布萊恩將這一模型應(yīng)用在海洋研究中。1969年,他們成功將二者結(jié)合起來,創(chuàng)造了《自然》雜志在2006年所說的科學(xué)計(jì)算“里程碑”。
今天的模型可以將地球表面劃分為一個(gè)個(gè)25公里×25公里的正方形,并將大氣層劃分為數(shù)十層。相比之下,真鍋淑郎和布萊恩的海洋-大氣聯(lián)合模型劃分的面積為500平方公里,將大氣分為9個(gè)層次,只覆蓋了地球的六分之一。盡管如此,Venkatramani Balaji表示,“這個(gè)模型做得很好”,使研究團(tuán)隊(duì)第一次能夠通過計(jì)算機(jī)預(yù)測(cè)二氧化碳含量上升的影響。
數(shù)字運(yùn)算機(jī):BLAS(1979年)
科學(xué)計(jì)算通常涉及到使用向量和矩陣進(jìn)行相對(duì)簡(jiǎn)單的數(shù)學(xué)運(yùn)算,但這樣的向量和矩陣實(shí)在太多了。但在20世紀(jì)70年代,還沒有一套普遍認(rèn)可的計(jì)算工具來執(zhí)行這些運(yùn)算。因此,從事科學(xué)工作的程序員會(huì)將時(shí)間花在設(shè)計(jì)高效的代碼來進(jìn)行基本的數(shù)學(xué)運(yùn)算,而不是專注于科學(xué)問題。#p#分頁(yè)標(biāo)題#e#
加州勞倫斯利弗莫爾國(guó)家實(shí)驗(yàn)室的Cray-1超級(jí)計(jì)算機(jī)。在BLAS編程工具于1979年問世之前,并沒有線性代數(shù)標(biāo)準(zhǔn)可供研究人員在Cray-1超級(jí)計(jì)算機(jī)等機(jī)器上工作
編程世界需要一個(gè)標(biāo)準(zhǔn)。1979年,這樣的標(biāo)準(zhǔn)出現(xiàn)了:基本線性代數(shù)程序集(Basic Linear Algebra Subprograms,簡(jiǎn)稱BLAS)。這是一個(gè)應(yīng)用程序接口(API)標(biāo)準(zhǔn),用以規(guī)范發(fā)布基礎(chǔ)線性代數(shù)操作的數(shù)值庫(kù),如矢量或矩陣乘法。該標(biāo)準(zhǔn)一直發(fā)展到1990年,為向量數(shù)學(xué)和后來矩陣數(shù)學(xué)定義了數(shù)十個(gè)基本例程。
美國(guó)田納西大學(xué)計(jì)算機(jī)科學(xué)家、BLAS開發(fā)團(tuán)隊(duì)成員杰克·唐加拉表示,事實(shí)上,BLAS把矩陣和向量數(shù)學(xué)簡(jiǎn)化成了和加法和減法一樣基本的計(jì)算單元。
美國(guó)德克薩斯大學(xué)奧斯汀分校的計(jì)算機(jī)科學(xué)家Robert van de Geijn指出,BLAS“可能是為科學(xué)計(jì)算定義的最重要的接口”。除了為常用函數(shù)提供標(biāo)準(zhǔn)化的名稱之外,研究人員還可以確?;贐LAS的代碼在任何計(jì)算機(jī)上以相同方式工作。該標(biāo)準(zhǔn)還使計(jì)算機(jī)制造商能夠優(yōu)化BLAS的安裝啟用,以實(shí)現(xiàn)在其硬件上的快速操作。
40多年來,BLAS代表了科學(xué)計(jì)算堆棧的核心,也就是使科學(xué)軟件運(yùn)轉(zhuǎn)的代碼。美國(guó)喬治·華盛頓大學(xué)的機(jī)械和航空航天工程師洛雷娜·巴爾巴稱其為“五層代碼中的機(jī)械”。而杰克·唐加拉說:“它為我們的計(jì)算提供了基礎(chǔ)結(jié)構(gòu)?!?/p>
顯微鏡必備:NIH Image(1987年)
20世紀(jì)80年代初,程序員韋恩·拉斯班德在馬里蘭州貝塞斯達(dá)的美國(guó)國(guó)立衛(wèi)生研究院的腦成像實(shí)驗(yàn)室工作。該實(shí)驗(yàn)室擁有一臺(tái)掃描儀,可以對(duì)X光片進(jìn)行數(shù)字化處理,但無法在電腦上顯示或分析。為此,拉斯班德寫了一個(gè)程序。
這個(gè)程序是專門為一臺(tái)價(jià)值15萬美元的PDP-11小型計(jì)算機(jī)設(shè)計(jì)的,這是一臺(tái)安裝在架子上的計(jì)算機(jī),顯然不適合個(gè)人使用。然后,在1987年,蘋果公司發(fā)布了Macintosh II,這是一個(gè)更友好、更實(shí)惠的選擇。拉斯班德說:“在我看來,這顯然是一種更好的實(shí)驗(yàn)室圖像分析系統(tǒng)?!彼麑④浖D(zhuǎn)移到新的平臺(tái)上,并重新命名,建立了一個(gè)圖像分析生態(tài)系統(tǒng)。
NIH Image及其后續(xù)版本使研究人員能在任何計(jì)算機(jī)上查看和量化幾乎任何圖像。該軟件系列包括ImageJ,一個(gè)拉斯班德為Windows和Linux用戶編寫的基于Java的版本;以及Fiji,這是ImageJ的分發(fā)版,由德國(guó)德累斯頓的馬克斯普朗克分子細(xì)胞生物學(xué)和遺傳學(xué)研究所的Pavel Tomancak團(tuán)隊(duì)開發(fā),其中包括關(guān)鍵的插件?!癐mageJ無疑是我們所擁有的最基礎(chǔ)的工具,”布洛德研究所(由麻省理工學(xué)院和哈佛大學(xué)聯(lián)合創(chuàng)立)成像平臺(tái)的計(jì)算生物學(xué)家貝絲·契米妮說,“我從來沒有和一個(gè)使用過顯微鏡,但沒有使用過ImageJ或Fiji的生物學(xué)家說過話。”
ImageJ工具在插件的幫助下,可以自動(dòng)識(shí)別顯微鏡圖像中的細(xì)胞核
拉斯班德表示,部分原因可能是這些工具是免費(fèi)的。但威斯康星大學(xué)麥迪遜分校的生物醫(yī)學(xué)工程師Kevin Eliceiri指出,另一個(gè)原因是用戶可以很容易地根據(jù)自己的需求定制工具。自拉斯班德退休后,Kevin Eliceiri的團(tuán)隊(duì)一直領(lǐng)導(dǎo)著ImageJ的開發(fā)。ImageJ提供了一個(gè)看似簡(jiǎn)單、極簡(jiǎn)主義的用戶界面,自20世紀(jì)90年代以來基本上沒有改變。然而,由于其內(nèi)置的宏記錄器(允許用戶通過記錄鼠標(biāo)點(diǎn)擊和菜單選擇的序列來保存工作流)、廣泛的文件格式兼容性和靈活的插件架構(gòu),該工具具有無限的可擴(kuò)展性。該團(tuán)隊(duì)的編程主管柯蒂斯·魯?shù)潜硎?,有“?shù)以百計(jì)的人”為ImageJ貢獻(xiàn)了插件。這些新添加的功能極大擴(kuò)展了研究人員的工具集,例如在視頻中跟蹤對(duì)象或自動(dòng)識(shí)別細(xì)胞的功能。
Kevin Eliceiri說:“這個(gè)程序的目的不是做到一切或終結(jié)一切,而是服務(wù)于用戶的目標(biāo)。不像Photoshop和其他程序,ImageJ可以成為你想要的任何東西?!?/p>
序列搜索器:BLAST (1990年)
可能沒有什么能比把軟件名稱變成動(dòng)詞更能說明文化的相關(guān)性了。提到搜索,你會(huì)想到谷歌;而提到遺傳學(xué),研究者會(huì)立刻想到BLAST。
通過諸如替代、刪除、缺失和重排等方式,生物將進(jìn)化中的改變蝕刻在分子序列中。尋找序列之間的相似性——特別是蛋白質(zhì)之間的相似性——可以讓研究人員發(fā)現(xiàn)進(jìn)化關(guān)系,并深入了解基因功能。在迅速膨脹的分子信息數(shù)據(jù)庫(kù)中,想要快速而準(zhǔn)確地做到這一點(diǎn)并不容易。
瑪格麗特·戴霍夫在1978年提供了關(guān)鍵的進(jìn)展。她設(shè)計(jì)了一種“點(diǎn)接受突變”矩陣,使研究人員不僅可以根據(jù)兩種蛋白質(zhì)序列的相似程度,還可以根據(jù)進(jìn)化距離來為評(píng)估它們的親緣關(guān)系。
1985年,弗吉尼亞大學(xué)的威廉·皮爾森和NCBI的大衛(wèi)·利普曼引入了FASTP,這是一種結(jié)合了戴霍夫矩陣和快速搜索能力的算法。
#p#分頁(yè)標(biāo)題#e#數(shù)年后,利普曼與NCBI的沃倫·吉什和斯蒂芬·阿特舒爾,賓夕法尼亞州立大學(xué)的韋伯·米勒,以及亞利桑那大學(xué)的吉恩·邁爾斯一起開發(fā)了一種更強(qiáng)大的改進(jìn)技術(shù):BLAST(Basic Local Alignment Search Tool)。BLAST發(fā)布于1990年,將處理快速增長(zhǎng)的數(shù)據(jù)庫(kù)所需的搜索速度,與提取進(jìn)化上更為遙遠(yuǎn)的匹配結(jié)果的能力結(jié)合起來。與此同時(shí),該工具還可以計(jì)算出這些匹配發(fā)生的概率。
阿特舒爾表示,計(jì)算結(jié)果出來得非??欤澳憧梢暂斎胨阉鲀?nèi)容,喝一口咖啡,搜索就完成了?!钡匾氖?,BLAST很容易使用。在一個(gè)通過郵寄更新數(shù)據(jù)庫(kù)的時(shí)代,沃倫·吉什建立了一個(gè)電子郵件系統(tǒng),后來又建立了一個(gè)基于網(wǎng)絡(luò)的架構(gòu),允許用戶在NCBI計(jì)算機(jī)上遠(yuǎn)程運(yùn)行搜索,從而確保搜索結(jié)果始終是最新的。
哈佛大學(xué)的計(jì)算生物學(xué)家肖恩·艾迪表示,BLAST系統(tǒng)為當(dāng)時(shí)處于萌芽階段的基因組生物學(xué)領(lǐng)域提供了一個(gè)變革性的工具,即一種根據(jù)相關(guān)基因找出未知基因可能功能的方法。對(duì)于各地的測(cè)序?qū)嶒?yàn)室,它還提供了一個(gè)新穎的動(dòng)詞。“它是眾多由名詞變成動(dòng)詞的例子之一,”艾迪說,“你會(huì)說,你正準(zhǔn)備BLAST一下你的序列。”
預(yù)印本平臺(tái):arXiv.org (1991年)
20世紀(jì)80年代末,高能物理學(xué)家經(jīng)常將他們已投稿的論文手稿副本郵寄給同行,征求他們的意見——但只發(fā)給少數(shù)人。物理學(xué)家保羅·金斯帕格在2017年寫道:“處于食物鏈較低位置的人依賴于一線研究者的成果,而非精英機(jī)構(gòu)中有抱負(fù)的研究人員則往往身處特權(quán)圈以外?!?/p>
1991年,當(dāng)時(shí)在新墨西哥州洛斯阿拉莫斯國(guó)家實(shí)驗(yàn)室工作的金斯帕格編寫了一個(gè)電子郵件自動(dòng)應(yīng)答程序,希望建立一個(gè)公平的競(jìng)爭(zhēng)環(huán)境。訂閱者每天都會(huì)收到預(yù)印本列表,每一篇都與文章標(biāo)識(shí)符相關(guān)聯(lián)。只需通過一封電子郵件,世界各地的用戶就可以從實(shí)驗(yàn)室的計(jì)算機(jī)系統(tǒng)中提交或檢索論文,并獲得新論文的列表,或按作者或標(biāo)題進(jìn)行搜索。
arXiv成立已近30年,擁有約180萬份預(yù)印本,全部免費(fèi)提供,而且每月有超過1.5萬份論文提交,下載量達(dá)3000萬次
金斯帕格的計(jì)劃是將論文保留三個(gè)月,并將內(nèi)容限制在高能物理學(xué)界。但一位同事說服他無限期地保留這些文章。他說:“就在那一刻,它從布告欄變成了檔案館。”于是,論文開始從比各個(gè)領(lǐng)域如潮水般涌來。1993年,金斯伯格將這個(gè)系統(tǒng)遷移到互聯(lián)網(wǎng)上,并在1998年將其命名為arXiv.org,沿用至今。
arXiv成立已近30年,擁有約180萬份預(yù)印本,全部免費(fèi)提供,而且每月有超過1.5萬份論文提交,下載量達(dá)3000萬次。十年前,《自然-光子學(xué)》(Nature Photonics)的編輯在評(píng)論arXiv創(chuàng)立20周年時(shí)寫道:“不難看出為什么arXiv的服務(wù)會(huì)如此受歡迎,這個(gè)系統(tǒng)讓研究人員能快速而方便地插上旗幟,顯示他們所做的工作,同時(shí)避免投稿傳統(tǒng)同行評(píng)議期刊時(shí)的麻煩和時(shí)間成本?!?/p>
arXiv網(wǎng)站的成功也促進(jìn)了生物學(xué)、醫(yī)學(xué)、社會(huì)學(xué)和其他學(xué)科同類預(yù)印本網(wǎng)站的繁榮。在如今已出版的數(shù)萬份關(guān)于新冠病毒的預(yù)印本中就可以看到這種影響?!昂芨吲d看到30年前在粒子物理學(xué)界之外被認(rèn)為是異端的方法,現(xiàn)在被普遍認(rèn)為是平淡無奇和自然而然的,”金斯伯格說,“從這個(gè)意義上說,它就像一個(gè)成功的研究項(xiàng)目?!?/p>
數(shù)據(jù)瀏覽器:IPython Notebook (2011年)
2001年,費(fèi)爾南多·佩雷斯還是一位希望“尋找拖延癥”的研究生,當(dāng)時(shí)他決定采用Python的一個(gè)核心組件。
Python是一種解釋型語(yǔ)言,這意味著程序是逐行執(zhí)行的。程序員可以使用一種稱為“讀取-評(píng)估-打印循環(huán)”(read–evaluate–print loop,簡(jiǎn)稱REPL)的計(jì)算調(diào)用和響應(yīng)工具,在其中輸入代碼,然后由解釋器執(zhí)行代碼。REPL允許快速探索和迭代,但佩雷斯指出,Python的REPL并不是為科學(xué)目的而構(gòu)建的。例如,它不允許用戶方便地預(yù)加載代碼模塊,也不允許打開數(shù)據(jù)可視化。因此,佩雷斯自己編寫了另一個(gè)版本。
結(jié)果就是IPython的誕生,這是一個(gè)“交互式”Python解釋器,由佩雷斯在2001年12月推出,共有259行代碼。十年后,佩雷斯與物理學(xué)家布萊恩·格蘭杰和數(shù)學(xué)家埃文·帕特森合作,將該工具遷移到web瀏覽器上,推出了IPython Notebook,開啟了一場(chǎng)數(shù)據(jù)科學(xué)革命。
與其他計(jì)算型Notebook一樣,IPython Notebook將代碼、結(jié)果、圖形和文本合并在一個(gè)文檔中。但與其他類似項(xiàng)目不同的是,IPython Notebook是開源的,邀請(qǐng)了大量開發(fā)者社區(qū)的參與其中。而且它支持Python,一種很受科學(xué)家歡迎的語(yǔ)言。2014年,IPython演變?yōu)镴upyter,支持大約100種語(yǔ)言,允許用戶在遠(yuǎn)程超級(jí)計(jì)算機(jī)上探索數(shù)據(jù),就像在自己的筆記本電腦上一樣輕松。
《自然》雜志在2018年寫道:“對(duì)于數(shù)據(jù)科學(xué)家,Jupyter實(shí)際上已經(jīng)成為一個(gè)標(biāo)準(zhǔn)?!碑?dāng)時(shí),在GitHub代碼共享平臺(tái)上有250萬個(gè)Jupyter Notebook;如今,這一數(shù)字已經(jīng)發(fā)展到1000萬個(gè),在2016年引力波的發(fā)現(xiàn),以及2019年的黑洞成像工作中,它們都發(fā)揮了重要的作用。佩雷斯說:“我們對(duì)這些項(xiàng)目做出了很小的貢獻(xiàn),這是非常值得的?!?p#分頁(yè)標(biāo)題#e#
快速學(xué)習(xí)器:AlexNet(2012年)
人工智能有兩種類型。一種是使用編碼規(guī)則,另一種則通過模擬大腦的神經(jīng)結(jié)構(gòu)來讓計(jì)算機(jī)“學(xué)習(xí)”。加拿大多倫多大學(xué)的計(jì)算機(jī)科學(xué)家杰弗里?辛頓表示,幾十年來,人工智能研究人員一直認(rèn)為后者是“一派胡言”。但在2012年,他的研究生亞力克斯·克里澤夫斯基和伊爾亞·蘇茨克維證明了事實(shí)并非如此。
在一年一度的ImageNet比賽中,研究人員被要求在一個(gè)包含100萬張日常物體圖像的數(shù)據(jù)庫(kù)中訓(xùn)練人工智能,然后在一個(gè)單獨(dú)圖像集上測(cè)試生成的算法。辛頓表示,當(dāng)時(shí)最好的算法錯(cuò)誤分類了大約四分之一的圖像??死餄煞蛩够吞K茨克維的AlexNet是一種基于神經(jīng)網(wǎng)絡(luò)的“深度學(xué)習(xí)”算法,它將錯(cuò)誤率降低到了16%。辛頓說:“我們基本上把錯(cuò)誤率減半了,或者說幾乎減半了?!?/p>
辛頓還指出,該團(tuán)隊(duì)在2012年的成功反映了足夠大的訓(xùn)練數(shù)據(jù)集與出色的編程,以及新出現(xiàn)的圖形處理單元的強(qiáng)大能力的結(jié)合。圖形處理單元是最初設(shè)計(jì)用來加速計(jì)算機(jī)視頻性能的處理器。“突然之間,我們可以將(算法)運(yùn)行速度提高30倍,”他說,“或者說,學(xué)習(xí)多達(dá)30倍的數(shù)據(jù)?!?/p>
真正的算法突破實(shí)際上發(fā)生在三年前,當(dāng)時(shí)辛頓的實(shí)驗(yàn)室創(chuàng)建了一個(gè)神經(jīng)網(wǎng)絡(luò),可以比經(jīng)過幾十年改進(jìn)的傳統(tǒng)人工智能更準(zhǔn)確地識(shí)別語(yǔ)音?!爸皇巧晕⒑靡稽c(diǎn),”辛頓說,“但這已經(jīng)預(yù)示了某些東西?!?/p>
這些成功預(yù)示著深度學(xué)習(xí)在實(shí)驗(yàn)室研究、臨床醫(yī)學(xué)和其他領(lǐng)域的崛起。通過人工智能的深度學(xué)習(xí),手機(jī)能夠理解語(yǔ)音查詢,圖像分析工具能夠很容易地在顯微照片中識(shí)別出細(xì)胞;這就是為什么AlexNet會(huì)成為眾多從根本上改變科學(xué),也改變世界的工具之一。