基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx

上传人:b****8 文档编号:29768138 上传时间:2023-07-26 格式:DOCX 页数:8 大小:22.13KB
下载 相关 举报
基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx_第1页
第1页 / 共8页
基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx_第2页
第2页 / 共8页
基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx_第3页
第3页 / 共8页
基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx_第4页
第4页 / 共8页
基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx

《基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx》由会员分享,可在线阅读,更多相关《基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx(8页珍藏版)》请在冰豆网上搜索。

基于NLP技术在运维自动化领域构建智能问答模型的探索与实践.docx

基于NLP技术在运维自动化领域构建智能问答模型的探索与实践

 

基于NLP技术在运维自动化领域构建智能问答模型的探索与实践

 

本文主要阐述了农业银行针对运维自动化领域内的运营质量提升场景开展的基于NLP技术的工程实践,一是结合该领域现有经验与知识构建FAQ知识库并实现检索型自动问答模型,通过问答系统评价指标验证该模型的可用性及可扩展性;二是基于NLP技术探索构建“运维+运营”的智能知识库闭环,通过深入挖掘当前应用运维自动化运营的推广痛点,进一步了解用户的普遍运维需求和产品改进方向。

 

近年来,随着数字化转型战略的逐步深入,农业银行对安全生产运维的智能化、数字化水平也提出了更高要求,并按照一体化运维“统一规划、场景驱动、敏捷迭代”的实施原则,持续推动应用运维向数据驱动、面向场景的智能化运营转型。

尤其是2020年以来,智能运维平台不仅较好地完成了全年的运营推广目标,同时在面向研发中心的全面推广过程中,也收到了来自研发中心官方在线问答平台用户提问工单、智能运维平台用户反馈流程、变更非自动化原因反馈等多种渠道的用户意见或建议。

为实现平台持续优化的发展目标,农业银行研发中心引入NLP文本训练相关机器学习技术,构建适用于运维自动化领域的智能问答模型,面向运营质量提升场景展开了应用实践,并希望能为同业开展运维自动化领域的技术运营推广工作提供可借鉴的解决思路和开发参考。

一、基于NLP的智能运维问答模型

建设实践

当前,农业银行的智能运维平台在应用监控、应用操作、应用交付和日志查询等领域均提供了丰富的自动化运维场景,可高效支持各类应用系统的接入和使用。

然而,面对行内超过500个应用系统、800个应用模块的运维非功能性接入和使用需求,各模块技术运营人员平均一个工作日需受理约10个用户反馈工单以及来自至少5位项目组同事的运维自动化邮件和咨询电话,占用了运营人员较多的日常工作时间。

为解决以上问题,农业银行研发中心在运维自动化领域构建了一个基于问答对的FAQ自动问答系统,即当用户将问题提交至自动问答系统,问答系统会根据问题从FAQ中寻找最相似的“问题-答案”对,并将找到的答案返回给用户,其中的经典应用场景包括智能语音交互、在线客服、知识获取、情感类聊天等。

实践中,项目组主要采用了检索型问答系统来构建运维自动化领域的智能问答模型。

1.构建问答语料库

在模型构建阶段,项目组首先构建了应用监控领域与平台基础功能相关的常用问答库,共包含113个常见问题,其中应用监控领域(性能监控、心跳监控、全链路健康、告警配置等)92个、基础功能相关(登录问题、应用配置等)21个。

同时,在知识库中为每个问题配备了2种答案:

答案1为直接答案,即根据问题得出的最直接的文本回答;答案2为知识库中的相关页面,即当问题所对应的答案涉及多方面知识或需要图文解说时,答案2将直接返回知识库中的某个具体页面地址,并在该地址页面中提供详尽的解释与介绍。

在此基础上,为进一步评价自动问答系统模型的实验效果,项目组选取2020年共约500个应用监控、基础服务领域的用户反馈工单纯文本信息作为训练数据集,根据原始的用户提问和工单受理人的最终回答,在FAQ知识库中标注了最相似的问题编号。

2.文本预处理

实践中,由于训练集中存在较多换行符、空格、标点符号、数字等无关信息,因此需要对这类信息进行过滤。

