HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

一种用于语音识别文本多标签分类的方法和装置与流程

2021-01-28 13:01:41|246|起点商标网
一种用于语音识别文本多标签分类的方法和装置与流程

本文公开的主题总体上涉及计算机领域,并且更具体地涉及一种用于语音识别文本多标签分类的方法以及使用该方法的装置。



背景技术:

在金融领域,交易员录音电话由于具有可记录和可追溯的特征,因此是国内外金融市场交易达成的主要方式之一,例如,电话交易承诺与交易邮件、交易单据具备同样的法律效力。由于金融市场交易业务单笔金额大、交易时效性高、专业性较强,其操作风险和合规风险一直是业界关注的热点,因此交易员录音电话也成为内控管理、交易查证的重要手段,是识别和追踪异常交易的重要途经。

近年来,从各商业银行的审计检查情况看,一些机构仍然存在交易员违规操作的现象,交易员管理不到位的问题较为突出。但是,由于人力的不足和技术手段的限制,一直以来,大部分交易员录音电话检查只能采取抽查的方式,无法覆盖全部录音电话。并且在检查过程中,也存在检查频率较低、发现问题较为有限等问题,严重影响了录音电话的检查效率。

为了更好地规范交易员行为、强化交易岗位管理,需要一种使用人工智能技术对交易员语音文本进行分析,识别通话类型(个人电话或交易电话,若为交易电话还应识别出产品类型)的方法。

本发明是针对语音文本的多标签分类问题。语音文本,即通过自动语音识别asr(automaticspeechrecognition)技术获取的文本,该技术可以让机器经过识别和理解过程把语音信号转变为相应的字符序列。但是,因为发音人及口音的不同、同一发音人心理和生理变化带来的语音变化、发音方式和习惯不同引起的省略或连续的语音现象,以及环境和信道不同造成的语音信号失真等因素,导致目前的语音识别准确率仍不太理想。另一方面,多标签分类问题,即每篇文本可能涉及多个主题,比如一篇报道同时具有国际、政治两个标签。对于这类问题,通常有两种解决方案:一是转换策略(problemtransformationmethods),它将多标签分类问题转换为单标签模型构造问题,然后将模型合并,主要有二元关联(binaryrelevance)、分类器链(classifierchains)和校准标签排序(calibratedlabelranking)算法;二是算法适应(algorithmadaptation),它将现有的单标签算法直接应用到多标签上,主要有多标签k近邻(multi-labelk-nearestneighbor)和多标签决策树(multi-labeldecisiontree)算法。

目前关于文本多标签分类问题的研究,绝大部分都是基于规范文本数据集,比如新闻资讯或微博博文等。而通过语音识别转换得到的文本,受口音差异、环境噪音和录音质量等因素影响,不可避免地存在字词识别错误或语句不通顺的情况,如果直接使用以上算法进行建模和预测,则难以达到理想的效果。因此,需要一种改进的方法来克服现有技术存在的缺陷。

在此定义以下缩写,在以下描述中将会引用其中的至少一些:

tf(termfrequency):词频,某个词语在文本中出现的次数,可以通过除以文本总词数进行归一化;

df(documentfrequency):文件频率,某个词语在多少篇文本中出现过,可以通过除以文本集中的文本总篇数进行归一化;

tf-idf(termfrequency–inversedocumentfrequency):一种用于信息检索与数据挖掘的常用加权技术;

dimsim:ibmalmaden研究中心开发的库,给定两个汉语短语,可以返回它们的语音距离;

soundex:一种计算语音近似度的算法;

synonyms:一个中文近义词工具包,可用于如文本对齐、推荐算法、相似度计算等自然语音处理任务,采用的基本技术是word2vec;

sklearn(scikit-learn):一个基于python语言的机器学习工具,包含分类、回归、聚类、降维、模型选择和预处理六大任务模块;

tfidfvectorizer:sklearn中构造tfidf特征向量的函数;

multilabelbinarizer:sklearn中将多标签进行二值化转换的函数;

accuracy:准确率,对于给定的测试数据集,分类器正确分类的样本数与总样本数之比;

f1-score:准确率和召回率的调和平均数;

onevsrestclassifier:sklearn中实现one-vs-all策略的函数,即用一个分类器对应一个类别,每个分类器都把其他全部的类别作为相反类别看待;

