《深度學習的技術》 試讀

我們可以很清晰地分辨出什麼是樹,什麼是花。而當各種各樣的植物聚在一起的時候,大腦會把所有這些植物歸納起來、加總起來,並總結成一個概念:森林。

這種把多個不同的植物總結成一個詞彙「森林」的心智過程,心理學家稱之為「組塊」(create chunk)。把幾個不同的單元組合成一個較大的單元,把幾個部件組合起來變成一個整體來理解,就叫組塊。

組塊的例子處處可見。例如文字,「你」、「他」、「賞」、「欣」這四個字有著不同的含義,如果分開來理解的話,你會覺得不知所云,而如果你把它們排列成「他欣賞你」這一句字來理解,所帶出的資訊就特別有意義了。

心理學家認為,組塊的主要功用是對資訊進行「壓縮」,以緩解工作記憶的負擔。

例如,「你」、「他」、「賞」、「欣」這四個字是四個不同的單元。你很難同時理解這四個字,同時加工這四個字的意思,但將它們組塊成「他欣賞你」這樣一個單元,就會變得很方便理解和加工了。對資訊進行組塊再加工,可以減輕工作記憶負擔。

另外,組塊能讓你產生更全局的理解。例如,硬盤、CPU、GPU都是功能不同的部件,但只有當他們組裝成一個整體、系統時,才會被稱為電腦。

而當你把硬盤、CPU、GPU當作是一個整體來理解時,你會發現它們之間的關係、相互作用,其實都是為了達到同一個目標,亦即「計算」,如果它們分開了,就未必能計算。

一般而言,組塊可以體現一個人的全局思維。例如,身為一個管理者,一個重要的思考方式就是把各個相關的人事物放在一起看,留意人事物之間的連接與相互作用,而不是把注意力都放在單個人事物。因此得到更全局的理解、顧全大局,才不會顧此失彼。

假設你在經營某家公司,你希望公司賺更多的錢,因此你希望員工賣力幹活,你希望顧客總是選擇你的產品。這三個願望看似沒什麼不妥,但如果你沒有進行全局思考,沒有把各個人事物組塊一起來看就貿貿然做出一項決策的話,那麼後果就會很糟糕。

首先,你希望員工賣力幹活,於是你出高價錢來激勵員工,花大錢給員工更好的福利,公司賺的錢就會減少。當公司遭遇緊急狀況時,可能會不夠現金流周轉。

如果你為了讓公司賺更多的錢,於是降低員工的薪資,那麼員工就不會為了你而拼命。他們製造的產品質量會下降,他們服務顧客時不會那麼誠懇,結果就是顧客不選擇你的產品了,你賺的錢一樣會減少。

如果你還是決定激勵員工,還花大錢來提升產品的質量。那麼成本就會變高,產品的價格會變得昂貴,而當價格太貴時顧客又會減少。

於是你又重新考慮減少收入,但公司收入減少,成長與擴展會放緩,你開的分店會較少,這又不利於競爭。

可見,公司盈利、員工福利和顧客在分開來看時並不矛盾,但當你把它們放在一起實踐時,就會發現它們的矛盾之處了。

但如果你透過組塊理解並意識到這類矛盾之後,你就會主動尋找出「兩全其美」的決策。例如,激勵員工不一定得透過金錢,有許多組織都會透過宣傳理念、制定意義非凡的目標來激勵員工;提升產品質量未必需要花上超額的成本,管理學裡的六標準差(Six Sigma)可以解決這一問題;如果資金是個問題,那麼公司擴展也未必要開實體分店,透過網絡電商擴展業務也是可行的。

先把各個人事物組塊起來看之後,再施予適合的手段,是每個管理者都必須學習的基本思維。

總而言之,組塊是一種俯瞰視角(zoom out)的理解方式,是一種全局的理解。

與組塊相反的理解方式,則稱為「分塊」(chunking),分塊指的是,當你觀察一棵樹時,樹可以被分成樹幹、樹枝、樹葉、樹根等等。把一個單元切成多個小單元來理解,仔細分析的理解,就叫做分塊。

