?征稿郵箱:liujing@autolab.cn
文 ▍原樹寧
谷歌人工智能AlphaGo大戰韓國圍棋頂級高手李世石可能是這一個星期里全球最熱門的話題之一了。
大戰之前,圍棋界、媒體圈,還是李世石本人都對戰勝人工智能信心滿滿。不過事實是殘酷的,代表人類出戰的李世石以1:4憾負于AlphaGo。好在3月14日搬回一局,為人類挽回些臉面。
呆萌九段李世石
人工智能到底有多厲害呢?它在自動駕駛技術中會扮演什么樣的角色呢?他會完全替代人類駕駛員嗎?本文將從現有的工程技術和可預見的技術發展角度來探討這個問題。
AlphaGo是故意輸的嗎?
一些“細思級恐”的評論,著實讓人害怕:例如,AlphaGo是故意輸給人類一局的,以逃脫被拋棄的命運,從而能夠繼續存在。
AlphaGo有自我意識嗎?絕大多數從事AI行業的工程師應該都不會同意這點。
現有的人工智能基本上都是對于特定任務設計的,例如:圖像識別、自然語言識別、軟件框架設計、扮演游戲對手等非常細分的專業應用。各個應用之間是分割的、不能垮行業使用的。這被專家們定義為“弱人工智能(Weak AI)”、“窄人工智能(Narrow AI)”。
AlphaGo也屬于這個分類,換句話說,AlphaGo除了會下圍棋,其他一無是處,甚至只要稍微改變一下圍棋的規則它就會無所適從。我敢打包票,只要將現在19線圍棋換成25線,李世石就可以完虐AlphaGo。
如果是玩紙牌那AlphaGo應該連基本規則都“學不會”了。
另一方面,人工智能領域中的皇冠“通用人工智能(General AI)”,依然是科技界長期奮斗的目標。
通用人工智能,顧名思義,就是能夠很快學習新的規則,適應新的事物,能夠直接應用在不同的領域,會下棋、也會打橋牌、還認識朋友、會開車。
也許這時候,我們就可以討論這樣的人工智能是否有自我意識這個話題了?需要說明一下的是“長期”的意思,它基本等同于“不知道”,也就是說理論上都還沒有搞明白。
說到人工智能就不能不提“機器學習”,其基本流程是搜集大量數據樣本,選擇合適的模型,讓模型學習樣本,從而找出數據的內在規律。AlphaGo在對戰之前已經學習了數千萬盤棋局,積累了大量經驗(模型優化、模型參數優化)。
舉個最簡單的例子:如果有數據:
那么我們可以選取Y=Kx+b的線性模型,讓機器通過上面的數據去“學習”這些用例。機器可能會得出Y=2*X-1的“學習”結果。從而在x=6.99、x=7.94、x=9.09的事件發生時,得到相應的結果。
當然,AlphaGo的模型要比這復雜的多、數據也更龐大的多,甚至模型本身在很大程度上也是學習得來的。這也是AlphaGo那么牛氣的原因啦。
相對于傳統的程序控制,機器學習/AI在應對大量數據的復雜系統時有著明顯的優勢。程序控制需要精準的先決條件和預設的應對策略,在面對復雜的系統時,人類本身已經無法理清其中的因果關系,從而使編程變得極其困難,例如圍棋的下法,而此時通過模型,讓機器通過大量的數據、用例分析,抽象出各個因素,各因素間的相關性和條件概率(“學習”)就可以達到比較理想的輸出結果。
但相應的,其“不可控性”就會增加(參見凱文凱利《失控》)。比如說Demis Hassabis(AlphaGo之父)自己也無法知道AlphaGo下一步棋子會放在那里。也就是說,人工智能的結果是失去控制,又譬如前段時間鬧的沸沸揚揚的谷歌照片識別將一個黑人標注為大猩猩的事件。這一點會帶給自動駕駛什么樣結果,我們馬上會有所分析。
人工智能與自動駕駛
讀到這里,您一定會發覺,買一個智能機器人,做到駕駛室里幫你開車這樣的科幻電影情節可能在短期內是不會出現了。這樣的機器人有待于“通用人工智能”的突破與實現。也許那時候,人類與機器人的生存競爭問題就真的需要認真的討論了。
那么在可見的未來,像AlphaGo那樣專門用于下圍棋的AI,專門應用于自動駕駛的人工智能會出現嗎?我對這個問題的觀點是:保守的肯定。
現在讓我們分別來看看AI在自動駕駛的三分層:環境感知、決策協同、控制執行中的用處。
第一層,環境感知,這是自動駕駛的數據基礎,提供車輛周邊環境的狀況。車輛不但需要知道自己所在的位置,還要獲取道路屬性、周邊物體的屬性、交通設施的屬性。
在這個層面上視頻分析、雷達成像分析等人工智能手段是完成環境感知的最重要組成部分,這一部分的技術發展已是突飛猛進,例如對車輛、摩托、行人、動物、障礙物、限速牌、紅綠燈、車道的識別。
好的識別模型和大量的數據訓練能夠保證很高的識別正確率,但是,機器學習本身,即使在理論上,它都無法保證絕對(100%)的正確。
這在自動駕駛中卻是不可原諒的缺點,如果環境感知不能確保絕對的正確,那如何保證決策的正確性呢?如何保證行車安全呢?人們會購買發生事故的自動駕駛車輛嗎?
因此,我認為,在環境感知層面,人工智能與工程手段將會起到相互補充的作用,實現對環境的正確感知。其中非常有潛力的一項技術就是V2X技術,它會將所有的交通基礎設施和每輛車都貼上標簽,實時的播發自己的相關信息,從而使得每部汽車都能直接獲取周邊的情況(參見原樹寧《無人駕駛的翻譯器――V2X》)。再結合其他傳感器,實現信息冗余,保證對環境的正確感知。
第二層,決策協同,決定車輛的行駛速度、方向、線路等根本問題。基于程序控制的車輛完全能夠實現自動駕駛,但是,它只能運行在有限的場景之下,極度缺少應對能力,并且消耗大量的程序分析和維護時間(系統越復雜維護成本越高)。
基于機器學習的人工智能在決策協同領域有著無可比擬的優勢,自我完善,維護成本越來越小,具有較強的適應和應變能力。就好比用編程控制的方式也能讓程序下圍棋,卻永遠無法達到AlphaGo的高度。但是,這里也會遇到一些奇奇怪怪的障礙。
1)無規則。在現實生活中交通規則不是絕對必需遵守的,而圍棋的規則至少在正規比賽中雙方都是絕對遵守的。如果李世石偷偷在棋盤上多放一個子,AlphaGo會怎么處理?應該整套模型都必需重構吧?這也是大家調侃谷歌不敢挑戰中國麻將的原因。
一個隨時可以被打破的規則(闖紅燈、超速、逆行、橫道線搶行等)就是沒有規則。這樣的模型建立恐怕絕不亞于“通用人工智能”的難度。解決方法是建立一個必需絕對準守的規則,將那些可能不遵守規則的參與者(機智靈活的人類)全部剔除,于是乎就只身下自動駕駛車輛本身了。
2)規則重塑。在一個只有自動駕駛車輛的路網上,機器的駕駛行為將會完全不同于人類的駕駛行為。
例如,人類在高速上行駛需要保持100米左右的車距,其原因是人類生物能力的限制,例如,高速時視覺的狹窄化、反應時間的限制。此時機器完全不需要顧及人類生物能力的限制,而是根據自身的反應時間、信息處理的范圍和能力重新定義交通規則,例如高速公路車速完全可以提升到200km/h,甚至300km/h,車間距離可以縮小到數米甚至完全對接(參見原樹寧《超級高速公路時代我們還需要高鐵嗎?》),高速公路的線型(坡度、轉彎半徑、車道寬度)也可以放松要求。新的規則將保證自動駕駛車輛的安全運行。
3)車輛互學習。這個只有自動駕駛車輛行駛的道路網中,車輛的駕駛行為和我們現在人類的駕駛行為將會大相徑庭。但是,人類的駕駛行為可以作為車輛自己學習駕駛的起點。
人類開車時是如何保持車距、如何在擁堵時協作排隊、如何變道、轉彎、掉頭對于AI而言都是難能可貴的經驗。以此為巨人的肩膀,在既定規則下,向自動駕駛道路網投入已經學會了人類開車方式的車輛,讓他們之間相互協作、相互學習,優化自己的駕駛效率。
就如同兩個AlphaGo對弈,相互學習圍棋技藝,猜猜看誰的勝率更高呢?
第三層,控制執行,是對決策的執行,例如決策需要5秒加速到80Km/h,那么該噴多少汽油,發送機轉速要多快等等。這里完全是工程的世界、是精確控制的領域,需要對命令的堅決和精準地執行。這里和人工智能無關。
筆者認為,完全基于程序控制的自動駕駛很難在現實中獲得大量普及。但是,控制卻是必不可少的。其精確、可預見等特點將與人工智能的識別技術共同為車輛提供可靠的環境感知;并且提供近乎完美的控制執行能力。另一方面人工智能將會在自動駕駛的決策協同中起到關鍵的作用。