天天看點

李飛飛:曆史被創造出來時,世界上隻有少數人知道

李飛飛:曆史被創造出來時,世界上隻有少數人知道

飛機窗外一片漆黑。雖然飛機還在跑道上,但還是什麼都看不見。坐在中間座位的我,能看到的隻有前排的座椅。我告訴自己:“一會兒就能到佛羅倫薩了。”但我心裡清楚,這隻是個幻想。因為臨時決定參加歐洲計算機視覺大會,我不得不放下一切,家庭生活陷入了混亂,但鄧嘉的消息讓我别無選擇。不得不承認,當嬰兒急需照顧時,和父母同住還真是益處多多。

訂票的時候,我回想起我和西爾維奧度蜜月時,從舊金山國際機場到佛羅倫薩機場并沒有直飛航班,于是我費了一些功夫找到了能讓我最快時間回家、回到孩子身邊的航線。雖然很不情願,但我最後還是選擇了一趟 20 小時的航班,飛機空間狹小,肯定也睡不好,唯一的中途停留休息就是轉機,可能在巴黎、蘇黎世或其他一些我在迷迷糊糊狀态下無法辨認的标志性城市。但現在已經無法回頭了。飛機開始在跑道上緩緩滑行,引擎開始轟鳴。擴音系統裡傳出廣播:擡起小桌闆,系好安全帶。我想睡一會兒,但思緒卻翻滾個不停。

我一直在思考這次的獲勝算法。它的識别準确率高達 85%,比上一年的冠軍高出 10 個百分點,創造了計算機視覺領域的世界紀錄。可以用一個資料來說明這個準确率的意義:我所看到的研究表明,人類的平均識别準确率約為 97%,而這還是對簡單得多的二進制選擇而言(比如判斷一張照片上是否有動物)。相比之下,算法需要篩選上千個選項才能找到正确答案。是以,雖然這個算法還沒有達到人類的水準,但已經比其他任何算法都更加接近,而且差距已經小到驚人。

飛機廣播“嘟”了一聲,然後傳來機長的聲音:我們已進入巡航高度。

這個參賽算法最令人驚訝的地方,也許在于它提高準确率的具體方法。盡管發展了數十年的支援向量機等現代算法已經引起廣泛興趣,并曾在前兩年的比賽中獲勝,但這次獲勝算法的研發團隊卻選擇了讓神經網絡重出江湖,并在比賽中大顯身手,把第二名遠遠甩在身後。冠軍算法名為 AlexNet,是向這項技術和項目的主要作者、多倫多大學研究員亞曆克斯·克裡熱夫斯基(Alex Krizhevsky)緻敬。

飛機遇到氣流,颠簸了一下。

準确率竟然在短短一年内大幅提高了 10 個百分點?而且是通過神經網絡實作的?飛機從一個時區穿越到另一個時區,我的大腦運轉不停。這就像是聽說一輛本田思域以每小時 160 千米的速度差打破了陸地速度的紀錄。根本不可思議。進步不應該是這樣的。

還是說,進步就是這樣的?我想到了鄧嘉在論文中闡述的内容,包括在使用 ImageNet 進行算法訓練時的一些發現。在小型資料集上運作良好的技術,在大型資料集上訓練時卻突然表現不佳,反之亦然。有沒有可能,神經網絡一直以來都更适合了解 ImageNet 這種更大、更密集的可能性空間?有沒有可能,神經網絡一直都能同時應對類别總數的大幅增加和類别間差異的急劇縮小,而它最先進的競争對手卻做不到?我急切地想找到更多線索,于是打開筆記本電腦,調出了 AlexNet 團隊在參賽算法中附帶的幻燈片,仔細研究他們所做的設計選擇。

AlexNet 是 卷 積 神 經 網 絡(Convolutional Neural Network,CNN)的一個執行個體。卷積神經網絡的叫法源于圖形卷積過程。在這個過程中,一系列濾波器在圖像上掃過,尋找與網絡所識别事物相對應的特征。這是一種獨特的有機設計,靈感來自休伯爾和威塞爾對哺乳動物視覺系統的觀察,即視覺處理在多個層次上進行。就像在自然界中一樣,卷積神經網絡的每一層都會逐漸整合更多的細節資訊,進而形成越來越高層次的感覺,最終将真實世界的物體完整地呈現在我們的視野中。

