Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

Recurrent AI:呼叫系统的「变废为宝」

自然语言处理是一个庞大的领域,比如普通文本与对话就是两个不同的领域,对话领域里,任务型对话又不同于闲聊型对话,问答式对话又不同于协作型对话……

因此,自然语言处理领域的玩家们,除了要思考模型的效果、产品的架构,更要思考一个最为本质的问题:要处理什么数据?为什么要处理这类数据?

Recurrent AI 选择了「呼叫系统」。

「电话录音可追溯而不可作假,这让呼叫系统成为了一个不可篡改的精准用户画像来源。同时坐席与客户的全部沟通过程也完整保留在电话录音中,这意味着影响成单率的全部因素都在录音之中,只要你能准确地把它们提取出来。」CTO 张宇韬说。

如何选择提取哪些信息?如何分步进行提取?近日,机器之心前往 Recurrent AI(睿科伦),与 CEO 陈麒聪、CTO 张宇韬、首席科学家杨植麟进行了深入的对话。他们讲述了一个用语音识别、语义理解和数据挖掘,把呼叫系统「变废为宝」的故事。

机器之心:能否介绍一下 DealTape(交易磁带)智能呼叫系统?

我们的产品是一个优化沟通的 AI,希望能够从统计分析的角度帮助人们去分析,在不同的商业背景下,哪些话术产生了积极的影响,哪些产生了消极的影响。想要实现这一点,就首先需要语音识别自然语言处理技术,把声音转换成由标签组成的向量,因此这也是我们的技术栈的主要构成部分。

我们最先切入的行业是那些会使用呼叫系统的行业。购买呼叫系统说明他们对监督坐席与客户沟通的过程是有强需求的。然而过去囿于技术,大部分录音只能靠人工重听或者弃置。而我们的系统可以节省 90% 以上听录音的时间,让坐席和管理者都能够直接发现沟通中的问题、直接进行有针对性的优化。

机器之心:为什么选择做智能呼叫系统?

我们几位创始人的背景集中在 NLP 与数据挖掘领域。最开始我们是从聊天机器人开始进行业务上的探索的。然而一段时间之后,我们逐渐认识到,聊天机器人在商业逻辑上有一些不通畅的地方:一方面,现在的任务型聊天机器人仍然需要非常深度的定制,换言之成本十分高昂,另一方面,它对于大多数公司仍然是一样「nice to have」的东西,大家的支付意愿也不是特别高。

因此,我们就在思考,做一些技术栈更深一点的东西。与其说创造对话,不如对已有对话进行分析。而对话数据最多的地方就是呼叫中心。

呼叫中心的用户花了大量成本进行录音,但是却没有利用它获得任何价值。电话录音可追溯而不可作假,这让呼叫系统成为了一个不可篡改的精准用户画像来源。同时坐席与客户的全部沟通过程也完整保留在电话录音中,这意味着影响成单率的全部因素都在录音之中,只要你能准确地把它们提取出来。

所以我们就在思考,如何能把利用这些数据提高企业的价值。

机器之心:DealTape 能够满足哪些需求?

两个典型的需求是培训和实时座席辅助。

一方面是找到各种话术与成单率之间的关系,帮助管理者可视化座席问题在哪里,然后通过个性化提示让坐席学习容易成单的话术,能够提高他们的销售水平。

另一类是自动填写客户画像,节省销售记录的时间,可以联系更多的客户 , 以及实时根据客户问题推送来自销冠的优秀回复案例。

另一类是把客户画像抽取出来,分析其分布,不同类型客户的流失率、成单率等,是一个数据来源详实的商业分析工具。

机器之心:DealTape 服务于哪些行业?对不同行业的系统进行什么程度的定制?

会购买呼叫系统的企业都是我们的潜在用户。我们现在比较集中的行业是金融,教育和 B2B。这些行业的很多基本情况非常类似:没有一家独断的垄断龙头公司,而是有非常多中等规模的企业,同时都可以支付得起呼叫系统和相关服务。因此在这些领域内,DealTape 既有可扩展性,也能够进行一些定制。

针对每个不同的行业,我们都对语音和语义模型进行了定制化。

这是因为,同样是呼叫系统,不同行业的使用方式差别会很大,最后音频中的信息分布、信息量以及内容差异也非常大。例如保险销售需要在电话里和客户确认非常多个人信息,一通电话可能长达一小时。而信贷行业去销售的时候,只需要询问对方房产,社保等资质再加微信邀约就可以结束了,一个电话平均只要几分钟。

