編譯 蔡立英
2019年,事件視界望遠(yuǎn)鏡團(tuán)隊(duì)首次讓世界一睹黑洞的真容。不過,研究人員公布的這張發(fā)光環(huán)形物體的圖像并不是傳統(tǒng)的照片,而是經(jīng)過計(jì)算獲得的圖片。利用位于美國、墨西哥、智利、西班牙和南極的射電望遠(yuǎn)鏡捕獲的數(shù)據(jù),研究人員進(jìn)行了數(shù)據(jù)轉(zhuǎn)換,最終合成了這張標(biāo)志性的圖片。研究團(tuán)隊(duì)在撰文記錄這一發(fā)現(xiàn)的同時(shí),還發(fā)布了實(shí)現(xiàn)這一壯舉所用的編程代碼,供科學(xué)界了解來龍去脈并在此基礎(chǔ)上進(jìn)行深入研究。
這種模式正變得越來越普遍。從天文學(xué)到動(dòng)物學(xué),現(xiàn)代每一項(xiàng)重大科學(xué)發(fā)現(xiàn)的背后都有計(jì)算機(jī)的貢獻(xiàn)。美國斯坦福大學(xué)的計(jì)算生物學(xué)家邁克爾·萊維特(Michael Levitt)因“為復(fù)雜化學(xué)系統(tǒng)創(chuàng)立了多尺度模型”與另兩位研究者分享了2013年諾貝爾化學(xué)獎(jiǎng)。他指出,當(dāng)今的筆記本電腦的內(nèi)存和時(shí)鐘速度大約是1967年實(shí)驗(yàn)室制造的計(jì)算機(jī)的1萬倍,他獲諾獎(jiǎng)的研究工作就是從那時(shí)開始的。他說:“我們今天確實(shí)擁有相當(dāng)可觀的計(jì)算能力,但我們?nèi)匀恍枰伎肌!?/p>
如果沒有能夠解決研究問題的軟件,以及知道如何編寫和使用軟件的研究人員,那么,功能再強(qiáng)大的計(jì)算機(jī)也毫無用處。總部位于英國愛丁堡、致力于改善科學(xué)軟件開發(fā)利用的軟件可持續(xù)研究所所長尼爾·洪(Neil Chue Hong)指出:“現(xiàn)在的科學(xué)研究與軟件緊密相關(guān),軟件已經(jīng)滲透到科研的方方面面。”
科學(xué)發(fā)現(xiàn)理應(yīng)獲得媒體的關(guān)注,不過近期的《自然》雜志轉(zhuǎn)而將目光投向了幕后,盤點(diǎn)了過去幾十年來改變科學(xué)研究的十大關(guān)鍵計(jì)算機(jī)代碼。
盡管這樣的榜單難有定論,不過《自然》雜志花了一年時(shí)間,對(duì)數(shù)十名研究人員進(jìn)行了調(diào)查,以多元化的視角評(píng)選出對(duì)科學(xué)界產(chǎn)生重大影響的十種軟件工具。

最初的現(xiàn)代計(jì)算機(jī)對(duì)用戶并不友好,當(dāng)時(shí)的編程實(shí)際上是手工將電線連接成一排排電路來實(shí)現(xiàn)的。后來出現(xiàn)了機(jī)器語言和匯編語言,允許用戶使用代碼進(jìn)行計(jì)算機(jī)編程,但是這兩種語言都需要對(duì)計(jì)算機(jī)的架構(gòu)有深入的了解,使得許多科學(xué)家難以掌握。

