一种5G移动业务产品名称识别方法及系统

文档序号:26263577发布日期:2021-08-13 19:15阅读:82来源:国知局
一种5G移动业务产品名称识别方法及系统
本发明涉及自然语言处理领域,特别是涉及一种5g移动业务产品名称识别方法及系统。
背景技术
:随着移动互联网的发展,越来越多的设备接入到移动网络中,新的服务和应用层出不穷,全球移动宽带用户在2018年已经达到90亿,2020年,移动通信网络的容量相比2017年的网络容量上已经增长1000倍。移动通信服务质量已经成为通信行业发展水平评价的一个标准。为了提高移动通信服务质量,在用户群体中深度推广5g技术,需要基于移动5g套餐办理类来话文本,挖掘客户对移动业务产品的倾向度,作为客服人员营销推荐方式考察,并构建开口监控和话术识别推荐系统。因此,移动业务产品名称识别是开口监控和话术识别推荐系统的第一步。命名实体识别(nameentityrecognition,ner)又称专名识别,是自然语言处理(naturallanguageprocessing,nlp)中的一项基础任务。命名实体一般指文本中具有特定意义或指代性强的实体,通常包括人名、地名、组织机构名、日期时间、专有名词等。ner系统就是从非结构化的输入文本中抽取出上述实体,并且可以按照业务需求识别出更多类别的实体。命名实体识别已经开展了多年并且取得一定的成果。早期研究的主要在于基于字典和规则的传统识别,后来到传统机器学习方法,传统机器学习方法模型有隐马尔可夫模型(hiddenmarkovmodel,hmm)、条件随机场模型(conditionalrandomfield,crf),crf是目前中主流模型之一,优点在于其为一个位置进行标注的过程中可以利用丰富的内部及上下文特征信息,但是只适用于数据量小的场景,并且过于依赖人工标注。近年来,深度学习和半监督学习成为人工智能领域的热潮,递归神经网络(recurrentneuralnetwork,rnn)和卷积神经网络(convolutionalneuralnetwork,cnn)也逐渐成为命名实体识别的主流模型,它们主要处理方式类似,将词或字从离散独热编码表示,映射到低维空间中,成为稠密的特征嵌入,随后将句子的特征嵌入序列输入到rnn或cnn中,用神经网络自动提取特征,然后经过归一化函数(softmax)来预测每个词或字的标签。但是,基于rnn或者基于cnn方法使得模型的训练成为一个端到端的过程,对参数设置依赖大,模型可解释性差。此外,这种方法的一个缺点是对每个词或字打标签的过程是独立的进行,不能直接利用上文已经预测的标签(只能靠隐含状态传递上文信息),进而导致预测出的标签序列可能是无效的。移动业务产品名称识别,属于命名实体识别领域的技术,应用在移动业务场景下。现有的数据集为移动5g套餐办理类来话文本,数据集容量大,且存在来话记录不完整、移动业务产品名称占数据集总体比重低等文本质量不高的问题。基于crf的移动业务产品名称识别模型依赖人工标注,对现有数据未涵盖的移动业务产品名称识别效果低;基于rnn的移动业务产品名称识别模型,只通过特征学习识别移动业务产品名称,但无法高效地利用上下文信息,导致识别的准确率低。技术实现要素:本发明的目的是提供一种5g移动业务产品名称识别方法及系统,能够高效率地进行移动业务产品名称识别。为实现上述目的,本发明提供了如下方案:一种5g移动业务产品名称识别方法,包括:获取5g套餐办理类的通话文本;所述通话文本包括:通话内容、通话流水号以及文本类型;对所述通话内容进行预处理,构建单元化数据集;所述预处理包括:删除标记号以及数据分割;获取标准移动业务产品名称集;并对标准移动业务产品名称集进行口语化处理,构建最简移动业务产品集合;所述标准移动业务产品名称集为基于移动官方标准制定名称;根据所述最简移动业务产品集合确定过滤阈值;根据所述标准移动业务产品名称集确定单元切割阈值;利用所述过滤阈值、所述单元切割阈值对所述单元化数据集进行过滤以及切割,确定处理后的数据集;对所述处理后的数据集进行标注,并随机抽样,进而根据随机抽样的数据集确定训练集和测试集;利用所述训练集训练由双向长短期记忆神经网络模型与条件随机场模型组成的双向lstm+crf模型;根据所述处理后的数据集,利用训练后的双向lstm+crf模型,确定移动业务产品名称识别结果集;并根据所述移动业务产品名称识别结果集构建移动业务产品名称字典;所述构建移动业务产品名称字典的字典键为标准移动业务产品名称集中的元素,字典值为移动业务产品名称识别结果集。可选地,所述根据所述最简移动业务产品集合确定过滤阈值;根据所述标准移动业务产品名称集确定单元切割阈值,具体包括:根据所述最简移动业务产品集合确定所有元素的最小长度;根据所述最小长度确定所述过滤阈值;根据标准移动业务产品名称集确定所有元素的最大长度;根据所述最大长度确定所述单元切割阈值;对所述单元化数据集进行抽样,并利用抽样后的数据集对所述过滤阈值以及所述单元切割阈值进行校验和固定。可选地,所述利用所述过滤阈值、所述单元切割阈值对所述单元化数据集进行过滤以及切割,确定处理后的数据集,具体包括:获取所述单元化数据集中第i单元的数据变量以及对应的变量长度;判断所述第i单元的数据变量的变量长度与所述过滤阈值、所述单元切割阈值的大小关系,得到判断结果;若所述判断结果为所述变量长度大于所述单元切割阈值,则基于符号集对所述第i单元的数据变量进行切割,确定切割后的数据变量以及切割后的变量长度;若所述切割后的变量长度大于等于所述过滤阈值且小于等于所述单元切割阈值,则将切割后的数据变量加入处理后的数据集中;若所述判断结果为所述变量长度大于等于所述过滤阈值且小于等于所述单元切割阈值,则将数据变量加入处理后的数据集中;若所述判断结果为所述变量长度小于所述过滤阈值,则判断第i+1单元的数据变量;直至历遍所述单元化数据集中所有的数据变量。可选地,所述利用所述训练集训练由双向长短期记忆神经网络模型与条件随机场模型组成的双向lstm+crf模型,具体包括:对所述训练集中的标注序列根据不同字符出现的次数降序排列,构建字符字典;对所述字符字典中全部字符按照正态分布随机采样,构成字符特征向量;根据所述字符特征向量构建字符特征向量字典;根据所述构建字符特征向量字典,确定所述训练集的特征序列;根据所述特征序列确定所述双向lstm+crf模型的发射分数矩阵;根据所述的发射分数矩阵确定标注状态转移矩阵。可选地,所述利用所述训练集训练由双向长短期记忆神经网络模型与条件随机场模型组成的双向lstm+crf模型,之后还包括:利用所述测试集对所述双向lstm+crf模型进行测试。可选地,所述根据所述处理后的数据集,利用训练后的双向lstm+crf模型,确定移动业务产品名称识别结果集;并根据所述移动业务产品名称识别结果集构建移动业务产品名称字典,具体包括:将所述移动业务产品名称识别结果集加入到jieba分词库中,利用所述jieba分词库对所述处理后的数据集进行分词,得到词集;利用word2vec中的负采样cbow模型,提取词集内各个词语之间的相关性;并根据所述相关性确定词向量;从所述移动业务产品名称识别结果集中确定所述标准移动业务产品名称集中每个元素的代替词;以所述代替词为簇心,基于余弦相似度公式,构建簇;将所述移动业务产品名称识别结果集中的元素加入到与其相关性最大的簇心所在簇之中,进而完成移动业务产品名称字典的构建。一种5g移动业务产品名称识别系统,包括:通话文本获取模块,用于获取5g套餐办理类的通话文本;所述通话文本包括:通话内容、通话流水号以及文本类型;单元化数据集构建模块,用于对所述通话内容进行预处理,构建单元化数据集;所述预处理包括:删除标记号以及数据分割;最简移动业务产品集合确定模块,用于获取标准移动业务产品名称集;并对标准移动业务产品名称集进行口语化处理,构建最简移动业务产品集合;所述标准移动业务产品名称集为基于移动官方标准制定名称;阈值确定模块,用于根据所述最简移动业务产品集合确定过滤阈值;根据所述标准移动业务产品名称集确定单元切割阈值;处理后的数据集确定模块,用于利用所述过滤阈值、所述单元切割阈值对所述单元化数据集进行过滤以及切割,确定处理后的数据集;训练集和测试集确定模块,用于对所述处理后的数据集进行标注,并随机抽样,进而根据随机抽样的数据集确定训练集和测试集;训练后的双向lstm+crf模型确定模块,用于利用所述训练集训练由双向长短期记忆神经网络模型与条件随机场模型组成的双向lstm+crf模型;移动业务产品名称字典确定模块,用于根据所述处理后的数据集,利用训练后的双向lstm+crf模型,确定移动业务产品名称识别结果集;并根据所述移动业务产品名称识别结果集构建移动业务产品名称字典;所述构建移动业务产品名称字典的字典键为标准移动业务产品名称集中的元素,字典值为移动业务产品名称识别结果集。可选地,所述阈值确定模块具体包括:最小长度确定单元,用于根据所述最简移动业务产品集合确定所有元素的最小长度;过滤阈值确定单元,用于根据所述最小长度确定所述过滤阈值;最大长度确定单元,用于根据标准移动业务产品名称集确定所有元素的最大长度;单元切割阈值确定单元,用于根据所述最大长度确定所述单元切割阈值;阈值校验和固定单元,用于对所述单元化数据集进行抽样,并利用抽样后的数据集对所述过滤阈值以及所述单元切割阈值进行校验和固定。可选地,所述处理后的数据集确定模块具体包括:切割前的数据变量参数获取单元,用于获取所述单元化数据集中第i单元的数据变量以及对应的变量长度;判断单元,用于判断所述第i单元的数据变量的变量长度与所述过滤阈值、所述单元切割阈值的大小关系,得到判断结果;切割后的数据变量参数确定单元,用于若所述判断结果为所述变量长度大于所述单元切割阈值,则基于符号集对所述第i单元的数据变量进行切割,确定切割后的数据变量以及切割后的变量长度;处理后的数据第一确定单元,用于若所述切割后的变量长度大于等于所述过滤阈值且小于等于所述单元切割阈值,则将切割后的数据变量加入处理后的数据集中;处理后的数据第二确定单元,用于若所述判断结果为所述变量长度大于等于所述过滤阈值且小于等于所述单元切割阈值,则将数据变量加入处理后的数据集中;迭代单元,用于若所述判断结果为所述变量长度小于所述过滤阈值,则判断第i+1单元的数据变量;直至历遍所述单元化数据集中所有的数据变量。可选地,所述训练后的双向lstm+crf模型确定模块具体包括:字符字典确定单元,用于对所述训练集中的标注序列根据不同字符出现的次数降序排列,构建字符字典;字符特征向量确定单元,用于对所述字符字典中全部字符按照正态分布随机采样,构成字符特征向量;字符特征向量字典构建单元,用于根据所述字符特征向量构建字符特征向量字典;特征序列确定单元,用于根据所述构建字符特征向量字典,确定所述训练集的特征序列;发射分数矩阵确定单元,用于根据所述特征序列确定所述双向lstm+crf模型的发射分数矩阵;标注状态转移矩阵确定单元,用于根据所述的发射分数矩阵确定标注状态转移矩阵。根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明所提供的一种5g移动业务产品名称识别方法及系统,利用所述过滤阈值、所述单元切割阈值对所述单元化数据集进行过滤以及切割,确定处理后的数据集,提高有效数据容量占文本容量的比重,并为数据的序列标注做准备。对所述处理后的数据集进行标注,并随机抽样,进而根据随机抽样的数据集确定训练集和测试集,从训练集中挖掘移动业务产品与标注之间的潜在关系;利用所述训练集训练由双向长短期记忆神经网络模型与条件随机场模型组成的双向lstm+crf模型,并根据识别结果构建移动业务产品名称字典,本发明通过特征学习,识别移动业务产品名称,并对识别结果进行建模,利用上下文信息对结果重新计算。相比crf、rnn模型及其他所述方法,本模型具有更高的预测率。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明所提供的一种5g移动业务产品名称识别方法流程示意图;图2为本发明所提供的一种5g移动业务产品名称识别方法的技术路线图;图3为本发明所提供的实施例中标注的形式示意图;图4为本发明所提供的实施例中模型的结构示意图;图5为本发明所提供的实施例中移动业务产品名称字典示意图;图6为本发明所提供的一种5g移动业务产品名称识别系统结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明的目的是提供一种5g移动业务产品名称识别方法及系统,能够高效率地进行移动业务产品名称识别。为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。图1为本发明所提供的一种5g移动业务产品名称识别方法流程示意图;图2为本发明所提供的一种5g移动业务产品名称识别方法的技术路线图,如图1和图2所示,本发明所提供的一种5g移动业务产品名称识别方法,包括:s101,获取5g套餐办理类的通话文本;所述通话文本包括:通话内容、通话流水号以及文本类型;通话文本sn×3={d,f,e},d={d0,d1,...,dn},其中di(1≤i≤n)代表文本的通话内容,即5g套餐办理类来话记录内容;f={f0,f1,...,fn},其中fi(1≤i≤n)代表通话流水号,即5g套餐办理类来话记录编号;e={e0,e1,...,en},其中ei(1≤i≤n)代表文本类型,即5g套餐办理类最终办理情况。s102,对所述通话内容进行预处理,构建单元化数据集;所述预处理包括:删除标记号以及数据分割;针对d中每一行文本数据以“||”作为分隔符,并通过标记号记录说话对象及序号,如“0001-客服:”、“0002-客户:”。以d中各句子为单元,删除标记号,构建数据集,并输出结果s'。s103,获取标准移动业务产品名称集;并对标准移动业务产品名称集进行口语化处理,构建最简移动业务产品集合;所述标准移动业务产品名称集为基于移动官方标准制定名称;口语化处理基于移动公司提供的5g套餐办理类来话文本标注规则,其中,移动公司提供的5g套餐办理类来话文本标注规则如下:规则一:当出现移动业务产品名称词,以其最简价格缩写为最简表达形式。例如,“一百二十八元五g套餐”最简表达形式为“一二八”、“幺二八”;“七十八元套餐”最简表达形式为“七十八”。规则二:当移动业务产品名称词中包含“幺”时,均以“一”表述。规则三:当移动业务产品名称词中包含“5记”、“5际”、“5计”、“5季”、“5寄”等表达形式,均用“5g”表述。规则四:当表达主体为移动业务产品名称,表达形式存在错误时(如:同音错误:“5g智享套餐”,表达形式为“5g只想套餐”),均用对应业务产品名称表述。规则五:当数字“一百二十八”、“一百五十八”、“一百九十八”、“二百三十八”、“二百九十八”、“三百九十八”、“五百九十八”、“一百六十九”、“二百六十九”、“三百六十九”、“五百六十九”、“八百六十九”单独存在时,不与量词连接(如“元”、“g”、“分钟”、“条”等等),所述数字均用移动业务产品名称表述。规则六:当规则五以外数字单独存在时,如“十”、“五百”、“一千”等数字,需要根据实际语义判断是否为移动义务产品名称。构建最简移动业务产品集合m过程如下:(1.2.1)采集标准移动业务产品名称集y(标准移动业务产品名称基于移动官方标准制定)。(1.2.2)初始化m。(1.2.3)从y中取出一个元素y',基于规则一至规则六,确定其在口语描述中的最简表达形式集合y',y'={y'1,y'2,y'3...}。(1.2.4)将集合y'加入到集合m。(1.2.5)若y为空,输出结果m,执行完毕;否则,执行步骤(1.2.3)s104,根据所述最简移动业务产品集合确定过滤阈值;根据所述标准移动业务产品名称集确定单元切割阈值;过滤阈值小于切割阈值。s104具体包括:根据所述最简移动业务产品集合确定所有元素的最小长度;根据所述最小长度确定所述过滤阈值;根据标准移动业务产品名称集确定所有元素的最大长度;根据所述最大长度确定所述单元切割阈值;对所述单元化数据集进行抽样,并利用抽样后的数据集对所述过滤阈值以及所述单元切割阈值进行校验和固定。即,以α作为s'预处理的过滤阈值,β作为单元切割阈值,q={。,?,!,……,,}作为单元切割符号集。基于m和y初始化α、β,计算得到m中所有元素的最小长度为l1、y中所有元素的最大长度为l2,令α为2l1,β为2l2(α>0,β>0,α<β),输出α、β。具体的校验和固定过程为:α,β进行抽样校验。在s'={s1',s2',s3'...}中,定义:条件一:len(si')≤α;条件二:len(si')>β;使得满足条件一的si'不包含m中元素;满足条件二的si'完成切割后,各部分长度都小于β。抽样校验步骤如下:(1.4.1)从1到n(n由s'单元总数决定)生成0.1*n个元素的随机数集合ξ,并设置递增操作和递减操作的变化量为1。(1.4.2)读取s'中第i(i∈ξ,1≤i≤n)单元的数据为变量xi,xi长度为变量li。(1.4.3)li与α,β判断:若li>β,则xi基于符号集q切割,切割结果记录为变量其长度为变量若则β递增,执行步骤(1.4.1)。若且包含m中元素,则α递减,执行步骤(1.4.1)。若li≤α,且xi包含m中元素,则α递减,返回执行步骤(1.4.1)。本步骤完成后,若α>0,输出α、β并执行步骤s105;否则跳过s105,并使得s”=s'。s105,利用所述过滤阈值、所述单元切割阈值对所述单元化数据集进行过滤以及切割,确定处理后的数据集;s105具体包括:获取所述单元化数据集中第i单元的数据变量以及对应的变量长度;判断所述第i单元的数据变量的变量长度与所述过滤阈值、所述单元切割阈值的大小关系,得到判断结果;若所述判断结果为所述变量长度大于所述单元切割阈值,则基于符号集对所述第i单元的数据变量进行切割,确定切割后的数据变量以及切割后的变量长度;若所述切割后的变量长度大于等于所述过滤阈值且小于等于所述单元切割阈值,则将切割后的数据变量加入处理后的数据集中;若所述判断结果为所述变量长度大于等于所述过滤阈值且小于等于所述单元切割阈值,则将数据变量加入处理后的数据集中;若所述判断结果为所述变量长度小于所述过滤阈值,则判断第i+1单元的数据变量;直至历遍所述单元化数据集中所有的数据变量。作为一个具体的实施例,处理后的数据集确定的过程为:(1.5.1)初始化s”,读取s'中第i单元数据为变量xi(i=1,2,3,4...n),对应长度为变量li。(1.5.2)li与α,β判断:若li>β,则xi基于符号集q切割,切割结果记录为变量其长度为变量若则将加入s”。若α≤li≤β,则将xi加入s”。若li<α,则执行下一轮判断。(1.5.3)对s'中所有数据完成处理后,输出s”。s106,对所述处理后的数据集进行标注,并随机抽样,进而根据随机抽样的数据集确定训练集和测试集;s106具体包括:如图3所示,采用序列标注法,基于移动领域专家知识,划分移动业务产品类集合c={com,flow,call},其中:com表示移动业务套餐类、flow表示移动业务流量类、call表示移动业务通话类,标注符号如下表所示:表1标注符号注释表标注序号标注符号标注含义标注1b-com移动业务套餐类起始标注标注2i-com移动业务套餐类中间标注标注3b-flow移动业务流量类起始标注标注4i-flow移动业务流量类中间标注标注5b-call移动业务通话类起始标注标注6i-call移动业务通话类中间标注标注7o外部标注步骤如下:(2.1)读取s”前10000单元数据,记录为s”',s”'={si”'|i=1,2,3,...,10000},并初始化p1,p2。(2.2)从1至10000内生成3000个元素的随机数集合ξ'={ξi'|i=1,2,...,3000},并以此作为测试集数据的索引。(2.3)i=1→10000:如果则令p1=p1+si”';否则令p2=p2+si”';(2.4)对p1、p2进行标注,标注形式如以下表格所示,完成标注后将p1、p2输出:表2.序列标注形式示意表字符字符1字符2......字符6......标注标注1标注3......标注7......s107,利用所述训练集训练由双向长短期记忆神经网络模型与条件随机场模型组成的双向lstm+crf模型;所述模型的结构如图4所示。s107具体包括:对所述训练集中的标注序列根据不同字符出现的次数降序排列,构建字符字典;对所述字符字典中全部字符按照正态分布随机采样,构成字符特征向量;根据所述字符特征向量构建字符特征向量字典;根据所述构建字符特征向量字典,确定所述训练集的特征序列;根据所述特征序列确定所述双向lstm+crf模型的发射分数矩阵;根据所述的发射分数矩阵确定标注状态转移矩阵。训练过程如下:(3.1)实例化步骤2所得训练集p1,计算特征序列se:(3.1.1)实例化p1为z,对于z中字符,用变量ci表示,其中ci∈z,1≤i≤m,m由z字符个数确定,对于z中标注序列,用变量seqa表示。统计z中的字符,并根据不同字符出现的次数降序排列,构建字符字典w,其子单元结构为<字符c:字符id>,对w中全部字符按照正态分布(对应取值范围为[low,high))随机采样,构成字符特征向量uc,从而构建字符特征向量字典glove,<字符id:字符特征向量uc>。(3.1.2)加载glove,根据字符ci获取字符特征向量组成z的特征序列输出se。(3.2)以步骤(3.1)所得se为当前步骤的输入,计算κ的发射分数矩阵r':(3.2.1)初始化模型κ,其中κ由双向lstm层和crf层组成。将se作κ中双向lstm层的各个时间步的输入,计算隐状态序列h3,以单向lstm模型t时刻的输入为例,设时间状态输入步长为3,其中:st-1,st,st+1表示t-1,t,t+1时刻的输入,ht-1,ht,ht+1表示对应时刻输出的隐藏层结果,w表示权重矩阵,b表示偏置向量,在计算过程中由模型内部算法迭代更新,在本发明中不讲述如何更新迭代w和b。f(t)表示lstm模型遗忘门t时刻输出。其输入为前一时刻隐藏层状态ht-1和当前时刻输入信息st计算公式如下:f(t)=σ(wf×[ht-1,st]+bf)(3-1)其中wf表示遗忘门权重矩阵,bf表示遗忘门偏置向量,σ表示sigmoid激活函数。i(t)表示lstm模型记忆门t时刻输出,其输入为前一时刻隐藏层状态ht-1和当前时刻输入信息st,计算公式如下:i(t)=σ(wi×[ht-1,st]+bi)(3-2)其中wi表示遗忘门权重矩阵,bi表示遗忘门偏置向量,σ表示sigmoid激活函数。c(t)表示lstm模型t时刻细胞临时状态,其输入为前一时刻隐藏层状态ht-1和当前时刻输入信息st,计算公式如下:c(t)=tanh(wc×[ht-1,st]+bc)(3-3)其中wc表示细胞临时状态权重矩阵,bc表示细胞临时状态偏置向量,tanh表示tanh激活函数;c(t)表示lstm模型t时刻的细胞状态,其输入为t时刻遗忘门输出f(t)、t-1时刻的细胞状态c(t)、t时刻记忆门输出i(t)以及t时刻细胞临时状态c(t),其计算方式如下:c(t)=f(t)×c(t-1)+i(t)×c(t)(3-4)o(t)表示lstm模型t时刻的输出门结果,其输入为前一时刻隐藏层状态ht-1和当前时刻输入信息st,其计算方式如下:o(t)=σ(wo×[ht-1,st]+bo)(3-5)其中wo表示输出门权重矩阵,bo输出门偏置向量,σ表示sigmoid激活函数。结合以上结果,计算t时刻隐藏层结果h(t):h(t)=o(t)×tanh(c(t))(3-6)结合说明书附图3,将se分别输入到正向lstm、逆向lstm,分别得到正向隐状态序列h1=(h11,h12,h13,...,h1m)和反向隐状态序列h2=(h21,h22,h23,...,h2m),结合两种不同方向隐状态序列特征,将h1、h2按位置下标所对应的特征向量拼接,得到完整的隐状态序列h3,其中表示向量拼接操作,如h3为se输入双向lstm的输出隐藏层结果。(3.2.2)对h3进行过滤。将h3内每一个特征向量(1×k,其中k=2×len(uci))经过全连接层,输出的结果为k'长度(k'=7,为标注符号的类型数),从而得到rt,转置后得到r,r每一列表示字符ci对应7类标注的得分。根据softmax函数,对r如下处理,得到r':r'为z的发射分数矩阵,并将r'输出,结果如下:(3.3)以步骤(3.2)所得r'作为当前步骤的输入,固定模型κ的内部参数t':crf层的参数矩阵为标注状态转移矩阵t(k'×k')(k'表示所标注符号的个数),ti,j(i,j≤k')表示由标注i到标注j转移得分,t的初始化由crf模型完成,并且经过迭代后,最终确定t'。t'矩阵的优化过程如下实例所示:定义z为待观测序列,其长度为m。定义为z的预测标注序列候选集合,其中,k'为标注符号的个数,mk'表示由m个字符组成的序列z有mk'种标注序列,并对每种标注序列编号,编号范围为[1,mk']。定义r'为一次迭代中的crf层的输入,即步骤(3.2)所述双向lstm层的输出。定义seqa为z的实际标注序列,其中a∈{1,2,3,...,mk'}。ba为seqa标注序列得分,计算ba过程如下:定义seqv为编号为v的标注序列,其中v∈{1,2,3...,mk'},bv为seqv的标注序列得分,计算bv的方式如下:定义损失函数l:迭代过程中,根据损失函数l迭代优化t,当l达到最小值时,固定t'为:s107之后还包括:利用所述测试集对所述双向lstm+crf模型进行测试。测试过程如下:当t'固定好后,实例化测试集p2为z,令seqa为z的实际标注序列。按照步骤(3.1)所构建的w、glove字符特征向量字典,获取z的特征序列se。按照步骤(3.2)、步骤(3.3),计算z中标注序列编号为v(v=1,2,3,...,mk')的标注序列得分bv,令index为对应索引,将seqindex输出。按照以下公式,计算准确率,作为模型的准确率ε其中,θ为seqindex和seqa符号相同的个数,λ为seqindex和seqa符号不同的个数。通过损失函数l曲线调整模型超参数:batch_size、epoch、hidden_dim、lr、dropout概率,计算并比较不同模型的ε,以ε值最高模型的超参数作为模型κ的超参数。s108,根据所述处理后的数据集,利用训练后的双向lstm+crf模型,确定移动业务产品名称识别结果集;并根据所述移动业务产品名称识别结果集构建移动业务产品名称字典;所述构建移动业务产品名称字典的字典键为标准移动业务产品名称集中的元素,字典值为移动业务产品名称识别结果集。s108具体包括:将所述移动业务产品名称识别结果集加入到jieba分词库中,利用所述jieba分词库对所述处理后的数据集进行分词,得到词集;利用word2vec中的负采样cbow模型,提取词集内各个词语之间的相关性;并根据所述相关性确定词向量;在提取相关性的过程中,cbow模型将语料中各词语的语序特征加入到相关性计算,使得相关性计算结果能够反映语序关系(语序关系能够反映出同属一个标准移动业务产品名称下的所有具体业务套餐名称之间的语序距离,如5g智享一百二十八套餐包括五百分钟通话,两者的语序距离比5g智享一百二十八套餐与六百分钟通话的语序距离小);cbow模型将语料中各词语的语义特征加入到相关性计算,使得相关性计算结果能够反映语义关系(语义关系可由同义词之间的距离反映,如5g智享一百二十八套餐等同于一百二十八元套餐,两者的语义距离比5g智享一百二十八套餐与一百五十八元套餐的语义距离更小)。以相关性的计算结果训练w中所有词语的词向量。从所述移动业务产品名称识别结果集中确定所述标准移动业务产品名称集中每个元素的代替词;以所述代替词为簇心,基于余弦相似度公式,构建簇;余弦相似度公式为:其中correlationi,j表示词i与词j的相关性,qi表示词i的词向量,qj表示词j的词向量,||qi||表示词i的词向量长度,||qj||词j的词向量长度。correlationi,j越大表示两者更具有相关性。以所得的词向量,分别计算u中元素和υ中元素之间的correlation。将所述移动业务产品名称识别结果集中的元素加入到与其相关性最大的簇心所在簇之中,进而完成移动业务产品名称字典的构建,并如图5所示。作为一个具体的实施例,为体现本发明的发明效果,通过如下实施例进行说明:从**月5g套餐办理类来话文本获取数据源,文本中包括通话流水号、内容、文本类型等表项,按照表项读取数据,得到未经过处理数据集s。删除s中存在的标记号,按照分割符“||”对s进行分割,得到单元化数据集s',如下表所述:表3数据格式记录号记录内容1您好高兴您服务。2嗯嗯你好,......3呃,没有变。............从5g套餐文本标注规则中,获取标准移动业务产品名称集y,基于规则一到规则六,构建最简移动业务产品集合m。表4.最简移动业务产品集合示例表以α作为s'预处理的过滤阈值,β作为切割阈值,q={。,?,!,……,,}作为切割符号集。α,β初始化基于m和y,计算得到m中所有元素的最小长度为l1、y中所有元素的最大长度为l2,α=2l1,β=2l2(α>0,β>0)。在本次实例中,根据上表统计,得到l1=3,l2=12,初始化α=6,β=24(α>0,β>0)。产生随机数集合ξ,并对α,β进行校验,保证长度小于α的单元中不会出现m中元素,以及切割后所有单元的长度均小于β。本次实例固定的α=4,β=24。对s'中数据进行切割,切割完成后得到数据集s”。表5切割完成后得到数据集记录号记录内容1您好高兴您服务。2嗯嗯你好。3从我宏我问我呢我我......4而不是幺五八那个五g套餐吗?............基于移动领域专家知识,划分移动业务产品类c={com,flow,call},并按照表2标注符号的含义定义标注符号。加载数据集s”前10000条单元化数据,并初始化p1={},p2={};产生随机数集合ξ'(元素总个数为3000,范围在1至10000);从s”前10000条单元化数据读出以ξ'内元素为索引的数据,并加入到集合p2;剩余7000条已经加载的单元化数据加入到集合p1中;对p1、p2分别标注,标注结果如表6所示。表6标注数据示例表实例化p1为序列z,加载z中字符ci。构建的word2id.pkl,并对其全部字符按照正态分布随机采样,采样范围为[-0.25,0.25),初始化embedding_dim为300,构建字符特征向量字典glove,根据ci加载对应的字符特征向量,构成特征序列se,se如下表7所示:表7字符转向量示例表固定双向lstm和crf模型内部参数,详细数据变化过程在此不进行展开解释。最终固定r'和t'如下所示:根据固定的r'、t',计算z中标注序列编号为v(v=1,2,3,...,mk')的标注序列得分bv,令index为max{b1,b2,b3,...,bmk'}对应索引,将seqindex输出,并基于移动业务产品类c,对输出结果进行分类,得到以下结果:表8预测结果示例表按照下表调整模型超参数:表9不同超参数模型对不同模型的识别效果进行对比,最终将固定超参数为batch_size=128,epoch=80,hidden_dim=300,lr=0.01,dropout=0.1。构建移动业务产品名称字典ψ构建jieba分词库如下表所述:表10关键词库示例表基于word2vec,把关键词转换成词向量,对标准移动业务产品名称集所有元素,从关键词库中选出代表词,如下所示:表11标准移动业务产品名称的代表词列表计算关键词库中所有元素与代表词的距离,并且选择离其最近的代表词所在的簇并加入到该簇中。最终构建移动业务产品名称字典ψ如表12所示。表12移动业务产品名称字典与现有技术相比本发明具有的优点及积极效果(1)本发明将半监督深度学习的原理应用到移动业务场景上,进行5g移动业务产品名称识别,充分利用了移动5g数据的信息。(2)本发明通过序列标注、lstm及crf的方法能够更好地学习5g移动业务产品名称的特征,并以此构建了具有高准确率的移动业务产品名称识别模型,结果表明本方法具有较高的性能与效率。(3)本发明对于数据标注的工作量依赖小,效率高。本发明实例的数据量为10w,与crf模型相比,仅标注实例数据量的1%数据,识别的准确率高于crf模型识别的准确率。(4)针对未加入训练的移动业务产品名称,本发明能够予以识别,具有较强的泛化性能,将极有效应对移动业务领域后续需求和产品场景的增加。(5)本发明自动化程序高,可基于已构建的5g移动业务产品名称识别模型,对后续数据进行5g移动业务产品名称进行自动且精准地识别。(6)本发明同时能对后续移动需求,如“开口监控系统”和“话术识别推荐系统”提供有力支持。图6为本发明所提供的一种5g移动业务产品名称识别系统结构示意图,如图6所示,本发明所提供的一种5g移动业务产品名称识别系统,包括:通话文本获取模块601,用于获取5g套餐办理类的通话文本;所述通话文本包括:通话内容、通话流水号以及文本类型;单元化数据集构建模块602,用于对所述通话内容进行预处理,构建单元化数据集;所述预处理包括:删除标记号以及数据分割;最简移动业务产品集合确定模块603,用于获取标准移动业务产品名称集;并对标准移动业务产品名称集进行口语化处理,构建最简移动业务产品集合;所述标准移动业务产品名称集为基于移动官方标准制定名称;阈值确定模块604,用于根据所述最简移动业务产品集合确定过滤阈值;根据所述标准移动业务产品名称集确定单元切割阈值;处理后的数据集确定模块605,用于利用所述过滤阈值、所述单元切割阈值对所述单元化数据集进行过滤以及切割,确定处理后的数据集;训练集和测试集确定模块606,用于对所述处理后的数据集进行标注,并随机抽样,进而根据随机抽样的数据集确定训练集和测试集;训练后的双向lstm+crf模型确定模块607,用于利用所述训练集训练由双向长短期记忆神经网络模型与条件随机场模型组成的双向lstm+crf模型;移动业务产品名称字典确定模块608,用于根据所述处理后的数据集,利用训练后的双向lstm+crf模型,确定移动业务产品名称识别结果集;并根据所述移动业务产品名称识别结果集构建移动业务产品名称字典;所述构建移动业务产品名称字典的字典键为标准移动业务产品名称集中的元素,字典值为移动业务产品名称识别结果集。所述阈值确定模块604具体包括:最小长度确定单元,用于根据所述最简移动业务产品集合确定所有元素的最小长度;过滤阈值确定单元,用于根据所述最小长度确定所述过滤阈值;最大长度确定单元,用于根据标准移动业务产品名称集确定所有元素的最大长度;单元切割阈值确定单元,用于根据所述最大长度确定所述单元切割阈值;阈值校验和固定单元,用于对所述单元化数据集进行抽样,并利用抽样后的数据集对所述过滤阈值以及所述单元切割阈值进行校验和固定。所述处理后的数据集确定模块605具体包括:切割前的数据变量参数获取单元,用于获取所述单元化数据集中第i单元的数据变量以及对应的变量长度;判断单元,用于判断所述第i单元的数据变量的变量长度与所述过滤阈值、所述单元切割阈值的大小关系,得到判断结果;切割后的数据变量参数确定单元,用于若所述判断结果为所述变量长度大于所述单元切割阈值,则基于符号集对所述第i单元的数据变量进行切割,确定切割后的数据变量以及切割后的变量长度;处理后的数据第一确定单元,用于若所述切割后的变量长度大于等于所述过滤阈值且小于等于所述单元切割阈值,则将切割后的数据变量加入处理后的数据集中;处理后的数据第二确定单元,用于若所述判断结果为所述变量长度大于等于所述过滤阈值且小于等于所述单元切割阈值,则将数据变量加入处理后的数据集中;迭代单元,用于若所述判断结果为所述变量长度小于所述过滤阈值,则判断第i+1单元的数据变量;直至历遍所述单元化数据集中所有的数据变量。所述训练后的双向lstm+crf模型确定模块607具体包括:字符字典确定单元,用于对所述训练集中的标注序列根据不同字符出现的次数降序排列,构建字符字典;字符特征向量确定单元,用于对所述字符字典中全部字符按照正态分布随机采样,构成字符特征向量;字符特征向量字典构建单元,用于根据所述字符特征向量构建字符特征向量字典;特征序列确定单元,用于根据所述构建字符特征向量字典,确定所述训练集的特征序列;发射分数矩阵确定单元,用于根据所述特征序列确定所述双向lstm+crf模型的发射分数矩阵;标注状态转移矩阵确定单元,用于根据所述的发射分数矩阵确定标注状态转移矩阵。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1