文章目录
- 文档版本更新说明
- 0.项目需求
- 0.1 需求
- 0.2 技术难点
- 0.3 模型框架初设与关键技术
- 0.4 系统设计
- 1.语音识别:(ASR)
- 1.1语音识别技术概要:
- 1.1.1 DNN方法。
- 1.1.2 语音识别技术路线和选型
- 2.语音合成
- 2.1 语音合成
- 2.1.1参数化合成
- 2.1.2 端到端合成
- 3.文本聊天引擎
- 3.1 方案成熟
- 4.问候语模块
- 4.1 方案
文档版本更新说明
- 更新各个模型的训练结果以及存在的问题 v1.1 2020.01.02
- 目前整体语音框架完成 v1.0 2019.12.25
0.项目需求
0.1 需求
代码语言:javascript复制近年来,呼叫中心在国内外得到了越来越快的发展,国内企业的发展趋势 已逐渐从以“产品”为导向转变为以“客户"为导向,客户资源成为市场经济的主体,市场竞争最直接的表现就是企业对于客户的争夺,在这里,呼叫中心起到企业和客户之间沟通桥梁的作用。
手机用户的普遍如何快速的应答与高质量的沟通是智能客服的关键问题。 采用合理的分层结构流程与先进的中间组件(例如,语音识别、语音合成、智能对话、知识图谱等技术组建),建立客服热线自动语音应答系统。缓解人工忙线,客户问题简单,如法充分利用资源的情况。 借用AI相关的技术,建立稳定、有效的智能语音应答系统的研究目标。
0.2 技术难点
目前智能聊天机器人技术相对比较成熟,但是在专业领域内的智能客服,技术相对比较滞后,原因有以下几个难点。
- 2.1 语音识别
语音识别技术的发展,达不到实用要求的,主要表现在以下方面 :
- (1) 自适应问题 。 语音识别系统的自适应性差体现在对环境条件的依赖性强。 现有倒谱归一化技术、相对谱(RASTA)技术、LINLOG RASTA 技术等自适应训练方法。
- (2)噪声问题。 语音识别系统在噪声环境下使用,讲话人产生情绪或心里上的变化 ,导致发音失真、发音速度和音调改变 ,产生Lombard/Loud 效应。 常用的抑制噪声的方法有谱减法、环境规正技术、不修正语音信号而是修正识别器模型使之适合噪声、建立噪声模型。
- (3)语音识别基元的选取问题 。 一般地,欲识别的词汇量越多,所用基元应越小越好。
- (4 )端点检测。 语音信号的端点检测是语音识别的关键第一步。研究表明,即使在安静的环境下,语音识别系统一半以上的识别错误来自端点检测器。提高端点检测技术的关键在于寻找稳定的语音参数 。
- 2.2 语音合成
语音合成在专业领域还有以下问题:
- 首先是针对专业领域的优化,比如在医疗领域,通常专用词汇比较多,让我们普通人去听的时候可能都写不下来,只有经过专业训练的医生和护士才能准确记录;影视节目查询、商品搜索、路径导航等方面也同样需要做针对性的优化。
- 其次是相对复杂的口音和噪声环境,包括全国各地的口音和方言、远讲、噪声、混响等,都是比较复杂的。声音传播能量是随距离平方成反比关系的,传播距离增加一倍能量就衰减到四分之一,在五米外采集的语音能量,和在一米采集能量相比就相差25倍,但噪声并没有因为距离而降低,加上距离远之后,房间会出现多次反射和叠加,还会形成混响效果,信噪比会下降很多,都会对识别效果造成影响,这些是需要麦克风阵列结合语音声学模型去解决的问题。
- 第三是低功耗、低成本、高可靠的问题,智能家电需要满足绿色环保标准,需要确保24小时误唤醒低于1次,尽量不出现误操作,要实现大规模量产出货,还要降低整体方案的成本。面向物联网的智能语音交互方案,如果功耗成本下不来就不能普及,智能手表、手环等依赖电池的穿戴设备,功耗和成本问题就更加严重。
- 第四是个性化TTS,1)在用户预期不苛刻的场景,能“基本”满足商业化需求,但是效果没通用TTS那么好。但如果用户预期非常高的话,暂时是满足不了的。2)情感的效果差,含有些机器声音。
- 2.3 专业问题库(question 和answer) 其实是一个关键点是question 和answer库的构建。这个过程需要人工去整理,有些场景如果前期已经积累了很多的question和answer,效率会高。其实这些问题差别大,领域答案专业可能比较靠谱些。
- 2.4 引擎的选择 引擎的选择就是问题的选择,通俗的讲,智能客服需要解决什么类的问题,什么样的问题需要对给人工客服。 首先使用 SimHash 方法进行快速过滤,保留专业问题库中与用户输入问句相似度小于等于阈值的问答对,然后再通过语义相似度和语序相似度相结合 匹配出最相似的问句,并返回对应的答案给用户。最后未能匹配正确结果的用户的语音问题,需要转接人工服务。
- 2.5 接入话务专线 最后是对效率的要求,整个过程设计到语音识别、语音合成、问题检索等过程,每个过程都需要一定的时间,在线交互的效果要求很高,也就是对整个智能语音机器人的效率要求很高。
0.3 模型框架初设与关键技术
- 3.1 模型流程
根据业务流程,结合算法得到初步设计整个算法框架的流程,展示各个步骤的关键技术以及输入和输出。按功能点来说,语音识别是目前整个过程处理的难点,语音识别的准确率是问题和交互聊天的基础。语音合成,目前语音合成是否需要定制化?还是通用性的声音。对客户交互效果影响比较大。简单聊天交互与专业问题检索,与上线运维机器人方案类似。
- 3.2 问题相似度算法
问句相似度计算方法是自动问答系统的关键部分。首先将用户问题进行分词和去停用词 等预处理操作,形成一个二元组序列Cq ,这里用户问句我们用 Cqu 表示。
- 3.3 SimHash相似度 Google 通过 SimHash 相似度很好的解决了很多问题,SimHash 方法可 以形成具有代表性的二进制签名,最后通过计算两个二进制签名的海明距离,判断两个语句 的相似度,海明距离越小,代表两个语句具有更高的相似度。SimHash 方法除了能够形成具 有代表性的签名外,还有一个重要的作用,就是能够通过高效的搜索策略缩小比较范围。
- 3.4 知识库模块
内部数据处理人员的主要职责是对知识库进行整理,所以知识库整理模块使用角色为内部数据处理人员,该模块的用例图如图2所示。
分词处理是智能问答系统不可或缺的一部分,关键词的完备度直接影响着分词的准确度。 虽然如今普通的关键词可以从很多地方获取到资源导入到系统中,但是专业领域的关键词则 需要人们手工的添加。所以,在图 2中,内部数据处理人员需要对系统添加领域内的专业词。 问答对是智能问答系统查询的主要依据,其主要来源除了手工收集的文档和网络爬虫的 web 文档的导入,还可以通过内部数据处理人员审核添加新的问题,同时并为问题设置答案。
- 3.5 语音识别和语音合成
- 效果的关键是语音识别和语音合成,特别是语音识别的很多方言的识别与嘈杂的环境,是制约和语音识别效果的难点。限定客户语言为普通话,回复语音为女生普通话。
0.4 系统设计
代码语言:javascript复制在功能层面,在线客服智能推理系统的核心部分包括知识库、数据库、推理机(推理机),其外围部分是知识库、语音合成、语音识别和自然语言处理等,系统功能组成如图3所示。
- ![智能客服功能点](https://tva1.sinaimg.cn/large/006tNbRwgy1gai9mxreopj30hc0cyt94.jpg)
1.语音识别:(ASR)
- 应用:(Automatic Speech Recognition,ASR)语音识别是为了让计算机理解自然语言。
- 中文语音识别的关键点:1.句到词的分解,词到音节的分解;2.语音的模糊性,如多音字问题;3.词在不同语境中不同;4.环境噪声的印象。
- 处理的核心步骤: 1. 音频处理:消除噪声,让信号更能反映语音的本质特征。 2. 声学特征提取:MFCC、Mel等 3. 建立声学模型和语言模型:语音识别由这两种模型组成。
1.1语音识别技术概要:
1.1.1 DNN方法。
- 2.2.1 ASRT:中文模型
- 简介:主流的语音识别解码器为(WFST):该解码器把语言模型和声学模型集成为一个大的网络,大大的提高了解码速度。
- 2.2.1.1 核心算法:卷积网络、CTC声学模型,熵最大的隐马尔科夫语言模型
- 状态
- 之前训练效果,还不错,但是训练不饱和
- 环境配置好,等待GPU资源
- 简介:主流的语音识别解码器为(WFST):该解码器把语言模型和声学模型集成为一个大的网络,大大的提高了解码速度。
- 2.3 DeepSpeechRecognition 模型
- 算法是基于百度的Deepspeech开发;
- 状态:
- 目前待训练
- 等待GPU资源
1.1.2 语音识别技术路线和选型
- 基于HTK的ASR是语音识别的基础,毕竟经典的算法对了解ASR有原理和缺陷有很大帮助。
- 基于Kaldi的DNN模型是目前主流的语音识别方法。
2.语音合成
2.1 语音合成
2.1.1参数化合成
- 特征
- 合成效率低,逼近人的声音;
- 目前训练存在问题
- 1.语速过快
- 2.韵律不恰当,抑扬顿挫的节奏不对。
- 3.语音的清晰度还可以,其次是训练不够充分
- 4.数字读取有问题
- 存在问题的解决方法
- 1.语音过快:引入sox控制语速
- 2.韵律不准确:采用独立的韵律预测模型
-
- gpu资源部充足
- 4.数字读取:之前已经完成需要引入模块
2.1.2 端到端合成
- 端到端语音合成系统的代表,与以往的合成系统不同,端到端合成系统,可以直接利用录音文本和对应的语音数据对,进行模型训练,而无需过多的专家知识和专业处理能力,大大降低了进入语音合成领域的门槛,为语音合成的快速发展提供了新的催化剂。
- Tacotron 把文本符号作为输入,把幅度谱作为输出,然后通过 Griffin-Lim 进行信号重建,输出高质量的语音。Tacotron 的核心结构是带有注意力机制的 encoder-decoder 模型,是一种典型的 seq2seq 结构。这种结构,不再需要对语音和文本的局部对应关系进行单独处理,极大地降低了对训练数据的处理难度。由于 Tacotron 模型比较复杂,可以充分利用模型的参数和注意力机制,对序列进行更精细地刻画,以提升合成语音的表现力。相较于 WaveNet 模型的逐采样点建模,Tacotron 模型是逐帧建模,合成效率得以大幅提升,有一定的产品化潜力,但合成音质比 WaveNet 有所降低。
- 特征
- 合成效率高,占用gpu
- 状态:
- 目前在训练中,无存在问题
- 等待GPU资源
3.文本聊天引擎
3.1 方案成熟
代码语言:javascript复制- 采用运维机器人的引擎
4.问候语模块
4.1 方案
代码语言:javascript复制-