SMALL-FOOTPRINT KEYWORD SPOTTING ON RAW AUDIO DATA WITHSINC-CONVOLUTIONS

原創: [email protected]
時間: 2020/04/15


JPFw2n.png

0x00 Paper

JPkBJH.png

作者提出的memory consumption, 之前的優化方向memory footprint, 兩者沒能理解

什麼是group depthwise separable convolution,更低參數數量的時候用了GDSC

什麼是SincNet,本文的第一層用了SincNet的第一層

  • 作者第一次將SincNet使用到了KWS任務中,之前都是用在ASR上
    • 可以直接把原始音頻作爲輸入,跳過提取mfcc特徵這個步驟
  • 使用了group DSCconv,有效降低了參數的數量
  • 測試的平臺是用電池的嵌入式設備
  • 沒有開源,不過用SincNet直接讀取原始音頻進行訓練是一個很nice的idea

0x01 爲了解決什麼問題

  • 問題:
    • KWS 存在硬件設備和功耗受限的問題
  • 目的
    • 爲了解決功耗和內存消耗
  • 解決
    • 使用參數化的Sinc卷積來提取光譜特徵
    • 直接對原始音頻數據進行分類,消除了比較耗電的音頻預處理和數據傳輸步驟(沒理解,爲啥耗電,什麼是數據傳輸步驟)
    • Power-consuming audio preprocessing and data transfer steps are eliminated by directly classifying from raw audio.
  • 結果
    • 在Google’s Speech Commands 測試集上準確率高達96.4%
    • only 62k parameters

0x02 提出了哪些創新點

之前的工作優化方向在於優化每秒計算的內存和操作數

2.1 提出了一個更加節能的神經網絡

  • 通過觀察內存功耗來調整神經網絡,實現微控制器的節能

2.2 使用了SincConvs

  • 第一次把這個網絡結構使用到KWS上,之前都是用作語音識別

  • 使用了DSConvs減少計算量

2.3 參數少,性能好

  • 對比於TC-ResNet 305k參數,96.6% acc,本文的只有 122k,96.6%acc
  • 最少只有62k parameters

0x03 網絡

3.1 需求

  • 低電量消耗
    • 假設內存消耗和電池消耗相關
    • 內存消耗觀察電池消耗
    • 方法
      • 參數減少
      • 量化
      • 模型壓縮
      • 優化數據流
  • 實時性
  • 低內存佔用
  • 高準確率

3.2 網絡結構

  • 第一層使用了SincNet的第一層,叫做SincConv
    • 可以直接把原始音頻作爲網絡的輸入,而不是MFCC作爲網絡的輸入
    • sinc(x)=sin(x)/xsinc (x) = sin(x) / x
    • 一個sinc可以作爲一個矩形,兩個可以做爲帶通濾波器使用,沒有能理解透徹
    • One sinc function in the time domain represents a rectangular function in the spectral domain, therefore two sinc functions can be combined to an ideal band-pass filter
  • 使用Groping 之前,參數量是122k,使用之後是62k
JPkUeK.png
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章