這樣就形成了一種類似視網膜的算法,凝視着周圍的環境。就像真正的眼睛一樣,算法的最外層把成千上萬個感受野應用于圖檔的像素,每個感受野都經過特定調整,能夠識别出獨特的微小圖案,并在遇到這種圖案時被激活,比如以一定角度傾斜的對角線邊緣、兩種色調之間的模糊混合、條紋圖案或明暗交替等等。在這種感覺水準上,濾波器可以對任何事物做出反應,比如小狗皮毛的圖案、廚房櫃台的邊緣,或者陽光下玫瑰花瓣輪廓上的閃光。事實上,AlexNet 能夠捕捉到所有這些特征,甚至更多,這不僅是因為它接受了 ImageNet 的訓練,更重要的是,這種算法忠實于生物視覺的進化本質。研究團隊沒有預先決定網絡應該尋找哪些特征,而是讓數十萬個神經元在沒有人工幹預的情況下,完全依靠訓練資料逐漸學習到自己的敏感度。AlexNet 就像生物智能一樣,也是自身所處環境的自然産物。

接下來,來自成千上萬個感受野的信号會深入神經網絡,彙聚融合成更加豐富、清晰的提示資訊。每個新的感覺層都在比上一層更加複雜的感覺水準上運作,當感覺到熟悉的事物時(也就是感覺到算法此前已經被訓練識别的東西),就會做出反應,就像生物神經元的生化反應被激活一樣。微小的圖案越來越大。這些圖案進一步像拼圖一樣連接配接起來,形成越來越容易辨認的片段——老虎的條紋、木頭的紋理、映在地上的影子。

最終,經過各層過濾後,僅剩下少數幾個信号被融合成識别對象的詳細圖像,進入網絡的最後階段:識别階段。機車、豹子、算盤、母雞、電視機,或是其他上千種選擇中的任何一個。所有這些都來自同一種算法,其精确度越來越接近人類水準。

當然,這些并不是什麼新的創意。自從貝爾實驗室成功将卷積神經網絡應用于手寫郵編,楊立昆多年來一直對卷積神經網絡保持着驚人的忠誠。在 AlexNet 誕生時,他已經花了 20 年時間堅持不懈地完善算法、發表研究成果,但一直沒有必要的資源來充分實作這些成果。現在,幾乎在一夜之間,這種常被視為誤入歧途的執着似乎變得極具先見之明。楊立昆把自己的卷積神經網絡算法巧妙地命名為LeNet(呼應他的英文名 Yann LeCun),其指導理念在 AlexNet中熠熠生輝,宛如重生般煥發生機。

這種聯系讓 AlexNet 背後的三人團隊備受矚目。他們都是多倫多大學的研究人員,負責人是與項目同名的亞曆克斯·克裡熱夫斯基,以及他的合作夥伴伊利亞·蘇茨克維( Ilya Sutskever)。這兩個聰明的年輕人資曆尚淺,仍在建立自己的聲譽。然而,第三個名字立刻引起了我的注意:傑弗裡·辛頓。就是這位辛頓,在 20 世紀80 年代中期開發了反向傳播技術,成為早期機器學習的先驅。反向傳播的突破性方法首次實作了對大型神經網絡的可靠訓練。就是這位辛頓,曾經指導過彼時還是他實驗室學生的楊立昆。和他的學生一樣,辛頓拒絕放棄對神經網絡的研究,即使這讓他在同僚中顯得形單影隻。看來, AlexNet 絕不僅僅是一個參賽算法。這是一個曆經四分之一個世紀的正名時刻。

随着我對算法架構研究的不斷深入,它根源的意義變得更加清晰。雖然相隔 20 多年,但 AlexNet 和 LeNet 的主要差別似乎微乎其微,兩者都運用了傳統的神經網絡範式。但有一個關鍵的差別是顯而易見的:AlexNet 這個新的演化版要龐大得多。

與 LeNet 相比, AlexNet 可以處理大約 10 倍規模的圖像,通過一個大小約為其兩倍的卷積核(可以了解為神經網絡的“焦點”)來掃描圖像。在此基礎上, AlexNet 通過一個更深的網絡對識别的細節進行過濾,這個網絡比 LeNet 多出幾層,是以能夠更全面地處理所獲得的資訊,并做出更複雜的推斷。最後, LeNet 的設計目标是将分析結果轉化為 10 種可能結果中的一種,對應于它要識别的 10個手寫數字,而 AlexNet 可以識别出 1000 個物體類别,也就是比賽中選擇使用的 ImageNet 子集中所包含的類别總數。