机器之心:从模型角度看,DealTape 智能呼叫系统可以分成几部分?

我们的整个技术栈可以分为三层:

第一层是语音识别层,主要解决的是如何把呼叫系统里一段短则几分钟,长则几小时的电话录音转换为机器可以处理的双轨文字记录。

第二层是语义理解,通过一系列的文本分类模型,为文本中体现坐席与客户特点的句子打上标签,并为对话双方建立「画像」。

第三层是数据挖掘层,计算不同的标签与成单率之间的关系,将结果用于培训、实时座席辅助等不同目标。

图:坐席的「话术点」标签类别

机器之心语音识别层和语义理解层分别包括哪些模块?进行哪些任务?

语音识别层首先通过把人声段落和背景噪音段落分开的形式把长录音断句,进一步根据声纹信息区分不同说话人身份,并判断哪一方是销售坐席,哪一方是客户。这个阶段解决的是「谁在说话」以及「在什么时候说话」。最后,才对每一句话(utterance)进行语音识别

语义理解层的目的是把自然语言结构化,最后给出一系列关于坐席和客户的标签,我们称之为「画像」。

常见的针对坐席的标签包括「是不是加了微信」,「是不是约了下次见面」等 KPI 衡量指标。而常见的客户标签则会根据行业的不同而产生比较大的差异。例如,在金融信贷领域,「是否有社保」、「是否有房产」,就是一些重要的二值标签。标签的数量从几个到几十个不等,随着新用户逐渐加入,需求逐渐增多,我们也在不断扩充自己的标签体系。

图:保险行业的「保险责任 1」标签对应的语句样例

机器之心数据挖掘层如何利用上两层给出的信息?

数据挖掘层像是一个商业智能(BI)工具包。

在这一层,我们会对所有标签与成单率之间的关系建模,找到那些与成单率负相关程度最高的、波及客户最多的因素,将它们视为目前坐席需要解决的首要问题。

同时,我们会分析具有这些因素反而成单的案例,例如「被连续拒绝反而成单」的案例,「被竞品先入为主反而成单」的案例,分析究竟哪些话术起了作用促成了成单,找出销售打动客户的原因。

对于销售坐席来说,我们可以利用分析结果进行有针对性的话术培训。我们可以根据某一位坐席的数据进行回归分析,再把报表推送给他:通过数据分析,我们发现,从用户角度,你在遇到某种情况的客户时成单率最低,从个人角度,你的某一环节最为薄弱,然后推送和他情况类似的成单案例,对他进行有针对性的话术培训。

对于管理者来说,我们可以给出管理建议:例如,一位坐席同时维护多少个客户的时候,成单率最高;又如,哪些话术能够最有效地促进成单。

另外,我们也可以通过上一层的语义理解,进行类似「网站埋点」,监督坐席是不是按要求完成了工作,例如是不是推广了小程序。

机器之心语音识别层的核心技术要点有哪些?

众所周知,语音识别模型除了需要声学模型还需要语言模型

如果没有语言模型,单纯用声学模型进行识别,文字会出现漏字、同音字错误识别等可读性问题。因此我们需要一个语言模型在解码过程中对声学模型定向搜索过的结果进行一次重排序。

经典的语言模型做法是采用 n-gram 统计模型、但 n-gram 模型存在几个问题,一是因为参数非常多,所以容易过拟合;二是即使在 n 取值非常小的时候,例如 3-gram,仍然会发生参数爆炸。后来有了基于神经网络语言模型,把每个词,或者每个词的分布变成一个嵌入码(embedding), 然后用 RNN 模型来刻画句子的上下文。这一做法的局限性在于,无论如何设计模型结构,最后都要通过 softmax 进行输出,模型的表现力就被嵌入码的规模所限制了。

因此我们在语言模型中引入了「softmax 混合体」概念,相当于将若干个 softmax 解码器做成了一个混合模型,克服了基于神经网络语言模型的表现力限制性,在多个语言建模标准数据集上获得复杂度(perplexity)的大幅提升,例如在 1B Word 数据集上就提高了 5.6%。这篇文章入选了 ICLR 2018 oral,是前段时间影响力比较好的一个工作。

机器之心:训练语音模型需要进行什么规模的标注工作?

在冷启动阶段,我们对接了两家不同行业的客户,分别来自信贷领域和 B2B 销售,我们从他们的数据库中提取数据,进行了数百个小时的人工标注,然后利用这部分数据训练处了一个基本可用的基线模型,用于后续的数据标注。有了基线模型之后,新的未标注数据首先通过基线模型进行预识别,再交给标注员做精细标注,这样成本就大大降低了。同时,基线模型的训练集也在不断扩充,现在我们最新的基线模型训练集规模已经达到数千个小时。

