语音识别

语音信号处理之语音特征提取(1)机器学习的语音处理

本小妞迷上赌 提交于 2020-08-14 13:16:00
本文首先是将 Speech Processing for Machine Learning: Filter banks, Mel-Frequency Cepstral Coefficients (MFCCs) and What's In-Between 这篇2016年4月21号的文章 翻译了一下,然后讲出一点自己的理解和注释。 机器学习的语音处理:滤波器组,梅尔频率倒谱系数(MFCC)以及两者之间的区别 语音处理在任何语音系统中都扮演着重要的角色,无论它是自动语音识别(ASR)还是说话者识别等等。 长期以来,梅尔频率倒谱系数(MFCC)是非常受欢迎的功能。 但是最近,滤波器组正变得越来越流行。 在这篇文章中,我将讨论滤波器组和MFCC,以及为什么滤波器组变得越来越流行。 计算滤波器组和MFCC涉及相同的过程,在这两种情况下,都将计算滤波器组,并通过一些额外的步骤可以获得MFCC。 简而言之,信号会通过预加重滤波器。 然后将其切成(重叠的)帧,并将窗口函数应用于每个帧; 之后,我们在每个帧上进行傅立叶变换(或更具体地说是短时傅立叶变换),并计算功率谱; 然后计算滤波器组。 为了获得MFCC,可将离散余弦变换(DCT)应用于滤波器组,以保留多个所得系数,而其余系数则被丢弃。 两种情况的最后一步是平均归一化。 建立 在本文中,我从此处使用了一个16位PCM wav文件,称为“ OSR

AAAI 2020: 时序转化为图用于可解释可推理的异常检测

☆樱花仙子☆ 提交于 2020-08-14 10:26:09
Time2Graph: Revisting Time Series Modeling with Dynamic Shapelets 原文地址 整体导读 文章提出了带有时间意识的Shapelet,除了可以挖掘时序中的异常状态之外,可以自动感知异常状态所在时间位置上的敏感度; 文章尝试捕捉不同Shapelet之间的关系,提出了通过图结构(Graph)对这种关系进行表达的方法,在挖掘异常变化轨迹的同时也具备良好的可解释性。文章发表在人工智能领域顶级会议 AAAI 2020 上 时序建模中的挑战 时间序列建模旨在发现数据中的时空依赖关系,学术界对此有广泛研究,例如异常检测[2],语音识别[3]等。 这里的关键问题是如何提取时间序列中代表性的特征 。以前的工作很大一部分从经典的特征工程和表示学习入手,这些方法具有很好的可解释性,但主要依靠人的经验,在复杂的场景下很难做到通用化。近年来随着深度学习的发展,许多工作开始尝试一些复杂的模型方法来自动的挖掘特征。然而,尽管这些方法取得了良好的效果[4,5],但由于模型的复杂度高以及难以对结果很好的解释,许多方法不能很好地满足实际工业落地的需求。 基于以上背景为出发,该文尝试通过Shapelet[6], 一种可自动挖掘具有代表特征的时序子序列的方法出发,通过分析不同Shapelet之间的关系,构建Graph进行表示

早教机器人AI化,人机联动成新风口