在此过程中,项目组在对文本进行初步过滤后,根据Jieba库的精确切割模式对用户反馈工单提问进行了中文分词,并过滤掉了停用词和长度小于2的词,以减少无效信息干扰因素。

此外,还针对行内某些敏感信息(如服务目录编号、身份证号码等)进行了区分识别,同时对文本处理过程中的无效实体信息进行过滤。

3.搭建问答系统模型

根据领域专业性和实际应用场景,由于不存在聊天对话需求,也不需要系统为用户执行某项特定任务,因此项目组尝试搭建了一个检索式问答系统,即用户提出一个特定问题Query,将由问答系统模型去FAQ知识库中找到最相似的问题对应答案返回给用户(如图1所示)。

图1问答系统模型构建过程

上述过程中,关键点在于如何根据用户提出的问题匹配到FAQ知识库中最相似的问题,从而得出用户想要的答案。

对此,借鉴NLP领域内可近似为文本相似度计算的各种技术,项目组主要采用了两种句向量编码模型和两种文本相似度方法来计算用户提问与FAQ中问题的相似度。

(1)句向量模型

词袋模型(bag-of-words)是一种传统的句向量编码方式,即不考虑文本中词与词之间的上下文关系,仅从词的权重(词在文本中出现的频率)考虑将所有词语装入一个袋子中,且每个词相对独立。

BERT模型是近几年较为流行的编码方式,具体实现方式通常是两个连续的句子开始和结束打上符号,两句之中打上分隔符,反例的生成则采用类似于Word2vec的负采样。

对于中文来说,相比于传统的分词预处理技术,BERT采用的是“分字”方法,即将每一个汉字都切开处理(如图2所示)。

图2BERT模型编码方式

(2)文本相似度计算方法

针对以上两种句向量编码模型,项目组采用了2种不同的文本相似度计算方法来评估文本的相似性。

第一种是TF-IDF方法,针对词袋模型分词后的结果,依据“在一段文本内出现频率高的词或短语,如在其他文章中很少出现则认为具有较好的类别区分能力”的核心概念,对句子计算其TF-IDF值,得到与问题集规模同等的相似度矩阵,这种方法的本质是文本分类。

第二种方法为余弦相似度计算,是一种典型的文本相似度计算方法。

余弦相似度主要指通过计算两个词向量的夹角余弦值来评估他们的相似度。

首先,需要将两个待比较的文本信息转换为稀疏向量集,再基于一个向量空间中两个向量夹角的余弦值,来衡量两个个体之间差异的大小。

通常,会将1设为相同,0设为不同,则所有文本信息的相似度范围都会在0~1之间。

结合上述方法,在完成文本相似度匹配计算后将得到一个Query对应FAQ所有问题的相似度列表,考虑目前的FAQ问题数量较少,因此项目组采用了传统的堆排序算法,即返回前k个最相似的问题索引编号,其中k值大小可自行定义。

以余弦相似度的文本匹配算法为例,通过遍历训练集中所有问题,逐一与FAQ知识库中的问题文本进行比较,每个问题取TOP前k个最相似问题返回给用户。

二、智能运维问答系统模型

调优路径

在模型调优阶段,鉴于数据量的性能消耗及容量消耗较小,因此模型调优的方向主要集中在文本信息优化方面,即通过观察文本信息,过滤提问句子中与问题无关的冗余信息,并选择最合适的分词模式对句子进行精准切割。

1.文本信息优化

在用户提问中,通常会带有一些与问题无关的信息,如停用词、用户名、英文账号、纯数字、英文报错信息、系统编号等,此类信息往往与用户实际想问的问题无关。

对此,在文本信息的分词处理阶段,可以通过过滤这些无关信息使用户提问更有针对性,如借助以下文本过滤手段优化文本质量:

一是过滤分词长度小于2的词;二是过滤纯数字;三是过滤纯英文,不分大小写,但保留部分具有特定含义的英文短语;四是过滤纯英文与数字的组合;五是过滤停用词。