1963年,科羅拉多州博爾德美國國家大氣研究中心獲得這臺(tái)CDC 3600型計(jì)算機(jī),研究者在Fortran編譯器的幫助下對(duì)其進(jìn)行了編程
20世紀(jì)50年代,隨著符號(hào)語言的發(fā)展,特別是約翰·巴克斯(John Backus)及其團(tuán)隊(duì)在加州圣何塞的IBM開發(fā)了“公式翻譯”語言Fortran(Formula Translation)之后,這種情況發(fā)生了變化。利用Fortran,用戶可以使用人類可讀的指令來編程,例如x = 3 + 5,然后由編譯器將這些指令轉(zhuǎn)換為快速高效的機(jī)器代碼。
不過,這個(gè)過程仍然不容易。早期,程序員使用打孔卡來輸入代碼,而復(fù)雜的模擬可能需要數(shù)萬張打孔卡。盡管如此,新澤西州普林斯頓大學(xué)的氣候?qū)W家真鍋淑郎(Syukuro Manabe)還是指出,F(xiàn)ortran使得非計(jì)算機(jī)科學(xué)家也能編程,“這是我們第一次能夠自己對(duì)計(jì)算機(jī)進(jìn)行編程”。他和同事利用這種語言開發(fā)的氣候模型是最早取得成功的模型之一。
Fortran至今仍廣泛應(yīng)用于氣候建模、流體動(dòng)力學(xué)、計(jì)算化學(xué)等學(xué)科,這些學(xué)科都涉及復(fù)雜線性代數(shù)且需要強(qiáng)大的計(jì)算機(jī)來快速處理數(shù)字。Fortran生成代碼很快,并且仍然有很多程序員知道如何編寫。古老的Fortran代碼庫仍然活躍在世界各地的實(shí)驗(yàn)室和超級(jí)計(jì)算機(jī)上。加州蒙特雷美國海軍研究生院的應(yīng)用數(shù)學(xué)家和氣候模型師弗蘭克·吉拉爾多(Frank Giraldo)說:“老資格的程序員知道他們?cè)谧鍪裁矗麄兎浅W⒅貎?nèi)存,因?yàn)樵缙谟?jì)算機(jī)的內(nèi)存非常少。”
當(dāng)射電天文學(xué)家掃描天空時(shí),他們捕捉到的是隨時(shí)間變化的復(fù)雜信號(hào)雜音。為了理解這些無線電波的性質(zhì),他們需要看到這些信號(hào)作為頻率的函數(shù)時(shí)的樣子。研究人員可以通過一種叫作“傅立葉變換”的數(shù)學(xué)過程來做到這一點(diǎn),但問題是效率低下,大小為N的數(shù)據(jù)集需要進(jìn)行計(jì)算N2的次數(shù)。
1965年,美國數(shù)學(xué)家詹姆斯·庫利(James Cooley)和約翰·杜基(John Tukey)想出了一種加速該過程的方法——快速傅立葉變換(FFT),通過遞歸(一種“分而治之”的編程方法,同一種算法重復(fù)應(yīng)用其自身)將計(jì)算傅立葉變換的問題簡化為N log2(N)步。隨著N的增加,變換速度也會(huì)提高。對(duì)于1 000個(gè)點(diǎn),速度提升大約是100倍;對(duì)于100萬個(gè)點(diǎn),則是5萬倍。