gridsearchcv:sklearn中的网格搜索参数,可以在指定参数范围内找到在验证集上精度最高的参数。



技术实现要素:

本发明通过对语音文本进行充分的预处理,去除不必要的噪音干扰;并且在分词时加入与标签相关性强的自定义词典,确保文本关键特征完整保留;此外,还使用语音相似度进行词语纠错,以及使用语义相似度挖掘更多标签相关的术语。上述几点都有助于最终的分类模型学习到关键知识点,提升分类效果。

为了实现上述目的。本发明提供一种用于语音识别文本多标签分类的方法和装置。

在一个实施例中,一种用于执行语音识别文本多标签分类的方法,所述方法包括:接收语音数据;对所述语音数据执行语音识别,以生成语音文本;对所述语音文本执行预处理,以生成预处理的语音文本;利用所述预处理的语音文本,使用机器学习进行训练,生成标签分类模型;使用所述标签分类模型对新生成的预处理的语音文本进行预测,以生成与所述新生成的预处理的语音文本相对应的标签集合。

优选地,该方法进一步包括:根据所述语音数据所对应的应用场景;生成产品标签集合,生成术语库,其中,所述术语库包括针对所述产品标签集合中的每个产品标签的术语;以及利用所述产品标签集合对所述语音文本打标签。

优选地,该方法进一步包括:对所述语音文本进行去噪;将所述术语库融合为一个词库;将所述词库添加到自定义词典中,使得所述自定义词典与所述标签集合强相关;以及利用所述自定义词典对所述语音文本执行分词。

优选地,该方法进一步包括:将所述预处理的语音文本的分词的集合与所述产品术语库做交集运算,若交集不为空,则打上对应的标签,由此生成第一标签集合;通过对所述预处理的语音文本进行预测,以生成第二标签集合;以及将每篇语音文本的所述第一标签集合和所述第二标签集合做并集运算,以生成与所述语音文本相对应的标签集合。

根据本发明的另一个实施例,一种用于执行语音识别文本多标签分类的装置包括:通信单元,被配置为执行数据的发送和接收;存储器,被配置为存储数据和指令;处理器,所述处理器可操作性地耦合到所述通信单元和所述存储器,并且被配置为:通过所述通信单元接收语音数据;对所述语音数据执行语音识别,以生成语音文本;对所述语音文本执行预处理,以生成预处理的语音文本;利用所述预处理的语音文本,使用机器学习进行训练,生成标签分类模型;使用所述标签分类模型对新生成的预处理的语音文本进行预测,以生成与所述新生成的预处理的语音文本相对应的标签集合。

根据本发明的又一个实施例,一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序当被处理器执行时使所述处理器执行用于执行语音识别文本多标签分类的方法。

利用本发明提出的方法和装置,业务人员在使用时无需了解内部原理,只需将语音数据传入系统,即可得到最终结果。该方法与装置采用的关键词抽取算法及sklearn工具包简单但高效,训练模型和使用模型时不会像深度学习耗费大量时间。该方法与装置具有较强的灵活性,各个模块中采取的算法可以根据实际情况进行阈值调整。并且该方法与装置具有良好的可拓展性,不仅适用于示例的语音文本交易产品类型分类,也可以应用到其他语音文本分类的业务场景。

附图说明

通过参考在附图中图示的特定实施例,将呈现以上简要描述的实施例的更具体的描述。应理解,这些附图仅描绘一些实施例,并且因此不应认为是对范围的限制,将通过使用附图以附加的特征和细节来描述和解释实施例。

图1描绘了根据本发明的一个实施例的系统框图。

图2描绘了根据本发明的一个实施例的用于语音识别文本多标签分类的方法的流程图。

图3描绘了根据本发明的一个实施例的语音文本的示例。

图4描绘了根据本发明的一个实施例的产品标签集合的示例。

图5描绘了根据本发明的一个实施例的交易术语库的示例。

图6描绘了根据本发明的一个实施例的预处理结果的示例。

图7描绘根据本发明的一个实施例的用于执行语音识别文本多标签分类方法的装置。

具体实施方式

如本领域的技术人员将理解的,实施例的各方面可以体现为系统、装置、方法或程序产品。因此,实施例可以采用完全硬件实施例、完全软件实施例或者组合软件和硬件方面的实施例的形式。此外,实施例可以采取体现为存储在一个或多个计算机可读存储设备中的程序产品的形式。

