身世浮沉雨打萍艾倫·圖靈緣何成了RTX的名字
最近,採用了圖靈架構的新一代英偉達RTX系顯卡終於登陸了筆記本平台,在全新技術的加持下,現在,遊戲本也同樣可以通過人工智能和光追的技術,實現更為細膩的畫面、更為真實的關照、以及更好的抗鋸齒效果了——這無論是對於畫面黨,還是對於鋸齒深惡痛絕的玩家而言,都是一大喜事。但是,RTX系顯卡的架構,緣何要用“圖靈”這個名字,來命名呢?
圖靈與計算機
不少朋友對於“圖靈“的了解,通常都來源於科幻電影中”圖靈測試“的概念——作為人工智能領域經典的名詞,艾倫·圖靈提出的”圖靈測試“,常常在科幻故事當中被用作測試人工智能與人類差異的”故事設定“(而事實上,它也的確是針對這方面的測試被提出的)。
但在學術界,用機器實現抽象概念的想法其實並不新鮮——早在17世紀,萊布尼茲就曾設想過用機械計算來代替哲學家的思考了,只不過,最終從數理邏輯的體系中,發明出今日能夠實現抽象概念的計算機體系,卻已經是上世紀的事情了。而歷史上的艾倫·圖靈先生,也並不僅僅只是人工智能領域的優秀人才,除了數學家的身份外,他還是現代計算機體系架構初期的重要貢獻者之一,甚至於現代軟件的設計理念,也有他貢獻的一份力——”圖靈機“就是在那個主流社會尚且認為機器智能做簡單計算的時代提出的。
二次世界大戰期間,圖靈曾在“政府密碼學校”(GC&CS,今政府通信總部)工作——它位於布萊切利園,是英國頂級的機密情報機構之一。圖靈在這裡從事密碼破譯工作,有一段時間,他還領導了小屋8號(Hut 8)小組,負責德國海軍密碼分析,並在期間還設計了一些加速破譯德國密碼的技術,包括改進波蘭戰前研製的機器Bombe,一種可以找到恩尼格瑪密碼機設置的機電機器—— 圖靈在破譯截獲的編碼信息方面發揮了關鍵作用,使盟軍能夠在包括大西洋戰役在內的許多重要交戰中擊敗納粹,並因此幫助贏得了戰爭。
1945年至1947年期間,艾倫·圖靈住在倫敦的漢普頓,彼時,他正在國家物理實驗室(NPL)從事ACE(自動計算引擎)的設計工作。1946年2月19日,圖靈曾提交過一份文件——這正是存儲程序計算機的第一個詳細設計——雖然馮·諾依曼關於EDVAC報告的初稿和圖靈的論文時間相差不多,但它的細節卻要少得多。
圖片來自於WikiMedia
可惜的是,雖然劃時代的ACE是一個可行的設計方案,不過戰時保密工作最終還是導致了項目的啟動延遲,1947年底,失望的他回到劍橋休了整整一年的假期,並在此期間開始創作一部關於智能機械的論著——於此同時,Pilot ACE正在他缺席的情況下建造,並最終在1950年5月10日執行了它的第一個程序,這也奠定了後來計算機體系的基礎——甚至可以說,這,正是夢開始的地方(但是Turing ACE的完整版本是直到圖靈去世後才建成的)。
1948年,圖靈被任命為了曼徹斯特維多利亞大學數學系教授,並於1949年成為了計算機實驗室的副主任,開始為最早的存儲程序計算機之一——曼徹斯特馬克1(Ferranti Mark 1)軟件。這一年,他繼續在數學,和“計算機械和智能”(Mind,1950年10月),以及現代計算機體系建設中做出了更多抽象的工作。
圖片來自於WikiMedia
這一年,圖靈還與他的前同學DG Champernowne進行了合作,開始為”一台尚未存在的計算機“編寫國際象棋程序,並在1950年完成了該項目——1952年的時候,圖靈開始試圖在Ferranti Mark 1(Ferranti Mark 1,在其銷售文獻中也被稱為曼徹斯特電子計算機,因而有時被稱為曼徹斯特Ferranti,是世界上第一台商用通用電子計算機)上實現這一程序——但很可惜,這台最早的存儲程序計算機卻並沒有辦法流暢執行該程序——因而,圖靈開始改用翻閱算法的頁面,並在棋盤上執行計算機指令的方式來“運行”程序(想像一下,這就好比現代沒有交互界面的情況下,一邊閱讀代碼,一邊手動操作的體驗),這也使得這一“程序”每次移動都需要大約半個小時的時間來完成——按照加里卡斯帕羅夫的說法,圖靈這可是玩了一場可識別的國際象棋遊戲(當然,結果是程序輸了 )。
後來美國新墨西哥州洛斯阿拉莫斯國家實驗室的研究組根據圖靈的理論,在ENIAC上設計出了世界上第一個以電腦程序形式存在的的國際象棋遊戲——洛斯阿拉莫斯國際象棋。
圖靈與人工智能
此外,圖靈還解決了人工智能的問題,1950年,圖靈發表了一篇劃時代的論文,文中預言了創造出具有真正智能的機器的可能性,由於注意到“智能”這一概念難以確切定義,他還提出了一個名為圖靈測試的實驗,試圖為稱為“智能”的機器定義標準——這個想法是,如果人類審訊者不能通過談話將人與人區分開來,可以說,計算機是會“思考”的。
”如果一個人(代號C)使用測試對象皆理解的語言去詢問兩個他不能看見的對象任意一串問題(對象為:一個是正常思維的人(代號B)、一個是機器(代號A) ),在經過若干詢問以後,如果C不能得出實質的區別來分辨A與B的不同,則此機器A通過了圖靈測試。“
圖靈測試對人工智能的辯論具有重要的,特徵性的挑釁性和持久性的貢獻,人工智能在半個多世紀後仍在繼續,並且,圖靈測試還是人工智能哲學方面的第一個嚴肅提案。
而且,歷史和現實還發生了驚人的重合點——早在學界不斷碰壁,放棄模擬成人心靈的努力錢,圖靈就曾在論文中建議道,人工智能,不是建立一個模擬成人心靈的程序,而應是製作一個更簡單的程序來模擬孩子的思維,然後讓它接受教育課程,就如同今日的深度學習智能一般。
2014年6月8日,人類歷史上首次出現了電腦通過圖靈測試的情況:”尤金·古斯特曼(Eugene Goostman)“成功地在雷丁大學(University of Reading)所舉辦的測試中騙過了研究人員,令他們以為“它”是一個13歲男孩(不過後來也有文章稱,它其實並非真正地通過了測試)。
圖靈架構與圖靈
好了,說了這麼多,我們再拐回來看看——為什麼剛剛登陸了筆記本平台的RTX系顯卡,使用的架構要叫做“圖靈架構”呢?
圖靈是由Nvidia開發的GPU微體系結構的代號——作為Volta架構的繼承者,它以著名的數學家和計算機科學家艾倫·圖靈命名。該架構於2018年8月首次在SIGGRAPH 2018上推出,是第一個能夠進行實時光線追踪的GPU,它實現了計算機圖形工業的長期目標之一——包括專用的人工智能處理核心(Tensor cores)和專用的光線跟踪處理核心(RT cores)在內,是業界的一大進步。
光線追踪|Ray-tracing
圖靈架構實現光線追踪的功能,是通過RT核心來完成的,它執行的光線跟踪可用於產生反射,折射和陰影,取代傳統的光柵技術——如立方體貼圖和深度貼圖(uv法線貼圖) ,帶來更為寫實的光影效果。雖然全面替換光柵技術尚且只是理論層面的構想,但圖靈架構已經能實現從光線追踪中收集更加貼近現實的光影參數,來增強陰影和復雜的光影效果了,這不僅減輕了遊戲開發人員的製作成本(包括操作層面和渲染時間問題),也同時為玩家們帶來了更為細膩可信的畫面效果——按照Nvidia的說法,RTX系的顯卡,在實行光線追踪技術的時候,所能提供的性能比之前的Pascal架構增加了約8倍。
圖片來自於WikiMedia
而具體到實際運作的圖形API,目前業界則主要有這幾種可選方案,包括英偉達的NVIDIA OptiX、微軟 Microsoft的DXR,和VulkanAPI。
By Nicholas Leopold (Mangostaniko) – Own work, CC0 , Link
人工智能處理核心|Tensor core
光線追踪的功能,主要是計算機架構、計算機圖形學,以及軟件層面的技術應用,雖然同圖靈先生早期的工作有一定交際——但這還不足以讓Nvidia的工程師們把新架構命名為“圖靈架構”——真正促成這一命名的,還是人工智能的因素——人工智能正在推動歷史上最偉大的技術進步,而圖靈架構則將其帶入到了計算機圖形領域——憑藉提供人工智能計算能力的Tensor Cores,圖靈GPU可以實時運行強大的AI算法,提升計算機渲染遊戲場景時抗鋸齒,以及圖像銳度的呈現效果,創造出前所未有的,清晰而又逼真的圖像和特效。
於我個人而言,遊戲的圖像和建模複雜度在遊玩遊戲時其實並不是最重要的——最重要的是抗鋸齒問題,它深刻地影響著遊玩過程中視覺疲勞的問題,如果沒有好的抗鋸齒技術的話,滿屏的狗牙在長時間遊玩後,是足以勸退我對於一款遊戲的熱愛的——這對於用眼健康的危害太大了。
Tensor核心就是被用作進一步加速遊戲場景最終圖像的生成——Tensor核心用於填充部分渲染圖像中的空白,這種技術被稱為去噪。經過在超級計算機上進行的深度學習, Tensor內核學會瞭如何提高圖像的分辨率——它會在超級計算機上學習並分析首要解決的圖像問題,通過示例和技術人員引導,得出想要的結果,並最終通過驅動程序更新的方式提供給消費者。
這一切,都是繼Max-Q命名之後,英偉達工作人員的另一波情懷行為——為了紀念前文這位偉大而又天資聰慧的人物。
圖片來自於WikiMedia
後記
可惜,這位天才一般的數學和計算機、人工智能研究者,並沒有得到他應得的善終結局——在他四十歲那年(也就是1952年),遭受入室行竊的他,被英國警方經調查後控以“明顯的猥褻和性顛倒行為”罪,並進行了化學閹割——1954年,一顆被咬過一口、浸過氰化物溶液的蘋果,孤零零地掉落在了地上,與此同時發生的,是一位數學及現代計算機體系的偉大貢獻者的隕落。
2012年,曾有21,000多人簽名請願,要求英國政府追授圖靈死後赦免狀,但被當局拒絕了——直到2013年12月24日,英國司法大臣才宣布,英國女王伊麗莎白二世赦免了1952年因同性戀行為被定罪的艾倫·圖靈。今日,我們都活在受益於圖靈的研究而得來的信息時代裡,而圖靈架構這一命名,也正是對前人最好的致敬。