0

今年10月12日,2021中國人工智能大會(CCAI 2021)在成都正式啟幕,23位中外院士領銜,近百位學術技術精英共聚西南人工智能新高地,深入呈現人工智能學術研究,以及技術創新與行業應用的最新成果。中國人工智能學會副理事長、中科院自動化所副所長/研究員、IAPR/IEEE/CAA/CAAI Fellow劉成林教授發表了題為《模式識別:從初級感知到高級認知》的演講,向與會者介紹了模式識別的內涵、演化、研究現狀以及未來值得研究的方向。

本次演講首先對模式識別領域做了一個基本的介紹,然后分析了模式識別的研究現狀,介紹了一些模式結構理解方面的新進展,最后從結合認知的角度講了將來有哪些值得研究的問題和方向。
以下是演講全文,AI科技評論進行了不改變原意的整理。
1. 模式識別的內涵
模式識別或機器感知,是人工智能領域的幾個主要分支方向之一。人工智能是模擬人的智能,那么模式識別就是模擬人的感知功能。感知功能是人或機器最重要的智能之一,因為人或機器要從環境中獲得信息,首先要通過感知,比如通過視覺識別場景、人物和文字,通過聽覺跟人交流。心理學或者認知科學對感知或模式識別的定義是:把獲得的刺激,也就是感知信號與腦子里所存儲的信息進行匹配,從而判斷所感知到的是什么內容。從計算機實現模式識別的角度,也有一些定義,大概可以分成兩類:
一類是狹義的,就是根據某種客觀標準對目標進行分類和標記,這里主要是指分類。
另一類是廣義的,就是對數據中的目標、現象或事件進行分類或者描述。這個描述就是一個比較復雜的感知過程,因為描述實際上要對模式的結構進行理解。
綜合起來,模式識別的定義就是,研究如何使機器模擬人的感知功能,從環境感知數據中檢測、識別和理解目標、行為、事件等模式。
模式識別的基本流程是用傳感器(比如攝像頭)獲取感知數據(如圖像)后,對圖像中的物體進行檢測和定位,然后用一個模式分類器判斷物體屬于哪類,這是一個傳統的模式識別流程。
如果要擴展到描述,就要對物體內部結構和圖像中多個物體之間的關系進行分析,最后用自然語言句子描述出來。比如下圖這個圖像,它最后給出的結果可能是:“穿火箭隊11號球衣的姚明與教練站在一起”,如果不知道這個人是誰,結果可能是“兩個身高相差很大的人站在一起”,這就是一個比較復雜的模式理解過程。

2. 模式識別的方法演化
模式識別領域與人工智能領域的發展幾乎初步,從上世紀50年代以來提出了很多方法。我們看到,1957年最早發表關于模式識別的論文。50年代到60年代,主要是基于統計決策的方法,也就是統計模式識別。60年代末開始提出句法模式識別,70年代到80年代,句法模式識別或者結構模式識別都是研究重點,當然統計模式識別也在不斷向前發展。80年代中期,多層神經網絡引起了廣泛關注,90年代則開始出現多種學習方法。
機器學習在60年代就提出了,最早的機器學習主要指模式分類器的參數估計(如N.J. Nilsson的Learning Machines一書),但現在內容更寬泛了。90年代有大量的機器學習方法提出來,也是圍繞模式識別問題,主要用于模式分類器設計或者分類器的參數估計,包括90年代比較有代表性的支持向量機。2000年后還有更多的學習方法,包括多分類器(集成學習)、多任務學習、概率圖模型、遷移學習等。現在主要是深度學習方法,可以說是最主流也幾乎是統治的方法。
模式識別的方法按模式表示方式可以分為統計方法和結構方法兩大類。統計方法基于特征矢量表示,廣義地說,神經網絡或支持向量機也屬于統計方法。結構方法要對模式進行結構描述,過去幾十年一直都在研究,但目前還不太實用。統計和結構混合的方法從80年代開始提得比較多,這種方法是在結構模型中融入統計屬性,如屬性圖和概率圖模型,現在神經網絡與圖模型或者圖神經網絡結合得越來越多。
模式分類器從功能的角度上來說,又分為生成模型和判別模型。判別模型目標就是為了把不同類別的模式分開,主要關心區分性。生成模型則有點像我們腦子里的模板匹配或者特征匹配,比如我看見一個人,是把這個人跟記憶中認識的人的圖像或特征進行匹配從而識別出來。存在腦子里的這些圖像或特征,就像一個生成模型。生成模型除了能用于分類,同時因為它表達了每一類的特點或概率分布,所以又能用來生成數據。
從模型學習的角度來說,有關學習方法又分為生成學習或者判別學習,判別學習是為了提高模型的分類能力,比如神經網絡主要是判別學習,而生成學習是為了得到一類數據的表示模型。
1. 當前主流方法
深度學習(深度神經網絡)現在是模式識別領域統治性的方法。深度學習最早提出是在2006年Hinton發表的一篇文章。這篇文章提出多層神經網絡的逐層訓練方法,克服層數較多時難以收斂的問題。80年代多層神經網絡訓練的誤差反向傳播算法(BP算法)之后,對超過五層的神經網絡訓練難以收斂而且泛化性不好。逐層訓練方法在這方面有了很大的改進。早期深度學習主要在語音識別中取得成功,像循環神經網絡 LSTM(長短期記憶網絡) 也是在2006年提出的,在語音識別和手寫文字識別中產生了很大影響。

