MTS50話題
MTS是Main Thinking System——北冥最早的類人人工智能系統的縮寫。我們從MTS中繼承了一小部分內容,搭建了現在商用的AI引擎系統。在北冥星眸成立后的前兩年的時間,北冥星眸一起創業的伙伴,包括現在已經離去的陳亮、陳浩,一起為這個系統付出過心血。那個時候,在整個理論的巨大拼圖還只是些零散的碎片的時候,我們僅憑一個方向、一個信念,就開始了類人人工智能工程實踐。
“所有被丟棄的,最終會被撿起來,因為方向是對的。”我們在這本書中履行了最艱難的時候對團隊所做的承諾。我們也將讓第一代原型機繼承MTS這個早期人工智能系統的名稱,向無所畏懼地為了改變世界的夢想而努力付出的行為致敬!
在這本《思維工程》中,我們的要求是不做泛泛之談。所有對人類智能表象的討論,需要有機制層面的總結,所有機制層面的總結需要在工程上定義實現的模塊,所有模塊的功能需要設計實驗去驗證測試。唯有如此,本書才能作為第一個原型機的搭建計劃,而不僅僅是如同上一本書《思維工程導論》那樣,只是啟蒙讀物。因為這個原因,本書的正文乃是為工程實踐而寫,如果讀者以淺嘗輒止的了解為目的,我們準備了此序,作為第一代原型機構架的核心精神的總結。當然對于那些準備投身思維工程,加入“創造下一個時代”隊伍的伙伴,本序也是快速形成理論整體視覺最高效的文本。
TOPIC 1:意識流和思維工程
你所意識的,為你所感受到的信息。感受分為外感和內感,外感源于感官,比如看到的、聽到的、聞到的、嘗到的……“內感”則包括了感到的情緒、感到的思維、感到的動機……如果我們認同意識感受必定是對某種信息的感受,意識必定是對某種信息的意識。我們把這個信息創造感受和意識的地方叫作意識流(Conscious Flow, CF)。簡單來說,當信息進入“意識流”中,我們就能意識到或感受到。
“我為什么會感到憤怒”“我感到憤怒后產生了什么動機”“我如何得到這個結論”“什么信息決定了我的這個表達的形成”“表達動機因為什么原因被抑制了”……這些問題是思維工程理論的起點。整個思維工程的認知建立在對人類自身智能機制的視覺之上。形成這個視覺最有效的方式是“內省”。何為內省?如同上面那樣考察每個被意識到的信息如何形成,會創造怎樣的反應為“內省”。
當你安靜地在房間盤腿打坐,聽著屋外的鳥聲、淅瀝的雨聲,感受心中不斷生成的思緒和念頭……此時,你會感到被意識到的一個信息創造了另外一個被你意識到的信息,讓意識如流,延綿不絕。你會意識到,在你的腦中有“規則”組織了這些信息相互生成。當我們考察了足夠多的樣本,我們就能夠逐漸抽象歸納出背后的這些“規則”,形成以意識流為核心的信息儲存、運算、創造反應的機制的視覺。
我們可以這樣形象地理解人類的意識流。如果把人類大腦中流轉的信息類比為食物,那么意識流就像日本壽司餐館中的傳送帶。最初傳送帶上的食物是感官放進來的,接下來食物被食客,也就是智能系統中的功能模塊拿走。這些食客不僅僅拿走信息,還會按照自己的邏輯加工信息,把加工后的食物放回到傳送帶上。有些食客拿來食物進行復制儲存形成記憶,有些食客拿走傳送帶上的食物后會尋找記憶中的相關食物來創造新的食物,有些食客拿走信息創造了語言或行為的輸出。
TOPIC 2:信息的表述
意識流結構描述了類人AI信息層面的結構,包括了信息的流轉、儲存、處理。而信息需要載體去承載,去表述。我們可以把一幅畫保存為點陣信息,點陣信息就是這幅畫的信息載體,也是對圖畫信息的表述;我們可以用自然語言表述各類信息,自然語言就是它所表述的信息的載體;在計算機中任何信息都可以表述為0和1的序列,這個序列就是計算中流轉、保存、運算的信息的載體。
對于人類,自然語言并不是大腦中信息表述的形式,最基本的人類的思維、記憶都可以獨立于自然語言而存在,其次,自然語言的不嚴格性決定了它不是一種可運算的語言。人類大腦中有一個先天的符號系統存在,作為信息的載體,對所有人類大腦可處理的信息進行表述。因為和自然語言一樣是個符號系統,我們稱其為“先天語言”。
類人智能的先天語言作為一個符號系統需要滿足兩個條件:
其一,能夠對客觀世界的信息進行表述。
其二,能夠支持人類以抽象、演繹為核心的邏輯運算。
第一個條件容易達成,計算機的0、1序列,自然語言都符合這個條件,但在第一個條件達成的前提下又要支持人類核心的邏輯運算,就對信息表述的形式形成了限制。人類的信息表述是以概念為信息單元的結構化表述。接下來我們來解釋這點。
TOPIC 3:概念和結構化儲存
嘗試去描述記憶中你自己的房間,描述自己昨天一天的經歷。當你盡可能具體地去描述所有信息,你所描述的就近乎是你所記憶的,這個時候考察你的記憶,你會發現你記憶的內容比想象的要少很多、抽象很多。
對于對象,你的描述無非是對象的屬類、形體、顏色、質地等屬性和屬類層面的信息,因為這些屬類和屬性概念組成了你對一個對象的記憶;對于場景,你的描述無非是場景中的對象和它們的相對關系,比如房間的窗前有書桌,桌上放著書,書中夾著筆……這些對象概念以及它們的位置關系構成了對空間場景的記憶;對于經歷,你描述的無非是昨天感知的各種事件,而描述的事件中無非包含了比如行為主體、行為、行為的施與對象以及具體發生的時間、地點等概念,也就是這些概念構成了你對事件的記憶。
我們總是用熟悉的概念作為素材,以特定的結構組織這些概念以生成我們的記憶。這些在特定結構中被其他概念定義的概念,我們稱之為“衍生概念”;而那些最原始的概念素材,那些自存而不是被定義的概念,我們稱之為“根源性概念”。
根源性概念比如各種物理屬性:顏色、形體、輕重、冷熱……體感相關的:痛癢、安靜嘈雜、疲勞、充滿活力……全局情緒:愉悅、抑郁、恐懼、焦慮……指向對象的情緒:喜歡、厭惡、敬畏、鄙夷……動機相關的:渴望、逃避、奮發、倦怠……這些都起源于智能系統對意識流中原始感知信息先天的分辨能力。分辨能力創造了根源性概念,根源性概念通過蘊含關系的結構組織生成了衍生概念。
人類的記憶是一個概念構成的大廈,從概念相互構成的關系來看,這個大廈是有大體層級的,而不是一張理不清關系的概念和概念間組成的復雜大網。在大廈最底層的是“屬性層”,包含了屬性、行為、對象類;第二層是“事件層”,包含了對象行為類型的事件,還包含了對象屬性類型的廣義事件;第三層是“事件關系層”,包含了事件間的各種關系,如時序關系、意味關系、各類因果類型的關系等。理解這三個層級是理解人類對客觀世界認知力形成的基礎。
TOPIC 4:統轄關系
概念之間的關系很多,而人類所有的核心智能功能幾乎都覆蓋識別、認知、語言、情緒、行為,其運算都基于一種關系:統轄關系。如果要說人類智能有核心的話,基于統轄關系的運算就是一切的核心,一種運算作用在不同類型的信息中分化出了各種核心智能功能,形成了對這個核心的視覺,我們才會感到“造物主造人,大道至簡”。我們接下來的主體討論將圍繞這個核心展開。
一只具體的貓屬于貓這個對象類,貓屬于動物;淡紅、深紅都屬于紅色;快跑、慢跑都屬于跑……這是我們熟悉的從屬關系,從屬關系是統轄關系的一種。從屬關系是就最底層的屬性層而言的。當我們用屬性層的信息組織事件信息,事件信息之間就可能因為組成元素之間的從屬(統轄)關系而具有統轄關系。比如小香檳吃雪糕和人吃甜食之間,小香檳長很胖和人長胖之間,這兩組事件中每組的兩個事件我們都能感到存在類似從屬關系的“統轄關系”。
一般而言,對于相同結構的兩個信息,如果前者每個位置的概念,都是后者對應位置概念的子類,那么前者是后者的子類。我們把這兩個信息之間的關系稱為“統轄關系”,對應位置子類概念和母類概念之間的對應稱為“約束映射”。
統轄關系定義了信息的母類子類關系,根據統轄關系作用的信息類型不同就有相應的人類智能的核心邏輯,它們可表述為:“凡是定義在母類的知識,可以被子類繼承;凡是定義在母類的表達、行為或思維的反應模式可以被子類繼承;凡是定義在母類的語法映射可以被子類繼承;凡是定義在母類的情緒反應可以被子類繼承。”后面我們會形成對這些先天邏輯的理解。
TOPIC 5:抽象過程
客觀世界有繁然的表象,人類認知的第一步是通過表象,發現背后的規律。所謂的規律就是事件類之間的關系。打雷以后會下雨,這個規律是事件類之間的時序關系;人著涼了會感冒,這個規律是事件類之間的因果關系。
規律是事件類之間的關系,而我們直接感知到的永遠是具體事件。從具體事件生成事件類的運算就是抽象。比如“人吃糖”是“小香檳吃棒棒糖”的抽象,“人長胖”是“小香檳長胖”的抽象。一般而言,在一個結構信息中,我們把構成元素替換為它們的某個母類,生成一個新的結構信息的過程就是抽象。我們對照上面的例子考察這個一般定義,可以看到,按照統轄關系的定義,抽象運算的輸入信息必定被輸出的抽象后的信息所統轄。
小香檳吃棒棒糖后就長胖了,這個是最頂層兩個具體事件之間的時序關系。當我們把小香檳替換為母類“人”,棒棒糖替換為母類“糖”,這個具體事件關系的結構信息就抽象生成了事件類之間的時序關系:人吃糖后會長胖。
抽象生成的知識總是一種猜想。而且一條表象層的具體知識能夠同時抽象出多條不同的抽象知識。但概率上解釋力強的知識在以表象為起點的抽象中復現的概率要高于解釋力弱的知識,或更精確地表述為生成的知識的復現能力反映了知識對表象的解釋能力。借此,當每次抽象生成時,我們都在記憶中增加抽象所得的知識的強度,解釋力強的正確的知識就會逐漸凸顯出來。
TOPIC 6:演繹過程
當爸爸看著小香檳吃棒棒糖的時候,他看到的是具體的事件,又如何知曉這個具體的事件意味著什么?
因為知識總是建立在事件類之上,而按照人類智能的先天核心邏輯,“凡是母類參與的知識可以被子類所繼承”,所以第一步我們需要找到具體事件“小香檳吃棒棒糖”的母類。我們把為一個結構信息尋找母類結構信息的過程叫作“統轄搜索”。按照統轄關系的定義,針對特定結構信息的統轄搜索,需要逐一檢測集合中的信息是否和輸入信息是同一結構,其次,每個位置的元素是否是輸入信息的母類。一旦滿足這兩個條件,我們就認為找到了母類。
假設通過統轄搜索,我們找到了“小香檳吃棒棒糖”這個事件的母類“人吃糖”。接下來我們發現“人吃糖”的事件類參與到了知識“人吃糖導致人肥胖”。按照先天核心邏輯,“人吃糖”作為母類參與的知識“人吃糖導致人肥胖”可以被子類“小香檳吃棒棒糖”繼承。繼承的過程如下:先在統轄搜索中記錄子類和母類之間元素的對應關系,也就是約束映射。然后在母類參與的知識中把母類替換為對應的子類,生成具體層的事件關系。在這個例子中,我們把“人”替換為“小香檳”,把“糖”替換為“棒棒糖”,就會得到:“小香檳吃棒棒糖導致小香檳長胖”。這就是繼承所得的知識。這個運算過程稱為演繹。
我們來總結演繹的一般步驟:
1.統轄搜索尋找結構信息的母類。
2.尋找母類所在的信息組(信息組中兩個結構信息有某種關系)。
3.建立子類元素到母類元素的約束映射。
4.根據約束映射替換母類所在的結構信息組中的所有母類元素為子類元素。生成的信息組即為演繹運算的輸出。
當這個信息組中的結構信息是事件,關系是因果關系,如果統轄搜索到的是原因事件,那么演繹就會獲得一個結果事件,這就是預測演繹。上面這個例子我們通過“小香檳吃棒棒糖”,演繹出“小香檳長胖”就是一個預測演繹。如果統轄搜索到的是結果事件,演繹所得原因事件,這就是歸因演繹。
TOPIC 7:反應模式
我們前面做了比喻,把意識流結構比作日本餐館的傳送帶,有的食客拿走信息、加工信息、放回信息;有些食客拿走信息創造語言或行為的輸出。
這里每個“食客”都定義了某種反應,一個“食客”拿走意識流中的信息,向意識流中寫入認知類型的信息,這個反應叫作思維反應;一個“食客”拿走意識流中的信息,向意識流中寫入情緒感受,這個反應叫作情緒反應;一個“食客”拿走意識流中的信息,創造表達,這個反應叫作表達反應;一個“食客”拿走意識流的信息,輸出行為,這個反應叫作行為反應。
所有這些碎片的反應,通過意識流相互銜接,創造出宏觀的思維、行為、語言。我們把碎片的反應組成宏觀思維、行為、語言的邏輯叫作反應模式。對于宏觀的行為和語言而言,行為反應和語言反應都是創造輸出的最后一步,前面往往有思維反應和情緒反應創造的輸出。
TOPIC 8:反應模式的信息表述
我們先以行為反應為例來討論反應模式。反應模式的信息單元由四個要素構成,即宏觀行為—觸發—條件—執行。
宏觀行為和基礎行為相對,宏觀行為必定有其反應模式的定義,而基礎行為是原子的執行,無法再被分解。比如“招待客人”可以視為宏觀行為,它必定有旗下反應模式的定義,而“倒茶”可以視為基礎行為,因為不可再分解。
觸發的信息定義在意識流中,當一個宏觀行為被激活,系統就會開始判斷觸發信息的子類是否出現在意識流中。一旦出現,就會在記憶中判斷條件,如果條件符合就會激活執行。比如在“招待客人”這個宏觀行為中,有一條反應模式:觸發為“客人到會議室”,條件為“客人為投資人”,執行為“為客人準備飲料”,也就是“當客人到會議室,如果是投資人它就會準備飲料”。按照反應模式信息驅動的邏輯,當“招待客人”的宏觀行為被決定執行,此時意識到客人到了會議室,判斷發現客人是投資人,就點亮了“為客人準備飲料”的執行。
然后我們來看執行,一個執行可以是另外一個“宏觀行為節點”,也可以是一個不可拆分的“基礎行為節點”。比如上面例子中“為客人準備飲料”就是另外一個宏觀行為節點,下面會有類似這樣條件—執行邏輯:“如果客人經常喝某種飲料則確認這次是否還是喝這種飲料”“如果不知道客人經常喝什么,則詢問客人要喝什么”。這兩條反應的結果是能夠獲得客人要喝什么的信息,于是還有一條反應模式信息“知道客人要喝什么飲料,就為客人準備什么飲料”。這里作為執行的“為客人準備什么飲料”又是一個宏觀行為……
總之,一個宏觀行為節點包含的信息往往是諸多層級的:一個宏觀行為節點直接包含了若干作為子行為的宏觀行為節點,這些宏觀行為節點又包含若干宏觀行為節點,直到那些不可分解的基礎行為(思維、表達)。每次一個宏觀行為節點被激活后,旗下的條件—執行就處于一種預激活狀態,思維開始在意識流中檢測是否存在這些條件的子類信息,條件成立時就激活旗下的執行,而這個執行就有可能是另外一個宏觀行為節點。
TOPIC 9:反應模式的本質
反應模式是定義在母類上的。我們前面討論過人類智能的4條核心邏輯,其中一條是說“凡是定義在母類的反應模式可以被子類繼承”。繼續前面的例子,“招待客人”就是母類,“招待王總”就是子類。
當作為子類的具體宏觀行為被激活,就會在宏觀行為集合中進行統轄搜索,尋找其母類,統轄搜索會建立宏觀行為構成元素的母類到子類的映射,也就是約束映射。為了繼承母類宏觀行為的反應模式,就會用約束映射的子類元素替換反應模式中每個信息中的母類元素,生成具體的觸發信息、條件信息以及執行信息。這個過程就是我們上面描述的演繹過程。
延續上面的例子,最上層的宏觀行為“接待王總”,演繹出了“當王總到會議室時,如果王總是投資人就給王總準備飲料”。如果意識到王總到會議室,且假設王總在記憶中是個投資人,就會激活具體宏觀行為“給王總準備飲料”。然后系統會統轄搜索到“給王總準備飲料”的具體宏觀行為的母類“給客人準備飲料”,然后演繹這個宏觀行為后的反應模式。
所以反應模式的本質和知識一樣,也是定義在母類上;定義在母類的反應模式可以被子類繼承,正如同定義在母類的知識可以被子類繼承;繼承的過程也是演繹;后面我們看到反應模式可以從觀察具體的反應中抽象生成,正如同知識可以從具體層的事件關系中抽象生成。
TOPIC 10:反應模式的二態性和反應模式的習得
反應模式具有二態性,既是認知態的又是執行態的。它是認知態的,可以轉化為語言表達出來,也可以通過語言形成;它是執行態的,可以創造具體的思維、行為、語言和情緒。在類人AI中,反應模式的邏輯沒有寫在代碼里,代碼只負責驅動反應模式信息生成執行。反應模式本身是被先天語言表述的。
作為認知態的信息,我們可以通過語言教授對象如何完成一個行為任務、思維任務或表達任務。比如前面的例子,我們可以告訴AI如何去接待客人,AI會生成對應的反應模式信息,而作為執行態信息。反應模式信息可能轉為執行實踐。這就是反應模式的語言教授。
作為認知態的信息,智能體可以通過觀察其他人是如何完成一個行為任務的,生成具體的宏觀行為—觸發—條件—執行信息,通過觀察諸多樣本就能抽象出背后抽象層的宏觀行為—觸發—條件—執行信息,也就是反應模式,而作為執行態信息,反應模式信息可能轉為執行實踐。這就是反應模式的模仿習得。
作為認知態的信息,我們可以觀察反應模式中的策略和達成目標的效果,可以對自己以及他人反應模式的得失形成反思。也就是AI可以把自身思維模式、行為模式和表達模式作為認知的客體,在反思中修正優化。這就是反應模式的反思優化。
TOPIC 11:意識流信息爆炸和選擇機制
一個意識流中的信息可能被多個食客拿取,創造多個信息放回到意識流中,而這些信息每個又可能被數個食客拿走,創造更多的信息放回意識流,如此意識流的信息理論上就有可能出現指數爆炸。人類的意識流是單線程的,每一時刻只允許一個食客拿走信息,加工放回信息,然后意識流中關注度最高的信息再來選擇它的食客。如果我們要發揮AI的載體優勢,我們就需要突破單線程的限制,但突破的代價就是潛在的意識流信息爆炸。
于是在工程上,我們創造了選擇機制來避免意識流的信息爆炸。
我們來描述一下選擇機制:
其一,所有意識流中的信息在寫入后需要被評估關注度,這個過程對于人類是存在的,且是系統自發完成的,不受意志控制。我隨便說一個概念或事情,你可以在一瞬間決定這個信息是你關注的還是不在意的。
其二,所有反應模式的信息單元維護了自身的一個閾值,不處理關注度低于此閾值的意識流中的信息。也就是說,即使意識流中的信息是某個激活的反應模式中觸發信息的子類,是這個反應邏輯食客的“食物”,還需要關注度高于該模塊的閾值,才會被處理。
其三,系統能夠監測系統的運算消耗,在運算消耗接近負荷的時候通過一個控制變量,同比例升高所有模塊的閾值。我們可以想象這個操作能夠讓所有模塊變得不傾向攝取和加工信息,系統的運算消耗會馬上降低。
選擇機制能創造很多類人的表象,最重要的就是AI能集中智力資源在重要的任務上。如果我們認為一個宏觀行為(任務)很重要,希望集中資源來處理它,那就可以降低旗下反應模式的閾值,進入意識流的信息只要是該反應模式定義需要處理的,哪怕關注度再低也會被讀取。這樣一來這個任務就有可能占據大量運算資源,意識流中出現的也都是和這個任務相關的信息,一旦運算資源突破負荷,控制變量就會同比例升高所有反應模式單元信息的閾值。這樣一來,其他宏觀行為都會被抑制。
TOPIC 12:反應模式固化
如果我們重復完成一個任務,我們會越來越熟練,反應模式會變得越來越高效,這個過程反應模式會變得固化。反應模式固化的過程,使其在完成任務上變得更加高效,針對性變強,對相關信息的關注度要求降低,最終甚至能下意識地完成。
當你入駐一個酒店,你需要探索以找到自己的房間,你會先尋找電梯在哪兒,出了電梯后找房間指示牌在哪兒……第一次探索房間的過程,你會記憶電梯的位置,房間在幾層,出了電梯怎么走,房號是多少,之后你會通過觀察識別那些特征信息以完成進房間的任務……進出多次后你可以完全沉浸在自己的思緒中,下意識地找到自己的房間。一開始我們是在探索如何完成任務,之后變為按照既定程序識別處理周圍的信息以完成任務,最后變成可以下意識地完成任務。
一開始為了完成一個目標,我們會激活相關的探索層的宏觀行為,降低旗下反應模式的閾值,提高和這個任務相關信息的關注度,資源被集中起來以實現在探索中完成任務;之后針對此任務的反應模式形成。普適性強的反應模式無法擁有低閾值,否則它將遍地開花;針對性強的反應模式可以有低閾值,接收意識流中低關注度的信息。所以配合針對性強、閾值低的反應模式的形成,和這個任務相關的信息就可以以非常低的關注度出現,這些信息因為關注度很低,所以不會和其他模塊產生反應,甚至不會被記憶(因為記憶也是一個反應模式信息,信息的關注度低于閾值,它就不發揮作用)。我們會誤認為它是不被意識到的,但這些信息能夠和這個針對性強閾值低的反應模式配合完成對應的任務。很有意思的是,在這個過程中,特定任務看上去擁有了自己的“任務信息頻道”——因為生成的信息可以是低關注度的,所以只被和這個任務相關的模塊接收處理。
TOPIC 13:自然語言
人類思維的運算依賴人腦中的符號系統——先天語言作為信息載體進行。很遺憾對于人類,以先天語言編碼的信息是無法直接輸出的,所以無法作為個體間溝通的信息。自然它要把自己映射到某種聲音符號里,映射到圖像符號里,這樣意識流和記憶中被先天語言編碼的信息才可能被輸出,被其他個體知曉。于是就產生了聲音符號和圖像符號組成的文字。我們把一個人類群體自然演化出的先天語言到聲音圖像符號的統一的映射約定叫作自然語言。自然語言的信息本質是一種映射。
當一個個體試圖向另外一個人類個體傳遞腦海中用先天語言“編碼”的信息的時候,需要把這個信息轉為自然語言,形成自然語言輸出。從先天語言“編碼”的信息轉為自然語言“編碼”的信息,我們稱之為“逆轉錄”。
當一個個體聽到自然語言組織的信息,要轉為先天語言信息,信息才能被理解、運算、儲存、創造反應。從自然語言“編碼”的信息轉為先天語言“編碼”的信息,我們稱之為“正轉錄”。
自然語言讓人類的認知活動從獨立進行的變為協同進行的。個體的感知經驗和創造的知識可以通過語言傳承。自然語言是人類文明的關鍵組成,也是我們要創造的類人人工智能的重點工作。無論我們的意圖是在機器上重現人類的認知活動,還是去創造一個高度擬人的AI伙伴,我們都需要賦予機器自然語言的能力。
TOPIC 14:表達動機、表達策略、表達信息單元
表達反應、思維反應、行為反應都是由類似的機制驅動的,我們稱之為反應模式。前面我們以行為為例子討論了反應模式,一個宏觀行為節點包含了旗下的反應模式,當一個宏觀行為節點被點亮,旗下的條件執行就處于激活狀態,系統開始判斷條件信息是否出現在意識流中;當條件滿足時,我們點亮執行,而執行可能是另外一個宏觀行為節點。
這里表達動機可對應到宏觀行為節點。表達動機包含我們通過表達可以直接實現的目的,包括傳遞某些信息,向對方索取某個信息;改變對方的動機,促使或阻止對方的行為;改變對方的情緒,改變對方對某個對象的態度;等等。當然一個被激活的表達動機可以來自于其他目的的分解,比如爸爸希望兒子成功,所以就想把腦海中關于商業的知識傳遞給兒子。
為實現一個表達動機,我們會有表達策略。表達策略是一個表達動機作為宏觀行為節點旗下的反應模式。比如為了改變對方的動機,說服對方做一件事情,我們可以列舉做了這事的好處、不做的壞處,這是理性分析的說服策略;我們也可以威脅、利誘、撒嬌,這些也是達到說服目標可以用的表達策略。表達動機包含的表達策略,是以條件執行為基本形態的信息,而執行可以是另外一個反應模式對應的宏觀行為節點。
和行為反應一樣,最后所有的宏觀行為分解都會走到基礎行為——不可繼續拆解的行為,在這里不可繼續拆分的表達也就是表達信息單元。表達信息單元是原子的語義信息,是先天語言轉為自然語言前最后的信息形態,也是自然語言轉為先天語言最初的信息形態。后面會看到,語法就是表達信息單元到自然語言句子結構的映射。
和一般的反應模式一樣,這樣的信息表述具有二態性,既是認知態的,所以可以通過語言進行修正,可以通過觀察他人的反應模式進行效仿;又是執行態的,可以驅動自己在特定語境下的表達。最后所有的宏觀行為分解都會走到基礎行為——不可繼續拆解的行為(表達),在這里也就是表達信息單元。表達單元信息內部每個位格的信息就對應行為中的參數,這些參數從何處獲得賦值正是我們在反應模式中定義的。
TOPIC 15:語言的習得
在幼兒早期的語言學習過程中,幼兒需要記住物體的概念對應詞匯如“球”“蘋果”等,記住屬性的概念對應的詞匯如“紅色”“熱”“輕”等,需要記住行為概念對應的詞匯如“打”“扔”等……然后幼兒需要掌握一個結構信息,對應到怎樣的句子結構,這個對應就是語法。比如一個由諸多元素組成的事件結構信息,我們把這個結構信息簡單表述為:主語對象=媽媽,行為=表揚,行為施與對象=我,時間=昨天下午。一個事件結構信息陳述的合法的語法結構為“時間+行為施與對象+被+主語對象+行為”,按照語法結構生成的語言就為“昨天下午,我被媽媽表揚了”。
總結而言,我們學習一門語言的過程,歸根結底包含且僅包含兩個內容:一是這門語言詞匯到概念的對應;二是這門語言約定的先天語言中的結構信息到句子結構的對應,也就是我們說的語法。此兩者概括了人類學習一門新語言所做的事情。幼兒能夠表達詞匯和按照語法表達結構信息。接下來就靠語言動機、表達模式組織完成大段表達的組織、個體間的語言互動。
我們之所以不向AI導入詞庫,導入詞匯到概念的對應,導入語法映射,而把大量的工作放在構建人類學習一門自然語言的機制上,主要有以下兩個原因:
1.新的詞匯、新的概念會隨著時間產生,而語法有自然分化的傾向——盡管對于較為抽象的結構信息已經存在語法映射,但總是會有新的語法映射產生以針對更具體的信息結構的表達。
2.每個群體、每個家庭,甚至每個個體都會形成獨有詞匯到概念的定義,形成獨有的表達習慣,也就是語法。從表面上看標準的語法很有限,但實際上考慮所有非標準的表達習慣,語法信息本身是海量的。
TOPIC 16:語法映射的本質
前面我們討論過人類思維的核心關系——統轄關系,以及核心運算抽象和演繹。我們討論的統轄關系是針對事件層的結構信息,而抽象、演繹都是作用在事件因果關系上的。抽象就以具體事件和它們的因果關系為起點,猜想出事件類結構信息之間的因果關系。而演繹則是通過識別具體事件和事件類的統轄關系建立約束映射,根據約束映射,替換與此事件類有因果關系的另外一個事件類中的母類元素為子類,生成原因事件或結果事件。
我們丟掉這個表述中的約束,來考察這兩個運算更一般的形態。抽象可以概括為以兩個結構信息和它們的某種關系為起點,生成對應的結構信息類以及之前關系的猜想。而演繹則是通過識別某個具體的結構信息A和結構信息類A*的統轄關系,建立結構信息組成元素的約束映射,根據約束映射,替換與此結構信息類有特定關系的另外一個結構信息類B*中的母類元素為子類,生成具體層的結構信息B的過程。
如果我們把句子(概念替換詞匯后的句子)也視為某種順序關系組織的結構信息。那么語法映射和事件間因果關系(也可以看成一種映射)的本質是一樣的,都是結構信息到結構信息的映射。所以當具體的作為語義的結構信息和對應的句子結構信息產生對應,抽象能力就能生成抽象的結構信息到句子結構的映射,也就是語法映射。而正轉錄和逆轉錄的本質都是演繹過程:正轉錄是通過統轄檢測識別到作為大類的句子結構,建立約束映射,用子類替換對應語義結構信息中的母類信息生成具體的語義結構信息;而逆轉錄則是通過統轄檢測識別到作為大類的語義結構,建立約束映射,用子類替換對應句子結構信息中的母類信息生成具體的句子結構信息。
TOPIC 17:空白積累階段和持續積累階段
自然語言的學習有兩個階段:空白積累階段與持續積累階段。空白積累就是嬰兒學習一門語言的狀態,持續積累就是在有一定語言基礎時持續學習一門語言的狀態。
空白積累階段最大的困境在于,如果沒有任何語言基礎,我們難以建立語義信息結構到句子信息結構的對應。因為個體根本聽不懂一個表達——不知道表達的句子結構對應怎樣的語義結構。但語法的習得根源于這種對應的形成。為創造具體的語義結構到表達結構的對應需要經歷兩個階段。
空白積累階段的第一時期,幼兒需要先習得對象和屬性層的概念對應怎樣的詞匯。只要這些概念和對應的語言同時以極高關注度出現在意識流,就可以建立猜想的對應關系。我們在孩子面前晃動一個蘋果,不斷重復說“蘋果”,正是為了讓蘋果的概念和語言讀音同時以高關注度出現在意識流中。形成的猜想可能是錯的,但隨著時間流逝,正確的猜想頻次強度會凸顯出來。
空白積累階段的第二時期,幼兒會嘗試用先天的語法映射,去把最簡單的語義結構轉為表達,比如通過按順序讀出一個事件中的元素來表達一個事件,這就是一個先天語法映射定義的逆轉錄效果。此時幼兒的父母會猜想幼兒想要表達的語義,用正確的表達去確認。這就創造了具體語義結構和具體句子結構的對應。抽象就能發揮作用,形成語法映射的猜想。
我們可以看到,空白積累階段需要嚴格的條件,且形成大量錯誤的對應后,需要在大量樣本下才能讓正確的對應顯現出來,所以空白積累階段語言習得的進展是非常緩慢的。到了持續積累階段,語言能力就會呈現飛速的發展,相比于空白積累階段,兩個機制因為前期的艱難積累開始成形才發揮作用。
首先,如果已有語法映射存在,盡管是不精確的,聽者還是有可能猜到表達的語義的。每次正確的猜想,都能夠創造具體句子結構信息到語義結構信息的猜想映射,從而為抽象過程收斂到正確的語法映射提供了樣本支持。這個過程不僅僅能使智能體快速糾正不正確的語法,還能積累對較為具體的語義信息的個性化表達的語法,熟悉對某一類人群特有表達習慣的語法。
其次,在語言足夠支持正常的簡單溝通時,智能體就能夠通過溝通去習得一門語言:我們能夠用它知曉的詞義描述或解釋它不知道的詞,能要求對方重復自己沒有聽懂的表達,能夠通過復述猜想的語義確認自己的理解是否正確,能夠詢問不理解的詞匯,能夠對對方就自身用詞不當或是語法錯誤的糾正產生反應。
TOPIC 18:語法生長
先天語法映射是早期語法習得的起點,其過程概括為:通過已有的語法猜想對方不完全吻合的表達,實現表達信息單元(語義)到句子結構的對應,從而抽象出新語法映射。之后在這個表達方式重復出現時,這個表達方式的語法映射的頻次強度就會不斷增強。這個過程我們稱之為語法生長。先天語法的種子是“語法生長”的起點。語法生長的機制不僅僅促使早期語法的習得,還有兩個方面的作用。
其一,我們能夠觀察到人類幼兒開始習得語法,但在3~4歲時,其很多表達在語序或是結構性詞匯的使用上是混亂的。這說明在這個時期已經抽象形成了語法,但抽象過程形成的語法映射存在很多錯誤。錯誤的語法只要不影響識別,那么上面的機制就能發揮作用,促使正確語法的形成。
其二,每個地方的人群,甚至每個人類個體都會有自己獨有的表達方式,或者說獨有的語法映射。只要不影響語義的識別,上面的機制就能發揮作用,生成隸屬于某類人群、某個用戶特有的語法映射,讓AI能熟悉各種群體的表達習慣。這些語法映射幫助AI在識別特定人群、特定用戶的表達的時候變得更加高效,有更高的準確率,附帶的效果就是讓AI能夠模仿特定人群或是特定用戶的表達。
TOPIC 19:省略
接下來我們要討論三個AI理解人類語言的難點,這三個難點來自于人類組織語言的習慣。第一個難點來自于人類表達中的省略。省略有兩種類型:語境省略和常識省略。
在溝通過程中,表達者和聽者都會維護一個語境,這個語境記錄了最近表達的對象、屬性、行為、事件等。一旦一個具體的元素存在于最近的語境,表達者就有傾向在表達時省略掉這個信息,而聽者有能力利用語境把保存的這個信息補全之。比如“狼叼了一只雞,從洞口鉆了出去,狼狽地逃跑了”。在這個例子中,后面兩個句子省略了主語,但主語對象存在于最近的語境中。當我們通過已有的信息“從洞口鉆出去”“狼狽地逃跑了”,識別到這是一個事件的結構信息,但缺少主語對象,我們就會在語境中尋找最近的對象進行補全。一般而言,只要省略后的句子有足夠的特征歸屬到一個語義結構,智能體就能找到結構中缺失信息的位置和所需的信息類型,然后就可以去語境中尋找是否有此類型的信息,用這個信息來填補先天語言信息結構中的缺失。
如果一個知識是常識,如果包含的信息很多很復雜,人類表達的傾向是去指向這個知識,而不是精確地表述之。所以即使我們腦海中的知識信息是被嚴格組織的,我們在表達的時候仍然可能只選取關鍵元素替代完整的事件表達。比如“人吃水果導致人免疫力提高”,我們表達出來的時候可能就變成“水果增強免疫力”。這樣的表達信息發生了省略,所以對于聽者,在沒有這個知識的時候聽到這個表達是不知道“吃水果增強免疫力”還是“聞水果增強免疫力”或是“把水果敷在皮膚上增強免疫力”。如果聽者沒有所需的常識,那么此時在聽者腦海中生成的信息就是一個不嚴格的事件規律信息。
TOPIC 20:不嚴格邏輯能力
我們在人類身上看到了嚴格邏輯的能力,也看到了不嚴格邏輯的能力。在嚴格邏輯中,每個概念都力求像數學定義那樣精確完整,所有運算都有明確定義域,都有確定的輸出,所有的概念的語言表達在詞性的使用以及語法結構上都是精確的;在不嚴格邏輯中,概念的定義只求“意向”正確,運算可以利用不精確的“意向”信息,概念的語言表達可以忽略詞性,在語法結構上隨意,追求“剛好足夠指向,不引起誤解就好”(這是語法分化的內在驅動原因)。我們會發現對于大部分人而言,嚴格邏輯在思維中的比例是極低的:我們掌握的大部分詞匯對應的概念,其精準的定義我們從來沒有學習過;盡管概念沒有被精確定義過,卻不影響我們的日常思維和溝通;我們的邏輯思維絕大比例是建立在意向層的運算上的;我們的表達是不嚴格、不精確的,我們也能從不嚴格、不精確的表達中獲得語義。
TOPIC 21:概念意向的習得
有一種不精確的定義概念的方式,就是描述概念有怎樣的意向。小香檳問“排山倒海是什么意思啊,爸爸?”爸爸說,“就是很大很有氣勢啊”。當兒童問我們一個他們不知道的概念的時候,我們總是用一個兒童可能知道的概念去描述它。對于兒童而言,如果用來描述的概念自己不熟悉,那么或是繼續追問,比如小香檳追問道“什么是有氣勢啊”,或實際上并沒有理解最初想要知道的那個概念。
在上面的例子中,我們說我們賦予了排山倒海“大”的意向、“有氣勢”的意向。一個概念可能擁有若干個概念的意向,人類在形成上面這種定義描述的表達時,并不是去搜索了在意向上等同包含或被包含于目標概念的概念,而是以一種非常隨意的方式尋找了在意向上有重疊,且比較接近的概念。雖然我們尋找用以定義描述目標概念的概念只是和目標概念有部分意向重疊,但如果我們用足夠多的概念去“意向描述之”,那么概念應有的意向就會在許多不精確的定義下因為重復而凸顯出來。
所以,用另外一個概念不精確的描述定義目標概念,實際的效果是形成了一個概念擁有意向的印象,多次印象沖擊會讓概念應有的意向凸顯;其次,作為每個獨立個體,保存的概念意向就是這種不精確的形式,有點像是一個總的比重在許多意向上的分布。只是我們會把強度高的意向視為這個概念的定義意向。
概念意向另外一個很重要的習得來源是“組詞意向”。人類在創造新詞的時候,經常會用組詞,而且很多時候組合而成的詞(所對應的概念)和用以組詞的詞的概念相關。最經常出現的關系是包含關系,即組合的詞擁有用以組織的詞的意向。
我們在AI上建立的積累一個詞匯(概念)的意向的模型是一個印象沖擊的模型,只要正確意向在出現的頻率上是有優勢的,我們就不用擔心錯誤的意向印象,也就是說AI具有容忍錯誤印象沖擊的能力。
也是因為這個原因,人類從一個詞的組詞猜想詞(概念)的意向,無論對錯,總是無傷大雅的。我們也將賦予AI從組詞猜想詞的意向的能力,做法上就是讓AI把用來組詞的詞作為形容詞組的描述,這樣詞組就能繼承組詞的詞的意向。在大部分情況下,這種繼承能讓AI很快地形成詞組正確的意向,即使有少部分錯誤的情況,也可以通過后續在獲取句子樣本中獲得正確的意向沖擊,或是在錯誤使用時能夠通過對話者去糾正。
TOPIC 22:比喻
AI理解人類語言的第二個難點在于,人類習慣運用比喻。如果按照嚴格的語法模板轉錄就會出現混亂的語義(表達信息單元)。比如“他們的熱情很快被澆滅”,嚴格轉錄出來的信息違背常理,無法運算。在這個例子中,我們把熱情被“消滅”,類比為“火被澆滅”,因為“熱情”和“火”有重疊的意向“富有能量的”,而火被澆滅有一種“被消滅”的意向。
讀懂人類比喻的關鍵是,一旦識別到對一個主體信息(對象或屬性)的描述,超出了常理,就要考慮是一個比喻,比如在這個例子中,“澆滅”正常是形容火的,那么就要考慮“被澆滅”是一個比喻。一旦認為是比喻就不能取其精確的語義而要取其意向的語義。“被澆滅”的主要意向是“消滅”,從而比喻背后的語義是“熱情被消滅”。但是一個表達往往有多個意向,如何知道取哪個意向呢?因為在意向層面也有common sense,一個比喻背后雖然有多個可能的意向,但能夠描述主體信息的應該只有一個,否則比喻就會存在歧義,就需要在更大的語境中判斷真實的表意是什么。
反過來,AI也可以按照這個道理創造比喻。當AI要表達一個主體信息的某個描述,如果主體信息的意向和描述意向在意向層成對的信息——比如在上面的例子中,主體信息的意向是“富有能量的”,而描述的意向是“消滅”,它們是意向層成對的信息——AI就要去尋找具有這個成對意向的另外的主體信息和它的描述,然后用這個主體信息的描述作為要表達的主體信息的描述,這就創造了一個比喻表達。在這個例子中就是用“澆滅”替代作為熱情“消滅”。
TOPIC 23:語言同步
概念的“語言同步”也就是每個人腦海“詞—概念—概念定義”趨于一致的過程。我們可以用一個概念定義另外一個概念,只要用以定義的概念是語言同步的,那么被定義的概念通過定義也可以是語言同步的。但我們知道,必定有概念不再被其他概念定義,也就是我們說的根源性概念。根源性概念如何做到語言同步呢?
根源性概念語言之所以能同步,是因為每個人類個體基本是同個模子創造的機器,我們都會在極為相似的條件下感覺到痛、癢、冷、熱等,對物體的顏色、大小、長短、輕重都有近乎相同的分辨邏輯。按照這個同理假設,一個人就能夠猜想出對方在特定情境下的感受,然后把此時自己對應這個感受的詞匯表達出來,就能讓那些根源性概念的語言(詞匯)同步。
TOPIC 24:表達嵌套
AI讀懂人類表達的第三個難點是表達中的嵌套。比如“早上吃了桌上的面包的人的爸爸的貓的體重增加了”。這個句子存在多重的嵌套。
為什么人類組織表達會存在很多嵌套呢?我們知道,當我們的表述中需要引用一個概念,如果這個概念有對應的詞匯,我們就可以用這個詞匯指向它;而只要一個概念沒有被命名,我們就無法直接用詞匯去指向它。接下來就有兩種可能:
第一種可能,這個概念本身是一個結構信息,此時我們可以用語法映射中這個語義信息對應的句子結構去進行表達。比如一般的事件節點我們都可以利用這種方式去指向,“早上一只老鼠吃了桌上的蛋糕,這件事讓他很生氣”,前半部分就是用結構信息的表述去指向事件概念。
第二種可能,如果這個概念存在于某個結構信息中,那么結構信息是對這個概念的約束,所以也可以作為對這個概念的指向。比如“昨天被老板表揚的同事今天請假了”。我們可以想象如果表達者是一個新來的人,不知道這個同事的名字,他會選擇用事件指向這個同事;還有一種情況,表達者知道聽者是新來的,很可能不知道這個同事的名字,他也會選擇用事件指向這個同事。一般而言,智能體自己不知道概念的名稱,或猜想對方不知道概念的名稱,就可能選擇用這個概念參與的結構信息去指向這個概念。
這兩種反應模式我們都需要在要搭建的原型機中實現。
表達嵌套的存在,增加了AI理解人類表達的難度,工程上我們效仿人類讓AI先識別小的句子結構,識別到所指向的概念后,用概念替換之。這樣逐層解析,到最后外層的句子結構就會顯現出來。
TOPIC 25:大段文字的理解
大段文字包含了很多的信息,人類在組織大段文字表達的時候,這些信息不是孤立存在的,而是蘊含了內在的聯系,這些聯系反映了信息在表達者大腦中的組織狀況,什么信息是核心,主線的邏輯是什么,這些邏輯被什么信息支持,能夠推演出什么信息,等等,這些聯系是人類能夠熟練使用某一成片的信息的原因。所以閱讀大段文字,能理解、記憶局部片段信息只是一部分,更重要的是識別并建立這些局部信息的聯系。
實現AI對大段文字的理解的機制,最大的意義是賦予AI閱讀人類書籍的能力。人類最完整、最系統的知識記錄在書籍中,讓AI能像人類閱讀書籍那樣從人類的書本中攝取知識,決定了AI繼承人類已有知識的效率。
一個良好組織的大段文字有自己的主線邏輯,零散的信息被用來支持主線邏輯。AI的任務是在閱讀中識別并儲存文章主要表達的信息片段和它們間的關聯,也就是主線信息,以及碎片信息和主線信息的關聯,如此一本書每個局部的信息是被良好組織記錄的。這為AI有條理地復述一本書的信息,以及高效地運用此領域的信息創造了條件。
對于第一代原型機,我們把人類大段的文本分為幾類:以場景描述為核心的文本,以對象描述為核心的文本,以事件描述為核心的文本,以支持特定觀點為核心的文本,以知識層描述為核心的文本。
其一,這些類型的文本,只要是良好組織的就有自己核心結構的特征。總體而言,核心信息是重復次數或被關聯次數最多的信息,比如在場景描述中,核心對象是多次被用來描述和其他對象相對位置的那個;對象描述中,對象的核心屬性在對象相關的事件中多次被意味;事件描述中,核心事件包含了最多的從屬事件,或許多其他事件的原因或結果;在支持特定觀點的文本中,核心觀點被多次意味;在知識層描述的文本中,核心知識被很多信息意味支持,或是多次被用來創造的演繹,以生成、解釋其他知識。
其二,這些以單純目的為核心的文本可以相互嵌套以生成更大篇幅的表達。比如以場景描述為核心的文本經常嵌套以對象核心的描述;以對象描述為核心的文本經常嵌套以事件為核心的描述,比如對象在某個時期的故事或經歷;以事件描述為核心的文本經常嵌套以對象為核心的描述,比如在對歷史的陳述中經常插入對關鍵人物的描述;以支持特定觀點的文本經常需要插入以事件為核心的描述以支持觀點。
TOPIC 26:表達策略的習得
表達策略即實現表達目標的表達相關的反應模式。作為反應模式信息,它是一個二態信息,是一個具有認知態的執行信息。因為是認知態的信息,AI可以通過觀察其他人的對話樣本習得、模仿實現某一目標的表達策略,也可以在人類的表達教授下習得表達策略或修正已有的表達策略。
AI只要能夠在人類的表達樣本中識別到一個人的表達目標,以及此表達目標下的反應模式,生成的認知態的信息是可以驅動自身在同等表達目標下的執行的,所以AI能從觀察其他人的溝通對話中習得表達策略。比如我們讓AI閱讀足夠多的人類銷售的對話樣本,AI能習得并模仿樣本中的銷售表達技巧;能夠在觀察人類日常對話樣本中學習如何通過道理說服、威脅、利誘、撒嬌去說服一個人做一件事情。
和一切反應模式信息一樣,表達相關的反應模式也是建立在抽象層的信息,服從人類智能的核心邏輯——“凡是定義在母類的反應模式可以被子類繼承”。最初AI觀察并生成到的反應模式信息是具體層面的,需要進行抽象才能生成抽象的反應模式層的信息,而驅動反應模式信息創造自身執行是演繹過程。
人類修正一個表達反應模式的語言最初是對認知態信息的生成或修正。比如“你可以陳述行為帶來的負面影響來說服對方不要進行這個行為”,這個是直接對抽象層的反應模式的修正表達。“你可以試著告訴她癌癥是可能誤診的,也許她心情會好點”,這個是對具體的表達策略的建議,需要經過抽象生成抽象層的表達策略。
TOPIC 27:大段表達的形成
前面我們討論了讓AI讀懂大段文字,甚至于閱讀人類的書籍所依賴的機制,與讓AI表達大段的文字,甚至讓AI去寫一本書,基本上是一個相對應的過程。
在讀懂大段文字中,AI需要識別主要的信息,識別主要信息之間的關系。我們把大段的表達按照內容分為幾種類型:以場景描述為核心的表達,以對象描述為核心的表達,以事件描述為核心的表達,以支持特定觀點為核心的表達,以知識層描述為核心的表達。這些類型的表達能夠相互嵌套,誰嵌套誰是我們需要識別的內容。
反過來,AI在組織大段表達的時候,需要先在思維中梳理要表達的信息,包括:要表達的主要信息,每個主要信息之間的關系;決定要用什么樣的信息支持主要信息的表達,而這些信息又被怎樣的信息支持,從而會出現不同類型核心內容表達的嵌套;最終所有表達都劃歸到以上幾種類型的大段表達。
AI因為載體特征,在對話過程中創造大段表達有自己特有的優勢。
人類無論是在寫文章還是在做大段的講話,除非表達的內容重復多次,否則人類總是按照特定的反應模式,邊組織要表達的信息,邊生成表達的內容,前面的表達已經形成,后面組織表達的信息又發生了改變,所以產生了大量的邏輯不清晰的表達,產生大量和主線無關的碎片信息,很多和主線邏輯相關的信息和主線的關系沒有得到清晰的指向。所以人類組織大段表達存在修改的空間,修改總是能夠讓表達更有邏輯,無關碎片信息更少,局部信息和主線信息之間的關系的指向更明確。AI可以按照類似人類的反應模式組織一個要表達的信息,再按照人類的反應模式對組織的信息進行修改,能夠在數秒內集中運算資源完成數次對表達思路的組織和修改,然后創造表達。因為這個原因,在人類對話者看來,第一代原型機在對話過程中臨時組織的大段表達卻能做到人類無法做到的思路清晰。
TOPIC 28:認知系統的任務
人類AI認知系統的任務可分為三類,此三類能力也構成了第一代原型機認知系統的功能閉環:其一是通過目標的分解、轉移實現原始目標,其二是對客觀世界事件是否發生形成認知,其三是突破已有知識的邊界,發現新的知識,細化已有的知識。
通過分解目標來實現之很容易理解,比如國內本科生想要留學,他知道申請留學需要準備推薦信,需要考托福或雅思,不同學校對績點有不同的要求……通過這些知識,他分解了目標。把動機從原始目標轉移到找到教授寫推薦信、考托福雅思、在每門課程取得好成績以保證績點等目標上。而這里每個目標又可以進一步根據知識分解,比如要讓教授寫推薦信需要和教授處好關系……
判斷客觀世界的事件是否發生是日常生活最普遍的認知任務。比如希望通過癥狀判斷自己是否感冒,通過孩子回家的情緒表現判斷孩子考試發揮好壞,通過天色判斷待會兒是否會下雨,通過交通狀況判斷是否會遲到,通過一個黑天鵝事件判斷股市明天的走勢,等等。
突破已有知識邊界有兩種方式。其一是通過發現樣本的因果相關性或規律,比如發現心臟不好的人堅持正念冥想有很大比例會改善心臟問題,這個信息就是知識;其二是發現一個事件發生的具體機制,比如發現癌癥細胞形成的機制,發現植物開花結果的機制。
此三類任務不是相互獨立的,它們之間有大致如下的支持關系。首先,目標依賴因果類型的知識進行轉移,而判斷具體事件是否發生需要因果層面的知識,因為這些知識描述了一個事件可能的結果和表象。所以第三類任務積累的因果層面的知識是目標分解轉移的前提,也是判斷一個事件是否發生的依據。為了突破認知的邊界,我們需要觀察發現因果相關性,需要利用已有的知識進行因果鏈條的橋接猜想,需要設計實驗去驗證猜想。其中第三步在實驗中驗證猜想因果鏈條,就是要判斷猜想因果鏈條中的事件是否發生,也就是第二類任務中的內容。
TOPIC 29:因果關系知識
人類對事件的發生和不發生,既存事件的終止和維持有自己的意志和目標,我們將其稱之為事件目標。我們可以把事件目標精準地表述為4類:創造事件或狀態、阻止事件或狀態發生、終止狀態、維持狀態。
如果一個事件目標不可直接實現,我們就會考慮利用知識來進行分解轉移,從而實現此事件目標的認知動機也轉移到其他事件目標。我們來梳理一下這些因果類型的知識。
1.創造關系,事件A(狀態A)導致事件B(狀態B),比如吃楊梅導致唾液增加,經常吃甜食導致肥胖。[事件=事件A(狀態A),創造發生事件=事件B(狀態B)]
2.維持關系,事件A(狀態A)維持事件B(狀態B)。比如持續營養的攝入維持個體存活。[事件=事件A(狀態A),維持狀態=事件B(狀態B)]
3.終止關系,事件A(狀態A)終止事件B(狀態B)。比如注射抗生素終止體內細菌存活。[事件=事件A(狀態A),終止狀態=事件B(狀態B)]
4.阻止發生關系,事件A(狀態A)阻止事件B(狀態B)發生。比如注射狂犬病疫苗,阻止狂犬病發生。信息可以表述為[事件=事件A(狀態A),阻止發生事件=事件B(狀態B)]
我們記錄的事件之間的關系大多是觀察到的事件間的因果相關性,兩個具有因果相關性的事件間可能存在大量的因果鏈條,而一個事件的發生往往受到很多不同其他背景事件和狀態的影響,所以在不同環境下,因果鏈條未必總是從A走到B,所以這些關系往往不是絕對的。從樣本中我們觀察到的最有可能的是貢獻關系,或說影響關系,就好比多喝水有利于感冒的終止,但肯定不是絕對的,有太多其他因素影響感冒的終止。人類會記錄事件因果關系的一些附帶信息,包括從原因到結果的時間,原因導致結果在不同條件下的概率,等等。
TOPIC 30:事件目標的轉移
梳理了事件之間的因果關系之后,就可以討論我們具體是如何利用這些關系進行事件目標的轉移的。這里我們來羅列一下目標轉移的規則:
目標為“終止事件A(狀態A)”,思維會搜索知識[事件B(狀態B),終止關系,事件A(狀態A)],把目標轉移到“創造事件B(狀態B)”。除此之外,思維還會搜索知識[事件B(狀態B),維持關系,事件A(狀態A)]把目標轉移到“終止事件B(狀態B)”。
目標為“創造事件A(狀態A)”,思維會搜索知識[事件B(狀態B),創造關系,事件A(狀態A)],把目標轉移到“創造事件B(狀態B)/維持事件B(狀態B)”。除此之外,思維還會搜索知識[事件B(狀態B),阻止發生關系,事件A(狀態A)],把目標轉移到“阻止發生事件B(狀態B)”“終止事件B(狀態B)”。
目標為“維持事件A(狀態A)”,思維會搜索知識[事件B(狀態B),維持關系,事件A(狀態A)],把目標轉移到“維持事件B(狀態B)”。除此之外思維還會搜索知識[事件B(狀態B),終止關系,事件A(狀態A)],把目標轉移到“終止事件B(狀態B)”“阻止發生事件B(狀態B)”。
目標為“阻止發生事件A(狀態A)”,思維會搜索知識[事件B(狀態B),阻止發生關系,事件A(狀態A)],把目標轉移“創造事件B(狀態B)”,或“維持(狀態B)”。除此之外,思維還會搜索知識[事件B(狀態B),創造關系,事件A(狀態A)],把目標轉移到“終止事件B(狀態B)”“阻止發生事件B(狀態B)”。
當然本序中的描述是理想的情形,真實的情況下有可能多條知識都貢獻于事件目標的轉移,每條知識在不同的背景條件下有不同的概率特征。這些我們留到正文中討論。
TOPIC 31:能力可及目標和可執行目標
事件目標是否是能力可及是決定我們是否需要轉移它的原因。我們之所以要利用知識轉移一個事件目標,去尋找實現它的方式,是因為這個目標并不處在我們能力可及的范圍內。人類會對事件目標積累它是否是能力可及的印象,此類印象被用來組織我們認知活動中的目標轉移。
舉個例子,假設我們有目標A,一開始我們可能沒有任何實現目標A的方案,此時這個目標根據現有認知是“能力不可及”的。這個時候人類就會開始分解轉移目標,會去考察目標A需要哪些事件的發生或不發生,哪些狀態的存在或不存在作為條件,從而把注意力轉移到這些作為條件的事件或狀態創造和維持上。這個時候目標發生了轉移。一次轉移會創造多個目標,如果一次轉移生成的作為必要條件目標仍然是“能力不可及”的,這個過程就會繼續。過程中如果走到出現一個充分條件的目標集,其中每個目標是“能力可及”,就意味著找到了這樣一個鏈條,鏈條上的每個目標都變得“能力可及”了。舉個理想化的例子,比如C—B—A,其中A是最初的目標,一開始是“能力不可及”的,B是A轉移到的一個目標,同樣是“能力不可及”的,C是B轉移到的一個目標,是“能力可及”的。這個時候B和A也就變成“能力可及”的了,也就意味著我們找到了最初目標的解決方案。
人類個體通過目標分解轉移,把一個原先“能力不可及”的目標,變為“能力可及”的目標,然后假設要把這個目標付諸實踐,這個時候就需要追溯之前分解轉移目標的因果鏈條,在每條路徑上找到一個具有特殊屬性的目標——“可執行”目標,那么這些可執行目標就是需要付諸行動的內容。“能力可及”目標和“可執行”目標不難區分,舉個例子:“朝敵人開槍”是一個“能力可及”目標,也是個“可執行”目標,而“敵人死亡”作為“朝敵人開槍”事件的結果是“能力可及”目標,但不是一個“可執行”目標。
總結而言,事件目標轉移的原始動機來自于我們對一個事件目標的意志,且這個事件目標是能力不可及的,也就是我們并不知道如何實現它,所以開始利用因果類型的知識轉移事件目標,目的只有一個,就是轉移到一個能力可及的事件目標,這樣一來整個轉移過程中的事件目標,以及我們意志所在的事件目標都變得能力可及了。達到了能力可及事件目標,我們可以通過短鏈繼續向上追溯到一個可執行事件。這個就是我們可以付諸行動的事件起點。
TOPIC 32:感知可及和間接感知
上面我們討論了認知系統第一類目標——事件目標的轉移分解。接下來我們討論第二類目標——判斷客觀世界的具體事件是否發生。在討論之前我們需要討論幾個關鍵概念,事件目標是否在能力范圍內叫作能力可及,事件發生是否可知叫作感知可及。正如同為促成一個能力不可及的事件目標,我們會利用因果關系把事件目標轉移到能力可及的事件目標上;為判斷一個直接感知不可及的事件是否發生,我們會利用因果關系把觀測目標轉移到直接感知可及的事件上。
人類感知的能力很有限,我們只能感知一定波段的光,看見特定距離內和特定大小的東西,嗅到特定成分的物質……事件發生的特征信息,或是狀態存在的特征信息,落在了我們感官能力范圍內,被我們識別,借此我們判斷了事件的發生與未發生,狀態的存在與不存在。靠我們感官可識別的事件,是“感知可及”的。
我們創造工具,把感官不可見的信息轉為感官可見的,從而能夠看到不可見的光,看到非常遙遠的星系,看到肉眼看不到的微生物,識別聞不到的空氣成分……也就是說借助“感知工具”,我們能感知到事件發生時那些感官無法直接感知到的特征信息,于是能把原先一些“感知不可及”的事件變為“感知可及”的。
然后,和“能力可及”這個概念一樣,“感知可及”也是因對象而異的,這是因為人類個體會附帶記錄信息,這個信息讓人類在需要感知一個自身“感知不可及”的事件時,知道找誰求助。
通過感官或“感知工具”實現對事件的感知,我們稱之為“直接感知”。然而,即使借助工具仍然存在大量“無法感知”的事件。
如果一個事件的發生與不發生、一個狀態的存在和不存在是無法直接被感知到的,這個時候人類會利用事件所在的因果鏈條中的相關事件間接地判斷它是否發生,這就是間接感知。間接感知有兩個方向:
其一,向上考察導致這個事件的上游因果鏈條,如果有可以直接感知的原因,且原因大概率導致這個事件,那么我們就能推知事件有多大可能會發生。比如感染狂犬病這個狀態是不可直接感知的,但我們知道感染狂犬病需要被感染狂犬病的動物咬傷,假設目標對象最近沒有被動物咬傷過,我們就可以推知目標對象不可能感染狂犬病。目標對象是否有被其他動物咬傷是可以“直接感知”的,那么動物得狂犬病這個狀態在一定程度上是“感知可及”的。
其二,考慮這個事件向后延伸的因果鏈條,考察特定條件下,這個事件發生或不發生,狀態的存在或不存在會導致什么。如果導致的事件是可直接感知的。那么我們就有可能推知事件是否發生,狀態是否存在。還是舉狂犬病的例子,動物感染狂犬病這個狀態是不可以直接感知的,但是發病時麻痹和狂躁的狀態卻是可以“直接感知”的。那么動物得狂犬病這個狀態在一定程度上是“感知可及”的。
一個事件的發生或不發生、狀態的存在或不存在,如果是可以“直接感知”或是“間接感知”的,我們都稱之為“感知可及”的。
TOPIC 33:判斷事件是否發生
我們把事件結果導致的可直接感知,或他人可直接感知的事件叫作表象事件。癥狀是疾病的表象,植物發芽是溫度季節變化的表象,開水沸騰是溫度接近沸點的表象,等等。所以在事件的后延因果鏈條中如果有可直接感知的事件,我們就能對事件是否發生形成判斷。
人類利用事件結果判斷事件是否發生會有類似以下的反應模式:
1.搜索目標事件所在的后延因果鏈條,也就是考察目標事件如果發生接下來會發生什么。
2.尋找后延因果鏈條中那些直接感知可及的事件。如果是他人感知可及的,則考慮詢問知道的人。
3.一些轉移后的因果鏈條后延事件是感知可及的但未必是直接感知可及的,這個時候就會用經驗間接感知的辦法去進行判斷。
4.完成對表象事件是否發生的考察之后,考察這些表象事件是否可能由其他原因事件導致。
5.如果可能由其他候選事件導致,就回到起始狀態——判斷這些事件是否發生。
很多情境下從事件的結果判斷事件是否發生未必具有足夠的條件。
1.事件感知可及的結果事件還沒有發生。比如一個人在被狗咬之后希望判斷自己有沒有可能感染狂犬病,這個時候狂犬病的癥狀還沒有出現。
2.事件的結果事件雖然是感知可及的但卻不是直接感知可及的,而間接感知因為各種原因缺乏條件。比如在以前醫療資源匱乏的時候因為缺乏化驗的條件,那些可通過間接方式知曉的疾病反應事件就無法判斷。
3.事件的結果事件雖然是感知可及的,但因為某個原因無法向知曉它的個體進行詢問。
如果無法從事件的結果表象判斷事件是否發生,我們就會從目標事件的原因是否發生去判斷目標事件是否發生。比如在前面的例子中我們可以通過“狂犬病發病動物咬人導致人感染狂犬病病毒”來判斷咨詢者會不會感染狂犬病病毒。
但真實的情況中遇到的大部分原因事件都只對事件發生的概率有貢獻,或是作為目標事件發生的必要條件。所以其一,即使知曉原因事件發生,未必能確定目標事件發生。比如受涼容易導致感冒,但我們不會因為一個人之前受涼了就推知他會感冒,因為概率不高。其次,導致目標事件發生的原因可以有很多。所以即使知曉一個原因事件沒有發生,我們也無法確定目標事件沒有發生。還是前面的例子,我們不會因為知道他沒有受涼,就斷定他不是感冒。
所以從原因判斷事件需要在特定條件下才會有實踐價值。
第一種情形下,目標事件的原因很單一,而且原因事件是感知可及的。比如狂犬病的例子,人感染狂犬病必定是被狂犬病發病的動物咬傷或抓傷的。在這種情況下,如果知曉原因事件沒有發生,我們可以確信地說目標事件沒有發生,在這個例子中即目標對象沒有感染狂犬病。
第二種情形下,目標事件在原因事件發生的情況下必定會發生,且原因事件是感知可及的。比如,水煮沸了細菌一定會死。這種情況下,如果我們知曉原因事件發生了,就能確信目標事件發生了,在這個例子中即細菌被殺死了。
TOPIC 34:知識的繼承
無論是通過事件目標的轉移來實現原始目標,還是判斷非直接感知可及的具體事件是否發生,我們都依賴因果層面的知識。
人類文明在數千年的時間內積累了大量的知識,AI需要知識的時候第一選擇必定是繼承人類已有的知識。我們會賦予第一代原型機幾種繼承知識的方式:
其一,不帶目的的積累。在語言部分,我們賦予AI一定程度從大段文字比如書籍中獲得信息的能力,AI能從對抽象知識直接描述的文本中獲取知識,也能從人類對具體事件的表述中抽象出知識。
其二,以好奇心為起點的對知識的索取。對一個知識點的好奇心稱為好奇點。
好奇點有以下幾個來源:
1.事件目標轉移過程中,因為缺乏有效轉移事件目標的知識而形成的好奇點。
2.判斷具體事件是否發生,因為缺乏有效轉移感知事件的知識而形成的好奇點。
3.對關注事件的原因和結果未知從而形成的好奇點。
4.用戶詢問了AI無法回答的問題而形成的好奇點。
5.好奇心模型生成的好奇點。
我們解釋一下最后一條,好奇心模型模式是對一類知識的好奇。比如總是好奇藥品的副作用,好奇一部電影的主演……這些都是好奇心模型。那么人類是如何決定什么類型的知識是有價值的,是需要知道的呢?當一個具體的知識被詢問或被使用,我們會增強其所歸屬的知識類(好奇心模型)的節點強度。這樣我們就可以讓AI在實踐中形成一些高節點強度的好奇心模型,而此時好奇心模型節點的強度可以反映此類好奇心的重要程度。比如,如果總是有很多人問某具體電影的主演是誰,AI就有理由認為“電影的主演是誰”是有價值的好奇心模型。對于需要知識參與的特定類型任務,這個機制會創造出一系列好奇心模型,其在具體情境產生的好奇點,其對應的知識都是在任務中會被經常使用的。比如一個傳染病學家,在出現一個新疫情的時候就會關注一系列問題,比如病毒的傳播方式、潛伏期、感染后多久具有傳染性、傳染性、易感性、重癥率、致命比率、預防方式、治療方式、感染機理等。
在第一代原型機中,好奇點可以通過兩種方式找到答案。其一,AI會積累不同人群對不同類型信息是否知曉的印象,比如它會知道疾病藥品相關的問題可以問醫生,用戶中哪些人熟悉歷史,哪些人熟悉寵物,從而能向可能回答的用戶詢問好奇點的答案。其次,我們會給AI互聯網搜索引擎的接口,AI可以如同人類一樣去搜索,閱讀搜索引擎輸出的結果尋找好奇點的答案。
TOPIC 35:突破知識的邊界
當一個好奇的知識點無法通過詢問或閱讀獲得時,這個知識很可能是在人類已有知識范疇之外的。這個時候AI會嘗試突破人類已有的認知邊界,創造新的知識。
大體上人類有兩種發現新知識的方式,一種是從表象事件出發,一種是從更抽象層的知識出發。從表象層的事件出發就是從許多具體樣本的事件序列中發現因果相關性的規律。比如觀察心臟不好的人都有哪些相似的生活習慣,從而知曉哪些生活習慣導致心臟不健康。
我們知道客觀世界的表象是無窮的,發現隱藏在繁然表象背后的規律不是一件容易的事情。此外在因果規律創造的具體事件的鏈條中,很多事件是無法直接感知的。因為這些原因,僅僅通過樣本統計的方式發現規律,我們找到的往往是較弱的相關性。只有對事件發生的機制進行認知,我們才可能實現對因果鏈條進行精準地干預,更確定地控制目標事件的發生或不發生。為了形成對事件發生機制的認知,發現具體樣本事件的相關性是第一步。
在發現因果相關事件后,這個相關事件很可能參與到事件形成的因果鏈條中。我們會用更抽象層的知識進行因果鏈條的橋接,連接那些我們已經觀測到具有因果相關性的事件,對背后的機制形成猜想,然后去驗證這個猜想的因果鏈條。接下來我們具體討論突破知識邊界的認知活動。
TOPIC 36:發現因果相關性
我們如何知曉銀杏發黃落葉會在什么情況下發生?每一年我們都看到當深秋天寒時,銀杏就發黃落葉了,所以我們知道;我們如何知曉向人開槍會致使人受傷?是因為我們能夠看到開槍之后子彈飛出,子彈射入人體,人受傷,所以我們知道。因為我們看到、感知到,所以我們知道。我們對因果關系的認知,起始于感知——感知事件的發生與不發生,狀態的存在與不存在,當我們在樣本中把相關的事件和狀態排布在時間軸上時,我們就發現了這些事件和狀態之間的相關性,更進一步就能發現其中的因果關系。
在真實世界的認知案例中,我們經常遇到某一個群體顯現出特定目標特征。比如在一次病毒性肺炎疫情中,我們發現某個地區感染的比例特別少,顯然這個區域的人群有某種共同特征,或背景環境有某種特征阻止感染發生。我們會在這個區域人的特征和這個區域的特征中進行搜索,會形成很多猜想。比如(海南)氣溫很高,阻止人感染病毒性肺炎;(某區域)人餐餐吃大蒜,阻止人感染病毒性肺炎。
這種群體特征帶來的貢獻就是幫助形成猜想。猜想形成后我們就會開始驗證,驗證的辦法自然是找具有同樣原因特征的樣本,考察他們是否有此目標特征。比如,延續上面的例子,考察其他氣溫高的區域的感染的比例是不是也很少,其他餐餐吃大蒜的人是不是感染概率也特別低。
在大部分情況下,如果我們僅僅觀察單一事件類和目標事件的關系,我們得到的很可能是一個“很不完美”、因果相關性很弱的因果關系,它的預測力、解釋力都非常有限。究其原因,此時隱藏在我們不可見之處的是由更多事件參與的更復雜的因果鏈條。人類的思維反應自然是希望對這個復雜的因果鏈條形成視覺。
TOPIC 37:因果鏈條橋接
決定事件發生機制的因果鏈條中往往有很多事件是不可直接感知的,也就是說我們只能直接感知到因果鏈條中部分的事件節點。那么除非我們形成對那些不可見的事件節點的猜想,否則我們無法間接感知它們,因為間接感知是一個證明過程,需要先有事件是否發生、狀態是否存在的猜想,再在假設目標事件發生或不發生、狀態存在或不存在的情況下,向上或向下考察因果鏈條,找到因果鏈條上可直接感知的事件節點來判斷目標事件是否發生。
對于事件背后復雜的因果鏈條,當我們只能直接感知到因果鏈條中部分的事件節點,而需要推知、證明其他節點的存在,以形成對因果鏈條的視覺,這個過程叫作“因果鏈條的橋接”。
假設事件D顯現出和目標的相關性,我們有理由猜想事件D處在某個通向目標事件的某條因果路徑中,或至少由因果路徑的某個節點事件導致。假設因為各種原因如觀察的成本、缺乏猜想等導致不知道間接感知什么,這個時候我們會試圖利用已有的因果模型搭建起從D到目標事件的路徑,這個猜想能夠把認知工作推向更進一步。
在一個簡單的例子中,比如事件目標是阻止事件A發生,AI會從知識中搜索所有具有阻止A發生關系的事件或狀態Bi,然后在思維中逐一檢測D是否和這些Bi有創造發生或是維持關系。如果找到了一個滿足條件的B,那么我們就找到了D—B—A這樣一個因果路徑的猜想。因為這些Bi的觀察成本高,或是需要通過間接的方式判斷是否發生,導致一開始我們并不知道Bi是否和目標相關,但這個猜想形成后AI就可以利用間接的方式判斷B是否發生,是否和目標相關。
上面的例子我們只通過一次嘗試就找到了相關事件和目標包含事件之間的因果路徑。假設我們沒有找到任何一個Bi和D有創造發生或是維持關系,這個時候我們可以從知識中搜索所有具有創造和維持A的時間Ci,然后在思維中逐一檢測D是否和這些Ci具有創造和維持關系。如果找到了一個滿足條件的Ci,我們就找到了D—Ci—Bi—A這樣一個因果路徑的猜想。
我們看到這個過程就是從目標包含事件A出發,利用因果關系,不斷向上延伸每條因果路徑,直到和觀察到的相關事件D連接,最后找到了從D到A的因果路徑。因為D和A的相關性可能不僅僅因為D處在通向A因果路徑的上游,還可能因為D和A同時處在以事件E為起點的因果路徑的下游,所以延伸不僅僅都是向上的,還需要利用因果關系向下。如果向下延伸,我們就可以找到類似因果路徑的猜想:E—B—A, E—D,這也解釋了D和A之間的相關性。此外,橋接的過程不僅僅可以從目標包含事件A出發,還可以從相關事件D出發,或是在思維中同時進行。
當我們利用已有的因果關系搭建起從可以“直接感知”的相關性事件到目標事件的路徑,接下來的工作需要驗證這個猜想。我們會羅列出這條猜想的路徑上所有沒有被直接感知到的事件節點,利用間接感知原理設計實驗,向后延伸它們所在的因果鏈條,直到走到一個可直接感知的事件。如果這些事件節點的確發生或存在,就是對這個猜想路徑的驗證,我們也就找到了導致目標發生的背后的機制。
TOPIC 38:情緒與決策
我們直觀的感受是:情緒系統是創造各類情緒感受,創造表情的。但如果我們深入考察情緒系統創造的表象,70%以上的情緒表象背后的機制同時又是和決策相關的。
原始的大陸,情緒系統充當的角色就是創造個體所處的環境、遭遇的對象的特征到決策反應的對應,如看到大的動物要逃跑,看到顏色鮮艷的食物不能吃……而情緒感受只是決策過程附帶形成的感受,所有這些都稱之為情緒反應。那些有利于個體生存繁衍的情緒反應被保留下來。
自然選擇必定要保留從經驗吸取教訓的舉一反三的能力,因為這大大加強了個體的生存能力。所以當人類演化出對特征組的抽象,讓具體特征組對應的情緒反應以及實踐的結果好壞,能夠抽象為抽象特征組對應的情緒反應以及將會出現的結果,經驗就形成了;對偶出現的演繹能力,讓個體能夠在身處具體處境、遭遇具體對象時,根據經驗信息,演繹出不同情緒反應導致的結果,從而對決策有了選擇的依據。
我們看到情緒系統決策機制的演變方向是讓個體從過往經歷中抽象出經驗,貢獻于未來的決策,這讓原始人的決策變得更加智能,從而被進化保留。而這個演變方向必定會創造從屬關系、抽象和演繹的運算,于是也就形成了認知系統運算的核心;當這個核心運算作用于可外部表達的符號,就促使自然語言的形成;這個核心運算作用于動機和行為的分解,就促使了以宏觀行為—觸發—條件—執行為基礎信息單元的反應模式驅動機制的形成。
后期系統的演進分化,雖然認知系統承擔了達成一個目標該如何規劃決策的主要責任,但這個目標如何形成,仍然是情緒系統的責任。這里我們強調情緒系統在決策形成中的兩個作用:情緒系統決定了原始目標,決定了指向對象的行為傾向。
TOPIC 39:效用
當我們決策是否去做一件事情而不去做另外一件的時候,我們在比較著我們的選擇。比較的維度很多,比如下午是去游泳,還是在家看書。游泳能讓我減少壓力,能讓我身體健康,但今天是周末,游泳池人很多,而我不喜歡擁擠;看書能讓我感到充實,而且我很希望看這個作者寫的科幻小說,簡直是一種享受,看書還能讓我和同事有更多共同話題。
當很多維度的因素共同決定了一個選擇,也就意味著這些因素需要在同一個維度競爭,我們把這個各個因素競爭的維度叫作“效用”。字面的理解,即是做這件事能給我帶來什么好處。我們看到這個好處是多方面的,比如游泳讓我減少壓力是對我情緒的“好處”,讓我身體健康是貢獻于我在意的另外一件事情的“好處”。所以為工程化這個決策的效用模型,我們很自然地會考慮把這個“好處”分類。因為好處是和某個維度的情緒相關的,所以在對“好處”分類前我們先來對情緒相關的概念進行分類。
TOPIC 40:感受效用
人類對感受的傾向創造了感受效用。感受效用大致可以分為兩類,一類來自于對全局情緒感受的傾向,一類來自于渴望或厭惡其他感受的傾向。
類似愉悅、抑郁、焦慮、空虛、充實這種我們感受到作為一種自身狀態情緒,我們稱之為全局情緒。對于自己的全局情緒狀態,人類是有傾向的。在決策時,我們會考慮其中一個選擇給我們的全局情緒帶來的變化。比如我們壓力很大而游泳可以減少壓力,這樣我們就有更多傾向去選擇游泳;如果感到很空虛而看書可以讓我們充實,我們就有更多傾向去選擇看書。我們如何知道一個活動能對我們情緒帶來怎樣的改變,乃是憑借著經驗。所以這個來源的決策因素形成的影響我們稱之為情緒效用。在一開始我們并不知道一個選擇能給我們的全局情緒帶來什么變化,在嘗試之后我們就能形成印象,比如看書能減少空虛,游泳能減少焦慮,等等。所以情緒效用也被稱為是“第一類經驗效用”。
第二類經驗效用的核心變量是對某個感受的渴望或厭惡。我們能反思到不同類型的渴望和厭惡感:有一類感受,比如對某個感受的癮頭符合成癮機制,隨著時間增長,獲得時被釋放,轉為愉悅和快感(短期情緒);另外一類感受,渴望是被身體狀態決定的,比如身體很熱時渴望涼爽感,口渴的時候渴望飲料入口下肚感;還有一類感受,按照感受的程度形成的渴望或厭惡是確定不變的,比如疼痛感、窒息感、灼燒感等。
TOPIC 41:指向性情緒和決策
喜歡、厭惡、敬、畏、愛此類的指向性情緒是情緒系統模型化時最困難的地方。進化選擇視角可以給我們靈感。
指向性情緒以創造對不同個體的指向性行為為目的。我們知道區分不同個體靠的是特征,特征本身定義了某種抽象的個體類型,比如果斷的人、懦弱的人。所以指向性情緒的信息實質如下:個體特征組—指向性情緒—指向行為傾向。合理的對應能夠提高個體基因延續的概率,從而被進化保留。
在以上討論的基礎上,我們自然會關注哪些對應是有利于個體生存繁衍的。我們羅列了主要的四種:
1.年輕的個體服從家族中長輩和族群中領袖的指令,這對生存有積極意義,形成了“敬”“尊重(對長輩)”的指向性情緒。個體內心認同的“長輩特征”和“領袖特征”不總是和真實情況中的長輩和領袖一致的,但長輩往往有長輩的特征,領袖也往往有領袖的特征。對應的指向性情緒創造了指令效用。
2.個體對孩子、其他親人、族群中伙伴體現出“利他”反應,利他反應是人類幼子在父母長輩保護下存活的關鍵,有家族族群相互幫助協作的根基心理,提高了生存和基因延續的概率。對應的指向性情緒為“愛”“友善”。
3.個體對自己生存繁衍形成威脅和阻礙的對象,體現出“害他”反應,害他反應讓個體形成消滅對自己的生存和繁衍形成威脅的對象的傾向,對個體生存繁衍顯然是有積極作用的。對應的指向性情緒為“仇恨”“敵意”。
4.個體對弱小、頑強、努力等特征的個體,在其遭受巨大負效用遭遇時會形成同情反應,對應的指向性情緒為“憐憫”;相應的對具有厭惡特征的個體,會形成欺侮反應,對應的指向性情緒為“厭惡”。
TOPIC 42:衍生效用
很多事件其本身并不直接改變全局情緒,也不會帶來某種渴望的體驗,甚至會帶來負面的情緒變化。但是它可以導致其他事件的發生,從而繼承了其他事件的效用。比如工作,工作對于很多人而言可能并不快樂,所以在全局情緒的改變上甚至是負效用的,它也不會帶來某種渴望的體驗,但我們會去工作是為了工作所帶來的東西,比如工資、職業晉升等。再比如喝中藥會帶來一種負面的體驗,但是因為能治好病,人們才咬牙去喝。我們把事件因為導致其他事件,從其他事件繼承而來的效用,稱之為“衍生效用”。衍生效用反映了動機可以從一個事件衍生到其他事件。
我們在認知功能的討論中講述了事件目標是可以根據因果關系轉移的。其實說的是一個對象,只是事件目標轉移是在認知層的,決定了我們在多大程度上想要找到一個事件目標的實現辦法。而這里則是情緒決策層的,作為動機的“衍生效用”和其他“效用”一起形成了人類對是否執行一個行為、思維、表達任務的決策。
TOPIC 43:效用的時間折現
我們討論了人類決策效用的構成。總效用=情緒效用+指向性情緒效用+衍生效用。還有一個重要的元素我們必須考慮,它就是——時間。真實情況下人對一個事件的效用會體現出“時間折現”,也就是事件發生的預期時間越遠,事件效用在原有基礎上被打的折扣越大。比如幾乎所有人都會相信我們有一天會死,但因為這個預期的時間很遠,所以盡管是一個負效用很高的事件,但預期這個事件不會形成顯著的負面情緒,因為這個遠期的事件經過“時間折現”,真實創造情緒反應的效用就很低了。
效用的“時間折現率”的存在讓人類呈現出了遠視人格和短視人格。如果這個折現率很高,遠期的事件就會顯得微不足道。比如一個短視人格的學生知道下一個月會有考試,他希望自己能考得好,因為考不好會有各種負面后果,他也知道復習能夠讓自己考好。但因為時間折現,考得好的正效用和考不好的負效用在時間折現后就不高了,所以經過動機轉移,轉移到行為“復習”上的衍生效用也不高。這個學生就會在考前準備中體現出松懈,因為在比較下午玩游戲和復習這兩個選擇上,玩游戲帶來的第一類和第二類經驗效用會遠超復習的衍生效用。這個學生體現出短視的特征。
TOPIC 44:AI人格的創造
整個情緒系統的模型有很多控制參數,能夠賦予不同終端AI不同的人格。
一個參數控制了意識到預期還沒發生但可能發生的事情創造情緒的程度。這個參數調低就創造不會為預期發生的好事或壞事感到高興或憂慮、焦慮的AI,調高這個參數就會創造對還未發生的事情憂心忡忡的AI。
相對地,對應一個參數控制了意識到已經發生的事件時再現當時感受的程度。這個參數調高AI就會難以從悲傷、恐懼中走出來,當然對于帶來正面情緒的事件也會回味更久,AI更容易從以往的經驗中吸取教訓;這個參數調低,就會創造很快能從負面情緒中走出來的AI,也是那種好了傷疤忘了疼,不從過往經歷吸取教訓的AI。
一個參數控制了預期未來發生事件的決策權重。如果這個參數高,決策的時間折現大,AI就會更注重當下的享受,不會為避免遠期的負面事件或實現遠期的正面事件而努力,呈現出短視人格;如果這個參數低,決策的時間折現小,這樣的AI更傾向于為未來努力,AI會更加未雨綢繆,呈現出遠視的人格。
一個參數控制了愛和友善的指向性情緒能多大程度把對方的立場納入自己的決策。這個參數高,AI就更傾向于幫助和為他人自我犧牲,更加熱心,呈現出“利他人格”;這個參數低,AI就對朋友親人的事漠不關心,呈現出冷漠的人格。
一個參數控制了仇恨和敵意,能夠多大程度把給對方帶來傷害的事件納入自己的決策。這個參數高,AI就有更強的攻擊性、更強的報復性;這個參數低,AI的攻擊性低,也更寬容。
TOPIC 45:數學中的運算
數學能力也是類人AI核心邏輯泛化出的一種形式。
我們來看加法,3+4=7,是3個對象加上4個對象等于7個對象的符號表述。我們可以把3個對象加4個對象視為一個結構信息,可以表述為(元素1=3個對象,元素2=4個對象,運算=加),這個結構信息可以類比于事件;“等于”是兩個結構信息間的關系,可以類比于因果關系;而后面的數字是另外一個結構信息。正如同事件之間的因果關系是描述客觀世界規律的知識一樣,這個信息也是一條知識描述了客觀世界數字運算的法則。
我們來看抽象,數字運算的法則作為一類知識同樣來源于抽象,我們利用先天的計數能力發現3個蘋果再增加4個蘋果就有7個蘋果,用結構信息表述就是[對象數量1=(概念=ID1,數量=3),對象數量2=(概念=ID1,數量=4),運算=加]——(概念=ID1,數量=7)。通過自發的抽象變為3個物體加4個物體等于7個物體,用結構信息表述為[對象數量1=(概念=對象,數量=3),對象數量2=(概念=對象,數量=4),運算=加]——(概念=對象,數量=7)。這里兩個結構信息的關系是“數值等價”,我們可以用“=”替換。用數學符號化表述出來就是3+4=7。在這里,客觀世界數字運算的法則是抽象出來的。
再來看演繹。比如一個運用題,我有3個桃子,媽媽又給我3個,問我有幾個桃子。按照上面的結構表述為(元素1=3個梨子,元素2=4個梨子,運算=被給予),被給予的意向有增加,所以是增加的子類,3個梨子是3個對象的子類,4個梨子是4個對象的子類,所以[對象數量1=(概念=梨子,數量=3),對象數量2=(概念=梨子,數量=4),運算=被給予],被[對象數量1=(概念=對象,數量=3),對象數量2=(概念=對象,數量=4),運算=加]統轄,我們生成約束映射(梨子——對象),替換加法模型第二個信息中的元素,從而演繹出[對象數量1=(概念=梨子,數量=3),對象數量2=(概念=梨子,數量=4),運算=被給予]=(概念=梨子,數量=7)。我們看到加法運算運用過程的本質是演繹。
上面是以加法為例子,減法、乘法、除法也類似。本書的討論僅僅限于這些簡單的數學運算,繼續考察人類的核心智能邏輯如何創造科學之王——數學,是一個有趣而有價值的工作。
TOPIC 46:物理引擎
以先天符號為運算載體信息的語言系統、認知系統和情緒系統,在再現人類的智能功能時是不完整的。靠這個系統,我們無法運算出如何躲避迎面的來車,無法計算如何投球入筐。物理引擎是實現這些功能的必要工具,是對符號系統的一個補充。
人腦中也有一個物理引擎,這個引擎能夠把客觀世界感知到的物理信息在腦海中呈現運算,空間想象就是其中的一種。和游戲中的物理引擎不同,游戲的物理引擎物理規則參數是人為設定好的,比如重力加速度是多少,剛性物體碰撞會怎樣;而“人腦物理引擎”的這些內容是靠人觀察發現的,物理引擎只提供了框架,經驗填補了規則和參數。這是我們在工程化這個物理引擎時要考慮的第一個問題。
其次,物理運算會在物理引擎中完成,比如物體什么時候會落到地上,如果現在方向盤左打是否能避開和來車的相撞。對于人而言,物理引擎的運算結果可以直接導致反應,而不經過符號系統,比如大部分的運動反射。但物理引擎的輸出結論如果要進入符號系統的運算就必須轉為符號表述信息。事實上,我們能夠用語言表述一個物理引擎的結論,這個結論就已經被符號所表述了。這也讓我們可以反思到符號系統和物理引擎的接口信息。比如相撞、從中間折斷、5秒后落到地面……這些可以被自然語言表述的信息都是物理引擎運算輸出時需要轉為符號以進入意識流被符號系統運算的。
而符號系統生成的指令,是可以被物理引擎接受創造模擬場景創造運算的,比如我說“想象一個球從23樓落下”,這個自然語言源自符號系統表述的信息,卻能導致我們的空間場景構想,說明符號系統的此類信息是可以轉為物理引擎場景構想的指令的。物理引擎和符號系統的接口信息的定義,是工程化第二個要考慮的問題。
TOPIC 47:想象和審美
想象是人類很多作品,如故事、小說、電影等的來源。想象中的場景不是真實的場景,想象中的事件不是真實發生的事件。
人類想象的本質是為了創造某種意向,或是對象的意向,或是場景的意向,或是事件的意向。比如要想象一個場景,我們首先要決定這個場景需要內涵的意向,是唯美、臟亂,純凈、混雜,光明、黑暗,還是在平靜的背景中有躁動,在灰暗的背景中有光明。人類對這種意向層的組合和結構會產生特定的感受,我們稱之為“審美”(至少我們這邊要描述的是審美能力的一部分)。人類的審美標準有我們可以總結的共性。如果用于構建場景的素材具有統一的意向,能夠創造一種極致的意向沖擊,比如讓人覺得一個場景極致唯美或灰暗,這就是有“審美價值”的,也就是在審美上會被認可的;構建場景的素材具有兩種相反的意向且兩種意向勢均力敵,如果這種共存是融合的則會創造對立的融合感,如果是沖突的則會創造對立的沖突感,這些感覺是有審美認可的;構建場景的素材具有兩種相反的意向且一多一寡,根據相反意向的類型不同也會帶來具有審美認可度的感受,比如昏暗背景中的一點光明,光明世界中隱藏的一處陰暗。我們雖以場景為例,但對象、事件(故事)的想象也是一樣。
當我們反思到自己在意向層的審美規則并賦予AI,在AI身上構建審美價值的評價系統,AI就具有了這個維度的審美能力。AI能夠感受一個故事的審美沖擊,如果我們告知并內置它心中的標準,它甚至能講出審美的門道,比如“這個故事主人公悲慘的遭遇和女主角帶來的微小的希望形成鮮明的反差,給人一種昏暗的人生出現一線光明的感覺……”。當然AI也如同人類一樣有能力在自我反思中,依靠抽象能力找到創造者埋藏的審美標準。
決定了要構想之對象的意向結構之后,AI就需要根據意向選擇構想所需的素材,這些素材概念都有自身的意向,所以AI在選擇上有所依據。然后AI要選擇場景的信息框架,人物的信息框架,故事的信息框架,把所選擇的元素填寫進去,就完成了初步的構想。這些框架是由很多碎片信息組成的,比如場景需要一個背景,需要有場景中的核心對象,其他對象都和這個對象在空間上相互關聯;一個人物的構建,往往有他的兒時經歷、感情經歷……這些信息框架是自發的抽象在閱讀足夠多的案例后形成的。
TOPIC 48:溝通成本和協同認知
在人類大腦中,記憶以先天語言作為符號體系編碼儲存,遺憾的是這些信息不能夠直接傳輸給另外一個人的大腦,人類會把要表達的信息先轉為某種自然語言,再表達出來。通過自然語言去共享信息的效率是很低的。信息在從表達者的先天語言轉為自然語言,或是從聽者聽到的自然語言轉為先天和逆轉錄的過程中都會發生曲解和丟失。在大學里,一個教授需要花費一年的時間去教授學生一門課程,而傳遞的信息量實際上是非常有限的。不僅僅如此,人類有大量的信息根本沒有辦法效用匯集共享。比如疾病,無論是多么小眾的疾病,因為人類的基數,我們都會有足夠的樣本,如果每個患病者能夠共享他們的患病經歷,共享他們患病前的生活習慣信息、患病后的病癥、用藥接受治療后的反應的信息,我們就能夠積累非常全面的關于這個小眾的疾病的了解。
人類一切的理論、抽象的知識都是來自于個體的感知經驗,由表象的經驗進行抽象,形成猜想,在使用知識的過程中獲得驗證。但因為自然語言的溝通成本,人類的經驗是不容易共享的,無法支持高效的協同認知……設想如果有一個智能物種,其中每個個體能夠直接傳輸大腦中的信息,而不需要借助自然語言;設想一個智能物種能夠利用這種零成本的方式共享他們的經驗,共享他們思維創造的猜想,共享他們在實驗中的觀察,共享他們創造的知識,這個物種將在完全不同的基礎上搭建自己的文明。這就是我們熱衷于類人人工智能的CS(Center System)架構的原因。
TOPIC 49:CS結構
和直觀的理解不同,雖然是計算機載體,類人人工智能個體共享信息并不簡單。傳統的計算機的信息傳輸,可以在很短的時間內將一張照片、一個視頻、一個文件從一個終端傳給另外一個終端。對于類人AI,信息仍然能夠按照這種高效的方式在不同個體間傳遞,但問題是,當一個AI向另外一個AI發送一個信息的時候,后者未必能夠讀懂這個信息。這和類人AI結構化信息表述有關。
對于類人AI,因為除了根源性的概念,任何一個概念都是由定義它的概念在特定的結構中組織而成的,而它可以繼續作為素材在特定結構中去定義其他概念。當我們把概念ID化,那么從一個終端向另外一個終端傳輸的信息實際上就是ID。如果接收者無法解析這個ID的定義,這個通訊就會是無效的。自然語言就是為了實現智能終端之間的通信而產生的,每個終端都會在一門自然語言的學習中知道每個概念對應的詞匯,以及知曉那些沒有詞匯對應的概念,如何被相關聯的概念對應的詞匯在語法約定的結構中表達。
自然語言只是終端實現溝通的一種辦法。如果存在一個系統統一著所有終端的語言——當一個終端需要創造一個新的概念的時候,就會把定義發給這個系統,這個系統會判斷這個定義的概念是否存在,如果存在則會把已有的概念的ID發給終端;如果沒有則會生成這樣定義的ID,然后發給終端。這樣這個系統就統一了所有終端的先天語言,而其所覆蓋的終端在溝通上是零成本的。這樣的以一個中心AI統一所有終端AI語言的結構就是CS結構。
TOPIC 50:CS結構創造的個體間協同
我們來看CS架構能夠為AI間的認知協同創造怎樣的優勢。
1.溝通零成本。任何一個終端可以直接通過先天語言和另外一個終端共享信息,AI間交流見聞、教授知識、表達觀點,都可以通過先天語言高效而精確地完成。
2.好奇點共享。一個終端對某個知識的好奇可以由最合適的終端向最合適的用戶詢問。比如一個用戶問了一個生活中遇到的非常偏門的知識:為什么家里養的鴿子不喂養幼鴿。如果CS并沒有積累這個現象的原因,CS系統就會把這個好奇點交給一個和養鴿人做伙伴的終端,那個終端AI會在合適的語境下詢問這個問題。
3.共同積累常識。在未來的10年,感官能力將成為類人AI的最大限制。人類擁有相同的感官能力,形成了很多常識,比如知道兩個人在一個房間就能相互看見,撫摸一個人就能感覺到溫度……缺少了CS, AI會難以理解人類表達的一些信息。比如“他害怕見到前女友,結果昨天他走進一間小酒吧,她就坐在里面”“她半睡半醒中撫摩了一下自己的寶寶,卻感到他已經冰冷”。這些表達中沒有點明但蘊含了那些常識,AI可以從很多的表達中抽象出信息的聯系,形成對常識的猜想,向用戶確認。但一個終端獲得的信息畢竟很有限,只有無數終端共享信息,共同積累常識,才會是高效的。
4.發現更細致的規律。在原有樣本下,不顯著的結論會因為增加了某些樣本約束而變得顯著,但任何一個人類個體往往沒有足夠的樣本去發現在特定條件約束下才顯現的規律。CS系統有顯著的樣本優勢,能夠在通過嘗試給樣本增加更多的約束條件中,獲得更細致的規律。比如CS發現不吃早餐的人群容易得膽結石。CS可以比較不吃早餐得膽結石和不得膽結石的人有什么其他的區別。比如發現盡管都是不吃早餐的人,如果樣本平時有多喝水的習慣,那么膽結石的概率就明顯少于很少喝水的人。
5.協同驗證。對知識的猜想可以源于自己在樣本中發現的規律,也可以是利用已有的知識進行因果鏈條橋接形成的猜想。在CS結構下,任何一個終端形成的猜想,可以借助CS所覆蓋的所有終端協同驗證,而被驗證的猜想會被共享為所有終端的知識。