圖片來源 視覺中國
我們的故事還是從AlphaGo這里說起,無他,我實在是太喜歡這個小家伙了。
在AlphaGo的棋盤招式中,偶有出現(xiàn)之前出現(xiàn)在棋譜里的招式。他通過強化學(xué)習(xí),“記住”(至少是我們認為那個意義上的記住)了圍棋的局面較優(yōu)解。這樣超凡的學(xué)習(xí)能力和“記憶力”(雖然運行方式和人類的記憶不同)是AI在這些方面超越人類,出類拔萃的保障之一。
如果把我們代入人工智能的視角,有了這樣的記憶力,我們將看到一個學(xué)習(xí)成本空前降低,創(chuàng)造力勃發(fā)的世界。但是當(dāng)我們有限的記憶芯片被填滿之后呢?我們不得不撞上一個名為“遺忘”的問題。
人們有在互聯(lián)網(wǎng)上提出“被遺忘”的權(quán)利,那在人工智能眼前呢?
人工智能,也應(yīng)該學(xué)會“遺忘”。
遺忘,不止應(yīng)該是對人類
人們似乎永遠無法完全控制自己的記憶,我們都知道忘記一些事情是什么感覺。即使是那些擁有非凡記憶力的人,也無法確保自己的記憶能夠保持多長的時間。
也正是因為此,我們發(fā)明了紙筆,發(fā)明了硬盤,發(fā)明了各種各樣能夠把我們的記憶以物質(zhì)記錄的方式存留下來的方式。人工智能,也是我們“記住自己”的一種方式。
但是我們的記錄與記憶是有選擇的:誰都不想把那些不好的回憶在自己的腦海里留存太久,誰都不會去刻意記住生活中繁雜的細枝末節(jié)。我們保留了有用的、有價值的記憶,而忘記了價值較低的信息。我們對于這些記憶的物質(zhì)承載工具大多也是這個態(tài)度。
同樣,對于AI也應(yīng)該是這樣的,我們應(yīng)該有能力讓一個人工智能忘記它所見證的一切。
“遺忘”對人工智能機器人來說勢在必行
計算機中的存儲器通常用來描述其存儲需要回憶的信息的能力,以及存儲這些信息的計算機的物理部件。例如,當(dāng)計算機的工作存儲器不再需要某個任務(wù)時,在人類的干預(yù)下,它會“忘記”數(shù)據(jù),從而釋放出計算資源用于其他任務(wù)。
這也同樣適用于人工智能。不過,機器學(xué)習(xí)算法并不善于知道什么時候保留舊信息,什么時候丟棄過時的信息。比如,非??苹玫?ldquo;連接主義人工智能”,就面臨著幾個與“遺忘”有關(guān)的問題。比如過度擬合,即學(xué)習(xí)機器從過去的經(jīng)驗中儲存過于詳細的信息,從而妨礙了它概括和預(yù)測未來事件的能力。
關(guān)于這樣的“過度擬合”問題,在國外的TowardsDataScience論壇上,有一位極客為我們分享了他用程序跑出來的例子。
他首先使用sklearn的“make _ classification”函數(shù)生成一個數(shù)據(jù)集。并將這些數(shù)據(jù)集生成的點分成兩種顏色,并且放置在同一個平面直角坐標(biāo)系內(nèi),如圖所示。
注意紅點和藍點的顏色有所區(qū)別
在這項實驗中,過度擬合的定義是:反映該模型學(xué)習(xí)輸入的示例,但不能推廣到其它示例。比如,在這個系統(tǒng)中,他通過過度擬合要求電腦繪制紅色點的存在邊界,在編寫完相應(yīng)的程序并且運行之后,電腦給出了這樣子的回答。
結(jié)果
他確實“忠實”地幫我們把紅色點與藍色點區(qū)分開了,但是其發(fā)現(xiàn)的模式毫無意義,因為生成這些點的規(guī)律和自己擬合出來的結(jié)果根本就不是一個東西。這樣擬合出來的模型,根本沒法用。
沒有經(jīng)過“遺忘”提純,過度擬合的出來的數(shù)據(jù),就像人類的“經(jīng)驗主義與教條主義”,比如炒股找類似圖形判斷未來走勢,比如不結(jié)合實際情況去找別人的解決方案……不懂得隨機應(yīng)變與因勢利導(dǎo),只會死套公式找公式化的解決方案,但是這樣的方案很多時候并不存在。
要解決這樣的過度擬合難題,“遺忘”就勢在必行。
目前有一項技術(shù)叫做長短期記憶網(wǎng)絡(luò)(LSTM)算法,它使用特定的學(xué)習(xí)機制來決定在任意一個節(jié)點哪些信息需要記住,哪些需要更新,哪些需要關(guān)注。用香港科技大學(xué)相關(guān)領(lǐng)域的專家Edwin Chen的話來說,LSTM應(yīng)該達到這樣的狀態(tài):
“當(dāng)場景結(jié)束,模型應(yīng)該忘記當(dāng)前場景的位置,所處時間,并重置任何特定場景的信息;然而,如果場景中的一個角色死亡了,機器則應(yīng)該繼續(xù)記住他不再活著的事實。因此,我們希望機器能學(xué)習(xí)掌握一個相互獨立的遺忘/記憶機制,這樣當(dāng)新信息進來時,它知道什么觀念該保留什么該丟棄。”這些遺忘的過程,應(yīng)該在沒有人工干預(yù)的前提下獨立完成。
對于人類來說,遺忘不僅僅是一次失敗的記憶,還是一個積極的過程,可以幫助大腦獲取新信息并更有效地做出決策。
對于人工智能來說也是如此。
遺忘或許是AI進步的關(guān)鍵
我們先做一個看起來不是那么恰當(dāng)?shù)谋扔?,所?ldquo;記憶”的物質(zhì)承載都是有承載上限的,日記本寫滿了就沒法再記,硬盤的容量塞滿了也放不下更多的東西。如果放任所有你看到的信息都記在你的電腦硬盤里,它可能很快就會被塞滿,然后“寫入”這個類似于“記憶”的東西就會罷工不干。
如果教一個說中文的孩子學(xué)習(xí)英語,孩子會很容易把學(xué)習(xí)中文的方法應(yīng)用到英語的學(xué)習(xí)中(雖然這兩者不屬于同一語系,但是中間還是有相通的部分,同一語系中的相通部分更多,所能“借鑒”的經(jīng)驗也就更多),比如名詞,句子構(gòu)建,語序區(qū)別,同時忘記那些不相關(guān)的東西,比如口音,語調(diào),沒必要的俚語,我們?nèi)祟惪梢酝瑫r進行遺忘和學(xué)習(xí),并且總結(jié)他們之中的共同經(jīng)驗,放棄實際應(yīng)用中毫無必要的細枝末節(jié)。
但是機器人的處境可不一樣,如果訓(xùn)練神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)英語,則他會通過“深度學(xué)習(xí)”整出一個適用于英語的學(xué)習(xí)方式。這讓他在學(xué)英文的時候有了無可比擬的優(yōu)勢,但如果還想同時教它中文,對中文內(nèi)容的學(xué)習(xí)將覆蓋神經(jīng)網(wǎng)絡(luò)以前為學(xué)習(xí)英語所獲得的知識,因為這與之前的學(xué)習(xí)方式矛盾,如果存儲內(nèi)存一定,那么只好刪除所有內(nèi)容并重新開始。
其實這也很好理解,現(xiàn)在的神經(jīng)網(wǎng)絡(luò)不允許AlphaGo在一個深度學(xué)習(xí)過程中同時學(xué)會圍棋和五子棋,盡管他們棋具都很相似,但是規(guī)則大不同。如果用圍棋的下法去下五子棋會速敗,用五子棋的下法去下圍棋會給自己挖出一個大坑。這被稱為“災(zāi)難性遺忘”,也是神經(jīng)網(wǎng)絡(luò)的一個局限。
算法不能選擇忘記什么,目前只能依靠人來對信息進行篩選,這是人相比機器的思維優(yōu)勢之一。通過選擇性遺忘的提純,AI可以更好地去理解人類的命令,解決更多的實際問題。比如在語音識別中摒棄各種干擾的聲音,抓住最核心的內(nèi)容,并且通過最正確的方式將其實現(xiàn)。
如果只是進行大量數(shù)據(jù)持續(xù)的收集,而沒有簡單的方法通過“遺忘”提純數(shù)據(jù),那人工智能也僅僅是在有限的容量上,在一個狹隘的角度里堆砌和發(fā)展我們的智慧成果而已。
因此,學(xué)會遺忘是人工智能面臨的重大挑戰(zhàn)之一,可能也是這個行業(yè)破局的關(guān)鍵所在。人類大腦和遺忘的過程中,有可能藏著顛覆現(xiàn)有AI技術(shù)的秘密。
忘記該忘記的,改變能改變的
醫(yī)療機器人進行醫(yī)療診斷,智能家居設(shè)備監(jiān)控我們的行動,安全機器人通過視頻攝像機和熱成像進行巡邏。面對這些海量存儲的數(shù)據(jù),決定一個機器人什么時候應(yīng)該忘記,是一個深刻的人類挑戰(zhàn)。
但是如果成功了呢?
前面我們提到了,因為過度擬合的存在,讓AI在對未來做出邏輯判斷時可能會出現(xiàn)失真的問題。如果我們把“遺忘”這把鑰匙交給了人工智能,讓他們通過合理的選擇性遺忘,走出了過度擬合可能存在的問題。那么,我們擁有一個“百科全書”式的AI時,它(或者應(yīng)該是他)能通過各種被記憶與遺忘提純的數(shù)據(jù),對未來進行精準(zhǔn)的預(yù)測嗎?
這是人們一直在期待的圖景,也是我們隱隱害怕的圖景。
阿西莫夫有一篇短篇科幻小說,叫做《最后的問題》。書中的“超腦”在一代一代的開發(fā)之后,就有了這樣解答問題的能力。如果能夠?qū)⑦@樣的人工智能制造出來,并且處于完全的控制之下,對于人類社會來說可能都是一場意義非凡的飛躍。
忘記該忘記的,改變能改變的,刈除雜草,才有新生,此之謂也。