橙三吉。 提交于 2020-08-14 09:34:37
配图来自Canva 在繁忙、快节奏的一天工作后,你拖着疲惫不堪的身体回到家里,在面对孩子要求你给他讲故事时,已经没有多余的精力了,但幼儿期又是孩子智力发展的关键时期,故事、诗词等语言交流对孩子智力开发大有裨益。这时候能有一个替代你给孩子讲故事的角色,就显得尤为重要。很长时间以来,早教机就扮演了这样的角色。 早教机由来已久。早在2010年,火火兔率先推出早教故事机,这款早教故事机具备讲故事、诗词朗诵等一些简单的功能。而在AI技术赋能后,如今的早教机,已经变成了具有智能语音交互功能的早教机器人。 目前,市场中的早教机器人,已经具备讲故事、唱歌、诗词朗诵、口语阅读等多种功能,其功能比早前的早教机要强大很多。例如智伴的1S教育机器人,具有着丰富的儿童故事音频内容,能为孩子幼儿期的智力开发提供帮助。 随着婴幼儿教育越来越受重视,早教机器人也越发受到市场青睐。而早在2012年,早教机器人市场的增长率就超过了30%;但在2017年后,市场增长开始放缓。这样的情况下,早教机器人企业为提升其产品的竞争力,便开始在自己的优势领域深挖,从而在内容、生态等方面构建自己的竞争壁垒。 增长趋缓,早教机器人市场开启精细化运营 2010年,火火兔首先在市场推出早教故事机,凭借新颖的讲故事功能受到市场的广泛好评,当年销量就突破了30万;2015年,火火兔系列故事机销量更是超过了150万台,相当于2010年的5倍

基于Speech SDK开发中英文混合朗读程序

我与影子孤独终老i 提交于 2020-08-14 04:14:21
摘 要 中英文混合朗读一直是个难点,本文在分析Microsoft Speech SDK中英文引擎的基础上,提出了根据文本类型实时切换中英文引擎的方法,在Visual C++6.0中实现了一个示例程序。 关键词  Speech SDK;中英文混合朗读;Visual C++ 1 Speech SDK简介 语音识别(SR)和语音合成(TTS)一直是计算机应用的热点,如果你想在Windows平台上开发具有语音识别和语音合成功能的应用程序,使用Microsoft Speech SDK是较好的选择。现在许多应用程序的语音识别和语音合成部分,例如金山词霸,就是在此基础上开发的。 Microsoft Speech SDK是微软公司推出的支持语音应用程序开发的工具包,其最新版本是5.1,可以在微软的网站免费下载,如果要支持中文,还要下载相应的Language Pack。下载后先安装Speech SDK,再安装简体中文语言包,这样你的计算机就具有中英文语音能力了。 下面介绍在Visual C++6.0中如何利用Speech SDK开发中英文全文朗读的程序。 2 SpVoice类介绍 SpVoice类是支持语音合成(TTS)的核心类。通过SpVoice对象调用TTS引擎,从而实现朗读功能。 SpVoice类有以下主要属性: Voice:表示发音类型,相当于进行朗读的人,包括Microsoft Mary

赠书 | 全球稀缺的Kaldi学习资料,《Kaldi语音识别实战》给补上了

你说的曾经没有我的故事 提交于 2020-08-13 20:59:04
刚刚过去的十年是语音技术发展的黄金十年。Kaldi的出现,被业内公认为极大地降低了语音识别技术学习与使用的门槛,成为广受欢迎的工具。 Kaldi 项目发布不久,就吸引了国内外的大量用户,形成了一个活跃的开源社区。在社区中,有国际顶尖的语音科学家、探索新边界的博士研究生,也有初探语音识别的初学者、其他技术领域想使用语音技术的工程师,当然还有经历了HTK时代的老用户们。 尽管 Kaldi 工具箱的出现在很大程度上降低了语音识别技术的研究门槛,但与其他AI技术相比,它的语音识别技术本身链路复杂、模块多样、领域知识点众多;此外,目前 Kaldi 社区的活跃开发者们更关注推进核心技术,因此在文档建设方面,还停留在项目早期的设计理念及核心概念阶段,文档稀缺;再加上市场上少有 Kaldi 相关的教程和书籍,尤其是中文书籍,更使得国内用户在入门语音识别技术及上手 Kaldi 工具箱时,面临比较陡峭的学习曲线。 因此《Kaldi语音识别实战》一书应运而生。本书由Kaldi的知名贡献者和社区技术骨干撰写,结合实际场景,系统全面地阐述了Kaldi的基础理论和应用知识,非常适合入门,是珍贵的学习资料。 陈果果、都家宇、那兴宇、张俊博 著 本书特色: 1 以Kaldi脚本实例为线索,结合大量示例,降低学习门槛 2 详述各类实践技巧,举一反三 3 实际场景问题分析与解决方案 4兼述语音技术其他关键应用