澳大利亞西部的射電望遠(yuǎn)鏡陣列—默奇森寬視場陣列的部分夜景,該望遠(yuǎn)鏡使用快速傅立葉變換來收集數(shù)據(jù)
英國牛津大學(xué)數(shù)學(xué)家尼克·特雷菲森(Nick Trefethen)指出,這個(gè)“發(fā)現(xiàn)”實(shí)際上是一次再發(fā)現(xiàn),因?yàn)榈聡鴶?shù)學(xué)家高斯(Carl Friedrich Gauss)早在1805年就研究出來了,但他從未發(fā)表過研究結(jié)果。而詹姆斯·庫利和約翰·杜基做到了,他們開啟了FFT在數(shù)字信號(hào)處理、圖像分析、結(jié)構(gòu)生物學(xué)等領(lǐng)域的應(yīng)用。特雷菲森認(rèn)為:“FFT的發(fā)現(xiàn)確實(shí)是應(yīng)用數(shù)學(xué)和工程領(lǐng)域的重大事件之一”。FFT已經(jīng)多次應(yīng)用于代碼中,一個(gè)流行的選擇是FFTW,即“西方最快的傅立葉變換”( Fastest Fourier Transform in the West,F(xiàn)FTW)。
保羅·亞當(dāng)斯(Paul Adams)是加州勞倫斯伯克利國家實(shí)驗(yàn)室分子生物物理學(xué)和綜合生物成像部門的主任,他回憶說,當(dāng)他在1995年改進(jìn)細(xì)菌蛋白質(zhì)凝膠的結(jié)構(gòu)時(shí),即使使用FFT和超級(jí)計(jì)算機(jī),也需要“很多小時(shí)甚至數(shù)天”時(shí)間。他說:“如果在沒有FFT的情況下嘗試做這些,我不知道應(yīng)該如何做到,可能永遠(yuǎn)做不到。”
數(shù)據(jù)庫是當(dāng)今科學(xué)研究中不可或缺的組成部分,以至于人們很容易忘記它們也是由軟件驅(qū)動(dòng)的。在過去幾十年中,數(shù)據(jù)庫資源的規(guī)模激增,并影響了許多領(lǐng)域,但或許沒有哪個(gè)領(lǐng)域的變化會(huì)超過生物學(xué)。
當(dāng)今龐大的基因組和蛋白質(zhì)數(shù)據(jù)庫源于美國國家生物醫(yī)學(xué)研究基金會(huì)的瑪格麗特·戴霍夫(Margaret Dayhoff)的工作,她是生物信息學(xué)的先驅(qū)。20世紀(jì)60年代初,當(dāng)生物學(xué)家致力于梳理蛋白質(zhì)的氨基酸序列時(shí),戴霍夫開始整理這些信息,以尋找不同物種之間進(jìn)化關(guān)系的線索。1965年,她與三位合著者發(fā)表了《蛋白質(zhì)序列和結(jié)構(gòu)圖冊(cè)》(Atlas of Protein Sequence and Structure),描述了當(dāng)時(shí)已知的65種蛋白質(zhì)的序列、結(jié)構(gòu)和相似性。歷史學(xué)家布魯諾·斯特拉瑟(Bruno Strasser)在2010年寫道,這是第一個(gè)“與特定研究問題無關(guān)”的數(shù)據(jù)集,它將數(shù)據(jù)編碼在打孔卡中,從而有可能擴(kuò)展數(shù)據(jù)庫并進(jìn)行搜索。

