博舍

简析语音识别技术的工作原理 语音识别技术的工作原理及发展历程简述概括

简析语音识别技术的工作原理

(文章来源:钛媒体APP)

语音识别技术是让机器通过识别把语音信号转变为文本,进而通过理解转变为指令的技术。目的就是给机器赋予人的听觉特性,听懂人说什么,并作出相应的行为。语音识别系统通常由声学识别模型和语言理解模型两部分组成,分别对应语音到音节和音节到字的计算。一个连续语音识别系统(如下图)大致包含了四个主要部分:特征提取、声学模型、语言模型和解码器等。

(1)语音输入的预处理模块,对输入的原始语音信号进行处理,滤除掉其中的不重要信息以及背景噪声,并进行语音信号的端点检测(也就是找出语音信号的始末)、语音分帧(可以近似理解为,一段语音就像是一段视频,由许多帧的有序画面构成,可以将语音信号切割为单个的“画面”进行分析)等处理。

(2)特征提取,在去除语音信号中对于语音识别无用的冗余信息后,保留能够反映语音本质特征的信息进行处理,并用一定的形式表示出来。也就是提取出反映语音信号特征的关键特征参数形成特征矢量序列,以便用于后续处理。

(3)声学模型训练,声学模型可以理解为是对声音的建模,能够把语音输入转换成声学表示的输出,准确的说,是给出语音属于某个声学符号的概率。根据训练语音库的特征参数训练出声学模型参数。在识别时可以将待识别的语音的特征参数与声学模型进行匹配,得到识别结果。目前的主流语音识别系统多采用隐马尔可夫模型HMM进行声学模型建模。

(4)语言模型训练,语言模型是用来计算一个句子出现概率的模型,简单地说,就是计算一个句子在语法上是否正确的概率。因为句子的构造往往是规律的,前面出现的词经常预示了后方可能出现的词语。它主要用于决定哪个词序列的可能性更大,或者在出现了几个词的时候预测下一个即将出现的词语。它定义了哪些词能跟在上一个已经识别的词的后面(匹配是一个顺序的处理过程),这样就可以为匹配过程排除一些不可能的单词。

语言建模能够有效的结合汉语语法和语义的知识,描述词之间的内在关系,从而提高识别率,减少搜索范围。对训练文本数据库进行语法、语义分析,经过基于统计模型训练得到语言模型。

(5)语音解码和搜索算法,解码器是指语音技术中的识别过程。针对输入的语音信号,根据己经训练好的HMM声学模型、语言模型及字典建立一个识别网络,根据搜索算法在该网络中寻找最佳的一条路径,这个路径就是能够以最大概率输出该语音信号的词串,这样就确定这个语音样本所包含的文字了。所以,解码操作即指搜索算法,即在解码端通过搜索技术寻找最优词串的方法。

连续语音识别中的搜索,就是寻找一个词模型序列以描述输入语音信号,从而得到词解码序列。搜索所依据的是对公式中的声学模型打分和语言模型打分。在实际使用中,往往要依据经验给语言模型加上一个高权重,并设置一个长词惩罚分数。

语音识别本质上是一种模式识别的过程,未知语音的模式与已知语音的参考模式逐一进行比较,最佳匹配的参考模式被作为识别结果。当今语音识别技术的主流算法,主要有基于动态时间规整(DTW)算法、基于非参数模型的矢量量化(VQ)方法、基于参数模型的隐马尔可夫模型(HMM)的方法、以及近年来基于深度学习和支持向量机等语音识别方法。    (责任编辑:fqj)

语音文字识别基本原理和经典综述

目录0引言1发展历程2基本原理3语言模型3.1n-gram3.2RNN4声学模型的传统模型5声学模型的深度学习模型5.1DNN5.2RNN和LSTM6声学模型的端到端模型6.1CTC6.2Seq2Seq0引言

这是北理计算机研究生的大数据课程的汇报作业,我负责这一部分的讲述,故通过整理这个博客来梳理一些下周一的讲演思路。

1发展历程

2基本原理

我录了一句自己说这句话时的音频,将这一段音频转化为声音的波形图就如下图所示。第一个波峰就是“嗨”字,后面的三个紧凑的波峰也就是剩下的三个字,这很简单。而对这样一个波形图,为进行语音的识别需要经历三个大的步骤,分别是

预处理声音特征提取建立声学模型和语言模型