语音识别服务分离计算内核

蹲街弑〆低调 提交于 2020-08-13 18:58:54
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 背景 最近研究的同事对识别内核做了一些优化,将原先集成在casrserver的内核计算逻辑单独抽离出来做成了服务并且测试后性能有提升,需要casrserver服务配合做一些改造,我之前也有过类似的想法,这次正好识别工程团队没有人力支持,加上我之前维护过casrserver, 于是就去协助casrserver改造了。在修改之前先介绍一下当前的架构 当前架构 如上图,当前casrserver中既处理了网络连接,又完成了识别的计算任务,图中是一次语音请求的核心交互逻辑, 一条客户端连接过来,网络进程里会对应三个协程: recv协程负责接收客户端发上来的数据 rpc协程负责将recv的数据发送给计算进程,然后接收计算进程返回的识别结果 send协程将识别结果再回给客户端 为了做到异步三个协程之间用了两个队列进行通信, 关于这套架构更详细的介绍,见顺哥在2016年openresty大会做的 ppt分享。之前的架构介绍到这里,让我们再来看看新版修改后的架构。 改动后的架构 如图,原先在openresty中worker进程fork出来的计算进程已经抽离出来成为独立的服务,casrserver和asr kernel server通过cosocket进行通信。 实现 针对上述架构

Serverless 工作流给人工智能带来了哪些变化?

痴心易碎 提交于 2020-08-13 12:38:03
4月,阿里云 Serverless 工作流正式商业化,这是一款用于协调多个分布式任务执行的全托管 Serverless 云服务。产品致力于简化开发和运行业务流程所需要的任务协调、状态管理以及错误处理等繁琐工作,让用户聚焦业务逻辑开发。 精准打造云上自动生产线,Serverless 工作流正式商用 工作流是一种非常常见的场景,比如企业内部审批、采购订单、ETL等日常企业事务,或者大数据处理流水线,常规或定制化自动化运维等。此外,音视频行业的多媒体文件分片转码、格式转换、审核校验和人脸识别等长时任务,电商旅游行业的客户线上订单,AI 行业的机器学习流水线, 生信行业的基因测序也会有工作流。 这些场景面临着以下难点:一般由众多异步分布式任务组成,控制逻辑和任务逻辑交织在一起,流程复杂冗长;分布式任务可能跨越公共云和本地机房,安全的打通网络代价很大;整个工作流执行完毕耗时过长,造成资源占用的浪费;涉及异步且关键业务流程,务必保证数据一致性;繁复的执行步骤如何进行可视化监控等等。 Serverless工作流正式针对这些痛点,分离控制逻辑与任务逻辑,细化责任,便于管理和维护;将流程以模版方式统一定义控制,简化编排,通过串联或并行等多种方式编排任务;支持函数,队列,云服务等多种任务类型,打通公共云和企业内网;支持最长1年的执行任务,但却采用Serverless计费模型, 按需付费

人工智能、机器学习和深度学习之间的差异

