Speech Emotion Analyzer from Github

陳明佐
我就問一句,怎麼寫?
2 min readJul 8, 2019

語音情緒偵測(分析),也是語音研究一塊大餅

目的在於可以根據語音裡的資訊,帶出一個人說話當下的心情、情緒

可以藉由此方式來判讀一個人的心情,近一步地,依據業務流程

例如: 經銷公司可以透過此方式,讓系統推薦使用者當下的情緒適合的商品

自動駕駛也可以偵測駕駛人當下語氣,來間接的操作自駕車的時速。

DataSet

以下介紹的數劇集,是第一次接觸到數據,並非大量,零零總總約1920個音檔,每個音檔約3–5秒左右。

  1. RAVDESS :
    Ryerson Audio-Visual Dataset of Emotional Speech and Song
    https://zenodo.org/record/1188976
    此資料集涵蓋了1500個音檔,從24個不同的演員,
    其中12位男生、12位女生
    錄製了8種不同情緒的短語音,
    1: 中性、2:冷靜、3: 開心、4:難過、5:生氣、6:害怕、7:厭惡、8:驚喜
  2. SAVEE : Surrey Audio-Visual Expressed Emotion
    http://kahlan.eps.surrey.ac.uk/savee/Download.html
    約有500個短語音,由四位不同的男性所錄製的短語音。
    一位男性有15句,也分別對應到不同的七種情緒
    (與上面一樣,只少一個冷靜)

透過將波形訊號,轉換成頻譜圖、MFCCs(此文是使用13維的資訊,並對特徵做正規化)

以此特徵值作為輸入,藉由四層CNN
(此處沒有完全連接層 Fully connection ),
所以此模型算是FCN 全卷積神經網絡 ( Fully Convolution Network )

並且只有在第二層卷積層有應用Max-Pooling

語音情緒偵測,隸屬於分類的屬性,所以此任務總共有16個類別,其中還得判別出性別是否為男或女。

最後訓練跟測試出的結果,反應此模型的有效性,
並且有實際側錄一則語音進行outside test
也正確判讀出情緒。

但必須說,因為此模型、此任務訓練的資料集不多,
且語音資訊都是text-dependent
意思就是,每個語者以及每個情緒,雖然說不同,
但語音的內容實際上是一樣的(講一樣的話)

Reference:

https://github.com/MITESHPUTHRANNEU/Speech-Emotion-Analyze

--

--