但所有這些都隻是程度上的差異,而非本質上的差異;從理論層面看,兩種算法幾乎沒有什麼差別。然而, AlexNet 的表現卻創下了前所未有的輝煌。

這是如何實作的呢?

部分原因肯定是算法運作所需的硬體。在很長一段時間裡,神經網絡的訓練難度很大,硬體的明顯限制是緻命的。即使是利用過去幾十年中規模小得多的網絡來訓練算法,從操作層面看,也很難實作。

事實上,用世界上最大的圖像集合來訓練類似 AlexNet 這樣的網絡似乎是難以想象的。但技術已經取得了長足的進步,尤其是出現了針對特定應用進行了優化的計算機硬體,價格低廉但性能出色,讓大規模資料集訓練成為可能。有意思的是,一切都要歸功于電子遊戲的流行。

這就引出了另一個命運轉折點:從功能上看,神經網絡所傾向的數字運算方式類似于視訊遊戲的圖形渲染方式。自 20 世紀 90 年代以來,價值數十億美元的電子遊戲産業一直推動着定制硬體的進步和商業化,助推了英偉達等超級品牌的崛起。到 2012 年,相關硬體——一種被稱為“圖形處理器”( Graphics Processing Unit,GPU)的專用處理器——已經以優惠的價格成為消費産品。對辛頓的實驗室來說,這意味着實作 AlexNet 所需的硬體不再需要政府撥款和施工許可,而是可以在百思買電器大賣場的貨架上買到。

然而,“可行”不一定意味着“友善”。即使有如此強大的硬體,利用 ImageNet 來訓練 AlexNet 也需要使用多個處理器,每天 24小時運作整整一周的時間。是以,在 2012 年年初的某一周,當世界各地數以百萬計的圖形處理器忙于渲染抖動的機槍、成群結隊的僵屍和彈片飛濺的爆炸時,有兩台圖形處理器卻正在多倫多的某個地方将一種新型神經網絡從理論變為現實。

盡管算法性能取得了顯著進步,但在嚴格意義上講,并沒有什麼新穎的東西。進步的作用隻是讓現有程序能夠在更加實際的時間内完成。如果要說 2012 年的世界與 LeNet 時代有什麼真正的不同,那一定是用于訓練網絡的資料之充裕。畢竟,在 1989 年,數字圖像還處于起步階段,大規模的圖像庫也非常罕見。在那個時候,組織一套用于神經網絡訓練的資料集——不僅僅是數字圖像集合,更是一個針對特定應用、每個圖像都由人工精确标注的海量集合——似乎完全是無稽之談。

當然也有例外情況,那就是用來訓練 LeNet 讀取郵編的掃描圖像。在當年,即使打造一套手寫數字圖像的訓練集,也是勉勉強強才能完成的工作。郵編圖檔訓練集和現代圖檔訓練集的對比情況引人深思。與數百萬像素的全彩照片不同,掃描的數字圖檔尺寸很小,顔色單一,占用的記憶體也相對較少。而且,隻需數千個示例(而不是自然世界所需的數以億計的示例),就足以涵蓋其特異性所需的多樣性。因為當時隻能找到手寫郵編的圖檔訓練集,是以,在 20 多年的時間裡,卷積神經網絡算法的唯一成就是識别手寫郵編也就不足為奇了。從這個角度來看,資料似乎有種為系統注入活力的能力。

事實上,在 ImageNet 的幫助下, AlexNet 煥發生機,它貪婪地吸收着 ImageNet 的内容,在 ImageNet 規模和多樣性的土壤中生根發芽,茁壯成長。一直以來,神經網絡并不需要更花哨的數學公式和更奇特的抽象概念。我們期待神經網絡能夠了解世界,而它們隻是在等待我們提供更加清晰的圖景,等待一些真正有學習價值的東西。大資料訓練了 LeNet 去了解複雜的人類筆迹,現在它也在訓練AlexNet 去了解萬物。