在预处理阶段,首先要做的事情叫做VAD(VoiceActivityDetection),翻译过来就是语音端点检测或者说是静音抑制。指的是从声音信号流里识别和消除长时间的静音期。图中演示的是通过短时能量(绿)和过零率(红)来切割下“嗨大家好”声音的首尾空白。下一步预处理的操作就是分帧。概念其实很简单,就是把刚刚的声音波形图分成一小段一小段,值得注意的是分帧时是要有交叠的;正因为如此,分帧后再展开的声音波形图比原波形图要长而且出现锯齿。预处理阶段最重要的结束之后,再下一步就是声音特征的提取。如图所示的就是将之前我说的那句“嗨,大家好”转化成MFCC特征的矩形方阵。具体转化过程会更加复杂一些,包括但不限于短时傅里叶变换、取倒谱等等。这个程序是github上找到的AcousticFeatureExtraction-master,对于声音特征的提取做的很好。基本的事情处理结束之后,最重要也是最复杂的一步就是声学模型和语言模型的建模了。在这一部分,只简单介绍一下这俩模型什么意思,后续会详细说明不同的模型。如上图的公式所示,其中W表示文字序列,Y表示语音输入。在语音文字识别当中,就是要把语音输入转化为对应的文字序列;而将这句话转化成数学表达,就是(1)式中的条件概率。将(1)通过贝叶斯定理转化成(2),又由于(2)中分母的概率对整个式子影响不大,所以约等于不考虑分母,这样就得到了(3)式。而(3)式当中的两个,就分别是声学模型和语言模型。声学模型是对声学、语音学、环境的变量、说话人性别、口音等的差异的知识表示,即给定文字之后发出这段语音的概率;而语言模型是对一组字序列构成的知识表示,即判定一个文字序列出现的概率。声学模型一般得到语音特征到音素的映射;语言模型一般得到词与词、词与句子的映射。

3语言模型

首先说明一下较为好说的语言模型。仍以刚才这段“嗨大家好”举例。当通过声学模型建立出声音对应的发音音素之后,语言模型就要考虑这样一段发音因素对应的文字最大的概率是什么文字。比如说刚出来“hai”之后,对应的就是“嗨”,而不是“害”“还”“海”,因为在语言模型当中,单个“hai”对应“嗨”字的概率最大。其余的也同理。更刁钻一点,同音字问题也要通过语言模型去进行处理。比如说这一段有名的《季姬击鸡记》。为了处理这些问题,在这里介绍两个语言模型。

3.1n-gram

仍以这一段为例,对于“haidajiahao”,这一串词是一个个词组成的。好像是废话,但总结成数学表示就是

T是由词序列A1,A2,A3,…AnA1,A2,A3,…AnA1,A2,A3,…An组成的,即使得

P(T)=P(A1A2A3…An)P(T)=P(A1A2A3…An)P(T)=P(A1A2A3…An)最大

P(T)=P(A1A2A3…An)=P(A1)P(A2∣A1)P(A3∣A1A2)…P(An∣A1A2…An−1)P(T)=P(A1A2A3…An)=P(A1)P(A2|A1)P(A3|A1A2)…P(An|A1A2…An-1)P(T)=P(A1A2A3…An)=P(A1)P(A2∣A1)P(A3∣A1A2)…P(An∣A1A2…An−1)

而最后一行的公式在实际运算中显然是过于苦难和繁琐了。因此,我们要引入马尔科夫假设。

马尔科夫假设:一个item的出现概率,只与其前m个items有关

举个例子来说明的话就是,假设你一直在转圈(原地改变方向),那么你下一刻所处什么方向,只与你现在在什么方向有关,与之前的积累量无关。上面那个圈圈图说明的就是,一个状态到另一个状态建立这种概率连接,它能否从一个状态转移到另一个状态只与当前状态有关,这样就不需要为之前众多的变化而费心了。在语言模型中,以2-gram举例说明,之前的概率就可以简化为

P(T)=P(A1)P(A2∣A1)P(A3∣A2)…P(An∣An−1)P(T)=P(A1)P(A2|A1)P(A3|A2)…P(An|An-1)P(T)=P(A1)P(A2∣A1)P(A3∣A2)…P(An∣An−1)

3.2RNN

RNN(循环神经网络)也是常用的一个语言模型。当把词依次输入到网络中,每输入一个词,循环神经网络就输出截止到目前为止下一个最可能的词。在此不详细展开了。

4声学模型的传统模型