又例如,你可以對「他欣賞你」這四個字進行仔細分析,欣字裡面包含了什麼資訊?欣字帶有愉悅、滿意的含義,而賞字帶有評價、評估的意味。仔細分析之後再重看「他欣賞你」這一句話,就能看出裡面的具體含義:「他對你的評價很滿意」。

分塊並不要求你從整體來看,而是要求你把知識單位分解成不同的部分來看,把「電腦」這一整體分解成硬盤、CPU和GPU等不同部件。而這樣做是有好處的。

如果你的電腦壞了,那麼一般來說它不是全壞,而是某個部分壞了。於是你把電腦分塊成不同的部位,並找出壞掉的部分然後更換,電腦就可以重新運作了。

如果你沒有進行分塊,沒有把電腦各個部分拆解出來仔細研究,而是把壞的地方看作是整個電腦而不是電腦的一部分,那麼你就會錯把整個電腦換掉。

一般而言,分塊可以體現一個人的職業能力。例如,心理醫生對人的各種心理機制有所理解,當某個人說自己患上了心理病時,心理醫生知道他只是某些地方出了問題,而不是整個人出了問題,他只要找出有問題的地方然後對症下藥就行。

但如果這位心理醫生無法找到患者的問題本質上出在哪裡,如果他無法仔細分塊到心理問題的源頭,那麼他的醫療就可能不奏效。

又例如,西醫對人體進行解剖研究,其實就是在對人體進行分塊理解,而西醫對人體分塊的程度非常之細,不單只研究單個內臟,還研究人體內的細胞、微生物層面。因此西醫在面對各種疾病時能對症下藥。相比之下,中醫則並未到達如此細節,所以中醫才無法像西醫那般,可以治療那麼多種疾病。

分塊是一種以放大視角(zoom in)來理解知識的方式,能讓你看見細節裡的魔鬼。

組塊和分塊是我們學習中最基本的兩種「視角」,一個是從整體來看,一個是到細節裡去看。

而在通常的學習情境中,我們經常需要把組塊和分塊交替運用,知識需要組塊理解,也需要分塊理解。

但是,比起分塊,我們日常的學習場景會更需要我們進行組塊。以教科書為例,教科書的知識點一般都已經被分塊得很細,是被打散的知識點,而你要做的是對這些被打散的知識點進行組塊理解。

其實不只是教科書,任何一個知識載體,都是被分塊、打散的知識。寫書的人只能一個接一個地把知識點寫下,讀書的人只能一個接一個地理解知識點。因此知識點在我們的腦中是難免散亂的,每個人都必須一個一個地理解了知識點後,再對知識點進行組塊,才能對知識有通盤的理解。

但問題是,對多個知識點進行組塊是一件挺困難的事情。隨著知識點本身複雜程度的增加,知識量的增加,組塊的難度也會劇增。你要對一本書的一個章節進行組塊是容易的,但對整本書進行組塊會比較難,對三本書進行組塊又會更難,對十本書進行組塊更是難上加難。

正因為組塊是困難的,所以在一個領域裡對知識擁有通盤、全局認識的人總是少數。多數人只能掌握領域的一些皮毛知識點,然後完成和這些知識點相應的工作。

那麼,我們要如何才能克服這一個困難呢?

我們需要超越的,僅僅是組塊和分塊的概念。

如何徒增知識的價值

先來做個思想實驗。

想像你和你的競爭對手同時應徵了同一份森林管理的工作,而這一份工作最終只會選擇你們其中一人。為了從你們兩人中選出一人,面試官決定看看你們兩人之中誰的知識量比較大(他只在意知識量,而不在意你的性格、有沒有口吃之類的其他因素)。

但很快他就發現,你們兩人在同一時期修了一樣的森林管理課程,都在那裡學會了100個知識點,而且經過測試後發現,你們兩人對這100個知識點的理解也是完全相同的。因此他判斷你們的知識量是對等的。