蛋白質(zhì)數(shù)據(jù)庫擁有超過17萬個(gè)分子結(jié)構(gòu)的檔案,包括這種細(xì)菌的“表達(dá)體”,其功能是聯(lián)接RNA和蛋白質(zhì)合成的過程
其他“計(jì)算機(jī)化”的生物數(shù)據(jù)庫緊隨其后。1971年,蛋白質(zhì)數(shù)據(jù)庫投入使用,至今已詳細(xì)記錄了超過17萬個(gè)大分子結(jié)構(gòu)。加州大學(xué)圣迭戈分校的進(jìn)化生物學(xué)家拉塞爾·杜利特爾(Russell Doolittle)在1981年創(chuàng)建了另一個(gè)名為Newat的蛋白質(zhì)數(shù)據(jù)庫。1982年,美國國立衛(wèi)生研究院(NIH)與多個(gè)機(jī)構(gòu)合作,成立了GenBank數(shù)據(jù)庫,這是一個(gè)開放獲取的DNA序列數(shù)據(jù)庫。
1983年7月,這些數(shù)據(jù)庫資源證明了其存在價(jià)值。當(dāng)時(shí),由倫敦帝國癌癥研究基金會(huì)的蛋白質(zhì)生物化學(xué)家邁克爾·沃特菲爾德(Michael Water field)領(lǐng)導(dǎo)的團(tuán)隊(duì),與杜利特爾的團(tuán)隊(duì)各自獨(dú)立報(bào)道了一個(gè)特殊的人類生長因子序列與一種導(dǎo)致猴子出現(xiàn)癌癥的病毒蛋白質(zhì)之間的相似性。觀察結(jié)果顯示了一種病毒誘發(fā)腫瘤機(jī)制——通過模仿一種生長因子,病毒會(huì)誘導(dǎo)細(xì)胞不受控制地生長。美國國家生物技術(shù)信息中心(NCBI)前主任詹姆斯·奧斯特爾(James Ostell)說:“這一結(jié)果點(diǎn)燃了對(duì)計(jì)算機(jī)和統(tǒng)計(jì)學(xué)不感興趣的生物學(xué)家的頭腦——我們可以通過比較序列來了解有關(guān)癌癥的一些情況。”
奧斯特爾還表示,這一發(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ì)急劇增長。例如,NCBI的程序員在1991年通過Entrez(Entrez是一個(gè)可以讓研究人員在DNA、蛋白質(zhì)和文獻(xiàn)之間自由檢索和比對(duì)的工具)實(shí)現(xiàn)了這一點(diǎn)。
NCBI現(xiàn)任的代理主任史蒂芬·謝利(Stephen Sherry)認(rèn)為Entrez相當(dāng)于一位研究生。他回憶說:“我記得當(dāng)時(shí)以為Entrez是魔術(shù)。”
第二次世界大戰(zhàn)結(jié)束時(shí),計(jì)算機(jī)先驅(qū)馮·諾伊曼(John von Neumann)開始將幾年前一直用于計(jì)算彈道軌跡和武器設(shè)計(jì)的計(jì)算機(jī)轉(zhuǎn)向天氣預(yù)報(bào)。真鍋淑郎解釋說,在那之前,“天氣預(yù)報(bào)只是經(jīng)驗(yàn)性的”,即利用經(jīng)驗(yàn)和直覺來預(yù)測接下來會(huì)發(fā)生什么。相比之下,馮·諾依曼的團(tuán)隊(duì)“試圖根據(jù)物理定律進(jìn)行數(shù)值天氣預(yù)報(bào)”。
新澤西州普林斯頓的美國國家海洋和大氣管理局(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é)家劉易斯·理查森(Lewis Fry Richardson)花了幾個(gè)月時(shí)間計(jì)算,以實(shí)現(xiàn)德國慕尼黑6小時(shí)的預(yù)報(bào)。根據(jù)一段歷史記載,他的結(jié)果“極不準(zhǔn)確”,包括預(yù)測“在任何已知的陸地條件下都不可能發(fā)生”。計(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ù)測”,也就是氣候建模。
真鍋淑郎于1958年加入氣候建模團(tuán)隊(duì),開始研究大氣模型;他的同事柯克·布萊恩(Kirk Bryan)將這一模型應(yīng)用在海洋研究中。1969年,他們成功將二者結(jié)合起來,創(chuàng)造了《自然》雜志在2006年所說的科學(xué)計(jì)算“里程碑”。
今天的模型可以將地球表面劃分為一個(gè)個(gè)25千米×25千米的正方形,并將大氣層劃分為數(shù)十層。相比之下,真鍋淑郎和布萊恩的海洋-大氣聯(lián)合模型劃分的面積為500平方千米,將大氣分為9個(gè)層次,只覆蓋了地球的1/6。盡管如此,文卡塔拉瑪尼·巴拉吉表示,“這個(gè)模型做得很好”,使研究團(tuán)隊(duì)第一次能夠通過計(jì)算機(jī)預(yù)測二氧化碳含量上升的影響。
評(píng)審方式:改變?cè)u(píng)審方式。吸收各行業(yè)專家,采取各行業(yè)聯(lián)合評(píng)審,根據(jù)專家自身專業(yè)優(yōu)勢(shì),分章節(jié)進(jìn)行主審和整體內(nèi)容評(píng)審相結(jié)合的方式,這樣能充分發(fā)揮各專家的專長,也能更好地整合各個(gè)專家的觀點(diǎn)。
科學(xué)計(jì)算通常涉及使用向量和矩陣進(jìn)行相對(duì)簡單的數(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é)問題。
編程世界需要一個(gè)標(biāo)準(zhǔn)。1979年,這樣的標(biāo)準(zhǔn)出現(xiàn)了:基本線性代數(shù)子程序庫(BLAS)。這是一個(gè)應(yīng)用程序接口(API)標(biāo)準(zhǔn),用以規(guī)范發(fā)布基礎(chǔ)線性代數(shù)操作的數(shù)值庫,如矢量或矩陣乘法。該標(biāo)準(zhǔn)一直發(fā)展到1990年,為向量數(shù)學(xué)和后來的矩陣數(shù)學(xué)定義了數(shù)十個(gè)基本例程。
美國田納西大學(xué)計(jì)算機(jī)科學(xué)家、BLAS開發(fā)團(tuán)隊(duì)成員杰克·唐加拉(Jack Dongarra)表示,事實(shí)上,BLAS把矩陣和向量數(shù)學(xué)簡化成了與加法和減法一樣基本的計(jì)算單元。
美國得克薩斯大學(xué)奧斯汀分校的計(jì)算機(jī)科學(xué)家羅伯特·蓋杰(Robert van de Geijn)指出,BLAS“可能是為科學(xué)計(jì)算定義的最重要接口”。除了為常用函數(shù)提供標(biāo)準(zhǔn)化的名稱之外,研究人員還可以確保基于BLAS的代碼在任何計(jì)算機(jī)上以相同方式工作。該標(biāo)準(zhǔn)還使計(jì)算機(jī)制造商能夠優(yōu)化BLAS的安裝啟用,以實(shí)現(xiàn)在硬件上的快速操作。
40多年來,BLAS代表了科學(xué)計(jì)算堆棧的核心,也就是使科學(xué)軟件運(yùn)轉(zhuǎn)的代碼。美國喬治·華盛頓大學(xué)的機(jī)械和航空航天工程師洛雷娜·巴爾巴(Lorena Barba)稱其為“五層代碼中的機(jī)械”。而杰克·唐加拉則說:“BLAS為我們的計(jì)算提供了基礎(chǔ)結(jié)構(gòu)。”