传统的声学模型一般基于GMM(高斯混合模型)和HMM(隐马尔可夫模型)。GMM指的是将多个正态分布(高斯分布)的数据进行混合的一种概率模型。在语音识别中,可以通过高斯混合模型将先前得到的声音特征进一步转化为声音的状态。隐马尔可夫模型是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。马尔可夫过程之前提到过,就是当下状态只与前一个或几个状态有关,与再往前的状态无关。之前得到的状态需要通过HMM来判定是否保留或跳转。图中的viterbi是一种找寻有向无环图中最短路径的算法。声音特征再处理得到的状态会构成一个庞大的状态网络,而利用viterbi算法就可以方便的找到状态网络中的最短路径,也就是最终的文字序列。

5声学模型的深度学习模型5.1DNN

DNN实际上就是用DNN替换了GMM来对输入语音信号的观察概率进行建模。与GMM采用单帧特征作为输入不同,DNN将相邻的若干帧进行拼接来得到一个包含更多信息的输入向量。相比于GMM-HMM,DNN-HMM具有如下优点:

DNN不需要对声学特征所服从的分布进行假设DNN由于使用拼接帧,可以更好地利用上下文的信息DNN的训练过程可以采用随机优化算法来实现,可以接受更大的数据规模5.2RNN和LSTM

语音的协同发音现象说明声学模型需要考虑到语音帧之间的长时相关性,尽管上文中DNN-HMM通过拼帧的方式对上下文信息进行了建模,但是毕竟拼接的帧数有限,建模能力不强,因此引入了RNN(循环神经网络)增强了长时建模的能力,RNN隐层的输入除了接收前一个隐层的输出之外,还接收前一时刻的隐层输出作为当前输入,通过RNN的隐层的循环反馈,保留了长时的历史信息,大大增强了模型的记忆能力,语音的时序特性通过RNN也得到了很好的描述。但是RNN的简单结构在模型训练进行BPTT(BackpropagationThroughTime)时很容易引起梯度消失/爆炸等问题,因此在RNN的基础上引入了LSTM(长短时记忆模型),LSTM是一种特殊的RNN,通过Cell以及三个门控神经元的特殊结构对长时信息进行建模,解决了RNN出现的梯度问题,实践也证明了LSTM的长时建模能力优于普通RNN。

6声学模型的端到端模型6.1CTC

CTC(Connectionisttemporalclassification)翻译过来叫做连接时序分类,主要用于处理序列标注问题中的输入与输出标签的对齐问题。传统的语音识别的声学模型训练,对于每一帧的数据,需要知道对应的label才能进行有效的训练,在训练数据之前需要做语音对齐的预处理。采用CTC作为损失函数的声学模型序列,不需要预先对数据对齐,只需要一个输入序列和一个输出序列就可以进行训练。CTC关心的是预测输出的序列是否和真实的序列相近,而不关心预测输出序列中每个结果在时间点上是否和输入的序列正好对齐。CTC建模单元是音素或者字,因此它引入了Blank。对于一段语音,CTC最后输出的是尖峰的序列,尖峰的位置对应建模单元的Label,其他位置都是Blank。

6.2Seq2Seq

Sequence-to-Sequence方法原来主要应用于机器翻译领域。给定序列X,输出Y,最直白的一种办法就是延伸在机器翻译中所使用的Seq2Seq模型。2017年,Google将其应用于语音识别领域,取得了非常好的效果,将词错误率降低至5.6%。如图所示,Google提出新系统的框架由三个部分组成:Encoder编码器组件,它和标准的声学模型相似,输入的是语音信号的时频特征;经过一系列神经网络,映射成高级特征henc,然后传递给Attention组件,其使用henc特征学习输入x和预测子单元之间的对齐方式,子单元可以是一个音素或一个字。最后,attention模块的输出传递给Decoder,生成一系列假设词的概率分布,类似于传统的语言模型。

语音识别原理(1)

如果要自己开发一个语音识别系统,首先需要一个声音的录音程序。这个录音程序主要干的事就是将我们人说话的模拟信号转换成数字信号,也就是语音编码中的量化。

语音编码主要有4个步骤的过程:

参考  https://blog.csdn.net/miaokoko/article/details/79183975

模拟信号------采样------量化--------数字信号

模拟信号也就是我们人发出的声音信号,模拟信号是连续的,没有办法用计算机存储,所以为了能让计算机存储模拟信号必须对其进行采样。