霸气de小男生 提交于 2020-08-13 08:42:01
随着人工智能的巨大进步 – 从无人驾驶汽车领域的进步,到掌握扑克和围棋等游戏,以及自动化客户服务交互 – 这项先进技术将为企业带来革命性的变化。但是,AI,机器学习和深度学习这两个术语经常被随意使用,并且可以互换使用,因为每种技术之间存在重大差异。以下是这三种工具之间差异的指南,可帮助您掌握机器智能。 人工智能(AI) 人工智能是思考先进计算机智能的最广泛途径。1956年在达特茅斯人工智能会议上,该技术被描述为:“学习的每一个方面或智能的任何其他特征原则上都可以被精确地描述,以便机器可以被模拟。” 人工智能可以指任何从玩象棋游戏的计算机程序到亚马逊Alexa解释和响应语音的语音识别系统。该技术大致可以分为三类:狭义人工智能,人工智能(AGI)和超智能人工智能。 IBM的Deep Blue在1996年的比赛中击败国际象棋大师Garry Kasparov,或者在2016年击败了Lee Sedol的Google DeepMind的AlphaGo,它们都是狭义AI-AI的例子,它们擅长于一项特定任务。这与人工智能(AGI)不同,后者是人工智能,可以执行一系列任务。 超级智能AI让事情更进一步。正如尼克·博斯特罗姆所描述的那样,这是“在几乎所有领域都比人类最优秀的智慧更聪明的智慧,包括科学创造力,一般智慧和社交技巧。” 换句话说,就是机器超过了我们。 机器学习(ML)

AI 思维是时代机遇

微笑、不失礼 提交于 2020-08-12 15:24:24
人工智能的概念自 1956 年的达特茅斯会议诞生至今,曾经受到万众瞩目,也曾陷入低谷,黯淡无光。 2016 年人工智能机器人AlphaGo 战胜韩国九段围棋国手李世石之后,人工智能强势进入大众视野。 万物皆可人工智能的时代已经到来,但是,你真的了解人工智能吗?你知道人工智能是如何与商业碰撞迸发出火花的吗?你知道人工智能如何从数据中产生价值的吗? 理解事物,就要抓住其核心理念。 大赚 1 000 亿美元的秘密 如果你读过《从 0 到 1》这本书,应该对 PayPal 这个公司有所了解——硅谷创投教父、PayPal 创始人彼得· 蒂尔便是这本书的作者。另外,PayPal 黑帮(PayPal Mafia)的说法也由来已久。2002 年的时候,eBay(亿贝)以 15 亿美元的价格收购了PayPal,当时 PayPal 公司的许多重要员工纷纷选择创业,自立门户。PayPal 也因此成为硅谷史上创业者群体最多的一家公司,这些人被称为 PayPal 黑帮。 PayPal 是美国一家提供在线支付服务的公司。马云当年受PayPal 的启发,创立了支付宝。PayPal 近几年市值的增幅非常显著,远高于同期纽交所和纳斯达克的增幅。PayPal 公司 2015 年的市值接近 400 亿美元,到 2019 年上半年市值增加至 3 倍多,已经快 1 300 亿美元了——这个体量的市值

视频关键字、关键帧过滤系统

我与影子孤独终老i 提交于 2020-08-11 23:39:25
视频关键字、关键帧过滤系统 综述 工程实现 流媒体服务模块 Flask框架 过滤器(Vdfilter) 看门狗 视频切片CutVideo.py 视频抓流FetchStream.py 语音识别+人脸检测+过滤主函数AutoFilter 推流模块Stream.py 算法篇 心得体会 写在最后 综述 本系统可以根据用户提供的关键字和人脸图像,实时过滤选定文件中的内容,并提取出包含关键字和人脸图像的视频片段。源码可从 此处获得 工程实现 流媒体服务模块 使用multiprocessing.Process创建一个进程,让该进程管理流媒体服务,和主进程并行。 vdsource = multiprocessing.Process(target=node_start) 使用subprocess创建子进程,后台模式启动流媒体服务。使用阻塞模式,将该进程的输出重定向到当前进程,实时打印流媒体服务的状态。 subprocess.check_output(command, stdin=open(os.devnull), shell=use_shell) 流媒体服务基于Nodejs实现,可以通过Rtmp、Http的方式向该服务推流,客户端通过指定的播放地址来向该服务拉取视频流,实现流媒体播放。 Flask框架 使用Flask框架来进行前后端通信,前端界面通过Get和Post方式向后台发送请求,以获得相应数据