Skip to content

Latest commit

 

History

History
executable file
·
526 lines (323 loc) · 21 KB

2017-12-10-语音方案预研.md

File metadata and controls

executable file
·
526 lines (323 loc) · 21 KB
title date tags
语音方案预研
2017-12-10 05:12:25 -0800
语音
讯飞
百度
alexa

背景

为满足项目场景需求,主要应用到的语音技术有:

  1. 语音识别(ASR)
  2. 语音合成( TTS)
  3. 语义理解
  4. 语音唤醒
  5. 声纹识别

由于官方对外公布的识别准确度都是在95%以上,效果都相差不大,精确度和语义相关性量化成本太高,所以分别从以下几个维度来参考:

  1. 是否支持自定义关键词
  2. 以上是否支持离线
  3. 集成以及更换难易程度
  4. 合作方式以及价格
  5. 海外是否有录音隐私数据的问题
  6. 性能方面是否有相应的数据支持

注:语音涉及收集用户录音数据,跟国内情景不同,在海外需要对应的许可证,目前只有部分大厂以及专业的语音服务提供商才有,如果直接使用国内的语音方案,在海外可能有相关风险。

语音技术

语音识别

语音识别,也被称为:

  • 自动语音识别(Automatic Speech Recognition, ASR)
  • 电脑语音识别(Computer Speech Recognition,CSR)
  • 语音转文本识别(Speech To Text, STT)

其目标是以电脑自动将人类的语音内容转换为相应的文字(语音转文字),有2种传输方式:

  • 流式传输,实时返回文字结果。
  • 完整音频传输,整个音频文件传输,识别后再返回结果。

目前需要考虑的场景有:

  1. 远场/近场
  2. 按键/非按键

对应的模型:搜索/输入法/远场。

参考:

  1. 维基百科-语音识别
  2. 语音识别的技术原理是什么?

语音唤醒

语音唤醒,原理与语音识别类似,都是通过将录入的语音转文字,然后匹配对应的唤醒词。但也有细微区别:

  1. 唤醒有专门设定的唤醒词,速度更快,更精准,稳定
  2. 唤醒不用实时处于工作状态,从而节省能耗

参考:

1.语音唤醒技术:small-footprint keyword spotting

语义理解

语义理解,或称自然语言处理与对话技术(Natural Language)。包含:

  • 文本语义
  • 语音语义

主要是利用语音识别,把自然语言内容,转换为有一定结构的文本数据,结合大数据和深度学习,使应用能够抓取其中的重点数据,理解用户的使用意图,进行下一步的处理。需要考虑的需求:

  1. 后台意图、场景的配置,使用难易程度

  2. 是否支持闲聊,自定义对话等

  3. 后台资源库切换等

语音合成

语音合成,与语音识别相反,主要是把文字转语音,目前常用的语音合成方法:

  • 参数化合成(Parameric TTS):利用数学模型对已知的声音进行排列、组装成词语或句子来重新创造声音数据。当前市面上大部分机器人的发音主要就是采用的这种方法,不过声音听起来总是不自然,就像机器发出的声音。
  • 拼接式语音合成(Concatenative TTS):需要先录制单一说话者的大量语音片段,建立一个大型语料库,然后简单地从中进行选择并合成完整的大段音频、词语和句子。我们有时会听到机器模仿某些明星的声音,其背后技术就是这种方法。但是这种方法要求语料库非常大,而且处理不好就经常产生语音毛刺和语调的诡异变化,并且无法调整语音的抑扬顿挫。特殊音色定制一般也是此方式。

声纹识别

声纹识别(Voiceprint Recognize),是一项提取说话人声音特征和说话内容信息,自动核验说话人身份的技术。有2种类型:

  • 数字
  • 文本

使用较多的还是纯数字,如微信的语音登录。

语音方案

接下来主要从以下几个方面调研语音方案:

  1. 有哪些主流语音方案服务商
  2. 提供哪些语音技术服务
  3. 如何集成
  4. 价格以及合作方式
  5. 其他注意问题

Alexa

Alexa是亚马逊提供的运行在云端的语音服务。主要包含:

  • ASK (Alexa Skills Kit)