本说明书中描述的某些功能单元可以被标记为模块,以便于更具体地强调它们的实现独立性。例如,模块可以实现为包括定制的超大规模集成电路或门阵列、诸如逻辑芯片、晶体管或其他分立组件的现成半导体的硬件电路。模块还可以在诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备等的可编程硬件设备中实现。模块还可以用代码和/或软件实现,以由各种类型的处理器执行。

可以利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读存储介质。计算机可读存储介质可以是存储代码的存储设备。存储设备可以是,例如,但不一定限于电子、磁、光、电磁、红外、全息、微机械或半导体系统、装置或设备、或前述的任何合适的组合。

存储设备的更具体示例的非详尽列表将包括下述:具有一条或多条电线的电气连接、便携式计算机磁盘、硬盘、随机存取存储器(“ram”)、只读存储器(“rom”)、可擦除可编程只读存储器(“eprom”或“闪存”)、便携式紧凑光盘只读存储器(“cd-rom”)、光学存储装置、磁性存储装置、或前述的任何合适的组合。在本文件的上下文中,计算机可读存储介质可以是任何有形介质,其能够包含或存储程序以供指令执行系统、装置或设备使用或与其结合使用。

用于执行实施例的操作的代码可以是任何数量的行,并且可以以包括诸如python、ruby、java、smalltalk、c++等的面向对象的编程语言、和诸如“c”编程语言等的传统的过程编程语言、和/或诸如汇编语言的机器语言中的一种或多种编程语言的任何组合来编写。代码可以完全地在用户的计算机上执行,部分地在用户的计算机上执行,作为独立的软件包,部分地在用户的计算机上,并且部分地在远程计算机上或完全地在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(“lan”)或广域网(“wan”),或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。

本说明书中对“一个实施例”、“实施例”或类似语言的引用意指结合该实施例描述的特定特征、结构或特性包括在至少一个实施例中。因此,除非另有明确说明,否则在整个说明书中出现的短语“在一个实施例中”、“在实施例中”和类似语言可以但不一定全部指代相同的实施例,而是意指“一个或多个但不是所有实施例”。除非另有明确说明,否则术语“包括”、“包含”、“具有”及其变体意指“包括但不限于”。除非另有明确说明,否则列举的项目列表并不暗示任何或所有项目是互斥的。

此外,所描述的实施例的特征、结构或特性可以以任何合适的方式组合。在以下描述中,提供许多具体细节,诸如编程、软件模块、用户选择、网络事务、数据库查询、数据库结构、硬件模块、硬件电路、硬件芯片等的示例,以提供对实施例的彻底理解。然而,相关领域的技术人员将认识到,可以在没有一个或多个具体细节的情况下,或者利用其他方法、组件、材料等来实践实施例。在其他情况下,未详细示出或描述公知的结构、材料或操作以避免使实施例的一些方面模糊。

下面参考根据实施例的方法、装置、系统和程序产品的示意性流程图和/或示意性框图来描述实施例的各方面。

附图中的示意性流程图或示意性框图图示根据各种实施例的装置、系统、方法和程序产品的可能实现的架构、功能和操作。在这方面,示意性流程图或示意性框图中的每个块可以表示代码的模块、片段或部分,其包括用于实现指定的逻辑功能的代码的一个或多个可执行指令。

还应注意,在一些替代性实施方式中,块中注释的功能可以不按附图中注释的顺序发生。例如,连续示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序执行,这取决于所涉及的功能。可以设想其他步骤和方法,其在功能、逻辑或效果上等同于所图示的附图的一个或多个块或其部分。

尽管可以在流程图或框图中采用各种箭头类型和线类型,但是应理解它们不限制相应实施例的范围。实际上,一些箭头或其他连接器可以仅用于指示所描绘实施例的逻辑流程。例如,箭头可以指示所描绘的实施例的枚举步骤之间的未指定持续时间的等待或监视时段。还将会注意,框图或流程图的每个块以及框图和/或流程图中的块的组合,能够由执行特定功能或操作的基于专用硬件的系统,或专用硬件和代码的组合来实现。

每个附图中的元件的描述可以参考前述附图的元件。相同的数字指代所有附图中的相同元件,包括相同元件的替代实施例。

下面将参考附图描述本发明的实施例。

图1描绘了根据本发明的一个实施例的系统框图。