最后,在评估最终效果时,即可通过控制上述几个过滤条件来寻找最优的文本相似度模型。

2.词频权重优化

在TF-IDF(词频-逆向文档频率)算法中,TF是词频,IDF是逆向文档频率,如果包含词条t的文档越少,则IDF越大,说明词条t具有更好的类别区分能力。

在文本的预处理阶段,为突出一些领域内专业词(如“全链路监控”“生死指标”)的重要性,可基于该算法在分词阶段首先进行用户自定义词典加载,并设置较高的权重值,确保这些词在分词时不会被进一步切割。

同时在构建词向量时,当出现一些领域内具有较好区分能力的词时,也可根据TF-IDF的主要思想调整其词语权重,并将其设置为低于其他词的词语权重。

3.用户提问抽象化

在用户反馈工单中,原始的用户提问具有非常丰富的多样性,如某些提问内容中往往包含了详细的问题描述、报错信息和主观描述。

但是,由于反馈工单填写内容通常较为详细,导致其与智能问答系统“短、平、快”的用户需求存在较大差异;此外,工单文本内容往往也较为庞杂,较难有效提炼出用户真正想要提问的问题。

对此,为更好地利用工单文本对智能问答实验模型进行调优,项目组采取人工方式优化了用户的原始提问文本,将原先较长、较复杂的文本信息进行提炼和简化,以使其更符合智能问答场景下用户可能提问的形式与内容,用以与原始的文本信息实验结果进行参照对比。

4.问答系统效果评价

对于基于FAQ问答对构建的问答系统,项目组采用的评测方法主要包含了平均排序倒数与准确率两个维度,并对采用不同问答模型的相似度计算方法(“词袋模型+TF-IDF”“词袋模型+余弦相似度”“BERT+余弦相似度”)进行了效果对比。

(1)平均排序倒数

平均排序倒数(MeanReciprocalRank,MRR)是一个国际上通用的对搜索算法进行评价的机制,即将第一个结果匹配分数设置为1,第二个匹配分数设置为0.5,第n个匹配分数为1/n,如果没有匹配的句子则分数为0。

最终的分数为所有得分之和。

公式如下:

评价结果显示,对于传统的相似度模型计算方法,分词模式采用搜索引擎模式、过滤停用词的后评价效果最佳,MRR可达到48.8%。

而在BERT模型中对句子的连贯性有一定要求,因此精确模式的分词效果最理想。

此外,当对问题进行抽象化概括后,结果显示MRR有了明显的提升,传统相似度算法和BERT模型在抽象化后均可达到80%以上。

(2)准确率

准确率(Precision,P)一般用于度量问答模型返回最相似问题与训练集已标注问题的正确情况。

实践中,问答模型将返回用户一组最为相似的问题,即提供给用户有限个数的相似问题供用户选择,且训练集中已标注的问题编号唯一。

准确率的判断公式如下:

其中,n为训练集用户提问个数。

实践中,difflib、TF-IDF和余弦相似度模型均采用了精确分词模式,BERT模型则采用搜索引擎模式。

评价结果显示,在未对原始用户反馈工单进行抽象概括的前提下,问答模型在TF-IDF相似度算法下的表现最好,取前5个最相似问题为输出答案时准确率可达到62.3%;当问题抽象化概括后,取前5个最相似问题的准确率可达92.3%。

三、智能运维问答模型的应用成效

基于用户反馈的智能运维知识库可看作是运维自动化领域知识不断积累和更新的工作站,用户反馈工单和智能运维平台的用户意见反馈更是了解用户关注点、提升技术运营服务水平的重要窗口。

基于此,项目组针对应用运维运营质量提升场景,以“运营+运维”知识库建设作为事实基础,以NLP文本理解、文本相似度算法作为技术手段,输出在线问答(客服)技术运营服务,并在数据集上采用NLP文本特征提取模型及余弦相似度计算进行了效果评估。

最终结果表明,智能运维问答模型在平均排序倒数、准确率等评价指标上均取得了较好的表现,不仅实际验证了上述模型的有效性,而且对于提升应用运维运营推广工作质量也有着十分重要的现实意义。