采样也就是每隔一段时间采一个点,让人说话的模拟信号变成离散信号,可以让计算机处理。

但是这时候计算机还是不能存储,因为没有计算机里面都是使用二进制存储,必须将每一个模拟信号的直转换为一个量值,让计算机能够表达并存储,所以就需要对采样的值进行量化。

量化也就是我们编程中遇到的16位PCM编码中的16位,每16位表达一个量化的值,也可以选择8位。

PCM编码就是对模拟信号进行四个过程转换后得到的数字信号,但是此使如果我们要播放音频,还需要将信号转换为可以播放的格式,一般选择无损的话会选择wav格式,wav只是简单的在PCM数据上加了自己的头,数据部分不变。具体格式很多,可以参考:https://blog.csdn.net/houxiaoni01/article/details/78810674 作者写的很全。

 

然后拿到数字信号就可以进行语音识别了。

语音识别主要过程有:

一段音频------分帧(分成若干小段音频)------特侦提取(一般是MFCC特征)--------识别(声学模型)-------组合(语言模型)

首先一段音频,也就是上面我们的录音程序录到的一段音频文件,比如A.wav/A.mp3......

分帧也就是将我们录到的这一段音频隔一段时间切割一下,比如我们录了1分钟的声音,现在我们每1秒分割一下,会得到60个样本。

特征提取一般是提取MFCC特征,使用的主要是傅里叶变化的原理,有一些现成的工具(librosahttp://librosa.github.io/librosa/),有兴趣也可以看看源码。

然后就是通过两个模型来识别。这里主要的两个模型,声学模型和语言模型,最好使用已经训练好的,因为已有的模型是在大量数据样本下训练的,有更好的棒性。如果要自己完成整个过程,需要自己对数据进行标注。

声学模型主要干的事是将我们分帧后的数据获取到对应的因素。

语言模型也就是根据不同语言的结构,前后关系的一些句子,匹配到和声学模型识别到的最相似的句子,给出一个人类可以读懂的句子。

语音识别大致就是这样几个过程。

还需要了解一些最常用的算法:比如EM算法,HMM(隐马尔可夫),LSTM,RNN,基本的神经网络等。

学习语音识别也可以多在GitHub上看一些项目。多看源码,了解具体的过程。

 

 

六种生物识别技术原理及优缺点盘点

1.指纹识别的优点

1)指纹是人体独一无二的特征,并且它们的复杂度足以提供用于鉴别的足够特征。

2)如果想要增加可靠性,只需登记更多的指纹,鉴别更多的手指,最多可以达到十个,而每一个指纹都是独一无二的。

3)扫描指纹的速度很快,使用非常方便。

4)读取指纹时,用户必须将手指与指纹采集头互相接触,与指纹采集头直接接触是读取人体生物特征最可靠的方法,这也是指纹识别技术能够占领大部分市场的一个主要原因。

5)指纹采集头可以更加小型化,并且价格会更加低廉。

2.指纹识别的缺点

1)某些人或某些群体的指纹因为指纹特征很少,故而很难成像。

2)过去因为在犯罪记录中使用指纹,使得某些人害怕“将指纹记录在案”。然而,实际上现在的指纹鉴别技术都可以保证不存储任何含有指纹图像的数据,而只是存储从指纹中得到的加密的指纹特征数据。

3)每一次使用指纹时都会在指纹采集头上留下用户的指纹印痕,而这些指纹痕迹存在被用来复制指纹的可能性。

可见,指纹识别技术是目前最方便、可靠、非侵害和价格便宜的生物识别技术解决方案,市场应用有着很大的潜力。

声音识别

原理

所谓声纹(Voiceprint),是用电声学仪器显示的携带言语信息的声波频谱。人类语言的产生是人体语言中枢与发音器官之间一个复杂的生理物理过程,人在讲话时使用的发声器官--舌、牙齿、喉头、肺、鼻腔在尺寸和形态方面每个人的差异很大,所以任何两个人的声纹图谱都有差异。每个人的语音声学特征既有相对稳定性,又有变异性,不是绝对的、一成不变的。

这种变异可来自生理、病理、心理、模拟、伪装,也与环境干扰有关。尽管如此,由于每个人的发音器官都不尽相同,因此在一般情况下,人们仍能区别不同的人的声音或判断是否是同一人的声音。

优缺点