加州勞倫斯利弗莫爾國家實(shí)驗(yàn)室的Cray-1超級(jí)計(jì)算機(jī)。在BLAS編程工具于1979年問世之前,并沒有線性代數(shù)標(biāo)準(zhǔn)可供研究人員在Cray-1超級(jí)計(jì)算機(jī)等機(jī)器上工作
20世紀(jì)80年代初,程序員韋恩·拉斯班德(Wayne Rasband)在美國國立衛(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)。”他將軟件轉(zhuǎn)移到新的平臺(tái)上,并重新命名,建立了一個(gè)圖像分析生態(tài)系統(tǒng)。
NIH Image及其后續(xù)版本使研究人員能在任何計(jì)算機(jī)上查看和量化幾乎任何圖像。該軟件系列包括ImageJ(拉斯班德為Windows和Linux用戶編寫的基于Java的版本)、Fiji(這是ImageJ的分發(fā)版,由德國德累斯頓的馬克斯·普朗克分子細(xì)胞生物學(xué)和遺傳學(xué)研究所的帕維爾·托曼恰克團(tuán)隊(duì)開發(fā))。“ImageJ無疑是我們所擁有的最基礎(chǔ)的工具,”美國博德研究所成像平臺(tái)的計(jì)算生物學(xué)家貝絲·奇米尼(Beth Cimini)說,“我從來沒有和只使用顯微鏡但沒有使用ImageJ或Fiji的生物學(xué)家說過話。”

