一篇文章搞懂機(jī)器學(xué)習(xí)——文科生寫給文科生的人工智能科普

這篇文章是科普的嘗試,本人并不熟知人工智能,且咨詢了一些專業(yè)領(lǐng)域的好友后也得知這一領(lǐng)域的學(xué)界對(duì)一些概念定義仍有模糊,如有錯(cuò)漏請(qǐng)各位批評(píng)指正。
本文的理解和例子很大程度上參考了以下視頻:

近來,隨著國(guó)內(nèi)資本終于準(zhǔn)備好迎接又一輪技術(shù)紅利,Chat-gpt相關(guān)的熱潮再次掀起。許多并不關(guān)心技術(shù)前沿的人文社會(huì)科學(xué)研究者也感受到了前所未有的危機(jī)感,原本就處在此領(lǐng)域的學(xué)者們則依舊焦慮。筆者在法學(xué)、哲學(xué)的若干課上幾乎無數(shù)次地聽起教師同學(xué)談起相關(guān)話題,若僅是為了圖一樂了解一下“人工智能是啥”,則本文并無意義。本文默認(rèn)讀者已經(jīng)對(duì)人工智能、Chat-gpt、AlphaGo、自動(dòng)駕駛、DeepL、AlphaFold、計(jì)算機(jī)算法、大數(shù)據(jù)、云計(jì)算、元宇宙、腦機(jī)接口等新潮玩意有所基本認(rèn)識(shí),且期待對(duì)人工智能進(jìn)行一個(gè)更深刻的思考,即正追問:“人工智能到底是啥?”“它的原理又是什么?”
長(zhǎng)久以來,筆者觀察到無論是普通網(wǎng)民還是身邊熟人——乃至一些學(xué)術(shù)界頗有能力、地位的學(xué)者——對(duì)人工智能的理解趨向于兩個(gè)極端:要么將其視作極其淺薄的純技術(shù)性產(chǎn)物,只能簡(jiǎn)單地按照特定流程應(yīng)答預(yù)設(shè)而無關(guān)乎思想與心靈,認(rèn)為其對(duì)人類社會(huì)的動(dòng)搖充其量不過是又一次機(jī)器取代人類,只需要在技術(shù)哲學(xué)、社會(huì)學(xué)的角度上加以反思;要么將其視作神秘而強(qiáng)大的力量,那已然覺醒自我的他者與人類交往迫在眉睫,充滿科幻小說式的憧憬與想象??梢哉f,這兩種觀點(diǎn)都是一些關(guān)于人工智能的信念,就立場(chǎng)而言則都有些獨(dú)斷。而任何討論的基礎(chǔ)一定是客觀的共識(shí)性認(rèn)識(shí),否則充其量只是“暢想”。本文旨在表達(dá)人工智能并非不可認(rèn)識(shí)之物(事實(shí)上,許多理工科的本科生就在字面意義上“手搓人工智能”),并盡可能用易懂的語言讓各位基本理解其底層機(jī)理,區(qū)分于泛泛而談的、玄乎其玄的、不知所云的博眼球式科普。由于本人并非科班出身,如有疏漏錯(cuò)誤敬請(qǐng)指正。
首先是一些我的一家之言,作為引言:
1、任何聲稱“現(xiàn)有的人工智能已經(jīng)產(chǎn)生人類意義上的自我意識(shí)(區(qū)分于可能有人主張萬物有靈或泛我論)”的觀點(diǎn)都是獨(dú)斷而不可靠的,目前的人工智能與該狀態(tài)仍然有質(zhì)的差距。因而,任何基于此設(shè)想的討論,例如“人工智能叛變”“人工智能統(tǒng)治人類”等等都依舊是假想語境里的討論,甚至不是可預(yù)見的近未來話題。
2、人工智能在基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)應(yīng)用(借助大算力大存儲(chǔ)硬件)后產(chǎn)生了質(zhì)變,部分突破了圖靈測(cè)試的中文屋悖論。這將是是一個(gè)關(guān)鍵節(jié)點(diǎn),深度學(xué)習(xí)的人工智能與普通問答機(jī)器人的區(qū)別極大,不可同日而語,但依然遠(yuǎn)遠(yuǎn)稱不上真正的智能。
3、此次人工智能革命將對(duì)社會(huì)產(chǎn)生深遠(yuǎn)的影響,影響力的下限與機(jī)床、互聯(lián)網(wǎng)的同等,上限不止于蒸汽機(jī)的誕生。
4、當(dāng)下的人工智能可以部分地模擬人類思維的功能——其機(jī)理上極可能一致——并且對(duì)強(qiáng)依賴于這些功能的職業(yè)和人群進(jìn)行取代(不考慮經(jīng)濟(jì)成本和法律倫理問題時(shí))。具體而言,若有一個(gè)職業(yè)是宣稱“零基礎(chǔ)培訓(xùn)X天可上崗”“X天速成”,或讓你認(rèn)為“我只要努力學(xué),花上足夠長(zhǎng)的時(shí)間,早晚有一天是能順利做成的,不存在任何阻礙”,那么便可以被全部或部分地取代。例如,純粹面向商業(yè)用途不具有藝術(shù)價(jià)值的插畫、翻譯、駕駛等。反之,若是有一些領(lǐng)域人們普遍認(rèn)為需要靈性、悟性,或是我們自覺并非任何人都能達(dá)到那樣的水平,天才與庸人有著不可逾越的鴻溝,那么當(dāng)前的通用人工智能無法取代人類。例如,數(shù)學(xué)理論研究,文學(xué)創(chuàng)作等。
*具體而言,筆者并不認(rèn)為人工智能與人類的區(qū)別是理性和感性的區(qū)別。人工智能當(dāng)下能歸納地處理綜合命題、經(jīng)驗(yàn)論領(lǐng)域的問題,但無法抽象演繹地處理分析性命題、理性主義領(lǐng)域的問題。注意,對(duì)語義的分析并不算此類,因?yàn)檎Z法規(guī)則依舊是綜合的,而高階邏輯的反思是尚且無法作出的(但并非理論上不可能),具體在人類社會(huì)中就是“妙手偶得”“創(chuàng)見”一類東西。
5、人工智能在作為一個(gè)客體的意義上依舊是完全可控的,不涉及任何主體間性或其他智慧體與人類接觸的問題。若將對(duì)技術(shù)利用的探討上升到某種“關(guān)系”的探討,則要么是在主奴辯證法這類觀念論立場(chǎng)去談,要么是基于當(dāng)下狀態(tài)對(duì)人類思維的一種揣度和推演。
需要強(qiáng)調(diào)的是,本文不探討“人工智能與社會(huì)認(rèn)可”的任何問題,例如某寫詩(shī)機(jī)器人被出版了代表它被社會(huì)認(rèn)可了、某機(jī)器人被授于了公民地位,均不能在本質(zhì)上說明任何事情。要分享的僅僅是人工智能究竟是什么,其底層邏輯是什么。
?

