自然语言处理(NLP)在企业应用中的实践(四)

来源:互联网 发布:python instance 编辑:程序博客网 时间:2024/05/18 02:37

Encoder-Decoder深度学习框架

 

自动客服

 

其他领域也可应用到Encoder-Decoder深度学习,比如自动客服。举个航空公司的自动客服实例,顾客问:我的行李能带多少?然后自动的回答是行李最多可以23公斤,顾客又问:我超了0.5公斤,可以吗?自动客服可以给出建议答案:因为你是我们的重要客户,我们允许最多超1公斤,是免费的,这个答案并没有达到99%的可信度,所以它会把这个答案建议给人工客服,由人工客服来做最终决定。这就是自动客服运用到深度学习的一个场景。

 

单据识别

 

当然,深度学习技术来也可应用到单据识别。通过拍照,把发票变成图象,通过CNN识别图象的特征,把里面包括的文字、数字输入到RNN里头,最终变成结构化的数据。

拼音智能匹配引擎

下面再介绍一下,应用到的拼音智能匹配引擎,在一些方言里有一些常见的发音错误,比如说zhchshzcsangan,以及ln混淆。在我们这个匹配引擎里边,这些发生错误的会让它匹配上。

 

这个匹配引擎的过程是:通过语音识别以后得到了汉字,这个汉字可能是包含错误的,我们给它加上拼音的标注,然后分成汉字串和拼音串,然后和我们商品库里头的汉字串和拼音串做一个综合的匹配,最后给出一个最好的得分。

 

我们这个匹配引擎使用了十种匹配因子,比如说单个的汉字,然后连续的二元汉字,汉字的拼音,两个字的拼音组合,像全拼的匹配,简拼的匹配,包括声母、韵母这样的匹配,所有这些匹配因子最后计算出一个综合的相似度,就是这个匹配最终的得分。比如,如完全用方言输入的鲜花椒油,会变成新发就咬,经过这些匹配因子去匹配,会发现它的声母比如说新和鲜是可以匹配上的,发和花在我们的方言错误也是允许它匹配的,就咬和椒油,这些也都能匹配的,所以新发就咬鲜花椒油,它计算出来的匹配度会很高,所以就可以找到这个商品。在凭证中可以通过这种方式,识别成买进原材料

综合纠错系统

把我们前面谈到的这样技术用到一起,就形成了我们的综合纠错系统,从通用的语音识别工具得到的可能是包含错误的汉字串,经过拼音标注,把这些可能包含错误的拼音串输入到Encoder-Decoder框架里面,通过音字转换模型,输出候选的汉字串,然后这些候选的汉字串经过RNN语言模型,得到最终的纠错以后正确的汉字串。

 

 

 语音下单

 

回到我们第一个应用的场景:通过语音来选择商品、进行语音下单,这个过程就是用户用语音输入,然后在服务端把语音转换成文字,这个文字可能是有错的,输入到我们的综合纠错系统里面,得到正确的商品名,在服务端搜索这个企业真正的商品库,返回搜索的结果,这个就是在语音下单/商品识别这个环节的应用。

 

实际用户测试的结果:用户输入春蓉鸡精,通过语音识别的结果得到的是权荣其京春荣,经过我们的纠错得到的商品结果:可以选择的商品排在第一位的就是春蓉鸡精。这是另外一个例子,用户输入的是黎红麻辣油,语音识别的结果是与红蚂赖优莹,经过我们的纠错,识别出来首选的是黎红麻辣油

 

全国各地进行测试直接用各地的方言或者是带口音的普通话来测试,其结果是,水果类商品测试了九百多种,我们的准确率是87%,五金类达到了95%,食品类达到了90%按照方言的分类:普通话(不管是不是带有口音),准确率是大于95%北方省份的方言准确率大于90%南方省份比如广东,福建,湖南这些和普通话相差非常远的直接用方言输入,最终经过我们的纠错准确率达到了86%以上

 

我们也和市面上同类通过语音识别商品的应用也做了一个简单的比较,这里给出来一个是北方的方言,一个是南方的:河南和广东,对于河南的方言,我们的识别率达到百分之百,对于广东话识别率达到86%,同类的其他产品(准确率)大概都是在77%78%的样子。

 

语音记账

 

看另一个应用场景:语音记账。一个叫易代账的应用已经实现了语言记账功能用户通过语音输入发生的业务,然后转成文字以后,经过我们纠错模型的纠错,和我们已有的模板去匹配,生成最后结构化的数据,当然从语音变成结构化数据的这个部分,目前我们还没有找到更好的办法,因为会计这个业务(特点),相似的业务因为会计准则的原因,它可能需要变成不同的会计分录,所以目前我们是用模板来解决这个问题。

 

具体的流程大概是这样:用户的语音变成文本以后,先要做一些预处理,比如识别里面的命名实体,有银行的名称这些,还有把变成汉字的数字要还原。做完预处理以后,首先去做精确的(模板)匹配,看能不能匹配上,经过纠错以后,发现还没有很好的匹配的话,再做模糊的匹配,同样还要做这些银行名称的识别,汉字的处理等等,最终匹配到模板以后,然后去填充对应的摘要,科目,数字变成金额,整个过程就完成了

 

来看个具体例子,买进原材料,银行支付材料款,六万,预付四万,现金为一万七。错误的语音识别结果是没经验材料,以后这个材料款六万,预付四万,邪剑仙为一万七,最终我们得到的结果是:摘要生成的是买进原材料,科目是原材料:100000;应缴税费-进项税:17000;银行存款:60000;现金:17000;预付账款:40000

 

最后来看一下实际运行的效果,用户通过语音输入,就会转变成记账凭证也就是结构化的数据。最后用户只需要确认摘要,金额,会计科目的选择没有问题,点一个保存按纽就可以得到结果。用户确认保存后形成会计凭证,我们可以看到从自然语言可以顺利的转化成为一个企业内的结构化的数据。

 

此次分享内容就是这些,以后会为大家带来更多有意思的分享内容,谢谢!

0 0
原创粉丝点击