至于生产阶段,每个行业都有一个专属的语音识别模型,如果用户所在行业是我们之前没有接触过的,那么我们需要大量标注数据从头训练;如果我们之前做过相关行业,那么标注的目的只是适配一下特定公司的数据特点,这时只需要进行「轻标注」,标注量大概是新行业的十分之一。

机器之心:目前市面上已经有许多公司将语音识别视作一项基础能力模块,对外提供相对比较成熟的技术服务。为什么 Recurrent AI 仍然选择「自己造轮子」?而不是调用其他 API?

我们尝试过用通用的语音识别引擎去识别电话录音,识别的结果并不足以支撑上层的语义处理任务。这是我们「重造轮子」的主要原因。通用语音识别引擎的识别结果会丢掉很多关键信息,例如一些实体的名称,像公司名称和产品名称之类的,这是用户最关心的一部分内容,但是反而不能被正确识别。我们甚至尝试过用一些规则修改通用识别引擎的识别结果,比如用户的企业名称是「百姓网」,经常被识别成「百姓好」,那么我们可以制定规则把所有的「百姓好」修改成「百姓网」。但是识别模型是不可控的,可能的错误方式有太多了。

另外,从「造轮子」的可行性角度,虽然我们公司创始成员的主要背景是自然语言处理数据挖掘,但是深度学习这类端到端的算法在不同领域之内有相通之处,而且它大大降低了语音识别的门槛——比如说标注精度就从原来的需要「逐字校准」变成了给出每句的对应文本即可,这就是一个成本和精力上可控的任务了。

机器之心数据挖掘层的核心技术要点有哪些?

数据挖掘的难点就在于如何结合所有的特征去预测。我们一般从三个层面来考虑这个问题,一是特征工程(feature engineering),二是模型,三是模型的结合(ensemble)。模型层面需要考虑的问题比较少,用分类器解决预测问题已经成为定式,xgboost 等工具已经非常成熟了。所以我们考虑的主要是,第一,怎么样去定义更有效的特征;第二,怎么样去做特征的交叉与结合,使得其表达能力和泛化能力更强;第三,在最后模型结合、调参的层面,把利用不同特征训练出来的模型进行结合。

机器之心:各个行业的「标签」是如何确定的?

每个行业的标签都有所不同,标签是和我们的用户逐步沟通出来的。

用户公司的运营人员会和产品沟通,提供一小部分音频。我们的运营人员在听过录音之后会帮助他们进行设计,而用户也会给出很多需求。

有一些标签能明显地体现出用户的商业逻辑。比如说,在一个竞价排名销售的场景里,用户就要求系统能够区分出「不想花钱」、「价格异议」和「问优惠」。在用户看来,「不想花钱」指代的是完全不想付费、想要免费使用的客户。「价格异议」是一个更为积极的信号,表示客户有支付意愿,只是觉得价格太贵。而会「问优惠」的客户则更为主动,信号更为积极。

机器之心:行业内存在哪些竞品吗?

