人性本惡,機器本善?
上周第一次上手Tensorflow,用CNN實現了一套破解ICP驗證碼的自動化系統,訓練了三天,準確率已經超過60%,符合生產環境使用。事實證明,即便是我這種嚴重缺乏演算法理論基礎,缺乏微積分知識的學渣,在現有觸手可得的軟硬體支持情況下,也能很快的實現以前想都不敢想的功能。興奮之餘,在內部跟兄弟們進行了一次交流,然後思緒就一路延續過去了。
前幾天,媳婦在客廳看電視,瞄著我在那搗鼓來搗鼓去,問我說「其實你研究的圖形識別和語音識別,十幾年前我們在研究生的時候就在做了,為什麼感覺這兩年突然火起來了?」 是的,背景介紹一下,媳婦原來屬於的學霸那一批,她的很多同學絕大部分都是學霸,我們出國旅遊到哪都有人接待,Google微軟之類的就不消說,而且有意思的是,他們確實很早就從事圖像識別和語音信號處理。然而事實說明了,他們這一批同學大部分後來都轉移了研究方向,因為很長一段時間並沒有迎來爆發,甚至有種除了研究連工作都沒法找的尷尬境地。所以,她的感覺是很準確的,從原來無人問津,到現在言必及機器學習人工智慧,中間發生了什麼?
我回顧了一下,最初我們廣泛聽到這些概念,包括神經網路,機器學習,深度學習之類的,應該是從AlphaGo開始的。神經網路早在1958的感知機概念提出來時就開始了,當時受限於硬體的計算能力以及軟體上演算法的突破,導致神經網路的研究陷入冰河期。一直等到1986年Hinton這位神人出現提出了反向傳播的演算法後,一系列的問題才逐步成熟。2006年深度學習的概念出現了,依然是Hinton提的,之後又進入了另一輪學術界的廣泛討論期。中間發生了我認為幾件比較有實際意義的事情,一個是MNIST手寫體識別在九幾年實際應用到商業領域,一個是ImageNet競賽的形式推動了學術界又一個公開的統一標準激勵了大量的演算法和模型出現。期間CNN(神人Lecun又是Hinton的弟子,你說氣不氣人),RNN,SVM,word2vec等一系列後來廣為接受的架構或者說演算法產生,將應用場景成功的固化到了圖像識別,語音識別,無人駕駛,語言翻譯等各領域,具有極高的實用價值。
事實上,我講的那些其實跟老百姓關係不大,一直以來我都認為那些是教授的事情,是中科院的事情,是BAT這類大公司的事情,跟我們相去甚遠。你們每天在談人類進步,每天在談去火星,我們每天還是要吃饅頭泡妞。所以實話說,我上面說的無論是Hinton,Lecun以及後來的吳恩達李飛飛等神人,在2016年前我聽都沒聽說過,更不要說去理解她們那些天書了。而這個局面從AlphaGo打贏李世石,隨即Google開源了Tensorflow之後,立刻發生了極大的改觀,這裡我得承認,如果不是tensorflow,我也完全沒有聽說過theano keras mxnet caffe等等等等。Tensorflow的意義在於它通過AlphaGo挑戰圍棋的宣傳效果,讓人們意識到了,曾經離我們十萬八千里的科研方向,就在Github那裡躺著,它是完整的,能夠很快入門的,只要你對此感興趣,你可以應用到任何領域,不論你是學霸還是學渣。接著,我們就看到了各種行業各種程序員開始接入,百花齊放,連出去吃個夜宵,旁白桌穿個大褲衩套著金鏈子的摳腳大叔都在談論機器學習。
機器學習就像是一個剛出生嬰兒的小腦袋瓜,一開始什麼都不懂,通過不斷的喂數據,他們就能學會很多事情,這是我一直感覺很神奇的地方。我們家兩個小子,他們的成長過程我一直在觀察。比如他們很長一段時間都弄不明白,捉迷藏要把全身都藏起來,而不是擋住眼睛就行(閉上眼睛也不行);再比如我家老二目前還指著貓咪說是狗狗,你糾正他還生氣;還比如迄今為止,我還在孜孜不倦地訓練他認識顏色,指著黃色他會大聲喊「白色」。要不是看他可愛,就他這種智力都不夠我扔的。我看著他們總感覺不像人類,偶爾我會用手推他們,看看他們會不會像那些蹩腳的機器人一樣倒下去,確實不會倒,很神奇。
機器學習神奇的地方就在於,他們會從完全沒有認知或者說是完全錯誤的認知開始,逐步調整自己,一直到根據你的方式學會了辨別顏色,聲音,圖形,甚至學會了說話和躲避障礙物。科學家們非常擅長於用最最基本的規則,開始還原甚至是構造複雜的事物,他們提出了神經元這種二愣子,然後用二愣子的組合形成了無所不能的神經網路。之前我看過《神秘的混沌理論》的紀錄片(CHAOS),其中有個場景震撼了我:科學家們構造了一個可以模擬自動進化的軟體系統,他們隨機產生了100個虛擬大腦,將它們的動作產生隨機參數,然後讓他們行走,絕大部分行走地特別笨拙很快就摔跤,在這裡軟體系統保留效果較好的大腦,在他們的參數基礎上繁殖產生後代,逐步進化,第十代之後,就有大腦能夠正常行走了。同樣的場景在《三體》裡面也能看到,在虛擬遊戲中,三體的世界不斷變化,通過很多輪不同的場景自動的模擬進化,一旦毀滅就重新再來,只要沒有毀滅就一直進化。
以前我們進行程序開發很簡單,你輸入參數,預期他返回結果值,中間都可以單步調試,每個過程我們都可以有預期。而在機器學習的世界裡,有一件很恐怖的事情,你知道他完成了訓練,最後輸出了我們的預期,但是,它內部調整的過程和參數實在太多,我們靠人類已經跟不上他們的運算速度,也就是說我們只知道它完成了訓練,至於是取了哪些特徵,通過什麼樣的調整訓練出來的,其實我們一無所知(好吧,也許目前還可以知道,但是數據爆炸式增長之後,我們最終還是不知道的)。這個問題其實越想越恐怖,我們試想,小孩子長大到幾歲的時候,就有一個明顯的叛逆期,他學啊學啊,發現了原來發一些小脾氣也是可以的,可以去踢其他小朋友兩下,揮著小拳頭髮泄一下也很正常,你說什麼他都跟你說不。以後的人工智慧通過機器學習訓練,會不會也有這麼一天?
想到這,其實已經顛覆了我以前對機器人的固有認知。科學家很厲害,能夠把人工智慧逐步實現,而科幻作者也很厲害,早在你還沒實現的前提下就能提出一系列的道德輿論。其中最經典的莫過於《終結者》系列,小時候看著施瓦辛格的機器人根據指令降到熔爐自我毀滅的時候,我嚎啕大哭。我認為那些破壞的機器人都是不可能發生的,機器人再聰明,怎麼會有情感?怎麼能理解我們作為人類的政治智慧和厚黑學?你們這些人是不是想多了?很長一段時間,我看到矽谷的一群精英在那討論計算機會不會危機人類安全,覺得簡直弱智的可笑。實在不明白這群反對的人,怎麼回去阻礙人類科技的發展,愚不可及。現在,當看到我們無法正確的控制機器學習的進程的時候,我已經不再那麼堅定了。
在《異次元駭客》和《月球》這兩部電影的後半段都發生了觸及靈魂的劇情神發轉(沒看過的別罵我,我要開始劇透了),在裡面的主人翁一直按照自己的意識生活著,他們一直都認為自己是真實的,最後卻發現,自己只不過是人類製造出來的思維,要麼是虛擬的軟體系統,要麼是機器人。那種感覺太震撼了,不免讓我頭皮發麻,在《缸中之腦》就是描述了類似的感覺。那是不是說,在機器學習人工智慧發展足夠成熟的情況下,人類已經完全跟不上計算機思維的進化速度,進而計算機有可能產生了一種自我覺醒的思維,而人類是反應不過來的?
所以說,大量的科學家開始制定計算機基本準則,第一條就是不能傷害人類,實在某一天你覺醒了就覺醒吧,更甚者我們假設你都進化成能感知到自己是被「奴役」的,只要你不違背第一條,我們都認為是安全的。這又回到另一個問題,世界上最恐怖的不是獅子老虎蛇之類的,更不是自然災害或者鬼魂,而是人類自己。很多人覺得生活不公,所以要報復社會。也有很多黑客其實已經開始關注人工智慧相關的數據,對其進行污染,從而惡化他們的靈魂。比如shotgun大神寫過一篇《黑掉鴨哥的微信聊天機器人》,在文章里,他成功了將一個溫文爾雅的聊天機器人編程一個滿嘴髒話的痞子。當然,目前的階段都只是玩笑,只是這種玩笑是存在很大的技術可能性的。我們不妨假設一下,如果一個想要報復社會的程序員,在他的代碼中,他加入了污染其他計算機模型的感染模塊(就好像wannacry那樣),污染的唯一指令就是去處不傷害人類的指令。那麼世界將會怎樣?如果人性本惡,如何保證機器學習訓練出來的機器人是善的?
當我對未來充滿了負能量的時候,就剛才,我們後沙峪地區最好的設計師告訴我,他玩了一個叫做《尼爾:機械紀元》的遊戲,裡面模擬了一個人類已經毀滅的場景,而計算機接受的指令就是再造人類。嗯,這個結局很好,機器學習還是好的,即使不好它也代表了人類科技發展了歷程,沒有必要去阻止他。最後,我腦海里剛才竄出一個念頭,若干年後,我打的這些文字,會不會正在被某個機器大腦閱讀著?而我個人,正在被作為計算機覺醒之父受萬眾敬仰。;)
參考:
http://it.21cn.com/itnews/a/2017/0523/14/32282255.shtml 王小川:和柯潔對陣的AlphaGo 2.0沒風格 穩如磐石
http://tech.ifeng.com/a/20161028/44480126_0.shtml 機器學習並非人畜無害 它邪惡起來能嚇死人
http://xilinx.eetrend.com/article/10863 卷積神經網路CNN斯坦福教程
http://www.cnblogs.com/subconscious/p/5058741.html 神經網路淺講:從神經元到深度學習
http://www.iqiyi.com/v_19rrnx1mak.html 神秘的混沌理論
https://zhuanlan.zhihu.com/p/26092761 「黑掉」鴨哥的微信聊天機器人
推薦閱讀:
※嘗試理解 TensorFlow 的總體機制
※計算機視覺與影視業邂逅
※貪吃蛇新玩家——使用遺傳演算法和深度學習訓練的AI
※《終結者》+《盜夢空間》,這款遊戲是刺激還是驚悚?
※以後失業就靠AI公司養活?半數美國人表示贊同