声纹识别的应用有一些缺点,比如同一个人的声音具有易变性,易受身体状况、年龄、情绪等的影响;比如不同的麦克风和信道对识别性能有影响;比如环境噪音对识别有干扰;又比如混合说话人的情形下人的声纹特征不易提取;……等等。尽管如此,与其他生物特征相比,声纹识别的应用有一些特殊的优势:

1)蕴含声纹特征的语音获取方便、自然,声纹提取可在不知不觉中完成,因此使用者的接受程度也高;

2)获取语音的识别成本低廉,使用简单,一个麦克风即可,在使用通讯设备时更无需额外的录音设备;

3)适合远程身份确认,只需要一个麦克风或电话、手机就可以通过网路(通讯网络或互联网络)实现远程登录;

4)声纹辨认和确认的算法复杂度低;

5)配合一些其他措施,如通过语音识别进行内容鉴别等,可以提高准确率;……等等。这些优势使得声纹识别的应用越来越收到系统开发者和用户青睐,声纹识别的世界市场占有率15.8%,仅次于指纹和掌纹的生物特征识别,并有不断上升的趋势。

视网膜识别

视网膜是眼睛底部的血液细胞层。视网膜扫描是采用低密度的红外线去捕捉视网膜的独特特征,血液细胞的唯一模式就因此被捕捉下来。

视网膜是一些位于眼球后部十分细小的神经(一英寸的1/50),它是人眼感受光线并将信息通过视神经传给大脑的重要器官,它同胶片的功能有些类似,用于生物识别的血管分布在神经视网膜周围,即视网膜四层细胞的最远处。

视网膜技术的优点

视网膜是一种极其固定的生物特征,因为它是“隐藏“的,故而不可能磨损,老化或是为疾病影响。

使用者不需要和设备进行直接的接触。

是一个最难欺骗的系统因为视网膜是不可见的,故而不会被伪造。

视网膜技术的缺点

视网膜技术未经过任何测试。

很明显,视网膜技术可能会给使用者带来健康的损坏,这需要进一步的研究。

对于消费者,视网膜技术没有吸引力。

很难进一步降低它的成本。

虹膜识别

原理

捕捉虹膜的数据图像

为虹膜的图像分析准备过程

从虹膜的纹理或类型创造512字节的iriscode.

使用iriscode模板用于确认。

在当今世界,虹膜识别仍被公认为是识别精度最高的生物识别系统。

生物测定学是一种技术,这种技术是将独特的人体特征(诸如面部特征、声音,指纹特征等)翻译成数字编码,这种编码可以识别、检验身份。

而虹膜识别技术通过人体独一无二眼睛虹膜的特征来识别身份,虹膜特征匹配的准确性甚至超过了DNA匹配。

这种技术在生物测定行业已经被广泛认为是目前精确度、稳定性、可升级性最高的身份识别系统

优点

1.便于用户使用;

2.可能会是最可靠的生物识别技术;

3.不需物理的接触;

4.可靠性高。

快捷方便:拥有本系统,不需要携带任何证件,就能实现门控,可单向亦可双向;既可以被授权控制一扇门,也可以控制开启多扇门;

授权灵活:本系统根据管理的需要,可任意调整用户权限,随时了解用户动态,包括客户身份、操作地点、功能及时间次序等,实现实时智能管理;

无法复制:本系统以虹膜信息为密码,不可复制;且每一次活动,都可自动记录,便于追溯、查询,非法情况则自动报警;

配置灵活多样:使用人和管理者可根据自身喜好、需要或场合的不同,设定不同的安装及运行方式。比如在大堂等公共场所,可以只采用输入密码的方式,但在重要场合,则禁止使用密码,只采用虹膜识别方式,当然也可以两种方式同时使用;

投入少、免维护:装配本系统可以保留原来的锁,但其机械运动件减少,且运动幅度小,门栓的寿命更长;系统免维护,并可随时扩充、升级,无须重新购置设备。长远来看,效益显著,并可使管理档次大大的提高。

应用行业广泛:广泛应用于煤矿、银行、监狱、门禁、社保、医疗等多种行业;

缺点

1.很难将图像获取设备的尺寸小型化;

2.设备造价高,无法大范围推广;

3.镜头可能产生图像畸变而使可靠性降低;

4.两大模块:硬件和软件;

5.一个自动虹膜识别系统包含硬件和软件两大模块:虹膜图像获取装置和虹膜识别算法。分别对应于图像获取和模式匹配这两个基本问题。

