Kaldi的关键词搜索(Keyword Search,KWS)
本文简单地介绍了KWS的原理——为Lattice中每个词生成索引并进行搜索;介绍了如何处理OOV——替补(Proxy,词典内对OOV的替补)关键词技术;介绍了KWS的语料库格式;介绍了KWS在Kaldi中的示例训练脚本和搜索脚本。
- KWS系统示例:
论文下载:
http://www.clsp.jhu.edu/~guoguo/papers/icassp2013_lexicon_value.pdf
论文标题:QUANTIFYING THE VALUE OF PRONUNCIATION LEXICONS FOR KEYWORD SEARCH IN LOW RESOURCE LANGUAGES
该文介绍了LVCSR和KWS系统、词典扩充方法、词典扩充对LVSCR和KWS的影响。
- KWS系统:根据[2],为Lattice进行索引分为以下几步:
- 为测试集(eval, evalution,评估)中每一语句的有限状态转换器(FST)转换为(如何转换?)泛化因子转换器结构。该结构中,每个词的实例都拥有一个三元组(词的开始时间,词的结束时间,后验概率)。因子转换器,隐含了测试集中所有词序列的逆序(以后验概率排序)列表。可以使用Google OpenFST对其进行进一步的处理。
- 要在上述因子转换器中对某个词或短语进行检索,首先构建该词的有限状态机,然后与因子转换器进行组合(如何组合?),即得到了上述词的逆序列表。
- 使用[20]提出的方法,通过最大化所有关键词的期望词权重值(expected term weighted value,ETWV)(是啥?),估计一个决策阈值(如何估计),用于对各个结果作出Yes/No的决策。
- 最后,所有关键词命中集合将通过NIST 2006 Spoken Term Detection评估协议计算实际词权重值(actual term weighted value)(如何计算)。
某个关键词在测试集中的出现次数=所有预测命中的后验概率。
- 词典扩充对LVCSR和KWS的影响:提高发音词典词汇量,能提升1-4%的识别率,能提升KWS中实际的词加权值约60%的效果。在LVCSR阶段的词典扩充大大优于KWS阶段。
词典扩充只能适度降低WER,但是能很大程度地提高随后的ATWV。
- Lattice索引生成技术:
论文下载:
https://wiki.inf.ed.ac.uk/twiki/pub/CSTR/ListenSemester2201314/taslp_2011.pdf
论文标题:Lattice indexing for spoken term detection
本文为话语检测技术构建反向索引,具体的,在确定的WFST中存储软命中(soft-hit)信息(utterance-id, start time, end time, posterior score四元组,用于与目标词匹配)。展示了如何在多个Lattice中(多个语句中)生成所有子字符串的索引。
ASR候选解码结果通常储存在带权有向无环图——即lattices中。由于有限状态转换器框架提供了通用的搜索、优化、合并算法,通常使用有限状态转换器来表示ASR Lattice。对以WFST形式的lattice进行索引和搜索的问题,可以被看作是在文本文档中对模式进行搜索的扩展。搜索问题的有限解决办法使用了一种称为因子转换器的结构[12]。一个因子转换器是一个组成一篇文档的字符串集合中子字符串集合的倒排索引。因子转换器是一个非常有效的顺序索引,并且十分适用于需要确切序列匹配的话语检出应用。话语段和口语词检测是两种话语应用,分别用于找到语句以及包含查询词确切序列的语句中的时间间隔。
- Proxy关键词技术:
http://www.clsp.jhu.edu/~guoguo/papers/asru2013_proxy_keyword.pdf
基于WFST的框架用于处理OOV,单词级的
什么是segment?
猜测是关键词。为了进行训练,要为训练数据的语句进行切分,切分为关键词的序列。切分后的关键词序列可能会有字重叠。
什么是F4DE,KWS哪里用到了?
猜测在关键词搜索脚本local/kws_search.sh中使用。
Kaldi中关于KWS的示例:
babel/s5b
KWS的5个阶段:
- 使用训练数据集(train)训练一个LVCSR;
- 对测试集进行分段处理;
- 使用LVCSR生成测试集的解码结果(Lattice);
- 生成Latiice的倒排索引;
- 进行关键词的搜索。
KWS的数据准备
需要在KWS数据目录中手工准备以下三个文件:
ecf,检索集相关信息
kwlist,关键词列表
rttm,用于KWS打分
Kaldi的关键词搜索(Keyword Search,KWS)的更多相关文章
- Elasticsearch 全文搜索和keyword search字段的mapping定义
在ES5.0之前我们对于需要keyword search的字段都是这样定义的: { "field name":{ "type": "string&qu ...
- 搜索框中“请输入搜索keyword”
$(function(){ $("#ctl00_txtKey").val("请输入搜索keyword").addClass("search&qu ...
- 读论文系列:Nearest Keyword Search in XML Documents中使用的数据结构(CT、ECT)
Reference: [1]Y. Tao, S. Papadopoulos, C. Sheng, K. Stefanidis. Nearest Keyword Search in XML Docume ...
- Thinkphp+Ajax带关键词搜索列表无刷新分页实例
Thinkphp+Ajax带关键词搜索列表无刷新分页实例,两个查询条件,分页和搜索关键字,懂的朋友还可以添加其他分页参数. 搜索#keyword和加载内容区域#ajax_lists <input ...
- 集束搜索beam search和贪心搜索greedy search
贪心搜索(greedy search) 贪心搜索最为简单,直接选择每个输出的最大概率,直到出现终结符或最大句子长度. 集束搜索(beam search) 集束搜索可以认为是维特比算法的贪心形式,在维特 ...
- 对《禁忌搜索(Tabu Search)算法及python实现》的修改
这个算法是在听北大人工智能mooc的时候,老师讲的一种局部搜索算法,可是举得例子不太明白.搜索网页后,发现<禁忌搜索(Tabu Search)算法及python实现>(https://bl ...
- 线搜索(line search)方法
在机器学习中, 通常需要求某个函数的最值(比如最大似然中需要求的似然的最大值). 线搜索(line search)是求得一个函数\(f(x)\)的最值的两种常用迭代方法之一(另外一个是trust re ...
- 选择性搜索(Selective Search)
1 概述 本文牵涉的概念是候选区域(Region Proposal ),用于物体检测算法的输入.无论是机器学习算法还是深度学习算法,候选区域都有用武之地. 2 物体检测和物体识别 物体识别是要分辨出图 ...
- MIP启发式求解:局部搜索 (local search)
*本文主要记录和分享学习到的知识,算不上原创. *参考文献见链接. 本文讲述的是求解MIP问题的启发式算法. 启发式算法的目的在于短时间内获得较优解. 个人认为局部搜索(local search)几乎 ...
随机推荐
- LOJ#2245 魔法森林
这道题以前zbtrs大佬给我讲过.但是我只知道思想,不知道要lct维护... 这个套路很常见. 题意:给你一个无向图,每条边有a,b两个权值.求1到n号点的一条路径,路径的权值是每条边的最大a与最大b ...
- SecureCRT或XShell软件
SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件. Xshell 是一个强大的安全终端模拟软件,它支持SSH1 ...
- SpringCloud第二弹(高可用Eureka+Ribbon负载均衡)
先建立父工程 .. ..一路next 搭建注册中心(需要建立三个工程,端口不一样) .. .. .. 修改入口类 package com.cloud.eurekaserver1111; import ...
- UltraCompare文件内容比较工具
http://www.52pojie.cn/thread-541895-1-1.html 云盘里有<ignore_js_op> <ignore_js_op> UltraComp ...
- HTML学习笔记Day15
一.CSS3渐变 (一).CSS3渐变(gradient)可以让你在两个或多个指定的颜色之间显示平稳的过度:渐变效果比使用图片在放大时看起来效果更好,因为渐变(gradient)是由浏览器生成的 1. ...
- 最短路经算法简介(Dijkstra算法,A*算法,D*算法)
据 Drew 所知最短路经算法现在重要的应用有计算机网络路由算法,机器人探路,交通路线导航,人工智能,游戏设计等等.美国火星探测器核心的寻路算法就是采用的D*(D Star)算法. 最短路经计算分静态 ...
- node(基础三)_模块系统基础
一.前言 这篇文章主 ...
- C# Excel转换成Json工具(含源码)
可执行版本下载:https://github.com/neil3d/excel2json/releases 完整项目源代码下载:https://github.com/neil3d/excel2json ...
- pxc5.7配置安装
pxc5.7配置安装 一.准备工作 # Centos6. 最小化安装操作系统 ########################---- Centos最小化安装推荐常用依赖包---- ######### ...
- Centos 6.8编译安装LNMP环境
Centos 6.8编译安装LNMP环境 参考资料: http://www.jb51.net/article/107429.htm https://phperzh.com/articles/1360 ...