在美国,公司使用呼叫系统的历史远比国内悠久,普及情况也远胜于国内,因此有一些类似的产品。例如有一家名为 Chorus 的公司,还有 Gong.io (http://gong.io/) 都是针对销售领域的智能对话系统公司,但它们针对的对象通常是视频 demo,在国内,这一类场景还比较少。

产业自然语言处理语音识别睿科伦智能
12
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

数据分析技术

数据分析是一类统计方法,其主要特点是多维性和描述性。有些几何方法有助于揭示不同的数据之间存在的关系,并绘制出统计信息图,以更简洁的解释这些数据中包含的主要信息。其他一些用于收集数据,以便弄清哪些是同质的,从而更好地了解数据。 数据分析可以处理大量数据,并确定这些数据最有用的部分。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

文本分类技术

该技术可被用于理解、组织和分类结构化或非结构化文本文档。文本挖掘所使用的模型有词袋(BOW)模型、语言模型(ngram)和主题模型。隐马尔可夫模型通常用于词性标注(POS)。其涵盖的主要任务有句法分析、情绪分析和垃圾信息检测。

商业智能技术

商业智能(Business Intelligence,BI),又称商业智慧或商务智能,指用现代数据仓库技术、线上分析处理技术、数据挖掘和数据展现技术进行数据分析以实现商业价值。

统计模型技术

统计模型[stochasticmodel;statisticmodel;probabilitymodel]指以概率论为基础,采用数学统计方法建立的模型。有些过程无法用理论分析方法导出其模型,但可通过试验测定数据,经过数理统计法求得各变量之间的函数关系,称为统计模型。常用的数理统计分析方法有最大事后概率估算法、最大似然率辨识法等。常用的统计模型有一般线性模型、广义线性模型和混合模型。统计模型的意义在对大量随机事件的规律性做推断时仍然具有统计性,因而称为统计推断。常用的统计模型软件有SPSS、SAS、Stata、SPLM、Epi-Info、Statistica等。

数据库技术

数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。 所谓“数据库”系以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

数据挖掘技术

数据挖掘(英语:data mining)是一个跨学科的计算机科学分支 它是用人工智能、机器学习、统计学和数据库的交叉方法在相對較大型的数据集中发现模式的计算过程。 数据挖掘过程的总体目标是从一个数据集中提取信息,并将其转换成可理解的结构,以进一步使用。

特征工程技术

特征工程是利用数据所在领域的相关知识来构建特征,使得机器学习算法发挥其最佳的过程。它是机器学习中的一个基本应用,实现难度大且代价高。采用自动特征工程方法可以省去采用人工特征工程的需求。Andrew Ng 说“挖掘特征是困难、费时且需要专业知识的事,应用机器学习其实基本上是在做特征工程。”

逻辑技术

人工智能领域用逻辑来理解智能推理问题;它可以提供用于分析编程语言的技术,也可用作分析、表征知识或编程的工具。目前人们常用的逻辑分支有命题逻辑(Propositional Logic )以及一阶逻辑(FOL)等谓词逻辑。

噪音技术

噪音是一个随机误差或观测变量的方差。在拟合数据的过程中,我们常见的公式$y=f(x)+\epsilon$中$\epsilon$即为噪音。 数据通常包含噪音,错误,例外或不确定性,或者不完整。 错误和噪音可能会混淆数据挖掘过程,从而导致错误模式的衍生。去除噪音是数据挖掘(data mining)或知识发现(Knowledge Discovery in Database,KDD)的一个重要步骤。

聊天机器人技术

聊天机器人是经由对话或文字进行交谈的计算机程序。能够模拟人类对话,通过图灵测试。 聊天机器人可用于实用的目的,如客户服务或资讯获取。有些聊天机器人会搭载自然语言处理系统,但大多简单的系统只会撷取输入的关键字,再从数据库中找寻最合适的应答句。

过拟合技术

过拟合是指为了得到一致假设而使假设变得过度严格。避免过拟合是分类器设计中的一个核心任务。通常采用增大数据量和测试样本集的方法对分类器性能进行评价。

语音识别技术

自动语音识别是一种将口头语音转换为实时可读文本的技术。自动语音识别也称为语音识别(Speech Recognition)或计算机语音识别(Computer Speech Recognition)。自动语音识别是一个多学科交叉的领域,它与声学、语音学、语言学、数字信号处理理论、信息论、计算机科学等众多学科紧密相连。由于语音信号的多样性和复杂性,目前的语音识别系统只能在一定的限制条件下获得满意的性能,或者说只能应用于某些特定的场合。自动语音识别在人工智能领域占据着极其重要的位置。

对话系统技术

对话系统大致被分成两类: 任务为导向的对话系统,帮助用户去完成特定任务,比如找商品,订住宿,订餐厅等。实现任务为导向的对话系统,主要有两类方式,流水线方法和端到端方法。非任务导向的对话系统,与用户进行互动并提供回答,简单的说,就是在开放领域的闲聊。实现非任务导向对话系统也主要可分为两类,生成方法和基于检索的方法。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

回归分析技术

回归分析是一种用于估计变量之间的关系(当一个自变量变化而其它变量固定时,因变量会如何变化)的统计过程,在预测任务中有广泛的应用。回归分析模型有不同的种类,其中最流行的是线性回归和 逻辑回归(Logistic Regression)。另外还有多变量回归、泊松回归、逐步回归、脊回归(Ridge Regression)、套索回归(Lasso Regression)和多项式回归等等。随机梯度下降(SGD)就是一种起源于回归分析的常用方法,可用于控制复杂度。

混乱度技术

衡量概率分布或概率模型预测样本能力的一个度量单位,其可以被用来比较概率模型的好坏,值越低表示在预测样本方面的效果越好。

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

推荐文章
厉害厉害
有益