如图1所示,根据本发明的一个实施例的用于语音识别文本多标签分类的系统100包括语音识别模块(101)、语音文本预处理模块(102)和语音文本预测模块(103)。

语音文本识别模块(101)用于使用语音识别算法对获取到的语音数据进行识别,将语音信号转写为字符序列。常用的语音识别算法有基于动态时间规整的方法、基于参数模型的隐马尔可夫模型的方法、基于非参数模型的矢量量化的方法、基于人工神经网络的方法等。本发明不受此限制。

语音文本预处理模块(102)用于将连续的字符串转换为离散的词汇集合。在下文中,将参考图2详细描述语音文本预处理模块(102)如何将连续的字符串转换为离散的词汇集合。

语音文本预测模块(103)用于将预处理模块输出的词汇集合作为输入,对通过语音文本预处理模块(102)预处理后的文本执行预测,得到最终的标签结果集。在下文中,将参考图2详细描述语音文本预测模块(103)是如何执行预测的。

图2描绘了根据本发明的一个实施例的用于语音识别文本多标签分类的方法的流程图。

参见图2。在步骤s201,系统获取语音数据,并将其转换为语音文本。具体地,可以从业务部门获取一批交易员通话录音数据,通过语音识别程序,转写为语音文本,语音文本的格式可以是txt,但是不限于此。此处语音识别程序可以实现两个功能,一是将语音转换成文字,二是把对话双方各自的语音内容区分开。请参见图3。

图3描绘了根据本发明的一个实施例的语音文本的示例。

如图3所示,用符号n1表示第一个说话者,n2表示第二个说话者。此处仅仅是一个示例,说话者的数目不限于两个。

返回参考图2。在步骤s202,制定产品标签,构建相应的术语库。

具体地,业务部门可以根据需求制定通话对应的产品标签,并构建产品术语库。

在不同的交易场景,涉及的产品存在差异,需要由业务部门根据实际情况确定一组互不相关的产品标签集合,并为每种产品归纳总结相应的术语,例如若干个交易时可能用到的交易术语,以形成各自的术语库。请参见图4。

图4描绘了根据本发明的一个实施例的产品标签集合的示例。

如图4所示,产品标签包括汇率、利率、债券等。这仅仅是一个示例。产品标签集合可以包括更多或更少的标签。根据不同的交易场景可以制定不同的产品标签集合。

图5描绘了根据本发明的一个实施例的术语库的示例。

如图5所示,术语库可以包括针对每一个产品标签的术语列表。例如,针对“汇率”标签,术语可以是外汇远期、外汇掉期、外汇期权。针对“债券”标签,术语可以是国债、金融债、企业债。这仅仅是一个示例。根据不同的交易场景可以制定不同的术语库。

返回参考图2。在步骤s203,将语音文本导入标注系统,并进行人工标注。

具体地,业务人员可以根据语音文本中的对话内容,用步骤s202指定的产品标签集合中的标签给每篇文本打标签,每篇文本可以打0-n个标签,在此,n是产品类别的总数目。

以图3所示的语音文本为例,可以打上“汇率”和“货币”2个标签。

继续参考图2。在步骤s204,对语音文本进行预处理。预处理可以包括,但不限于,以下操作。

(1)删除语音文本中区分对话双方的符号。

(2)删除语音文本中由于口语或噪音问题造成的重复字符,比如“嗯嗯嗯嗯嗯好的”中的前四个“嗯”。

(3)将英文字符统一转换为小写形式。

(4)将步骤s202所产生的术语库融合为一个词库,添加到自定义词典中,例如中文分词组件jieba的自定义词典,并且对语音文本进行分词,例如使用jieba组件的精确模式对语音文本进行分词,以确保语音文本中出现的术语都可以被正确保留。以图3所示的语音文本为例,产品术语“购汇”和“存单”被保留。

(5)删除停用词,停用词可以包括标点符号和使用频率较高的语气助词、副词、介词、连接词等。因为停用词的功能极其普遍,而对于分析文本内容基本没有帮助,因此删除后可以节省存储空间并提高计算效率。

预处理的结果可以参考图6。

图6描绘了根据本发明的一个实施例的预处理结果的示例。

图6所示的示例是基于图3给出了语音文本。此处给出的仅仅是一个示例,本发明不限于此。预处理后的结果会因为产品术语库和停用词库的不同而产生差异。

返回参考图2。在步骤s205,通过语音相似度和语义相似度更新术语库。

