更改

大数据智能-Lucida使用

添加6字节2016年11月16日 (三) 06:20
/* 语音识别ASR */
===LSTM===
Kaldi是一个基于C++的语音识别工具包,实现了各种经典的语音信号特征提取及分析算法及最新的循环神经网络结构(以LSTM为主)。
 
语音识别引擎的基本系统框架如下图所示,深度学习模型中包含多层LSTM网络。
三个σ表示sigmoid函数;由于sigmoid函数的输出范围为[0,1],其输出向量u和其它向量v点乘的结果等效于v中的每个元素受到u中对应元素的门限作用,所以这三个sigmoid的输出向量在LSTM中被定义为门限,从左至右依次为:忘记门,输入门,输出门。
 
首先,忘记门作用于Cell,决定哪些长期信息继续保留、哪些被舍弃;前一时刻的隐含层状态h_(t-1)及当前时刻输入x_t共同决定当前时刻的写入信息(图中tanh矩形框部分),该信息经过输入门的作用后加入到Cell中,从而实现细胞状态的更新;更新后的细胞状态经过输出门的作用后输出当前时刻的隐含层状态h_t,从而完成当前时刻的前向传播流程。
 
三个门限的输入值可以取决于前一时刻的隐含层状态h_(t-1)、当前时刻的输入x_t、偏置、细胞状态(peephole)等多种因素,上述因素的不同组合可以产生LSTM的各种变体。每一个依赖项的线性变换矩阵均可以通过反向传播算法进行训练。
====GStreamer====
GStreamer 是一个开源的多媒体框架库。利用它,可以构建一系列的媒体处理模块,包括从简单的 ogg 播放功能到复杂的音频(混音)和视频(非线性编辑)的处理。
 
应用程序可以透明的利用解码和过滤技术。开发者可以使用简洁通用的接口来编写一个简单的插件来添加新的解码器或滤镜。
 
在这里,Kaldi的语音识别模型被视为GStreamer的一个插件。
====Master Server====
====Client====
用户可以调用给定的client程序,以指定的速率发送音频文件到服务器的监听端口,正常情况下会返回识别结果。
 
也可以使用提供的简单的HTTP API来发送和接收音频文件和识别结果。
7
个编辑