在插件的幫助下,ImageJ工具可以自動(dòng)識(shí)別顯微鏡圖像中的細(xì)胞核
凱文·埃里克伊里說:“這個(gè)程序的目的不是做到一切或終結(jié)一切,而是服務(wù)于用戶的需求。不像Photoshop和其他程序,ImageJ可以成為你想要的任何東西。”
可能沒有什么能比把軟件名稱變成動(dòng)詞更能說明文化的相關(guān)性了。提到搜索,你會(huì)想到谷歌;而提到遺傳學(xué),研究者會(huì)立刻想到BLAST。
通過諸如替代、刪除、缺失和重排等方式,生物將進(jìn)化中的改變刻蝕在分子序列中。尋找序列之間的相似性——特別是蛋白質(zhì)之間的相似性——可以讓研究人員發(fā)現(xiàn)進(jìn)化關(guān)系,并深入了解基因功能。在迅速膨脹的分子信息數(shù)據(jù)庫中,想要快速而準(zhǔn)確地做到這一點(diǎn)并不容易。
瑪格麗特·戴霍夫在1978年提供了關(guān)鍵的進(jìn)展。她設(shè)計(jì)了一種“點(diǎn)接受突變”(Point Accepted Mutation)矩陣,使研究人員不僅可以根據(jù)兩種蛋白質(zhì)序列的相似程度,還可以根據(jù)進(jìn)化距離來評(píng)估它們的親緣關(guān)系。
1985年,弗吉尼亞大學(xué)的威廉·皮爾森(William Pearson)和NCBI的大衛(wèi)·李普曼(David Lipman)引入了FASTP,這是一種結(jié)合了戴霍夫矩陣和快速搜索能力的算法。
數(shù)年后,李普曼與NCBI的沃倫·吉什(Warren Gish)和史蒂芬·阿特舒爾(Stephen Altschul),賓夕法尼亞州立大學(xué)的韋布·米勒(Webb Miller),以及亞利桑那大學(xué)的吉恩·邁爾斯(Gene Myers)一起開發(fā)了一種更強(qiáng)大的改進(jìn)技術(shù):BLAST(Basic Local Alignment Search Tool)。BLAST發(fā)布于1990年,將處理快速增長的數(shù)據(jù)庫所需的搜索速度,與提取進(jìn)化上更為遙遠(yuǎn)的匹配結(jié)果的能力結(jié)合起來。與此同時(shí),該工具還可以計(jì)算出這些匹配發(fā)生的概率。
阿特舒爾表示,計(jì)算結(jié)果會(huì)非常快,“你可以輸入搜索內(nèi)容,喝一口咖啡,搜索就完成了”。但更重要的是,BLAST很容易使用。在通過郵寄更新數(shù)據(jù)庫的時(shí)代,沃倫·吉什建立了一個(gè)電子郵件系統(tǒng),后來又建立了一個(gè)基于網(wǎng)絡(luò)的架構(gòu),允許用戶在NCBI計(jì)算機(jī)上遠(yuǎn)程運(yùn)行搜索,從而確保搜索結(jié)果始終是最新的。
哈佛大學(xué)的計(jì)算生物學(xué)家肖恩·艾迪(Sean Eddy)表示,BLAST系統(tǒng)為當(dāng)時(shí)處于萌芽階段的基因組生物學(xué)領(lǐng)域提供了變革性的工具,即根據(jù)相關(guān)基因找出未知基因可能功能的方法。對(duì)于各地的測序?qū)嶒?yàn)室,它還提供了巧妙的動(dòng)詞。艾迪說:“它是眾多由名詞變成動(dòng)詞的例子之一,你會(huì)說,你正準(zhǔn)備BLAST一下你的序列。”
20世紀(jì)80年代末,高能物理學(xué)家經(jīng)常將他們已投稿的論文手稿副本郵寄給同行,征求他們的意見——但只發(fā)給少數(shù)人。物理學(xué)家保羅·金斯帕格(Paul Ginsparg)在2011年寫道:“處于食物鏈較低位置的人依賴于一線研究者的成果,而非精英機(jī)構(gòu)中有抱負(fù)的研究人員則往往身處特權(quán)圈以外。”
1991年,當(dāng)時(shí)在新墨西哥州洛斯阿拉莫斯國家實(shí)驗(yàn)室工作的金斯帕格編寫了一個(gè)電子郵件自動(dòng)應(yīng)答程序,希望建立一個(gè)公平的競爭環(huán)境。訂閱者每天都會(huì)收到預(yù)印本列表,每一篇都與文章標(biāo)識(shí)符相關(guān)聯(lián)。只需通過一封電子郵件,世界各地的用戶就可以從實(shí)驗(yàn)室的計(jì)算機(jī)系統(tǒng)中提交或檢索論文,并獲得新論文的列表,按作者或標(biāo)題進(jìn)行搜索。

