【论文笔记】Learning to Count in the Crowd from Limited Labeled Data
文章目錄
- Abstract
- 1 Introduction
- 3 Preliminaries
- 4 GP-based iterative learning
- 4.1 Labeled stage
- 4.2 Unlabeled stage
- 4.3 Final objective function
- 5 Experiments and results
- 5.1 Semi-supervised settings
- 5.2 Synthetic-to-Real transfer setting
- 6 Conclusions
Abstract
最近的人群計數方法取得了很好的效果。但是,它們本質上是基于完全監督的范式,并且需要大量的注釋示例。數據標注十分消耗勞動力。在這項工作中,我們專注于通過學習從有限數量的標記樣本中計數來減少注釋的工作量,同時利用大量的未標記數據。具體地說,我們提出了一種基于高斯過程的迭代學習機制,該機制涉及到對未標記數據的偽ground truth的估計,然后作為監督來訓練網絡。該方法在ShanghaiTech,UCF-QNRF,WorldExpo,UCSD等數據集上是有效的。此外,我們證明了所提出的方法可用于網絡從合成數據集中學習計數的同時,還能夠更好地推廣到真實數據集(合成到真實的傳輸)。
1 Introduction
目前的人群計數工作中,在保持良好性能的同時減少注釋工作對于人群計數任務的探索相對較少。具體來說,我們提出了一種基于**高斯過程(GP)**的迭代學習框架,在該框架中,我們利用未標記數據來增強現有網絡的能力,從而導致整體性能的提高。本文提出的方法使用了一種偽標簽的方式,它為沒有標簽的數據估計了偽ground truth(pseudo-GT),然后用它來監督網絡的訓練。然后網絡在標記和未標記的數據上迭代訓練。在標記階段,對于有標簽的數據,網絡參數通過最小化L2L_2L2?損失進行更新。除此之外,我們還保存了標簽數據隱藏的帶有ground truth的space vector。在未標記階段,對于帶有ground truth的標記數據的latent space vectors和未標記數據的latent space vectors,我們使用高斯過程(GP)建模他們的關系。接下來,我們使用前面建模的GP來估計未標記輸入的偽GT,這個偽GT用于未標記的數據的監督。然后最小化未標簽數據的預測值和偽標簽之間的誤差。圖1說明了所提出的基于GP的框架在兩個數據集上的實驗效果。
總結本文的貢獻如下:
3 Preliminaries
在這一部分,我們簡要回顧了在這項工作中使用的概念(人群計數,半監督學習和高斯過程)。
Crowd counting. 使用了密度圖估計的方法,ground truth密度圖公式計算如下:
xgx_gxg?是人頭標注位置,σ\sigmaσ是高斯核的尺寸,SSS是所有人頭標注點的集合。
Problem formulation. 給定一個帶標簽的數據集({x,y}∈DL)\left(\left\{x,\;y\right\}\;\in\;D_L\right)({x,y}∈DL?),未標簽的數據集表示為(x∈Du)\left(x\;\in\;D_u\right)(x∈Du?)。目標是擬合映射函數f(x∣?)f\left(x\vert\phi\right)f(x∣?)(?\phi?為參數),使得映射函數可以準確估計未觀測樣本的標簽yyy。該定義適用于半監督和合成到真實值的轉換。在synthetic-to-real中,合成數據被標注,因此可以用于被標注的數據集;類似的,真實數據沒有被標注,因此可以被當作未標注的數據集。
為了學習參數,已標注的和未標注的數據都被用于訓練。L1L_1L1?,L2L_2L2?或者交叉熵損失被用于標注數據。為了使用未標注的數據DuD_uDu?,在這篇文章中,我們使用基于偽標簽的方法,并將他們和傳統的損失函數一起用于網絡的監督。
Gaussian process. 高斯過程(GP)f(v)f(v)f(v)是一個隨機變量的無限集合,其中任意有限子集都具有聯合高斯分布。一個GP可以完全由其均值函數(m(v))(m(v))(m(v))和協方差函數K(v,v,)K\left(v,v^,\right)K(v,v,)來指定。定義如下:
在這個公式里面,v,v,∈Vv,\;v^,\in Vv,v,∈V表示可能索引GP的輸入。協方差矩陣是從協方差函數K計算出來的,它表達了基礎函數的光滑性的概念。GP用下面公式表示:
其中III是單位矩陣,σε2\sigma_\varepsilon^2σε2?是加性噪聲的方差,任何函數值的集合都是聯合高斯分布,如下所示
均值向量和協方差矩陣由前面提到的GP定義。為了在未標記的點上進行預測,可以通過調節觀察數據來計算封閉形式的高斯后驗分布。更多細節,請讀者參考[29]。
4 GP-based iterative learning
圖2給出了所提方法的結構圖。該網絡由編碼器f(x,?e)f\left(x,\varnothing_e\right)f(x,?e?)和解碼器f(z,?d)f\left(z,\varnothing_d\right)f(z,?d?)構成,他們的參數分別為?e\varnothing_e?e?,?d\varnothing_d?d?。所提出的框架對編碼器網絡是不固定的,并且我們在實驗部分表明,它可以很好地推廣到VGG16 [40]、ResNet-50和ResNet-101 [30]等架構。解碼器由一組2 conv-relu層組成(更多細節見補充資料)。輸入人群圖像xxx通過編碼器網絡獲得對應的latene space vector zzz。這個vector經過decoder得到了人群密度輸出yyy,用公式表示如下:
我們有一個訓練數據集D=DL∪DUD=D_L\cup D_UD=DL?∪DU?,其中,DL={xli,yli}i=1NtD_L=\left\{x_l^i,y_l^i\right\}_{i=1}^{N_t}DL?={xli?,yli?}i=1Nt??是包含NlN_lNl?張訓練圖片的已標記數據集,DU={xui}iNuD_U=\left\{x_u^i\right\}_i^{N_u}DU?={xui?}iNu??是包含NuN_uNu?張訓練圖片的未標記數據。所提出的框架通過在已標記的樣本和未標記的樣本上迭代訓練來有效地利用數據集。更具體地說,培訓過程包括兩個階段:(i)標記訓練階段:使用監督的損失函數LsL_sLs?學習網絡參數;(ii)未標記訓練階段:使用GP公式,為無標簽的數據生成偽標簽,然后用于監督網絡的訓練,接下來我們詳細介紹這兩個階段。
4.1 Labeled stage
使用L2L_2L2?損失監督DLD_LDL?的訓練:
除了對標記數據使用L2L_2L2?進行監督,我們還將來自于中間latent space的特征向量zliz^i_lzli?保存到矩陣FzlF_{z_l}Fzl??中,具體地,FZl={zli}i=1NlF_{Z_l}=\left\{z_l^i\right\}_{i=1}^{N_l}FZl??={zli?}i=1Nl??,這個矩陣用于在下一階段計算未標記數據的偽標簽。矩陣FZlF_{Z_l}FZl??的維度是Nl×MN_l\times MNl?×M,這里MMM是latent space vector zlz_lzl?的維度,在這篇文章中,latent space vector zlz_lzl?的維度是64×32×3264\times32\times3264×32×32,被reshape成為1×655361\times655361×65536,因此,M=65536M=65536M=65536。
4.2 Unlabeled stage
由于DuD_uDu?不帶任何的GT標注,因此我們為其預測偽標簽用于網絡的監督訓練。為此,我們使用GP建模已標注樣本的latent space vectors FzlF_{z_l}Fzl??以及對應ground truth TylT_{y_l}Tyl??和未標記樣本latent space vectors zupredz^{pred}_uzupred?之間的關系。
Estimation of pseudo-GT 就像上面討論的那樣,訓練過程迭代地覆蓋標注數據DLD_LDL?和未標注數據DuD_uDu?,標注階段之后,已標注樣本的latent space vectors FzlF_{z_l}Fzl??以及對應ground truth TylT_{y_l}Tyl??用于去建模函數ttt,這個函數是latent vectors和輸出密度圖之間的映射函數,即y=t(z)y=t(z)y=t(z)。使用GP,我們將函數t(.)t(.)t(.)建模成函數的無限集合,它的任何有限子集都用到了Gaussian。我們的公式如下所示:
在這里,μ\muμ是使用GP計算出來的函數值,σε2\sigma_\varepsilon^2σε2?設為1,K是kernel function。因此kthk^{th}kth個未標注樣本xukx^k_uxuk?的latent space vector zukz^k_uzuk?的條件聯合分布可以表示為:
考慮到latent space vector的維度會比較大,K(FZl,FZL)K(F_{Z_l},F_{Z_L})K(FZl??,FZL??)的維度會比較大,特別是NlN_lNl?很大的情況下。因此計算量和存儲要求都比較高,此外,所有的這些latent vectors可能不是都是有效的,因為這些vectors在content,size/density等方面都對應著不同的區域。為了解決這些問題,我們只使用了和未標記latent vector相似的已標注latent vector。具體來說,我們只使用NnN_nNn?個最接近未標記vectors的標記vector,也就是把(7)-(9)式中的FZlF_{Z_l}FZl??用FZl,nF_{Z_l,n}FZl?,n?替換。這里的nearest(p,Q,Nn)nearest(p,Q,N_n)nearest(p,Q,Nn?)表示從QQQ中找到NnN_nNn?個最鄰近ppp的vectors。
未標記數據樣本的偽GT由等式(8)求出的均值作為預測值,即yu,pseudok=μuky^k_{u,pseudo}=\mu ^k_uyu,pseudok?=μuk?。使用預測yu,predk=g(zuk,?e)y^k_{u,pred}=g(z^k_u,\varnothing_e)yu,predk?=g(zuk?,?e?)和偽標簽yu,pseudoky^k_{u,pseudo}yu,pseudok?之間的L2L_2L2?距離監督編碼器解碼器參數的更新。
另外,用等式(8)預測偽標簽可能不是特別完美,而偽標簽的效果可能會影響網絡的表現,為了克服這一點,我們顯式地利用了GP建模的方差。具體來說,在損失函數中,我們通過考慮等式(9)來最小化預測方差。如前所述,使用標記數據的所有潛在空間向量不一定有效。我們使用GP最小化latent space vectors 中zukz^k_uzuk?和NnN_nNn?個最近鄰之間的方差。因此,未標記階段的損失函數定義為:
4.3 Final objective function
我們結合了監督損失函數(5)和無監督的損失函數(11)作為最終的目標函數:
5 Experiments and results
本文設計的消融實驗:
(i) Semi-supervised settings: 更改標注樣本所占的比例;
(ii) Synthetic-to-real transfer settings:在合成數據集(打了標注)上訓練,在真實數據集上測試,真實數據沒有標注,但是可以用于模型的訓練。
5.1 Semi-supervised settings
Comparison with recent approaches.
(1)與使用整個數據集相比,在訓練期間減少標記數據(減少到5%)會導致誤差顯著增加。
(2)所提出的基于GP的框架能夠大幅度降低性能下降。
(3)與劉等人[22]相比,所提出的方法能夠更有效地利用未標記的數據。這是因為作者在[22]中使用了未標記數據的排序損失,這是基于這樣的假設,即擁擠場景的子圖像保證包含與整個圖像相同或更少的人。我們觀察到,對于大多數未標記的圖像來說,這種約束是自然滿足的,因此它提供的監督較少(詳細分析見補充材料)。
Ablation of labeled data percentage.
可以發現,隨著標記數據占比的減少,網絡的性能在不斷降低。然而,所提出的基于GP的框架能夠在所有情況下利用未標記的數據,以將這種性能下降降低相當大的幅度。圖3和圖4是過程的可視化。
Architecture ablation.
作者的發現:
Pseudo-GT Analysis.
可以發現,pseudo-GT errors集中在比較小的區域,而prediction errors集中在比較大的區域,pseudo-GT可以提供有效的監督。
5.2 Synthetic-to-Real transfer setting
最近,Wang et al.[55] 提出了一個合成人群計數數據集,由于合成數據集和真實數據集之間的分布存在差異,因此在合成數據集中訓練的網絡在真實數據集上的效果往往不是很好,因此,作者基于域適應提出了Cycle-GAN,這種方法額外加強了SSIM的一致性。更重要的是,他們第一次提出了從合成數據到真實數據之間的轉變。
然而這中方法的error超過了baseline方法,它的表現受到了真實數據和合成數據之間的distribution gap的限制。而所提出的基于GP的框架克服了這些缺點,將合成數據作為帶標簽的訓練集,真實數據作為沒有標簽的數據,實驗結果如表4所示。我們使用了[55]中描述的相同網絡(SFCN)和訓練過程。由于我們為未標記的真實世界圖像估計偽GT并將其直接用作監督,因此網絡需要處理的分布間隙要小得多,與域適應相比,這種方法取得了更好的性能,圖6和圖7是實驗結果的可視化。
6 Conclusions
在這項工作中,我們專注于學習從有限的標記數據中進行計數。具體來說,我們提出了一個基于GP的迭代學習框架,包括使用高斯過程對未標記數據進行偽GT的估計,然后將其用作網絡訓練的監督。通過各種實驗,我們表明所提出的方法可以有效地應用于各種涉及無標記數據的場景,如用較少的數據進行學習或合成到真實世界的轉換。此外,我們進行了詳細的消融研究,以證明所提出的方法可以很好地推廣到不同的網絡架構,并能夠為不同數量的標記數據實現一致的增益。
總結
以上是生活随笔為你收集整理的【论文笔记】Learning to Count in the Crowd from Limited Labeled Data的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DDR3详解(以Micron MT41J
- 下一篇: 服务器bcd配置损坏怎么修复,引导记录损