面部识别

原理

人脸识别技术中被广泛采用的区域特征分析算法,它融合了计算机图像处理技术与生物统计学原理于一体,利用计算机图像处理技术从视频中提取人像特征点,利用生物统计学的原理进行分析建立数学模型,即人脸特征模板。利用已建成的人脸特征模板与被测者的面像进行特征分析,根据分析的结果来给出一个相似值。通过这个值即可确定是否为同一人。

人脸识别技术优势

人脸识别作为一种新兴的生物特征识别技术(Biometrics),与虹膜识别、指纹扫描、掌形扫描等技术相比,人脸识别技术在应用方面具有独到的优势:

使用方便,用户接受度高人脸识别技术使用通用的摄像机作为识别信息获取装置,以非接触的方式在识别对象未察觉的情况下完成识别过程。

直观性突出人脸识别技术所使用的依据是人的面部图像,而人脸无疑是肉眼能够判别的最直观的信息源,方便人工确认、审计,“以貌取人”符合人的认知规律。

识别精确度高,速度快与其它生物识别技术相比,人脸识别技术的识别精度处于较高的水平,误识率、拒认率较低。

不易仿冒在安全性要求高的应用场合,人脸识别技术要求识别对象必须亲临识别现场,他人难以仿冒。人脸识别技术所独具的活性判别能力保证了他人无法以非活性的照片、木偶、蜡像来欺骗识别系统。这是指纹等生物特征识别技术所很难做到的。举例来说,用合法用户的断指即可仿冒合法用户的身份而使识别系统无从觉察。

使用通用性设备人脸识别技术所使用的设备为一般的PC、摄像机等常规设备,由于计算机、闭路电视监控系统等已经得到了广泛的应用,因此对于多数用户而言使用人脸识别技术无需添置大量专用设备,从而既保护了用户的原有投资又扩展了用户已有设备的功能,满足了用户安全防范的需求。

基础资料易于获得人脸识别技术所采用的依据是人脸照片或实时摄取的人脸图像,因而无疑是最容易获得的。

成本较低,易于推广使用由于人脸识别技术所使用的是常规通用设备,价格均在一般用户可接受的范围之内,与其它生物识别技术相比,人脸识别产品具有很高的性能价格比。

概括地说,人脸识别技术是一种高精度、易于使用、稳定性高、难仿冒、性价比高的生物特征识别技术,具有极其广阔的市场应用前景。

缺点

面部识别被认为是生物特征识别领域甚至人工智能领域最困难的研究课题之一。面部识别的困难主要是面部作为生物特征的特点所带来的。

相似性不同个体之间的区别不大,所有的面部的结构都相似,甚至面部器官的结构外形都很相似。这样的特点对于利用面部进行定位是有利的,但是对于利用面部区分人类个体是不利的。

易变性面部的外形很不稳定,人可以通过脸部的变化产生很多表情,而在不同观察角度,面部的视觉图像也相差很大,另外,面部识别还受光照条件(例如白天和夜晚,室内和室外等)、面部的很多遮盖物(例如口罩、墨镜、头发、胡须等)、年龄等多方面因素的影响。

在面部识别中,第一类的变化是应该放大而作为区分个体的标准的,而第二类的变化应该消除,因为它们可以代表同一个个体。通常称第一类变化为类间变化,而称第二类变化为类内变化。对于面部,类内变化往往大于类间变化,从而使在受类内变化干扰的情况下利用类间变化区分个体变得异常困难。

静脉识别

主要是利用静脉血管的结构来进行身份识别。由于静脉纹络包含大量的特征信息,可以作为验证的对象。

手掌静脉识别的原理也是利用静脉血管与肌肉、骨骸之间对特定波长红外光不同的吸收特性来进行静脉血管造影。

与手掌静脉识别的原理相同。由于手掌较厚,红外光通常无法进行透射,因而只能采用反射造影法。

红外光照射在手背上,有静脉的部位吸收红外光反射暗淡,肌肉与骨路部位反射强烈,从而实现对静脉的造影。

优点

1)属于内牛理特征,不会磨损,较难伪造,具有很高安全性。

2)血管特征通常更明显,容易辨识,抗干扰性好。

3)可实现非接触式测量,卫生性好,易于为用户接受。

4)不易受手表面伤痕或油污的影响。

缺点

1)手背静脉仍可能随着年龄和生理的变化而发生变化,永久性尚未得到证实

