原创 嵌入式平臺Portaudio的交叉編譯

該博文屬於系列文章,其他文章參考總覽: kaldi嵌入式平臺的移植及實現   前言: PortAudio是一個免費的、跨平臺的、開放源碼的音頻I/O庫,kaldi在online gmm針對流式解碼時,使用了該開源框架,像DNN解碼,kal

原创 Kaldi aishell2 GMM訓練步驟(含aishell1語料轉aishell2組織方式)

0 前言      中文語音識別的aishell2推出已經有一段時間了,由於沒有aishell2的語料庫,有資格的可以申請,所以拿aishell1的15G語料進行訓練,所以寫了相關的腳本處理aishell1的語料庫,來適配aishell2

原创 MFCC特徵提取--基於kaldi裁剪

0. 前言 關於MFCC相關原理,這裏就不過多敘述了,網上的參考資料也比較多,自己對MFCC原理理解也不是很深刻(方向不一樣),主要介紹本人對kaldi mfcc特徵提取代碼裁剪後的接口,此處開源的MFCC不含pitch特徵提取。

原创 嵌入式平臺openFst的交叉編譯

該博文屬於系列文章,其他文章參考總覽: kaldi嵌入式平臺的移植及實現   前言: openfst的介紹就不必了,大家自行百度,下面進入正題。 Openfst下載: 目前kaldi版本爲5.5,使用的openfst的版本爲openfst

原创 嵌入式平臺OpenBlas及Clapack的交叉編譯

該博文屬於系列文章,其他文章參考總覽: kaldi嵌入式平臺的移植及實現   前言: OpenBlas是一款開源的矩陣運算庫,具體介紹參考http://www.openblas.net/ 。在linux PC上,即訓練時,採用的數學矩陣庫

原创 C語言結構體初始化的方式

結構體變量的初始化的四種形式,其中第四種形式是寫本次博客目的,暫且mark一下。   示例代碼及註釋 #include <stdio.h> typedef struct { void (*pCallback) (int a, in

原创 Kaldi解碼加速策略概述

前言 本文介紹幾種優化解碼器加速方法,基於kaldi chain模型解碼器(online2-wav-nnet3-latgen-faster),訓練的模型用於喚醒詞場景,主要優化內容包含:特徵提取、TDNN神經網絡計算、FST優化、

原创 kaldi嵌入式平臺的移植及實現

本系列包含內容分以下幾篇文章介紹: 1. openFst的交叉編譯  2. 數學庫OpenBlas及Clapack的交叉編譯 3. 音頻接口Alsa的交叉編譯 4. 音頻框架portaudio的交叉編譯(基於音頻流處理,詳細參考kaldi

原创 Chain模型神經網絡前向計算

0.前言 Chain模型在神經網絡前向計算與全連接的神經網絡一樣,在計算對數似然概率分佈時,只需要隱層的權重和偏置參數值,而在每次的推理中,像BatchNormal、Dropout等操作是不存在的,它們是在最初加載final.md

原创 嵌入式平臺kaldi源碼的交叉編譯

該博文屬於系列文章,其他文章參考總覽: kaldi嵌入式平臺的移植及實現   前言: 在編譯kaldi源碼時,請先參照 https://www.jianshu.com/p/05e1bbe0ca3a 這篇文章在x86平臺能夠編譯後,再進行以

原创 Kaldi Chain解碼器系列介紹

前言 Kaldi解碼器針對喚醒詞或特定場景控制詞來說,過於臃腫,佔用內存較大,爲了使得解碼流程能夠清晰並且精簡,以及方便移植一些不支持C++的平臺(代碼C語言實現解碼器,下文Github中僅給出C++的實現,C++實現移除了類的定

原创 嵌入式平臺Alsa的交叉編譯

該博文屬於系列文章,其他文章參考總覽: kaldi嵌入式平臺的移植及實現   前言: alsa的介紹不多說,自行百度...^ ^ alsa lib下載: 官網 http://www.alsa-project.org/main/index.

原创 深度學習之路--神經網絡結構的學習總結

0. 前言 神經網絡是爲了解決感知機的缺陷,感知機的權重和偏置需要人爲設定,但神經網絡可以自動從數據中學習到合適的權重和偏置值,下面給出一個2層的神經網絡結構(有些書稱爲3層),包含輸入層、中間層(也稱作隱層)和輸出層:  1. 激活函

原创 深度學習之路--感知機的學習總結

1. 感知機的基本原理     關於感知機的知識,需要了解的是激活是什麼?輸入、輸出又是什麼?權重、偏置又是什麼?下面結合一張圖說明一下 圖中○代表一個神經元,當輸入信號傳遞到神經元時,會被乘以固定的權重值,即,神經元會求取傳遞到該神經

原创 Shell腳本學習總結

    最近一段時間研究語音識別(Automatic Speech Recognition, ASR),接觸到一款優秀的ASR開源項目Kaldi。學習過程中,發現Kaldi大部分腳本採用Shell語音編寫,所以潛心學習了一段時間的Shel