許多人在思考人工智能相關(guān)問題的時(shí)候,往往會(huì)追問“智能是什么”。這是難以回答的,但作為人類而言,我們?nèi)粘UZ境中說的“智能”往往指的是那種處理唯有人能做的事情時(shí),需要通過人腦對(duì)信息進(jìn)行處理的能力。
我們姑且不去深入這一問題,回過頭來說人工智能是什么。
考慮到計(jì)算機(jī)領(lǐng)域甚至仍然存在“魯棒性”這樣的詞匯,除了用來忽悠投資人和網(wǎng)上的普通受眾以外,任何欲圖對(duì)其加以了解的人都不應(yīng)當(dāng)只滿足于字面意義的理解,而應(yīng)追究其本質(zhì)。換而言之,“人工智能”這一概念的提出或許期許著它形成真正意義上的智能,但它仍基本是以計(jì)算機(jī)程序作為形式結(jié)構(gòu)的,其本質(zhì)上是一個(gè)以計(jì)算機(jī)算法為核心,以解決問題為目的而誕生的小玩意。同樣地,“神經(jīng)網(wǎng)絡(luò)”一詞雖然是一個(gè)絕妙的象征和比喻,其在功能上是個(gè)妥當(dāng)?shù)念惐?,但其結(jié)構(gòu)是否與生物意義上的神經(jīng)一致似乎并不那么站的住腳,立足于字面意思進(jìn)行揣度和理解只是南轅北轍。
那么,基于神經(jīng)網(wǎng)絡(luò)的人工智能能做什么事情呢?
總的來說,它做的事本質(zhì)上是“分類”。即將一類數(shù)據(jù)與另一類數(shù)據(jù)分開,它就是要去求得那條分界線(面)究竟在哪里。這一分界一旦求得,也就可以對(duì)更多的數(shù)據(jù)作預(yù)判,因此也可以籠統(tǒng)地講,它所做的是“判斷”的工作。
讓我們從經(jīng)典的房?jī)r(jià)問題入手。為便于理解,可以設(shè)想這樣一個(gè)情境:你是某地產(chǎn)公司的員工,負(fù)責(zé)管理公司旗下成百上千套房產(chǎn)的檔案。房產(chǎn)檔案非常簡(jiǎn)潔,內(nèi)容僅僅有三項(xiàng):“房產(chǎn)所屬地(精確到市)”“房屋售價(jià)(總價(jià))”“房屋總面積”。照理說,整理這些檔案并不算個(gè)難題,但一次突如其來的火災(zāi)席卷了檔案室,大多數(shù)檔案完好無損,但也有一些出現(xiàn)了殘損?,F(xiàn)在,你的手頭堆滿了“房產(chǎn)所屬地”殘損的檔案,老板安排你負(fù)責(zé)整理這一部分。值得慶幸的是,你很清楚失火的房間里只有北京和通遼兩地的房產(chǎn)檔案,因此只需要根據(jù)售價(jià)和面積將兩邊區(qū)分開來便是了。
聰明的你想到,北京的房?jī)r(jià)何其之高,這是個(gè)絕佳的線索。自然,你不會(huì)蠢到直接比較房屋售價(jià),而是會(huì)先求得每一個(gè)房產(chǎn)的平均價(jià),再將它們由高到低排序。但,房?jī)r(jià)高到什么程度會(huì)是北京的房子呢?這根本難不倒你,畢竟尚且有完好無損的檔案,你找到了北京房?jī)r(jià)的最低價(jià),又找到了通遼房?jī)r(jià)的最高價(jià)——這樣一來,你大概可以判斷在什么價(jià)格以上的房子幾乎一定是北京的,什么價(jià)格以下的房子幾乎一定是通遼的。自然,你很清楚,總會(huì)有那么一些例外,在價(jià)格居中的位置也難以判斷,這就需要進(jìn)一步檢索數(shù)據(jù)庫(kù)編碼了。但畢竟你已經(jīng)大大降低了求證的難度、縮小了需要進(jìn)一步調(diào)查的范圍,雖然難免有差池,也足以到老板那里邀功領(lǐng)賞了。
這樣一個(gè)問題,似乎每一個(gè)足夠理性的人都能作出如上所述的解答,而它背后蘊(yùn)藏的路徑卻絕非那么簡(jiǎn)單的:想象一下,一個(gè)衛(wèi)星里的外星人(或者沒有任何常識(shí)的數(shù)學(xué)神童)目睹了這場(chǎng)火災(zāi),想要自己也嘗試著不依賴任何額外信息地解決這個(gè)問題,能否順利解決呢?
他首先就會(huì)遇到一個(gè)問題:數(shù)字,認(rèn)得,但是這倆數(shù)字背后的含義,是啥???
哦,忘了告訴大家,這個(gè)外星人的母星已經(jīng)早就沒有了“房子”這個(gè)概念(因?yàn)樗麄兊娜馍硪呀?jīng)變成能量態(tài)),也沒有了“價(jià)格”這個(gè)概念(因?yàn)槭穷愃葡x族的集群意識(shí))。至于“北京的房?jī)r(jià)比通遼的房?jī)r(jià)高”這種“常識(shí)”,就更是不要期待他去知道了吧!
那么,這個(gè)“房地產(chǎn)的檔案整理問題”在他的眼中就變成了單純的“將若干組數(shù)據(jù)劃分成兩類”的找規(guī)律數(shù)學(xué)題。這里就不得不提到一個(gè)各位在初中就學(xué)過的數(shù)學(xué)概念“數(shù)形結(jié)合”。自然,我們可以引用這位外星人的祖先高文大帝的故事來作為一種隱喻(注意,這是一個(gè)有魔法的奇幻世界):
高文的帝國(guó)疆域剛好是一個(gè)規(guī)整的正方形。最近,他突然收到了一些匯報(bào),聲稱帝國(guó)里陸續(xù)出現(xiàn)了大量一出生便覺醒超能力的“超凡者”。這本該是件好事,但因新生兒過于體弱,一旦覺醒超凡力量,反而會(huì)在幾天內(nèi)走向失控——除非派遣白騎士前往進(jìn)行精神鎮(zhèn)定。這是個(gè)大難題,畢竟全國(guó)的白騎士數(shù)量是有限的。
這時(shí),大帝自信地掏出了一張神奇的魔法地圖,其形狀四四方方,正是對(duì)應(yīng)著帝國(guó)領(lǐng)土的每一個(gè)角落。這個(gè)魔法地圖可以呈現(xiàn)出每一個(gè)國(guó)民的位置,標(biāo)記為一個(gè)綠色的點(diǎn)。由于超凡者體內(nèi)蘊(yùn)藏特定的魔法力量,在地圖上會(huì)呈現(xiàn)為一個(gè)紅色的點(diǎn)。經(jīng)過觀察,大帝發(fā)現(xiàn)紅色的點(diǎn)普遍集中在地圖的左上部分?;蛟S是由于帝國(guó)的西北角有一座巨大的魔法礦脈“深藍(lán)之井”,又或許是同步軌道衛(wèi)星輻射范圍帶來的差異,他有一些推測(cè),但已來不及調(diào)查,于是大手一揮畫下了一條紅綠分界線“/”,命令全體白騎士向著分界線西北方向集結(jié)。
隨著越來越多案例的出現(xiàn),這條分界線顯得愈發(fā)清晰,大帝也屢次調(diào)整這條線的精確角度和位置,最終,相當(dāng)長(zhǎng)一段時(shí)間都未有反例出現(xiàn)。同時(shí),他也派遣了一隊(duì)鋼鐵游騎兵前往分界線處,調(diào)查這個(gè)分界線上到底發(fā)生了什么。他將地圖交給實(shí)地執(zhí)行工作的白騎士萊特,并告訴他:“如果一個(gè)代表新生兒的點(diǎn)出現(xiàn)在線的西北邊,一定要執(zhí)行監(jiān)控,因?yàn)樗芸赡茉趲滋靸?nèi)覺醒?!比R特如此行事,幾乎沒有出過差錯(cuò)。
我們發(fā)現(xiàn)這個(gè)神奇的地圖可以達(dá)成某些效果:
1、把可能覺醒超凡者的地區(qū)和不可能覺醒超凡者的地區(qū)劃分開來。
2、得出異常區(qū)與正常區(qū)的分界線。
3、在出現(xiàn)一個(gè)新生兒時(shí),預(yù)測(cè)它是否可能成為覺醒者。
神奇的是,包括大帝在內(nèi),沒有人知道那條線到底是什么,原理是什么,但它就應(yīng)當(dāng)被畫在那,因?yàn)樗芨咝У貙⒉顒e鮮明的兩組東西分開了,僅此而已。
外星人受到了啟發(fā)——“雖然我不知道這其中的規(guī)律是什么,但人類管理員既然成功了,在其背后就一定暗含著一個(gè)偉大的規(guī)律(可憐的外星人并不知道這個(gè)規(guī)律僅僅是‘北京的房子更貴’),并且這個(gè)規(guī)律可以從單純的兩個(gè)數(shù)字中推演出來。那么,就將‘房屋售價(jià)(總價(jià))’‘房屋總面積’這兩個(gè)異星符文下面的數(shù)字放到平面直角坐標(biāo)系的XY軸上吧!”
他發(fā)現(xiàn),人類管理員使用了完好的檔案,也就是說“北京”和“通遼”這兩個(gè)異星詞匯代表了數(shù)據(jù)的兩個(gè)種類。于是他也調(diào)取了尚且完好的房產(chǎn)檔案,就好像高文大帝領(lǐng)土上一個(gè)又一個(gè)新生兒,將它們化作地圖上的點(diǎn)放到虛擬空間的坐標(biāo)系之中——若是北京,則標(biāo)注紅色,若是通遼,則標(biāo)注綠色。畫著畫著,他發(fā)現(xiàn)了端倪,這紅色的點(diǎn)和綠色的點(diǎn)儼然也隔著一條筆直的線,被劃分成了兩部分,正如許久前高文先祖遇到的情形一般!隨著數(shù)據(jù)錄入越來越多,紅色的點(diǎn)和綠色的點(diǎn)都不斷逼近分界線,這條線的畫法也愈發(fā)地被限制住,直至大抵不會(huì)發(fā)生什么變動(dòng)了。(這是一種理想化的可能,事實(shí)上究竟如何選擇這條線也是一種策略,即激活函數(shù),但此處不妨礙理解,故不過多贅述)
他謹(jǐn)慎地拿出一組完好的數(shù)據(jù),根據(jù)橫縱坐標(biāo)判斷,它處于線的左上方,因而是“北京”。緊接著,他小心翼翼地察看了這組數(shù)據(jù)的標(biāo)志——果然是北京!一次,又一次,幾乎都不會(huì)出現(xiàn)差錯(cuò)。外星人看著那條神圣的線,仿佛發(fā)現(xiàn)了一個(gè)來自異星的至理,用激動(dòng)而顫抖的雙手寫下了這條線的方程。(這條線的方程的含義是“每平米房?jī)r(jià)為11451元人民幣”)
有趣的是,如此一來,一個(gè)甚至不知道房子是什么的外星人,竟然通過單純地觀察兩地房?jī)r(jià)的數(shù)字,得出了等效于人類管理員數(shù)十年經(jīng)驗(yàn)(當(dāng)然,沒有用那么長(zhǎng)時(shí)間在認(rèn)識(shí)這件事上)的方程,這是一條純粹由下而上的、經(jīng)驗(yàn)主義的路徑。
請(qǐng)注意,這里并不是“外星人看起來得出了和人類管理員一樣的結(jié)論”?!叭祟惞芾韱T運(yùn)用常識(shí)性經(jīng)驗(yàn)后得出的結(jié)論”與“外星人通過數(shù)字歸納得出的結(jié)論”,在數(shù)學(xué)上是完全等價(jià)的,都是“每平米房?jī)r(jià)高于X時(shí)更可能是北京,低于X時(shí)更可能是通遼”,外星人的方程僅僅缺少一環(huán)應(yīng)用于人類語境的闡釋而已。
相信各位已經(jīng)多少看出來了,這里的“外星人”實(shí)際上就是指那個(gè)程序,廣義上講,上面所述已經(jīng)是一種機(jī)器學(xué)習(xí)了。但別急,好戲才剛剛開始,因?yàn)榭膳碌氖?,這種歸納的方法是通用的,只要算力足夠。
回到高文大帝的故事。起初,一切都執(zhí)行得很好,每一個(gè)覺醒為超凡者的新生兒都被準(zhǔn)確地預(yù)測(cè)到,這極大地降低了對(duì)社會(huì)的危害,眾人也已經(jīng)將那魔法地圖視作真理。突然有一天,地圖上的反例出現(xiàn)的越來越多,原本以為不會(huì)出現(xiàn)覺醒者的東南方位涌現(xiàn)了許多紅點(diǎn),而原本就有覺醒者的西北方依舊有紅點(diǎn)——似乎這時(shí)覺醒與否已然與那條分界線毫無關(guān)系!
大帝不愧是大帝,敏銳地派出精銳探查地下的剛鐸遺跡。果不其然,所有的感染者——無論在分界線哪頭,都無一例外地是出生在地下的!他們中有些是躲避嚴(yán)寒的北地居民,有些是原本就在地下的暗影族,有些則是地下遺跡和礦坑的工作人員……但他們有一個(gè)共性,便是都生活在地下。
這個(gè)事情告訴我們的生活小貼士也是顯而易見的:有時(shí)候若理不清一件事(搭訕對(duì)象的反應(yīng))與它的變量X(搭訕的內(nèi)容)和變量Y(搭訕的態(tài)度)的關(guān)系,那極有可能是因?yàn)榇嬖谥粋€(gè)隱變量Z(今天有沒有洗頭),一旦找到了它,便一切豁然開朗了——這就是升維。
幸運(yùn)的是,在數(shù)學(xué)的意義上,我們可以進(jìn)行無限的升維。XYZ的三元方程遠(yuǎn)遠(yuǎn)不是極限,只要算力足夠龐大,我們可以引入成百上千個(gè)變量。三維空間里,一個(gè)曲面會(huì)將數(shù)據(jù)分為兩部分,多維空間里,也總會(huì)有一個(gè)超曲面將數(shù)據(jù)分為兩部分。根據(jù)我們上文所說,只要引入的變量足夠多,總會(huì)揪出所有的隱變量,在無窮無盡的嘗試之后,總會(huì)有一個(gè)超曲面能近乎完美地將兩種數(shù)據(jù)分開。
舉個(gè)例子,一位好朋友想要向我安利歌單,但我只會(huì)告訴他“是的,我喜歡”“不,我不喜歡”,而不會(huì)告訴他任何具體的喜好。若是他按照年代推薦,則會(huì)發(fā)現(xiàn)我什么年代的曲子都喜歡,按照地區(qū)推薦,則會(huì)發(fā)現(xiàn)我什么地區(qū)的曲子都喜歡,這使得他一頭霧水。如果他幸運(yùn)的話,我或許喜歡的是純音樂,于是當(dāng)他引入“演奏樂器”這一維度時(shí)便可以相對(duì)精準(zhǔn)地推薦歌曲了。當(dāng)然,這永遠(yuǎn)不夠精準(zhǔn)。但如果我的好朋友有一顆RTX4090的腦子,我又能回復(fù)他我對(duì)數(shù)以億計(jì)歌曲的喜好反饋,他會(huì)嘗試詢問我各種維度“地區(qū)”“樂器”“長(zhǎng)度”“年代”“音樂類型”“情緒”“曲速”“是否是二次元”……最終擬合出來的超曲面,就是一個(gè)無限接近于我本人音樂品味的東西。你去問我喜不喜歡一首歌,和你去問我的好朋友“pw0會(huì)不會(huì)喜歡一首歌”,得到的答案幾乎一定會(huì)是一樣的。
這些維度在數(shù)學(xué)意義上具體而言有什么用處呢?讓我們回到二維的例子。
想象一下高文大帝的正方形國(guó)土,其正中有一條“/”形狀的分界線。在此線西北的地區(qū)已經(jīng)被一種黑暗的邪惡力量侵蝕,人們?cè)谏厦婧芸炀蜁?huì)死亡。那么,你是一位旅行者,在東南地區(qū)會(huì)得到怎樣的告誡呢?“絕對(duì)不要前往西北方向?!边@是最起碼的。
但有些詭異的是,有些人會(huì)說:“如果你不知道自己在哪,且只能往西北走,那么寧可往北走,不要往西走?!痹瓉?,即使是在安全地帶,有時(shí)也會(huì)被迷霧蒙蔽雙眼。這段話的道理是顯而易見的,生死的分界線雖是斜的,但更接近垂直方向,在任何一個(gè)點(diǎn),向著西邊走都要比向著北邊走死得更快。
現(xiàn)在帶著這種隱喻回到房?jī)r(jià)問題里。當(dāng)我們說“哦不,我看錯(cuò)了,房?jī)r(jià)其實(shí)要比剛剛填寫的多十萬(元)”時(shí),似乎不大影響我們的判斷,但若是說“哦不,我看錯(cuò)了,房子的面積其實(shí)要比剛剛填的多十萬(平方米)”,好家伙,這事不就鬧大了。(當(dāng)然,一般而言會(huì)統(tǒng)一到差不多數(shù)量級(jí)的單位,但依舊存在著一個(gè)比例而不會(huì)是一比一)
這時(shí)候?qū)嶋H上是在說“房?jī)r(jià)變化X元”對(duì)于“這個(gè)房子是哪里的房子”這一結(jié)論影響的重要性不如“面積變化X平方米”對(duì)結(jié)論影響的重要性大,換而言之,所有變量都平等地影響著最終的結(jié)果,但有些變量比其他變量更重要一些。例如購(gòu)買一輛車要考慮性能、經(jīng)濟(jì)性、空間、智能化等因素,它們共同決定了“值不值得買”這一結(jié)果,但當(dāng)我們確定一個(gè)語境(也就是回答“值不值得買”的語境,例如“對(duì)于一個(gè)打工人值不值得買”)時(shí),其中一些變量(例如“經(jīng)濟(jì)性”“空間”)就會(huì)比另外一些更加重要,這個(gè)“重要性”,便是所謂“權(quán)重”。
這時(shí)候一定就會(huì)有人問了,既然如此,權(quán)重如何得出呢?這里的權(quán)重,事實(shí)上就等價(jià)于房?jī)r(jià)問題中的那條線(因?yàn)槟菞l線的方程包含了XY的系數(shù)),或者更復(fù)雜問題中的超曲面。具體操作起來,是巧妙地運(yùn)用了數(shù)學(xué)變形后梯度下降地求超曲面極值,這里不去贅述。但我們清楚,這個(gè)過程之所以能夠?qū)崿F(xiàn),是由于它獲得了反饋,即知道了“當(dāng)下的判斷標(biāo)準(zhǔn)”與“人們的判斷標(biāo)準(zhǔn)(或正確的判斷標(biāo)準(zhǔn))”有所差異,通過海量的嘗試最終找到最接近“人們的判斷標(biāo)準(zhǔn)(或正確的判斷標(biāo)準(zhǔn))”的那種方案,此時(shí)的方程便體現(xiàn)了權(quán)重。
可以試想這樣一個(gè)實(shí)驗(yàn),我們?cè)O(shè)計(jì)一個(gè)模仿人體結(jié)構(gòu)的機(jī)器人,要其保持平衡地騎自行車。我們可以給它的每一塊肌肉和骨骼標(biāo)號(hào),當(dāng)自行車保持平衡了,就給予正反饋,自行車偏斜了,就給予負(fù)反饋,如此重復(fù)成千上萬次。最后我們會(huì)得到一串長(zhǎng)長(zhǎng)的表格:“1號(hào)肌肉,向左移動(dòng),有用程度0.1%,2號(hào)肌肉,向上移動(dòng),有用程度0.3,3號(hào)肌肉,向下移動(dòng),有用程度28%……1號(hào)骨骼,向前移動(dòng),有用程度13%……”(此處僅僅是輔助理解,因?yàn)檫@將若干系統(tǒng)視作孤立的零件,實(shí)際上并非如此簡(jiǎn)單)當(dāng)我們知道了“每一塊肌肉在每一個(gè)瞬間向每一個(gè)方向移動(dòng)”對(duì)于“保持自行車平衡”的有用程度,我們自然可以讓機(jī)器人作出一個(gè)時(shí)刻都能讓自行車不會(huì)傾倒的行動(dòng)。
那么,我們?nèi)祟悓W(xué)會(huì)騎車的過程,或許也是如此?
現(xiàn)在我們回頭看看,基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)如何區(qū)別于傳統(tǒng)的算法。傳統(tǒng)的算法中有“時(shí)間換空間,空間換時(shí)間”一說,這里的空間指的是空間復(fù)雜度,即占用系統(tǒng)臨時(shí)存儲(chǔ)空間(內(nèi)存)的程度;時(shí)間指的是時(shí)間復(fù)雜度,即輸出答案的時(shí)間雖輸入數(shù)據(jù)數(shù)量級(jí)變化的速度。這二者可以互換,通俗地說,優(yōu)化一樣的情況下,占內(nèi)存小的程序跑得慢,占內(nèi)存大的程序跑得快(這不廢話?)。但機(jī)器學(xué)習(xí)打開了一條新的道路,通過預(yù)先的海量訓(xùn)練得到可靠的算法,在實(shí)際應(yīng)用時(shí)消耗較少的資源,類似于一種“算力電池”,實(shí)現(xiàn)了時(shí)空復(fù)雜度的調(diào)配。
熟悉計(jì)算機(jī)的朋友或許知道一種被稱作遺傳算法的東西,就是通過外部的反饋不斷迭代,使結(jié)果越來越趨近于真實(shí)值。(可以想象一下“指揮另一個(gè)人掛一幅畫”或者“指揮倒車”時(shí)不斷微調(diào)的過程)在原理上,機(jī)器學(xué)習(xí)非常相似,但這里不斷趨近于真實(shí)值的并不是某一個(gè)問題的結(jié)果,而是“處理這個(gè)問題時(shí)各因素的權(quán)重占比”,即“解決這個(gè)問題的方法”。也就是說,遺傳算法迭代的是結(jié)果,而機(jī)器學(xué)習(xí)迭代的是解決問題的方法自身,它可以實(shí)現(xiàn)真正意義上的成長(zhǎng)——至少在騎自行車的意義上,我看不出深度學(xué)習(xí)與人類學(xué)習(xí)在原理上有何本質(zhì)不同——試錯(cuò),得到外界反饋,調(diào)整用力的部位和方法,再試一次,直到成功。
傳統(tǒng)的“圖靈測(cè)試”受到一種“中文屋詰難”。圖靈測(cè)試的大意是,我們雖然不能判斷一個(gè)機(jī)器人是否真正意義上有了自己的思考,但若是他表現(xiàn)出來的樣子能騙過絕大多數(shù)人,則足以稱這個(gè)機(jī)器人有了自己的思維能力——畢竟無論它實(shí)際上有沒有,對(duì)于我們而言都是相差無幾的。“中文屋詰難”則是強(qiáng)調(diào),即使裝得再想,也終究是裝,存在著一個(gè)無法逾越的鴻溝:就好比一個(gè)在線聊天室里有一個(gè)不懂中文但有著近乎完美的翻譯設(shè)備的人,通過對(duì)話,他可以讓大多數(shù)人以為他是個(gè)中國(guó)人,但他到底不是個(gè)中國(guó)人。
一些低端的問答機(jī)器人就是這樣的結(jié)構(gòu):預(yù)先設(shè)定好一些口令,例如“當(dāng)用戶詢問‘當(dāng)前的時(shí)間是多少’(具體而言,包含‘時(shí)間’這一關(guān)鍵詞)時(shí),回復(fù)當(dāng)前的系統(tǒng)時(shí)間”,并將這一口令集不斷擴(kuò)充和優(yōu)化。一旦出現(xiàn)口令集以外的詢問,則會(huì)回答“對(duì)不起,我聽不懂你的意思?!边@也是我們大多數(shù)人對(duì)“弱人工智能”的認(rèn)識(shí)——許多人說,人工智能說到底只是固定的程序,你問什么就答什么,程序員早就設(shè)計(jì)好的——在這一意義上是問題的。
但機(jī)器學(xué)習(xí)的玩法改變了一些事情。
首先,就原理上,我們驚訝地發(fā)現(xiàn),我們自己在“學(xué)習(xí)”某些簡(jiǎn)單的技能(例如騎自行車)時(shí),或許和我們命令機(jī)器做的事如出一轍。對(duì)人工智能的探索,反而回過頭來促進(jìn)了對(duì)人自身思維能力的反思。其次,當(dāng)數(shù)據(jù)量和運(yùn)算量爆炸到一個(gè)質(zhì)變的節(jié)點(diǎn)后,我們已經(jīng)無法說這時(shí)的人工智能是“程序員設(shè)計(jì)好的”了,因?yàn)榫瓦B程序員自己也無法預(yù)測(cè)程序的結(jié)果。每一次程序的自我迭代是根據(jù)“投喂”的海量數(shù)據(jù)(也就是上文所提及的反饋)進(jìn)行的,這已經(jīng)遠(yuǎn)遠(yuǎn)超越了程序員把握的能力。而且,事實(shí)上程序自己迭代的次數(shù)也是天文數(shù)字級(jí)別的,在一個(gè)深度學(xué)習(xí)的人工智能訓(xùn)練中,“億”是最基本的單位,每秒鐘能運(yùn)算億億次的機(jī)器連續(xù)不停地運(yùn)轉(zhuǎn)數(shù)月,將會(huì)得到怎樣的產(chǎn)物?這就是為什么所謂“隱藏層”是隱藏的。
以“圖像識(shí)別”為例。人類的介入主要在三個(gè)環(huán)節(jié):程序的編寫,數(shù)據(jù)的輸入(即反饋),模型和激活函數(shù)的選擇。
若我們要識(shí)別一個(gè)圖像的內(nèi)容是什么,我們第一步要怎樣做?很簡(jiǎn)單,將一整張圖片解構(gòu)成無數(shù)像素點(diǎn),記錄每一個(gè)像素點(diǎn)的顏色、亮度、相對(duì)位置,并變成一張數(shù)字的表格(矩陣)。是的,人類程序員所做的事情只是盡可能把“需要被認(rèn)知的素材”處理成“程序能接受的形式”,也就是捏了一個(gè)程序的“感覺器官”而已。
至于后續(xù)輸入的數(shù)據(jù),絕大多數(shù)都是從互聯(lián)網(wǎng)上爬取下來的。通過網(wǎng)絡(luò)上的海量數(shù)據(jù),程序可以知道“哪些特征的權(quán)重對(duì)于‘這張圖是狗’的重要性比較大”“哪些特征的權(quán)重對(duì)于‘這張圖在pixiv上獲得更多贊’的重要性比較大”,并不斷調(diào)整自己的能力。至于這其中的內(nèi)容,極有可能連程序員自己都理解不了,行得通就是行得通,行不通換一個(gè)方式就是了,以至于有人戲稱其是“煉丹”的過程。(自然,人類依舊做了重要的事情,就是“模型與激活函數(shù)的選擇”,這個(gè)稍后再論)
試想,有一個(gè)小孩從小被送到畫室學(xué)習(xí)繪畫。他的能力是每秒可以畫出一億張畫作,代價(jià)是每一張畫都是隨機(jī)的。所幸,有一位老師,這位老師記得從古至今的所有名畫的模樣,并能比對(duì)著在一瞬間批評(píng)這位小孩,“你的作品與某名畫在某些地方存在著某些偏差”。小孩腦海里著數(shù)以億計(jì)的“旋鈕”,每一個(gè)“旋鈕”都決定著他的繪畫的某一方面的某種傾向(例如“更加明亮”“過渡更加柔和”“相鄰的四個(gè)像素色相更接近”“‘面部’中央位置的像素點(diǎn)偏洋紅”……),他每被批評(píng)一次都會(huì)努力調(diào)整,直到這樣的狀態(tài):以自己的能力,每畫一次畫,被老師批評(píng)的次數(shù)盡可能低——經(jīng)過若干年后,這位學(xué)徒的繪畫技術(shù)會(huì)達(dá)到怎樣的高度?
有的人或許會(huì)說,到不了怎樣的高度,因?yàn)檫@樣得出來的畫作是沒有靈魂的,是沒有深刻思想的,只是對(duì)無數(shù)優(yōu)秀作品的摹仿。但試問,在美術(shù)培訓(xùn),尤其是“X天速成日式插畫培訓(xùn)”的體系下,難道要比如是的情況好上許多?
因此,相比于單純的按照程序指令行動(dòng)、將既有的東西拆解打散后排列組合,當(dāng)下的人工智能在處理某些事情時(shí)將更接近人類事實(shí)上的行動(dòng),已經(jīng)在某種意義上突破了“中文屋詰難”——這家伙學(xué)起中文來,簡(jiǎn)直和我自己學(xué)外語一模一樣——除了快了幾億倍。
筆者記得自己在孩童時(shí)期鬧過一次笑話。當(dāng)時(shí)的長(zhǎng)輩教導(dǎo)我什么樣的車叫做公交車,什么樣的車叫做出租車,我便常常問“這個(gè)是不是出租車?”“這個(gè)是不是公交車?”在長(zhǎng)期總結(jié)觀察后,我得出了結(jié)論:矮矮的、圓滑的車就是出租車,大大的、方形的車就是公交車,世界上只有這兩種車。于是,我便拉著家人非要打一輛黑色高級(jí)轎車。家人無奈道:“這不是出租車?!苯?jīng)過更多地觀察,我發(fā)現(xiàn)“矮矮的、圓滑的、有特殊涂裝的車”才是出租車。這樣一個(gè)經(jīng)驗(yàn)的、歸納性質(zhì)的認(rèn)知過程,與人工智能的“圖像識(shí)別”有何差異呢?而事實(shí)上,“出租車是由出租公司運(yùn)營(yíng)的、可以供人臨時(shí)雇傭的汽車”這樣的定義也是在極晚的時(shí)候才了解到的了。
相比于人腦,機(jī)器學(xué)習(xí)可以將互聯(lián)網(wǎng)上的海量數(shù)據(jù)作為認(rèn)知素材,又能將心中那個(gè)模糊的標(biāo)尺量化地呈現(xiàn)出來。例如,我們?nèi)羰窃儐枴癤大學(xué)是不是一個(gè)好大學(xué)”,每個(gè)人會(huì)有每個(gè)人的答案,但他們心中都有一個(gè)模糊的界定是否是好大學(xué)的標(biāo)尺。故而每一群人也都會(huì)有每一群人的答案,他們的標(biāo)尺平均而言也是存在的,卻無法被任何人精確地指出來——但人工智能可以。
機(jī)器學(xué)習(xí)并不一定是最高效的方法,但它卻會(huì)是最接近人的一部分思維的方法。可以考慮這樣一個(gè)最簡(jiǎn)單的案例“判斷數(shù)字是否是正數(shù)”。任何一個(gè)編程的初學(xué)者都知道,只要將這個(gè)數(shù)字與0進(jìn)行比較就可以輸出答案。但若是硬要用機(jī)器學(xué)習(xí)的思路來做,大約會(huì)是這樣的:程序一遍又一遍地詢問“這個(gè)數(shù)是不是正數(shù)?”,我們一遍又一遍地告訴它“是”或“不是”,最終它將會(huì)大概覺得,正數(shù)和負(fù)數(shù)的分界點(diǎn)在“-0.094”和“0.021”之間的某一個(gè)位置,極有可能是“-0.011”。
這看起來有些愚蠢?讓我想起一個(gè)故事:一節(jié)數(shù)學(xué)課上老師在介紹平行線的概念,說:“你們看,這里有兩條線,把它們延長(zhǎng),無論再長(zhǎng)也不會(huì)相交。”一個(gè)學(xué)生問:“不管怎么延伸都不會(huì)嗎?再長(zhǎng)一點(diǎn)呢?如果畫到黑板外面呢?”
這似乎告訴我們,當(dāng)下的人工智能所作所為與一些孩童的思維、一些人的部分思維已然如出一轍,至少也是“師出同門”,這決定了當(dāng)今的人工智能已然超越了以往對(duì)“計(jì)算機(jī)程序”的認(rèn)知,不斷模糊與真正意義上“智能”的界限,甚至足以取代一部分腦力勞動(dòng)者的位置。但在人類的思維這里,仍然有一些額外的東西,這部分能否被人工智能模擬出來,是大多數(shù)科幻式暢想的前提,讓我們拭目以待。