但面試官還是需要做出選擇,他想到了一個方法讓你們一決勝負。他把你們各別留在了不同的密室之內,提供了紙筆,並告訴你們在一個小時裡面,你們必須想辦法證明自己的知識比對方的知識更有價值。

在這期間,你們無法與外部取得聯繫,你們無法利用這一個小時從外部習得新知。

那麼,你會如何證明自己的知識量比對方更有價值呢?

讓自己思考一下。

思考一下。

一下。

一個可行的方法是:你可以透過「排列知識」來證明自己的知識更有價值。要理解這一點很簡單,我們換個比喻來說明。

假設小明和小強各有100顆一模一樣的彈珠,那麼此刻小明和小強各自的彈珠價值總合是相等的。但此時,如果小明把彈珠排列成了一個米奇老鼠的圖案,這時彈珠的排列方式就產生出來了一個新的資訊,100顆彈珠變得更具有意義了。此刻小明的彈珠,比小強那散亂的彈珠更有價值了。

同理,是什麼讓法拉利比豐田更有價值?從物理學看來,法拉利和豐田車在本質上都是由原子組成的,但為什麼這堆原子會比另一堆原子更有價值?

本質上它們沒太大的分別,法拉利和豐田的車都遵循同樣的物理規律,一樣會受到地心引力的影響,會因為阻力而減速。但因為這兩堆原子的排列方式不同,促使了結構的不同、性質的不同,才讓兩者在同一個跑道上,表現出不一樣的速度。

是什麼讓一個作家的文字比另一個作家的文字更有價值?

兩位作家使用的是同一種語言、文字,但因為對文字的排列不同,產生的資訊不同,價值不同,他們所描繪的系統也是不同的。

同理,讓一個畫家優於另一個畫家的,不是他們具備多少種顏料,而是顏料的排列方式;讓一個音樂家優於另一個音樂家的,不是他們可以製造出多少種音調,而是音調的排列方式。

現在,再回來思考一開始的思想實驗,你就能明白,你和競爭對手雖然各有100個知識點,但如果你對100個知識點進行過排列,那麼這100個知識點就能產生新的資訊、價值。

但怎麼排列呢?

你的競爭對手在密室裡,用了最簡單的方式排列知識,他用紙筆對自己的知識點進行分門別類,就像把自己的彈珠按照顏色進行排列一樣。

例如,這種排列方式會把不同的樹歸納在「植物」這一類,把不同的鳥兒歸納在「鳥類」這一類。這種分門別類的排列雖然也能產生一些價值,也有些用處,但非常有限。

你也意識到了排列知識的重要性,於是你也對知識進行了排列,幸好,你的排列方式比競爭對手精彩許多。你用紙筆把知識點排列組合成了一個系統,排列出了知識點之間的關係,描繪出了系統的結構。

其中,你描繪了一個非常簡單的例子:

又例如,森林裡會有狐狸吃掉兔子的「弱肉強食」情況出現,這時有些人可能會覺得狐狸的行為太殘忍了,於是把狐狸都捉了起來關在牢籠裡。但他們沒有意識到,兔子之所以能夠生存至今,是因為兔子的繁殖速度非常快。

由於少了狐狸這些捕殺兔子的動物,長期的後果就是兔子的數量太大了,大量的兔子對森林的草地造成了危害,促使了草地逐漸沙漠化。但危害並未就此停止,兔子在吃光了草地之後,開始飢不擇食地啃食樹皮,並導致了大量果樹的死亡,因此又減少了鳥類的食物來源。(見圖3-1)

圖3-1 排列並描述出知識之間的關係

當你這樣排列知識時,你所帶出的資訊不再是100個散亂的知識點,你帶出了一個重要的資訊——這不是動物、植物或者森林,這是一個生態系統。

當你排列知識時,你向面試官證明了你不只是理解了100個獨立的知識點,你還達到了更高層次的理解,系統的理解。

重要的不是你擁有了100個知識點,而是你可以用這100個知識點描繪出什麼?

碎片化還是零件化?

