李 淵
(華中科技大學(xué) 武漢 430074)
傳統(tǒng)的城市環(huán)境評(píng)價(jià)研究通常采用基于現(xiàn)場(chǎng)調(diào)研的方法,這類(lèi)方法難以在大范圍、精細(xì)化的尺度上對(duì)城市環(huán)境進(jìn)行有效的評(píng)估。隨著信息技術(shù)的發(fā)展,街景圖像成為城市環(huán)境評(píng)價(jià)研究中新的重要數(shù)據(jù)源,街景圖像具有覆蓋面廣、信息量涵蓋豐富、采集成本低等優(yōu)勢(shì),基于街景圖像理解的城市環(huán)境評(píng)價(jià)方法逐漸成為城市環(huán)境評(píng)價(jià)的重要手段[1]。早在1990年,Jack L等就提出用計(jì)算機(jī)視覺(jué)的方法來(lái)量化街景的質(zhì)量[2]。2001年,Oliva A等通過(guò)區(qū)域生長(zhǎng)的方法分割出街景圖像“街道”、“天空”等區(qū)域,并人為設(shè)定規(guī)則,實(shí)現(xiàn)對(duì)街景圖像的評(píng)價(jià)[3]。2012年,Goel A等綜合了Geometric Texton、GIST和Color Histograms等特征[4],改進(jìn)了Kmeans聚類(lèi),實(shí)現(xiàn)了不同城市街景圖像風(fēng)格的分類(lèi)。這類(lèi)街景圖像評(píng)價(jià)方法基于人工設(shè)定規(guī)則,利用人對(duì)街景圖像評(píng)價(jià)時(shí)會(huì)考慮的因素如“綠化率”、“整潔度”等,通過(guò)對(duì)街景圖像內(nèi)容進(jìn)行相應(yīng)的分析得出評(píng)價(jià)。然而這類(lèi)方法評(píng)價(jià)規(guī)則上帶有規(guī)則設(shè)計(jì)者的主觀色彩,評(píng)價(jià)方法不客觀且效果不理想。2014年,MIT Media Lab的Nikhil Naik等提出“streetscore”項(xiàng)目[5],Naik等人收集了1萬(wàn)多張美國(guó)的街景圖像,以0到10為安全感的打分范圍,進(jìn)行了人工標(biāo)簽,首次通過(guò)監(jiān)督學(xué)習(xí)的方法實(shí)現(xiàn)了對(duì)街景圖像的評(píng)價(jià)。帶有數(shù)據(jù)監(jiān)督的方法能從數(shù)據(jù)中學(xué)習(xí)到潛在的聯(lián)系,相較于傳統(tǒng)方法而言較為客觀,也更有說(shuō)服力[6~8],使用評(píng)分來(lái)量化對(duì)街景圖像的評(píng)價(jià)會(huì)更加直觀,讓人們更容易接受。
卷積神經(jīng)網(wǎng)絡(luò)在圖像領(lǐng)域的發(fā)展帶來(lái)了更好的圖像全局特征提取方法,相比傳統(tǒng)的特征提取方法,深度卷積神經(jīng)網(wǎng)絡(luò)提取的特征具有信息損失更少、魯棒性高和泛化性等優(yōu)點(diǎn)[11]。2015年,Lorenzo Porzi等人使用改進(jìn)的Alexnet提取特征[7],有效地提高了模型的“打分”能力。在應(yīng)用層面上,2016年,Edward Glaeser等人通過(guò)學(xué)習(xí)谷歌街景來(lái)預(yù)測(cè)紐約的地區(qū)收入水平。隨后,Dubey A,Naik N,Parikh D合作將訓(xùn)練集規(guī)模提升到110,988幅街景圖像,標(biāo)簽上從安全感變?yōu)榘踩⒒顫娕c無(wú)聊等多個(gè)屬性,算法上采用了Resnet卷積神經(jīng)網(wǎng)絡(luò)[6],進(jìn)一步提高了精確度[8,12]。
街景環(huán)境評(píng)價(jià)方法在近些年來(lái)取得了長(zhǎng)足的進(jìn)步,主要體現(xiàn)在兩個(gè)方面:基于人工設(shè)定規(guī)則的分類(lèi)方法逐漸被基于監(jiān)督學(xué)習(xí)的分類(lèi)算法取代[9];傳統(tǒng)的特征提取方法逐漸被卷積神經(jīng)網(wǎng)絡(luò)取代,卷積神經(jīng)網(wǎng)絡(luò)提取的特征具有信息損失更少、魯棒性高和泛化性等優(yōu)點(diǎn)[10~11]。盡管如此,基于卷積神經(jīng)網(wǎng)絡(luò)的街景評(píng)價(jià)方法仍存在以下缺陷:用于街景評(píng)價(jià)的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)多借鑒分類(lèi)任務(wù),而分類(lèi)任務(wù)和街景評(píng)價(jià)是兩種不同得任務(wù);現(xiàn)階段常用的損失函數(shù)能有效地度量錯(cuò)分類(lèi)導(dǎo)致的損失,然而難以度量街景錯(cuò)評(píng)價(jià)帶來(lái)的損失;傳統(tǒng)的街景評(píng)價(jià)方法將數(shù)據(jù)集的標(biāo)簽視作可靠的、有效地,然而街景評(píng)價(jià)標(biāo)簽具有標(biāo)注者較強(qiáng)的主觀性,標(biāo)簽并不能一定準(zhǔn)確地表達(dá)街景圖像的實(shí)際得分。基于以上缺點(diǎn),論文從網(wǎng)絡(luò)結(jié)構(gòu)的改進(jìn)、損失函數(shù)的修正、訓(xùn)練方法的優(yōu)化這三個(gè)方向著手,提出了更好的街景評(píng)價(jià)方法。
基于卷積神經(jīng)網(wǎng)絡(luò)的街景環(huán)境評(píng)價(jià)方法實(shí)質(zhì)上是訓(xùn)練一個(gè)卷積神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)輸入為街景圖像,網(wǎng)絡(luò)輸出為對(duì)街景圖像的環(huán)境評(píng)分。因此,設(shè)計(jì)出一個(gè)好的街景評(píng)價(jià)網(wǎng)絡(luò)和如何訓(xùn)練好網(wǎng)絡(luò)是基于卷積神經(jīng)網(wǎng)絡(luò)的街景評(píng)價(jià)方法的兩大核心問(wèn)題。
2.1.1 Stem-Block結(jié)構(gòu)
對(duì)于街景評(píng)價(jià)問(wèn)題而言,起主要作用的是網(wǎng)絡(luò)深層提取的語(yǔ)義特征,而淺層網(wǎng)絡(luò)提取的像素級(jí)特征是深層網(wǎng)絡(luò)的基礎(chǔ)。
Stem Block先對(duì)輸入圖像做32通道3×3步長(zhǎng)為2的卷積,隨后對(duì)這32通道特征圖做兩個(gè)方向的處理:一方面對(duì)其做2×2的Max pooling,使其保留大部分響應(yīng)較強(qiáng)的特征信息;另一方面先對(duì)其做1×1的卷積,后再做32通道3×3步長(zhǎng)為2的卷積,獲得更深層的特征信息。最后對(duì)獲得的特征圖融合,Stem Block結(jié)構(gòu)使用較少的計(jì)算有效地獲得不同感受野的圖像底層級(jí)特征,并將輸入的尺寸降低了16倍。
圖1 Stem Block結(jié)構(gòu)簡(jiǎn)圖
2.1.2 雙通道特征整合
對(duì)于denselayer,采用所示的雙通道結(jié)構(gòu),雙通道結(jié)構(gòu)借鑒了Inception的優(yōu)點(diǎn),使用不同大小的卷積核有利于多尺度特征的學(xué)習(xí),相較于傳統(tǒng)的單通道結(jié)構(gòu),雙通道的特征提取結(jié)構(gòu)具有更好的感受野。另外為了避免計(jì)算量的大幅提升,將每個(gè)通道的通道數(shù)縮減為之前的一半,在降低計(jì)算量的同時(shí),損失的信息量也相對(duì)較少。
圖2 Two-way Denselayers結(jié)構(gòu)簡(jiǎn)圖
2.1.3 網(wǎng)絡(luò)結(jié)構(gòu)
本文采用的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示:輸入圖像尺寸為224×224,經(jīng)過(guò)Stem Block結(jié)構(gòu)后,提取了32通道尺寸為56×56的低層次特征圖,后經(jīng)過(guò)4個(gè)Dense Block結(jié)構(gòu)不斷地提取更高層級(jí)的特征圖,最后為704通道尺寸為7×7的語(yǔ)義特征圖,通過(guò)均值操作提取了704維的特征向量。
圖3 網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)圖
對(duì)于分類(lèi)問(wèn)題,損失函數(shù)只需要衡量網(wǎng)絡(luò)錯(cuò)分類(lèi)導(dǎo)致的損失,如公式1,使用交叉熵?fù)p失函數(shù)度量錯(cuò)分類(lèi)導(dǎo)致的損失是適用的。其中J(θ)表示損失值,m表示一次梯度下降訓(xùn)練中所參與的樣本數(shù)量,xi,yi分別表示第i個(gè)樣本的輸入與標(biāo)簽的獨(dú)熱編碼值(one-hot encode),則=1,其他為0,hθk(xi)表示第i個(gè)樣本的分?jǐn)?shù)為k的神經(jīng)元的概率輸出。
公式1交叉熵?fù)p失函數(shù)
而對(duì)于街景評(píng)分而言,錯(cuò)誤的評(píng)分造成損失值不同,損失Jk(θ)應(yīng)與模型輸出分?jǐn)?shù)和標(biāo)簽分?jǐn)?shù)差k-si的絕對(duì)值成正相關(guān),si表示第i個(gè)樣本標(biāo)簽分?jǐn)?shù),因此在交叉熵的基礎(chǔ)上修正損失函數(shù)為
公式2基于類(lèi)間距離修正的交叉熵?fù)p失函數(shù)
傳統(tǒng)的監(jiān)督學(xué)習(xí)方法在學(xué)習(xí)這些不可靠樣本時(shí),會(huì)讓模型向有偏差甚至錯(cuò)誤的方向優(yōu)化,效果將會(huì)大打折扣[12~14]。在含有大量不可靠標(biāo)簽的數(shù)據(jù)集里,可以把整個(gè)數(shù)據(jù)集分成一系列子集,將子集按標(biāo)簽可靠性進(jìn)行排序,在網(wǎng)絡(luò)的訓(xùn)練過(guò)程中,依據(jù)樣本子集標(biāo)簽的可靠性順序,由可靠到不可靠依次對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,這種學(xué)習(xí)方法稱(chēng)為課程學(xué)習(xí)[15,17~18]。
對(duì)于訓(xùn)練集中的某一樣本,如果它與標(biāo)簽為同一類(lèi)別的大部分樣本具有較高的相似度,那么則認(rèn)為標(biāo)簽是相對(duì)可靠的,如果它與標(biāo)簽為同一類(lèi)別的大部分樣本具有較低的相似度,那么則認(rèn)為標(biāo)簽是相對(duì)不可靠的。
步驟1 使用2.1.3小節(jié)的卷積神經(jīng)網(wǎng)絡(luò)提取所有訓(xùn)練樣本的街景評(píng)分特征。
步驟2 對(duì)于標(biāo)簽同為L(zhǎng)的m個(gè)訓(xùn)練樣本,計(jì)算它們街景評(píng)分特征的相似度矩陣
步驟4 αi為第i個(gè)樣本與同類(lèi)別樣本集相似度的衡量,隨后以等分取閾值講訓(xùn)練樣本分為n類(lèi),αi越大則認(rèn)為其越可靠,由此將訓(xùn)練樣本劃分為n個(gè)不同可靠性的訓(xùn)練子集。
傳統(tǒng)的街景環(huán)境評(píng)價(jià)方法主要使用了Naik提供的數(shù)據(jù)集[5],其中包涵了來(lái)自于美國(guó)各大城市的3214張街景圖像;為了豐富街景圖像來(lái)源,本文的street-score數(shù)據(jù)集圖像還收集了來(lái)自國(guó)內(nèi)不同城市的街景圖像,包涵了來(lái)自中國(guó)5大城市的18672張街景圖像。其評(píng)分含義為標(biāo)注者對(duì)街景圖像的綜合感官評(píng)價(jià),包括整潔度、舒適度、美感和安全感等主觀感受。標(biāo)簽為0~10的11個(gè)等級(jí)的綜合感官評(píng)價(jià),其中0代表最低評(píng)價(jià),10代表著最高評(píng)價(jià)。
回歸算法中,常用指標(biāo)MAE(Mean Absolutely Error)反映了模型評(píng)分與標(biāo)簽評(píng)分的平均絕對(duì)誤差,MSE(Mean Squared Error)表達(dá)模型評(píng)分與標(biāo)簽評(píng)分的平均平方誤差。對(duì)于街景評(píng)分,當(dāng)網(wǎng)絡(luò)輸出評(píng)分與標(biāo)簽評(píng)分差不大于1,其輸出可以視為正確,評(píng)分正確的概率記作ACC(Accuracy)。在下文的實(shí)驗(yàn)中,將ACC、MAE、MSE作為反映模型性能的指標(biāo)。
基于卷積神經(jīng)網(wǎng)絡(luò)的街景評(píng)分流程如下。
步驟1 使用Place365數(shù)據(jù)集[12]對(duì)2.1.3小節(jié)的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)訓(xùn)練,使用街景評(píng)分?jǐn)?shù)據(jù)集訓(xùn)練網(wǎng)絡(luò),直至損失基本不變。
步驟2 使用2.3小節(jié)的方法將街景評(píng)分?jǐn)?shù)據(jù)集劃分為若干個(gè)訓(xùn)練子集。
步驟3 使用標(biāo)簽最可靠的訓(xùn)練子集對(duì)網(wǎng)絡(luò)精調(diào)至損失基本不變。向訓(xùn)練集逐步加入相對(duì)不可靠的訓(xùn)練子集對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,直至所有的訓(xùn)練子集均使用為止。
步驟4 對(duì)于任意街景圖像,將其歸一化后作為網(wǎng)絡(luò)的輸入,即可輸出街景圖像的評(píng)分。
圖4 street-score數(shù)據(jù)集街景圖像展示
為驗(yàn)證基于類(lèi)間距離的交叉熵?fù)p失函數(shù)有利于網(wǎng)絡(luò)的街景評(píng)分性能,使用交叉熵?fù)p失函數(shù)對(duì)初始化的卷積神經(jīng)訓(xùn)練30個(gè)epoch,學(xué)習(xí)率設(shè)為0.01,優(yōu)化器為Adam。再用SGD對(duì)分類(lèi)器訓(xùn)練20個(gè)ep?och,學(xué)習(xí)率設(shè)為0.0002,分類(lèi)器的損失值基本保持不變。分別使用最大間隔交叉熵?fù)p失函數(shù)[12,16]、修正的損失函數(shù)重復(fù)上述步驟。
表1 兩種損失函數(shù)的對(duì)比
表1為驗(yàn)證集各指標(biāo)交叉驗(yàn)證5次的均值,實(shí)驗(yàn)表明,合適的損失度量將有利于模型擬合性能的提升,本文提出的損失函數(shù)使網(wǎng)絡(luò)性能提升的幅度較為明顯,street-score數(shù)據(jù)集上相較于交叉熵?fù)p失準(zhǔn)確率提升了2.8%,相較于最大間隔交叉熵?fù)p失準(zhǔn)確率提升了2.0%,平均絕對(duì)誤差相較于交叉熵?fù)p失下降了11.8%,相較于最大間隔交叉熵?fù)p失下降了8.76%。
為了驗(yàn)證基于課程學(xué)習(xí)策略的網(wǎng)絡(luò)訓(xùn)練方法使得網(wǎng)絡(luò)能有更好的評(píng)分效果,論文作出如下對(duì)比實(shí)驗(yàn)。
1)監(jiān)督學(xué)習(xí)方法,使用基于類(lèi)間距離的交叉熵?fù)p失函數(shù)對(duì)初始化的卷積神經(jīng)訓(xùn)練30個(gè)epoch,學(xué)習(xí)率設(shè)為0.01,優(yōu)化器為Adam。再用SGD對(duì)分類(lèi)器訓(xùn)練20個(gè)epoch,學(xué)習(xí)率設(shè)為0.0002,分類(lèi)器的損失值基本保持不變。
2)課程學(xué)習(xí)方法,使用2.3小節(jié)的方法將訓(xùn)練集分為3個(gè)訓(xùn)練子集:“相對(duì)可靠”的訓(xùn)練子集、“一般可靠”的訓(xùn)練子集、“不可靠”的訓(xùn)練子集。使用“相對(duì)可靠”的訓(xùn)練子集對(duì)初始化的卷積神經(jīng)訓(xùn)練20個(gè)epoch,學(xué)習(xí)率設(shè)為0.01,優(yōu)化器為Adam。向訓(xùn)練集加入“一般可靠”的訓(xùn)練子集,用SGD對(duì)網(wǎng)絡(luò)訓(xùn)練20個(gè)epoch,學(xué)習(xí)率設(shè)為0.0002。向訓(xùn)練集加入“不可靠”的訓(xùn)練子集,用SGD對(duì)網(wǎng)絡(luò)訓(xùn)練20個(gè)epoch,學(xué)習(xí)率設(shè)為0.0002。
表2表明,基于課程學(xué)習(xí)的訓(xùn)練方法有利于網(wǎng)絡(luò)街景評(píng)分性能的提升,提升的幅度較為明顯,street-score數(shù)據(jù)集上準(zhǔn)確率提升了6.4%,平均絕對(duì)誤差下降了7.76%。
表2 兩種訓(xùn)練方式的對(duì)比
本文將與前人在街景評(píng)價(jià)的工作進(jìn)行對(duì)比實(shí)驗(yàn),參與對(duì)比有方法如下。
2014年,Naik N等提出,將Geometric Texton、GIST和Color Histograms等多特征融合,最后使用SVM做分類(lèi)[5]。
2015年,Lorenzo Porzi等使用改進(jìn)的Alexnet實(shí)現(xiàn)街景圖像評(píng)分[7]。
2016年,Dubey A等使用Resnet結(jié)合Large-Margin Softmax loss實(shí)現(xiàn)街景圖像評(píng)分[8]。
表3 街景評(píng)分方法對(duì)比
如表3所示,論文提出的方法相較于前人的方法具有最好的街景評(píng)分效果。相較于效果較好Dubey A的方法,準(zhǔn)確率提升了9.7%,平均絕對(duì)誤差下降了25.8%,本文的方法具有明顯的提升。
圖5 街景評(píng)分方法效果示意圖
如圖5所示,論文的街景評(píng)分方法相對(duì)于前人的方法有著更準(zhǔn)確的評(píng)分效果,評(píng)分結(jié)果基本與標(biāo)注者一致。
本文在網(wǎng)絡(luò)淺層使用Stem Block結(jié)構(gòu),優(yōu)化了低層次特征提取效果;對(duì)于稠密層,采用雙通道denselayer結(jié)構(gòu),相較于傳統(tǒng)的單通道結(jié)構(gòu),雙通道的特征提取結(jié)構(gòu)具有更好的感受野[19~20]。論文還在交叉熵的基礎(chǔ)上提出了基于類(lèi)間距離度量的交叉熵?fù)p失函數(shù),更加準(zhǔn)確地衡量街景評(píng)分與標(biāo)簽分差帶來(lái)的損失,從而使模型向更優(yōu)的方向優(yōu)化,使得平均絕對(duì)誤差、均方誤差均有下降。論文引用了課程學(xué)習(xí)的方法有效地解決了訓(xùn)練樣本標(biāo)簽不可靠帶來(lái)的模型訓(xùn)練偏離最優(yōu)化方向問(wèn)題。在模型訓(xùn)練過(guò)程中,讓模型從可靠的數(shù)據(jù)集開(kāi)始學(xué)習(xí),再逐漸增加相對(duì)不可靠的數(shù)據(jù)集,使得模型的性能逐步提高。