基于這種函數映射的方式,只要有大量的標記數據訓練(估計函數的參數),就可以達到很高的分類性能,甚至超過我們人類的識別能力。
最近十幾年,深度學習之所以能夠取得巨大成功,主要在于計算能力的提升,可以用大量數據訓練神經網絡。在 2012 年大規模圖像分類競賽(ImageNet)中,用了100多萬圖像樣本訓練深度卷積網絡,與之前傳統模式識別方法(基于人工特征提取)相比,分類正確率提高了 10 %以上。這是一個巨大的飛躍,因為過去傳統方法要提高 1 %都是很困難的。
現在深度神經網絡能夠從圖像里自動提取特征,把特征提取和分類器進行聯合學習或端到端的學習,能夠提取到表達和判別能力更強的特征。深度學習在模式識別的其他任務上也有很大的進展。
比如,物體檢測過去認為是一個很難的問題, 90年代末開始人臉識別技術實用化,就要從圖像中檢測定位人臉,早期檢測方法基于滑動窗分類,精度和速度都必較低。現在提出的很多基于深度神經網絡的兩階段分類或者一階段分類的方法,實質上也是把神經網絡作為一個兩類分類器,在圖像不同區域判斷它是前景還是背景區域。現在深度神經網絡借助大算力和大數據訓練,物體檢測的精度和速度都有很大提升。
圖像分割問題過去也是很難的,這是一個像素分類問題,就是把每個像素分類到不同的物體或背景區域。根據不同的需求,現在提出了所謂的語義分割、實例分割、全景分割等多種有效的方法,都取得了很大進展。
上面說的檢測、分割和目標識別都是分類問題,現在一些更復雜的模式識別問題,例如圖像描述也可以用深度神經網絡的端到端的方法實現。
圖像描述,就是給定一幅圖,用自然語言句子描述這個圖像的內容。端到端的方法,就是底層用一個卷積神經網絡去提取特征,然后上面加一個循環神經網絡,即 LSTM 神經網絡去生成語言。這兩個網絡進行聯合訓練,用大量圖像和語言配對的數據去訓練神經網絡,就可以達到比較好的語言描述性能。最近也有一些可解釋性更好的深度神經網絡方法,把自底向上的物體檢測與自頂向下的語言生成模型結合,先檢測到很多候選物體區域,然后對它們進行關系分析的基礎上生成句子。
圖像分類、檢測、分割以及圖像描述等過去都被認為很難的問題,最近不到十年時間,性能都提升得很快,而且很多技術在我們日常生活中已經被廣泛應用,比如智能手機上用到的很多模式識別技術,包括人臉識別、文字識別、語音識別等,網絡圖像檢索也做得非常好。
這種數據驅動的神經網絡,大部分是端到端的模型,是不是就能解決所有的問題?其實這種方法還有很多不足,還是有很多問題需要解決。一個問題就是深度神經網絡需要標記大量數據用于訓練,而標記數據的代價非常大。此外,神經網絡這種端到端的學習方式,可解釋性比較差。人并不是這樣學習的,也不需要很多數據,而且人識別模式的可解釋性比較強。比如,我們識別一個人不僅能識別出是誰,還能解釋為什么這個人是張三還是李四,這個人的眼睛、鼻子、臉,以及行為、身體有什么特點等都能給出一個詳細解釋,而現在的神經網絡很難做到。
神經網絡的解釋能力差也會引起識別的魯棒性差,也就是穩定性比較差,識別結果容易受干擾。
現在看一些例子。在很多實際應用中對識別的可靠性要求非常高,有些場合要求識別結果不能出錯,可以有部分拒識(不認識)。如手寫文字識別,現在基于深度學習得到了很高的識別精度,但還是會有少量錯誤。對金額票據識別這樣的應用是不允許出錯的,如果能拒識一部分消除錯誤,拒識的部分可以交給人工處理。而深度神經網絡的拒識能力比人類要差很多,因為它們基于統計分類,沒有結構解釋能力,容易把似是而非的模式分錯。
深度神經網絡經過大數據訓練后,雖然識別正確率可能比人還高,但對于少部分容易錯的地方除了不能夠拒識,還會產生一些莫名其妙的錯誤。如下圖所示,在對抗學習的場合,這個熊貓圖像加上少量噪聲,得到右邊的圖像在人看上去幾乎沒有變化,但是神經網絡得到的識別結果就完全變了。
像后面這個圖像,神經網絡描述為“一個小孩拿著棒球棒”,明顯是錯的,而且邏輯上也不通,這么小的孩子不可能拿一根棒球棒;右上角這個交通標志圖上只是加了幾個黑點,就把它判斷成一個限速標志。還有下面這些圖像描述結果也是不對的,倒數第二個是一個標志牌,上面貼了一些貼紙,就被認為是一臺冰箱。因為深度神經網絡沒有可解釋性,所以它的魯棒性也很差。

