首页 / 专利库 / 人工智能 / 贝叶斯推理 / 基于贝叶斯网络的问答装置、方法及存储介质

基于贝叶斯网络的问答装置、方法及存储介质

阅读:918发布:2020-05-15

专利汇可以提供基于贝叶斯网络的问答装置、方法及存储介质专利检索,专利查询,专利分析的服务。并且本 发明 提供一种基于 贝叶斯网络 的问答方法,该方法包括:接收并解析用户通过客户端输入的问句,以从问句中识别代表用户意图的目标参数和与目标参数相关联的属性参数;将所述目标参数和属性参数输入预先训练好的贝叶斯网络模型,利用所述贝叶斯网络模型的有向无环图及条件概率表集合推断得到目标参数的取值;将贝叶斯网络模型推断得到的目标参数的取值反馈给用户。该方法对问句进行因果推理,并基于推理结果回答用户提出的问题。本发明还提供一种基于贝叶斯网络的问答装置及计算机可读存储介质。,下面是基于贝叶斯网络的问答装置、方法及存储介质专利的具体信息内容。

1.一种基于贝叶斯网络的问答装置,其特征在于,该装置包括:存储器、处理器,所述存储器上存储有基于贝叶斯网络的问答程序,所述基于贝叶斯网络的问答程序被所述处理器执行时实现如下步骤:
参数提取步骤:接收并解析用户通过客户端输入的问句,以从问句中识别代表用户意图的目标参数和与目标参数相关联的属性参数;
推断步骤:将所述目标参数和属性参数输入预先训练好的贝叶斯网络模型,利用所述贝叶斯网络模型的有向无环图及条件概率表集合推断得到目标参数的取值,其中,所述贝叶斯网络模型的构建包括:
从历史业务数据的每一笔历史违约数据中提取违约客户相关联的属性,计算各属性之间的条件互信息值;
对各属性的条件互信息值降序排序,选择条件互信息值高的属性对作为节点,遵循不产生环路的原则,构建最大权重跨度树,直到为n个节点选择n-1条边,构成一个无向无环图;
确定无向无环图中每个节点的根节点,由根节点到子节点的方向为节点之间的方向,将无向无环图变为有向无环图;及
根据历史业务数据计算所述有向无环图中各个节点所代表的随机变量之间的条件概率,得到所述条件概率表集合;及
答案生成步骤:将贝叶斯网络模型推断得到的目标参数的取值反馈给用户。
2.根据权利要求1所述的基于贝叶斯网络的问答装置,其特征在于,所述参数提取步骤包括:
将提取的目标参数和属性参数转换成标准格式的参数。
3.根据权利要求1所述的基于贝叶斯网络的问答装置,其特征在于,所述答案生成步骤包括:
将贝叶斯网络模型推断得到的目标参数的取值转换为文本,并将文本格式的结果作为答案反馈至用户。
4.根据权利要求1所述的基于贝叶斯网络的问答装置,其特征在于,所述各属性之间的条件互信息值的计算公式如下:
其中,P(x,y|c)为两个随机变量x、y的联合分布,P(x|c)、P(y|c)分别为随机变量x、y的边际分布,C为类变量,c为C的具体属性值,P(c)表示c的分布,X、Y分别表示该违约客户相关联的属性变量,I(X,Y|C)表示属性X、Y之间的条件互信息。
5.一种基于贝叶斯网络的问答方法,其特征在于,所述方法包括:
参数提取步骤:接收并解析用户通过客户端输入的问句,以从问句中识别代表用户意图的目标参数和与目标参数相关联的属性参数;
推断步骤:将所述目标参数和属性参数输入预先训练好的贝叶斯网络模型,利用所述贝叶斯网络模型的有向无环图及条件概率表集合推断得到目标参数的取值,其中,所述贝叶斯网络模型的构建包括:
从历史业务数据的每一笔历史违约数据中提取违约客户相关联的属性,计算各属性之间的条件互信息值;
对各属性的条件互信息值降序排序,选择条件互信息值高的属性对作为节点,遵循不产生环路的原则,构建最大权重跨度树,直到为n个节点选择n-1条边,构成一个无向无环图;
确定无向无环图中每个节点的根节点,由根节点到子节点的方向为节点之间的方向,将无向无环图变为有向无环图;及
根据历史业务数据计算所述有向无环图中各个节点所代表的随机变量之间的条件概率,得到所述条件概率表集合;及
答案生成步骤:将贝叶斯网络模型推断得到的目标参数的取值反馈给用户。
6.根据权利要求5所述的基于贝叶斯网络的问答方法,其特征在于,所述参数提取步骤包括:
将提取的目标参数和属性参数转换成标准格式的参数。
7.根据权利要求5所述的基于贝叶斯网络的问答方法,其特征在于,所述答案生成步骤包括:
将贝叶斯网络模型推断得到的目标参数的取值转换为文本,并将文本格式的结果作为答案反馈至用户。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于贝叶斯网络的问答程序,所述基于贝叶斯网络的问答程序被处理器执行时实现如权利要求5至7中任一项所述的基于贝叶斯网络的问答方法的步骤。