相应地,在智能客服投入使用后,基于用户的广泛提问,沉淀、提炼出了大量新知识点反哺到行内官方知识库中,最终结合运营质量评价、工单受理效率与回答质量构建了“运维+运营”的智能知识库闭环(如图3所示)。

图3“运维+运营”知识库闭环

四、总结与展望

1.智能问答模型建设经验

针对专业领域的知识库构建是一项非常基础且重要的工作,构建初期通常由该领域专家人工构建知识库原型;后续,随着问答对在实际应用场景中不断积累,还可采用辅助的文本处理手段不断更新迭代问答对。

与常见的智能问答系统数据集(在线看诊、商品导购咨询等)不同,如应用运维自动化等特定领域的智能问答模型没有现成的数据集可复用。

对此,本文基于用户反馈工单构成的FAQ知识库,不仅可以共享给行内其他系统用于探索NLP智能问答模型建设,也积累了真实可用的FAQ知识库构建经验。

此外,在面向专业领域的用户提问纯文本预处理阶段,本文除了采用传统的处理方法,还提供了可参考的运维自动化领域专业术语的定义和面向实体信息识别的实践经验。

一是在中文分词时,可提前设置预定义的用户词典,帮助系统在分词过程中保留下专业术语,如“持续交付”“心跳监控”等;二是在实体识别时,应注意对行内某些敏感信息(如服务目录编号、身份证号码等)实体进行识别,同时对文本处理过程中的无效实体信息进行过滤。

2.常见文本处理算法的比较

实践中,本文在相似度算法中选择了4种较为典型的方法,其中TF-IDF、词袋模型等均为最传统的文本向量表示方法,余弦相似度也是最常见的文本相似度计算方法,同时本文还选取了近两年非常热门的BERT模型进行比较。

经过初期验证,目前效果最好的是TF-IDF模型结合余弦相似度算法。

但是,随着后续数据体量的不断扩大,预计BERT模型、深度学习算法将会逐渐在效果上体现出优势,且鉴于不同实验阶段的算法选择可能不同,建议后续研究可根据实际情况来决定。

3.数据量对智能问答系统建模的影响

对于基于FAQ知识库构建的问答模型而言,接收的知识数据越多则模型回答问题的准确度越高。

与此同时,伴随模型输入数据量的不断积累与用户规模的不断扩大,传统的相似问题检索技术将无法满足后台数据计算的性能要求,容易造成问答系统运行瓶颈。

对此,可尝试引入支持海量数据的检索算法,如FacebookAI团队开源的Faiss算法,其作为目前较为成熟的近似近邻搜索库,可针对聚类和相似性搜索库支持十亿级别向量的搜索需求。

此外,也可引入知识图谱技术,通过主题模型的方式进行挖掘、标注与清洗,再通过预设好的关系进行实体之间关系的定义,最终形成知识图谱,帮助在对话结构和流程设计中支持实体间的上下文会话识别与推理,以及支持海量数据的检索和匹配。

4.文本数据提炼的应用前景

智能问答场景正式启用后,每天可能面临行内研发中心大量用户提问。

但是,目前针对工单提问文本数据抽象简化的调优方式效率较低,在实际应用中并不适用。

后续,拟采取系统自动提取用户常见问题的方式,通过文本聚类、文本分类等机器学习技术,及时发现用户需求,将系统无法回答的常见问题重新纳入知识库从而不断优化模型。

综上,本文简要介绍了NLP领域的各种常用模型、文本相似度计算原理及文本分析下游消费场景,并详细阐述了如何构建一个运维自动化领域的智能问答模型,以及基于该模型如何实现运营质量提升的相关方法。

基于上述实践,不仅为行内探索NLP智能问答模型提供了可落地的理论依据和实践经验,也为智能运维系统技术运营团队提供了工程实践的解决思路。

后续,基于本文的数据样本,还可以应用NLP文本处理技术提供文本质量分析、用户评价情感分析、相似工单挖掘等技术运营服务,并同步建立各项运维自动化工具的画像,帮助工具建设团队找出可持续优化的空间。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 唐诗宋词

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1