後來我才知道,在 2012 年之前的幾年裡,辛頓重拾激情,想要證明神經網絡的可行性。2011 年,他認為自己比以往任何時候都更接近轉折點,于是開始以一種既對抗又合作的方式與同僚溝通,他的表達方式聽起來更像是提出挑戰,而不是提出問題。他跟同行探讨下一步行動計劃,其中一個同行就是吉滕德拉。雖然他們兩人早有交情,但吉滕德拉一直對辛頓的項目持懷疑态度。

“我要怎麼做,才能讓你相信神經網絡是未來的趨勢?”辛頓問道。

“你真的想打動我嗎,傑弗裡?那就讓我看看它們能不能處理一些真正的任務。”

“比如?”

“比如物體識别,真實世界中的物體識别。”無論吉滕德拉對ImageNet 有什麼看法,他的确相信視覺分類的力量,這一點我在加州理工學院時就了解到了,“你參加過 PASCAL VOC 嗎?”

“參加了啊。但沒什麼用,他們的資料集太小了,例子不夠,是以我們給神經網絡展示新圖檔的時候,泛化效果并不好。”

“那你就需要更大的資料集。你關注過飛飛的實驗室嗎?等你準備好迎接真正挑戰的時候,可以看看她組織的比賽。”

不管吉滕德拉是真的對我的項目改變了看法,還是隻是想打老朋友的臉(這兩種情況似乎都有可能),辛頓都認真地聽取了建議。

每一個翻騰的思緒似乎瞬間彙聚,讓我從迷迷糊糊的旅行中清醒過來,我突然想到了一件事:神經網絡與 ImageNet 對世界的呈現是天然的契合。回顧過去,楊立昆的網絡與筆迹識别相得益彰。他的網絡對筆迹進行分析,從最小的像素簇到筆觸的紋理,再到完整的數字,在每個分析尺度上都發現了有意義的模式。這是從資料中自發産生的感覺流暢性,自然而然地形成了意識的層次。休伯爾和威塞爾在貓的視覺皮質中看到了同樣的現象。而在加州大學伯克利分校的實驗室裡,我們看到了更深層次的理念。神經網絡一直都能進行物體識别,但直到現在,它們才具備了實作目标所需的計算能力。

ImageNet 的資料廣泛而全面,覆寫了世界上絕大多數物體。現在看來, AlexNet 和 ImageNet 也屬于互相成就。簡而言之,這就是最大的不同——現在算法可以探索的資料範圍大大增加了。一想到訓練完成後 AlexNet 的層級中包含的内容,我就驚歎不已:形狀、邊緣、圖案、紋理,涵蓋我們多年來從網際網路上捕捉到的所有人物、動物和物體。現實世界中幽靈般的碎片,以恰到好處的方式組織起來,供算法來檢視。

飛機抵達佛羅倫薩,機輪觸地,飛機輕輕地颠簸着。我仍然難以相信 AlexNet 就是我們夢寐以求的進步。這個飛躍似乎太大了。但我越想越覺得它具備每一個偉大突破的特征:瘋狂的外表包裹着一個有意義的想法

第二天一早,消息就傳開了。據傳,會上将宣布一個具有曆史意義的事件。這些含糊不清的傳言激起了與會者的好奇心。當我到達時,研讨會現場已經人滿為患,楊立昆本人不得不靠後牆站着,因為他稍微晚了幾分鐘,沒能找到座位。

從研讨會開始的那一刻起,現場的氣氛就異常緊張,人群分成了三派。第一派是 ImageNet 的少數支援者,包括我、亞曆克斯·伯格和辛頓實驗室的成員。第二派占絕大多數,由中立但感興趣的觀察者組成。第三派雖然人數不多,但态度強硬,也最直言不諱。他們是那些從早期就反對 ImageNet 理念的批評者,雖然我通常不理會他們的态度,但在會議現場很難忽視他們的存在。

更糟糕的是,我們并沒有形成統一戰線。辛頓無法親自參會,因為他長期患有背部疾病,幾乎不可能進行國際旅行,是以他派了亞曆克斯·克裡熱夫斯基代他出席。亞曆克斯非常有才華,也是算法的主要作者,是以可以代替辛頓。但就像許多傑出的人一樣,他的個人表現與他工作成果的高度并不相符——我不确定他是否完全了解這一點。他的表現笨拙而輕率(這在學術界并不罕見)。一個典型的例子是,我在研讨會開始前多次給他發短信确認會面時間,但他完全沒有回應(但幸好,他按時到了現場)。由于聽衆的懷疑态度空前高漲,他隻擺事實、不帶情感的演講更難赢得他們的認同。