Alexa Skills Kit是一系列API, 工具,文档和示例代码的集合。开发者可以快速的使用ASK开发集成了Alexa能力的服务,并将这些服务提交到亚马逊Alexa商店(Alexa Store)供Echo用户使用。这些集成了Alexa的第三方服务被称作 Alexa 的 Skills, 开始使用ASK

  • Smart Home Skill

Smart Home Skill API是对ASK的一个补充,它包含了一系列内置的智能家庭功能API。这些功能包括控制灯、开关和其他智能家居设备, 更多详细信息

  • AVS (Alexa Voice Service)

Alexa在线语音服务,可以很方便的通过语音控制设备。为开发者提供了一套资源,可以快速、轻松地构建支持alexa的产品,包括api、硬件开发工具包、软件开发工具包和文档。同时也可以使用第三方Alexa服务(ASK)。热门产品如亚马逊Echo,更多详细信息

  • AVS Device SDK

基于C++跨平台的、模块化的SDK,用于与AVS交互。例如语音捕获、音频处理和通信,它还包括一个示例应用程序,它演示了与它的交互作用,地址:https://github.com/alexa/avs-device-sdk。

AVS Device SDK

  • Alexa基金

亚马逊设立的1亿美元Alexa基金以支持语音技术创新,更多详细信息

开发者: https://developer.amazon.com/alexa

支持页面:https://developer.amazon.com/public/support

论坛 :https://forums.developer.amazon.com/spaces/165/alexa.html

手把手教你如何用Lambda + Alexa调用echo设备

demo

  • 官方 demo:包含各个平台的运行 demo 以及文档,其中 android 部分只是一个辅助登录验证的demo。
  • 第三方 demo:封装 AVS 语义识别的 app,其中 TTS 用的是android.speech.tts.TextToSpeech。
  • AVS Device SDK:以C++基于AVS封装的跨平台的、模块化的SDK。

语音服务

  1. 在线语音识别
  2. 在线语音合成
  3. 自然语言(NLU)
  4. 语音唤醒,使用Sensory TrulyHandsfree WakeWord EngineKitt-AI
  5. Alexa for Business

集成

目前支持的平台有:

上述平台有详细的集成文档,Android 平台集成比较复杂,需要基于 AVS Device SDK 重新封装一层,详细参考:AVS Device SDK

测试页面https://echosim.io/

小结

  1. 目前仅支持英文。
  2. 且只提供美国、英国、德国地区在线语音识别,不支持离线。
  3. alexa本身无语音唤醒,demo 中推荐使用sensory alexa-rpi 或者Kitt-AI
  4. 集成方面比较复杂,需要再封装。
  5. 收集用户录音数据的隐私问题,需要用户登录亚马逊账号登录授权许可才行。
  6. 返回数据暂未找到语音识别的文本结果,但是在后台可以看到识别文本
  7. 价格:免费
  8. 与 alexa 认证合作:https://developer.amazon.com/alexa/smart-home/launch/works-with-amazon-alexa

lex

Amazon Lex 是一种使用语音和文本在任何应用程序中构建对话界面的服务。Amazon Lex 提供高级的自动语音识别 (ASR) 深度学习功能,可以将语音转换为文本,还提供自然语言理解 (NLU) 功能,可以识别文本的意图,让您能够构建用户体验极具吸引力且会话交互逼真的应用程序。详细参考:https://aws.amazon.com/cn/lex/?nc2=h_a1

demo&SDK

https://aws.amazon.com/cn/tools/#sdk

语音服务

  1. 语音识别(ASR)
  2. 自然语言理解 (NLU)

集成

img-lex1 img-lex2 img-lex3 img-lex4

小结

  1. 定价 img-lex-price

    假设每个用户100条语音限制,总计$0.4/天

  2. 未提供唤醒服务

Google Cloud Speech API

Google Cloud Speech API 通过强大的神经网络模型让开发者可以通过一个 API 来将语音转换为文字,能识别超过 80 种语言。详细参考:https://cloud.google.com/speech/

demo

demo 请参考android-docs-samples,包含:

  • Speech(在线语音识别)
  • Natural Language(google自然语言 API)

语音服务

  1. 在线语音识别
  2. 自然语言语义

集成

集成文档详细,比较方便,详细参考:

1.demo

2.speech