2)虽然可能性较小,但仍然存在无法成功注册登记的可能。

3)由于采集方式受自身特点的限制,产品难以小型化。

4)采集设备有特殊要求,设计相对复杂,制造成本高。返回搜狐,查看更多

语音识别技术的发展历程,语音识别是如何工作的语音识别资料概述

你一定不会怀疑自己电脑的麦克风正背着你偷偷摸摸做些什么,因为你已经很久没有用过它了。

但事实真的是这样吗?

难道谷歌真的在“监听”用户吗?

挨君想告诉你,这基本没可能。

谷歌浏览器的用户已经超过20亿了,要是监听每个用户每天说的话,这个数据量太过惊人。投入高昂的成本就为了实现广告精准投放,还冒着巨大的法律风险,这种事正常人是不会去做的。

对于视频中展现的“事实”,可能的操作是谷歌使用了一个语音关键词识别系统。

有商业价值的关键词总共就几百万个,为了简单,可以只做头部那些最赚钱的几十万个。这几十万个关键词也不需要先跑语音识别再跑文本匹配,拿原始的语音文件来搞一个中等深度的神经网络甚至线性特征模型就可以,速度也非常快。

所以大家不用担心语音识别正在侵犯你的隐私。相反,作为人类与机器最自然的交互形式(绝对不是打字),在未来,当你不想用手或者像残障人士难以用手的时候,语音识别将会是操作一切最方便的钥匙。

语音识别发展史

说到语音识别,大家熟悉的可能是最近十年里才出现的微信语音转文字,或者语音实时记录和翻译。但其实语音识别的历史比互联网还早,现代计算机诞生的那一刻,就已经埋下了语音识别的种子。

1946年,现代计算机诞生。它的诞生让人们意识到,原来计算机能完成这么多工作,而且做得比人还好;

(冯诺依曼和第一台现代计算机)

1950年,图灵在《思想》杂志发表了一篇题为《计算机器和智能》的论文,来探讨计算机是否可以具备智能;

在图灵思想的启发下,人们想着既然计算机这么能干,干嘛不把它设计得和人类一样能看能说能听呢,这不就能帮人类做更多事了嘛!(果然,懒才是科学发展的源动力啊)

于是,第一代语音识别系统诞生,被称为机器的听觉系统。

1952年,贝尔研究所研制了世界上第一个能识别10个英文数字发音的实验系统。也就是你说“yi”,计算机就知道这是“1”,能力跟婴儿差不多。

1960年,英国的Denes等人研制了第一个计算机语音识别系统。

但是因为识别量小,这些系统根本达不到实际应用的要求,包括后续的20年间,都是在走弯路,没有什么研究成果。

直到1970年,统计语言学的出现才使得语音识别重获新生。

统计语言学带来的重生

推动这个技术路线转变的关键人物是德里克·贾里尼克(FrederickJelinek)和他领导的IBM华生实验室(T.J.Watson)。

统计语言学带来的结果是,让IBM当时的语音识别率从70%提升到90%,同时语音识别的规模从几百单词上升到几万单词,这样语音识别就有了从实验室走向实际应用的可能。

人类的语言是非常复杂的。不同于音频识别,语音识别的难点在于把一段音频不仅转换成对应的字,还要是一段逻辑清晰、语音明确的语句。

举个例子,我们对计算机念一句话,“周五一起吃饭吧”。计算机根据音频做出的识别可能结果是这样的:州午衣起痴范爸。

如果仅看读音和文字的一一对应,这个准确度可以说是很高了,因为如果念的口齿稍有不清更糟糕的结果可能是“邹五意起次换吧”。

但是无论哪种结果,在实际应用上都是不可行的,完全没法交流嘛。

那么统计语言学带来的变革是什么呢?

我们知道,虽然人类的语言很复杂,但仍有一定规律可循,无论是“州午衣起痴范爸”,还是“邹五意起次换吧”都不是一个正常人会说的话。统计语言学的作用就是找出人类说话的规律,这样就可以大大减少了语言识别产生的误差。这其中一个非常关键的概念就是语素。

语素是语言中最小的音义结合体,一个语言单位必须同时满足三个条件——“最小、有音、有义”才能被称作语素。语素又可以分成三类:

单音节语素:构词由一个字才有意思的词组成

双音节语素:构词由两个字才有意思的词组成

多音节语素:构词由两个字以上才有意思的词组成

啥意思呢?举个例子。

