Python 在多进程中使用 logging
这一回我想记录一下 python 的多进程日志记录
这一回我想记录一下 python 的多进程日志记录
解码本质上是使用声学模型 \(p(O,S|W)\) 和语言模型 \(P(W)\) 在搜索空间里寻找最可能的词序列 \(\hat{W}\)。
通过 VSCode 的远程插件和 Docker 插件,我们就可以用它来调试服务端 Docker 内的程序啦。个人认为是蛮实用的,比直接对着 terminal 的黑框框用 vim 要强不少。
这一回我们讲讲如何在 N-gram 模型中使用维特比算法进行连续语音识别。
DTW 算法用于解决语音序列不对齐的问题。因为不同的人发言速度不一样,所以很难直接比对两个序列的相似性。
维特比算法就是解码算法,它需要解决的是在给定观察 \(O\) 和 HMM 模型的条件下寻找一条最优的状态序列 \(Q\),使得 \(P(O|Q)\) 概率最大。当然我们可以遍历所有可能状态序列,但这个运算量太大,显然不现实。这里我们就需要用到维特比算法了。
MFCC 是语音识别里比较重要的概念,用于声学建模。基本步骤如下
上一篇我们讲了隐马尔可夫模型(HMM)的推导计算。对于一个单高斯隐马尔可夫模型而言,其参数集合包含 \(A=[a_{ij}]\) 转移概率矩阵,高斯分布均值向量 \(\boldsymbol{\mu}_{i,m}\),高斯分布的协方差 \(\boldsymbol{\Sigma}_{i,m}\)。 这一篇我们来讲讲如何从数据中训练得到这些参数。
最近学习了一下 ASR 相关的知识,一个经典的算法就是隐马尔可夫模型,分两篇博客记录一下