Automatic Speech Recognition, ASR (語音識別)

那些語音處理 (Speech Processing) 踩的坑

WEB DEMO | FB Messenger | RESTful API

通過語音信號處理和模式識別讓機器自動識別和理解人類的口述
Meeting & Minutes Master | TW Deep Master
Call for Partner or POC (Proof of Concept) Contact: TonTon ( at ) TWMAN.ORG
中文說話者識別中文語音增強(去噪)中文語者分離

#speechprocessing_deeplearning101

語音辨識(speech recognition)技術,也被稱為自動語音辨識(英語:Automatic Speech Recognition, ASR)、電腦語音識別(英語:Computer Speech Recognition)或是語音轉文字識別(英語:Speech To Text, STT),其目標是以電腦自動將人類的語音內容轉換為相應的文字;跟小夥伴們一起嘗試過NEMO還有Kaldi、MASR、VOSK,wav2vec以及Google、Azure等API更別說後來陸續又出現SpeechBrain、出門問問的WeNet跟騰訊PIKA等。目前已知可訓練聲學模型(AM)中文語音(中國發音/用語,可惜還沒臺灣較靠譜的)公開數據如:Magic-Data_Mandarin-Chinese-Read-Speech-Corpus、aidatatang、aishell-1 、aishell-2等約2000多小時(aishell目前已到4,但想商用至少得破萬小時較靠譜);再搭配語言模型(LM),然後基於各種演算法架構優化各有優缺點,效果也各有優劣與說話人辨識及說話人確認不同,後者嘗試辨識或確認發出語音的說話人而非其中所包含的詞彙內容。 語音辨識技術的應用包括語音撥號、語音導航、室內裝置控制、語音文件檢索、簡單的聽寫資料錄入等。語音辨識技術與其他自然語言處理技術如機器翻譯及語音合成技術相結合,可以構建出更加複雜的應用,例如語音到語音的翻譯。語音辨識技術所涉及的領域包括:訊號處理、圖型識別、概率論和資訊理論、發聲機理和聽覺機理、人工智慧等等。

Kaldi-ASR Install Guide & error

https://zhuanlan.zhihu.com/p/148524930

https://zhuanlan.zhihu.com/p/44483840

  1. 下載Kaldi原始碼

  2. 安裝相關套件

    • cd kaldi/tools/extras

    • 會發現很多相依套件沒安裝
      ./check_dependencies.sh
      tools/extras/check_dependencies.sh: sox is not installed.

      tools/extras/check_dependencies.sh: gfortran is not installed.
      tools/extras/check_dependencies.sh: subversion is not installed

    • 安裝相依套件
      sudo apt-get install zlib1g-dev automake autoconf sox gfortran subversion

    • 安裝 intel-mkl 很常報錯,像是下面這樣
      sudo ./install_mkl.sh -sp debian intel-mkl-64bit-2020.0-088
      Err:9 http://ppa.launchpad.net/jonathonf/python-3.6/ubuntu xenial Release 403 Forbidden [IP:91.189.95.85 80]
      Reading package lists... Done
      W: GPG error: http://dl.google.com/linux/chrome/deb stable InRelease:
      The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 78BD65473CB3BD13
      E: The repository 'http://dl.google.com/linux/chrome/deb stable InRelease' is not signed. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details. E: The repository 'http://ppa.launchpad.net/jonathonf/python-3.6/ubuntu xenial Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details.

    • 打開Software & Updates,切換到Other Software選項,找到如下方右圖的選項,把前面的勾去掉 (但是我只有 terminal 怎辦 ?)

    • 直接把相關的安裝源刪除,然後再安裝一次 intel-mkl
      /etc/apt/sources.list.d
      sudo rm /etc/apt/sources.list.d/jonathonf-ubuntu-python-3_6-xenial.list
      sudo rm /etc/apt/sources.list.d/google-chrome.list
      sudo apt update

  3. 安裝第三方工具及語言模型

    • cd kaldi/tools
      sudo apt-get install libtool

sudo make openfst
sudo make cub

    • sudo extras/install_irstlm.sh
      sudo extras/install_openblas.sh

  1. 編譯安裝與測試

    • cd kaldi/src
      ./configure --shared
      make depend -j 8
      make -j 8

    • cd ../egs/yesno/s5/
      ./run.sh
      %WER 0.00 [ 0 / 232, 0 ins, 0 del, 0 sub ] exp/mono0a/decode_test_yesno/wer_10_0.0