那麼,我們該如何對自身的知識進行排列呢?

這個問題得暫時打住,在開始探討幾個排列知識的方式之前,我們得先談談什麼是「碎片化學習」。

由於網絡時代的到來,接受資訊變得越來越快速方便,人們也因此逐漸改變了自己接受資訊的方式。一個人可以隨時隨地接受資訊,無論是在搭地鐵、排隊,還是吃飯,他都可以用這些短暫的時光來閱讀、學習。故此,有人將這種以碎片時間接受資訊的方式,這種不連續、小段、經常斷裂的學習方式稱為「碎片化學習」(相對於花幾個小時專注的學習)。

由於「碎片化學習」是碎片的,隱喻著學習時無法進行深度的思考,因此碎片化學習的人總是會落得膚淺、片面。許多人的直覺都認為,碎片化學習會造成分心,而分心會導致學而不精,浪費時間,有些人甚至進而認為碎片化學習只足夠用來吸收膚淺的資訊、垃圾資訊,因此碎片化學習有讓人的思想倒退之嫌。

本書是探討「如何有深度地學習知識」的書,所以一定會反對讀者碎片化學習——如果你是這樣想就錯了。

事實是,利用多餘的一丁點時間,哪怕中途會斷斷續續來學習,都還是有益處的。

假設你在搭地鐵,還有5分鐘就到站,那這個時候你是否要閱讀呢?如果用數字來表示的話,若你不閱讀,那你獲得的知識是0,如果你閱讀的話,那你獲得的知識哪怕只有0.1,那也是一種進步,哪來的倒退呢。

我認為碎片化學習完全沒有問題,而且這種學習方式特別適合難以抽空學習、忙碌的人。要說有問題的話,唯一的問題就在於這一個名字起得不好。「碎片化」是一個帶貶義的形容詞,隱喻著渺小的、不完整的意思。如果我們將這一形容詞改成「零件化」,改成「零件化學習」,那效果就不一樣了。

零件化學習隱喻著,你獲得的知識其實是一小個零件。零件在單個的時候,在散落於一地時看起來沒什麼用,但你可以隨時把多個不同的零件排列成一個整體。

這就是為什麼我認為碎片化學習完全沒問題,問題在於人們把它看作是碎片,把碎片看作是「破鏡難圓」的。但事實上,知識更像是一個零件,你可以把這一零件先儲存在你的記憶裡,之後再抽一些時間出來把零件排列成整體,你就能獲得整體的理解,就能獲得有深度地理解。

關鍵不在於知識是碎片的還是整體的,是零散的還是系統的,關鍵是在於你有沒有親自把知識排列起來、連接起來、組裝起來。

其實嚴格來說,所有的學習都是碎片/零件化學習。當你閱讀一本書時,你不可能把整本書的知識一口氣吞進去,你不可能同一時間理解十多個知識點。你只可能一個知識點一個知識點地理解,就好像撿碎片一樣,一個一個地撿。

而所謂「有系統的學習」,並不是說你不能進行碎片/零件化學習,而是說你在學習之後,在你撿碎片/零件之後,你需要把知識點結合起來看,排列(組裝)成一個體系、系統。

當然,這也意味著如果你只是碎片/零件化學習,但沒有對所學的知識進行總結,或排列成一個體系的話,那麼你就不會獲得更大的提升,你不會獲得太多的成長。正如本章開頭所提到的,知識在被排列之後,會產生新的價值、知識。

日本藝術裡有一種技術叫做金繼(Kintsugi)。金繼是把破碎的陶器碎片,用樹脂製成的天然漆,再加上純金粉,把碎片連接起來。這樣,碎過的陶器就不再是缺陷,而是會變得更美(見圖3-2)。

圖3-2 日本藝術金繼把碎片連接了起來

碎片並不是問題,問題是在於你有沒有進行連接與排列。

那麼,如何對知識進行連接與排列呢?

首先,我們得進行思維可視化。

以上內容摘自《深度學習的技術》 – 第三章:編織知識之網。