2. 結構模式識別早期進展
上世紀七八十年代流行的句法模式識別,是希望用一個語法或者樹結構或圖結構表示模式,通過語法解析或結構模式匹配進行識別。這些工作過去很長時間都沒有達到實用化,但是這些思想對我們現在的研究是很有啟發的。基于筆劃匹配的手寫漢字識別在八九十年代以來也有很多研究,包括我自己做的一個工作:因為筆劃提取很困難,我們提出一個基于筆劃段動態合并和匹配的方法。
基于圖的方法,到現在為止還是一種主流方法。早在1973年,美國的兩名科學家就在 IEEE Transaction on Computers上發表文章,提出Pictorial Structure(圖形結構),就是一個物體由多個部件構成,不同部件之間的關系用一個彈簧表示,這與我們今天的圖結構很相似。
到了2005年,芝加哥大學的Felzenszwalb等人用概率圖模型實現這種圖結構方法,用于人體姿態估計和人臉檢測。后來又發展出判別性的基于部件的模型,這個部件模型表示了一個物體的多個部件,每個部件的形狀、位置和物體整體形狀都用一個概率模型表示。如果一個物體有不同視角,它的表觀可能會有很大變化,這就用一個混合模型表示出來,用于物體檢測,取得了非常好的效果。
另一個影響比較大的圖方法叫做Constellation Model(星座模型),是加州理工學院提出的。這個模型有一個中心表示整體形狀,每個部件的位置、尺度和形狀以一個聯合的概念密度模型表示出來,可以用于物體的檢測和識別。因為它是一個生成模型,可以實現小樣本泛化,每個類別在樣本數比較少的情況下,也可以得到比較好的性能。
十幾年前還有一個叫做Image Parsing 的工作,就是把圖像中不同的前景區域和背景區域,統一用一個圖來描述。在分析時先采用檢測器檢測物體和文本區域,產生一些自底向上的假設,然后自頂向下的生成模型來分析它們的關系。這個工作還沒有用到深度學習,所以它的分析精度是有限的。
現在的深度神經網絡從數據學習的能力很強,但是可解釋性不夠,我們希望對于圖像場景分析這樣的問題,能夠做到可解釋同時精度又比較高,可以把傳統的結構模型與深度神經網絡結合,比如用卷積神經網絡提取圖像特征,做物體或部件檢測,然后上層用一個結構模型來表示這些物體或部件之間的關系。
3. 一些最新進展
現在,圖神經網絡的學習和推理能力很強,使用非常靈活,但是需要給定圖結構。很多結構模型的學習需要細粒度標注的訓練數據,有些也可以實現弱監督學習。還有一個值得注意的方向,就是有一些結構可解釋的神經網絡,采用模塊化的結構,可自動學習可分解的部件。這里我介紹一些最近有代表性的關于結構理解的工作,包括可解釋性神經網絡、深度圖匹配、公式識別、圖像場景理解等,這些方向每個都形成了一系列的工作。
可解釋性神經網絡的代表是Hinton等人提出的膠囊網絡,網絡中的每個膠囊是一個模塊,可以檢測物體和部件;而且不同膠囊之間相互獨立,可以識別圖像中重疊的部件或者重疊的物體。
另一個是最近提出來的組合性神經網絡(Compositional Network), 它是一個類似于兩層的“與或”圖表示,可以把一個物體的不同部件檢測出來,而且在部分部件被遮擋的情況下也能檢測到。這個模型可以從弱標注的數據學習,只要標注物體的位置,不需要標注部件。在有遮擋的情況下,它的性能明顯優于常規的物體檢測網絡。
圖匹配過去幾十年一直都有研究,其中有兩個關鍵難題,一個是組合優化,也就是如何克服指數復雜度的問題。另一個就是它的距離度量,過去是靠人工設計,現在深度神經網絡可以把距離度量自動學習出來,但是需要大量有節點對應標記的圖數據來訓練,當然有時可以用合成數據來代替。
結構分析方法如果用于零樣本識別(把從已知類別樣本學習到的模型用于識別沒有訓練樣本的新類別)可以產生更好的泛化性能。這是我們實驗室做的基于圖的零樣本視頻分類的工作。因為視頻里涉及到很多物體和原子行為,我們用圖網絡表示不同物體之間的關系、不同類別之間的關系和物體與行為之間的關系,那么這種結構關系可泛化到新類別上。
數學公式識別也是很復雜的結構模式識別問題,現在手寫公式識別最好的方法的整體識別正確率只能達到百分之五六十。因為一個公式有很長的一串符號,要全部識別正確非常困難。所以采用可解釋性的結構識別模型,能同時識別和定位公式中的符號。
過去傳統的方法就是基于自底向上的字符分割,然后再去做識別,但是總體識別精度必較低。前幾年主流的方法是用一個端到端的神經網絡結構,它的解碼器從輸入圖像直接解碼出公式的字符串,但沒有字符定位。這種沒有字符定位的公式識別方法,除非識別率達到100%,否則是不適用的,因為難以對錯誤的部分進行定位和編輯。

