羅澤鵬,范 峰,高宇航
(華北理工大學(xué),河北 唐山 063210)
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)領(lǐng)域中的一個(gè)分支,起源于人工智能領(lǐng)域,其起源可以追溯到1980年提出的新認(rèn)知機(jī)[1]概念,而現(xiàn)代深度神經(jīng)網(wǎng)絡(luò)得以發(fā)展離不開向后傳播算法[2]的提出,現(xiàn)代深度神經(jīng)網(wǎng)絡(luò)基本上都使用反向傳播(Back Propagation,BP)算法進(jìn)行訓(xùn)練。之后很長一段時(shí)間內(nèi)深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練由于BP神經(jīng)網(wǎng)絡(luò)模型帶來的梯度彌散(Gradient Diffusion),直到Hinton[3]在2006年提出的逐層訓(xùn)練方法才重新將人們的目光轉(zhuǎn)向深度神經(jīng)網(wǎng)絡(luò)。
隨著近年傳感器技術(shù)發(fā)展以及越來越強(qiáng)大越來越容易獲取的計(jì)算資源,出現(xiàn)了許多復(fù)雜高維數(shù)據(jù)集。在這一類數(shù)據(jù)集上使用淺層機(jī)器學(xué)習(xí)模型的表現(xiàn)通常會(huì)變差。例如K近鄰(K-Nearsert Neighbor,KNN)學(xué)習(xí)是一種常用的監(jiān)督學(xué)習(xí)方法,常用于分類問題,其工作機(jī)制非常簡單;給定測試樣本,基于某種距離度量找出訓(xùn)練集中與其最靠近的K個(gè)訓(xùn)練樣本,然后基于這K個(gè)近鄰的信息來進(jìn)行預(yù)測。在模式識別領(lǐng)域中,最近鄰居法是一種用于分類和回歸的非參數(shù)統(tǒng)計(jì)學(xué)方法。在這兩種情況下,輸入包含特征空間中的K個(gè)最接近的訓(xùn)練樣本。近年來,計(jì)算機(jī)視覺領(lǐng)域取得許多引人注目的成果,尤其是卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNNs)在分類、目標(biāo)檢測問題上取得了優(yōu)異成績。因此,本文通過對比K近鄰模型與卷積神經(jīng)網(wǎng)絡(luò)在高維度數(shù)據(jù)集上的表現(xiàn),證明卷積神經(jīng)網(wǎng)絡(luò)處理高維數(shù)據(jù)集有優(yōu)異的性能。
在機(jī)器學(xué)習(xí)的模型上,選取了具有代表性的KNN模型作為淺層機(jī)器學(xué)習(xí)模型的代表。卷積神經(jīng)網(wǎng)絡(luò)方面,構(gòu)建了2個(gè)卷積神經(jīng)網(wǎng)絡(luò)的模型作為卷積神經(jīng)網(wǎng)絡(luò)對比項(xiàng)。
使用了基于ResNet50[4]裁剪后的迷你版作為實(shí)驗(yàn)的第一階段的卷積神經(jīng)網(wǎng)絡(luò)模型,在卷積層尺度上進(jìn)行相應(yīng)縮小。使用殘差網(wǎng)絡(luò)隨著深度增加,準(zhǔn)確度也會(huì)隨之增加。其中Conv2,Conv3,Conv4,Conv5層均是由殘差塊組成的一系列卷積層池化層。
如表1所示,基于RestNet50層模型修改而來的縮小版的架構(gòu),我們稱之為ResNet50-mini。
表1 ResNet50-mini結(jié)構(gòu)
對于實(shí)驗(yàn)第二階段使用了一個(gè)6層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,由1層卷積層、1層池化層、4層全連接層組成。
圖1 6層卷積網(wǎng)絡(luò)
實(shí)驗(yàn)主要分為兩個(gè)階段:第一階段,對比KNN與ResNet50-mini在同一數(shù)據(jù)集以及相同劃分下對分類任務(wù)的準(zhǔn)確度。第二階段,對比KNN與6層卷積神經(jīng)網(wǎng)絡(luò)在統(tǒng)一數(shù)據(jù)以及同一劃分下對分類任務(wù)的準(zhǔn)確度,來獲得更具有普遍性的結(jié)論。
2.1.1 實(shí)驗(yàn)數(shù)據(jù)選擇與處理
實(shí)驗(yàn)階段一使用的數(shù)據(jù)集為加州大學(xué)歐文(爾灣)分校(University of California Irvine,UCI)的可穿戴計(jì)算體態(tài)運(yùn)動(dòng)分類數(shù)據(jù)集[5]。此數(shù)據(jù)集一共有18列,165632條數(shù)據(jù),使用4個(gè)三軸加速傳感器記錄了8 h的活動(dòng)數(shù)據(jù),將活動(dòng)分為5類(坐,坐下,站立,站起,行走)。
將數(shù)據(jù)集按1∶4比例隨機(jī)劃分訓(xùn)練集以及測試集,訓(xùn)練集為124224條數(shù)據(jù)測試集有41409條數(shù)據(jù)。
選取年齡、身高、體重、BMI指數(shù)、4個(gè)三軸傳感器數(shù)據(jù),一共16列作為特征值??纱┐饔?jì)算體態(tài)分類數(shù)據(jù)集各列數(shù)據(jù)類型如表2所示。
表2 可穿戴計(jì)算體態(tài)分類數(shù)據(jù)集各列數(shù)據(jù)類型
如圖2所示,這兩張的4×4大小的灰階圖片都包含著可以用來判斷體態(tài)行為的所有數(shù)據(jù)。雖然通過肉眼看上去,這兩張圖片好像有著很大的差異,但是事實(shí)上,這兩張圖片所表示的數(shù)據(jù)都屬于同一類體態(tài)。KNN算法在此數(shù)據(jù)集上的表現(xiàn)為99.54%的準(zhǔn)確率。
2.1.2 訓(xùn)練ResNet50-mini模型
使用ResNet50-mini模型,模型使用的優(yōu)化算法為Adam算法[6],損失函數(shù)為多類交叉熵(categorical crossentropy)函數(shù)。
如圖3所示,ResNet50-mini經(jīng)過10個(gè)Epoch的訓(xùn)練損失和準(zhǔn)確率的變化情況??梢灾庇^地看到,損失下降得很快,隨著損失的快速下降,訓(xùn)練集的準(zhǔn)確率也在不斷提升。經(jīng)過1000個(gè)Epoch的訓(xùn)練,ResNet50-mini在測試集上的分類精度達(dá)到了99.56%。
2.2.1 實(shí)驗(yàn)數(shù)據(jù)選擇與處理
實(shí)驗(yàn)階段二使用的數(shù)據(jù)維數(shù)較實(shí)驗(yàn)階段一使用的數(shù)據(jù)更為龐大。選用的數(shù)據(jù)集為NIPS 2003特征選取挑戰(zhàn)賽中5個(gè)數(shù)據(jù)集之一的Arcene數(shù)據(jù)集[7]。Arcene數(shù)據(jù)集的任務(wù)是使用大量的質(zhì)譜數(shù)據(jù)分辨目標(biāo)是否患有癌癥。Arcene數(shù)據(jù)集一共包含有900條數(shù)據(jù)訓(xùn)練集、驗(yàn)證集、測試集分別來自3個(gè)不同的來源。其中訓(xùn)練集、驗(yàn)證集各100條數(shù)據(jù),測試集700條數(shù)據(jù),但未給出標(biāo)注。選取ml-benchmarks中的已標(biāo)注的100條數(shù)據(jù)作為測試集。其中,每條數(shù)據(jù)有10000個(gè)特征。
圖2 UCI可穿戴計(jì)算體態(tài)分類數(shù)據(jù)集選取特征組成的4×4灰階
如圖4所示,這是Arcene數(shù)據(jù)集中一條數(shù)據(jù)展開成100×100大小矩陣所轉(zhuǎn)化成的灰度圖片。與實(shí)驗(yàn)階段一不同的是,通過肉眼已經(jīng)無法看出其中存在的模式。
圖3 ResNet50-mini訓(xùn)練情況
圖4 ARCENE數(shù)據(jù)組成的100×100的灰階
2.2.2 訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)
將數(shù)據(jù)集中的測試集、驗(yàn)證集與驗(yàn)證集合并,并隨機(jī)劃分為270條數(shù)據(jù)為訓(xùn)練集,30條數(shù)據(jù)為測試集。
本階段實(shí)驗(yàn)選取的模型為4層卷積神經(jīng)網(wǎng)絡(luò),結(jié)構(gòu)如圖1所示,訓(xùn)練中使用的優(yōu)化算法為Adam算法,損失函數(shù)為多類交叉熵(categorical crossentropy)函數(shù)。
如圖5所示,ARCENE數(shù)據(jù)集在6層卷積神經(jīng)網(wǎng)絡(luò)上的訓(xùn)練情況可以看出,雖然一開始損失很大,但是隨著訓(xùn)練的時(shí)間開始快速下降,100個(gè)Epoch訓(xùn)練后分類準(zhǔn)確度達(dá)到69.99%。
在實(shí)驗(yàn)階段一中,KNN在UCI可穿戴體態(tài)分類數(shù)據(jù)集上進(jìn)行多分類任務(wù)準(zhǔn)確度可以達(dá)到99.54%,而卷積神經(jīng)網(wǎng)絡(luò)ResNet50-mini在這一任務(wù)上的表現(xiàn)則為99.56%。階段二中,KNN在ARCENE數(shù)據(jù)集上的表現(xiàn)為53.33%,而6層卷積神經(jīng)網(wǎng)絡(luò)在這一任務(wù)上可以達(dá)到69.99%的準(zhǔn)確度。
實(shí)驗(yàn)結(jié)果如表3所示,無論在ResNet50-mini這樣深度較大的神經(jīng)網(wǎng)絡(luò)或是一個(gè)6層卷積神經(jīng)網(wǎng)絡(luò),對高維數(shù)據(jù)集的分類任務(wù)都有著優(yōu)異的表現(xiàn)。
表3 實(shí)驗(yàn)結(jié)果對比
圖5 6層卷積神經(jīng)網(wǎng)絡(luò)100個(gè)Epoch的訓(xùn)練情況
經(jīng)過兩個(gè)階段的實(shí)驗(yàn),可以直觀地看出深度卷積神經(jīng)網(wǎng)絡(luò)在提取高維數(shù)據(jù)集特征以及處理分類任務(wù)上有著優(yōu)異的表現(xiàn),取得了普通淺層機(jī)器學(xué)習(xí)模型難以達(dá)到的成績。通過淺層機(jī)器學(xué)習(xí)模型來處理這一類高維數(shù)據(jù)集的分類問題是有一定難度的,通常需要消耗大量的時(shí)間來預(yù)處理數(shù)據(jù)或使用一些方法來降低維度。而卷積神經(jīng)網(wǎng)絡(luò)在關(guān)于圖片視頻的計(jì)算機(jī)視覺問題上擁有的優(yōu)勢可以運(yùn)用在傳統(tǒng)的高維數(shù)據(jù)集中[8]。實(shí)驗(yàn)表明,對于高維數(shù)據(jù)集,深度卷積神經(jīng)網(wǎng)絡(luò)往往有著比KNN更優(yōu)異的性能。通過較短時(shí)間的訓(xùn)練,對于高維數(shù)據(jù)集的分類問題上能夠達(dá)到較KNN更高的準(zhǔn)確度。
[1]FUKUSHIMA K.Neocognitron: a self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in position[J].Biological Cybernetics,1980(4):193-202.
[2]WERBOS P.Beyond regression: new tools for prediction and analysis in the behavioral science[D].Massachusetts:Harvard University,1974.
[3]HINTON G E,SALAKHUTDINOV R R.Reducing the dimensionality of data with neural networks[J].Science,2006(5786):504-507.
[4]HE K,ZHANG X,REN S,et al.Deep residual learning for image recognition[C].Las Vegas:IEEE Conference on Computer Vision and Pattern Recognition,2016.
[5]UGULINO W,CARDADOR D,VEGA K,et al.Wearable computing: accelerometers’ data classification of body postures and movements[C].Curitiba:Brazilian Conference on Advances in Artificial Intelligence. Springer-Verlag,2012.
[6]KINGMA D,BA J.Adam: a method for stochastic optimization[J].Computer Science,2014(10):22.
[7]GUYON I.Design of experiments for the NIPS 2003 variable selection benchmark[J].Science,2003(6):8-12.
[8]盧宏濤,張秦川.深度卷積神經(jīng)網(wǎng)絡(luò)在計(jì)算機(jī)視覺中的應(yīng)用研究綜述[J].數(shù)據(jù)采集與處理,2016(1):1-17.