此步骤可以减少因语音识别错误给文本分类带来的影响,帮助提高分类的准确度。具体操作如下:

(1)根据步骤s203标注的标签,将经过预处理后的语音文本归档到所属的标签文件夹,计算每个标签下所有分词的频率特征值,例如tf-idf值,按从大到小的次序排列,取前n个分词作为该标签的关键词,其中n为该标签下的文本个数。

(2)分别计算各标签下关键词与对应产品术语库中词语的语音相似度,当相似度达到设定的阈值(阈值应根据语音识别的准确度来设定,可以与准确度成正比关系)时,将相应的关键词添加到其所属的产品术语库中。在此,例如可以使用dimsim中文soundex库来计算语音相似度。

(3)分别计算各标签下关键词与对应产品术语库中词语的语义相似度,当相似度达到设定的阈值(阈值应根据具体的业务场景来设定,若场景要求语音时规范使用术语,那么阈值应设置得高一些;反之可以适当调低)时,将相应的关键词添加到其所属的产品术语库中。在此,例如可以使用synonyms中文近义词工具包来计算语义相似度。

接下来,在步骤s206,将标注好且经过预处理的语音文本划分为训练集和测试集,并训练多标签分类模型。例如,可以使用sklearn机器学习工具包进行训练。对于使用sklearn机器学习工具包训练的情况,可以如下进行操作:

(1)使用sklearn中的tfidfvectorizer方法对训练集进行向量化处理。

(2)使用sklearn中的multilabelbinarizer方法对标签进行二值化转换。

(3)定义评估函数来衡量预测结果,在样本数据分布不均匀时,参数accuracy(准确率)不能反映模型的实际表现,可以采用综合评价指标f-score进行评估。f-score是precision(精确率)和recall(召回率)的加权调和平均:当a>1时精确率更重要,a<1时召回率更重要,a=1时二者一样重要。可以根据实际需求确定a的值,本发明可以采用f1-score作为评价指标。

(4)使用sklearn中的线性支持向量机模型和onevsrestclassifier策略,并通过gridsearchcv函数自动调参,训练得到最优模型。

(5)使用测试集进行模型性能和分类能力评估。

接下来,在步骤s207,获取新的语音文本,进行标签预测。具体操作如下:

(1)按照步骤s204对新获取的语音文本进行预处理。

(2)分别将每篇文本的分词集合与每个产品术语库做交集运算,若交集不为空,则打上相应产品的标签;若交集为空,则不打标签。此步骤结束后,每篇文本得到其对应的第一标签集合。

(3)使用步骤s206训练得到的模型对每篇文本进行预测,得到其对应的第二标签集合。

(4)将每篇文本的第一标签集合与第二标签集合做并集运算,得到其最终对应的标签集合结果。

以上结合图2-6描述了根据本发明的实施例的用于语音识别文本多标签分类的方法。

根据另一个实施例,本发明还包括一种用于执行语音识别文本多标签分类方法的装置。

图7描绘可以用于执行语音识别文本多标签分类方法的装置700的一个实施例。

装置700可以包括中央处理单元(cpu)701,其可以根据存储在只读存储器(rom)702中的程序或者从存储部分708加载到随机访问存储器(ram)703中的程序而执行各种适当的动作和处理。在ram703中,还存储有系统700操作所需的各种程序和数据。cpu701、rom702以及ram703通过总线704彼此相连。输入/输出(i/o)接口705也连接至总线704。

以下部件连接至i/o接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。

特别地,根据本发明公开的实施例,上文参考图2-6描述的方法可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(cpu)701执行时,执行本发明的系统中限定的上述功能。

本发明通过对语音文本进行充分的预处理,去除不必要的噪音干扰;并且在分词时加入与标签相关性强的自定义词典,确保文本关键特征完整保留;此外,还使用语音相似度进行词语纠错,以及使用语义相似度挖掘更多标签相关的术语;最后将基于关键词抽取的第一标签结果集、基于预测的第二标签结果集相结合,得到多标签分类结果。相比于现有技术,本发明针对语音文本噪音较多的特点,在多个环节做了优化处理,确保最终的分类模型能够更好地学习到关键特征,取得更优的分类效果。

可以以其他特定形式实践实施例。所描述的实施例在所有方面都应被视为仅是说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是前面的描述来指示。在权利要求的含义和等同范围内的所有变化都包含在其范围内。

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

tips