说明书全文

基于贝叶斯网络的问答装置、方法及存储介质

技术领域

[0001] 本发明涉及人机交互技术领域,尤其涉及一种基于贝叶斯网络的问答装置、方法及计算机可读存储介质。

背景技术

[0002] 人机交互是研究系统与用户之间的交互关系的科学。其中,系统可以是各种各样的机器,也可以是计算机化的系统和软件。通过人机交互可以实现各种人工智能系统,例如,智能客服系统、语音控制系统等等。智能问答系统是人机交互的一种典型应用,当客户提出问题后,智能问答系统自动向用户回复该问题的答案。然而,现有的智能问答系统,答案多是通过检索文本或者知识库得到,大多不具备深度推理能

发明内容

[0003] 本发明提供一种基于贝叶斯网络的问答装置、方法及计算机可读存储介质,其主要目的在于使智能问答过程具备深度推理能力。
[0004] 为实现上述目的,本发明提供一种基于贝叶斯网络的问答装置,该装置包括:存储器、处理器,所述存储器上存储有基于贝叶斯网络的问答程序,,所述基于贝叶斯网络的问答程序被所述处理器执行时实现如下步骤:
[0005] 参数提取步骤:接收并解析用户通过客户端输入的问句,以从问句中识别代表用户意图的目标参数和与目标参数相关联的属性参数;
[0006] 推断步骤:将所述目标参数和属性参数输入预先训练好的贝叶斯网络模型,利用所述贝叶斯网络模型的有向无环图及条件概率表集合推断得到目标参数的取值;及[0007] 答案生成步骤:将贝叶斯网络模型推断得到的目标参数的取值反馈给用户。
[0008] 优选地,所述贝叶斯网络的模型构建步骤具体包括:
[0009] 从历史业务数据的每一笔历史违约数据中提取违约客户相关联的属性,计算各属性之间的条件互信息值;
[0010] 对各属性的条件互信息值降序排序,选择条件互信息值高的属性对作为节点,遵循不产生环路的原则,构建最大权重跨度树,直到为n个节点选择n-1条边,构成一个无向无环图;
[0011] 确定无向无环图中每个节点的根节点,由根节点到子节点的方向为节点之间的方向,将无向无环图变为有向无环图;及
[0012] 根据历史业务数据计算所述有向无环图中各个节点所代表的随机变量之间的条件概率,得到贝叶斯网络模型的条件概率表集合。
[0013] 优选地,所述参数提取步骤包括:
[0014] 将提取的目标参数和属性参数转换成标准格式的参数。
[0015] 优选地,所述答案生成步骤包括:
[0016] 将贝叶斯网络模型推断得到的目标参数的取值转换为文本,并将文本格式的结果作为答案反馈至用户。
[0017] 此外,为实现上述目的,本发明还提供一种基于贝叶斯网络的问答方法,该方法包括:
[0018] 参数提取步骤:接收并解析用户通过客户端输入的问句,以从问句中识别代表用户意图的目标参数和与目标参数相关联的属性参数;
[0019] 推断步骤:将所述目标参数和属性参数输入预先训练好的贝叶斯网络模型,利用所述贝叶斯网络模型的有向无环图及条件概率表集合推断得到目标参数的取值;及[0020] 答案生成步骤:将贝叶斯网络模型推断得到的目标参数的取值反馈给用户。
[0021] 优选地,所述贝叶斯网络的模型构建步骤具体包括:
[0022] 从历史业务数据的每一笔历史违约数据中提取违约客户相关联的属性,计算各属性之间的条件互信息值;
[0023] 对各属性的条件互信息值降序排序,选择条件互信息值高的属性对作为节点,遵循不产生环路的原则,构建最大权重跨度树,直到为n个节点选择n-1条边,构成一个无向无环图;
[0024] 确定无向无环图中每个节点的根节点,由根节点到子节点的方向为节点之间的方向,将无向无环图变为有向无环图;及
[0025] 根据历史业务数据计算所述有向无环图中各个节点所代表的随机变量之间的条件概率,得到贝叶斯网络模型的条件概率表集合。
[0026] 优选地,所述参数提取步骤包括:
[0027] 将提取的目标参数和属性参数转换成标准格式的参数。
[0028] 优选地,所述答案生成步骤包括:
[0029] 将贝叶斯网络模型推断得到的目标参数的取值转换为文本,并将文本格式的结果作为答案反馈至用户。
[0030] 此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于贝叶斯网络的问答程序,所述基于贝叶斯网络的问答程序被处理器执行时实现如上所述的基于贝叶斯网络的问答方法的步骤。
[0031] 相较于现有技术,本发明提出的基于贝叶斯网络的问答装置、方法及计算机可读存储介质,可通过贝叶斯网络模型,对用户输入的问句进行因果推理,并基于推理结果回答用户提出的问题。通过自然对话的方式理解用户需求,提升用户交互体验。附图说明
[0032] 图1为本发明基于贝叶斯网络的问答装置较佳实施例的示意图;
[0033] 图2为图1中基于贝叶斯网络的问答程序的模图;
[0034] 图2a为贝叶斯网络模型中的无向无环图示意图;
[0035] 图2b为贝叶斯网络模型中的有向无环图示意图;
[0036] 图2c为贝叶斯网络模型中的概率表集合示意图;
[0037] 图3为本发明基于贝叶斯网络的问答方法较佳实施例的流程图
[0038] 图4为本发明基于贝叶斯网络的问答方法中所述贝叶斯网络模型具体构造流程图。
[0039] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0040] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0041] 本发明提供一种基于贝叶斯网络的问答装置1。参照图1所示,为本发明基于贝叶斯网络的问答装置1较佳实施例的示意图。
[0042] 在本实施例中,基于贝叶斯网络的问答装置1可以是智能手机、平板电脑电子书阅读器、便携计算机等具有运算功能的电子设备。
[0043] 该基于贝叶斯网络的问答装置1包括存储器11、处理器12、显示器13、通信总线14及网络接口15。该装置通过网络从业务数据库获取业务数据。
[0044] 存储器11包括内存及至少一种类型的可读存储介质。内存为移动终端的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,所述可读存储介质可以是所述基于贝叶斯网络的问答装置1的内部存储单元,例如该基于贝叶斯网络的问答装置1的硬盘。在另一些实施例中,所述可读存储介质也可以是所述基于贝叶斯网络的问答装置1的外部存储设备,例如所述基于贝叶斯网络的问答装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
[0045] 在本实施例中,所述存储器11的可读存储介质通常用于存储安装于所述基于贝叶斯网络的问答装置1的应用软件及历史业务数据,例如基于贝叶斯网络的问答程序10、客户历史违约数据等。所述存储器11还可以用于暂时地存储已经输出或者将要输出的数据。
[0046] 处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行基于贝叶斯网络的问答程序10,以实现下述基于贝叶斯网络的问答方法中的任一步骤。
[0047] 显示器13在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。显示器13用于显示在基于贝叶斯网络的问答装置1中处理的结果以及可视化用户界面
[0048] 通信总线14用于实现这些组件之间的连接通信。
[0049] 网络接口15主要用于连接服务器,与服务器进行数据通信。
[0050] 优选地,该基于贝叶斯网络的问答装置1还可以包括用户接口,包括标准的有线接口、无线接口。可选的用户接口可以包括输入单元比如键盘(Keyboard)、语音输入装置比如麦克(microphone)等具有语音识别功能的设备、语音输出装置比如音响、机等。
[0051] 优选地,当基于贝叶斯网络的问答装置1为移动电子装置,例如手机时,还可以包括至少一种传感器,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板亮度,接近传感器可在手机移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0052] 图1仅示出了具有组件11-14以及基于贝叶斯网络的问答程序10的基于贝叶斯网络的问答装置1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
[0053] 如图2所示,是图1中基于贝叶斯网络的问答程序10较佳实施例的模块图。
[0054] 在本实施例中,所述基于贝叶斯网络的问答程序10可以被分割成参数提取模块110、推断模块120及答案生成模块130。上述多个模块被存储于所述存储器11中,并由一个或多个处理器12所执行,以完成本发明。本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。以下描述将具体介绍所述参数提取模块110、推断模块120及答案生成模块130所实现的操作和功能。
[0055] 所述参数提取模块110,用于接收并解析用户通过客户端输入的问句,以从问句中识别代表用户意图的目标参数和与目标参数相关联的属性参数。
[0056] 对于一段给定的文本,参数提取模块110会将特定文本解析成标准格式的参数,主要分为规则模板单元111和概率判别单元112两个部分。
[0057] 规则模板单元111主要是使用正则表达式和特定的语法结构进行配置,其中正则表达式用于参数的提取,而特殊的语法结构用于对提取的参数进行标准格式的映射。应用一个正则表达式及预设的语法结构,利用该正则表达式从用户输入的自然语言问句所包含的字符串中提取参数,并将提取的参数解析成预设的语法结构输出。正则表达式是对字符串操作的一种逻辑公式,用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。例如,“年龄”的规则模板如下:
[0058]
[0059] 也就是说,将客户年龄进行分段赋值,小于25岁赋值为0,25-30岁为1,31-35岁为2等。
[0060] 同理,将客户的学历情况也进行分类赋值,学历为小学-初中的赋值为0,高中为1,本科为2,硕士研究生为3等。
[0061] 同理,将客户收入情况也进行分类赋值,年收入为50000元以下赋值为0,50000-100000元为1,100000-200000元为2,超过200000元为3。
[0062] 概率判别单元112主要是通过样本及其对应的分类模型进行训练,用于计算一段文本多个潜在结果的概率,并选择一个最能代表用户意图的结果进行解析。利用机器学习模型从该自然语言问句所有的数据结构中筛选出一个最符合用户意图的数据结构。例如,该机器学习模型可以为基于朴素贝叶斯分类模型,朴素贝叶斯分类模型基于大量的自然语言问句与数据结构训练语料的训练得到。例如,用户输入问题:"贷10万XXXX行个人购车贷款每月要还多少钱"。用户意图为“利息计算”,规则模板单元111提取参数“XXXX银行”、“个人购车贷款”、“月”、“10万”。生成的数据结构可能包括:
[0063] 数据结构1:(!fb:property.context.LoanAmountRange(argmax(number 1)(number 10)(and(fb:type.loan.loanN fb:loanN.gerengouchedaikuan1)(fb:type.loan.company fb:company.XXXX))(reverse(lambda x(!fb:rank.entity.rank(var x))))))
[0064] 数据结构2:(!fb:property.context.MonthFeeRate(!fb:property.context.LoanAmountRange fb:company.XXXX))
[0065] 数据结构3:fb:company.XXXX
[0066] 数据结构4:(*(!fb:attribute.attribute.MonthFeeRateD(!fb:property.context.MonthFeeRate(and(and(fb:type.loan.loanNfb:
loanN.gerengouchedaikuan1)(fb:type.loan.company fb:company.XXXX))(fb:property.context.LoanAmountRange(fb:attribute.attribute.MaxLoanAmountRange(>=(number 100000)))))))(number100000))
[0067] 该4个数据结构经过朴素贝叶斯分类模型后,概率判别单元112会从中筛选出一个数据结构作为最能代表用户意图的数据结构。
[0068] 进一步地,所述参数提取模块110,还用于将提取的目标参数和属性参数转换成标准格式的参数。例如,问句“年收入300000元的硕士研究生的逾期率是多少?”中,对参数的标准映射情况包括:年收入-recent_income-300000元-3,学历-education-硕士-3,还款情况-debt-逾期-1。那么,该问句会被解析如下:
[0069]
[0070]
[0071] 所述推断模块120,用于将所述目标参数和属性参数输入预先训练好的贝叶斯网络模型,利用所述贝叶斯网络模型的有向无环图及条件概率表集合推断得到目标参数的取值。
[0072] 贝叶斯网络的推理是利用贝叶斯网络的结构及其条件概率表,在给定节点属性值后计算其他某些节点取值的概率。我们采用的是消息传递算法进行精确推理,它主要是给每个节点分配一个处理器,每个处理器会利用相邻节点传递来的概率和存储于该处理器内部的条件概率进行计算,求得自身的后验概率,并将计算结果向相邻节点传播。
[0073] 例如,当问句变为“年收入300000元的客户的逾期率是多少?”则,问句中出现的客户属性只有年收入-recent_income-300000元-3,还款情况-debt-逾期-1。根据上述有向无环图和条件概率表,当客户的年收入确定时,可以根据客户的学历情况对客户还款逾期的概率进行推断,也就是说,不同的学历情况会影响客户还款逾期的概率。
[0074] 所述答案生成模块130,用于将贝叶斯网络模型推断得到的目标参数的取值反馈给用户。
[0075] 当用户将问句输入贝叶斯网络模型之后,会得到目标参数的取值如下:
[0076] key:income=3,education=3;debt=1;value:0.01935
[0077] 为了使结果更为直观,答案生成模块130将输出的标准数据格式的目标参数取值转换为文本,并将文本形式的结果作为答案反馈给用户。上述目标参数取值转换后的结果如下:
[0078] 年收入300000元的硕士研究生的逾期率是1.935%。
[0079] 本发明之基于贝叶斯网络的问答系统,可以通过自然对话的方式理解用户需求,并根据用户的问句进行深度推理,提升用户人机交互体验。
[0080] 此外,本发明还提供一种基于贝叶斯网络的问答方法。参照图3所示,为本发明基于贝叶斯网络的问答方法较佳实施例的流程图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。
[0081] 在本实施例中,基于贝叶斯网络的问答方法包括:
[0082] 步骤S10,接收并解析用户通过客户端输入的问句,以从问句中识别代表用户意图的目标参数和与目标参数相关联的属性参数。
[0083] 对于一段给定的文本,将特定文本解析成标准格式的参数,主要分为规则模板和概率判别两个部分。
[0084] 规则模板主要是使用正则表达式和特定的语法结构进行配置,其中正则表达式用于参数的提取,而特殊的语法结构用于对提取的参数进行标准格式的映射。应用一个正则表达式及预设的语法结构,利用该正则表达式从用户输入的自然语言问句所包含的字符串中提取参数,并将提取的参数解析成预设的语法结构输出。正则表达式是对字符串操作的一种逻辑公式,用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。例如,“年龄”的规则模板如下:
[0085]
[0086]
[0087] 也就是说,将客户年龄进行分段赋值,小于25岁赋值为0,25-30岁为1,31-35岁为2,…。
[0088] 同理,将客户的学历情况也进行分类赋值,学历为小学-初中的赋值为0,高中为1,本科为2,研究生为3,…。
[0089] 同理,将客户收入情况也进行分类赋值,年收入为50000元以下赋值为0,50000-100000元为1,100000-200000元为2,超过200000元为3。
[0090] 概率判别主要是通过样本及其对应的分类模型进行训练,用于计算一段文本多个潜在结果的概率,并选择一个最能代表用户意图的结果进行解析。利用机器学习模型从该自然语言问句所有的数据结构中筛选出一个最符合用户意图的数据结构。例如,该机器学习模型可以为基于朴素贝叶斯分类模型,朴素贝叶斯分类模型基于大量的自然语言问句与数据结构训练语料的训练得到。例如,用户输入问题:"贷10万XXXX银行个人购车贷款每月要还多少钱"。用户意图为“利息计算”,规则模板单元111提取参数“XXXX银行”、“个人购车贷款”、“月”、“10万”。生成的数据结构可能包括:
[0091] 数据结构1:(!fb:property.context.LoanAmountRange(argmax(number 1)(number 10)(and(fb:type.loan.loanN fb:loanN.gerengouchedaikuan1)(fb:type.loan.company fb:company.XXXX))(reverse(lambda x(!fb:rank.entity.rank(var x))))))
[0092] 数据结构2:(!fb:property.context.MonthFeeRate(!fb:property.context.LoanAmountRange fb:company.XXXX))
[0093] 数据结构3:fb:company.XXXX
[0094] 数据结构4:(*(!fb:attribute.attribute.MonthFeeRateD(!fb:property.context.MonthFeeRate(and(and(fb:type.loan.loanNfb:
loanN.gerengouchedaikuan1)(fb:type.loan.company fb:company.XXXX))(fb:property.context.LoanAmountRange(fb:attribute.attribute.MaxLoanAmountRange(>=(number 100000)))))))(number100000))
[0095] 该4个数据结构经过朴素贝叶斯分类模型后,概率判别单元112会从中筛选出一个数据结构作为最能代表用户意图的数据结构。
[0096] 进一步地,所述步骤S10还包括:将提取的目标参数和属性参数转换成标准格式的参数。例如,问句“年收入300000元的硕士研究生的逾期率是多少?”中,对参数的标准映射情况包括:年收入-recent_income-300000元-3,学历-education-硕士-3,还款情况-debt-逾期-1。那么,该问句会被解析如下:
[0097]
[0098] 步骤S20,将所述目标参数和属性参数输入预先训练好的贝叶斯网络模型,利用所述贝叶斯网络模型的有向无环图及条件概率表集合推断得到目标参数的取值。
[0099] 贝叶斯网络的推理是利用贝叶斯网络的结构及其条件概率表,在给定节点属性值后计算其他某些节点取值的概率。
[0100] 我们采用的是消息传递算法进行精确推理,它主要是给每个节点分配一个处理器,每个处理器会利用相邻节点传递来的概率和存储于该处理器内部的条件概率进行计算,求得自身的后验概率,并将计算结果向相邻节点传播。
[0101] 例如,当问句变为“年收入300000元的客户的逾期率是多少?”则,问句中出现的客户属性只有年收入-recent_income-300000元-3,还款情况-debt-逾期-1。根据上述有向无环图和条件概率表,当客户的年收入确定时,可以根据客户的学历情况对客户还款逾期的概率进行推断,也就是说,不同的学历情况会影响客户还款逾期的概率。
[0102] 步骤S30,将贝叶斯网络模型推断得到的目标参数的取值反馈给用户。
[0103] 当用户将问句输入贝叶斯网络模型之后,会得到目标参数的取值如下:
[0104] key:income=3,education=3;debt=1;value:0.01935
[0105] 为了使结果更为直观,将输出的标准数据格式的目标参数取值转换为文本,并将文本形式的结果作为答案反馈给用户。上述目标参数取值转换后的结果如下:
[0106] 年收入300000元的硕士研究生的逾期率是1.935%。
[0107] 本发明之基于贝叶斯网络的问答方法,可以通过自然对话的方式理解用户需求,并根据用户的问句进行深度推理,提升用户人机交互体验。
[0108] 基于第一实施例提出本发明基于贝叶斯网络的问答方法的第二实施例。参照图4所示,在本实施例中,图3中所述贝叶斯网络模型的具体构建步骤包括:
[0109] 步骤S01,从历史业务数据的每一笔历史违约数据中提取违约客户相关联的属性,计算各属性之间的条件互信息;
[0110] 步骤S02,对各属性的条件互信息值降序排序,选择条件互信息值高的属性对作为节点,遵循不产生环路的原则,构建最大权重跨度树,直到为n个节点选择n-1条边,构成一个无向无环图;
[0111] 步骤S03,确定无向无环图中每个节点的根节点,由根节点到子节点的方向为节点之间的方向,将无向无环图变为有向无环图;及
[0112] 步骤S04,根据历史业务数据计算所述有向无环图中各个节点所代表的随机变量之间的条件概率,得到贝叶斯网络模型的条件概率表集合。
[0113] 构造贝叶斯网络主要是确定随机变量间的拓扑关系形成DAG(Directed Acyclic Graph,有向无环图),采用的方法主要是先确定贝叶斯网络的节点,然后用大量的训练数据来学习贝叶斯网络的结构。采用TAN(Tree Augmented Naive Bays,树增广的朴素贝叶斯)算法进行结构学习。
[0114] 训练贝叶斯网络,即进行参数学习,主要是确定条件概率表,即随机变量间的条件依赖关系。参数学习主要分为完整数据的参数学习和不完整数据的参数学习,完整数据是指每个实例都具有完整的观测数据,即既有教育数据又有收入数据等,不完备数据是指某些实例有部分缺失或观测异常,如,一些人有教育数据,另一些人没有教育数据而有收入数据。通常情况下,都是不完整数据。完整的观测数据的参数学习采用的是最大似然估计的方法,对于不完整数据的参数学习采用的是EM算法(Expectation-maximization,最大期望算法)。
[0115] 根据历史业务数据计算所述DAG中各个节点所代表的随机变量之间的条件概率,得到贝叶斯网络模型的条件概率表集合。
[0116] 本实施例中的贝叶斯网络包括一个DAG和一个概率表集合,参照图2b、2c所示。
[0117] 在图2b中,DAG中三个节点表示三个随机变量,有向边表示随机变量间的条件依赖。
[0118] 在其他实施例中,每个节点代表的随机变量可以是可直接观测变量,也可以是隐藏变量,所述隐藏变量指不能被直接精确观测或虽能被观测但尚需通过其它方法加以综合的变量,比如说智力平。
[0119] 在图2c中,条件概率表中的每一个元素对应DAG中唯一的节点,存储此节点对于其所有直接前驱节点的联合条件概率:
[0120]
[0121] 其中,E为违约客户的学历情况、I为年收入情况、P为概率、T为还款逾期情况、F为还款正常情况。
[0122] 例如,从某金融服务机构的历史违约数据中提取违约客户相关联的属性,如:违约客户年龄、学历、年收入、性别、国籍、工作经验、资产情况(是否有车或有房)、是否拥有保险及婚姻状态等等,并计算不同属性之间的条件互信息。
[0123] 在TAN中会有类变量属性的加入,因为属性之间的关联性的前提是要在某一分类属性确定下进行重新计算,不同的类属性值会有不同的属性关联性,故计算公式如下:
[0124]
[0125] 其中,P(x,y|c)为两个随机变量x、y的联合分布,P(x|c),P(y|c)分别为随机变量x、y的边际分布,C为类变量,c为C的具体属性值,P(c)表示c的分布,X、Y分别表示该违约客户相关联的属性变量,I(X,Y|C)表示属性X、Y之间的条件互信息。
[0126] 若上述计算各属性间的条件互信息情况为:学历与年收入的互信息值(0.8)>年收入与逾期的互信息值(0.7)>年龄与年收入的互信息值(0.4)>性别与逾期的互信息值(0.2)。那么,依次选出互信息值较高的属性对作为节点。
[0127] 进一步地,所述步骤S02还包括:预设一个互信息阈值作为保留多少个属性对或者边的标准。之所以按照互信息值从高到低选择的原因,就是要保留关联性更高的关联依赖性的边。假设,预设的互信息阈值为0.5,那么选择互信息值高于0.5的属性对作为节点,即将学历、年收入、及逾期作为节点,构成一个如图2a所示的无向无环图。
[0128] 将“逾期”节点、“学历”节点和“年收入”节点连接,形成如图2b所示的有向无环图。
[0129] 本发明之基于贝叶斯网络的问答方法,通过构建贝叶斯网络模型,使该问答方法通过自然对话的方式理解用户需求,并根据用户的问句进行深度推理,提升用户人机交互体验。
[0130] 此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有基于贝叶斯网络的问答程序,所述基于贝叶斯网络的问答程序被处理器执行时实现如下操作:
[0131] 参数提取步骤:接收并解析用户通过客户端输入的问句,以从问句中识别代表用户意图的目标参数和与目标参数相关联的属性参数;
[0132] 推断步骤:将所述目标参数和属性参数输入预先训练好的贝叶斯网络模型,利用所述贝叶斯网络模型的有向无环图及条件概率表集合推断得到目标参数的取值;及[0133] 答案生成步骤:将贝叶斯网络模型推断得到的目标参数的取值反馈给用户。
[0134] 本发明之计算机可读存储介质的具体实施方式与上述基于贝叶斯网络的问答方法的具体实施方式大致相同,故不再赘述。
[0135] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
[0136] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0137] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