(1.南京信息工程大學(xué) 電子與信息工程學(xué)院, 南京 210044; 2.南京理工大學(xué) 電子工程和光電技術(shù)學(xué)院, 南京 210094)
摘 要:動態(tài)場景的外形或表觀在很大程度上往往受到一個潛在低維動態(tài)過程的控制。基于視頻序列之間的時間相干特性,引入一種稱為自編碼(autoencoder)的特殊雙向深層神經(jīng)網(wǎng)絡(luò),采用CRBM(continuous restricted Boltzmann machine)的網(wǎng)絡(luò)結(jié)構(gòu),用來學(xué)習(xí)序列圖像的低維流形結(jié)構(gòu)。將autoencoder 用于人體步態(tài)序列的實驗表明,該方法能提供從高維視頻幀到具有一定物理意義過程的低維序列的映射,并能從低維描述中恢復(fù)高維圖像序列。
關(guān)鍵詞:視頻序列; 流形學(xué)習(xí); 自編碼網(wǎng)絡(luò); 降維; 重構(gòu)
中圖分類號:TP391 文獻(xiàn)標(biāo)志碼:A
文章編號:10013695(2009)03118303
Learning manifold from dynamic video sequences
HU Zhaohua1,2, SONG Yaoliang2
(1.School of Electronic Infermation Engineering, Nanjing University of Information Science Technology, Nanjing 210044, China; 2.School of Electronic Engineering Optoelectronic Technology, Nanjing University of Science Technology, Nanjing 210094, China)
Abstract: The shape/appearance of dynamic scenes is often largely governed by a latent lowdimensional dynamic process. Based on the temporal coherence between video frames, this paper introduced a special bidirectional deep neural network called autoencoder which used CRBM to learn the lowdimensional manifold structure of image sequences. The experiments on the video sequences of human gait show that the algorithm not only can provide a map from the frames of video to a lowdimensional sequence which represents a physically meaningful process, but also reconstruct exactly the original highdimensional image sequences from lowdimensional manifold structure.
Key words:video sequence; manifold learning; autoencoder network; dimensionality reduction; reconstruction
0 引言
大多數(shù)場景中外形(shape)或表觀(appearance)的變化是由一個低維的時變物理過程所控制。例如人體跟蹤中人行走時步態(tài)隨時間的連續(xù)變化、表情分析中人臉肌肉的收縮等都是低維過程的例子。如何恢復(fù)這些低維過程則是計算機視覺許多領(lǐng)域需要研究的基本問題。
最近,流形學(xué)習(xí)方法已被廣泛用于自動恢復(fù)圖像數(shù)據(jù)的低維描述[1~5]。但是當(dāng)圖像數(shù)據(jù)是視頻序列時,這些方法往往忽視了視頻幀之間的時間相干性,然而這一特性卻可以提供關(guān)于流形領(lǐng)域結(jié)構(gòu)和局部幾何的有用信息。此外各種半監(jiān)督方法也被提出用于學(xué)習(xí)流形結(jié)構(gòu)[6,7]。這些算法雖然聯(lián)合利用一些標(biāo)注(labeled)數(shù)據(jù)和非標(biāo)注(unlabeled)數(shù)據(jù)學(xué)習(xí)得到高維數(shù)據(jù)到低維描述的映射,但仍然沒有利用輸入圖像序列中相鄰幀之間的時間相干性。
本文旨在學(xué)習(xí)運動物體外形或表觀的低維描述,從而可以為后續(xù)的工作如姿態(tài)復(fù)原以及跟蹤提供幫助。本文引入一種稱為自編碼網(wǎng)絡(luò)(autoencoder network)[8,9]的非監(jiān)督學(xué)習(xí)方法,并充分利用視頻序列之間的時間相干特性從而獲得形狀流形的低維嵌套結(jié)構(gòu)。該方法采用自適應(yīng)、多層編碼網(wǎng)絡(luò)將高維原始數(shù)據(jù)轉(zhuǎn)換成低維嵌套,通過訓(xùn)練具有多個中間層的雙向深層神經(jīng)網(wǎng)絡(luò)將高維數(shù)據(jù)轉(zhuǎn)換成低維嵌套,并利用類似的解碼網(wǎng)絡(luò)從低維嵌套中重構(gòu)高維數(shù)據(jù)。自編碼網(wǎng)絡(luò)給出了輸入的高維數(shù)據(jù)與低維嵌套之間的雙向映射,從而克服了大多數(shù)非線性降維方法所不具備的逆映射問題。將自編碼網(wǎng)絡(luò)用于單人或多人步態(tài)序列的實驗表明,自編碼網(wǎng)絡(luò)不僅能夠自動恢復(fù)人體運動步態(tài)的低維流形嵌套,且能很好地重構(gòu)各種步態(tài)序列。
1 自編碼網(wǎng)絡(luò)結(jié)構(gòu)和工作原理
1.1 自編碼網(wǎng)絡(luò)結(jié)構(gòu)
自編碼網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)如圖1 所示,整個系統(tǒng)由編碼和解碼兩個網(wǎng)絡(luò)構(gòu)成。編碼網(wǎng)絡(luò)屬于降維部分,作用是將高維原始數(shù)據(jù)降到具有一定維數(shù)的低維嵌套結(jié)構(gòu)上;解碼網(wǎng)絡(luò)屬于重構(gòu)部分,可視為編碼網(wǎng)絡(luò)的逆過程,作用是將低維嵌套上的點還原成高維數(shù)據(jù)。編碼網(wǎng)絡(luò)與解碼網(wǎng)絡(luò)之間還存在一個交叉部分,稱之為碼字層(code layer)。它是整個自編碼網(wǎng)絡(luò)的核心,能夠反映具有嵌套結(jié)構(gòu)的高維數(shù)據(jù)集的本質(zhì)規(guī)律,并確定高維數(shù)據(jù)集的本質(zhì)維數(shù)。
自編碼網(wǎng)絡(luò)的工作原理如下:首先初始化編碼和解碼兩個網(wǎng)絡(luò)的權(quán)值,然后按照原始訓(xùn)練數(shù)據(jù)與重構(gòu)數(shù)據(jù)之間誤差
最小化的原則對自編碼網(wǎng)絡(luò)進(jìn)行訓(xùn)練。先經(jīng)過解碼網(wǎng)絡(luò)然后再經(jīng)過編碼網(wǎng)絡(luò)采用向后傳播誤差導(dǎo)數(shù)的鏈?zhǔn)椒▌t很容易得到所需的梯度值,進(jìn)而將自編碼網(wǎng)絡(luò)的權(quán)值協(xié)調(diào)到最佳值。
如果自編碼網(wǎng)絡(luò)的初始權(quán)值接近最優(yōu)解,運用梯度下降法則能達(dá)到很好的訓(xùn)練結(jié)果。Hinton等人[8]使用了一種稱為限制玻耳茲曼機(restricted Boltzmann machine,RBM)[10]的兩層網(wǎng)絡(luò)來求取自編碼網(wǎng)絡(luò)的適當(dāng)初始權(quán)值。然而用RBM 來建模連續(xù)數(shù)據(jù)并不太理想。本文引入了限制玻耳茲曼機的連續(xù)形式(CRBM)[11,12],它是一種連續(xù)的隨機再生模型,能夠用一種簡單、可靠的訓(xùn)練算法來建模連續(xù)數(shù)據(jù)。本文將運用CRBM 建模連續(xù)數(shù)據(jù)的過程稱為預(yù)訓(xùn)練過程。CRBM 的結(jié)構(gòu)如圖1 右框圖所示。
在預(yù)訓(xùn)練多層CRBM 后,編碼和解碼網(wǎng)絡(luò)都將使用經(jīng)CRBM 訓(xùn)練得到的權(quán)值作為自編碼網(wǎng)絡(luò)的初始權(quán)值。對于
高維數(shù)據(jù)集而言,這是一種逐漸揭示數(shù)據(jù)集內(nèi)在低維結(jié)構(gòu)的有效方式。接下來的全局調(diào)整過程則使用反向傳播算法[13]通過整個自編碼網(wǎng)絡(luò)對權(quán)值進(jìn)行調(diào)整從而達(dá)到數(shù)據(jù)集的最佳重構(gòu)。
1.2 CRBM 工作原理
CRBM 的結(jié)構(gòu)包括一個可視層和一個隱層及其層間的連接。圖1 的右邊框圖顯示了CRBM 的結(jié)構(gòu)框架,圖
中原始數(shù)據(jù)對應(yīng)CRBM 的可視單元,因為它們的狀態(tài)是可觀測的。CRBM 的輸出對應(yīng)的是隱單元。可視單元與隱單
元之間由權(quán)值矩陣W連接。設(shè)vi和hj分別描述可視單元i和隱單元j的狀態(tài),且它們之間的雙向權(quán)值相等,即wij=wji。
為了建模連續(xù)數(shù)據(jù),CRBM 通過在可視層添加一個零均值的高斯噪聲從而引入一個連續(xù)隨機單元。對于CRBM而言,隱層中每個單元的輸入都來自于可視層中所有單元的狀態(tài),按照各個可視單元對每個隱單元的貢獻(xiàn)大小,對它們之間的連接賦以相應(yīng)的重要權(quán)值,即每個隱單元的狀態(tài)值是所有可視單元的狀態(tài)值按照對其貢獻(xiàn)大小的加權(quán)和。為了表示方便,從現(xiàn)在起,以下都將采用同一個標(biāo)志符s來表示可視單元和隱單元的狀態(tài),設(shè)sj表示輸入來自于可視單元狀態(tài)集{si}的隱單元j的輸出,則有
sj=φj(Σiwijsi+σ×Nj(0,1))(1)
其中:函數(shù)φj的表達(dá)式如下:
φj(xj)=θL+(θH-θL)×1/[1+exp(-ajxi)](2)
其中:Nj(0,1)表示零均值、單位方差的高斯隨機變量。常數(shù)σ 和Nj(0,1)共同產(chǎn)生了一個噪聲輸入分量nj=σ×Nj(0,1)。其概率分布為
p(nj)=[1/(σ2π)]exp(-n2j/(2σ2))(3)
由式(2)可知, φj(x )是漸近線在θL和θH處的sigmoid函數(shù)。參數(shù)aj控制著sigmoid 曲線的斜率,是噪聲控制變量,當(dāng)aj由小變大時,可以完成從無噪聲的確定性狀態(tài)到二進(jìn)制隨機狀態(tài)的平滑過渡。
CRBM 采用最小化對比散度(minimizing contrastivedivergence, MCD)訓(xùn)練準(zhǔn)則替代了僅靠Gibbs 抽樣的玻耳茲曼機[14]的松弛搜索,大大減少了計算量。MCD 訓(xùn)練準(zhǔn)則用來更新CRBM 的權(quán)值{wij}以及噪聲控制參數(shù){aj} :
Δwij=ηw(〈sisj〉-〈si^sj^〉)(4)
Δa^j=ηa/a2j(〈s2j〉-〈s^2j〉)(5)
其中:s^j表示單元j的一步重構(gòu)狀態(tài);〈#8226;〉表示訓(xùn)練數(shù)據(jù)的均值;ηw是學(xué)習(xí)率。
式(4)(5)表明CRBM 的訓(xùn)練準(zhǔn)則只需進(jìn)行簡單的加法和乘法運算,從而使得計算量不至于過大,并可以很容易地完成權(quán)值的更新過程。
2 人體步態(tài)序列的流形學(xué)習(xí)
2.1 單個人體步行序列的降維和重構(gòu)
本文利用人體運動數(shù)據(jù)庫[15]中的圖像數(shù)據(jù)集來訓(xùn)練一個深層自編碼網(wǎng)絡(luò)。該數(shù)據(jù)庫中提供了幾種類型的人體行為模板,有walk、jump、run、bend 等,在此章選用側(cè)面視角的步行(walk)模板進(jìn)行實驗。由于人體步行運動具有一定的時間連續(xù)性和周期性,只需考慮側(cè)面視角的人體步行姿態(tài)在一個周期內(nèi)的運動即可。圖2 則顯示了人體在一個周期內(nèi)的側(cè)面步行圖像序列。
實驗中每幅模板圖像的大小為61×93,通過行堆疊的方式可將其轉(zhuǎn)換為5 673 維實向量。自編碼網(wǎng)絡(luò)由各層大小依次分別為567310005002501003的編碼網(wǎng)絡(luò)和一個與之對稱的解碼網(wǎng)絡(luò)構(gòu)成。將單個人的步行圖像序列輸入自編碼網(wǎng)絡(luò)進(jìn)行訓(xùn)練,其中包含六個步行周期,每個周期由15幀圖像構(gòu)成。非線性降維的結(jié)果是在低維歐氏空間得到了步態(tài)流形的一個嵌套。圖3 則顯示了某一側(cè)面步行者的嵌套流形結(jié)構(gòu),為了便于直觀上理解,沿著該低維流形示出了一個步行周期的抽樣圖像。其中幀數(shù)表明步行的時間次序;藍(lán)紅綠三條曲線表示三個步行周期。圖4 顯示了另一個視角的流形結(jié)構(gòu)。
從上面的流形結(jié)構(gòu)可以看出,對于一個固定視角的步行序列而言,在低維嵌套空間中步行周期將沿著一個閉合曲線
進(jìn)行演變,即只有一個自由度控制步行周期,并將受約束的步態(tài)對應(yīng)為時間的函數(shù)。這一結(jié)論與步態(tài)流形是一維的直觀感受相一致。
利用autoencoder 網(wǎng)絡(luò)對步行序列的重構(gòu)結(jié)果如圖5 所示。可以看出autoencoder 網(wǎng)絡(luò)對步行序列有很好的重構(gòu)效果。
2.2 多人步行序列的流形學(xué)習(xí)
實驗中,將七個不同人的步行序列輸入autoencoder 網(wǎng)絡(luò)進(jìn)行訓(xùn)練,得到的降維結(jié)果如圖6 所示,分別用七種不同顏色曲線區(qū)分出每個人步行序列的降維效果。由此可見,當(dāng)多個不同人的步行序列混合作為訓(xùn)練數(shù)據(jù),經(jīng)autoencoder降維到三維空間后,單個人的低維流形曲線仍具有一定的周期性質(zhì),并且集中在自身流形結(jié)構(gòu)周圍。不同人walk 序列的流形結(jié)構(gòu)在三維歐氏空間則存在位置上的差異,這也能反映出不同的人在行走時其步行姿態(tài)是有差別的。
2.3 多人步行序列和跑序列的混合降維和重構(gòu)
這一節(jié)的實驗,將多個人的步行序列和跑序列同時混合輸入autoencoder 網(wǎng)絡(luò)進(jìn)行訓(xùn)練,圖7 則顯示了最終的降維效果。其中:藍(lán)色標(biāo)注的是步行序列;紅色標(biāo)注的是跑序列,圖中跑序列的周期明顯小于步行序列的周期,這與人們的生活經(jīng)驗\"跑要比步行快\"相一致。本文將其中一個人的跑序列經(jīng)autoencoder 重構(gòu)的效果圖顯示在圖8 中。
由圖8 可見,跑序列的重構(gòu)效果并不是太好。因為重構(gòu)跑序列圖與原始跑序列圖相比,明顯帶有步行的成分,這主要是將步行序列與跑序列混合進(jìn)行訓(xùn)練的原因。由此可以采用單獨訓(xùn)練跑序列的方法來改進(jìn)重構(gòu)效果。
3 結(jié)束語
本文引入一個框架來學(xué)習(xí)動態(tài)序列圖像的形狀流形,該框架基于一種特殊的非線性降維方法——autoencoder 網(wǎng)絡(luò),并充分利用視頻序列之間的時間相干特性從而獲得形狀流形的低維嵌套結(jié)構(gòu)。Autoencoder 采用CRBM 網(wǎng)絡(luò)結(jié)構(gòu),用于挖掘高維數(shù)據(jù)所嵌入的低維嵌套。特別地,自編碼網(wǎng)絡(luò)不僅能提供從高維數(shù)據(jù)空間到低維嵌套的映射,而且也可以給出相反的逆映射,即自編碼網(wǎng)絡(luò)給出了輸入的高維數(shù)據(jù)與低維嵌套之間的雙向映射,從而克服了大多數(shù)非線性降維方法所不具備的逆映射問題。
進(jìn)一步的工作,筆者準(zhǔn)備將本文得到的人體步態(tài)的低維流形用于人體步態(tài)跟蹤和識別,以及將自編碼網(wǎng)絡(luò)應(yīng)用于其他高維真實數(shù)據(jù),例如發(fā)現(xiàn)車輛運行軌跡的低維流形,從而更好地指導(dǎo)車輛的跟蹤以及行為識別。
參考文獻(xiàn):
[1]BELKIN M,NIYOGI P.Laplacian eigenmaps and spectral techniques for embedding and clustering[C]//Advanced in Neural Information Processing Systems 14.Cambridge,MA:MIT Press,2001:585591.
[2]BRAND M.Charting a manifold[C]//Advanced in Neural Information ProcessingSystems (NIPS).Cambridge, MA:MIT Press,2002:961968.
[3]DONOHO D L, GRIMES C. Hessian eigenmaps: new locally linearembedding techniques for high dimensional data,Technical report.TR200308[R].California:California Dept.of Statistics,Stanford University,2003.
[4]ROWEIS S,SAUL L.Nonlinear dimensionality reduction by locallylinear embedding [J].Science,2000,290(5500):23232326.
[5]TENENBAUM J B,SILVA V DE,LANGFORD J C.A global geometric framework for nonlinear dimensionality reduction[J].Science,2000,290(5500):23192323.
[6]HAM J H,LEE D D,SAUL L K.Learning high dimensional correspondences from low dimensional manifolds[C]//Proc of ICML.Washington DC:[s.n.],2003:3441.
[7]BELKIN M,MATVEEVA I,NIYOGI P.Regularization and semisupervised learning on large graphs[C]// Proc of the 17th Ann Confon Computational Learning Theory.Berlin:Springer,2004:624638.
[8]HINTON G E,SALAKHUTDINOV R R.Reducing the dimensionality of data with neural networks [J].Science,2006,313(5786):504507.
[9]ZENG Xianhua,LUO Siwei,WANG Jiao.Autoassociative neural network system for recognition[C]//Proc of the 6th International Conference on Machine Learning and Cybernetics.Hong Kong:[s.n.],2007:28852890.
[10]HINTON G E.Training products of experts by minimizing contrastive divergence[J].Neural Computation,2000,14(8):17711800.
[11]CHEN H,MURRAY A F.A continuous restricted Boltzmann machine with a hardwareamenable learning algorithm[C]//Proc of the 12th Int Conf on Artificial Neural Networks (ICANN2002).London,UK:SpringerVerlag,2002:358363.
[12]CHEN H,MURRAY A F.Continuous restricted Boltzmann machine with an implementable training algorithm [J].IEE Proceedings of Vision,Image and Signal Processing,2003,150(3):153158.
[13]吳曉迪,黃超超.基于BP 神經(jīng)網(wǎng)絡(luò)的運動目標(biāo)紅外圖像仿真[J].系統(tǒng)仿真學(xué)報,2006,18(1):377379.
[14]HINTON G E.Training products of experts by minimizing contrastive divergence,GCNU TR 2000004[R].London:Gatsby Computational Neuroscience Unit,2000.
[15]BLANK M.Human action database [EB/OL].(20071224)[20080210].http://www.wisdom.weizmann.ac.il/~vision/SpaceTimeActions.html.