你、我、他,这三个字都是单音节语素,因为每个字都能自成一个含义。

你可能要说了,那不是废话吗,还有什么字是没有含义的吗?

当然有!比如挨君最喜欢吃的“馄饨”。

馄饨就是一个双音节语素。单独的馄或者饨都不具备任何含义,只有组合在一起的时候才有真正的意义。类似的还有“琵琶”、“霹雳”等等。另外比如“沙发”这类词,一旦拆分开其含义就完全脱离原来语素的,也被称为双音节语素。

最后一种情况就是多音节语素,主要是专有名词还有拟声词,比如喜马拉雅,动次打次。

我们再看回刚才的例子,当机器知道语素之后,即便同音它也不会把“周五”识别成“州午”,因为后者没有任何意义,也不会把“吃饭”识别成“痴范”。

又有人要说了,现在很多网络用语把吃饭说成次饭,我也能看懂啊。

如果说“次饭”你能理解那当然普大喜奔啦,要是“邹五意起次换吧”你都能理解的话,那对于语音识别团队来说可真是天大的喜讯了。然而真实情况是,视人视场景不同,识别准确率永远是语音识别第一位的追求。

以上,根据语素等人类语言规律挑选同音字的工作,在语音识别中我们称为语言模型。

语言模型的好基友

语音识别中还有一个模型,就是声学模型。

声学模型和语言模型是语音识别里的一对好基友。声学模型负责挑选出与音频匹配的所有字,语言模型负责从所有同音字里挑出符合原句意思的字。

声学模型的原理说起来跟做牛肉火锅有点像。

我们拿到一段语音,首先要把它切成若干小段,这个过程叫做分帧。

跟片好的牛肉会被分成匙仁、吊龙、匙柄一样,片好的帧会根据声学特征被计算机算法识别为一个个【状态】,多个状态又可以组合成音素。

音素是语音中的最小的单位,比如哦(o),只有一个音素;我(wo)则有两个音素,w、o;吼(hou),则有三个音素,h、o、u。

有了音素就可以对应找到匹配的字。

所以你可以这么理解,【状态】就像生牛肉,还不是人类可以“食用”的模样,需要用计算机算法来“涮一涮”成为音素才能成为一个【字】。

PS:如果你对【状态】这个概念还不太理解,那也没关系,因为近几年出现了一个叫CTC的新技术,建模单元放大到了音节或音素的单位,直接跳过了【状态】这个概念,所以这个知识点以后都不会考了。

刚才提到语言模型为语音识别带来的重生,并不是说在此之前声学模型就已经非常成熟了,相反,语音识别重生不久(到20世纪90年代)再次转凉就是因为声学模型太弱,缺少足够的数据和算法。这一状况直到互联网的出现并且带来了极其丰富的大数据后,才稍微得以改善。

可以这么说,语音识别的童年,是灰暗坎坷的。

语音识别是如何工作的

说完语音识别的两个模型,现在我们可以大致梳理下语音识别的基本步骤,如下图:

你通过微信发送了一段语音,对方因为在开会无法听,于是使用了语音转文字的功能。语音识别系统先把这段语音分帧,然后提取每一帧的特征形成【状态】,几个状态(通常为3个)又会组合成一个音素,音素又构成了诸多同音字,接着语言模型从诸多同音字中挑选出可以使语义完整的字,最后一个个呈现在你面前。

虽然过程看着挺简单的,但事实上,受各种语音语调、方言、说话环境、说话方式等等的影响,语音识别要提高准确率非常非常非常…非常难。得亏现在有了大数据和深度学习,这两个模型才得到了好好的训练,包括现在很多语音识别厂商都表示已经可以实现97%的识别准确率。

这里插播一段广告,

网易人工智能对语音识别技术的研究开始于2014年,目前通过网易AI平台已服务于网易游戏、有道词典等产品。网易AI平台语音识别技术的优势有:领先的中英文语音识别转写技术,中文转写准确率可达97%以上;提供基于垂直行业语音模型进行深度优化训练,在游戏行业的语音识别准确性保持业界顶尖水平;提供标准规范的SDK和API接口,接入迅速,使用便捷。

说了这么多,语音识别算是人工智能领域比较成熟的技术,但对于人类的远大愿景而言,这才只是起步,就像小婴儿现在只能听,接下来还要会说、会做、会想。不过有了深度学习之后,这一切现在看来似乎有了触达的可能。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇

下一篇