kaldi原始碼分析 零 kaldi的安裝

2021-09-27 01:46:11 字數 1569 閱讀 5347

安裝依賴

sudo apt-get update

sudo apt-get install git

sudo apt-get install g++ zlib1g-dev automake autoconf libtool subversion

sudo apt-get install libatlas3-base

git clone

cd kaldi/tools

./extras/check_dependencies.sh # 首先檢查安裝的依賴是否完整,根據結果安裝不同的包

make

cd kaldi/src

./configure --shared

make depend #預編譯

make #編譯

安裝語言模型訓練工具

cd extras/

./install_irstlm.sh

英特爾的mkl庫提供了cpu加速的功能,在訓練速度上相對其他庫會更快速。 在之前進行安裝kaldi時,kaldi數學計算庫預設為 英特爾mkl庫,當進行配置./configure時失敗時,並且沒有許可權安裝mkl庫。解決辦法是 可以嘗試通過以下命令進行配置 atlas 數學計算庫。

./configure --shared --mathlib=atlas --atlas-root=../tools/atlas_headers/
在安裝kaldi的過程中,很容易遇到openfst安裝不成功的情況,例如

gzip: stdin: unexpected end of file tar:

unexpected eof in archive tar:

unexpected eof in archive tar:

error is not recoverable: exiting now

makefile:94: recipe for target 『openfst-1.6.7』 failed

在虛擬機器中安裝kaldi中,在進行make的過程當中,會導致錯誤 internal compiler error:killed 的發生。

主要原因在於作業系統沒有交換分割槽,造成在編譯額過程中記憶體不足。

解決辦法:

管理員許可權進行執行

# 建立分割槽檔案, 大小 2g

dd if=/dev/zero of=/swapfile bs=1k count=2048000

# 生成 swap 檔案系統

mkswap /swapfile

# 啟用 swap 檔案

swapon /swapfile

# 如果想要在在系統重啟的時候自動掛載交換分割槽, 這樣我們就需要修改 /etc/fstab

# 修改 /etc/fstab 檔案, 新增如下內容:

/swapfile swap swap defaults 0 0

kaldi 原始碼分析 四 SRC 目錄結構

在 kaldi 原始碼中,src 目錄內容主要都使用來建立工具使用的一些工具原始碼,比如 feat,fstext,decoder 等相關工具原始碼。kaldi 版本資訊存放在 src version 檔案中,通過 src base get version.sh 指令碼生成相應的 version.h ...

Libevent原始碼分析(零) 前言

libevent的介紹網上比較多,基本有以下幾個特點 事件驅動,高效能 高效能是libevent最重要的特性,後續原始碼分析中我們將分析為何libevent會如此高效。輕量級,專注於網路 筆者使用過ace,也讀過一些ace的原始碼,ace功能太多,組織也相對混亂,和ace相比,libevent專注於...

spring原始碼分析 spring原始碼分析

1.spring 執行原理 spring 啟動時讀取應用程式提供的 bean 配置資訊,並在 spring 容器中生成乙份相應的 bean 配置登錄檔,然後根據這張登錄檔例項化 bean,裝配好 bean 之間的依賴關係,為上 層應用提供準備就緒的執行環境。二 spring 原始碼分析 1.1spr...