热门回答:
简要给大家介绍一下传统算法语音怎么变文字的吧。需要说明的是。这篇文章为了易读性而牺牲了严谨性。因此文中的很多表述实际上是不准确的。对于有兴趣深入了解的同学。本文的末尾推荐了几份进阶阅读材料。下面我们开始。
首先。我们知道声音实际上是一种波。常见的mp3等格式都是压缩格式。必须转成非压缩的纯波形文件来处理。比如Windows PCM文件。也就是俗称的wav文件。wav文件里存储的除了一个文件头以外。就是声音波形的一个个点了。下图是一个波形的示例。
要对声音进行分析。需要对声音分帧。也就是把声音切开成一小段一小段。每小段称为一帧。分帧操作一般不是简单的切开。而是使用移动窗函数来实现。这里不详述。帧与帧之间一般是有交叠的。就像下图这样:
分帧后。语音就变成了很多小段。但波形在时域上几乎没有描述能力。因此必须将波形作变换。常见的一种变换方法是提取MFCC特征。根据人耳的生理特性。把每一帧波形变成一个多维向量。可以简单地理解为这个向量包含了这帧语音的内容信息。这个过程叫做声学特征提取。实际应用中。这一步有很多细节。声学特征也不止有MFCC这一种。具体这里不讲。
音素:单词的发音由音素构成。对英语。一种常用的音素集是卡内基梅隆大学的一套由39个音素构成的音素集。参见The CMU Pronouncing Dictionary。汉语一般直接用全部声母和韵母作为音素集。另外汉语识别还分有调无调。不详述。
状态:这里理解成比音素更细致的语音单位就行啦。通常把一个音素划分成3个状态。
语音识别是怎么工作的呢?实际上一点都不神秘。无非是:把帧识别成状态(难点)。把状态组合成音素。把音素组合成单词。
如下图所示:
那每帧音素对应哪个状态呢?有个容易想到的办法。看某帧对应哪个状态的概率最大。那这帧就属于哪个状态。比如下面的示意图。这帧在状态S3上的条件概率最大。因此就猜这帧属于状态S3。
那这些用到的概率从哪里读取呢?有个叫“声学模型”的东西。里面存了一大堆参数。通过这些参数。就可以知道帧和状态对应的概率。获取这一大堆参数的方法叫做“训练”。需要使用巨大数量的语音数据。训练的方法比较繁琐。这里不讲。
但这样做有一个问题:每一帧都会得到一个状态号。最后整个语音就会得到一堆乱七八糟的状态号。假设语音有1000帧。每帧对应1个状态。每3个状态组合成一个音素。那么大概会组合成300个音素。但这段语音其实根本没有这么多音素。如果真这么做。得到的状态号可能根本无法组合成音素。实际上。相邻帧的状态应该大多数都是相同的才合理。因为每帧很短。
解决这个问题的常用方法就是使用隐马尔可夫模型(Hidden Markov Model。HMM)。这东西听起来好像很高深的样子。实际上用起来很简单:第一步。构建一个状态网络。第二步。从状态网络中寻找与声音最匹配的路径。
这样就把结果限制在预先设定的网络中。避免了刚才说到的问题。当然也带来一个局限。比如你设定的网络里只包含了“今天晴天”和“今天下雨”两个句子的状态路径。那么不管说些什么。识别出的结果必然是这两个句子中的一句。
那如果想识别任意文本呢?把这个网络搭得足够大。包含任意文本的路径就可以了。但这个网络越大。想要达到比较好的识别准确率就越难。所以要根据实际任务的需求。合理选择网络大小和结构。
搭建状态网络。是由单词级网络展开成音素网络。再展开成状态网络。语音识别过程其实就是在状态网络中搜索一条最佳路径。语音对应这条路径的概率最大。这称之为“解码”。路径搜索的算法是一种动态规划剪枝的算法。称之为Viterbi算法。用于寻找全局最优路径。
观察概率:每帧和每个状态对应的概率
转移概率:每个状态转移到自身或转移到下个状态的概率
语言概率:根据语言统计规律得到的概率
其中。前两种概率从声学模型中获取。最后一种概率从语言模型中获取。语言模型是使用大量的文本训练出来的。可以利用某门语言本身的统计规律来帮助提升识别正确率。语言模型很重要。如果不使用语言模型。当状态网络较大时。识别出的结果基本是一团乱麻。
这样基本上语音识别过程就完成了。
以上的文字只是想让大家容易理解。并不追求严谨。事实上。HMM的内涵绝不是上面所说的“无非是个状态网络”。如果希望深入了解。下面给出了几篇阅读材料:
1. Rabiner L R. A tutorial on hidden Markov models and selected applications in speech recognition. Proceedings of the IEEE, 1989, 77(2): 257-286.入门必读。深入浅出地介绍了基于HMM的语音识别的原理。不注重公式的细节推导而是着重阐述公式背后的物理意义。
2. Bilmes J A. A gentle tutorial of the EM algorithm and its application to parameter estimation for Gaussian mixture and hidden Markov models. International Computer Science Institute, 1998, 4(510): 126.详细介绍了用E-M算法训练HMM参数的推导过程。首先讲E-M的基本原理。然后讲解如何应用到GMM的训练。最后讲解如何应用到HMM的训练。
3. Young S, Evermann G, Gales M, et al. The HTK book (v3.4). Cambridge University, 2006.HTK Book。开源工具包HTK的文档。虽然现在HTK已经不是最流行的了。但仍然强烈推荐按照书里的第二章流程做一遍。你可以搭建出一个简单的数字串识别系统。
4. Graves A. Supervised Sequence Labelling with Recurrent Neural Networks. Springer Berlin Heidelberg, 2012: 15-35.基于神经网络的语音识别的入门必读。从神经网络的基本结构、BP算法等介绍到 LSTM、CTC。
5. 俞栋, 邓力. 解析深度学习——语音识别实践, 电子工业出版社, 2016.高质量的中文资料非常稀有。推荐买一本。最早把深度学习技术应用于语音识别就是这本书的作者。
其他观点:
讯飞输入法
其他观点:
将语音转换成文字。除了手动打字之外。还可以借助第三方工具。快速实现文本转换。给大家推荐我一直在用的知意字稿这款工具。无需打字输入。一键自动将语音转换成文字。话不多说。直接上干货。
知意字稿是一款AI智能语音转文字工具。能最大程度地帮助用户减轻工文本输入压力。只要将文件上传到工作框。自动转写成文本。非常简单、方便。
在线链接:https://peiyin.wozhiyi.com/asr/index.html
软件支持多端同步登录。上线了网页、小程序、桌面等不同端口。直接在应用市场搜索【知意字稿】。立即进入到工作页面。这里有转文本和转字幕两大功能。进入到中间的工作框。用户可以自定义选择flac、wav、m4a、avi、mp4等多种音/视频格式。输出文件可以选择txt、doc、srt等不同格式。满足用户不同格式的使用需求。
网页端单次上传视频最大支持1GB、音频100M文件。更大文件需要下载桌面端或者使用谷歌浏览器。除了从本地上传文件之外。软件还支持粘贴短视频链接功能。将抖音、快手短视频平台的链接粘贴到工作框。点击【获取视频】。自动将链接中的视频提交到云端自动处理。
这款软件最让我喜欢的就是支持多格式转写功能。将多个音/视频文件上传到工作框。批量实现文本转换吗。大大提高了转写效率。对撰写文本有高要求的小伙伴。还可以在线生成文本、字体加粗、添加颜色、翻译等等。让你的文本转写变得更加简单、高效。
当然。知意字稿还是一款优秀的转文本工具。除了语音转文字之外。还上线了图片文字提取、简繁转换、大小转换等等。该有的功能一样都不少。
以上就是今天给大家分享的将语音转换成文字的工具。如果你也有转文本需求。不妨亲自来体验一下噢!
您还感兴趣的文章推荐
- 在北京月入14k,这种情况下要不要离职呢?
- 27岁:考研还是考公?该如何做出选择?
- 如何平衡自己的时间与陪伴孩子的时间?有哪些实用方法?
- 大专女生学前教育毕业一年多,有两家园工作经验想转行该咋办?
- 普通人怎样做才能挣到钱?有哪些途径和方法?
以上就是由互联网推广工程师 网创网 整理编辑的,如果觉得有帮助欢迎收藏转发~
本文地址:https://www.wangchuang8.com/109245.html,转载请说明来源于:网创推广网
声明:本站部分文章来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系进行处理。分享目的仅供大家学习与参考,不代表本站立场。
评论(2)
音素,状态,概率,语音,网络,文本,波形,组合,路径,文字
没想到大家都对打字太麻烦,怎么用语音转换成文字?感兴趣,不过这这篇解答确实也是太好了
简要给大家介绍一下传统算法语音怎么变文字的吧。需要说明的是。这篇文章为了易读性而牺牲了严谨性。因此文中的很多表述实际上是