圖像場景理解也有一些新進展。這個斯坦福大學李飛飛研究組的工作從圖像與文本之間配準的角度訓練一個語言生成模型用于圖像描述。場景圖的生成,就是把圖像里的不同物體和背景區域用一個圖表示出來,每個節點表示一個物體或者一個背景區域,邊表示它們的關系,其結構一目了然。圖像處理的底層用一個卷積神經網絡提取特征,檢測候選物體上傳到圖神經網絡進行分析。
我們把類似的方法用到交通標志圖解析。標志圖上有很多符號和文字,在駕駛時要找到“我要往哪去”這樣的信息,就要理解每個符號的意思及符號之間的關系。圖像文本匹配現在也是一個比較復雜的問題,因為圖像里的物體順序與文本里的詞順序不一致,所以要學這個配準關系。我實驗室同事提出的這是一個自底向上和自頂向下相結合的方法。
視覺問答現在是一個比較被關注的問題,就是讓機器看一幅圖,對給出的語言提問從圖中找到答案,有些答案可以直接從圖中找到,有些則可能要利用一些背景知識或常識。
早幾年有些方法也是端到端的方法,比如這個模型有兩個階段,首先用一個神經網絡分析問題的句子,生成一個解題策略(叫做layout policy),然后這個策略動態生成一些模塊網絡,動態地到圖像里去找答案。最近中山大學研究組發表一個可解釋性視覺問答方法,把問題句子表示成語義依存樹,遍歷樹的節點從圖像中動態尋找答案。
總之,現在基于深度學習的方法,推動模式識別和計算機視覺前進了一大步。那么當基于大數據訓練使得模式分類性能提高之后,剩下的問題就回到了模式識別最初想做的模式描述,即模式的結構理解。只有實現了模式結構理解才可能做到可靠和魯棒,而且結構理解的方法對于小樣本學習、開放環境適應、可解釋性等都會有很大幫助。
從最近的一些研究進展可以看出,為了解決復雜的模式識別問題,統計與結構模型的混合、神經網絡+結構模型、可解釋性神經網絡、視覺+語言等研究越來越受到關注。從中也可以看出,早期很多基于句法模式識別和結構模式識別的方法,對我們現在和未來的工作都值得借鑒,或者值得重新發掘。
未來值得研究的方向包括:
(1)結構表示模型。目前主流的結構是神經網絡+結構(如Graph或圖神經網絡),可以擴展到更多結構形式,如樹、貝葉斯網等。跨模態學習(如視覺+語言)中往往需要用到結構表示,并且可結合符號知識。
(2)結構模型學習,包括圖匹配度量學習、半監督學習、弱監督學習、開放環境增量學習、小樣本學習、領域自適應、跨模態學習等。目前流行的自監督學習可以為結構學習提供預訓練特征表示模型,從而大為簡化結構模型的學習。
(3)語義理解應用。模式結構理解或語義理解很多時候要與應用結合起來,比如智能機器人或無人駕駛等,它的感知要與認知緊密結合、與決策結合,因為要把視覺信息結合背景知識才能做一個準確判斷。
最后呼應一下今天講的題目:從初級感知到高級認知。現在模式分類,也就是一種初級感知,已經做得非常好,但還有很多問題沒有解決,它的魯棒性、可靠性、自適應性、小樣本學習泛化等方面還需要深入研究。到高級感知層面,就是要對模式進行結構理解,如物體結構理解、場景理解,相應的結構模型表示、學習、推理等有一系列研究問題;更高級的層次是感知和認知結合起來,就是高級認知,包括語義理解、語義推理、語義應用與決策等。

雷峰網雷峰網(公眾號:雷峰網)
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。