小结

  1. 价格:$0.006/15s,1台设备每天平均1小时语音识别使用费用=60x4x0.006=1.44。 注:此价格适用于个人系统(例如手机、平板电脑、笔记本、台式机)上的应用。要在嵌入式设备(如汽车、电视机、家电或音响设备)上使用 Speech API,请与我们联系以获取批准和价格。
  2. 集成方便
  3. 支持多种语言
  4. 仅支持在线
  5. 暂未找到相关语音唤醒以及合成服务

延伸阅读:

1.谷歌全端到端语音合成系统Tacotron:直接从字符合成语音

Google Assistant SDK

google assistant sdk 是 google 开放的语音助手服务,包含:

  • Google Assistant Library python 库,可在树莓派上运行。
  • Google Assistant Service 其他平台库,支持 android 2.3+

详细查看:https://developers.google.com/assistant/sdk/overview

API

https://github.com/googleapis/googleapis

语音服务

  1. 热词检测(命令词)
  2. 语音识别(ASR)
  3. 自然语言(NLP)
  4. Device Actions(Assistant 扩展 API) img-google-assistant

集成

稍复杂,需要熟悉一套GRPC 协议。详细步骤参考: https://developers.google.com/assistant/sdk/guides/service/integrate

小结

  1. 价格,每日有免费限额:

    img-assistant

    联系方式:https://docs.google.com/forms/d/e/1FAIpQLScBi7ESV6vN50qSD2KFuvjZHtwcWl2CuwP6nw-cmtgGmWXSXw/viewform

  2. 商业产品需要授权, 联系方式

  3. 和 alexa 一样不支持唤醒词,需自己额外集成,Kitt-AI

Azure

微软开放的必应语音 API,主要成熟产品有:Cortana,小冰等,详细请查看官网

还支持声纹识别以及实时语音翻译

demo

语音服务

  1. 在线语音识别
  2. 语音合成
  3. 语义理解
  4. 声纹识别
  5. 人脸 API

集成

集成文档详细,比较方便,支持REST APIsClient libraries,详细参考:

  1. 上述demo
  2. 官方文档

小结

  1. 价格按 api 请求次数计算,参考这里
  2. 集成简单
  3. 支持多种语言
  4. 仅支持在线
  5. 暂未找到相关语音唤醒服务

Nuance

Nuance 老牌专业语音服务方案提供商,超过三分之二的财富100强企业使用 Nuance 解决方案,曾经被冠为全球最大的语音技术公司。主要提供:

  • Dragon NaturallySpeaking for developers(Naturally Speaking 电脑语音识别方案)
  • Top Imaging OCR Toolkit for Windows, Linux and Mac(图片文字识别方案)
  • Nuance Mobile Solutions for Developers(移动语音解决方案)
  • Nuance Healthcare Solutions for Developers(健康医疗语音解决方案)

官网:https://www.nuance.com/

开发者:https://developer.nuance.com/

demo

官方 demo,请看这里