提問環節一開始,現場的緊張氣氛就越來越濃。我們聽到了所有常見的抱怨:ImageNet 太大了,不實用;沒有必要包含這麼多類别;物體識别模型還太原始,不需要如此龐大的資料集;等等。事實上,AlexNet 幾乎是逐點證明了相反的觀點,但奇怪的是,觀衆卻不信服。同時,也出現了一些新的批評聲音,有些甚至非常離譜。一位與會者(來自頂尖大學的後起之秀)煞有介事地提出,描繪 T 恤的圖檔類别多樣性不夠,因而無法可靠地訓練模型。對此我更多的是感到好笑。是認真的嗎? T 恤圖檔是緻命弱點?會議現場的其他人也都一頭霧水。

但那些認真傾聽的人得到了回報。在 27 張幻燈片中,大多數隻有黑白文字和圖表,卻以我們從未見過的清晰方式展示了神經網絡的本質,極具啟示性。繼羅森布拉特的感覺機、福島的新認知機和楊立昆的 LeNet 之後,AlexNet 實作了計算機視覺領域的新跨越。這一步早就應該邁出,卻曆經了數十年的醞釀,現在終于橫空出世,利用大型資料集充分彰顯了潛力。

尤其值得注意的是 AlexNet 的學習過程。

與所有神經網絡一樣,AlexNet 的初始狀态是無形的、惰性的,就像虛空中的一塊挂毯。然後,學習過程就開始了:面對從 ImageNet 庫中随機選擇的圖檔,神經網絡的任務是從上千個标簽中選擇一個正确的标簽,對圖檔進行标注。這個過程周而複始,不斷重複。一開始,标注幾乎是不可能完成的任務; AlexNet 的數千萬個神經元是随機配置的,對世界甚至連一點兒模糊的了解都沒有,隻會産生錯誤的結果。把一張蘑菇圖檔标注為“瓶蓋”。錯誤。把一張拖車圖檔标注為“電吉他”。錯誤。把一張棱皮龜圖檔标注為“浴巾”。錯誤。

但失敗并非無用功。錯誤會觸發糾正信号,在網絡的數千萬個組成部分中蔓延開來,同時對每個部分對于結果的貢獻進行評估,并按比例推動它們下次采取不同的行動。這是最簡單的學習方式:減少失敗的行為,增加成功的行為。但學習的規模極大,算法會仔細審查每個錯誤的每個細節:每一片光影、每一個圖案和紋理、每一個柔和的漸變和堅硬的邊緣。

在早期階段,效果并不明顯,當 AlexNet 再次看到類似它之前錯誤分類的圖檔時,很可能會再次出錯。不過,錯誤會更小一些。如此循環往複,直到正确為止,哪怕隻是靠運氣。這 一次,信号的目的是強化,而不是削弱:強化任何看似指向正确方向的東西。訓練繼續進行。錯誤。錯誤。錯誤。正确。錯誤。錯誤。正确。正确。錯誤。

ImageNet 規模巨大,算法學習也注定是個漫長的過程,即使隻是為比賽挑選的 1000 個類别的子集,完成學習也需要很長時間。ImageNet 涵蓋了各種各樣的對象,比如數字鐘、籬笆、盤式制動器、秒表、意大利灰狗、微波爐、醋栗,每個類别都有上千個不同的品種。不過,AlexNet 本身也是個龐大的網絡。它有 65 萬個獨立神經元,通過 6.3 億個連接配接組成網絡,其中有 6000 萬個微小的、幾乎無法察覺的權重影響着連接配接的強度,當信号從網絡的一端流向另一端時,一些連接配接會增強,另一些則會減弱。

作為整體,這些連接配接提供了一張巨大的畫布,足以描繪整個世界。在一輪又一輪的标注中,權重不斷變化,有的變強,有的變弱,有的搖擺不定,形成了一種柔韌結構,對訓練做出有機的優雅反應。承載這些龐大資料的是兩個英偉達圖形處理器,高度專業化的矽晶片并行工作,以最快速度進行着一輪又一輪運算。