金斯帕格的計(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á)3 000萬次。十年前,《自然-光子學(xué)》(Nature Photonics)的編輯在評(píng)論arXiv創(chuàng)立20周年時(shí)寫道:“不難看出為什么arXiv的服務(wù)會(huì)如此受歡迎,這個(gè)系統(tǒng)讓研究人員用快速和方便的方式插上旗幟,顯示他們所做的工作,同時(shí)避免傳統(tǒng)期刊上同行評(píng)議的麻煩和時(shí)間。”
arXiv網(wǎng)站的成功也促進(jìn)了生物學(xué)、醫(yī)學(xué)、社會(huì)學(xué)和其他學(xué)科同類預(yù)印本網(wǎng)站的繁榮。在如今已出版的數(shù)萬份關(guān)于新冠病毒的預(yù)印本中就可以看到這種影響。
金斯帕格說:“很高興看到30年前在粒子物理學(xué)界之外被認(rèn)為是異端的方法,現(xiàn)在被普遍接受,從這個(gè)意義上說,它就像一個(gè)成功的研究項(xiàng)目。”
2001年,費(fèi)爾南多·佩雷斯(Fernando Pérez)還是 “尋找拖延癥”的研究生,當(dāng)時(shí)他決定采用Python的一個(gè)核心組件。
Python是一種解釋型語言,這意味著程序是逐行執(zhí)行的。程序員可以使用一種稱為“讀取-評(píng)估-打印循環(huá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行代碼。10年后,佩雷斯與物理學(xué)家布萊恩·格蘭杰(Brian Granger)和數(shù)學(xué)家埃文·帕特森(Evan Patterson)合作,將該工具遷移到web瀏覽器上,推出了IPython Notebook,開啟了一場數(shù)據(jù)科學(xué)革命。
與其他計(jì)算型Notebook一樣,IPython Notebook將代碼、結(jié)果、圖形和文本合并在一個(gè)文檔中。但與其他類似項(xiàng)目不同的是,IPython Notebook是開源的,邀請(qǐng)了大量開發(fā)者社區(qū)的貢獻(xiàn)。而且它支持Python,一種很受科學(xué)家歡迎的語言。2014年,IPython演變?yōu)镴upyter,支持大約100種語言,允許用戶在遠(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ā)展到1 000萬個(gè),在2016年的引力波發(fā)現(xiàn),以及2019年的黑洞成像工作中,它們都發(fā)揮了重要的作用。佩雷斯說:“在這些項(xiàng)目中,我們做的貢獻(xiàn)很小,但非常有價(jià)值。”
人工智能有兩種類型:一種是使用編碼規(guī)則,另一種則通過模擬大腦的神經(jīng)結(jié)構(gòu)來讓計(jì)算機(jī)“學(xué)習(xí)”。加拿大多倫多大學(xué)的計(jì)算機(jī)科學(xué)家杰弗里·辛頓(Geoffrey Hinton)表示,幾十年來,人工智能研究人員一直認(rèn)為后者是“一派胡言”。但在2012年,他的研究生亞力克斯·克里澤夫斯基(Alex Krizhevsky)和伊爾亞·蘇茨克維(Ilya Sutskever)證明了事實(shí)并非如此。
在一年一度的ImageNet比賽中,要求研究人員在一個(gè)包含100萬張日常物體圖像的數(shù)據(jù)庫中訓(xùn)練人工智能,然后在一個(gè)單獨(dú)圖像集上測試生成的算法。辛頓表示,當(dāng)時(shí)最好的算法錯(cuò)誤分類了大約1/4的圖像。克里澤夫斯基和蘇茨克維的AlexNet是一種基于神經(jīng)網(wǎng)絡(luò)的“深度學(xué)習(xí)”算法,它將錯(cuò)誤率降低到了16%。辛頓說:“我們把錯(cuò)誤率幾乎減半。”
辛頓還指出,該團(tuán)隊(duì)在2012年的成功反映了足夠大的訓(xùn)練數(shù)據(jù)集與出色的編程,以及新出現(xiàn)的圖形處理單元的強(qiáng)大能力的結(jié)合。圖形處理單元是最初設(shè)計(jì)用來加速計(jì)算機(jī)視頻性能的處理器。他說:“突然之間,我們可以將算法運(yùn)行速度提高30倍,或?qū)W習(xí)多達(dá)30倍的數(shù)據(jù)。”
真正的算法突破實(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í)別語音。辛頓說:“只是稍微好一點(diǎn),但這已經(jīng)預(yù)示了某些東西。”
這些成功預(yù)示著深度學(xué)習(xí)在實(shí)驗(yàn)室研究、臨床醫(yī)學(xué)和其他領(lǐng)域的崛起。通過人工智能的深度學(xué)習(xí),手機(jī)能夠理解語音查詢,圖像分析工具能夠很容易在顯微照片中識(shí)別出細(xì)胞。這就是為什么AlexNet會(huì)成為眾多從根本上改變科學(xué)和改變世界的工具之一。
資料來源 Nature