張原溥
隨著網絡媒體的飛速發展,大量用戶已經習慣用視頻通話來與親朋好友交流,從而產生了龐大的數據量和各種各樣的微表情。這些微表情不僅表達了用戶本人的思想感情,還帶有極高的社會價值。為此,分析這些微表情中蘊藏的情感已經成為當下研究熱點之一。
人工神經網絡[1]是對人腦神經元網絡進行信息處理以達到抽象的目的,由大量的節點(或稱神經元)相互聯接構成。前饋神經網絡FNN[2]就是最簡單的人工神經網絡之一,它由輸入層、輸出層及隱含層三種層構成。它可以接受輸入并進行輸出,但由于各層之間沒有反饋,FNN沒有記憶功能,處理數據時只能使用當前時刻信息,這樣便不能將捕獲到的微表情保留下來供以后使用。為了改進這一缺點,Jordan和Elman率先提出了循環反饋的神經網絡RNN[3]。1997年Hochreiter&Schmidhuber提出了用長短期記憶單元LSTM[5]來改進傳統的RNN模式,才有效解決了梯度消失與梯度爆炸的問題。針對以上神經網絡的優劣勢,本文提出基于LSTM的微表情分析模型——雙門LSTM模型,以提高對微表情的情感分析能力。
本文具體章節安排如下:第二節介紹了FNN、RNN與LSTM的運作機制,尋找差異并比對了各自的優缺點;第三節闡述了自己的雙門LSTM模型,并介紹其工作原理;第四節將雙門LSTM模型運用到情感分析當中,實現長短時記憶網絡模型在一段微表情片段中的應用,針對微表情小視頻對人進行情感分析;第五節進行實驗,進一步改進雙門LSTM模型;第六節總結歸納實驗結果,并在人工神經網絡知識的基礎下整理模型,得出情感分析的最終優化方法,同時說明自己的局限性,指出后續的工作方向。
FNN是傳統的人工神經網絡,又叫前饋神經網絡,FNN在輸入層處接收前一層的輸出,并在輸出層處輸出給下一層。但由于FNN每個神經元只與前一層的神經元相連[2],導致了各層間沒有反饋。針對FNN的無法記憶的問題,Jordan和Elman率先提出了循環反饋的神經網絡RNN[3]。隱含層能夠保存并利用歷史信息來輔助處理當前數據,可以將信息持久化,這也導致了梯度的不斷減小甚至于消失[6],這種現象也被稱為梯度爆炸。
Hochreiter & Schimidhuber提出了用長短期記憶單元LSTM改進傳統的RNN模式,普通的RNN的重復模塊結構非常簡單,只有一個tanh層[7]。調節門由一個Sigmoid神經網絡層和一個元素級相乘操作組成[8]。雖然LSTM有很好的利用長距離歷史信息的能力,但是它畢竟只能夠利用一種數據。針對這一缺陷,本文提出了雙門LSTM模型。

圖1 雙門LSTM示意圖
與普通LSTM單元類似,雙門LSTM單元也同樣由輸入門、輸出門、遺忘門以及記憶單元組成。但是雙門LSTM門的個數卻要多一些:雙門LSTM模型擁有2個輸入門、2個遺忘門,但它的輸出門也只有1個。
由圖1我們可以觀察到雙門LSTM模型也是由輸入層、輸出層及隱含層構成。
(1)首先我們根據傳統RNN公式1計算出當前記憶單元候選值,與當前時刻輸入值和上一時刻輸出值有關:
(2)第二步我們計算輸入門的值it。輸入門用于控制我們要更新哪些信息,控制當前信息對記憶單元造成的影響。需要注意的是,輸入門的計算還與上一時刻記憶單元的值有關:
(3)第三步計算遺忘門的值ft。遺忘門決定我們要從當前歷史信息中扔掉哪些信息,控制歷史信息對當前記憶單元狀態值的影響:

(4)第四步計算當前記憶單元狀態值ct,當前時刻記憶單元狀態值取決于上一時刻的記憶單元狀態值ct-1與候選記憶單元狀態值,并受遺忘門與輸入門兩部分進行調節:

(5)第五步計算輸出門ot,用于控制記憶單元狀態值的輸出:

(6)最后計算當前時刻LSTM單元的輸出:

其中xt、yt分別對應這一時刻x、y方向上的輸入,ht-1對應上一時刻的輸ht-1x、
長短期記憶網絡LSTM在許多方面都取得了不錯的效果,例如翻譯語言、制機器人以及語音識別等。然而普通的LSTM由于只有一個輸入門,只能固定的獲得一種信息,并不能很好的分析情感,尤其是微表情這種人們可能刻意掩的信息。此模型優勢在于遺忘門在不斷遺忘一些已失去效用的微表情,從而控制歷史信息對當前時刻分析的影響,既充分利用了歷史信息又不至于失去效用的歷史信息積累過多。再結合輸入門每一刻輸入的微表情數據信息,LSTM便可分析出人的情感。因為結合生活經驗與對微表情的觀察,我們可以知道人的面部在產生微表情時,他的身體可能會同時產生一些不由自主的動作,例如抖肩、揉鼻子、眼睛向兩側看等等。這樣的肢體語言為我們多提供了一種信息,恰好可以輔助我們分析情感。基于上述思路,本文提出了雙門LSTM模型運用于情感分析,該雙門LSTM模型的優勢便在于此。它通過對微表情與肢體語言兩種信息的分析處理,并將其綜合起來,得出了更為準確的情感數據。改進了普通LSTM模型只能運用一種信息的不足。

表1 隱含層數目與誤差的關系
為了驗證基于LSTM模型的雙門LSTM的有效性并進一步改進該模型,本文使用The Extended Cohn-Kanade Dataset(CK+)數據庫[9],并采用監督學習的方式(因為雙門LSTM模型的樣本類別是已知的,即微表情和肢體語言兩類),將雙門LSTM模型做了不同的改變并進行了對比。顯而易見的是,最優的雙門LSTM模型便是實際圖像能夠與目標圖像(即理論上誤差最小的圖像)收斂。雙門LSTM模型的圖像扔難以收斂,且誤差一直在上下振蕩。隨著隱含層數的增多,雙門LSTM模型最初的誤差逐漸降低,并且收斂所需的訓練次數也越來越少,即越來越容易收斂,最后將在目標圖像附近波動。實驗數據整理如表1:
結合表1可知,隱含層數較少時,圖像難以收斂,誤差較大且不斷振蕩;隱含層數增多時,圖像收斂所需的訓練次數越來越少,誤差減小;隱含層數目多到一定值時,即使再增加隱含層,誤差也不能再次下降,而是在一定范圍內波動。因此選擇隱含層數較多的雙門LSTM模型將更有利于分析情感。
本文將普通的LSTM延伸到雙門的LSTM模型上,從而得以同時運用微表情與肢體語言兩種信息,以便更好地分析人的情感,同時進行了實驗對比,得出了隱含層數與誤差之間的關系,明白選擇隱含層數較多的雙門LSTM模型將更有利于分析情感,進一步優化了雙門LSTM模型。
由于時間與技術的原因,本文并沒有實際做實驗去比對普通LSTM與雙門LSTM模型的誤差曲線,僅僅是從理論分析上比較了一下,認為同時運用兩種數據的雙門LSTM模型的分析將更加準確。同時,雙門LSTM模型的具體實現也亟待解決。下一步的工作也將從這兩個角度展開,以便更好地處理有關微表情片段的情感分析問題。