訓練從早到晚不停地進行,直到每幅圖像的每個像素都被研究完畢。幾個小時變成幾天,幾天又變成一周。圖形處理器推動之。ImageNet 挑戰之。AlexNet 适應之。随着數以千萬計的權重一次又一次地調整,整個網絡出現了更龐大、更奢侈的結構。就像鐵匠用錘子敲打發光的鋼鐵。每次微小的增量積累,直到近乎肉眼不可見的擾動變成山脈和山谷,延伸到數千維的超空間。這個網絡是世界無數細節的幽靈般的均值,是 1000 種不同僚物、每種事物 1000 幅不同照片留下的痕迹。這裡有 1000 隻達爾馬提亞犬,那裡有 1000 個洗衣籃,另一處有 1000 個馬林巴琴。

就像地質變化一樣,種種印記凝聚成了地形,從 AlexNet 的一端延伸到另一端。削筆刀、清真寺、海星、曲棍球——所有事物都鑲嵌在這個地形之中。算法不僅“看到”了這些東西, 還成為它們。我們花了數年時間在網際網路上搜尋照片,這些照片形成了完整多元的機器意識空間,原始而強大,成為世界一切事物的統一表征。

在經過 140 萬輪标注後,最後幾張圖檔與其說是一場磨煉,不如說是一場加冕禮。網絡的焦點穿過像素,随着熟悉模式的識别而亮起,并傳遞到下一層,與其他模式相結合,形成越來越強大的感覺。算法的反應不再是随機的,大多數也不再是錯誤的。土狼。正确。台燈。正确。敞篷車。正确。顯然,這是硬體、軟體和資料的神奇組合,比計算機視覺領域所打造 的任何成果都更接近于捕捉到塑造了人類這種哺乳動物思維的進化精神。

ImageNet 的多樣性是在全世界衆包志願者的共同努力下實作的。它所形成的拓撲結構無比多樣、強大,達到了聖杯的境地。AlexNet 是計算機視覺領域有史以來最大的神經網絡, 它的訓練資料比此前任何神經網絡都要豐富,而且具備了泛化能力。

我們要花上幾個月的時間,才能真正了解在那個會議室裡看到的一切,但即使在那一刻,我們也清楚地知道我們正在見證非凡之物。這麼多年來,我一直希望 ImageNet 能夠推動新事物的誕生,現在我終于明白,一切的一切,都是為了認可和表彰一種永恒的成就,我們對此刻期待已久。受生物學啟發的算法幾十年來 一直凝視着我們,它隻是需要适當的挑戰,才能充分展現出來。

這個下午也讓我們有機會回顧計算機視覺領域在過去 10 年的發展曆程。我的實驗室将所有賭注都押在了長達數年的、規模空前的資料追尋上,而辛頓的實驗室則将他們的聲譽都 押在了卷積神經網絡這套幾乎已經被專業領域抛棄的算法上。我們都在賭,都有可能賭錯。但在那一天,當我們看到神經網絡在 ImageNet 強大訓練能力的支援下展現出的驚人能力時,我意識到,雖然兩個項目都獲得了認可,但這隻是因為它們是同步發展的。所有參與者都不知道,我們的每一步都互相依賴。

我往返佛羅倫薩的飛行時間比在佛羅倫薩當地待的時間還長。但在返程的航班上,我的感受與來時完全不同。飛機上的擁擠程度絲毫未減,我的疲憊感更加濃重,但思緒已經不再飛速奔湧——至少不像來時那樣。我親眼見證了成果。沒有錯誤,沒有疏忽,也沒有文書方面的失誤。神經網絡起死回生,比以往任何時候都更龐大、更複雜、更強大。ImageNet 已經教會了它們所需知道的一切,讓它們在一次嘗試中就達到了與人類能力相當的水準。

生物視覺的出現導緻遠古海洋波濤下的寒武紀大爆發,距今已經 5 億年。而如今,我們很難不去聯想:我們是不是正處于一個類似拐點的邊緣?機器視覺的興起是否會引發一輪數字 進化新浪潮呢?

我在來時飛機上狂躁的思緒和焦灼的問題一掃而空,取而代之的是一種意外的感覺。不是平靜,而是大悟,是沉思。這一次,從起飛到着陸,我一直靜靜地坐着,腦子裡隻回蕩着一個念頭:曆史剛被創造出來,而世界上隻有少數人知道。

繼續閱讀