语音服务

  1. 语音识别
  2. 语音合成
  3. 语音唤醒(demo 无语音唤醒,需另外联系
  4. 自然语言
  5. 声纹识别(demo 无声纹识别)

集成

集成文档详细,比较方便,请参考:

  1. demo
  2. Documentation and SDKs

小结

  1. 价格:
    • 在线ASR 3USD/年/台, 语音合成 3 USD/年/台
    • NRE 1W美金起,增加一种语种开通费3000USD
    • 离线TTS 一次性 3USD/台
    • 硬件 降噪模组 5K以下 45 含税
  2. 集成简单
  3. 多语种支持
  4. 暂未找到离线相关资源

sensory

sensory是一家专业从事语音、视觉和自然语言处理等嵌入式机器学习技术的软件公司。开创了嵌入语音识别的神经网络方法,被ATT、Hasbro、华为、谷歌、JVC、肯伍德、LG、美泰、摩托罗拉、plan电子学、三星、索尼、世嘉、Uniden和v-tech在内的数百家领先的消费电子产品制造商中使用。有超过35项专利,涵盖了消费者电子产品的语音识别、生物识别认证、传感器/语音组合、唤醒词技术、DSP的语音识别、语音识别技术等,详细介绍请查看官网

demo

  1. 结合 alexa 唤醒 demo

语音服务

  1. 语音识别(Voice)
  2. 自然语言(Natural Language)
  3. 语音唤醒
  4. 语音合成
  5. 生物识别(Biometrics)

集成

官网只有介绍,无直接下载地址。

小结

  1. 语音技术服务很全,集成以及价格未知,官网未找到相关集成文档,需要联系 sensory 进一步了解,联系方式以及表单

  2. 支持中文、英文。

sapientx

sapientx 提供,www.sapientx.com

  1. 对话:文本+语音(整段)
  2. 合成
  3. 天气

暂时不知价格如何,目前测试需要申请 key,在申请中...

百度语音

百度语音是百度 AI 开发平台为开发者提供近场、远场、长语音等多场景高精度语音识别服务,详细参考官网

成熟产品集成的有:百度输入法、手机百度等。

demo

demo 请查看SDK资源

注:SDK与RESTful API区别在于,前者用户边说边处理,RESTful API 需要上传整个录音文件。

语音服务

  1. 语音识别(离在线融合SDK+RESTful API )

  2. 语音合成(离在线融合SDK+RESTful API )

  3. 语音理解与交互技术UNIT(快速、灵活的按自身业务需求定制对话系统,详细操作请参考后台

  4. 语音唤醒

集成

集成文档详细,比较方便,详细参考:

  1. 官方demo

  2. 官方文档

小结

  1. 不支持英文离线识别、以及英文关键词
  2. 英文识别效果不是特别准,相对上述其他方案
  3. 集成方便
  4. 价格免费
  5. 海外需要搭建反向代理服务器

科大讯飞

科大讯飞,专注语音技术近20年,行业先锋。专业从事智能语音及语言技术研究、软件及芯片产品开发、语音信息服务及电子政务系统集成。拥有灵犀语音助手,讯飞输入法等优秀产品。详细请查看官网

demo

demo地址:http://www.xfyun.cn/sdk/dispatcher

语音服务

  1. 语音合成
  2. 语音识别
  3. 语音唤醒
  4. 声纹识别
  5. 语音硬件

xunfei1

xunfei2

集成

集成文档详细,比较方便,详细参考:科大讯飞MSC开发指南-Android

小结

  1. 集成方便。
  2. 不支持英文离线识别。
  3. 语音服务全,支持音色定制、硬件方案。
  4. 价格稍贵,如果价格可接受,优先讯飞。

大象声科

大象声科基于多年对计算听觉场景分析的研究和积累,利用深度学习技术,实现降噪和语音增强方案,首先实现了单通道实时语音和噪声分离。

小结

主要提供语音降噪方案,详细参考官网

声智科技

声智科技,专注声学前沿技术和人工智能交互,提供从端到云的远场语音交互技术方案,从芯片、模组、OS到云服务(部分功能需定制),相关产品介绍文档,详细参考官网

语音服务

shengzhi

小结

未找到 demo 以及相关集成文档,需要商务联系。

总结

  1. 上述国外语音方案几乎都不支持离线。

  2. 海外对于录音隐私数据搜集,需要对应的许可,否则可能有相应风险。

  3. 上述国内语音方案都不支持离线英文识别、英文关键词。

  4. alexa 与 google assistant 对比:

    问题 Alexa google assistant
    隐私问题 amazon 账号授权 google 账号授权
    认证问题 5周 未知
    唤醒问题 alexa、echo、amazon ok google、hey google
    语音识别 在线 在线(有离线包,但未明确提供接入方式)
    自然语义 -(aws 可配置,收费) actions on google
    语音合成
    接入问题 自行接入 商务接入
    语音识别结果 不返回识别结果,用户账号后台有 有返回识别结果
    集成难易 需要基于 C++自封装一层 熟悉跨平台GRPC传输协议
    价格 免费 每天每台设备500个请求限制
    调试环境 无限制 被墙(需翻墙)
    语言 英语 无限制
    地区 美、英、德 全球大部分地区(限中国)
    年龄限制 13+ 未知

    推荐用 alexa,理由:

    1. 二者提供的语音服务都能满足产品需求
    2. alexa 相对信息明确 ,如果一定要1-2月的产品认证,可以提前动手准备,开发者信息更详细,主要问题在于需要 C++封装一层 jni 供上层调用,目前公司技术栈没有相对熟练人员。
    3. google 信息很多未知坑,如果能联系上对应的技术支持,可再酌情考虑。
    4. 就目前项目时间形式来讲,推荐用 alexa

综上所述,国内用百度(如果价格允许,优先讯飞。也可以2者结合方案),国外选google assistant或Alexa