時間:2017-08-16 來源:互聯網 瀏覽量:
選自arXiv
機器之心編譯
參與:Panda
DeepCoder 是一個好名字,在今年的 ICLR 會議上,劍橋大學和微軟就曾提出過一種 DeepCoder,可以組合其它程序代碼來生成新程序,參閱機器之心的文章《學界 | 劍橋與微軟提交 ICLR 2017 論文提出 DeepCoder:組合其它程序代碼生成新程序》。前段時間,又有其他研究者提出了另一種 DeepCoder——一種用於自動麵部動作編碼的半參數變分自動編碼器。機器之心對本文進行了摘要介紹。
論文:DeepCoder:用於自動麵部動作編碼的半參數變分自動編碼器(DeepCoder: Semi-parametric Variational Autoencoders for Automatic Facial Action Coding)
論文地址:https://arxiv.org/pdf/1704.02206.pdf
人臉的表征能表現出一種固有的層次結構(即可以通過一套麵部動作單元(AU)和它們的強度來對整體麵部表情進行編碼)。變分(深度)自動編碼器(VAE)已經在大規模圖像數據的層次化隱含表征的無監督提取上得到了優良的結果,同時還能在存在噪聲和其它我們不想要的偽影時保持穩健。潛在地,這會使 VAE 成為一種學習 AU 強度估計的麵部特征的合適方法。然而,大多數現有的基於 VAE 的方法都應用了與編碼的特征分開學習到的分類器。相反,高斯過程(GP)等非參數(概率)方法通常比相對的參數方法表現更好,但卻無法輕鬆處理大量數據。為此,我們提出了一種全新的 VAE 半參數建模框架 DeepCoder,它將參數(卷積)和非參數(ordinal GP)VAE 的建模能力結合到了一起,用以聯合學習 (1) 任務層次中多個層級的隱含表征,(2) 多個有序輸出的分類。我們在 AU 強度估計的基準數據集上的實驗表明,我們提出的 DeepCoder 的表現優於當前最佳的方法以及相關的 VAE 和深度學習模型。
圖 1:我們提出的 2 層 DeepCoder:輸入是麵部圖像,輸出是重建的麵部圖像和 AU 強度水平。頂部的變分卷積自動編碼器(VAE)的表現比麵部特征的第一級編碼(Z0)更好,而這些特征的進一步編碼(Z1)使用 ordinal GP 變分自動編碼(VO-GPAE)針對 AU 強度估計進行了優化
算法 1:DeepCoder 的學習和推理
圖 3:FERA2015:(a) MSE 重建誤差,(b) VO-GPAE 的 NLPD,(c) 每個數據點估計的變分下限,(d) AU 強度估計的 ICC,和恢複的隱空間:Z0 (e) 和 Z1 (f)